mdadm-4.1-150300.24.24.2;>+Lchp9| Qhg->tp< :{Gp)/-@ʽZk6SW.ԫfW;% 7C,(-VAsq N`.=(hl}OO%' c/_^tľ6kD]Xwc:ֶ Z}#,mLVXߨDwf.LO {-w^$"%e#2E5;TcI1@f\I ݨl^3 AK&DYYa>J?d   N  ;AH 4h4 4 84 4  4  4!4"4##4$$ %X ' ((8($59(5:,a5=>?@FG4H4I4XY\ 4]4^ b :c d ce hf kl mu 4v P w4x4y z$4<@LPTZCmdadm4.1150300.24.24.2Utility for configuring "MD" software RAID devicesmdadm is a program that can be used to control Linux md devices.chsheep04SUSE Linux Enterprise 15SUSE LLC GPL-2.0-onlyhttps://www.suse.com/System/Basehttp://www.kernel.org/pub/linux/utils/raid/mdadm/linuxx86_64 if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : for service in mdmonitor.service mdcheck_start.service mdcheck_continue.service mdmonitor-oneshot.service ; do sysv_service=${service%.*} if [ ! -e /usr/lib/systemd/system/$service ] && [ ! -e /etc/init.d/$sysv_service ]; then mkdir -p /run/systemd/rpm/needs-preset touch /run/systemd/rpm/needs-preset/$service elif [ -e /etc/init.d/$sysv_service ] && [ ! -e /var/lib/systemd/migrated/$sysv_service ]; then /usr/sbin/systemd-sysv-convert --save $sysv_service || : mkdir -p /run/systemd/rpm/needs-sysv-convert touch /run/systemd/rpm/needs-sysv-convert/$service fi done fi if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$YAST_IS_RUNNING" != "instsys" ]; then /usr/bin/systemctl daemon-reload || : fi for service in mdmonitor.service mdcheck_start.service mdcheck_continue.service mdmonitor-oneshot.service ; do sysv_service=${service%.*} if [ -e /run/systemd/rpm/needs-preset/$service ]; then /usr/bin/systemctl preset $service || : rm "/run/systemd/rpm/needs-preset/$service" || : elif [ -e /run/systemd/rpm/needs-sysv-convert/$service ]; then /usr/sbin/systemd-sysv-convert --apply $sysv_service || : rm "/run/systemd/rpm/needs-sysv-convert/$service" || : touch /var/lib/systemd/migrated/$sysv_service || : fi done fi PNAME=mdadm SUBPNAME= SYSC_TEMPLATE=/usr/share/fillup-templates/sysconfig.$PNAME$SUBPNAME # If template not in new /usr/share/fillup-templates, fallback to old TEMPLATE_DIR if [ ! -f $SYSC_TEMPLATE ] ; then TEMPLATE_DIR=/var/adm/fillup-templates SYSC_TEMPLATE=$TEMPLATE_DIR/sysconfig.$PNAME$SUBPNAME fi SD_NAME="" if [ -x /bin/fillup ] ; then if [ -f $SYSC_TEMPLATE ] ; then echo "Updating /etc/sysconfig/$SD_NAME$PNAME ..." mkdir -p /etc/sysconfig/$SD_NAME touch /etc/sysconfig/$SD_NAME$PNAME /bin/fillup -q /etc/sysconfig/$SD_NAME$PNAME $SYSC_TEMPLATE fi else echo "ERROR: fillup not found. This should not happen. Please compare" echo "/etc/sysconfig/$PNAME and $TEMPLATE_DIR/sysconfig.$PNAME and" echo "update by hand." fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ "$FIRST_ARG" -eq 0 -a -x /usr/bin/systemctl ]; then # Package removal, not upgrade /usr/bin/systemctl --no-reload disable mdmonitor.service mdcheck_start.service mdcheck_continue.service mdmonitor-oneshot.service mdmon@.service mdadm-last-resort@.service mdadm-grow-continue@.service || : ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_STOP_ON_REMOVAL" && . /etc/sysconfig/services test "$DISABLE_STOP_ON_REMOVAL" = yes -o \ "$DISABLE_STOP_ON_REMOVAL" = 1 && exit 0 /usr/bin/systemctl stop mdmonitor.service mdcheck_start.service mdcheck_continue.service mdmonitor-oneshot.service mdmon@.service mdadm-last-resort@.service mdadm-grow-continue@.service ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in mdmonitor.service mdcheck_start.service mdcheck_continue.service mdmonitor-oneshot.service ; do sysv_service="${service%.*}" rm "/var/lib/systemd/migrated/$sysv_service" || : done fi if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi if [ "$FIRST_ARG" -ge 1 ]; then # Package upgrade, not uninstall if [ -x /usr/bin/systemctl ]; then ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_RESTART_ON_UPDATE" && . /etc/sysconfig/services test "$DISABLE_RESTART_ON_UPDATE" = yes -o \ "$DISABLE_RESTART_ON_UPDATE" = 1 && exit 0 /usr/bin/systemctl try-restart mdmonitor.service mdcheck_start.service mdcheck_continue.service mdmonitor-oneshot.service ) || : fi fi +p@e3   A bN9~1vzV O--e.V_  F>B2 p,AA큤A큤A큤Acgcgcgcgcgcgcgcgcgcgcgcgcgcgcgcgcgcgcgcgcgcgch[f[fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcf[f[f[fcgch[fcfcfcfcfcgcg01a2cddb762812890f0019d399a1665baf11ee7c554755c88848f6d4ade2a5429283fa7ad64f6add30debc82eac667d80186528b9c7aea514888acc6a9255968c7a8b98a69aa04ab96fabe36591074b5106e0a6bf9a3db6b6abc3d685a20c28a762a29b328b28172c95f6a1e202e0453410d0ccf3449fb17d0d5770852965ed509df38f55bbebcbbd2f6908d1f9fd39db9a52068fcacc03177f5e98f52acdb4ccd5f7e9e8f00832bc9355799ab71026bff53bbdd8e99d1bfbe4c4b3a07f14481d789d3d1867df89d312d17cfff73b0cc4b47379486bb0ea4f059708dd20120781392df8b1b8b5cec3cd468ac46d498fe55a0a8c39b5136ad7b66b195c82f9c40d3957a71e448cd8425d585405606ab1c5f27cf72aa092c0cf1a9a9fa46d2036f636c1b4b1ef272bd27acd445af5e2761b48c7822189d413dddc9d942479383ed1d23260664142e2def5f249899645ed5abc16fe158bf586e0ee12bc0c3b6d70c8b0791f9d346bad6aeac2a5a39578dda482efdf96b80d4968217462d96fa8e62c964c100f0d90630c3ccf1d8e25d634f240971688436d65e0d8ef14475ddbd5e87befe5e61b716be922ebd2be3bd05fc24f512082a00e38f7742cc2b7d52957bb43c7d8846a9e46c24e0263a6e0b6a004fa29c4b4bdc64b3c71146b2e93a63b179f5ab1e4c7ca00916e1444d8d47e1181ff6e9bd5fc8a511bf84a16a7ca833ee577fb625470ac2a09ee570571a20b3fb4af65ce64fd3202e63dc672bf9d954269e56ab20cbd9d45e641d3643308b44545c616c12f48cf5f5694335788795a32029e943ad89929f8512b34ece38bb772416266a58153815e74c91a6366eabbb81d72b3245d3f6f6fee432aeb23fdf7c0c2ad5fe2c1e197c757dcf1f8384515e66da08f4125c0a269c6a67b3757b7d9fd09e14c6f67bb8c7ff1e541d532dca4da308a09f94e7c1c57032e19e3ed4f5e8c18c5ed533e47d35d833e608cdf7804e3207ec768327b0e324eab80693a68852d342bd19285bf7356753e566c5e179f889902a174c2f7e71b4eb1b1f3781e9577564db0c7b9b1b5bafab2f6f2ce99095a3e6f6d62f227eda2151af5db24ad5e728ffc437a3d672e828a1e7b81bd7783bbb76890b029d204368a9be769d3ff580110f0e7742db48b1b026ec56a0a556e786dc763e2231d021ebcb1ac6b81b2b86c7d53a23368ba6f38b0f5f347278156f9496707ed85c848e03daf5dd08d0a66e448308ec62df3bfac5e8529ba10e077447590676b7918d24d93c8eaa4b56926b83ff31493b122e688e44fb967258a36752921e40b0e7e1ae3303a4a293d063f4b6ae0a95f2f5590fc184371cd20c6b6ac9ac0448ed2dc45a3ca9b523bfe870cc904f143139c50f827ad981314e654d39ddc46c0dd4ff25105ad19addefa46ceded4a1e13c43d45441729dcf14d6bad9e656f25779970c7da4d4620c6b9af103a91a3f2eea5729c496979766e5e0bd858c7732fc467a5756529eb357d4ed5bee9c8c234e812454211b2e12ef75a4489583dcd5828098c7845bf48876f3a2b8d66182bb0e893ddbda1237c68fd1c6cab4a9f7d6e460c26b26ce3e9d7c1cb4c531c75e4dc21e4b18e9cc63533de2b094423b3eeda765be954c997b8cf79038c7fa64223c46505f1e8bdc65937ace772cf423b314c5722b29ee8a268bafb4044116175f6155f21c9e6bf843fada369fbf0fff3d0c6892ad74cce318c0521dfe2e1244449e52fde377fcc5edca1c4eea179d208b9dd44bd1c67a9e6606b9a23904a71c1a84cb7e64e9bf51ca0d33842210f3cc58177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643da173060f7917a742bb8525965991f937421faddbc95c9fd3f943a05dc8457e63cd8ef003b0a3b4374f68cd680ee90867e9ce590ac9708d637256785dbded66cb5096c6d5a98bb50742594fc0dbbb05e670a88942e5d4d425a42f2558c7fddd36dc0669cef48e7027552b13fd9d6f9e82b21c59dd403ac4d7b68ccbc2a7a7ce41c318d317bc193e07e27c83dffc45832ca1aeda1f4d99df96e79e16e41a5325cservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootmdadm-4.1-150300.24.24.2.src.rpmmdadmmdadm(x86-64)@  @ @@@@@@@@@@@@@@@@    /bin/bash/bin/sh/bin/sh/bin/sh/bin/sh/bin/sh/bin/sh/sbin/mkinitrdcoreutilsdiffutilsfillupgreplibc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.15)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.27)(64bit)libc.so.6(GLIBC_2.28)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.7)(64bit)libc.so.6(GLIBC_2.8)(64bit)libdl.so.2()(64bit)libdl.so.2(GLIBC_2.2.5)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3c&@c(Yb@bb4t@b @a0`f@`f@`e_T_v@__K^@^@^^F^^F^=Q@^=Q@]{@]c\@\b@\\U@[$@[dC[dC[dC[3|@Z1@Z~ZTZLZ%8Z Z@Z ,@Y@X @WA@W>@W)@Vii@UUAUWU@U@TPTи@TWn@colyli@suse.comcolyli@suse.comcolyli@suse.comheming.zhao@suse.commwilck@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comheming.zhao@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comnfbrown@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comjengelh@inai.denfbrown@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comgqjiang@suse.comcolyli@suse.comzlliu@suse.comcolyli@suse.comcolyli@suse.comgqjiang@suse.comrbrown@suse.comgqjiang@suse.comcolyli@suse.comnfbrown@suse.combill@merriam.netneilb@suse.comneilb@suse.comtiwai@suse.dedimstar@opensuse.orgdimstar@opensuse.orgnfbrown@suse.comnfbrown@suse.comwerner@suse.demgorse@suse.comnfbrown@suse.comnfbrown@suse.com- Update the following patch for (bsc#1207868) 1005-mdadm-enable-Intel-Alderlake-RSTe-configuration.patch- mdadm.spec: add EXTRAVERSION string to make command line (jsc#SLE-24761, bsc#1193566)- imsm: support for third Sata controller (bsc#1201297) 0122-imsm-support-for-third-Sata-controller.patch - mdadm: enable Intel Alderlake RSTe configuration (bsc#1201297) 1005-mdadm-enable-Intel-Alderlake-RSTe-configuration.patch- resource RAID failed during cluster patch, Mdadm gets floating point error (bsc#1197158) 1004-mdadm-super1-restore-commit-45a87c2f31335-to-fix-clu.patch- skip RAID assembly if DM_UDEV_DISABLE_OTHER_RULES_FLAG (bsc#1196054) * Add 0121-udev-md-raid-assembly.rules-skip-if-DM_UDEV_DISABLE_.patch- Monitor: print message before quit for no array to monitor (bsc#1183229) 0120-Monitor-print-message-before-quit-for-no-array-to-mo.patch- Remove Spare drives line from details for external metadata (bsc#1180661, bsc#1182642) 0118-Remove-Spare-drives-line-from-details-for-external-m.patch - Don't associate spares with other arrays during RAID Examine (bsc#1180661, bsc#1182642) 0119-Don-t-associate-spares-with-other-arrays-during-RAID.patch- Grow: be careful of corrupt dev_roles list (bsc#1181619) 0117-Grow-be-careful-of-corrupt-dev_roles-list.patch- imsm: nvme multipath support (bsc#1175758) 0116-imsm-nvme-multipath-support.patch- cluster-md/mdadm : avoid useless re-sync (bsc#1181341) 0114-super1-fix-Floating-point-exception.patch 0115-super1.c-avoid-useless-sync-when-bitmap-switches-fro.patch- Incremental: Remove redundant spare movement logic (jsc#SLE-13700, bsc#1180220) 0112-Incremental-Remove-redundant-spare-movement-logic.patch - Dump: get stat from a wrong metadata file when restoring metadata (jsc#SLE-13700) 0113-Dump-get-stat-from-a-wrong-metadata-file-when-restor.patch- There are some important fixes merged in mdadm upstream which should go with jsc#SLE-13700. This is the update from upstream mdadm including the important fixes we should have. - Detail: show correct raid level when the array is inactive (jsc#SLE-13700) 0095-Detail-show-correct-raid-level-when-the-array-is-ina.patch - Don't create bitmap for raid5 with journal disk (jsc#SLE-13700) 0096-Don-t-create-bitmap-for-raid5-with-journal-disk.patch - Monitor: refresh mdstat fd after select (jsc#SLE-13700) 0097-Monitor-refresh-mdstat-fd-after-select.patch - Monitor: stop notifing about containers. (jsc#SLE-13700) 0098-Monitor-stop-notifing-about-containers.patch - mdmonitor: set small delay once (jsc#SLE-13700) 0099-mdmonitor-set-small-delay-once.patch - Check if other Monitor instance running before fork. (jsc#SLE-13700) 0100-Check-if-other-Monitor-instance-running-before-fork.patch - Super1: allow RAID0 layout setting to be removed. (jsc#SLE-13700) 0101-Super1-allow-RAID0-layout-setting-to-be-removed.patch - Detail: fix segfault during IMSM raid creation (jsc#SLE-13700) 0102-Detail-fix-segfault-during-IMSM-raid-creation.patch - Create.c: close mdfd and generate uevent (jsc#SLE-13700) 0103-Create.c-close-mdfd-and-generate-uevent.patch - imsm: update num_data_stripes according to dev_size (jsc#SLE-13700) 0104-imsm-update-num_data_stripes-according-to-dev_size.patch - imsm: remove redundant calls to imsm_get_map (jsc#SLE-13700) 0105-imsm-remove-redundant-calls-to-imsm_get_map.patch - Monitor: don't use default modes when creating a file (jsc#SLE-13700) 0106-Monitor-don-t-use-default-modes-when-creating-a-file.patch - imsm: limit support to first NVMe namespace (jsc#SLE-13700) 0107-imsm-limit-support-to-first-NVMe-namespace.patch - mdadm: Unify forks behaviour (jsc#SLE-13700) 0108-mdadm-Unify-forks-behaviour.patch - mdadm/Detail: show correct state for clustered array (jsc#SLE-13700) 0109-mdadm-Detail-show-correct-state-for-clustered-array.patch - Make target to install binaries only (jsc#SLE-13700) 0110-Make-target-to-install-binaries-only.patch - udev: start grow service automatically (jsc#SLE-13700) 0111-udev-start-grow-service-automatically.patch- Update to latest mdadm which is requested by jsc#SLE-13700 from partners. Mostly the purpose is for latest Intel IMSM raid support, while some other fixes are important too. - imsm: Correct minimal device size (jsc#SLE-13700) 0073-imsm-Correct-minimal-device-size.patch - Detail: show correct bitmap info for cluster raid device (jsc#SLE-13700) 0074-Detail-show-correct-bitmap-info-for-cluster-raid-dev.patch - imsm: support the Array Creation Time field in metadata (jsc#SLE-13700) 0075-imsm-support-the-Array-Creation-Time-field-in-metada.patch - imsm: show Subarray and Volume ID in --examine output (jsc#SLE-13700) 0076-imsm-show-Subarray-and-Volume-ID-in-examine-output.patch - udev: Ignore change event for imsm (jsc#SLE-13700) 0077-udev-Ignore-change-event-for-imsm.patch - Manage, imsm: Write metadata before add (jsc#SLE-13700) 0078-Manage-imsm-Write-metadata-before-add.patch - Assemble: print error message if mdadm fails assembling with --uuid option (jsc#SLE-13700) 0079-Assemble-print-error-message-if-mdadm-fails-assembli.patch - clean up meaning of small typo (jsc#SLE-13700) 0080-clean-up-meaning-of-small-typo.patch - Assemble.c: respect force flag (jsc#SLE-13700) 0081-Assemble.c-respect-force-flag.patch - mdcheck: Log when done (jsc#SLE-13700) 0082-mdcheck-Log-when-done.patch - Makefile: add EXTRAVERSION support (jsc#SLE-13700) 0083-Makefile-add-EXTRAVERSION-support.patch - uuid.c: split uuid stuffs from util.c (jsc#SLE-13700) 0084-uuid.c-split-uuid-stuffs-from-util.c.patch - Include count for \0 character when using strncpy to implement strdup. (jsc#SLE-13700) 0085-Include-count-for-0-character-when-using-strncpy-to-.patch - restripe: fix ignoring return value of read and lseek (jsc#SLE-13700) 0086-restripe-fix-ignoring-return-value-of-read-and-lseek.patch - Block overwriting existing links while manual assembly (jsc#SLE-13700) 0087-Block-overwriting-existing-links-while-manual-assemb.patch - Detect too-small device: error rather than underflow/crash (jsc#SLE-13700) 0088-Detect-too-small-device-error-rather-than-underflow-.patch - Use more secure HTTPS URLs (jsc#SLE-13700) 0089-Use-more-secure-HTTPS-URLs.patch - Update link to Intel page for IMSM (jsc#SLE-13700) 0090-Update-link-to-Intel-page-for-IMSM.patch - mdadm/Grow: prevent md's fd from being occupied during delayed time (jsc#SLE-13700) 0091-mdadm-Grow-prevent-md-s-fd-from-being-occupied-durin.patch - Specify nodes number when updating cluster nodes (jsc#SLE-13700) 0092-Specify-nodes-number-when-updating-cluster-nodes.patch - mdadm/md.4: update path to in-kernel-tree documentation (jsc#SLE-13700) 0093-mdadm-md.4-update-path-to-in-kernel-tree-documentati.patch - manual: update --examine-badblocks (jsc#SLE-13700) 0094-manual-update-examine-badblocks.patch- mdadm: treat the Dell softraid array as local array (bsc#1175004) 1003-mdadm-treat-the-Dell-softraid-array-as-local-array.patch- OnCalendar format fix of mdcheck_start.timer (bsc#1173137) 1002-OnCalendar-format-fix-of-mdcheck_start-timer.patch- Detail: adding sync status for cluster device (bsc#1163727) 0072-Detail-adding-sync-status-for-cluster-device.patch - Monitor: improve check_one_sharer() for checking duplicated process (bsc#1168953) 0071-Monitor-improve-check_one_sharer-for-checking-duplic.patch- Update for latest mdadm-4.1+ patches, this is required by jsc#SLE-10078 and jsc#SLE-9348. Mostly the purpose is for latest Intel IMSM raid support. The following patches also include previous patches with new re-ordered prefix numbers. - Makefile: install mdadm_env.sh to /usr/lib/mdadm (bsc#1111960) 0000-Makefile-install-mdadm_env.sh-to-usr-lib-mdadm.patch - Assemble: keep MD_DISK_FAILFAST and MD_DISK_WRITEMOSTLY flag (jsc#SLE-10078, jsc#SLE-9348) 0001-Assemble-keep-MD_DISK_FAILFAST-and-MD_DISK_WRITEMOST.patch - Document PART-POLICY lines (jsc#SLE-10078, jsc#SLE-9348) 0002-Document-PART-POLICY-lines.patc - policy: support devices with multiple paths. (jsc#SLE-10078, jsc#SLE-9348) 0003-policy-support-devices-with-multiple-paths.patch - mdcheck: add systemd unit files to run mdcheck. (bsc#1115407) 0004-mdcheck-add-systemd-unit-files-to-run-mdcheck.patch - Monitor: add system timer to run --oneshot periodically (bsc#1115407) 0005-Monitor-add-system-timer-to-run-oneshot-periodically.patch - imsm: update metadata correctly while raid10 double (jsc#SLE-10078, jsc#SLE-9348) 0006-imsm-update-metadata-correctly-while-raid10-double-d.patch - Assemble: mask FAILFAST and WRITEMOSTLY flags when finding (jsc#SLE-10078, jsc#SLE-9348) 0007-Assemble-mask-FAILFAST-and-WRITEMOSTLY-flags-when-fi.patch - Grow: avoid overflow in compute_backup_blocks() (jsc#SLE-10078, jsc#SLE-9348) 0008-Grow-avoid-overflow-in-compute_backup_blocks.patch - Grow: report correct new chunk size. (jsc#SLE-10078, jsc#SLE-9348) 0009-Grow-report-correct-new-chunk-size.patch - policy.c: prevent NULL pointer referencing (bsc#1106078) 0010-policy.c-prevent-NULL-pointer-referencing.patch - policy.c: Fix for compiler error (jsc#SLE-10078, jsc#SLE-9348) 0012-policy.c-Fix-for-compiler-error.patch - imsm: finish recovery when drive with rebuild fails (bsc#1126975) 0013-imsm-finish-recovery-when-drive-with-rebuild-fails.patch - imsm: fix reshape for >2TB drives (jsc#SLE-10078, jsc#SLE-9348) 0014-imsm-fix-reshape-for-2TB-drives.patch - Fix spelling typos. (jsc#SLE-10078, jsc#SLE-9348) 0015-Fix-spelling-typos.patch - Detail.c: do not skip first character when calling xstrdup in Detail() (bsc#1123814) 0016-Detail.c-do-not-skip-first-character-when-calling-xs.patch - Fix reshape for decreasing data offset (jsc#SLE-10078, jsc#SLE-9348) 0018-Fix-reshape-for-decreasing-data-offset.patch - mdadm/tests: add one test case for failfast of raid1 (jsc#SLE-10078, jsc#SLE-9348) 0019-mdadm-tests-add-one-test-case-for-failfast-of-raid1.patch - mdmon: don't attempt to manage new arrays when terminating (bsc#1127526) 0020-mdmon-don-t-attempt-to-manage-new-arrays-when-termin.patch - mdmon: wait for previous mdmon to exit during takeover (jsc#SLE-10078, jsc#SLE-9348) 0021-mdmon-wait-for-previous-mdmon-to-exit-during-takeove.patch - Assemble: Fix starting array with initial reshape checkpoint (jsc#SLE-10078, jsc#SLE-9348) 0022-Assemble-Fix-starting-array-with-initial-reshape-che.patch - add missing units to --examine (jsc#SLE-10078, jsc#SLE-9348) 0023-add-missing-units-to-examine.patch - imsm: fix spare activation for old matrix arrays (jsc#SLE-10078, jsc#SLE-9348) 0024-imsm-fix-spare-activation-for-old-matrix-arrays.patch - Create: Block rounding size to max (jsc#SLE-10078, jsc#SLE-9348) 0025-Create-Block-rounding-size-to-max.patch - udev: Add udev rules to create by-partuuid for md device (jsc#SLE-10078, jsc#SLE-9348) 0026-udev-Add-udev-rules-to-create-by-partuuid-for-md-dev.patch - mdmon: fix wrong array state when disk fails during mdmon (jsc#SLE-10078, jsc#SLE-9348) 0027-mdmon-fix-wrong-array-state-when-disk-fails-during-m.patch - Enable probe_roms to scan more than 6 roms. (bsc#1156040) 0028-Enable-probe_roms-to-scan-more-than-6-roms.patch - super-intel: Fix issue with abs() being irrelevant (jsc#SLE-10078, jsc#SLE-9348) 0029-super-intel-Fix-issue-with-abs-being-irrelevant.patch - mdadm.h: Introduced unaligned {get,put}_unaligned{16,32}() (jsc#SLE-10078, jsc#SLE-9348) 0030-mdadm.h-Introduced-unaligned-get-put-_unaligned-16-3.patch - super-intel: Use put_unaligned in split_ull (jsc#SLE-10078, jsc#SLE-9348) 0031-super-intel-Use-put_unaligned-in-split_ull.patch - mdadm: load default sysfs attributes after assemblation (jsc#SLE-10078, jsc#SLE-9348) 0032-mdadm-load-default-sysfs-attributes-after-assemblati.patch - mdadm.h: include sysmacros.h unconditionally (jsc#SLE-10078, jsc#SLE-9348) 0033-mdadm.h-include-sysmacros.h-unconditionally.patch - mdadm: add --no-devices to avoid component devices detail (bsc#1139709) 0034-mdadm-add-no-devices-to-avoid-component-devices-deta.patch - udev: add --no-devices option for calling 'mdadm (bsc#1139709) 0035-udev-add-no-devices-option-for-calling-mdadm-detail.patch - imsm: close removed drive fd. (jsc#SLE-10078, jsc#SLE-9348) 0036-imsm-close-removed-drive-fd.patch - mdadm: check value returned by snprintf against errors (jsc#SLE-10078, jsc#SLE-9348) 0037-mdadm-check-value-returned-by-snprintf-against-error.patch - mdadm: Introduce new array state 'broken' for raid0/linear (jsc#SLE-10078, jsc#SLE-9348) 0038-mdadm-Introduce-new-array-state-broken-for-raid0-lin.patch - mdadm: force a uuid swap on big endian (jsc#SLE-10078, jsc#SLE-9348) 0039-mdadm-force-a-uuid-swap-on-big-endian.patch - mdadm/md.4: add the descriptions for bitmap sysfs nodes (jsc#SLE-10078, jsc#SLE-9348) 0040-mdadm-md.4-add-the-descriptions-for-bitmap-sysfs-nod.patch - Init devlist as an array (jsc#SLE-10078, jsc#SLE-9348) 0041-Init-devlist-as-an-array.patch - Don't need to check recovery after re-add when no I/O writes (jsc#SLE-10078, jsc#SLE-9348) 0042-Don-t-need-to-check-recovery-after-re-add-when-no-I-.patch - udev: allow for udev attribute reading bug. (jsc#SLE-10078, jsc#SLE-9348) 0043-udev-allow-for-udev-attribute-reading-bug.patch - imsm: save current_vol number (jsc#SLE-10078, jsc#SLE-9348) 0044-imsm-save-current_vol-number.patch - imsm: allow to specify second volume size (jsc#SLE-10078, jsc#SLE-9348) 0045-imsm-allow-to-specify-second-volume-size.patch - mdcheck: when mdcheck_start is enabled, enable (bsc#1153258) 0046-mdcheck-when-mdcheck_start-is-enabled-enable-mdcheck.patch - mdcheck: use ${} to pass variable to mdcheck (bsc#1153258) 0050-mdcheck-use-to-pass-variable-to-mdcheck.patch - SUSE-mdadm_env.sh: handle MDADM_CHECK_DURATION (bsc#1153258) 0051-SUSE-mdadm_env.sh-handle-MDADM_CHECK_DURATION.patch - super-intel: don't mark structs 'packed' unnecessarily (jsc#SLE-10078, jsc#SLE-9348) 0052-super-intel-don-t-mark-structs-packed-unnecessarily.patch - Manage: Remove the legacy code for md driver prior to 0.90.03 (jsc#SLE-10078, jsc#SLE-9348) 0053-Manage-Remove-the-legacy-code-for-md-driver-prior-to.patch - Remove last traces of HOT_ADD_DISK (jsc#SLE-10078, jsc#SLE-9348) 0054-Remove-last-traces-of-HOT_ADD_DISK.patch - Fix up a few formatting issues (jsc#SLE-10078, jsc#SLE-9348) 0055-Fix-up-a-few-formatting-issues.patch - Remove unused code (jsc#SLE-10078, jsc#SLE-9348) 0056-Remove-unused-code.patch - imsm: return correct uuid for volume in detail (jsc#SLE-10078, jsc#SLE-9348) 0057-imsm-return-correct-uuid-for-volume-in-detail.patch - imsm: Change the way of printing nvme drives in (jsc#SLE-10078, jsc#SLE-9348) 0058-imsm-Change-the-way-of-printing-nvme-drives-in-detai.patch - Create: add support for RAID0 layouts. (bsc#1162479) 0059-Create-add-support-for-RAID0-layouts.patch - Assemble: add support for RAID0 layouts. (bsc#1162479) 0060-Assemble-add-support-for-RAID0-layouts.patch - Respect $(CROSS_COMPILE) when $(CC) is the default (jsc#SLE-10078, jsc#SLE-9348) 0061-Respect-CROSS_COMPILE-when-CC-is-the-default.patch - Change warning message (jsc#SLE-10078, jsc#SLE-9348) 0062-Change-warning-message.patch - mdcheck service can't start succesfully because of syntax (jsc#SLE-10078, jsc#SLE-9348) 0063-mdcheck-service-can-t-start-succesfully-because-of-s.patch - imsm: Update grow manual. (jsc#SLE-10078, jsc#SLE-9348) 0064-imsm-Update-grow-manual.patch - Add support for Tebibytes (jsc#SLE-10078, jsc#SLE-9348) 0065-Add-support-for-Tebibytes.patch - imsm: fill working_disks according to metadata. (jsc#SLE-10078, jsc#SLE-9348) 0066-imsm-fill-working_disks-according-to-metadata.patch - mdadm.8: add note information for raid0 growing operation (bsc#1129900) 0067-mdadm.8-add-note-information-for-raid0-growing-opera.patch - Remove the legacy whitespace (jsc#SLE-10078, jsc#SLE-9348) 0068-Remove-the-legacy-whitespace.patch - imsm: pass subarray id to kill_subarray function (jsc#SLE-10078, jsc#SLE-9348) 0069-imsm-pass-subarray-id-to-kill_subarray-function.patch - imsm: Remove --dump/--restore implementation (jsc#SLE-10078, jsc#SLE-9348) 0070-imsm-Remove-dump-restore-implementation.patch- Rename the following patches, they will be listed with new re-ordered prefix number in following commit, 0001-Document-PART-POLICY-lines.patch 0001-Makefile-install-mdadm_env.sh-to-usr-lib-mdadm.patch 0002-policy-support-devices-with-multiple-paths.patch 0003-mdcheck-add-systemd-unit-files-to-run-mdcheck.patch 0004-Monitor-add-system-timer-to-run-oneshot-periodically.patch 0005-imsm-update-metadata-correctly-while-raid10-double-d.patch 0006-Grow-avoid-overflow-in-compute_backup_blocks.patch 0007-Grow-report-correct-new-chunk-size.patch 0008-policy.c-prevent-NULL-pointer-referencing.patch 0009-Detail.c-do-not-skip-first-character-when-calling-xs.patch 0010-imsm-finish-recovery-when-drive-with-rebuild-fails.patch 0011-mdmon-don-t-attempt-to-manage-new-arrays-when-termin.patch 0012-mdadm-add-no-devices-to-avoid-component-devices-deta.patch 0013-udev-add-no-devices-option-for-calling-mdadm-detail.patch 0021-mdcheck-when-mdcheck_start-is-enabled-enable-mdcheck.patch 0022-mdcheck-use-to-pass-variable-to-mdcheck.patch 0023-SUSE-mdadm_env.sh-handle-MDADM_CHECK_DURATION.patch 0024-Create-add-support-for-RAID0-layouts.patch 0025-Assemble-add-support-for-RAID0-layouts.patch 0026-Enable-probe_roms-to-scan-more-than-6-roms.patch 1002-mdadm.8-add-note-information-for-raid0-growing-opera.patch- Enable probe_roms to scan more than 6 roms. (bsc#1156040) 0026-Enable-probe_roms-to-scan-more-than-6-roms.patch- Create: add support for RAID0 layouts. (bsc#1162479) 0024-Create-add-support-for-RAID0-layouts.patch - Assemble: add support for RAID0 layouts. (bsc#1162479) 0025-Assemble-add-support-for-RAID0-layouts.patch - mdadm.8: add note information for raid0 growing operation (bsc#1129900) 1002-mdadm.8-add-note-information-for-raid0-growing-opera.patch- New patch: 0022-mdcheck-when-mdcheck_start-is-enabled-enable-mdcheck.patch New patch: 0023-mdcheck-use-to-pass-variable-to-mdcheck.patch New patch: 0024-SUSE-mdadm_env.sh-handle-MDADM_CHECK_DURATION.patch Improve systemd units for mdcheck (bsc#1153258)- 0012-mdadm-add-no-devices-to-avoid-component-devices-deta.patch (bsc#1139709) mdadm: add --no-devices to avoid component devices detail information - 0013-udev-add-no-devices-option-for-calling-mdadm-detail.patch (bsc#1139709) udev: add --no-devices option for calling 'mdadm --detail'- imsm: finish recovery when drive with rebuild fails (bsc#1126975) 0010-imsm-finish-recovery-when-drive-with-rebuild-fails.patch - mdmon: don't attempt to manage new arrays when terminating (bsc#1127526) 0011-mdmon-don-t-attempt-to-manage-new-arrays-when-termin.patch- Detail.c: do not skip first character when calling xstrdup in Detail() (bsc#1123814) 0009-Detail.c-do-not-skip-first-character-when-calling-xs.patch- Update description. Remove references to historic software.- 0001-Document-PART-POLICY-lines.patch 0002-policy-support-devices-with-multiple-paths.patch 0008-policy.c-prevent-NULL-pointer-referencing.patch (bsc#1106078) - 0003-mdcheck-add-systemd-unit-files-to-run-mdcheck.patch 0004-Monitor-add-system-timer-to-run-oneshot-periodically.patch Remove mdadm.cron Remove crond.mdadm (bsc#1115407) - 0005-imsm-update-metadata-correctly-while-raid10-double-d.patch 0006-Grow-avoid-overflow-in-compute_backup_blocks.patch 0007-Grow-report-correct-new-chunk-size.patch Other useful upstream patches.- Update mdadm code base to mdadm-4.1 (FATE#325869, bsc#1111960) - Assorted bug-fixes, minor improvements, and code cleanup - Add PPL support (alternate change-journalling model) - Fix Makefile to install mdadm_env.sh to /usr/lib/mdadm/ (bsc#1111960) 0001-Makefile-install-mdadm_env.sh-to-usr-lib-mdadm.patch - Remove the following code base and patches since they are in mdadm-4.1 already, - mdadm-4.0.tar.xz - 0001-Makefile-Fix-date-to-be-output-in-ISO-format.patch - 0002-imsm-fix-missing-error-message-during-migration.patch - 0003-Fix-oddity-where-mdadm-did-not-recognise-a-relative-.patch - 0004-mdadm-check-the-nodes-when-operate-clustered-array.patch - 0005-examine-tidy-up-some-code.patch - 0006-mdadm-add-man-page-for-symlinks.patch - 0007-mdadm-add-checking-clustered-bitmap-in-assemble-mode.patch - 0008-mdadm-Add-Wimplicit-fallthrough-0-in-Makefile.patch - 0009-mdadm-Specify-enough-length-when-write-to-buffer.patch - 0010-mdadm-it-doesn-t-make-sense-to-set-bitmap-twice.patch - 0011-mdadm-Monitor-Fix-NULL-pointer-dereference-when-stat.patch - 0012-Replace-snprintf-with-strncpy-at-some-places-to-avoi.patch - 0013-mdadm-Forced-type-conversion-to-avoid-truncation.patch - 0014-super1-ignore-failfast-flag-for-setting-device-role.patch - 0015-mdadm-bitmap-fixed-typos-in-comments-of-bitmap.h.patch - 0016-udev-md-raid-assembly.rules-Skip-non-ready-devices.patch - 0017-Retry-HOT_REMOVE_DISK-a-few-times.patch - 0018-mdadm-Build-check-the-level-parameter-when-build-new.patch - 0019-Introduce-sys_hot_remove_disk.patch - 0020-Add-force-flag-to-hot_remove_disk.patch - 0021-Detail-handle-non-existent-arrays-better.patch - 0022-Generic-support-for-consistency-policy-and-PPL.patch - 0023-Detail-show-consistency-policy.patch - 0024-imsm-PPL-support.patch - 0025-super1-PPL-support.patch - 0026-Add-ppl-and-no-ppl-options-for-update.patch - 0027-Grow-support-consistency-policy-change.patch - 0028-mdadm.h-struct-mdinfo-reorganize-ppl-elements-for-be.patch - 0029-super1-replace-hard-coded-values-with-bit-definition.patch - 0030-mdadm-Clean-up-some-ugly-multiple-actions-on-single-.patch - 0031-mdadm-Fixup-a-number-of-whitespace-inconsistency-cas.patch - 0032-util-Cosmetic-changes.patch - 0033-Grow-Fixup-a-pile-of-cosmetic-issues.patch - 0034-Grow-Remove-unnecessary-optimization.patch - 0035-Grow-Do-not-shadow-an-existing-variable.patch - 0036-imsm-use-rounded-size-for-metadata-initialization.patch - 0037-mdadm.c-fix-compile-error-switch-condition-has-boole.patch - 0038-mdadm-Create-declaring-an-existing-struct-within-sam.patch - 0039-Create-Fixup-bad-placement-of-logical-in-multi-line-.patch - 0040-Create-Fixup-various-whitespace-issues.patch - 0041-mdadm.c-fix-compile-warning-mdfd-is-uninitialized.patch - 0042-mdopen-use-parameters-new_array-to-create-arrays-whe.patch - 0043-mdadm-manpage-update-manpage-for-readonly-parameter.patch - 0044-mdadm-manpage-clustered-arrays-don-t-support-array-s.patch - 0045-maps-Terminate-modes-map-correctly.patch - 0046-Grow_continue_command-ensure-content-is-properly-ini.patch - 0047-systemd-mdadm-last-resort-use-ConditionPathExists-in.patch - 0048-Detail-ensure-export-names-are-acceptable-as-shell-v.patch - 0049-Grow-set-component-size-prior-to-array-size.patch - 0050-Grow-don-t-allow-to-enable-PPL-when-reshape-is-in-pr.patch - 0051-Grow-don-t-allow-array-geometry-change-with-ppl-enab.patch - 0052-IMSM-Correct-examine-output-for-4k-disks.patch - 0053-imsm-allow-drives-in-a-container-regardless-of-secto.patch - 0054-imsm-allocate-buffer-to-support-maximum-sector-size.patch - 0055-imsm-don-t-allow-disks-with-different-sector-size-in.patch - 0056-mdadm-mdmon-deleted-the-abort_reshape-never-invoked.patch - 0057-util-Introduce-md_get_array_info.patch - 0058-Incremental-Remove-redundant-call-for-GET_ARRAY_INFO.patch - 0059-util-Introduce-md_get_disk_info.patch - 0060-util-Introduce-md_set_array_info.patch - 0061-md_u-Remove-some-unused-ioctl-declarations.patch - 0062-mdadm-grow-reshape-would-be-stuck-from-raid1-to-raid.patch - 0063-sysfs-Use-the-presence-of-sys-block-dev-md-as-indica.patch - 0064-sysfs-Make-sysfs_init-return-an-error-code.patch - 0065-util-must_be_container-Use-sysfs_read-GET_VERSION-to.patch - 0066-util-set_array_info-Simplify-code-since-md_get_versi.patch - 0067-Assemble-Assemble-Stop-checking-kernel-md-driver-ver.patch - 0068-Build-Stop-bothering-about-supporting-md-driver-olde.patch - 0069-Grow-Stop-bothering-about-md-driver-versions-older-t.patch - 0070-Detail-Stop-bothering-about-md-drivers-older-than-0..patch - 0071-Create-Remove-all-attemps-to-handle-md-driver-older-.patch - 0072-Manage-Remove-all-references-to-md_get_version.patch - 0073-Query-Remove-all-references-to-md_get_version.patch - 0074-bitmap-Remove-use-of-md_get_version.patch - 0075-mdmon-Stop-bothering-about-md_get_version.patch - 0076-mdopen-open_mddev-Use-md_get_array_info-to-determine.patch - 0077-mdassemble-Use-md_get_array_info-to-check-for-valid-.patch - 0078-Assemble-Assemble-Get-rid-of-last-use-of-md_get_vers.patch - 0079-util-Finally-kill-off-md_get_version.patch - 0080-mdadm-Fail-for-kernels-older-than-2.6.15.patch - 0081-Revert-mdadm-grow-reshape-would-be-stuck-from-raid1-.patch - 0082-Retire-mdassemble.patch - 0083-super1-Clean-up-various-style-abuses.patch - 0084-Detail-Remove-pre-2.6-code-for-printing-info-on-rebu.patch - 0085-Assemble-Remove-obsolete-test-for-kernels-older-than.patch - 0086-Detail-Fixup-ugly-if-foo-abuse.patch - 0087-Query-Handle-error-returned-by-fstat.patch - 0088-Query-Use-sysfs-to-obtain-data-if-possible.patch - 0089-sysfs-Parse-array_state-in-sysfs_read.patch - 0090-util-Introduce-md_array_active-helper.patch - 0091-maps-Use-keyvalue-for-null-terminator-to-indicate-un.patch - 0092-util-Get-rid-of-unused-enough_fd.patch - 0093-mdadm-retire-mdassemble-in-make-everything.patch - 0094-Query-Quiet-gcc-since-it-cannot-know-errno-0-in-this.patch - 0095-Makefile-Default-to-O2-optimization.patch - 0096-maps-Simplify-implementation-of-map_name.patch - 0097-Don-t-use-UnSet-with-consistency_policy.patch - 0098-Detail-determine-array-state-from-sysfs.patch - 0099-Detail-Respect-code-lines-are-80-character-wide.patch - 0100-Detail-Reinstate-support-for-not-having-sysfs.patch - 0101-Incremental-Use-md_array_active-where-applicable.patch - 0102-Incremental-Cleanup-some-if-statement-spaghetti.patch - 0103-Create-tell-udev-md-device-is-not-ready-when-first-c.patch - 0104-Incremental-Use-md_array_active-to-determine-state-o.patch - 0105-Manage-Manage_ro-Use-md_array_active.patch - 0106-IMSM-Initialize-my_vol_raid_dev_num-during-vol-creat.patch - 0107-Grow-Grow_continue_command-Avoid-aliasing-array-vari.patch - 0108-change-back-0644-permission-for-Grow.c.patch - 0109-util-md_array_valid-Introduce-md_array_valid-helper.patch - 0110-kernel-patch-Remove-obsolete-kernel-patches-against-.patch - 0111-mdassemble-Kill-off-the-last-remains.patch - 0112-mdadm-util-unify-fstat-checking-blkdev-into-function.patch - 0113-mdadm-util-unify-stat-checking-blkdev-into-function.patch - 0114-Fix-typo-in-new-udev-rule.patch - 0115-Incremental-return-is-not-a-function.patch - 0116-sysfs-sysfs_read-Count-active_disks-and-failed_disks.patch - 0117-container_members_max_degradation-Switch-to-using-sy.patch - 0118-IncrementalScan-Use-md_array_active-instead-of-md_ge.patch - 0119-Mention-endian-in-documentation-for-update-byte-orde.patch - 0120-Monitor-Use-md_array_active-instead-of-manually-fidd.patch - 0121-Monitor-Code-is-80-characters-per-line.patch - 0122-mdadm-md.4-set-page-length-as-1000-to-avoid-warnings.patch - 0123-Allow-more-spare-selection-criteria.patch - 0124-Add-sector-size-as-spare-selection-criterion.patch - 0125-Monitor-check_array-Centralize-exit-path.patch - 0126-Monitor-check_array-Reduce-duplicated-error-handling.patch - 0127-Monitor-check_array-Declate-mdinfo-instance-globally.patch - 0128-Monitor-check_array-Read-sysfs-entry-earlier.patch - 0129-Monitor-check_array-Obtain-RAID-level-from-syfs.patch - 0130-Monitor-check_array-Get-failed_disks-from-sysfs.patch - 0131-Monitor-check_array-Get-array_disks-from-sysfs.patch - 0132-Monitor-check_array-Get-nr_disks-active_disks-and-sp.patch - 0133-sysfs-sysfs_read-Count-working_disks.patch - 0134-Monitor-check_array-Use-working_disks-from-sysfs.patch - 0135-retire-the-APIs-that-driver-no-longer-supports.patch - 0136-Monitor-Not-much-point-declaring-mdlist-in-both-fork.patch - 0137-Monitor-mailfrom-is-initialized-correctly.patch - 0138-Monitor-Fixup-a-pile-of-whitespace-issues.patch - 0139-mdadm-Uninitialized-variable-rdev.patch - 0140-super-ddf-sysfs_read-takes-a-pointer-as-device-name-.patch - 0141-mdadm-Fixup-a-large-number-of-bad-formatting-of-logi.patch - 0142-mdadm-Fixup-more-broken-logical-operator-formatting.patch - 0143-mdadm-Fix-broken-formatting.patch - 0144-mdadm-Fixup-broken-formatting.patch - 0145-Detail-don-t-exit-if-ioctl-has-been-successful.patch - 0146-super1-fix-sb-max_dev-when-adding-a-new-disk-in-line.patch - 0147-md_u-Remove-unused-ioctl-declaration-of-START_ARRAY.patch - 0148-Get-failed-disk-count-from-array-state.patch - 0149-Monitor-don-t-assume-mdadm-parameter-is-a-block-devi.patch - 0150-super1-Always-round-data-offset-to-1M.patch - 0151-mdadm-r5cache-allow-adding-journal-to-array-without-.patch - 0152-udev-rules-introduce-rules-for-cluster-md-to-confirm.patch - 0153-Detail-correct-output-for-active-arrays.patch - 0154-imsm-rebuild-from-2-disk-RAID10.patch - 0155-Error-messages-should-end-with-a-newline-character.patch - 0156-Use-correct-syntax-for-passing-DEVLINKS-to-mdadm-fro.patch - 0157-super1-only-set-clustered-flag-when-bitmap-is-presen.patch - 0158-Don-t-use-exit-ERANGE.patch - 0159-Monitor-containers-don-t-have-the-same-sysfs-propert.patch - 0160-Monitor-Include-containers-in-spare-migration.patch - 0161-Detail-differentiate-between-container-and-inactive-.patch - 0162-mdadm-install-two-more-udev-rules-in-mdadm.spec.patch - 0163-mdadm-set-journal_clean-after-scanning-all-disks.patch - 0164-mdadm-bitmap-examine-bitmap-failed-when-bitmap-is-ex.patch - 0165-mdopen-call-modprobe-md_mod-if-it-might-be-needed.patch - 0166-lib-devid2kname-should-take-a-dev_t.patch - 0167-sysfs_init_dev-take-a-dev_t-argument.patch - 0168-Manage_subdevs-Use-a-dev_t.patch - 0169-util-Code-is-80-characters-wide.patch - 0170-Close-mdfd-before-returning-main-function.patch - 0171-Grow-stop-previous-reshape-process-first.patch - 0172-imsm-New-disk-controller-domains.patch - 0173-Monitor-Check-redundancy-for-arrays.patch - 0174-mdadm-grow-Component-size-must-be-larger-than-chunk-.patch - 0175-mdadm-manpage-disable-bitmap_resize-for-external-fil.patch - 0176-mdadm-fixes-some-trivial-typos-in-comments.patch - 0177-Don-t-abort-starting-the-array-if-kernel-does-not-su.patch - 0178-super1-Add-support-for-multiple-ppls.patch - 0179-imsm-Add-support-for-multiple-ppls.patch - 0180-imsm-validate-multiple-ppls-during-assemble.patch - 0181-Zeroout-whole-ppl-space-during-creation-force-assemb.patch - 0182-imsm-switch-to-multiple-ppls-automatically-during-as.patch - 0183-Grow-fix-switching-on-PPL-during-recovery.patch - 0184-imsm-don-t-skip-resync-when-an-invalid-ppl-header-is.patch - 0185-imsm-Write-empty-PPL-header-if-assembling-regular-cl.patch - 0186-imsm-always-do-ppl-recovery-when-starting-a-rebuildi.patch - 0187-imsm-use-correct-map-when-validating-ppl.patch - 0188-imsm-write-initial-ppl-on-a-disk-added-for-rebuild.patch - 0189-Grow-Use-all-80-characters.patch - 0190-imsm-Set-disk-slot-number.patch - 0191-mdmon-get-safe-mode-delay-file-descriptor-early.patch - 0192-mdadm-mdstat-fixup-a-number-of-broken-formatting.patch - 0193-mdadm-mdstat-correct-the-strncmp-number-4-as-6.patch - 0194-mdcheck-add-some-logging.patch - 0195-mdcheck-improve-cleanup.patch - 0197-mdadm-grow-adding-a-test-to-ensure-resize-was-requir.patch - 0198-mdadm-mdopen-create-new-function-create_named_array-.patch - 0199-systemd-add-I-to-description-of-mdadm-last-resort-se.patch - 0200-Incremental-Use-validate_geometry-instead-of-avail_s.patch - 0201-imsm-fix-reading-scsi-serial.patch - 0202-To-support-clustered-raid10.patch - 0203-imsm-More-precise-message-when-spanned-raid-is-creat.patch - 0204-sysfs-include-faulty-drive-in-disk-count.patch - 0205-Monitor-msg-Don-t-print-error-message-if-mdmon-doesn.patch - 0206-imsm-continue-resync-on-3-disk-RAID10.patch - 0207-managemon-Don-t-add-disk-to-the-array-after-it-has-s.patch - 0208-mdadm-grow-correct-the-s-size-1-to-make-max-work.patch - 0209-policy.c-Avoid-to-take-spare-without-defined-domain-.patch - 0210-mdadm-allow-clustered-raid10-to-be-created-with-defa.patch- Add missing patches which exist in SLE12-SP3 and should be in SLE15 too, - mdadm: improve the dlm locking mechanism for clustered raid (bsc#1049126) 0218-mdadm-improve-the-dlm-locking-mechanism-for-clustere.patch - Assemble: provide protection when clustered raid do assemble (bsc#1049126) 0219-Assemble-provide-protection-when-clustered-raid-do-a.patch - Assemble: cleanup the failure path (bsc#1049126) 0220-Assemble-cleanup-the-failure-path.patch - Assemble: remove the protection when clustered raid do assemble (bsc#1101348) 0221-Assemble-remove-the-protection-when-clustered-raid-d.patch - 1001-display-timeout-status.patch- mdadm.spec Change %doc to %license for COPYING file, which was warned during 'osc ci'.- imsm: change reserved space to 4MB (bsc#1101110) 0212-imsm-change-reserved-space-to-4MB.patch - imsm: add functions to get and set imsm dev size (bsc#1101110) 0213-imsm-add-functions-to-get-and-set-imsm-dev-size.patch - imsm: pass already existing map to imsm_num_data_members (bsc#1101110) 0214-imsm-pass-already-existing-map-to-imsm_num_data_memb.patch - imsm: do not use blocks_per_member in array size calculations (bsc#1101110) 0215-imsm-do-not-use-blocks_per_member-in-array-size-calc.patch - imsm: correct num_data_stripes in metadata map for migration (bsc#1101110) 0216-imsm-correct-num_data_stripes-in-metadata-map-for-mi.patch - mdadm/grow: correct size and chunk_size casting (bsc#1095177) 0217-mdadm-grow-correct-size-and-chunk_size-casting.patch- Assemble: prevent segfault with faulty "best" devices (bsc#1082766, bsc#1095729) 0211-Assemble-prevent-segfault-with-faulty-best-devices.patch- mdadm: allow clustered raid10 to be created with default layout (bsc#1083881) 0210-mdadm-allow-clustered-raid10-to-be-created-with-defa.patch- policy.c: Avoid to take spare without defined domain by imsm (bsc#1076588) 0209-policy.c-Avoid-to-take-spare-without-defined-domain-.patch- 0208-mdadm-grow-correct-the-s-size-1-to-make-max-work.patch (bsc#1074949)- 0207-managemon-Don-t-add-disk-to-the-array-after-it-has-s.patch (bsc#1073862)- Update mdadm for SLE15, for bug fixes and new feature enhancement - 1000-The-mdcheck-script-now-adds-messages-to-the-system.patch is removed because upstream has similar fix with almost identical funcationality. - The following patches are not deleted indeed, they are renamed and added into all other new-added patches with different perfix numbers, 0038-Create-Fixup-bad-placement-of-logical-in-multi-line-.patch 0039-Create-Fixup-various-whitespace-issues.patch 0040-mdadm.c-fix-compile-warning-mdfd-is-uninitialized.patch 0041-mdopen-use-parameters-new_array-to-create-arrays-whe.patch 0042-mdadm-manpage-update-manpage-for-readonly-parameter.patch 0043-mdadm-manpage-clustered-arrays-don-t-support-array-s.patch 0044-maps-Terminate-modes-map-correctly.patch 0045-Grow_continue_command-ensure-content-is-properly-ini.patch 0046-systemd-mdadm-last-resort-use-ConditionPathExists-in.patch 0047-Detail-ensure-export-names-are-acceptable-as-shell-v.patch 0048-Grow-set-component-size-prior-to-array-size.patch 0049-Grow-don-t-allow-to-enable-PPL-when-reshape-is-in-pr.patch 0050-Grow-don-t-allow-array-geometry-change-with-ppl-enab.patch 0051-IMSM-Correct-examine-output-for-4k-disks.patch 0052-imsm-allow-drives-in-a-container-regardless-of-secto.patch 0053-imsm-allocate-buffer-to-support-maximum-sector-size.patch 0054-imsm-don-t-allow-disks-with-different-sector-size-in.patch 0055-Allow-more-spare-selection-criteria.patch 0056-Add-sector-size-as-spare-selection-criterion.patch 0057-super1-fix-sb-max_dev-when-adding-a-new-disk-in-line.patch 0058-super1-only-set-clustered-flag-when-bitmap-is-presen.patch 0059-To-support-clustered-raid10.patch 0060-udev-rules-introduce-rules-for-cluster-md-to-confirm.patch - The following patche set includes the above renamed patches, they have bug fixes for bsc#1068030, bsc#1069165, bsc#1069167, and some other fixes and enhancement for raid5 ppl, imsm, and general mdadm code, 0038-mdadm-Create-declaring-an-existing-struct-within-sam.patch 0039-Create-Fixup-bad-placement-of-logical-in-multi-line-.patch 0040-Create-Fixup-various-whitespace-issues.patch 0041-mdadm.c-fix-compile-warning-mdfd-is-uninitialized.patch 0042-mdopen-use-parameters-new_array-to-create-arrays-whe.patch 0043-mdadm-manpage-update-manpage-for-readonly-parameter.patch 0044-mdadm-manpage-clustered-arrays-don-t-support-array-s.patch 0045-maps-Terminate-modes-map-correctly.patch 0046-Grow_continue_command-ensure-content-is-properly-ini.patch 0047-systemd-mdadm-last-resort-use-ConditionPathExists-in.patch 0048-Detail-ensure-export-names-are-acceptable-as-shell-v.patch 0049-Grow-set-component-size-prior-to-array-size.patch 0050-Grow-don-t-allow-to-enable-PPL-when-reshape-is-in-pr.patch 0051-Grow-don-t-allow-array-geometry-change-with-ppl-enab.patch 0052-IMSM-Correct-examine-output-for-4k-disks.patch 0053-imsm-allow-drives-in-a-container-regardless-of-secto.patch 0054-imsm-allocate-buffer-to-support-maximum-sector-size.patch 0055-imsm-don-t-allow-disks-with-different-sector-size-in.patch 0056-mdadm-mdmon-deleted-the-abort_reshape-never-invoked.patch 0057-util-Introduce-md_get_array_info.patch 0058-Incremental-Remove-redundant-call-for-GET_ARRAY_INFO.patch 0059-util-Introduce-md_get_disk_info.patch 0060-util-Introduce-md_set_array_info.patch 0061-md_u-Remove-some-unused-ioctl-declarations.patch 0062-mdadm-grow-reshape-would-be-stuck-from-raid1-to-raid.patch 0063-sysfs-Use-the-presence-of-sys-block-dev-md-as-indica.patch 0064-sysfs-Make-sysfs_init-return-an-error-code.patch 0065-util-must_be_container-Use-sysfs_read-GET_VERSION-to.patch 0066-util-set_array_info-Simplify-code-since-md_get_versi.patch 0067-Assemble-Assemble-Stop-checking-kernel-md-driver-ver.patch 0068-Build-Stop-bothering-about-supporting-md-driver-olde.patch 0069-Grow-Stop-bothering-about-md-driver-versions-older-t.patch 0070-Detail-Stop-bothering-about-md-drivers-older-than-0..patch 0071-Create-Remove-all-attemps-to-handle-md-driver-older-.patch 0072-Manage-Remove-all-references-to-md_get_version.patch 0073-Query-Remove-all-references-to-md_get_version.patch 0074-bitmap-Remove-use-of-md_get_version.patch 0075-mdmon-Stop-bothering-about-md_get_version.patch 0076-mdopen-open_mddev-Use-md_get_array_info-to-determine.patch 0077-mdassemble-Use-md_get_array_info-to-check-for-valid-.patch 0078-Assemble-Assemble-Get-rid-of-last-use-of-md_get_vers.patch 0079-util-Finally-kill-off-md_get_version.patch 0080-mdadm-Fail-for-kernels-older-than-2.6.15.patch 0081-Revert-mdadm-grow-reshape-would-be-stuck-from-raid1-.patch 0082-Retire-mdassemble.patch 0083-super1-Clean-up-various-style-abuses.patch 0084-Detail-Remove-pre-2.6-code-for-printing-info-on-rebu.patch 0085-Assemble-Remove-obsolete-test-for-kernels-older-than.patch 0086-Detail-Fixup-ugly-if-foo-abuse.patch 0087-Query-Handle-error-returned-by-fstat.patch 0088-Query-Use-sysfs-to-obtain-data-if-possible.patch 0089-sysfs-Parse-array_state-in-sysfs_read.patch 0090-util-Introduce-md_array_active-helper.patch 0091-maps-Use-keyvalue-for-null-terminator-to-indicate-un.patch 0092-util-Get-rid-of-unused-enough_fd.patch 0093-mdadm-retire-mdassemble-in-make-everything.patch 0094-Query-Quiet-gcc-since-it-cannot-know-errno-0-in-this.patch 0095-Makefile-Default-to-O2-optimization.patch 0096-maps-Simplify-implementation-of-map_name.patch 0097-Don-t-use-UnSet-with-consistency_policy.patch 0098-Detail-determine-array-state-from-sysfs.patch 0099-Detail-Respect-code-lines-are-80-character-wide.patch 0100-Detail-Reinstate-support-for-not-having-sysfs.patch 0101-Incremental-Use-md_array_active-where-applicable.patch 0102-Incremental-Cleanup-some-if-statement-spaghetti.patch 0103-Create-tell-udev-md-device-is-not-ready-when-first-c.patch 0104-Incremental-Use-md_array_active-to-determine-state-o.patch 0105-Manage-Manage_ro-Use-md_array_active.patch 0106-IMSM-Initialize-my_vol_raid_dev_num-during-vol-creat.patch 0107-Grow-Grow_continue_command-Avoid-aliasing-array-vari.patch 0108-change-back-0644-permission-for-Grow.c.patch 0109-util-md_array_valid-Introduce-md_array_valid-helper.patch 0110-kernel-patch-Remove-obsolete-kernel-patches-against-.patch 0111-mdassemble-Kill-off-the-last-remains.patch 0112-mdadm-util-unify-fstat-checking-blkdev-into-function.patch 0113-mdadm-util-unify-stat-checking-blkdev-into-function.patch 0114-Fix-typo-in-new-udev-rule.patch 0115-Incremental-return-is-not-a-function.patch 0116-sysfs-sysfs_read-Count-active_disks-and-failed_disks.patch 0117-container_members_max_degradation-Switch-to-using-sy.patch 0118-IncrementalScan-Use-md_array_active-instead-of-md_ge.patch 0119-Mention-endian-in-documentation-for-update-byte-orde.patch 0120-Monitor-Use-md_array_active-instead-of-manually-fidd.patch 0121-Monitor-Code-is-80-characters-per-line.patch 0122-mdadm-md.4-set-page-length-as-1000-to-avoid-warnings.patch 0123-Allow-more-spare-selection-criteria.patch 0124-Add-sector-size-as-spare-selection-criterion.patch 0125-Monitor-check_array-Centralize-exit-path.patch 0126-Monitor-check_array-Reduce-duplicated-error-handling.patch 0127-Monitor-check_array-Declate-mdinfo-instance-globally.patch 0128-Monitor-check_array-Read-sysfs-entry-earlier.patch 0129-Monitor-check_array-Obtain-RAID-level-from-syfs.patch 0130-Monitor-check_array-Get-failed_disks-from-sysfs.patch 0131-Monitor-check_array-Get-array_disks-from-sysfs.patch 0132-Monitor-check_array-Get-nr_disks-active_disks-and-sp.patch 0133-sysfs-sysfs_read-Count-working_disks.patch 0134-Monitor-check_array-Use-working_disks-from-sysfs.patch 0135-retire-the-APIs-that-driver-no-longer-supports.patch 0136-Monitor-Not-much-point-declaring-mdlist-in-both-fork.patch 0137-Monitor-mailfrom-is-initialized-correctly.patch 0138-Monitor-Fixup-a-pile-of-whitespace-issues.patch 0139-mdadm-Uninitialized-variable-rdev.patch 0140-super-ddf-sysfs_read-takes-a-pointer-as-device-name-.patch 0141-mdadm-Fixup-a-large-number-of-bad-formatting-of-logi.patch 0142-mdadm-Fixup-more-broken-logical-operator-formatting.patch 0143-mdadm-Fix-broken-formatting.patch 0144-mdadm-Fixup-broken-formatting.patch 0145-Detail-don-t-exit-if-ioctl-has-been-successful.patch 0146-super1-fix-sb-max_dev-when-adding-a-new-disk-in-line.patch 0147-md_u-Remove-unused-ioctl-declaration-of-START_ARRAY.patch 0148-Get-failed-disk-count-from-array-state.patch 0149-Monitor-don-t-assume-mdadm-parameter-is-a-block-devi.patch 0150-super1-Always-round-data-offset-to-1M.patch 0151-mdadm-r5cache-allow-adding-journal-to-array-without-.patch 0152-udev-rules-introduce-rules-for-cluster-md-to-confirm.patch 0153-Detail-correct-output-for-active-arrays.patch 0154-imsm-rebuild-from-2-disk-RAID10.patch (bsc#1069165) 0155-Error-messages-should-end-with-a-newline-character.patch 0156-Use-correct-syntax-for-passing-DEVLINKS-to-mdadm-fro.patch 0157-super1-only-set-clustered-flag-when-bitmap-is-presen.patch 0158-Don-t-use-exit-ERANGE.patch 0159-Monitor-containers-don-t-have-the-same-sysfs-propert.patch 0160-Monitor-Include-containers-in-spare-migration.patch 0161-Detail-differentiate-between-container-and-inactive-.patch 0162-mdadm-install-two-more-udev-rules-in-mdadm.spec.patch 0163-mdadm-set-journal_clean-after-scanning-all-disks.patch 0164-mdadm-bitmap-examine-bitmap-failed-when-bitmap-is-ex.patch 0165-mdopen-call-modprobe-md_mod-if-it-might-be-needed.patch 0166-lib-devid2kname-should-take-a-dev_t.patch 0167-sysfs_init_dev-take-a-dev_t-argument.patch 0168-Manage_subdevs-Use-a-dev_t.patch 0169-util-Code-is-80-characters-wide.patch 0170-Close-mdfd-before-returning-main-function.patch 0171-Grow-stop-previous-reshape-process-first.patch 0172-imsm-New-disk-controller-domains.patch 0173-Monitor-Check-redundancy-for-arrays.patch 0174-mdadm-grow-Component-size-must-be-larger-than-chunk-.patch 0175-mdadm-manpage-disable-bitmap_resize-for-external-fil.patch 0176-mdadm-fixes-some-trivial-typos-in-comments.patch (The following 12 patches are specifically for bsc#1068030) 0177-Don-t-abort-starting-the-array-if-kernel-does-not-su.patch 0178-super1-Add-support-for-multiple-ppls.patch 0179-imsm-Add-support-for-multiple-ppls.patch 0180-imsm-validate-multiple-ppls-during-assemble.patch 0181-Zeroout-whole-ppl-space-during-creation-force-assemb.patch 0182-imsm-switch-to-multiple-ppls-automatically-during-as.patch 0183-Grow-fix-switching-on-PPL-during-recovery.patch 0184-imsm-don-t-skip-resync-when-an-invalid-ppl-header-is.patch 0185-imsm-Write-empty-PPL-header-if-assembling-regular-cl.patch 0186-imsm-always-do-ppl-recovery-when-starting-a-rebuildi.patch 0187-imsm-use-correct-map-when-validating-ppl.patch 0188-imsm-write-initial-ppl-on-a-disk-added-for-rebuild.patch 0189-Grow-Use-all-80-characters.patch 0190-imsm-Set-disk-slot-number.patch (The following 1 patch is specifically for bsc#1069167) 0191-mdmon-get-safe-mode-delay-file-descriptor-early.patch 0192-mdadm-mdstat-fixup-a-number-of-broken-formatting.patch 0193-mdadm-mdstat-correct-the-strncmp-number-4-as-6.patch 0194-mdcheck-add-some-logging.patch 0195-mdcheck-improve-cleanup.patch 0196-Move-mdadm_env.sh-out-of-usr-lib-systemd.patch 0197-mdadm-grow-adding-a-test-to-ensure-resize-was-requir.patch 0198-mdadm-mdopen-create-new-function-create_named_array-.patch 0199-systemd-add-I-to-description-of-mdadm-last-resort-se.patch 0200-Incremental-Use-validate_geometry-instead-of-avail_s.patch 0201-imsm-fix-reading-scsi-serial.patch 0202-To-support-clustered-raid10.patch 0203-imsm-More-precise-message-when-spanned-raid-is-creat.patch 0204-sysfs-include-faulty-drive-in-disk-count.patch 0205-Monitor-msg-Don-t-print-error-message-if-mdmon-doesn.patch 0206-imsm-continue-resync-on-3-disk-RAID10.patch- Add udev rules for cluster-md to confirm device (fate#316335) 0060-udev-rules-introduce-rules-for-cluster-md-to-confirm.patch- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468)- Add one mdadm patch to support clustered raid10 (fate#323171) 0059-To-support-clustered-raid10.patch- SLE15 continues to use mdadm-4.0, synchronize mdadm package from SLE12-SP3 to SLE15, re-order all patches. - Rename the following patches, they are deleted and re-add in next part of patches 0001-Generic-support-for-consistency-policy-and-PPL.patch 0002-Detail-show-consistency-policy.patch 0002-The-mdcheck-script-now-adds-messages-to-the-system.patch 0003-imsm-PPL-support.patch 0004-super1-PPL-support.patch 0005-Add-ppl-and-no-ppl-options-for-update.patch 0006-Grow-support-consistency-policy-change.patch 0007-udev-md-raid-assembly.rules-Skip-non-ready-devices.patch 0008-Retry-HOT_REMOVE_DISK-a-few-times.patch 0009-Introduce-sys_hot_remove_disk.patch 0010-Add-force-flag-to-hot_remove_disk.patch 0011-Detail-handle-non-existent-arrays-better.patch - Synchronize patches from mdadm of SLE12-SP3, the above renamed patches are re-add here, 0001-Makefile-Fix-date-to-be-output-in-ISO-format.patch 0002-imsm-fix-missing-error-message-during-migration.patch 0003-Fix-oddity-where-mdadm-did-not-recognise-a-relative-.patch 0004-mdadm-check-the-nodes-when-operate-clustered-array.patch 0005-examine-tidy-up-some-code.patch 0006-mdadm-add-man-page-for-symlinks.patch 0007-mdadm-add-checking-clustered-bitmap-in-assemble-mode.patch 0008-mdadm-Add-Wimplicit-fallthrough-0-in-Makefile.patch 0009-mdadm-Specify-enough-length-when-write-to-buffer.patch 0010-mdadm-it-doesn-t-make-sense-to-set-bitmap-twice.patch 0011-mdadm-Monitor-Fix-NULL-pointer-dereference-when-stat.patch 0012-Replace-snprintf-with-strncpy-at-some-places-to-avoi.patch 0013-mdadm-Forced-type-conversion-to-avoid-truncation.patch 0014-super1-ignore-failfast-flag-for-setting-device-role.patch 0015-mdadm-bitmap-fixed-typos-in-comments-of-bitmap.h.patch 0016-udev-md-raid-assembly.rules-Skip-non-ready-devices.patch 0017-Retry-HOT_REMOVE_DISK-a-few-times.patch 0018-mdadm-Build-check-the-level-parameter-when-build-new.patch 0019-Introduce-sys_hot_remove_disk.patch 0020-Add-force-flag-to-hot_remove_disk.patch 0021-Detail-handle-non-existent-arrays-better.patch 0022-Generic-support-for-consistency-policy-and-PPL.patch 0023-Detail-show-consistency-policy.patch 0024-imsm-PPL-support.patch 0025-super1-PPL-support.patch 0026-Add-ppl-and-no-ppl-options-for-update.patch 0027-Grow-support-consistency-policy-change.patch 0028-mdadm.h-struct-mdinfo-reorganize-ppl-elements-for-be.patch 0029-super1-replace-hard-coded-values-with-bit-definition.patch 0030-mdadm-Clean-up-some-ugly-multiple-actions-on-single-.patch 0031-mdadm-Fixup-a-number-of-whitespace-inconsistency-cas.patch 0032-util-Cosmetic-changes.patch 0033-Grow-Fixup-a-pile-of-cosmetic-issues.patch 0034-Grow-Remove-unnecessary-optimization.patch 0035-Grow-Do-not-shadow-an-existing-variable.patch 0036-imsm-use-rounded-size-for-metadata-initialization.patch 0037-mdadm.c-fix-compile-error-switch-condition-has-boole.patch 0038-Create-Fixup-bad-placement-of-logical-in-multi-line-.patch 0039-Create-Fixup-various-whitespace-issues.patch 0040-mdadm.c-fix-compile-warning-mdfd-is-uninitialized.patch 0041-mdopen-use-parameters-new_array-to-create-arrays-whe.patch 0042-mdadm-manpage-update-manpage-for-readonly-parameter.patch 0043-mdadm-manpage-clustered-arrays-don-t-support-array-s.patch 0044-maps-Terminate-modes-map-correctly.patch 0045-Grow_continue_command-ensure-content-is-properly-ini.patch 0046-systemd-mdadm-last-resort-use-ConditionPathExists-in.patch 0047-Detail-ensure-export-names-are-acceptable-as-shell-v.patch 0048-Grow-set-component-size-prior-to-array-size.patch 0049-Grow-don-t-allow-to-enable-PPL-when-reshape-is-in-pr.patch 0050-Grow-don-t-allow-array-geometry-change-with-ppl-enab.patch 0051-IMSM-Correct-examine-output-for-4k-disks.patch 0052-imsm-allow-drives-in-a-container-regardless-of-secto.patch 0053-imsm-allocate-buffer-to-support-maximum-sector-size.patch 0054-imsm-don-t-allow-disks-with-different-sector-size-in.patch 0055-Allow-more-spare-selection-criteria.patch 0056-Add-sector-size-as-spare-selection-criterion.patch 0057-super1-fix-sb-max_dev-when-adding-a-new-disk-in-line.patch 0058-super1-only-set-clustered-flag-when-bitmap-is-presen.patch 1000-The-mdcheck-script-now-adds-messages-to-the-system.patch- New upstream release 4.0 Multiple bugfixes and various enhancements including IMSM support for bad blocks and 4K block devices. (FATE#321941) - DELETE 0001-super1-Clear-memory-allocated-for-superblock-bitmap-.patch this was included upstream - 0001-Generic-support-for-consistency-policy-and-PPL.patch - 0002-Detail-show-consistency-policy.patch - 0003-imsm-PPL-support.patch - 0004-super1-PPL-support.patch - 0005-Add-ppl-and-no-ppl-options-for-update.patch - 0006-Grow-support-consistency-policy-change.patch Add support for Partial Parity Logs (FATE#321941) - 0007-udev-md-raid-assembly.rules-Skip-non-ready-devices.patch (bsc#956236) - 0008-Retry-HOT_REMOVE_DISK-a-few-times.patch (bsc#808647) - 0009-Introduce-sys_hot_remove_disk.patch (bsc#974154) - 0010-Add-force-flag-to-hot_remove_disk.patch (bsc#808647) - 0011-Detail-handle-non-existent-arrays-better.patch (bsc#966773)- Added 0002-The-mdcheck-script-now-adds-messages-to-the-system.patch The mdcheck bash script now writes messages to the syslog about progress with check.- Do not list XXX@.service files for anything but service_del_preun. They cannot be restarted by systemctl as they are just templates. They don't need to be restarted at reinstall anyway. (bsc#979749)- New upstream release mdadm-3.4 Adds support for clustered-raid1 and journalled raid5 - 0001-super1-Clear-memory-allocated-for-superblock-bitmap-.patch Important upstream bugfix relating to uninialised memory.- Add missing pre-requres for initrd macros (boo#958562)- Own %{_systemdshutdowndir} in case nothing else does. This ensures build success even if systemd-mini does not own it (happens in some versions of our package).- Do not BuildRequire systemd: it conflicts with systemd-mini, pulled in by systemd-mini-devel (due to BuildRequires: pkgconfig(systemd)). The reason systemd was added as a buildrequires was for 'something' to onw /usr/lib/systemd/system-shutdown/; systemd-mini does that also for us.- new upstream version 3.3.4. Important bugfix to honour IMSM ROM settings when RAID is disabled. (bsc#939748 bsc#937363)- new upstream version 3.3.3. Lots of bug fixes, particular "mdadm --assemble --force" would often not do the right thing for RAID5. - 0001-Grow-Do-not-try-to-restart-if-reshape-is-running.patch 0001-Grow-fix-removal-of-line-in-wrong-case.patch 0001-IMSM-Add-warning-message-when-assemble-spanned-conta.patch 0001-Makefile-install-mdadm-grow-continue-.service.patch mdcheck-careful.patch mdcheck-no-devices.fix All removed as now included upstream.- Make it build, that is build-require pkgconfig of udev and the package systemd as this one is the owner of the directory /usr/lib/systemd/system-shutdown- 0001-IMSM-Add-warning-message-when-assemble-spanned-conta.patch (bnc#882634) - 0001-Grow-Do-not-try-to-restart-if-reshape-is-running.patch (bnc#887773)- mdcheck-careful.patch Be careful about reading all output of "mdadm --detail --export" as shell commands - it isn't quoted. (bnc#910500)- mdcheck-no-devices.fix mdcheck mustn't report an error if not md devices exist (bnc#903051)/bin/sh/bin/sh/bin/sh/bin/shsheep04 1677518696  !"#$%&'()*+,-./012344.1-150300.24.24.24.1-150300.24.24.2 mdadmmdmonmdadmmdadm_env.shsystem-shutdownmdadm.shutdownmdadm-grow-continue@.servicemdadm-last-resort@.servicemdadm-last-resort@.timermdcheck_continue.servicemdcheck_continue.timermdcheck_start.servicemdcheck_start.timermdmon@.servicemdmonitor-oneshot.servicemdmonitor-oneshot.timermdmonitor.service01-md-raid-creating.rules63-md-raid-arrays.rules64-md-raid-assembly.rules69-md-clustered-confirm-device.rulesrcmdmonitormdadmChangeLogREADME.initramfsSoftware-RAID.HOWTO-1.htmlSoftware-RAID.HOWTO-10.htmlSoftware-RAID.HOWTO-11.htmlSoftware-RAID.HOWTO-12.htmlSoftware-RAID.HOWTO-13.htmlSoftware-RAID.HOWTO-2.htmlSoftware-RAID.HOWTO-3.htmlSoftware-RAID.HOWTO-4.htmlSoftware-RAID.HOWTO-5.htmlSoftware-RAID.HOWTO-6.htmlSoftware-RAID.HOWTO-7.htmlSoftware-RAID.HOWTO-8.htmlSoftware-RAID.HOWTO-9.htmlSoftware-RAID.HOWTO.htmlSoftware-RAID.HOWTO.txtTODOmdadm.conf-examplemkinitramfssysconfig.mdadmmdadmCOPYINGmd.4.gzmdadm.conf.5.gzmdadm.8.gzmdmon.8.gzmdadmmdcheck/sbin//usr/lib//usr/lib/mdadm//usr/lib/systemd//usr/lib/systemd/system-shutdown//usr/lib/systemd/system//usr/lib/udev/rules.d//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/mdadm//usr/share/fillup-templates//usr/share/licenses//usr/share/licenses/mdadm//usr/share/man/man4//usr/share/man/man5//usr/share/man/man8//usr/share//usr/share/mdadm/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:28032/SUSE_SLE-15-SP3_Update/177a7ce9aad6525f7f85a4dc7ff75fb2-mdadm.SUSE_SLE-15-SP3_Updatedrpmxz5x86_64-suse-linux ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=ef7d69b8e945349eb04361c7c79108fdfa00d516, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=9254549895976c8bd3af52cbc609d0479926ddf6, for GNU/Linux 3.2.0, strippeddirectoryPOSIX shell script, ASCII text executableASCII textHTML document, ASCII textASCII text, with escape sequences, with overstrikingtroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)Bourne-Again shell script, ASCII text executableRRR RRRRRRRRRRR RRRR RRRRRRRRRRR RRR4+uk}Y4/bin/shsmtp_daemonutf-8bfb16ee2d57332d0d11aa8cf207ee71e80635eebd04a18082c19c96911fdb12f?`7zXZ !t/Փ]"k%nŪ)/]|g[k<Vdi0@ ]j]n@JI˼U_][V !a !&p{,\8 XtK*'PM$D롹AFwi^zSLk`yGE6l'"raUC^FB M7E&Ao_i7]ff͖!Ƣ_b[lZ.З[q 8Ue3ᚚ܅ZcD%eRRhܒڸY5Is9@[ *IC TM>UMؕq88m٠cݟb~]@ %m?ܔN4^B{<Ai ^͛[ <?V.b0,̘Dw CඏO :_zwԈ{.틢\a_Q%*e  *@łx殿!,+|3<_5RNjuePg8UaJT G#UŨ=9aOJ"[ x#t?Zx] g61/L^`xaA S\ |ڥS&T 8 P[V2T>$i T~fz{v,gJ(a< QAE?쳳:e ޡQ/#ĩNsc qjf'qe+H!YXI `Oej, ))}?e=һi_,A -&dTBJ[.z"UEŖ@y^]Q| 6r\Bft2$vRSy9Sϙ;.Aq3cmx~5e(3B[tL,eh6&W|pIۭtKo! 2gZk-u!  jy;Ha5(mP VKid펜Rgf v!g^1Y.ff*g[БpMh) ُ!CVF%#}ce4s#~uꟇM}pbx|uF~q[F`D-B@1})}f)`!Hh*E1YVWU:*CZ^;1[e 12ø!̨HY8jJSLH1cn|/[[H%"85F;G`^H'K@0 >x2>Ц4:*% d$vs/ܞ9kUpĊ*YKLɚ6&T#7jvlzJ@13eհ1/\W/A"ì%i-Z1cё4on06Xk ؗxȅ#@eT=4J s+,LPjȅ00T3T^\,[M,fJsض$Ћư'9A:30 tAbɟ >/Jo2`Q9Nyo}}:2Z+KR$궼 XfP1HK}v-ᄡvhC@huԿˤjvzlszH{\(VEU$`7s7%`6i;S@C] @3F/}>YKRZ1T{JY(B0( ȐRVC+@'ReFLu'|)X3 q?ON1FS_?,ur:+E @_n'M#%4G7*vlYVSi:G&Sox oqmQk|~q+w*܈QZsHoDF,%C*КMX ЙGar_s8J%䏱&-[xY#:m*|`HfXF%cy)-Hʈ;/,~Ggħ%L_wϕ$b+eZў&nF-p2qU21*8H_~@2$9&xgNbeV9=9 K@X H6*9n$|UO})0,x#5] Pw0mx(j.1wAil{ބ&* je Uen۾9Cz n$*G reK YKSW+7ABgܗ}xkRi$NJp T7T*9Uǎjxֿlv6u.$V3b;4p~.!<#,72nYo*Yl3,+i\"\C!VK١1ˎD? C5n%B_/jf/TůY [6"ۊ-Qq%ę#~֍AL86*--}<7HJt^M(祖nu*nX֠ jb"Kޕ37@[M)t3>CIxR<:,ArqݣڎdunG.︝#Iq#|U>W\m*ȅ]P{·9)bKx.$"JIUMj-7KIϣ )ٟϡkq?̮ŞmI2ʧ̈GXV :\lk_E1z~-M'=Tgoև1FM @v@D/o죑@#u_§c|ο\fI5<6 3'1uv_CLNA_fs$ MWDF5; h`Խ=qf&k U {X|àydIʱJj12JNNl=>tdnWm" tJF'yN?h .(;eBEn C\ntMImSl7oG_%=NEǭOob˷ ~~lX#1]{^iA"}N:FھdyPK`-̓3R(#IޣFUʞG^3B#Ma:ߨ{#z%HF8;8]sQgDvPMRޭic*Kmf(UaHPQGBGO611:weGWc q9Ih%PkaFGUe^vͿg2~7-1ϧ3i%fEsWb2kwK.lUMԷ6hۄb~e2U;"l[둖J5NPC -w6jN'ys5 rY@ "iEݡ9mfuji:HU18?~ڐU=YO~k_P$tQ]sRZ%i6yn =\r# h>F ˁA$ ̽xULP__=վhM_Os8ae]z@z{v폨h8qa/Jv5+)aȿDl9ډvVHO)j=!E5P7|]|i ?+\[BU~R7;#*M Y`[=HU#AkQOk~t.I7gW QߺxLj)V|AVQ 3w̨.Z`o3(6tt0e辑ovvYaϕiG@;"oAeX[A&!|A^ 8+j|^%g2@r@)T&Ζ֒.dZm 6[=Z}l')y3iV 4纔uâdjB_7 ˇVngߝٌV/h/WSǃn6Y;8[Ffkz7tfr_W LXN E&"dst{ 1pw^4gsFۗyf% M~9D)m8]lJBa!H/*%'ΒT(;;l43o"z  R\#}$Xxr6PQ\AY7]nk`ۈd^:Ed Et~Of߻( X( \/RAV.Y~T>Bq.8Y)>2!2'b LV zKlV])8Ud5jhKn}Wc9l[},VN_-NpY:y> f.]xsA(B:/=#2B3LBjZMdR7f* 7j׈ zFK'6,#AP\'7~r2SYa>0N)A//؍z)z&N>jxGYV&?]tn[,+A:|Vr!!'U!obVEODH8*H5iM&єԅaIN8j:=ڜJ>n\7:܁H>/\"e J#ڕ*Qn2\`ܴQo$WT5+?*CÁ*C8x1@bD2|-" x`5ʑ1ipFg23^]?NSBqb A6\p?N, X~ (aBw6\^Fig~|蕋|EN՟Y郎'ͬ}G#?qˈڰl>d:`y~'nqh{xN[eR=_pJE1-r w8}Yu nnT l%=$wnPQ U*g^fGA^GěVM8z;~f"{8pEt4}vsdiw4H9>S;~0iPbFs !w4=:' bp XRʞg&߇DZ[j3v <{ 8>À%4Bɢ%t}8\XڱFܼ뢁+8?A/)BvEK/ngQk1NQYW[u6^xU\ _kAm4}?gNqO,OI_h-'uA=h 'BŨ ǀ/UN@jQa'bH9֒5:V85oq12g%C`ľ| $);TD)_[:AvuG (1P 3EVjB;!(<LWCylȘkQw lGs N C]āt:};- thd`{oN;ǴΝNq:+c3 M WIK!)e/E(ru* vo{lzs]0yF%X)u@7v-M EH]¯Jn=S01H?^ P;"x^ϮQKX}^DC#s>My3|m$"]~kw !Ŷ7obnmSSnsD|Nu&˪TY8[$Aȹ(uVv % 謀6?jM@zr=\_7L}Aa)v6d R-ok1B~>V3o4v]ᤜGHu}ʶ }|HFf=K0[/jJe^q7^ejHP[jX1b0v O]P 1+Jefj:7I{/6OG]M } 1ȱi!,Q[&:TO %’ 4H=B&f !u@Tےʳp F8dy޶VVH40hb-"} i}'uNc2ʱ S\ 0b޵vF.ஜ Vk{1A ;@^څF^C $%Sgwbwn4p"X= 8\K0D6< Jd L&5=Wqs&ees +Z 6X/dceI+ mV4B%X"Lm'ZYfsSB)⁳>Y^4 w)V=jT~[mze( ʁl fUqBJ,Aysp{9;S[6JBŲom mjteFD&¡(5"]r! Ptyg^12z1ᥳ&w'.4z:6Db,Fڴf8@R>d01? RxLVEBy(x:*^ Sv#W2@Aw?X#&gZKl)_.%?:+UܡEA84VhG\_._5BX UL-,afq!Zgm6QC$Zow<՚Kk[ҙ6FFB=ZHTdwJ2cF;DJ׮ھߦnF6]2RA`$Zt|2޴1BJmY"xBFy/,s۩xv%ύE@>j*? * KR~,Vf)I#B]$ui1yLtTÍp5zHl<2KmHeY%_ g{  bz= = @稴|zp15/<1g +*U mZ~nI|$oy7l8ωv# P?1HvhSoj4< `A沯;U O^pݑLiE&ZPoM0P Y4{Z[hxo$0Բ(k3_` a$GpB2Q6tB{+jR hTJX22\S8{;mPƾghmڗ Qz}3 ֍=H?asѲ[~_<|dvFf2Dޤ_k9-/1=%Tk,8ÂP+_KN4õflVV!Wa%E`z2Hˬ,LeI"O'rÚ$紛ڢ%^#&D+5)egs%."%#dY^+)l2 ۊv d\B-r=xTu ˠӛv1㴘,wblAi-rΟ8q'8u]Kf8sdan?D|:b4s>3V~R-O%jv׬3+b]8eRjƵhHo|oԻ5TB0"@W r8 +Ƹ 4*7a.:NG|D0kIԝ%Ͱ &LtD:Gnmy}#&?8xC 2"=.lO& r04żsU " 'j=qW"X\C>UeIiiW+QqNV14\€rr,d/]pU=fô/a}Qu[v˜CtKj߁u,Of @;5+DA2ft.^Mq%{R26t׸& mF0J0~̟80"[6uo 6Aޙ٠4 >N~ CZfIRszQP勧ۺU}TD?fЬJSuS>jn/cEQO's~VmYO`M{9aҜ ](Zfkj7 D (f /g&B>)9K&~MK6]pЀG[P9}*E]fo2Sy_$%0_{՗皚&`ķ0 Җ{†%XUu&Rfyt͇$uZz,ÜBZ 5L%sɗ0ˇ{!mR΃^y}݈]ASDZT,j%)+Tr9y}=K/t$]f<6RbaAYq༘J>G[$st @)U~;^nwM);-T|7h?C `h*7_Mw=pI<=u}(cRtPKbF-}_ٺcFh:Eh/@ .!LfAK(4>юT/PZ >HG,քQÊ-spW3f힝\6;@<|x;FyOSM"h.4y' t,Fٙ "E2p!NYnZ?2iLWЕVcWzc>ݏuWv9H7A]Z_E[% /-m c֢’];4hђ5]7 :Z38a0 +u rw557y0%(E&g"#L3jJ[{2#aJUdi o^sLBYm|/QfqsBQk7'xitꢈڽ(3;˗Z H+!gl9i7ǘ*_-ʞᄶ:a |9t O]clc7Cc .~ֱVNa V;'&4)A$u:X4X 3_FԢuTJ?Yi#,@sjVzv%}! , kqܻrFVs@X!2kP#}C FmZt34Av9.ߺMza:Ϸ؃ޭCJF|{;kQA*g:uARʙk^P:2Xpš'z3|!qqohp"mn6>Ca|xs3Z0\oFx. 2lU姌\ĉ>L^iuǞ(V2?֠!(y0xoƔΊM7?&u:eh rNDF& }y;zk* 5#ҥ@fJYRxX[@.,;8{!mK&K#]n 'So|z 4Ø#XF˾ȑij>:!71Eʇ}\59\{C7؏<5U׈m*,.'ezYͬ1 5kEYSÐ/7PNI5V"ȶW:'퉭Ef~Գ_c2{zI7*dϝ2D!9\@ޚlsJrxqnNKƐ$O} M`~lޟhTsA"[5D3.M*&C8f}TW *4F}7v@昧ZHZИ.P>lyQRKfZT̔@`)CƊ%$++0u\DXVߒs)-.3sfLr" 6Xͼ>1-Yجh~2 %RH ':CM#04Fu;FR$Pܑ̋|7a-=`jdj>fX<w{ŋl/c+GMmE/y +TIS#ӕLY3^42Z;k!pk|JQ4Vq6|>PG{mŭ>ߤ4JZb FX~Q`_ Es8(E|fR|Q+j~&(x4bmͣ{Vp[ㆦ K44s/f9#ZK=Rs-'!.h^N2m"੘t$/bH0p{KJJ2zc5])Tc*`80Y -DPf\fϙj:A7Y{*;bZQC^s# RzB7p@%onvǙ;u)iYLj^L1CN>xi}ހŠ";&=8cbxM$WQmbb]/pC& :*;cݲbJgXmd :ԵZrѩ >MJiP6x87UCi9«Yuxjྺ0Иs HMxg:kO^)Cޕ>Fճ7~`H3wM/}I޶e +fQ:Ǟ_%!=򎼐n @ Jsx5W{Uze%<@}QE'8quolbjY 9$RaN 79k 2F{ =gttQ w]Y94HRQV `Յ)MqH}g?anHz& OP7%1/H|CI,U 5F~3PM WrVGq sJ)Mmڒ7HK9e%b) >j8භM/=B<4K'%GYU&v 5whNF~)i )cW J5 2Xrsg܏Êeǰ=bCw|X}93o[ ~P9oܙGY|$9ȃSxVx_ZIlW .=C `T/}gSM873s=2W Mί&DDAZ]OȳiKAP%3LWlVJ1oYWދ S_klli9C!ER䇊z-~72q^4? J"emvQ8{!(UrQk5rY<<@il~Dulmg-k2xj8ؘ` ȲipAWe/)rFOz(%N_BfW9rpܰ0|\}eDy)صPۑ!\WZ͐ 78.˧,@iIlA p:e CH{E8/$=L3@@2ǑDAFCVJ%v ^C~GdQ*zHa_ *[v›0ND:4RXEy쒮f}skgwD Ќ*_‡F N OSC$IX#eo#Ҝذݿlxv9 ܎'70ƠΛ5h=nLS5#\N%~v ׆s@܄_WUzlb2q@Mf 1a7Ibp2s׼~\:o$lǡeLeJvI$:)k8'`5c_Ȃuחo;Ny!bCQc9f0diGߓs*1_#"`; rliN򣭈.,ORY!+i s4iY f,Vl31d}6NBG*ߓ jԪLMtf3PRB nқ"P=ृó%jRܙAy2HlR2)r(zUVL[ufهEPb:aD,& H=DY?MlkUjH~lSÜ>]{m0Xkh@#gD?i2(@~ rs>  Xu*CAJ"nF;3N9%hG"ԣ^={::-A.jPi$+R2fb'nkh ڳCj<2& SăDIzƂ(SS}#ma?:b!8tMr #AÓ01V#4ߙ'2 dzVe[,}WsTxQ \,vl6a QC^YDhGNuו^;k0. ;ݽ –+=/l"GZq7Syf0*WqhNdX bJ0 }t׿{kɿjYg琬aq5g!t2hr`tt F" J@\.ѭxM<Xg N.N,2a>ʞ@8)Q'[Qz3yO2p^d9ʏA[,IT5>˘ʂ-^EbF8!{C7HEҜWh.[i;޷W]z_Xpf\LoVNӘ<ѮxɦCܬd:&$nGQc[a-%P2 aԙٻ<3P*@R諐ŧ+NkRoWkqSԮd-x,YZIX_Ѭa1!ŖwNf64eWHB e~d]:o9kClBqg!rM]ݵ{<ć8@Nl%bUcɟyxEpJi_.7 9?ʨҮ1,qؽQ=dd$lk)p `䊬Gr\(JTN‘)Gcۢŝ9/nXh YiLeŌ BP˾6݄p$ !p0а)uTA.>w$ڱH&ʑ0&[Z yQ\#0ңs"r¢'t5rP{lI!v2 v%;c^Qi?УdNU:V wtNa?Rf=\"ͺvrsh:sΖ$ڂ4%c{7p~ėW&v5Ko?oU{ ;W8S)H3|!,Ql,iځK=h]G]c{!GC(@#Ê5[p߇8Wn^b g0Q>^}l{_Rq!/P,6i#u4'əQ!3gB_Yێz0I9p廊 1 :wϧ&_Q[05Z< wj--ǚ//oe w;aj7YM3$ں?"U/=6ok].V̂{Zr> ;(Y4i'kDte_n:aW)z[ĵVv'mM);P"as3m=a> l Y.1~zB"26N 6˔qcz=d5s F(~.'ExNPHɄ62;7s6_u?+6{D5JP6$Eud fuU]#vN$AMa+U "Sfay?.8oH*RX1}Sa:)!|e9ip (o辙u5Set|2 O\ ."?ɦ򕜢qxhQIb TaJ悉zwlq<߸;=ЛYAt Ѱ(]0}TcJmI~k:I|w\h^,dׅC\bb*Y}JA0ղǢWd"E?-E,( ߣzM]IT ?oW?bkun?3KDŽ14 xS$]ؗ&!)~ĿjP~ޯ#bܽ杠P<wPBtM7+sw5YזyZmD+0#9$ dž0l1t@1S+%%@kyF'htKqRF`Q5.IC:`Ofn=ràEB޳> 'xF[g0ca'%7oS5-98eTܹ93&=)j_Mɗ: D`Mܽ[k/vϧzNm g w㙍ƅ#ٜQ,t-AOAjsc~jAIag`.gەI2CuzZx*jHwpBb׾u@~ܓM[|Sn.@Edμ@H;抩@$@B)qPW-M_3 tEgxY,mS GgZ&=-Xߝmth8m:D#e49pW%iKg4_܁wsEErs]_SO&@,|NXlv1Om7B5==U׿ɨ`7hm04婐PnCDGyXVQEڐC"9OӋPbܙiVDH\&eո"q4?0k23(vI_-/Qy9,7um}DK`"n]ѵUKz+ (.qZ@ZWFg^ ;ƒSU[yav<1Ҹ4u' &zh 6vwUcRxg]ל I /;XKp" Dl8Ic5[}[ Èa`t2^*"sM&t" b[pR|6[SeDE`֨|1"Vo1Yx {0G Z%f & AwvX #T{(,?\\V<:ݐmyLDD41 >+)zC]}(lsb/_9tfR#Xw#ٗ;ѐ1~.|> |L?98%)ՒQN /lܧ +`sym1bT6'F7QvE`~Dgb'"Oau@ey<^ن,z69Z+ǚY@X? EHSo,AM@yBg+HfLb%!jTC1 2jB$eE ~ө{cHj6(CkM(GSۛϚH~BxYBGk ^5~۫]X _FtQP%ji)IL͢y B1*C0)$Jڈ4Kz8.i0_5+9*p?BD=_kv%q3-Μ i-ҝai)[ȌP £PC=ӴekOȗ`>3ȈFg}Q`hnRd+ɷ}͘h#>a ' Ӂ X ͼ^L+rG$"]iݓHhp!ujoH j3d1b0 :6t,FGBsk8uc.ļD˧uVfR&"oXέFGA#~\t=U ߰\]I DQ{aV'p9&mL%o+l3#,=97>a| AA 1AY+gcreh5դgzf'|p~򝹒T%ѹBc 5y #,+Am?(+y#1sv:ew)D1IOwG8nخ ^R hVsӔߵbmP*^gu+M~p*!ZU;O2(r_5̾1\Apc hgMlo]=/9鿱5SHxV!f3[._k,´SCwuIF LO#pw0I?A55 ݮHy_j_T%v^Mmdx?A^GKƿB[9)zCc˓&,j'NB~6{Wf/ᐬ[:(g[y|tA(ioP \})dA,VC~;i81s%TpJY0à{׻ɥfo'J9 :r:U},`TSfOA>qy8nF 鄉g:X^unB/^Xp\(>مoP( @odw Shָ e q{ӺmK> mTğtˉ&Hь7[2_.??DŽx4}볍1Ch̬h9H|#,ɇwmnF0B; !i|(R5 J;o9^Y2& tz|^S0(@P@2D>*gsIҠ6gyp>@`>-v{ִUS~#_DʬYĕs`an]ƨBG:wsc[l`9&|9us2`ŏ(~#N_;AOlϛى`FcT5Zx̰*>Rl1,nt9Xx kv'n [MYbu/-Jx\ d Pl<>Rr7?6Thi+9_qy/L$`ts:cNr0%;t0uM5mf}şg7? QD8!m1l"dȫemv((O*"D$}Խfڹ<>)ْ|(Ztfc^Gvsf ք9 :(k=IP7@R󥗮.t"U Eֿ+SJS?a9TH;[ضރ- ,$pvWG8cy-!ێ!]\',U?_*QDE5j!j.chLb뽂68J$ǺSf-E \C}=@ܞ=ĥ((I_Z{>WMrQԲ W<NJ3*gKֲet곫jV.XH$:F?G@*AvE<R[#O9xk5 O@"`%H`uDR4,T9$xX|3ZRB4;?86|;7c%i_N]nn% IZKM*SV"?~Kc #5qg?*&`K WO«O<!*J>4B5%рXXQ !+J[Gg"Ciͼ"RnA'VuLq9@sgȂXz:ye'_irMH?8'Ͳ(x4nkȖY/$:*&ssCqa7s**`k| b'PKQ7,] Eb..m\ݰ~HMN_ !mOnkG`O3\jpޫ83 +]/ȚX߸:X_*6weʸM aA۱qDt⡐Xb+^P ςrDȐCz IDIs LKnUD8'&&W֭3 pO=IcF)3>B'*W^9{N.LpWG본r.\1V YI㣻 ˪OǴ!<<3! 1)3,+5<,xgUj߰#N:n{M.lގl\o,}g}5-5% ʲ#\[ghgej廷 ,1v wYpb[W"LbR0$ATUOՄ޽t ͖6LQ9D]H:4*J՝ 6,~F\{9ĭK Jez߅ʻy\\4L>K8-Hzt~ryZHT~vutk8Seǵh+~qe&5zҕ^¨y!3?e#}(<}YK# Uux[:P[;ވżEH| | )|fkKj ~s. EaǟLN]e26E_(HT/^R7q MR8]M,O^VH NC~E#TdP7^~@%G͐iV6d{aHdܱ<\MYUN7O৭U'+`/ Iu!tXSA$#B +O0M$?d2ǖ{Ӻvn]ng:R{dQϛֵ?{zCYKvs造 zM17>/s=E:&$Mmp_%ҒՇK:*qk0ƃ=a&.z6 jۨ4_k8Ɍj&;3̰骑 6^QaîGK!!'+@eIä5C}b aZC5J9R5tqJqxrAbs6{V2Ʊ#j,(wo`"t^ d7*J &4Ak0F.hk³"G:%. 7?=\> Imq\U.jRS)VD@/sR[\{.]"vPCd4G=d ZyFVH^T+{_ըk9])4I,̊M h<1rZ竒$|Kü:4&C>lo76T/OmM!j!lj\=G"^2_ې%+=s)K&6˺? 5(Fimy@F|OήxH p e4GRtyjD4#ceT'Mxr6":ڠu*4[<ܨP]}O؆XO2F Z_mIeI`e[F?`FcVEOqVcʪ}=>Ԅ} ҵL\cEO.&l-ag&tV(Z< i]E'XPw0 :<smJ2` UXť ykX AbM^ v1% n{,_ ҝ6KB7ޟɇgtF:D=xMF߈OӘu>v$vh ?;/rrnceJRO) e=X?O 8U!uyL`mZ.m|dPѢWϧ9{.pgΑ1o 2 MxN,؛衤O)UW 4^ZfGY cf)d (ˋ)eH3o¶ȴz\LwQĢZr%-$ MyvZCAWO]˜sԷ g_M%/OB>HKq3K~0:iX3TrF:$^c19:5u4Mdwы3uE: yb̴o njYM@KvhzC_f9j }Fpl،wt!{ } w8mqZi∗Lс^lLY9?/:W(r.\̗iwA9EXTe6:G~nm!ǡT 8,b=nXϔKS3w5re jl O]Np̿:"=22ռ_,5GXPߗ8;B2Ń%YY!l=ό(rxDl(#UrmB~hlwJVQ_KJlrf ! '?[<"Tx<gpY: ]%U yqf Lzr2tmyݷ9X}Pcnʩ% ':L=*Lu0TvH{ h15*8JUaw?ƙb@Vta< cV7~8MBKҕzܨqb;~'k1$yܒbQUC?fܤA"hxKx e-ius\z1X4B+輨|)DEƄ\sr,e}CcDc;:BZl*/tǒN`f>&Ze wO%*$BXGs7R5ۑ<ƼO"(/~gK\oSX/C Lc3Fy>ov^qsywmG{)^ kԺzihzzDJi8yy-u0I-%aD/hJRkC`lE Kkd#DٻfT7Q&J8;N٧rB=9Yv֮1QY+ip*] qT`8x% p^FV'[3fߣV#D(F+ KOcu/\CKuwL<_S!|P#c CqO#uVѩϜJ7_>"C\ 5A %Nɟ9,y׿w9{YϞ?| /"mnDW- ua.)[ ;F,cd)q!^_4溛?GF$"gs=@&1oi__{ +Z &;6 n􌶶bi4 )DDLz2rQ81g~q#Mpc-k(>` aG4ՒE5Ho^А;>`,a$c'TFE6>9M/֮7=N+r5ILȣ4V6A~ÛYYEO %MU&܎Ͱ3)1i/%m!f& /tiQ+ Oc0HKiє}$H=9  *Qb*ѳ%ȡTX'z{)ފݑab mDF;$ܸʂ1YN)Y_,+ug57yL˚ٸ;X1rZS9Ѿ4_:bZ2:]WJzL2u+Fu_°WAu!JьF&&rw&YGPkh@}Rㄬ=U<'Cne{XgWzV\X}zY;iDW[8 L}:ą.6aRD #_!mٞqL>Q,*\[`ta)4_ ~?𭆤&!**8FEkW&Іfz=3n{;cmy`2^\O)K!Jb{I9"lX=5c|a@(voV>tp` "Ec+=Ԍ#qs'{Ut ?4RB\Gp\'xZO;%Au{ocM|.1#倒C5jͫ_:7xs7?o jgRcL F7֫cKko 7uzLWi:i@JI?'e]1Dƻ!ȫІRVZl# Cᇹ4NUɏ`,}2mc>M>xȆ.g2Se:JM27i]fIOSM ZgeSON ^lc xP6meL(=MbǞG1z\#_@ёp:L#z2> 66vy2Z;g=<4w 4$`elC"mU%>vKX^Z\1j4w~NW\M9LLL aE%פ^RO{2*Úb4j(#S 5!'{™YJ^C:!+OL}SB5 _],rś6 WJD++2F5CH!~s}w<9q;zmlLkE*{U @ @rv6ްޠU|@\"~o oF cmGAũtHVG' M22T)깱{?/|փ&ky8㕴f"P,ʳ}QŮz)Hh̘CR, +Y[(25`<^PV1[4ևTza7:NX V[{{ ayE ٦VcMv ;2[R zDzT9[mYUGhUlINt㿰$Y2}-Hȣ<_vDOL0M?r\lT!BZH#4Y=0U\o_ForO#v+@=8+5bon_2B n<{I$҄v/WF}eB*eߢ/7W6Z<:Z}9̊pmNC+MɡXծ$Y1;eeMXO_";ϻ֮['gl>KpT+VX2 xr ͝0ȴ<͟}EE X@y +Y- ~oGwd Z 24ϷgD:VEb:_9=QЙYM /pʩmcUVmG0\bm n2mW~-c@ XA~z;+`M8s3;,hNSwGlu ^X5Ρ{?@7,%Vy)j(@capm@9%SIrPpP 3]mZĈ,k5l?gdYo%(0D µd#zU.y qh,0.xJQbx%N*+˶. Q0&3&檫^ F$]zfѮY<p}a P0*룞#밇$#K K5Z Z2L!ob-(wqJ\(#%lЦ6Ɲ0M^K>::h[!X!p-l빐2 9wW.@Őr<64'ՌqT#@؄P$,cwcoKi(^,HD ڢk'k4~ ă˳oh 7X$`^戽$#bl곢:."b֙HkgL!}2=6Rn9ݗ`~ռhh$HGB`,-bLӥ&O2ӏNҗ"C]Y- 3ͻ,3NaMrܐ%,^ܜA fYn-4q \:Ixm!NMG|~1vzT4zV3qT K5n$3v=jBFpFYy埗fB) ;}dNs֣e^iZvNp?R Ibi%K>5aMuKl`[qD OˍQPݕ%݁KcEUHp\۱HLJI/tjH.@VҠߓðV1N|*M9Pr1}o3ü /,[Y2Z42=$6ʲ]A*y6Ts#~^LYN-K$?v`rLi=Gu&z<'p\~۟US /enDvA.^ځ%)#bɾ܏4e ЏPAOIoH"˞ ȝ)3.L!Acf;RO.ZxaV+{ 'r u x(ݸ<%xZW1+4{8Yuΰcb%PP2 .1e~jP콸C?\ C$ҁw7Y@WwIM*44OS KHO |tfK^̲z# !ZR% `/7\5[7Z *.Exwڏ O~^ A@i`D{]u 31aɂ4z]gm6nաҒܾ^ ]6Cr.pn $ ^"=7f{X4Q^P',Cp06JpJ^eD]lem\y%3^T~t-EHMx[hDǺKd#jď~ؠ1rŭQyσ;)}0_b_Ay-"(\*R2L/X}z;Us#AaOv!҆Mt өҿo,1M \r% U U6[f¹FcaM""/,2On`|#|C[:q'3dAڈGN(As_#H[UR^X$<Űv 4+[wX \i<& |@%{ԟ"'{|”_yp$XX3Z*bl;!|bN>33ir˵S2S(c/5 pUv*֚}`EepN!'oAu [0rWvEX;`+l>~@^.%Z`<(uvHa%yU{V姸9L/-jk׸tOBd;| Qӟ(WR PvhBʧlqx%28}+FW>IJG2P\LZf0U[u߯uv\uc5yJ0cgW/jRz)lCC5_f%wT( 5ljɹoi\H>LXP ٘XoY9DRQUĸpcn=h .\@$UѰ³z|s@5!aMcϰ;1v :Y?CnRFΧ({ xR!2Wt׿s>4lK 󧹚+IVj9yD o#\T7w1b ;1V?鈎(VЗ+|c*&A\{,z-+?~aQ6t@焿~25]1+#°%%探IX̾`nXB9Im6RLM -,Jm E aX7L|hrјQ0ىL jE_V\{/&bLxs:4 R^X,bz5d%%4A1)1l3gvJDA`ۣ%(uRDBY+KrwBx0őuD&>ReUK/1]ljT@# 既]IM|F[)!ɢ.ϭ_;8jn~Õv0NeFrm*jdPM_5!jR`78lMtisvCL/[I0kY%[m,ׅoc"w[ߝIٺ"3پhAr"[}w($ɽe[=tރ TٰX!q[u3>)<6upQpE1G[LN*Ϙ O%~CSǚzY [ 9#H4h_?"gڶ \Σ)/pة2VJ!ɬAp ÄP >b_E{,MFIPDHga&6>f,=(Pa8Qd>.^9cjbfC8pxNw0ۡ2MLnҮB|%:Lxh7եT?ԓ>PM5E6{o=Hr q1 //&$ t|摚-d{}zf:]8Кa u Iєpm[Q|@"'Za5O咵Lͱ%|o~7\R} 'K.ȵl6o>il.kߊܨѰlr$Kjmx=1ePvʤlIlg)ՏeUӤ[lIb8Nf4>!3->3\3P*:S-1 'qtKʎ ~Z.vSGMA<;&`ȷ7P堷W`> *v1]yͩ$+ r'=7`gV|v;NH#Π Xg/OoN@͋m/tmtɾ] xiy,?R&'g߭jYVOJnӳZōf@#Ǩ|HpZ ԭsm%f&am;`3/z8'֪d^JȗNZ$ |>^jr҇q}z%$Bhg. Bp8@O:w3GΙV;/6w^h"#͈w k^&fe R񟘆;z;wJnW@W ~I1xSv~3it:rZg@h& dLQHw9 -֛;2^ v6?T;_q*|;*g(UCѮKk1Y؞Z[;.bws4qXm~!Vsl_{dq1{]3AR[w?zČD x-j ~;|0[cݒ$=, "`hܲLmF\Y:{Un\F"(RƆ#8F%FF3#=r'|nwx(2YMn Mc/O R$*~$Z1c^nבmW.6/4a`B:+FquWzGpIay`Z/:`ۧ$Z?;MWnriy0_)S/oG 4=NǰqS dLTU`xv un4`]W᡺3Ba{ORNugZV 7KӰY 4~O^2m {EeJQ}atjIhqmfx@rNsEPaT:hoNM-%.7x\ckd6H$A팢pQPqԔV} b#=9Ưk}5_uـrfjcDv`F{Zn$( 3Vw=4re~-ǫ0<ꇝk { DH+*63-_Ϯ6GQZUin~ ʴc\幏7+@|%|ļ 0ջE2BM~Jաk%Z7c 3ϘSMFhǡ~)ǔZSFFӑlk7hHi]I, bCJg.N6ɷ[,0RSݹyqa-;W0+՝׏{:!Ҫ$(WNwrbA{ي'zϙ#F'_;"(Ic;tk GE)>5&?'y| MU~?牻f$tmmjx(Bw3oY?$6]ofc }=rxO?GT>2'v^a['':cHE]JmJ-%X| A姿Yکf~[wi M ϳJ#"ŕweK i--O7J7 ]& Π;%C95n,vokt;=y'1^<B&12.CY2ImQĚ@8\Veb^!ɧW"B$^v:`}_k!1ܳu#"0tky|kWN >L98giP~ڞm"w^ͩ8`SҿTm2, !8ӵyrcܶM eHI ߼t ;KpGqY%i?Howi;gv%p\tɟO]zW`Tql9C T$ia>/ǭ|B!Y˻W++v7_[wND C45NDW{[X"*W#F1!+LR`f*d ٳScxE[EC P/g7DIW3䥙8頬0i<5^ߔW\U)j!0 ^R![{jH(kl& =I_>$F HJAjBK&ہe$'|.Ӗ}t+=T308HR0n#@ye G*6仑R5T'L{Y#[ 7;eTĻ!xwR@K_.,'t9̑x  ^zD'cS^^L縱εg4 uMPaKec,5iA(Ilh3HxQQ? ț4]Wz܋k(.tDZfL{NxXBCnVyuqE7YR0[vrDEyyM/3^Gɥ9DEn6f'kk!'IGR V^XVwT}pY"<4՚$fNᖡrܫ Xp0R{HHhni~'1K45xp㺿j;J `?: a׷ XT#:x[POCU\hv㭎˼KE @աb;fqSʢɞ[a4aDJ%H0&~sIìߟ@w7,>rpjTb{'R+z} 6{p8tJ \Cw ec--M)IVt FQy HGg> oֻ(fDlt~ɽ`l¨,ڭoz.hGb:ZʼW=J하@B[a&C*%bݝ7Hf::?2<5/DT<_>~(,g %Sy2*]Ŀ9OV (LlRbwBrż]za=QS2`8*D*OzTk1a:ZNv]퐽ycVeK^dPUL)-}Тӫ9oT~,xTsdUHyrj6w:q42ǰ!o.arh24~r{siaT~*}`KZ]%grSumg4qwhI{ \tp׀s (%Tx/wr(IW[ƘI1|uσUa$χܣ3*@y#tiEDi=<ϙ,=j5u 9ӥB0y7E[^+0Zb_]{pn#AlyF!;&2g:H!*H {jE(h<4<l)# b+whmgK2n#CpmVvo >OhR -d>D(#HHJSn4QkJN]b|ޤr~k6*2An 1%Ċўo]Xͳ p,3\<|⚑pݲram57? [V|+ƁbHqE6C͇& BJ_R;\O)TF>Αup?#:_\S#bUnEЧp+9 {d}9Qup #A:~wsG1m>2S`D΁PR {Q˖MM@KvmHҎ*Ùat*1-N3MmzV)>ڤ3<U== aS핷19-'q%aqHYk3Bܙ4ea{QQӬQ+WFOjIFDT餪J;oTjc;@WJ(?e4@j*`~5-gޙ9(O**>VXr<!Ωrfq ښ\3+w'*_ʀb`۵5]MgcL>QY)O 8s&@ߩ6uDĞ\ۄ?0˸0y8zȑBj$o7+w8ozU.er3*Ʃ#g>qiXb&>Em֑q{@Xt]^]vz|ď0x~!LP-]X?0P."!NYjC9*t[ ;?N/Ao#ɣ;v?7~rX-۸岩:+/6T^7*e%|ުfNؕ> K+I//#/ 8""wZ:+O/_Q=Qj0[…Q\]Yм~ӂ-dG\Cքc=-{DTʧsΧ^+[11jIﷇ/:#o3) 1ȋZDU.B8hD.AQlkk2hN &l-(r1_CڇPqжqhhj =n&-zʕdA{aW@^6UHXE[,qqE +Z?+ 0L%@;?NI4&5&LI5[qԳ4]NN$'K"LbԱ'lEFS$ j廁YvY7u$}8`уxYahˆ7|6yV3j7*`Nk|3^#&H18SYMO!ؠ&q7Q[o:nsB)E@Tв-SHLu͹Dbeu%R*nG\ZTVKi1u-|"yA 0DHT|+5>n?s)֫kFZFJ+y w.21ǖ,DL-$Qs3&*BI{X!' XHwԭ|YX5Qɺ?NTr *C02G86lׄ;iP'^|=Ԑ[Pqpvu?ʩ{nC`jɪhBr2w˞5`Cޟ Hm@k,7#tX3ڍ3"lrKt`9[P|qy3`ٍn7)1?bY3F_PO[~Չ=puft]D+4o`rJE"Vؑ3}*UZ^68L>+Iȍi +78(uSU?B[l2F4z)MAFKkŽ1xA[2RLg7}2Ddr;}4,MLwj{x5؄y#t@4X)JoS=I؍ߚUł4q9h& tg;&uK9f/qlU֤ڡtAH[~T҅v7pIDkGȋd '߂Ԃvpϒ~^*_ c,z&V̈́&>lQS׎vL8lγw&zo\# 贙a)A#Ē)Ye" 濅a)㾖Flw?O#}Ls4VaaM&|+t13ND*+9<޻:U &lݠfz."/~uxb'0)3H{SQP7yo\^b)f\#FYJɄ(ĜkZ!f!Ry"'1v{% #{mTW/|vԼ!J>RwaA*z4l7ǐf^T%ml1`FT 2-)]q(zŊMF+oYM gI@YYb/EN8h T՟t%ê)b~(&fg%^" E QȂ8_lDp܎S܆ɑB^oڛzҮxMjr~Ieȵ"3 =|Nxš=!5K^UyGJB`r­|t2'obِm`K*۩' ,j*1kxpb^]!E}Y Z%B r#m0ZEV mF'P+yPe`N!KHF$$(m4\WԪq /Ǎ@='$,s(qe*"zHMQ$GK.Ǯ6r& L "mܞsĩ8z" 8$D&@&|<ݢwGYAԼ?#6bfJ .i %l+bPSvZz1s= b?XYCY5}#Ԋ$z)0ud~<&-M1b/z׶b::ailZ}bγ"|D o'"UՎ{l7Ǡ)d4J*o떪PQ us谧SW?77 -S@8o<+J ʹ Y7T'ȈI ǂckU8&/NFZ4#U[ >!:z_8>Ȋ{KC rw F@&8πuhōn𿶺WXÊuGm|:0'+TȚαͥy|6!.;R~/)cmASA~},t*w ǰo;@`uׅ٪S!wԡS6:JtAN2uUR S:{tu'hŅHL[4f=|"X8Kx;F(Bc剀* 1%عbvW2K gS!h܇7f]c&@ @߽ߢSHJYEPP&$ʸa6l!t;CGO'+]e398|lSvZzt{)°hkp#WWbjQчU pCD )yW~FPz}mf{$>Qpe0p&x %Š?'׋*\FH5'e\Q(IHJ)˞~ȪyU즠CbZ$d@lšOoXiZhlޗz}::#cm8vAG<{]-ǻy*]zpƎ#euU̹cTh.F?YU\r_ v$ eR%f [* 2yw2#(\k%YFRғi{ . Z`h{C;@8'pS+n+û,Kzཛ }=5vNO-Y>xj̫Џ# K]m.Y.H4P5A?I9YĊЀi@TԎ}KT *|q)Hd[AfHQNvBCt}[y* M@fM⋆PkGΓVܱXfkdqCN|)7+r?}:¤RFd Ix/9-gQ+払ؙ? -5ik "`pzkڛ b!Fr+,'9:$oP>K1pi KAERT%UBcPg@ ^phcz}5óMҪ4ؕṡ鑡WS"eCC7u_%In#p0Y(ggzF]CXl 6ZTXX:K.>Z` jMIc9SNIEa`heK22vG.922X9j6!f F-;j>)uE213䟓*&fO!v;K6YӵzBƮٝS3lp am{d(kdzTk%&sH!lgs &ExMGyIWmsDю."jѫUWcS١^J2b$I`]n1+ 7\c: {N"5tF}RT Vq:0C0![lpCƑl";ӷR*{ "\ڐ!x/ZC,Bck7&|4D3[;ʯys2qz3o-H7&yvz}/#4moGT[+ύli\L`XcG~㿜g94-ź[Sf! *.1W3L(6d ]VE83jCbZnlyձMD?shAO~ |q$>N*WfV^1dȃ˹["~c^zhX4U֨!i.HI3i~ 0ś{J+8.P)H0ϭ9WqNI"uW-&]/#9Q5zNnµ=ؖTqKh䞑mgsFem͂}{$D '“@_,m(y@ hp~N>e-Me:S^~~$ns܏vgyM]p#?Zhƻ8[v8gB˱Eep8j/M.f^dYIq3ēB}a7ܪA^;JwOc P on@jX;`M-c$%8~(mpȽHŌjuTȇΝ:F+z,X4"ZA ط׈dxjP̱ttX'ݐ7[F^S- g|'/c^; s?!팔_'O컺x ä '& ]Zjȃ#Lb~weI.iKS@D-C0 tr§dy#ß,[:/'@h7|n\^n8blZ̤e5޹8CAyB\tT~X=&? RR(17ٰ| Ho0m8v%sRFX0YyĕC}6i&ҡ07uh@Mhr)TF3KbKTH8Y?@[cKlSqx;t{x'BBȭJ$1tƜQ`˱Txedveܯ,./ʒg if;Cuoq1f@H.m|?GH3=H /p)n1̙bf/e,4#Ev b'R#"ÉIx/Ȼ œZ^G $ (@2b [{%41ވLP\)KN=/߄ŽMf~S-H{d6=G=xݱ")4 [й>pw^7-E9 (@np6y~0ڴ @s!Rޖa+@u|VI ۾-*g[fR}I/#0N8E_ 1X|,2Eָ9elРƟ*f[ u֯`x:^f WΌj !u:s]);xhQ9^8wGЮup~ΥN;vt$E8LP%"2brX}in/ĉi)0[;JZ~$R[M|Θa; A;q&fb&ztˮΛpsS-1N19yQ79}'"ăEܿU'iƘpʩm¿#,RT18! q'ǎF."9r llIO`lw!ɺm2dT3ie7F&sa*5µo2CTH9$ӈB0` LnCZ<%-iylԇbveݔ4wk'KdQip]Nxz)eB N.N3D~ (t,7?8*YRm?b٢5OP{ \y _O4If!+iXp3.-m fe<^f=N^ǁ>O_[ ucwzZwFѝ4ו17KWSL wy`n: eʫvBi{vvp.͟^{7a y!hǖe iڼ][*LDi٥L͗3iZMwb,kܪ/n: $:'uSOEQ[޻ u9QAѿEOr\iaWՌ7tD-op Otr7nc?f&i,]CǕ^y c gPo)x' X`f64:2ڼ$gpaCM]"ăknA* W>`{@$kISY2Q*)T|0t-8UI)7.]yLZRaG4*z8u_5I'n5Js/1AJ#"/][߲ڝ|_z:M+rdGx$k‰bxT!'U9NM)ϬZ]u'`(%w]^bD~+8Zܨq}'r^UcX:](7!q̈́⁴P)jCIbn&9ٍu%!Z˻BqeM pX?\W%/c'ʇE~X|XPkz;?4ݶY'g"oVj.v= 1S&դSKA,' Ys/^jἇS2ѕG:n? B̳KQwN MΐCb# ӑ1 a(_oѠ{b5V~d^|aG('@q| җeƅm&w T"$En/[*j=9igX#U9u ~@GHMB]/BdpM_G%mΊ¡5Ky^5 <dzTXSmԺ|q.]hk}:`*^Si_ZgwͨmzG AIgJkbTEOq3![C5 HVsA ! 6?wyDM;_X't=Y(=GV+3~ц{G\:ס^yXSygp+f2:_vR_>PGc+b7>M0_pU{߱\6HbLZwWmpE{`?BYvA@"sn+E4ۗ)˃iv`~ ڿ LWhjNm"Q jCnM=ew" w_7AsIt{qdr:1ljPL.Vhÿm&uo܏Ba+ŮQ^LIi!lCIX8_N<(p`i(6&7TK%+k Hc೿x辻vܧ 6> k g{O}s;Dc.eOb\z"։?]=.+hglibIb2 /C{t]=_rL;%3* RCL=^Wނڛ%ٖ|\#qU{p!pw2'`?*ǪYݶ$177;J =:Hէe^t/A;o[Q1jY$9{?8@z‰vC !g:F*;ȁzm{-:_JE|0kxZόAvhOLO }ayDQ8j6&3Yez2[5>F{dpp0+#-N" +1{ UP/چHϭs~V7hv[lk&d#&B _6:Kש~`w(Q0V(U. <2kk7_) iZb4#:=aèdɌYl@6`j()K s# ΃ɕ-#Z:443P[QU`%WNYQ0>qjLFR:#ݜ?uP(5UH.aFN̓kչ/YN)mRm+|BSxscѷf Gȃ;F}śkA4͝%r}nэaB#1R> %JfT^xBy̎G+19U&Iy1?`^7d8~ hS"/QtdH itDG Զqrә6kzj*2yUQ?3-(Pz>'_L譼1l=S 3$zZ̃$4}n I7 FUaL($8]d &a jS qi#%Bun K"; p n΢U>e4$]bAf{XM)O@6vIZ'7y >Hr r oG#Z_P$شD~iDFEOU0'D-;o./fPK_o"#&BM:L&ŗ,h7m&m2|k޹~!o$ A4Ϙv`LQ{ seOT:,XDJ񤭏mmO>v /ԋJ 7O )y?Az?>^3*V2Qd̰|`{cJ,4D >h S"vr\29jWJȔcVR(T(?~|V=(>Dq6I*ckMýxdYJQ8!7 W= 3E;Puqrd$0oy/P7^UӖdt2G'SvH]zST޾)#rBhh?_d$J;Դ;qw{ ?aR1Vo{"igYx_I{. wĊcJbmηfX$f,`E[/ET'*} iNh}'P HEdzEfǫk04 YZ