mdadm-4.1-150300.24.24.2<>,chp9|X"ih1q`|O? > AWijm+'ŁCkwL"npDt%gq[|"Hg$ %/1h4o_f3v]Kp} ?z4# mRYOҳآ"ۍt:" ԩΙRSDC/c%,rX gv ЏN.ɼC0jC' {UQ,Y[a+z6!,U 3L:cF5߳GT>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/ac]"k%D])/]|J*qX:3@+:ͳ1q6N|0I\ d "ָ8TH%<GRd7 KQFG^)دDTMd8tzo=uJƷsdr΅BΫlw-Uڭ8WYn4X6!\ \E˿W}iYWA.ICɃδW2`X{㻈:/N#h@GJ=tzp \-W< _Vj@plp_Уjbk0;vU8xK!YQ$R $zCo ($C|^1phx"ղFKp۟n”rQta:YqN(`Z3h'\Ҙ قפԶw{ A o+E{؏Y d*({>NRtJO ESu?=(Mܥ4O%/K;l#^9e"aj}!I4Wv)pkX:*w1P] XZfnEi.w񤅱bB4r8!7)0{U"YUYWGEGu'=l0E¤jvKu( 5-NÏID,S|FuJg~C +J= j7l!ȽUoOvE쿁)59'N̟A_Sfh}( ˪>=DjjPɞO5Ė0>.#䈢 %&Pqw>ځPݼd?a<:RA&Ryp"zdBTȃ~eJV%BM!=]щP-V-M}jfNJ.Qi͞A߻Jlņe2ް'&pPyduv? ܌ĩM:r\ >iHM9Ri)J40Aduڙ2VDoI޾db*lc160k >.NtC4vДw ;YEEآUJbwĨ95/'G su"Zp.l%0PjثX?Ka% fEu"d(B!a K ф- q_a*.rݯm_݂"1omyWoY&0^L f4;YӬq}?`=`g4Cŝ_81L;?gnKtliZuNީda4\`Į#q2_89貃#  #q]-aFq܉Eb&4A Ǩyv3$JWjjN1Ʒ2T 24Y}mbS.":<˕ver:C$UlT MuUn]Heuf$x.85@㈚h, (>E^MӠ|OR7@)0[z 3O4ĆYחCj>{0Ǣs{$Bh2MҾp9jhQ(ڸO=8kk#1[{V 5,Z"H_h{ђn,a+I \Tcu`axjۂ?ǾonW<:,r =mt|o4Fn?vD̟0( g,;Ln O_7܌O(Rw3 *\܇q?$[t7CцZ8h'*Fd@.ٽ, z+CH WmNBI!F2L1 !U6k/( 2G-;R-K` O?Dh g$iU `Z2۪-ŪecgD$n 㛙NZVߢDz*ss32T<$P; 9H$%O ;v̦0@@#W_]rs?MN/3aRkG]pa`!zb77uA۵@#n ڐV=uJR9gy,`- aM&sql7))!@YB$m~]wސD/^|] ­o[kn۱<π < JO‘MghHn>?}j4>릨敦S{ M5/bC\ȝ-+K܄dvWi<7:A؟l))mi8]dS [0'72PA%m{Wr- $˞U#F4ޘm'Ea1~5#e 2k\;f2No|TFغd [zlDEkǣ=ߐG]3-ڌT8/9 {bIϲжk  dȆ~ | i4]`FTz. HoZ ` dz\s& {V1GuIm()3-H6}UQot%*?ٱd dus˵9`ٲPUNb7HAA~0|H|±=`dƪOWY}GR5􎉍}յSIUhf7*.^FN3Y:F^r`ދ(MwvJwZy&$ߒJ\\MXhF#A )M%~\Vq Vk(\ɏAm N&oG9JGq0Xo<%C@+ݑuBoa\~@N+73m` .*#eZTTxzKjζo<[+Í0"$i$Q|~r7i5@ &z$"I=>ͶB,~jđI 'q.(ɫAMJ(2=)5ߎdâ`u&(LZelCoj*xiHAuW(Uˮ{|]&6Ql:#߲{A_/= iG%Y;MӐi =,MI5S$VcSf}$kX^dk~ =0@1br-)Imgq%]ӧ+Xsԗɐ( yx~hl}F{HT tӈIK'{k#a:ƁܐD͸-̟Dfs[o ?@c܍~P6Ÿ9 /"b׌8^se#z*-7ѭŁנ2w\n &rvÐgQ?x}CH ]Cnuԥ=~` jkHCiw>OE!DܢN!Fv,"Í$ ^w6ϺJ9_9t6iwLF٪SKdcw+m{I*莦.6/bn3u*z'Bv)p.@oă`T C;%x/ M˙it\zrNpr&FC{B/y lǞ[>PRbhmz5,wfrry84bvE* ^ J]ۧ7t;YM,3XߊB>,蠰ր8aa)p6/r yZ'rR9ϛP3^!ke|0 bmMﳦ)T{ [_" !cHFl9ů %Fy`ouǐL=U= ,S{35#BvSѾ76Ű@E\xr&^qDf3Ly * I9B]eOPͮ gpI*6,sY;@aneZ#mD`!r)a|3cf2$X^RD0]X߳zwoV&˚'6(4Q\r55x0ˊ"r.AXn84b>6~עvztq(Z_m*h,<'+ˌ+B'e2LzػgM8sS(LICxpEdZ×283T/QEXq=4ݣ3s֥gIId)_@SY%LAPatalř5!83)f5vyYDjg%@;wolk{4ZJ(r.HSn*scճ!3wUFLv? =2b`p12bw qG>=6;G* : K>8x׍TeWs^KfӀ46s.8dUv (1)=uXs.҃hvʪ(:N(AKEC>ﯺjՂx17L{-}'K;cnϏCRA_GDN|0a7MypcDҕ?·" "T1MgnL6kٳW-x>1ʏދj;YgHς/.*.m}m"&) *ͥ{͔$R\ۣWASZcK-Hyg`*du:F KZvl7gjqycjn~gy+I.|k%D:SLG]oy/||-?q4GtI*oZ~qBR?6iFt+&XŞ ZdI /% [~B|#[!>ezW͡=H.sfd|Xit6IӲٷ׆j%6~#_JK [7/ui+ J| Oꊽ u=iG&׽ V`Q*34.8U!|憷s\/ %wQ7{elVTPxtلEXrt$Z}r:WDSf񀑩Ш4 == |݁i.ZdbPSpóW]Pk<\E5)((^E@x6ɓrY0P NKrU K/ B " pVR6,*Z=H}L q\V&$!ni NLf( n1U#4 6l}9d.mRb>2/+{n '|"$oށoRCib=s>d]*jKk0nS]ym"lu 16=kj ^vb;j\5JԎlyt([`(ыuk1_]`T"' ˆ[5_?@H6G>W1B=%+HOWtCO W(A8rJӸԽyX{iO|')]kEEwNȓ {ZtqpE E:J=q1>"RF%ǯ:VNܮrtAXx'c(dྒ)ˈna=IH}"|itܷ,IdGZT"C!.cU\/#LhB(f;eTfLxlh<;_uB± 3{WV{xpꚥ[{/ja׃z*lH5 |sLGoZP TQb_ީ| MJ(nh I˰A}\{,m&rVލ'[E>d{\GƿВ2pmfh~@z3C:xqLyO@i,fs߅]3rݽ'{e|mUE "` :w3t< Ox*e8 6= 4R$o{f?/}ߗQ7x~|v}iAzm)U_ 'ޗ|m=.Wݘ #5ӔWZ;ðv,]ZW A C|y- @ACjohӧ0+7zT\Q1cdwr~ߔ2t$8}7tb9{'z62XCra0js:GNH۹Q͵ٗWn-lPmA1[ne;ShV|gL= *p;d`f-_ͯ4 V_(B !Zy9J~YVԭG?k^qV2NJ !X/;,znS-'mM|I{ ՜ZLSkԩH3E_koN*I3Q/ #x"6i>pE;Lc mGC' J,&5p[-=NjwI 0G"ɣI#o K-!/P}Ǯұۛun GZz' pҫMR7ݹ]^!_$ .GxԓX쫚:@=<͌1ӣ@MFf:<7mrf<Kݨ{#o-g a :KN˜1:ϨŻ4%vrMF BSײElM64cnf39C#VI+UL-5Ag! J}:KU/tʟP_訍jzp K/u´v^ :UL[4E䍽Xb Ys oӘm Vq" !`FFrfuM >MPlroeʼ+?W~g2mE0W,Lݺ,&y==$v\Du:$>xc`Wn''0ඟس>3SSW6[g6\x&BfSBEH =:/ NSmV+58a䑁P s~Ktlһ} :A:@- LB5eT;Te&`'.rz{p@TqqB%>bzwD?TT0O8]"KIyʍy3{5aQM7&1ΙxzC/jp:ɋli4"`KSd862Iq~kTboނ+j^Pxi<o3V|f8T_4 D0^#BUv[Kv$S ]*LnAnpfJ>&[K'Jk; _WHB]09$=zLktfDX ޳t|1`KI NPv`2H|ٷr%>.}9I8Wu'-N4feRy(Ӹ k95 DjWGTŮ(4 ֥ηyn@(37] )wioFQ1϶*xKBFRoHSPZL7/fI>IKĎ} !UTKu.2]cYneoS YhiIf]*RYkE 딲-׋+KpKz{)?,(yÝd1'?a'YF i}ob\G"#:0lY@gpԭq!3%9bN 鍩p^j_mݙ2=8߳WRG5%\`"<VUuޯv<_AeS,>o|Tse7 r,A66":.ՖbľϨb?rOw4p/p u/vvTvNLaEZrc\E 4eJZ&`Iul`L5]bp.E :ڞ(=cxi[JjÍ #_X:5mc5m ~U^wDcp޲;(GeVBD#AOY_J0t}AkWax[3t.b.UyU(1З"_Q+%Ddq3ObE,=1u"D^Ce5F~$'FxF1aLq!D̑dEIL-ۖYfZњ-B  aZ-E{_;8'0bOqY4WO3Z]+0B\wMJwB?0V'`VGh}/7~AN@=ʮhLj-$5_KId3¤7PPk"Րoiu*oJlYGױraNd^f*MR#oht7Ùnqg @ƽM{ŭZ f;ҌV&wQ ϿU  *fD-;3.Mymݜ&v< sNt܈LsƀMzZc5\ZI_NX݅d0O.0DWRύm){D'09[vV+`]~\-ˆYݯP)˱ U8j'KZL`}̌IuhHW-ZcDF}M!;CneƼzJ'7mNYNjyLs-[_騖ΰ^1k.wK*&B,yb { t_w6XLpwYi>fV) !>c!Y!_x*`ƝdTgzv)袜ksG4$# p$Gg[gb74Gw{N; ΐ!)۔ɘ..㑁BL.K,0 DcS_G*or3ų\W Y> U1ggFyN/C ʥe[$g0s6j 8`ү;Ifo9Ӟ0C2ML"9ɚM񃽛`gVG/"i7İfkJ8uu&KN,zcsoA`j&X .+كkKuW~?(1i$͵E>h49bGCŜ:,#?`B@‘XlaG>bw d>-7>e|e[?ċ-3v[.e~:ȠfV#9l\#<+ XMpy3x{٥(W}HPR3 ){{ȸfnY,HM,GE+miLR9wuKyM-~FZ]:/st=$L@D+XZ 4sxE<<㿪F H33E]v~ސ~ƍ**RppRcye*?>:\Qii!{JHMc:z9]<-3A!'͉~l^1 h&|LCGWLjB@#7Dnp5PpN:ȼ^!tgpty5 q?AHFd\iL~sK҉)sM)c_0VM09ԬPJ/t@O[QRt580`GnHXu}~)v XKvvje-*Pjܪ-́CVAt  \<;G!_an6SUô׫ *1Ft(`*4!eX|(S1!aX{U#ܶ̀oq)U?U4eX_m:6ңN]Ϭf\QR n}WL2n:3)/B?C 텭D"?.)οQ&eSN%L)EU@=iunE pk^GAa!e, >t.Q hiD4 VW pf&Nh^TA~PlscINRVe;UV9"3k|HDF%neГm+#QdW{!H6ZMT %oVYhI҉|SezR , / d/E96qߞTm(~"7}2 db8E"yv 5ƚ=&Y,\І?_L$ ]Rs%~O!yJ _' 7Q4j;A:$B1fxM0 4l2'۸4H;8’U"5R? /a~ î"smU3Ɯ1rkJ@ ́ΫQ )ձ6/`ŇؒN}o͌=Ƙ|]$+Kq~PTaenN (JL؊mw"YU=qj\8#SSeYPLgV3eM5&}rPy2mJϫUiWDWU)i['y:N?%\D C2KQ ǥ*ܩ+~w  cD좗[H^PWPL ?OevfBEmzK:g6E[D-#sE8ٵI Z[zq/~Bu6˨~)ys]L6mG %otρ3@0uw0>1/qv~phz} X:+BL0X*j\>@$ΝljGn<#7T΋ N}y֗\^g)w dWʲg_zcHMGU:5T6#Sk_ޞm~q+Qv[1^5B4Ei)97b"1(,^Qݙj6`^R,wWbvh1|YKŮEÍHP?wRY3‘)(COsRiQ<$WA;u\q(2=׹8Z?ةƓa$i\kM5+u"L;b`QE{bNr0/p{ggay(wHRuWJ-\h඾ZJ3Jz-3sCRS*y2kf#%L"a?~JӚ,BDm Tc` Trun"RJ؝a"`&|O1ׯѓ~ eL/α~EŃ( B٠4H S<~Jli _n HDCRY2Kɹ ȗ?RⒼ9ZWnVޛ ~ΖNbͶF#g㞷ҐT*5q xx< 63B*"z҂ti1Z/_ˍ ˰3Y¦%#bnW4 L207iY|- ]hC雡KO~iN=9~$v\RM̓Qa/HDYyU oi/LdN*<պ}qRȷMo/$ mǴb:4DzЕa `ѧo.{΄#X˹,qK5j{{LeBP*q'4W k;1{\m!E(?ъj$9cjg; @i4,$#98 bg pK9}V$@\(+!~p}T:VAFLkA4ՁOT(KV)hw/#Q{jF4k!M7~(xt9EY-6#.كp#9ĜFc#&sMI}SڮL@#\9Ѽ+lx9GYh:+2XqG!~2S{pCŨ 0}qfӈ?復p&P@?M9&_Tcf ,E6L)6%'g7AD ʜI"K ;1u7|罋-UUX~4MNDpj׽i]r o-g˼Y2|"v[l%mXHĐYRsxjb\f*c*oH/$|/YTLIh$wQq,(`$m-]jrG^Bc/HuXȝi^3uP;?~V'%6DsGY`Nkhc~]TTcQi7 WeSsGrfsi(W3`EksrsR.Xj~.RSIwz~qeDK'ݫj l٦ߓ3LM V? @+!sA°NT)!@f#J}|2_V'M,Ῐ8"llXCA,޼0_h:Iz#l5lf")WK74\媰K y/t mB~  R\irщM: ׾a5fH+K_#Q< MM/ʁ!ʦ.9m^7Y>[JO] |ts2Ί(1i8򋗧F@ $z˾K-Nƍ^[(FacC͆|y ;^r8SO'5Vci)0Nc̐m5pZb+Qwܠ G O^InM:ynL9l^dO8ɋIMɜN?sgޜ1 BA$>*d Cf`vҍ;6ꕻ~<Œ)Ǐ?bv  pH#PbK\0,&ϊv6*q9c6]IR1_X3i;~fBWed/0~x(VR4y^zV̺7%J⢹fAUJ ;}8cN{ Km 8m}k8M`FF;Pe$q"@/F0:&V8^4t8oI_lhԗӵJ/;_a)NpfpW&pHW%W=GKKcͶ j9$`kf^y;"gEN&sqy9$Nn>J$O<cB 'X,{ad ye4/zN#2%6VK>Hł/b3fin#bs0{;N;4odSnTa~>['-۳XςO{3 ?odic@nQE*Ϯ> N @/e+q֒u6@ܵwijcz6zęb ~uTj&Mzu+Ic?xs'yN0S%mm_szu7 |y*ߧ%El*0sfA0=ovrlQbԮ!3v+ –pvﱗ@#҂O ts`qq4ExQ/C7`K8o.;z] Q_~1mLCjxaBe7h"l"z-A3Q\\v~o˳J-]x_%2 @B6q \3|qTѦlsƈ%=wt G*TY] ׆>9yjLX> PDNZo_g0Qs~"26hn"!-6K{ gØF?=x?Dh፮Ѯl\\-eÜZ侬Ӕ9JV RAλp!Ձ ^PlȨN}s~D*zM[^:C tݝU7l8uB\y%Pf\6KZ.'[X,OS9K=Md衽29w" D ŮTo|!ї@P:ΝqLiZ^!4MHy d$̣}̵ҼՕ\u$뺙3Hv0^%4{;ޣi!5!qšZ.P? Qc Aw^,ݧ7b'IW3ƝvTUVˏ19^ πQ p(Q+CA? O.Lm`d.ŠY.Kq6uMG}6WЩ7 c/k%2F,1$*u4Zn`{YgYl#C"ПE| n>1<2vfIc> irc ՚r++}?@b(nKz\r!KŅMp`i}3;c~AcO4wmٱ5{VǥU\]j%\ch 7,jp^6x` 5s#-&Ѽ@q(LS$C'$h`xF RAPˉ#-O'Wʲ'QQxܑ !W*icS4$U;.Uc~#ȝ؋^ȇs30%'*я04GKXU'C8Z''6ǼCHљy!:rX>  Oq&GR3u TCNTXGI"&>s-)A@"%Ik,!WgRre>Zqfns:LrR]CH]D!'4 P ?({RN⹟(1"Ec܍. w㒽wτQ`s\v2pshPS/r2q@LƏE6G#K3\,Fo8ƻ d>Yw\>qL\A,%QEETjv=X`CP)HK,%o̊!7{~r Š gR%} ȜOXoSokMrsI濫2~{,w{a&#/' E>Yőm7IOOB益XIU2ȭgqm2įGؤ;SnM'J&#[ }q" Iy,A+`~HyA\dw"kɯO$nFb&5r.^,z`3胆 cZC\t!m- 2iNG"IJWD8kTMƪ;|o'#+D+5ijOt;7:8Wu (& Z3'^aÚ_SE EFrHMe$Xm+Ss fN/݈k(9URDqK[ZZDž!o6OR R#QbUa#)"F?zXNc0:)UKlW>ԕᜢ$*yt.lrR]=ZF]W-,@e.DYFSa恼ˣ2`)S1IG2A^L}{BT Y$-.ro׎dDxK֨UX:ʛ5ԳᓲA#i$ᘮB(!8l@:m͠}q |LUmUk~a슊|)#谾voߓ $x,VipY*" *n {+2>G,f.szpippƐx@3gqiyPW+#3 e?~*7yr)'12 \Y-'ʀf7;#CY+ʴFUFvmI=UkHr-PyZf$=vqmeg dOZz) u=R(hxK;7)[4K3Wؤ![;zI>- ?gk`Ǚb >j/\cGGQOez gz8`HV( ~fsKF ˨QqB̟ j-?I?_jOq,6gwaWw.][A,O1p uƟ`VʏDpAPoguxPsnY5dvb*$+fm|[6b:$Ԕxg R;y6vg!,t7 DJg7;G@%Lu .OT C"U"7tC%~^[UL;NdVMbröL㓅[2kwztddD@Eg5.ܹC/f&Aα lh:3ҕSQ֝/+u'ݾOG P9tgA}֢䄔sFM9HPrV;dP{O4q2t!Z۞0 5~Ya`1o (X]ƒUe1ˋ܌Jod%&X4ʎ@`}-jl aԴDyVIWTV-;lWjc;9ˀ]eąϮo l$Mt{"1 p骳۲{SN:ŕiDhRq,BY ZmEx\*1uMu͊3!I]tƫqI +ER~Dw^0҃'2;ƒTǡ< l_@hc6 EVá~1r3$`h4jVP]ݚ23UӈYC5u8W rhª-IaY!-4W -z㣋rOzQ习4-UTW>&r -*}7oЇ.dm2߄K" ]ϽWj*qTBXb"h:IO7w:*>kEBǔyz1bai{==3i2Ҟ˄O?8Mu=ա-q"g%VVWc -P౷4+,*/f~Z= I($O10&k CB;l6!t׳&qw*I6ZJLs+Fy VkYz i`{Fв/ S ~4$6GfmKV1n=VوJ`\X=J\U1a[\#r@V (l>4W!mfvZ?fū5=tRsVAM2@΀v;E{6o!] Ʀ{Q+j%aƂ*>Kw8 ȓ.Q i1BŊǕ / y FK54,&߳, l^2ˆ҉r(kiP-.Kà<#rVU#@\Ԁ/htNˁnzt%lWGfO6׀u p[nfRi$9`sξs<<(ܬ94 M9[5λTzƈѲ}N\x/NZHR"~/[_{ARQҡ`g !`r I _P :d8O8g%:}eܘ7]XdNM%ASmXʜ4?HI2s;%=vt5TUH&AW7"PEI]:HG,q̭[q?OzJo6`g?%&$ۑ:1SABүGA>ZA_E❪ig 8P-/XX]jϦxmW KC:lz)[|1֝GE 6otNXh42v-ZfnJcڲ8RI0*gQ@˦wZ?d?"?$b:+RQ<vMxTO\^*D)E51 }-"CckPeu?(+MʾFFRYYτb ۃ#e|E8HmKuΆ?)6`aqY3V '<?jOɶU4i0)I=sy!K̈k(1~r"+>d_UוٮI*})W .h&TcR*د FWgCQvd=QNyp9z7Q7 Ȃ@5kG}ԃSM.~x.6Bn~Zh-zԏ]XS5L2ɔPeWU7|}NVTsws >Y Ĉo@h8Q3`V}>5i{~G˙ESE3SL՟|C *7/1ȯU{ BU37,ȧ~ckZ"5zn"zJy"GżuRtFF/ϋm@E| <rfptNmfTlZcrA\ CB ?Ҁ,>\`FХ`e.O߯䩎;b(yb;ڨiAȕnw}G$E("bvywnPW.XEB D#(AF;ڧu[}Wjc7ScʌbJ/X%z=ZZR@loQ,?.}y7I>(m|m|nZ|0kp1z1#wƏ3ln`{N?T8]ʲ$ffQ&O~v<ٍ,n_#tl_w\&9\g3 )$ n=V%I Z?>cčl}pF`vY6 Up#k|Y+!c6-Ey^I?: B7T_%|CS(T3&nxd}26IgF@ R勇sNUd>"`4R˱ޛF@y+odt?@ڵʟ?̔t-ZgLb(v E#c5ҤNnj~2| }`0Y%&plvjUҫP^+@N(_Z1+O˫z`}N:PG([/7;ԟv |8dӢ+j:&&CWX5rVMQ;%CmOz(u]ӳ{rbTg'oF7f_2/Xղtsʣ9Gdd1toWPЌ/G'-Oz]~/Q踸Nl&>lAXZ*Wž[)/ɪ^fg(Ş?/JvYCloM>#ݕP> OyFTC̶n>>3!(6L9v3,ekC7mEo%ZG?fK.E<`;a {;wm>DJASW}Nxr|S0=*ň͚wis_LE|$DsZSc 5FX.+*7p8V˅S{1?LL ~Wjx,r L,ܪ /V+7cRr0$75|o,X@ǨСG{aoPT:ȁGr4HqONcdTLc<YӲ>ð6DJus`o5c)2/~۳E<2-#! ~9x##?zQBb:EuՄ֫d\ܗ %6~5bYgtZmm|63.A̴<<Q]B0q{dly(ȴ}He(ص\')BEX7`_Opij"eyi 6hkmTg6 zyp <Kvx!MvcE?6;'6V(I E,A|f@)j}v a:%<C+m;,ZRsIaTV~wg*H+r4Ï,~ Y|JZI f)}qqbax7?uQ: Tb~}7}q\hgF&a٪XDdOt20Oյso+=iR ɧ`ޛX xP`kv8A8cQS6<.83*8cP3Fax$E2{%H,noP ?ni[8vr5nVbvEuv2nh Ea/O5j҂\2I>)rgZҍ=DN"Y(w%iU#2#% UC/|EOΉejv%}4gv݀$RW\Ř3X;Xp^<$Onulۈ&"y^EKȆn{Fq<ggㄤ$t;t?~HP{Ьf'ۼ8WMPV)hL21zh I|@5uV eӭ.c g1WB r 2(vl!薆qRkLm>"!  K:2n:5]Z8Ds%3˯B#!Uy|SMᗎv̽f]Im`UBσyNLJb4;3M+gb䓌G%@,#$ɩ_ 3-P!ԙ2̑AK/"ꁨK;JN 4=2>YCjSw 7DyƣMm~+" Dp60։"/Z@4Dҩ\eG/跬iO4'.k`v{ttytz-~ P.|Y" rC>kOV (# Ũ̠^mЄih#9="HC̉dffφjwfgU ^q5C4 Fra6TSdR*mcpmb=㌶T1bA kNDTg a l жxuƬp [f>-v$ H>~OK=>Iq5< 7zn)驎VUYSR/ % ޺!^k ~2f>}CV<hm"\Zmqy+zXd _PIypt%*м N[-yvHdo&MQ^C&2^,I-ٸ{MCbGn"!Hm&(K̕Z坞fm6Wynqy7gnL*0nU"tJI,@8aΏ)BSjV`H栫k#4сnj8Y9=wJRlA q lC#y$تEkMN <gaL*=34+=[rG9 qeY#䠸ί^) ^cKHcP䒨amA3x,WάQZ-&:W5֎|K8ތ)3W Um*ka,{2 p_DzlpTk.c5 iҠB>"P~_EWR|\QnpKHS Kcʃa8tukk K2ʷ6 K%W2T$Uh,M>a-ӜjwltBe Cfx[f U1R(aj>CCi8VS{z^cÁ@Xvgcig+܌4C^f΋?Yp|N?Flo.Up I&L*o|c x),ӲQBve|=vHH#3%9iŶfgX@Mn~”mӹwRM$»] 2xV5**ZzJ JóҸ 㙿 'N|/{ozcD, Q/Q$uy߯S-7:eƍ6;h']ݵ)CwC:A v.dIe|*9ںK%ʮ[=}c_o5 !? ^pBd9Wvv 29_Txs}DrR%j#$yfOVmd 1ncP ɺ#q|ܺ611*W"\KS*<~kIS->7tп\!6҂h o"!|K~)cuQj$ĴN2q&w=%u.cp™bonXX=%˴4٠m$b-I(Bv %cjtpTz!Ǡ-p߸V1EHD]׸!Z3Na m  BN}+H=gdofM_ܷ7u9 (Js4B('{QnF|^5:JޏB~;ϟc@f#@qn? E\< &"‘4?.$lxLx\3am ٯJ0H~H4 ܪtТ~<.{cUh_wPPJsǧI2ͼk!*/r@滛MkUmbPJlQYEchSݵpyeW`!h34N^9" }|.d1i%z NNr4ߠ"t XIe.[{;hMzQh=2 du=#aG~=PNfMʩkR5+~ f[L&,8UzW,rv{A'D}? 8PZ%J+W 4)n SybkD[kAJ_źUd?08"OˮKyyIwc*H{Li*]x LSF,Uvu?5@`? bHf䫂4@J$dT&;bvӲaDĬ /B8<36vY_9wk5 U<]m3KRғ0@19QLED#BGjdu$e#FXDYG13Z0  qX鍱!IK)VKpeV\d ~u qh@-XMbmN|2UPg.b5mH29i.dj RpߢdXmxXat=njd95sʅkF;}hE?Tj΋ٰESd⣲ Ỻjf2vO|/$v"XNg66 ?}C4kz8;gӲyWAvƕ7wla;ˁ^kF2<`#}*+ 0\\X4,!mCD Y2X(:Sv@* - Eؼ ȉDyȣD`[|6#䩆Ҽudִ.aN/ٺԣY/H+T@u\1x{[4|IO!{%x%4VjAzH&YjzL0JM% x'.c/>}iF?4@FXD,޴@Cו"Ls V刧F.z8pmPFddMm |"BO3[[cJ I|zg3Tu-P/ ;x8ƈm@UY׉Hq#ͤDg8lB"dZb&2b$3}yFG@F|{Nܳ$ƧSux=& h3B:%OX?\%C4K30@hZji+0sBY&$NuѤ +e!V7Yv95^|7{WKz9i̳KQSi(58ޕM[dx jeE,dn.ِ2.)!o;Gՙ1xiUr ZCw$۰;+ar{w#57T@xtK`V}o^.@5W'VQmd,Q±n34쭲&h&\LԱŹ:OKcw,hk y6;t8{i,E=u5ޥC0VgKb/pD ~d~^n 5[9bjbP`1rmfAi !+1(=% g.rYoM:h4A7užwѫUS񶸪0k]xJ^v)^TG?]ajxzB͈Kqf#Y#v%;W|+./w $8FIE\@]q(ba6֞TcQ3)TzRS>D1Ԝ?2ެ|va+5߀@-{soq GD?~y1riz$iZdĐK<-ScnY֞w* ā'P`͏5)a0Cr= iJVy{ VfXB K؇HC?|"b( R:oxpt|?8{iab?BoI`})fj*w43'nH{1VzDS c۲tΧ #Ƒ9IB|*I0{Q:k4qq"kՓ(C!DT9: 0.Q\vjS$dK#0frr[0Ny$HmtCIњn%S9sU(QI<7_kuCk6| n\$`bKԆkn.ȷ:]()R5`+$-=ʰ}/dA핆vH6Y$\A+H#@pEX}ò ؋~#NL'*wAu+G T}4V8 %O7!ʎT7HpԚԋĪQUT.I}_W'\@nEN>GՇdkz'L5ߛ Ze#0b7֐Q$]Gv>ϾZSLqba8V^kq|Q/#$r?3;XUxq 誟Q5t1-&l_ǽ7&kwE^hrlp9!flr]Bt:`'C#=<ɚ89.hי><@ ^o[7FCtGN w8hEvd\ie4z2ё'wft3Hr֔SV搒RA>j9#p;1歏I"I-C5f$C$p 'wȘE'<#l6%m ,@\nļa-@QCTV]5LdV`//k1k4e!l|RJUrUsG\Q#n* SakW]=MhA];2 pw}W*N@jU-Ɗw3 ϧW.JC҉XDoR zXԭhd5MA;oФY^ MCvjw .KW8D<]4wEV8 de$*"~AC%q8刄N$"M_(!ǦҰme-fY.6T@CD?u60]?{nU6'~xuR#k@0AL[i!w@QɸӋ5ёAjǐ !^>4ﬡ `GI  # DX }Co0\g~  e״'DF.^r܉/z@o崲c _UCu-`O>`n2AqvZLj42Jz}{[>SM@ŢO)=\@l e_z}2éOBnj#6N oD1E,Ph \ 6~SC_\\zu2gM?f чxŹBX=+3Txxr 0dl*hQݬ׼^WJ5Tқr8Ku(1nCe ƵHFO#Id,szF]ׇNre_: O)B)}h'C(a$E[ѦvV3QLヤ^:FIE^0]F_`Y C"Ҹ){#b^c3h] G{/S0 Mh-Cx@{ _o)x^8^jmy_Rl&ijzV`w^mVLi?FvW gkH'!'J?E0g5x[KApjﷂ+''!bo7E_[䇆~ Y+2L1q"Av@FTBeYXsw-Z dž6YFv4* s eR+ |1gfDm 7ΘD7PU7Vr MC>N+oS_ ܼHc-G&E4Kh K԰Kɭ}P}ڂtt(Ze\O)I{6lBF8\H[cj$Xx}ݹQʼnBUV2HKJǓF[_8?VQPhSch%&$.AnTqƎ-}=: ֥Gܒ~<3BXӲf G$1mt8Xd'E43E(rs= /ro GzP'饪踳%):>jeH@yNvt0ȻĊx$΁u 9jSbtX})įϗ;n=ٴYwJ7NpP NUd$&;T_M7>-w/_ˇmȔZnAXJr3@Y쳟ES^3By-rܪx(QRщGBN#ߡs*IEn]6rBӗOP2{M-~˄%]ǿ+53[W ΊcO\Dcq!LNt=CEܶ@0G4TXۅ*u#=]20a^]3bRyzE9T{+:$ ζ.q~G=mAF^<F=3QE#Yd$T(57N@yUZtL沃Q&HD՛̉6,G#gƷgV{;a9YwS!d;:(ypꟸgbd$@pv+n :x/XEiQˣ؍ xqon8qóM/!$Rus7W?mfcD_Rݸ\'Kb%2}8iCR4_PW1:E,}eeȅ_ogpΛ{AH3姂\(d&l@ "ڠ=+3nG8" q/f93ڬ vUij=j'3\@ \+Ch_<ɯ7&{WJ}%ڈ,qrNA*ʭi 3˕8YLt*@yTU:gWB ѢU3m1gO8<-eyzKԜطU^%:*?ٷׁ x,w7n 5{HQY %x"K>o1N)\d;.I ]Y9?e4Qһ) tYQc g 4#\3 :3w'#f鳍P@YMQ%3hF Q" qV}:% mkA F 7Z7ϯxHUJp}kw֞c&}h[5K>Mׄ*0~&#A/cl ׇ~[ۄbaƼܑ$usGTBL1 a#|HPEx`lwŊ"*^&c~f:n A #ӔI;2ڱ_ڍw֔MnYeْ13 N%ؤ,#M4503-R|-uCV#WW$/dnQ/Ӵ0I|ܮ)DVZ=8}ô;_`fcMGüD;rUOoܦ[@38 t(VPAn{qm:g3JjP1x :|P5ױ <o40r_Yy$ۦfK,eyO5)9Xɕ9`Q!l:d-~IM߻?8\Q SMF jmTa$>FǎD0!{g[8y5d)x$r&VK=Z{G`Ȭ 'bD4Mh1K &rT]tJY0Nx'~tLa>_8=kRÎ1O!D0{5%H4h31dV.6O7]ߝtRfHg_莈I6̆zLGIąU#v ͼ$X !! JS }BMQL*p8 cFYsdś%olQ%5k2vP^N_Sx0_~l'JY, |j.Q^=9.F IO.V#z2"=sLy<>J Q_k卑v6CP 8Tj zin{_4 ˘>[Wu6gVghjq3b(m34 CGyMgQnr"201[e601(WG<; 2.%o_һi/. zHJԾkAVm!g,lodrT.t4caCZ11 Uc$U10x4U%οCiM2d&'tkv v$mAm5?|)$asѦI Ӷ?.\X*>W+zh3WM2fFCTibr}wv@GpI2 !@ U{̌cRv r+cݤb/ћ KnK4DDR+`Obi}MAR.cWU9n$OiH'@ 4v.{m qrOjV7y%4B3DxjW`}s.[WAb8gY ^槧A>֚كMd @5E;q)AO/ޞe5@K%X7׎P/ s+!0=ce@ mbn;Xȃjfi 42 gG ;*yxjYز2o{G K"C>'.n_ᑮYN".oDWy&I~ ؛(hT:NƼ< ␿[ܼ'2F{đNXQǚȘI8).}PbQ:}U;жY&JRQʟHyHD eKNBr _̔nf[J>BdRW> K gb-z7\BܱA>nE'Oq3w`ijOW͏pd.R]K9Ƴ^~}>ڟ(4p2],‹YdiD7 `jrR1b2O?}ՍmaVm'9N}j@EИ4蛸mxû6b`J,Zs"!a7&|~S2VX5u^3 Ʋ&9] AuM%*)I& "~ǿsN 'UPf÷̘Z@+))X׆z 2eaxM/.4Η)g8>Ψ's!v4.sr\_d.UHofҾ? Q_>eƋlr?_Ln#b^M0i, 3`\=0kDS T2b|5ZE\}lRrZ$=&߁DոbXQ/"@PqLh&c^`KI`QvXcS:XVQy@1&c?DžY`\~ &YO:tG6)Vׅ1s3f^gƤdh@s:}ALY?*p@ڝ$2d\;i_7Cr?4~{=oۋ.JGJ@e[cX_m{XnqjB] eE!sK1A}6? nq$\P^B#5veA\As-cK"G#I5]ݢin-}]4AirwZSFM2rGAkwҾg3fb\wazi2R8;kߕ.aYB.85!^ <~OƸZ=QWHXLD[h'^JH5x*1C:)qQEc76ikiT1>s5]Ҏx;pːh5r͍* zo4ŴK~*G"D ( ّ"1unWK?8"h.3{`-gꋊQr??$7>6ծoVer5Lr^>YrG0R "R"[۬pT u5 2b W҉Eоo>3x{ofMk92Muޤ% dzTb,;vLp]'[lk|GVW늳P#%A T^cRk'B GSD=$'~MRLς7HE@UyJj5J$<3JIfH9P96FMG4+Fuz"ajq!LPxMLgT'8\qoR,u y2!"ŕ5Lk <6\=2!Bք&jCl;l8\zU] *йGaMívfj0m􉑉5ų ڤV'ᣲi8M]jcƸ P}jlr TgRjMmF-3`kt1bD0,C.z49I;2:m+YX֒#J],2wA4g I㐼0\w}*#6kYb^eæ@!$,&(!-~F &qKllJ5B|(*%f;Ére>>a%g!"1[76/+\e#:K=towH$ٴUۦM l9~C 놛R͂.@p3i lHgU8'< rEZ@<9E5B|d 6GƧl fXN{~M.VnmUłE<ss)68Q;C\7/C_jY Ѳ4HdyJ WUދ|=vieZkt/Y$ƖHx:%hHWzG?ZD}"fO+nasM ֢|zb$bQfzɔwҢ۔73~2tJԓZEԗәCdj?\_!O U:fx] @A-L4MNK]PTlBqUsxZ0_aFDjФ@$D?I9*aeoϋ#u"GI䧤$L:Kmd/=[Dw#,hq_([AE+TEn<3Fm'ZFZ0Myh*d`1*B .T@䧡 阠6cKzv@.,Rr;cdJ<5EtS!x\6 PN$8}6x"r(rܿGK\g":CڱIL4Qt\_(s͎hjT|$KE60Ů\!01lD 1ƃ6@X"[0ⱏZ(,&^xK/Ot/Nmto}Jȧoo: h MMV~wK->m.^s#|8 ܨ 5}ˊOO "`>; )u$Y=%jzx啢B)r1"=JJ,PnE: QF'P6UFPE7k&IG@X Ŀ@ןRYE#f4c j*@CGK+8๬f5o %!tdٜH{R8L⮅6gܴy-H}ymw-1B׎ ̦@Ys>ǐgm_o4%$Ť\HnҖOo@NԯkbBGXX88Ué M&jQ7H e9\AumNDErsJ-'~xs*Q(x r"&s@0 1u>+ƛV)k+w<"J#\.~B-m{f|XdT"ߊ$8L,;Rhj%g=d|wC{QsZYFG8Rw55825E7#̟ߜ ߠLSbq6lϕ85H7+TN,M#sufbv}\}%{-w/-CG[Մ2\{ѿ#P3u1)@u<}h%Fԥ]5]'Q,0a /O*J Yr)+Yh)( ! p 7hBSbDWNA w+LKv.1$}ݔ$ wQc bOv4β @nx/ƁVg>A$7lGK`7䪻B!s,ި[r^bgea`&{"ڢ fᴜ#ɎXvSO̅"#<*&{2/Ovۦ'cx4b9Ra4nbryUmhHk4Hqk[_!h ca֮J:UY*W;qhqG Є 5Ǣ}m{ՕTŲW79#>w &Y˄T1I;wJP8ASlDQ1W=SwЇ,=CM X @uc;mVIc5N8)/wu|$AT&^f\}"z HNDOi[_{i(;K P?p;Mt*o]s'C$ AɣA<^#҉&/KuNKJh7P7'a\obK#b,T- d1F4p<-< ICŚ)XAð5Í00A<1FxCVCe/Ě& 5Fb6MuV,1PWHI x"N$`^\r4p>[a9=,Y<8xdW-ņLI5ep\_k= Z+. ?ksZU4]ˎ6GdYL= +|@}W~AoPB:M-ޔQl䷼oⷫ7\ZԜڏ(G7rވUӧ pE_;@^:Zl YKi U"|?EʘU܃P0ۙ^b|jn;}Ï6/6ElD %RGi(Ve*1(gsjܜ$2da(MjDzic+ +2mWͤJV@>A1hA>+~%wr2u:6Lօد=g+^4GjmFak>(O8 1"+LF!E"8GIpP@5 ϻٔҋqJ{g=]_I k/ ! ˄jB!]D qH9e8kGuPwk뺙C>n#f7/|x}emg#5 CKQj s5O=\u˶H$!'fGL1l<Z8xWP0Ӳ:qpgS $tPL.q#e HC%bGh7 .>*MFV#M` sFO(&gcq!x`` QWCx9wKwy*Y;@VRzT'X% , }MKENh}0Ѓ0+ĵV-dk}| g5\ETS0C^G!PYR}#/ 5YPj(Rw2hiԬ^s澊&ދ"ɖɝ!('7 :Em 7Bz{I_Wr ! 0E|<_vrܞC.D>TΝѳD!pƴ05s|›CV40 b{4:nu疕tw,K ~0Lyx!Q6r 1|EփC! ؙżהs8m-wkȥJ ]hI:$j@pE'+?T(%+c!Oo>tF 6xA*p23SY4;7 ! WkF,#q0 C-gnLZb1DryL0<O{ rn^5=cIL{Ѡ:K8^jp1pV,(sXʕ:uqVcщۮ,A f ;YHJ|l4AaTa[IS?X*Ime!t0P=f*-+ޘkZέS*`hEП{ts5c: 3fGvR~1!nZrKvp;K$p=뉱$3\Pȁ"򕄶!q7N/0ԡ{k$*]_!)NJV8>Q*`p09MO;G.C'aZs PF)CeN yO6޻#15MtrY~FWyfq/AQ~^4Amh uG+TdMs )cv 24+LG>Hgey܅geWc.ld~Ի(.Q= 9.Wn2閩D#V`sJ/ c :ӛң͔QDu #^gC; u6G{b%a{Lr=^coi1,2I_n=:FW:)m}ܺ8ߜ\Tґӆaw!K}"|"r3+6;'FsvP RF9p6D |ĵ:]VH0"$yF}@kshFp׽/?y viI>ʲ@Wlr]N Ѕ#!dPQxЪ^ܭa0Bv|W{/ZAYs?1l-_,W㈊sq0j[T25. [™Z pR7Ϲ#\Y7\q^udt-Z,Kcr,u it@hqF֩3Q{96 49'lZc˼p_E!!tԸ?Ccm%+(ϒLhUΫiU XC"" /t-/-Uܠp:bt0$if"\Ǐ0H**(٤vDA% GP@d w$"^2(,j ?Lݴͫqk7,m> ditsM`i;K#B51'$'9Ɏ)f`W~;źgy7q-,Y0S` 4ɴY% %cf  4iCNqe<3% =_H#s+UlϯqWD>'7/]^!%j%l&6$BrÃ=I[ˁF3*R]krk>fU6N FIks,Y~Ytw/q6;bp"6aK]J $;Imkdž^a ?*@]~a:_6,i,-CAc8Aya@s @<6`Y 7e~`T"G~?! Cqv/9ԽmLI"HmE~]Bjʶ}tɏd/O@OG!QRˍ3˖6X~_##=-?lu`+UV^Ĵ_=c e/O<2g!6pEX*M4mTBI`ç/ 3t_xِd{[v *}UoYn1 $Iwzۑ+֟J TG|zHuLŅGRg0>-TkHt-Dk-#RÕJ<>6{ RZ_[E.k}wB rȖp#]%}8AF! # Dfl˶ YZ