mdadm-4.1-150300.24.33.1<>,Sd,p9|S##XΌr2+Jh(^ b_?YRޠ)G47ʛ!2&8/@E\"%>'odqjy|5rACۖphi7;oڀJ_kh(^C̦ 0dK8<%=_ĕ&XW#Wd /诖Zth&`45( N2Lg8 ):2QU,t8{lQJSFK䗪KMK>Kl?\d   N  ?EL  844 p4 4 4 !\4 !4"h4#l4$p$4%d%x % ( ((8(99)9:-R9=>?@F G$4H4I4XY \ (4] 4^ bVcdeflu4vl w 4x4y z@P XCmdadm4.1150300.24.33.1Utility for configuring "MD" software RAID devicesmdadm is a program that can be used to control Linux md devices.d,h04-ch1dpSUSE 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 mkdir -p /run/regenerate-initrd/ touch /run/regenerate-initrd/all 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 -f "/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 mkdir -p /run/regenerate-initrd/ touch /run/regenerate-initrd/all ;p%@e3u  A GbN9~1vzV O--e.V_  F>B p,AA큤A큤A큤Ad,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,[f[fd,d,d,d,d,d,d,d,d,d,d,d,d,d,d,[f[f[fd,d,[fd,d,d,d,d,d,e61882825487b9a2868cf47ddd1b8d5c66dcd5522b651d3e8dfc17b9077d255275c6877bc9bfb5d658b2c3a7cbce23e612193b114f0cc2dc2e1cdb567282e593c7a8b98a69aa04ab96fabe36591074b5106e0a6bf9a3db6b6abc3d685a20c28a762a29b328b28172c95f6a1e202e0453410d0ccf3449fb17d0d5770852965ed509df38f55bbebcbbd2f6908d1f9fd39db9a52068fcacc03177f5e98f52acdb4ccd5f7e9e8f00832bc9355799ab71026bff53bbdd8e99d1bfbe4c4b3a07f14481d789d3d1867df89d312d17cfff73b0cc4b47379486bb0ea4f059708dd20120781392df8b1b8b5cec3cd468ac46d498fe55a0a8c39b5136ad7b66b195c82f9c40d3957a71e448cd8425d585405606ab1c5f27cf72aa092c0cf1a9a9fa46d2036f636c1b4b1ef272bd27acd445af5e2761b48c7822189d413dddc9d942479383ed1d23260664142e2def5f249899645ed5abc16fe158bf586e0ee12bc0c3b6d70cc6c3ccc6a26a0135e61965884297cc9b4c0aaf8d9b6158f9324d711e446f1923c964c100f0d90630c3ccf1d8e25d634f240971688436d65e0d8ef14475ddbd5e87befe5e61b716be922ebd2be3bd05fc24f512082a00e38f7742cc2b7d52957bb43c7d8846a9e46c24e0263a6e0b6a004fa29c4b4bdc64b3c71146b2e93a63b179f5ab1e4c7ca00916e1444d8d47e1181ff6e9bd5fc8a511bf84a16a7ca833ee0c374ba87211097f6d0a720a11fcbbf7dd7af5eb60f3c0cb27d00191e831a29d9e56ab20cbd9d45e641d3643308b44545c616c12f48cf5f5694335788795a32029e943ad89929f8512b34ece38bb772416266a58153815e74c91a6366eabbb81d72b3245d3f6f6fee432aeb23fdf7c0c2ad5fe2c1e197c757dcf1f8384515e66da08f4125c0a269c6a67b3757b7d9fd09e14c6f67bb8c7ff1e541d532dca4da308a09f94e7c1c57032e19e3ed4f5e8c18c5ed533e47d35d833e608cdf7804e3207ec768327b0e324eab80693a68852d342bd19285bf7356753e566c5e179f889902a174c2f7e71b4eb1b1f3781e9577564db0c7b9b1b5bafab2f6f2ce99095a3e6f6d62f227eda2151af5db24ad5e728ffc437a3d672e828a1e7b81bd7783bbb76890b029d204368a9be769d3ff580110f0e7742db48b1b026ec56a0a556e786dc763e2231d021ebcb1ac6b81b2b86c7d53a23368ba6f38b0f5f347278156f9496707ed85c848e03daf5dd08d0a66e448308ec62df3bfac5e8529ba10e077447590676b7918d24d93c8eaa4b56926b83ff31493b122e688e44fb967258a36752921e40b0e7e1ae3303a4a293d063f4b6ae0a95f2f5590fc184371cd20c6b6ac9ac0448ed2dc45a3ca9b523bfe870cc904f143139c50f827ad981314e654d39ddc46c0dd4ff25105ad19addefa46ceded4a1e13c43d45441729dcf14d6bad9e656f25779970c7da4d4620c6b9af103a91a3f2eea5729c496979766e5e0bd858c7732fc467a5756529eb357d4ed5bee9c8c234e812454211b2e12ef75a4489583dcd5828098c7845bf48876f3a2b8d66182bb0e893ddbda1237c68fd1c6cab4a9f7d6e460c26b26ce3e9d7c1cb4c531c75e4dc21e4b18e9cc63533de2b094423b3eeda765be954c997b8cf79038c7fa64223c46505f1e8bdc65937ace772cf423b314c5722b29ee8a268bafb4044116175f6155f21c9e6bf843fada369fbf0fff3d0c6892ad74cce318c0521dfe2e1244449e52fde377fcc5edca1c4eea179d208b9dd44bd1c67a9e6606b9a23904a71c1a84cb7e64e9bf51ca0d33842210f3cc58177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643da173060f7917a742bb8525965991f937421faddbc95c9fd3f943a05dc8457e63cd8ef003b0a3b4374f68cd680ee90867e9ce590ac9708d637256785dbded66c81c28e536d92e853caf486a931ab076841d94965c55991ea6a0848eace91705c6dc0669cef48e7027552b13fd9d6f9e82b21c59dd403ac4d7b68ccbc2a7a7ce41c318d317bc193e07e27c83dffc45832ca1aeda1f4d99df96e79e16e41a5325cservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootmdadm-4.1-150300.24.33.1.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.3d@ddQdJc&@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@mwilck@suse.commwilck@suse.commwilck@suse.comnfbrown@suse.comcolyli@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- fix for uncontrolled resource consumption (CVE-2023-28938, bsc#1214245) - 1018-Fix-memory-leak-after-mdadm-detail.patch- block array creation with long names (CVE-2023-28736, bsc#1214244) - 1017-mdadm-block-creation-with-long-names.patch- make sure initramfs is rebuilt in %posttrans (bsc#1214427)- 1011-Improvements-for-IMSM_NO_PLATFORM-testing.patch - 1012-mdmon-don-t-test-both-all-and-container_name.patch - 1013-mdmon-change-system-unit-file-to-use-foreground.patch - 1014-mdmon-compensate-for-removal-of-KillMode-none.patch - 1015-mdmon-improvements-for-switchroot.patch - 1016-mdopen-always-try-create_named_array.patch Fixes for mdmon to ensure it run at the right time in the fight mount namespace. This fixes various problems with IMSM raid arrays in 15-SP4 (bsc#1205493, bsc#1205830)- 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/shh04-ch1d 1693985958  !"#$%&'()*+,-./012344.1-150300.24.33.14.1-150300.24.33.1 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:30550/SUSE_SLE-15-SP3_Update/160cd3e7bfcf0e518955712a5ac8dd54-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]=1b5e8522ca30ded4d77df283114731ef819eb589, 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]=4aa376b12a9b08dd44e1e8d545c87d8c96041c68, 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 RRRjppdVC/k if test -x /usr/lib/module-init-tools/regenerate-initrd-posttrans; then /bin/bash -c 'set +e; /usr/lib/module-init-tools/regenerate-initrd-posttrans' fi/bin/shsmtp_daemonutf-84d291d48020a6d40d6396c159938557b85674edcca1141157822edfbc6c2def0?P7zXZ !t/`]"k%nŪ)/]|g[k<Vdi0@ ]j]n@Jq"?@LU:PfAcsE{0h Ǻ61)gԮE#ׅUݪKCDK# +zd*KΎb˾1=s}bhuONusqԨ͋UlIC<;%iM&0 %OQQi.0r Cl*`#21s %.! ͱ>f6=PgLg-כ {ƲrKM4 KtB6Us̫|sUkzbfCk ]+163"[ UgQo@O_tߡ6z9F ک0P14]l>I  Õ3>$`^}4*K^u݉LiN ŽxP.3U8'6cA'zy|vyT~3ݶ J~sa;a ch|NbzSO8Ћ!ĨޗwLjhSUAz (VT)9mLsmwu 6~ Cи G(E=N;02Bvs2z5[wg_/<:'<эAبH(Z PN,Іڵ鞃K0|ͯW X[~FYFx5PDGo FP\QYRZfT'\O.@wۤDa7l++è *Y#]Z+@H+sO b-^9ԀJ;(V.;똸ĻYt#N2{,O^N//ԫghrOum-4$3((E#2t/]TҬP?ʮ-Itc%4aJW1l;xhX\G^+z4.',enBp _ƒL:t+|'VlWх/&NW,RjuF9ٲKitdI|3N4^Z9=0{fq4}>.ĸ;N0#B4S5>h.S\c|[v&P$!sWYfB=mVԯ"t$v'F<`FsF'ᬎ9?iOqk6>voe`AUfo@hV#Jg6io]|:xo0XbI *j7z_65x15`b5'e"BMU?Ф3Ͼ,-ZtewVvd4@"9it<RHdoӌ7a7Dt|1iDnj|8ݐmjj2p|c8zr@ 6C% 5GN?iz@;%xvu َbd !ɒqM _rZtf"{DyBYVi0jƪݐF*7` {mlvoJ)(a.|!rN4ʯϧŠ5`ǟ?N0#B@ %bPA "TŸժ3F5 9*VIka~~%{nG{2S'TT̊S2sګ$~IJFKFH,O«np ofv\P lP1DrCr ÿ1uc˜9'e+J.2$hN䉃2WAТގ%}\Q606>Χ`܈+BIDY_3Ijr6dMr0*g+Tul N2>kSoCѻ..DQB85!+ (€ ZkHc>QJ| Z(KZqI_Chg"khJxoeyHH͂29|ONUegPE%a{;b7ᷤ5W>TE%s 07k!60SJ ًד~/.i%MbʱMua<_4L"dv'{ĺ$\@:iIap'G<+5I  ÛڟQQ0R w'ScOm"a|E.ti)y=9e ;0iD k0ڷ)3QɱY} Tx&QBW2sqc+ " IxWc|B~*e6gQb$+aGճ,%/!xx$$M1y :zے]0 }lp+bU Y< W"c3|;FEz(wR$Vw4_gQזҽsTfLs U4/> ;QKLNF>ܦTyX AΕS_'%D 'K3@RZ,kMa)Ǫ]-B\q{b۫YtcXwSj t!3Q[ m,\U_{c"ll 00!8841:,Bm\Qђ[t?ûVTְ,5RCv-`AK<B!$3ox}0Wm,%uY7xxhY^J{mIvwĀu3H5#~mQj U&?U@0Ot[,vcB㨀ʖVQށ!Srr6x zM?maEf2ٮ@ "LҚ]&F<>ۭ;C M;D?rwNs'2$EEyplF<w"i*M Zdjk9l-O 9q 6RRP;\۲|x(ͮ+?7~9h}S?ѝ3k`C1и0{>u!#-oO_"/VT/*R#d= [)C#rbog>e=KN<=ܥNjK(R_c^A/}G"4YA5\Pe93jj(XWZd0{&o7DlЦ,wS"1)OXv>Er̦ 2Ѿ< S\ JY"<˛net[u6M?;[BṘD8ۼ [ƙa`#`kš*;U4I(HJDMZkғENɼClk̫L/Z~c҃GPP;zr0eU_VVpMWQNpΗ;4IG^KL@C;j!)UZ]޿Y>w7MFY܋)IZ2b:j %*-9"6ѯWeјPۻ;MȂ`}JsT;KfCꃾDG53B m9ݴ (^7QL1ӏϟJY[L} Rcԧٶk78ҍ&*\ Z=RчANT]NWdY%q%GX%WhΑ Ud[Kk2rɰJD7%Vѣb!Frp Y828醙謺f ڏJe{4ABLeS|aܜ^3hs$Q鄷/Kt;j $Jа|*qu]*, w1a4SN2BOdR_皬>a Մ:d*=|)C 4}~a"kN{9҅ ;r|WŅ6ޥh&?T7L^&DՖR׹y&\Z/un'^$S{8"#/(iة݇]Fqk I^:wP!vk̒Ngob*] *WA뎷v}rd`^A}~h_ 7X+ g%}2Ӂ&[RnMk[B _ԻUOSgzP+?.];o#qٽ8&*3Z"2 s/,'=B~ \<@i6V~gm9BǍ7-pt̀IOtYJөHk))[L @HJu".Quҏi *χQ>^|"|%Ȁ/2(,XBq8E>FM4AV MyȊF0*>^Ɉq'1M;έ.j-^ GD}m`qqT5LLTN _ GdW:MVg!|iȐվKѬxX1'3u\oT 1 %T9| R[MsF\Ajr~ԻR9ڡ'id n58CFnk[EhTH^pm U<._80T &# ⫸Kw@!z0z#A2[m4cPm#xnoYt+m{2b5Q|ӵ?:}|3M%xj `7E`ʓ׈\f^ zZ :L+pF۫Rw9 OWv@^ , i}IN607}?x𓊉4GmEB jce#F\ tU5%ccJ.쒘Tûۻ51IjK'\6HRHD-X,Z%o1ﲷ ǍpO$ CgH9˸dbo벯9'~&Cĵ!ɷ@C8ME^&λ K}sTX;= }>kc$N;s\f?fEWyF*] >Yy/R%G4b\ zc<\g'LU *dx܆W.)*sxsG)y-Iw->6$eO=5%!㊜JcnA:?ܕWDC*Q!mO; ;}3-7{@Rnp3&BX ?JVp;qx-jJ]fSLrܳS JMRu!YfucF|W߹Z2`7Ҽc p2\ sk&3_VPd~57'(WVyA_c:w7u!;3pPu}2Z0ê㽭ʂپo΃Ux g.]7àfIۅ%D:O~Um8ؤq2a6+iR8gX<{;N)LDRb-އlsxQ z9GaS/}qܯ5KpA$mF8p̀~4va~ANФmr !Jxi"~L6b?v\J#:4h!Q"#`Za*ٮ|4͝R>;ŕXSgO{"F@IwHV7nGHVVW9D M٨zE|q5&H^Ȍ$HHv _N͈hI0=x@(5Oq |<3s.E%|^G۲:/o Le("îzV8FCj: 9i/Ҕ_w$9؍:ȔnϯFYKh#mى=N]Ά'p>9E&tWamͩ8VI_7 ' ~7)dRG oh]R2k<3EyN~x#gJX|phb <J(Q%`]]48DW\"M>E73LO 7>at; K,-Ϡ 랫l[n9 8 gRIl@>VؼY )Jb2X ~,CTQyիT.q>"=֦֦σԏ`P7ﶥ+W&Ӣ'ڊ--.C 7LqajJ|Pbrsh6+UMH˼ЇI{0234} l\w$i9l.iZ'UPסnV_guO _][7$jCJ,H|ktp*X6|Zg"r)sixU[/;Eih5+/P/NVl T1Vab8f3j DYl 1a1WV^M|orI^8.430jdR|3=ӗ/imnnJm;iLiiIus:A}»GwQF{ɗ3iHHKrsjǻtխ aĭ(o)FXf!M 6!cXd+߄"~ΫTn8w v6nbU[3u)tDyt'3&q4?p;R|F ?y{#"-BBc"Z.IK^tX4 &:P\U8FK$\GޡO@?):6Q%djKVØz|?[-=Pd5wHbyX)bu}g[ڙݭ+G49LvD(JP\:lCUYw4z^kgSIa)yոnG1w'L%xm?Id> SW^=Vdp?QfWpMD?v:tQbu(a,oln$$5Q8A:ʔ V0N)@FZPFk+<=[`f⪩cjSf%C5҃wi$}߲e&ucP4!hW`hi(%P Q(5̙9^L[~D[2.vv*iCxv"g~Qb,Rq:YLF7q l"N# l-sIl34.tKhorrgF{9N1+\W˨1_lЅYtsQ ՏgiO>f) zonBpKvj$mQ9Ӹ{ nzsﰁ/f)kzn\Ȥ@оs@k+~':DaJ EMudzDl MA=K4eIC;C 2z P{A.>)j9:PazLt%|?] w;}_ǜr 6\Ǫ랚PpoDA: b\}{Ve`a`;|:ڬn:R%N#{'~-Jh!ӿ<g>_x lxQȈo"8@7Q!#f}eJ=JS^~a G˱?eюjV.SRBBмm-8hQq u* Q=<5D9 Ǚ?iyIgTwNԀFWrtWL])Ǔf|E,;݋ys> `ze_Grm\yǁr\[ah˺@Wֈ^2K `{dt/EFUGpOHh1KYTٶ|dx!Ykoipr![Já~)y`#>x3'gBE_5[J ӡLÇl-k-&/| wG2N̕ТB֎gl ׳"*05fˏ"C'!E'`jP?So4]-؞mk`kQx vT!uS*QuzI='zѕ[̷v[*i%H&;a/}?f{Ni=hРe~`֝6, rE%J(6|`# 3Sc‚plSs#reQM_LiPNz3AjGQ Cnc7>Nޘo]f]ThWVJNI,˲ g[ekC;¨ 9.Uj ~s q^EraajݪY$L"ytjhuugw bPv従ֆ68-W}tԞ ]Y 8 Ju7#hZ8#?{ 4 _>4E<9lrBvKZ@xu٧ GCe\dF.tAƯ]n(G?r1y~.ERfO~\.SA6@!̒;Sݒ%)CS诿4,\]N~Ǔݜ6  έ~v.FJR=gZS*.>1t@Qk-B,Z[$Ӷ 7wJ~*w(:fF-Xm)M~z4IX&3,w 2)Ta_LM:ZdFL MXy3][qzL!Ip3feIJ=‘%҃>w ,[I 3O?9nagB=tB"+aB i5RZN<;$DD^+N"MΙ&Y\1D}` +B Haǰho7^T ^诤˭>q eYjW+Õ<;p# 1qA7mԷ6ߍ;zۜ đa֊"fe1WA5_IE%cM4ec3c5du[lq9 tIQpS5:z _v55Ӹ]ՀfSO2lYܳ娏U+2|DҤSM {< BT| pXI\CgЛzMMe; RrkO<]2,Т|/Q^[@Dk4F}{+VE@R&SJ!SMr@JzWOӬVETB|\&h=;Ya*(Ǧǿ Οa_C$:h]Y!hG^}tDXN.%D^w3o#T'`l(,&^g',KyeԼT?R$XridTIj[C<5EE*!"b7fVBXnwc[Di'ν׳x 6FrKoJp5ĴT6Ö{MBE߄«h'8DjSledQWDi_۔V\4қ q66bRh ipYZDY2}CJ-1laŵ_ѻ`LpL\:j1{+aG\Ko3⍲u YɉT4=>Aw=^yYB;8Lf6T D[\*I.'WpMiSJ>!r+Լjj_.\KkIX4ztn᯦ъnl3t֟ @?+ΓR=fP }MBnf6{UD5ŏnz(g,DmSG 3&zyu0|“?A.Qb,F3oѽt{cDhґ()] '8qS<xH+EiA"H,]Shnx3gpy|]aW;C(|*%40O ,зg?wnƜi̻JmXé(v!TjɬUBop >P0ӈY`Tio)0hE`WR왓n%7ssc-:H G*;p!va7爵/'mXx%;xsDqn2XQ:VTbPAA ]kSͤQ:jݧ ]\~ϿWhf`a6f 2#cx66.b.몫5FKn KoSyP e1y*F#%S=gOT<;Z#犗|B7U`FcDx#滱&C+8_3~ X (i,xcGC6HAy&!'<"_؏H2xg;7ˈcÍ07ۦu 2-/DH45~ 5WQo %V1ҭ!|z/8YhHXn"OoFl-%xN~4y)[5SBm35QWjrjJl&VxG[\c7_6OJR8(FE`J {܃wy;9A󖔽Wg.*ϫp85*(D@._*ń43 \\\} ו` H,FOGJZ-BJ!Vh$x(*:X!SGWpRK| aA酇WF:!`R Wp iBٝJ}[mLiuOTQORuT"}u\ ΁z@qٟv/ O yYO/Oɥl%͝RQGWBngS`EfjnbL=h=:#W ,ԕ> -+ۈwBU|Ghj,.i'Kׁ>sMTR Y'kgpxիZ eJI?V eo/;eV3I{uȸPOYPڛO;9ђ4·v-T:JW1*DF`  R݄YXeV+kvibu6EͬݸaqH`\zz wt0_q؃8Y:yմAt/|3*bTۂw 8\~ #%=էTNI[-y%t>Hpysrv0ju.8Yp|K@F8`1L%u(Ǿ%ي}$Bɧ׀,=Bf)1:֣ o;ts301w?9qRc~I"M-*nF )E:Ļ:XD?nH_Zw)=76qk|.3Z+kYtH`iK5H:h.ΪEi2i"ȶ͗4\eBο4Ot4U9}i zMq/D:ܾ.OV}(\{&&$3s>1{+I"X[km쾛wգ>6p"LbkI]s GR3{2g ;&ך<NMAѧ > tl InzθEYc, &Z*i&qhLXZ_+G/=uTߨlղ격7ܰ[,0Z{(tW1䰳$C5[gXCMZjJy_CY&w6?h@?z.jҊA |JPzf"}Tr}gwr+#hIod\="p.N&<\078PR4MO>̀i87^Bl" k&C+rr{'7ztB.z:1t)x|]Q4HL&.y_Z-K6ZTG#f+ 4fħp <$sڻImwqTcY}?ca؉*^0t(T Y4!/~:YկN;A$lm1_}ˁ #UK`LqBtt˘L dP0W2Mxb&Ny۠93e$f{(T,v=YQc aoY UB=̈́ 2a]K=A6͘1:`t;C䐈c\u*yL\}sZ&mc(dU_~8jOl5 v sv:Sen4ep>ӧKGڿ P9F =\5dRW(j^Gr];=󐯶 /)X׌00`ʘb\zfVW3¤6RV-r @ =vGrw! E{+e$r1@Z6@NLr?Wb0hWDDF˰_&#G{ XYֳQ?G,:q֔47*<;h/+1pJo!-QSCv*'6[{~hH ˤ^Xpm)NZ$FV5UzejћVc荵}cq?\m_A*|E8ZX㺍g"2o5ssNN a].; y/㠗?%'(#;OmTC-䡰46`C+,Y*I@-VE07cv>X\lZ]] ںR@v"Y5ߌd݁g1+&>FɝkjYoݣjj43cI= 3G'Zɝ]H54tЪJSA}'KÂբMbcֆA&ms6Ž`u>WA>*JǦ9'%_n$t%RK `QD+':Iwي%wA5?֜ζ͌)5OםY|fqg.uX_UO`iDhL.؞nT( !N8f{ţy(kQBOq:hchJz[6= :*+z !ktY8ʋ_c͗va$By!ˀ}@@ޠ ϕ)!GN$˗?S؏LwJ ghRTP JS>ۮM?koSE|V8OO)A S**V6@Gҏn.DV<Mxm$E{;? *TTyHYcK Ir_<څ}5^ոA-lSXKWvM#fqсEӫ f4E~Aj .G"mP +|q^XaLt)֜&[]/0S<}$DVSw-=&Ѭ-gҿ7x4GEt[Fǫ4ƎV0끊@NQsKRrj2o*Q ~5pXN=`bvꨎby!Snr*!t>Fkf19v.cO\k+1<.yGqPB!` er,[M^waS{+!x/}4N^:P[!Jj@M8^ᰥ笊i$`,7Ra^t))'Z&fnk6:B;1uLPn9-h8?Z]ueYf0o]8糭?_Y9?W{'G"IOw)eID+O_)NK.hQ, IԄD_&(k- )ǮxˌӊEdtEy*ҍGei?7NP~/]+L7v!0v9KKĞG4uNa]Ӂ4"Ac5Y/i|T,؆hd 6SK(&6M[O%ݯ VI%y^Z#_9tzH<{Q:OS_m,7QyĿ=YgM\bm41@R?29 !d6753R W P>p!\q Z,D$gH? f^ke=<z|i8i 4sH)M~CnH(;aT%sU&Z(v#CTE r]Jp#'cg5:@~g&w"gGT\@ ]mfafj ^_M/{㺹 @D$ܭh"'&x҅+dӆ+߂Ή>WHNu"mPtww؇$&7P$bΨK4qXSz_z$S7EqV esJDž=d(9 Լ֕:%0E}?*I=ڨ#0V= -ݚNC.ǣ"l&@-n3׆[_J> Y vu ,s@ ؒ胔I3 m؜&hCGR%hK}tOT.mŻMlbS2(O=&D`wF-﫶>@akB-{ *HYǮ<l~^2d0܆PP'CK(t2 RO e}Gk7,m~ŧ{lq)-ǠPwXYܖ]OÇo*;܅8[bd\jN< <ɴ'ǜiTI쾚X$rZ2trh!@VSk, ! )B:l%4E_b ! UDh@4~LB7yHLT4ó._OmyiespkMA]@ABЌ6RX?$,݋^pUI($ə54EQ/i &6i3|' eSQx*',`V*yZk)PpD/$KRLf @`95@(˅#[kG/EDm(%ihթ8>GJޗ"o ~&8\P>_t!,ɎOs[& V9le:&Azu3 s\(Ώ>yX ۽.U2k$! ҚA4emRWen1.8D|ߴ)A#jCISr`evG)B\4iJf;6v6I#FbrVgu8UI-M%'X47hL2}=:*& M3Y|jӺBaz=p#nE2 U@ȓ=?@|xzbssFk]%iVPx%x #:˅P-'y>i$ͷ}꣎'G$ʛ0KjfhTfc֚HƯv_*PEeee;fiv7a4ݴ>C3iZ%u%J X/ON ى ie;!i)<]<%=HE}Ю\a(S![DeW NͩoUnVdAo5903J" #861ԐtqMOeRڕ ;doT]؂ߜӢ:!40NFSËo׷F/hЊŇ%'Ėk4/7&o8 KXb26e+3T%=5nqw1NR܆H8ĩƒ^Ebf RE I`&AdF H˺1%V hQO)dwܧ[?%->0%6rU⳦ar_Mmu"3}*%^( c;Wm`AB< R >`4i~fAYdҨ\m,g'm m rabc sI|*<^;U̇"T38z0 4Jq&hL"枠gBjQEW̃} t ?~ZϩBfɋkquRClSq#5R")uv ?,`NȤǴj!0#%5ae=_]6b"uʷ/_Pofq1mW491#AedX.NmtZHK tO_Y]D_yM57gļC_oRI uo?Z1h\bWoXC1,u sͨ_m.h`(fWԼ GVw:}y23G8cwj+p2+{oE^x|/fcBZ) '@G*a^YE@,y`qK$8}9o^of|csRh-0 5QŔׅ+ջE0E 95 Sr0pZ%ȧ<x\Ra|'l3)/F_H[Kd JǦuY3ب꠫GoQ|A&οsSũy ?HLwfRz78{5oUL)'8,6@PӀ^N?2,Sr*ޗ6UFnX$[#TzJ Bz2'%=}`ř\xcYi0=ːL&3/3Ifv>ZkF|fnKBjWDA ϐ_d{7lc춌ǟ5 V RJc_z2 -͑}j`blkmZ#Z~u$k]/ 1ڱ+u`־!Ht% ɛyx:i3r%1h^ +y *OQ2cxajn O9툣pK掴Aq˗~ڼBKN0o%5E HUªKǦ^/wO?&[Xg~;5ae33} E[빟WAIEn^jbMVDjTe?dw*?A] jHidw5jbpNd+#(1S |}(#ӈJzk#%kIKQO:ryЙ79vW$CMCz% m:nĘjͲ$8TSa8f̲a> L5B` +v_3m+4ZcTYc1ܙ ՘GS-*.LMwl:g2Wp y6dXև+,QjIG3e D5Âh ç~4i4!7/ "צr6zGNؿgID*[L(<ɇlث^V<0-W?h?OUn͖PxʳrwW!76ĝQHZ26 -Edvʆ:J?suPT,'w4 -ůuݑ؃/ kzzܙ6?:4-jf~,qwDĴ1muCߩ]dw%a7^m%` KzB3zw9HE$7,*>awyNwfX:v: ΤQ^ɗXL?{@1 y m}[S^ϝ =(zO͎`H:\vƒ D!ҟQxŒL:F nDRN_~eR_D4))'_R*p_:c{=ul0%Zc)1ͫnGq >Rigu  1ȋƴ"sc}z~ w2Q!mԔvS?1im=%6ў̈́GU[b8--IJ4vl[_$nf um?Q 2)r\ϻ`v5.(fl;̰A]D!~JP"Q7:HUXZLPTU q٬6 c`xA@n!YW+@+lC^!^a8:v*)Ne4Y6uģ6K,ۍU|!ڶZ ~2.UB+HA Y&N,nVU8W6 aԌ{R~kGndt'Ԟ>#&xDbI_r=m;|87h!r\]BhI%SO\EŒ#v1Q\%ݏn $l&+Kd$N9iwH)O(*Ϋ™kV ءObTc?>/͊R kYXΫ3Fo$qgFκ/wv^i$=F6iӯg -RXAF t >P&6l$| :YWYhc#gȳwзlA]3; ;ˍ^B.C̜sY,?)1ė;Ta7pmC0$Ԝ7SE@z%ts5UwT&2ž`!xo|1V[HK3V3SMLWbR4=m J6Z9zIpiѵOqka7=n]f7#uekbНKad77 Fze hjx=ڗރ _T D*h:kkJAԚ/kd6 vO ݙ>W+gc-H},⭍S?KMi{kQ FIZ2nDȇc69 7Pfdž݉zu9j T/#u4ն4Ux-Dg9F8XЏAQQ{JZ̰n,]I-&\Ϝ}jޔE6Y1U:Zs֗(au7ttK׆*Z1Dmɒ&cKo 3brlbsq=LWn©7e 6T/z$G/3Ln~ϊjgծ#έe{ҡ lq) 6KZwĜ+6W&t'| ciH^ ϼłC+zۃ=*PV-Ȝ[+ܲX?'HLNr6 Ggݕ'?./sbys:YxؿL ٧AZ|T+{^qu﯐TV7km@Ri}PSܴ>,d)(j$8k2I˻c3:g$n`zFC/ Hr33֢մb:shȦkʙ_ZN%Se*VƁ3j{!nӍck ec=G#m}BIfaLl*GVQSw' dtXw?@On'QB$uF N*:2p'՝d4:Ձ߉(:+7pQ2IR!<Ȝڟw_6ZCL.Id9~9 0E&_J18Ė\}쭏S4:Ao8S 3O.QQ.y,rz:&/sU`t 5oC}~bF/1D^n x꒢|.C+5[z),P'ִ+ætT>h $3D%!*sN{XqM5ŖF`(q^weT1Rץ{FGP=U FmDFą  zP,"MO i/IT[oW S(pH%y剷:[! 4Xr>@PZgy5w8,}w bh\8EN(ES=}NtQ:ZE,&+VD=(0( #QE*uЁғ8q>m߇B#T&4"[vXú7~/xZxuEܗʚ"6D Ti IŠTrzBfLS2ayaO*ocaP _(ހKU2Le'!K,!z3@?ZuCuˀJ? 5#*8dXcBos??[A#4fտ=NL4\kj"7xI,2sЗھ pY7|~kT4ogCr6\EtOuA _FV61 0I+=p 'h*W\NȄxB9XNEܻ D+_P[.A6yTN"4-( ̼`!b '"GS\s8Nߺcb5'ȶ?X<'VbVCIƐN)!$'I ?t]"y{z^/g*mHa>h@z`Dǃ ]P+9;,%/%&L͎>5/~5Nc:}rη=0TXQ";I?B v#};/8bm@N\E%snȾ0}}x?Ձffޟ? o]ݒA8p;zcaIާ>V9s9|ʝ·B~% z zZNhիDn%!a>Q$Ϙ0V^~iSt!=J Dj=9°)HYJJR鎤Iygґp'-F%_xE?XKJwJ#V!r"o)FYT|!g QK# Iܭ^M,J^f`\c<3iaDm^W&Y^]rPbFkZs֤ێ Oᔢz""@蚤PHo,Nw~gW  .'Q>mgp HB1ųSђ):gQM:RTڃL]Mlդh ͞5k$g^')z ?\4'>VlP:C!*8E|":?4 Ax2aZ:UnTi<:7=RfHB"`~͒{;tpB2x^~b/7T$ 0tź,} s7A/\tA[>~U)Rܔ(p$|Wmz٫Htg/X$OZn_܋A4{^tNR k><%gb)Zk8#7{. Bmp I 0A/H=O^A\eLEMŊT;ʡ^y+]>lؘ1"ffy]dWUɝ@4sقbW"t+=ެWhGӞ% >(|ÙxHDi@#B 衕!1¢~3G/as}-6[eD+Ol {p`#oR,p"#jWFKԱ 7Ȑ OH{Qa{q=5m9Can oE4Psn" ŵ/U$C{U-5޴ pq_]P) -Tv@q+el4OzBSk1xwd! rmBEWn[kLDtF|3 x69~ϐ]"p#K$FAb \-vRZf Ob/ܵS>r^D-A@^!^R"ՌHv%]{b5vD5At19_2˂KA7my_zkEҁ_-wĉL: }\ud;UO“?s=t5 c5jMJ4k6+%3DaAY`3 7kTZbO`1J^$QR8%e{DɮB ,x_*FtIM%VPnU3#n9Zؾ$瓹<̼ R4M#f(L0?95\pTb6"Zk@CLdJ G>$݁Sͳ$"5ݫ#LjwKwWR6ob.[RʇK6Г^nڷ!"1)Fc 0~@(vRǎulw1]V7jW'>'ߝ~jQKyD<݄q`EuǦ xީr$*|R' 聅bh;Ugݨ0n|ԋ ۅS=xwdAxRjK|{ 2F^U{H2qh>Qa ?caN%Q?qd>ǝgycU^{; ,xJhnT,&)w1@3jQăE_롑5>f'#rNbUq(̜xY% W5ƠZmg ܥYP>ԋ"b4%5" | .PT(v!jE,|nK*Qr,Z Eyؐ-@f #|qI/N$(_0m?1DTTkWupuH֋ы)B:[5+N;R٘iȼkLpWSϐv-V$Ubg!`|ߓ˶[N I*M{ ~GG];w{%ZM 2lpS\wH5 P l+T$)LM%"> pʀ"0mQj9BkM#[e3ZLw:Yb͇9IXnٞ缼Q:0pk H<>^Zz*YoJ8lW'rme+؟WkqZ uSCN-f\]{A-QȆ 'Ar+Dj3 lN+[n>;(dT˜`^kv.Tp8hL$?L>'j}.BLMZT97vԃ5hsӠgVÆ?ڭT`4VO&$[ ěvx9XKEv/\u[^!Q|3sӏ NL}:sS[KHԚ8 ^'ajHJ?QEg# W_ݢ77L \~_6qHO$f`}[$jL]q*eI61Kx)2@ff'[dFJ8;j?{b2`>2Rd͡a<̒(}0& "W$bޅʯX`ٓ_' JvP.n Oe\;@1E<{ ˟Pu} ^n,m gIANg@-X0XwMMM\Jf#a VqEB1N{}zj\`[4į܍v=;5I4kᎋ8%_&emykGܪ_|4A{}BSuӈ3H7;'!4͢ (7F_tLX͓ĘWe5W)Zk <A\-vN x+T(hҽ7~*;6ɮqve컉 "s0c=+d-瑊М$&O#csR.l_F)yWammQ0D؇3KDoMT(0SD!|dbgs$FrGZcE^\ph%D[c늭 ooֿpE_yZ W (~pY@\:+y<Dm\cWfS@ؖDL' 9F=)<x2k7|kǔ"-Dz|d桷jMpo0=e&;ʳ0]Vx~F< >-Xt_RΝwL0' ҜӞGue]cn^R}/!=o҆f y،8G/0mŖEsJ3'J+DH|j8Aۜkj#:@ s5|bE%Gwar*A*4ҿ}M\Z0Eg$"4)mZzEXV4]#"ϿŦr=y6:ٓ.sRftWb PH@ͨxxaJ^f|)񿾣ܵ R@,=feSEN˕A+9)vμc4U5QD^my̫1.@A] xv0B1[nZ*n-'Z,nlZ2YUd֣eq%׷=Pb Ɯ7ӣ.1؏⽹rrt^;f4Jtt̪Ө ;Б "] e=SWz)z_ڊ4Y'b5:IUG[+E*_7u^u2ck,5I>ݙFY6UY vےbWӡc"QZx)ݹW5F64؁a?s(\m5`d{^W_̊2l&J~>̮3/$M';GW9R09H#bC H[&A s5:y# F윚w ѥh¹gQA7PsaP `7j 䃇W6RO/_|cJ[!+i 0@F̌H+eu?lr '3ӓw|k0o~( Ut{n{!C3Ʒ.hx :&Hbq pd`CeYwJ2T;y R;я]PEBa,41;=ޅG-m,Dk94E-rߢLX51*B|N",Ďꉄ/IP(08OkRF# Nj'V;f>̹ dU׶pJ8oZn Yәcb l$Z0l,GaNW$3lfh㭣$Gӄ;Ns>>*9sLarɢ\WjjZ_f/[?D?|^cp)$ty]3Njblof&XxMr㈣R\L o=iJ^5b$lu#r7H&,cf0v>KRvIHemo-#ekVNk K7I랪ibz|#gO`;BZ=+8鿻 5${nu{~7qc%Bɨmj ϞSd"eؽdp>^:wf@>K|W ,ޝlrWٓ%]%EHhA]9 AǸB&Xi }(B(w#L&g2`g t#G%N=h7Ni 8\>[M@m{;$(ޞ@+u1VZt"T- yJvvi@s{"qe aVNkiny{%^W!;ew R3DG2TjC6>tE'o/K,,(#e):#Os,v`bz<*v Ly^G/7=诶Q;Rh4mIR7p[ha J(.iGZEv~W$%~aM]jA.O9?YEQLbrYLAs6'--z -T)qwCʊB/!M" !y7GXԷ9/=ίQٺn[(S8`"YZXW*8M(0oNˢBU{Sy2mRO rX.5FM'"I$b ӂ/b>r~Z’eJw*iMF~La]\>*;Vt=⫕kHG.Πɪ = ɠծЪwךc]BjvğRl*@:t4`TpMRZ0 mt׃&BmߚL;gY ׼s"cHU" [Mm{TWي&cI+aYc u%yF-)-Q;$076L}D' #[cx@pfyk>¬E)en*nD DD5!%J|YJGÕ%*SY K[#'UԐ/zIp#LG`ZSyضL5o:FYYCV Fg b)tvͽjE6EEާxpüӀTQ >h)V% 46X;{ɂT%q!zFCP|Q`'-l[]5]a/gIĐߺYFU4H~8CDӁ&AK_pA uVrQa/Y-Y_H<; چ`m1O9FB4sc?vبߖM^2ۑn{u3/-SrY(flϹLn7qbS906RM[HmѬyTJyxwt#h$CvV1,0yH)=ܭގ3l} ' <#'_bI2Ha]pz4S.>zl#SFbc?QYo(wRirUzek}Jjte)fULKd .AC,"P;OB&:g:B<͆[؝]/PM~O Wf{ԺacPpeMQ?Q5c_ C"[It:oCfX4 GjxoSiв_|>k$#ХLIƔۈ&q9iX$ ! [ ~ftydv|ouqBrP1flJ$'ޥO )l`E^>Ů`#ro朎G{ETE$Z;~~;+Vh4̯͵ ^ ܧ'7.1LL:,XcX!ZMꆵ_xM'N3>U+< & y R+a([DpPANd}];%\o#]7*}ˤk@|j]jRMU J PE =2q _U3Gds;6 >䤄t3R/Jpx *Q◴Yx7HD8)3B=2%~{t'6e ˬI= Q0Uj;?ZF\i3LY}M&a<'u\8Xm旣uΕ?buK`1aË4 yc}Bl'sc(~@Z30({U>`Y7+ήo4&N(JQɗK7b9p>I;mTt#-c8YU,2JtC}+zJn5C?Őw q>VbkX{*fʼ;ekh]4iWH'"!'ls|G*Ȣӝ3'^zks$H؈+7Pon@\HG&l@1̧/y!LݺY@QI80:, %G`3[,zFUjϺ)8Β2'tY72Q6nK;^lu%XF*π*OM7e9M!<_,N\$ˣMh#dOЁcLi\rR?bv0epl(V#. *nX&5"lp6KHRCqZ0UMRq0MIKLׯf־d 0KXNa\4g~ k-gZީɭLIif/]S, uDOOzMaU4"$8;{@mo4-d8OS0\6f}n\-` g/زymfO fW~m+S> h^:2d:]S_m=$"XvA=lnU br(#>WLw9܆|^=Pt8N0ҳ bFAˢ7K3`\g hn=d7(usFXfEN"A%[K՗&zU\U7ULozZf bd}QA,B6EBGYGJ[鉇m e3s5 VʶRt:}CʇfZW~,%tWo8_Ѡn2'qkF9XvFAݿ.lfT(J2l;2ntz}0zNā/7_sE\p)VBF0H5Օ0 ;r $h4iV[㏠%Uߊx4M1/R-||8Y0$[zudו h#)QcB؆k3T6rZy)!Є) ֐ʋWllJ -8N G(@ d& W˶mk͋2-^Yu u`+R2T$ 7s' G&#ygpCDO-޾G"AכR\/&T5Y(s$"6+h>9Qߘ2'zYncoՑ,ZKo2v|\L9{%k"`&Ð6yZ68hh L7! N5)K%9vH= UVRJVr1WRHO|et\с B8jAg<Dž)W5F 2f=ev% ׆;9in:†3B hpץZ#3Xvm.V!V9"O,cAyч~5Mёe*Ʀjv뱧1[">9bk˄@EL ڟow܂F#nmRVL/3V,3V""?$xA80 5PS1R)[Ex@wyae왃"ɢe,Gx% P2Ucڶ͂\iVl~ڢ5<\I3TU=MyR<= Ω~#]-6h@8./wĎf)N2/Xt-(~uu/3D1[tPVX;@lEuTGP@j{iĒ<2Bt_-Mքy6#jet,qjP#ǣ#ԩ8wJ.*11p{^G5}(yj5b+S̍oFlem ,"1|2ѣɀ-0+ oςAisQ@1'dBya8{ nJ= ֆ7kS[P&y@/(Lvj܏<v~k a7Xѩx(6tw7}L>^jJ)ܘp4r 5HjuydIX[ή8ёA{YAuHEJ7}0{w(8fsF0wȁ<:*ym d2N3b?T HUi/qKi "Ʈ Z)֟?agC qɍdYD٭{8.zN? *8vx6L&=eT҈Yw е]ev>h[dY%A[Zϓ\LXusͽgpfEx'Yx֨3uPXi1*-S_J0JlgԐ1g !h(bK]E?aVVO]y:GiN@-mi~nkPO܃dίu $] oy4{O4 xKzlhz{~dR"'1_o .*],`o%=% )LLvncaL›Y-s0RVde&hϊG&T\$8M@٘;&k-D1%xfZWsV2un]s89Z$\ՈܣZog):|:^u lQTF秞="9/K|sT: Jōgx3p5~zyKs L_UYBRYҗ5˯c>M00?a 8]IsA8[}AK: 8;NJdsGؕ@pׁ{̚CeM aԾ .p"b}Vl_2yOPmKJ#c:ߵ - b OW92aó%G * LϓÍIyg3 T-7H6W6Oh3q^y*? >D>lu~y:SYjٔ[۝(6#V!K]keK_|YG|+|;ېw#ƉaDf^OpM\ 1!6 0cRŊ3|:ЙC42u?--*Z^^8.enG$Iuˢȓf :`ǵ}nY-hh("3;4g@@nA%mAY,U."izp^LC&F \:5 G7-*UQjf*WEM9!L W S,l l/+Ώ-\#nmJLnSLآMyͫyj{ պp;20 2* ]/0-EuU1`rrue\=ė7tTNjH!ǔ/}ID ɼդocI6dm)\Nyu==&]糺| ^W:Ma]~ax.<^o"ޢGo| ֓8r7Ge]6*?Z֖֝bn8Bx߈(!8ج/,?վ]fa󢠴٫[K{ւ6$4M (;i9,b*G1vC}0])zoٓɾ"-U+|sqj ITBIh]? x e[^Rݙ]a8i:DCbUzdNJ"mB]MYĪUT0=-Z#l!%֛9M,w5x]*LRRq4T/i -LC$Lқ7). JKt\,ԢۂRI!!W:I7 : H 5M=F9? ӚX {AvdhAI oūU:s{7F('cS;uJCfiƆG "q.Ӯ&T6KT%6Ά uᕌ?+o glc!q2&Ce"wGXJɼg(:ZMKLUWp / ;X ^s^[GҘ" cBC%l p:oԚ/}͢ˎ~cWoa $Xa\&,fYKf_Ke[{J"pry{1{B]]jlOwDMUe> $w\? DMo<.\]`(J"@QqS;&GÜ>rmm{BB]oʜ̲%[2[I?B:ʷ *g#-ghS y^ 4MBm\j%W4a}0-"mxdLef9  _溎5sZ/`{^6Fl` -dIgg](e +HW˯Ϳiq|Jf*xX-"=FvB+n]T?X*B (J> d6|z 2ůA>4Q{YˤenmM6,$=_ :AL8P \[g2,Xu^rvQeޏwޘD8Ž[ھDZsS0>]1 !҇?R'6Y51x6 BZS!E-JmAAfrΨHĠ+|N~kcSp3ՌHv}@'Cw%!~ףWcpPǷ.W1Yw/[q+v|N~ĉNT hNDmOXU=ng!3P۹4tm!{ A|BenG^[Ut+z #6/(>%E\ m4\~֨8w@XNE OXifO$OJxט>7VyULe_+XV_$! 3;[)g~;(/Zl:&]a.-cm(UaTLTv)LPmk8~'EZΐb-CJBrqe I6w혝\FSzCͮ+w|oAl0v76,1D|>f]-`eTxϰL]tV"e`+4]D<̐IhTo;SJT*l`y($O$A{ dsu@lK &! `xZb}Vx'|xGs.B!t> /蓎w9 JI~{Ӟ jv?EHVBI ZcP蔆JVXpftѴ-(TM4zgRL# 9t|G{&%ɗӹrX#ffZ#t=M҈o/}K2ԖT௖v5q"H0%2(dɌVLSHy=0ndZF0[KpnuJ%H͹_8.c ~ fLpcD#qvP{D]][D~,8áCGâ[>JaϾ?RK[1{0?WV_R4DrHlN+%ş._dI% y;`JHA>p(:< ˋ]^:^r=C0`;`A%[3pǝY0t P,VoF[_ldʓ_ IO)nI5 uk\卻nŁ_ǁ0>7ڵ gGJɾ^)=מY#`Ju6Â),’>+1xvؚ=yQ/'+q]\cI7An0jnd/L06ޮ(CWT+Bk XbR߽_n*w0l$݊"{KT rwyG)mTۡ=[[״uFrJrXc}A܄Jڌķ9۹%JBՃ_lM;2~k\??)|7òQ:rsb(r/{K?;YOEjEB)ES6pư*񐨶3N@َkP#kvf"|a&msoa_*jM(湢 b)Vl^ ͢&5Gf[[JWT4J_XyqLY_&>\t`w:0.! ,w˄=XlxOQnr* v7Lo'.q2 ZPA1Lo$EWoTL_.F[v <}.:v31k7p( x)FqП[W\Q0zRsuxxn4X%u0{_ L$\.VF{ bJ>QDjJu>ݵѩy&MꐫP|D73)ʾ#Rׯ916P=1ƾFÏN\Տ"A vmRbgH@b?N(SDA斖Ů_ϱ*5[ ئO+Ѯ9{:=Uxľ> #C8؇K4#[4KqXK0e P(H(׳ :%[]r¼ fRELBE + *:\\ɐBk; )\1+VK2'Gο?xѨh}T5o!VJ𺎴fϫCDkոJ!_0*X~oƸ`K#g&)s}"Q 9ՁOҾ׭zL *YIGBYE)qW#;X~s/:﷭땻{ͼ/p^cgU9o^^mH4џ($, GѸ ߫<@_D„qb>'Ʉ^Kî&ԘXy² &νzy7ŨU7ZлK9{ǽ.&̭s1-fi_VV~ &zSr9ŝni1L$ &'V[&۵PiT=ZSTq 2I}Bglj?\&9wd?,{(1|a 1C_LE3Ce<'> N}LwzY"%W1{10o*ҦsD"͝rv%NHtfHVI}`~y@H8ST :LiuJ`Ztj{p]5>֛q4<MlSh7|7dSpg"Jy4V}ת&Paf_}%Q=sКQR͋l8جϗniO/}35Y؄U.+E!iӂ /XEI }%lo)?o­X+ lG(tu\j+v=  lyڅ|`ɝ|S<]ψ#HD7; F7W̽OyvP_C[Hz59@?Y&X=8r|v`,=[ ?!<)G>/j-,kcNbayp -<! ·bpr9/WuEM 7ya#Mw^}x>Z#'6h@Yw[r:q Et+#{IFPH@j[-?-_%&T&Dru!(B{#;ԅeoQrͷT}s(H: _if喙ѐv:ƒp֑T63[:􊰯;k=t.^ܴYp|棇$ѧ8U׃ ZIzv1+z8T}ttj3ag4„ >c]|@X?Qz+;T(Y;4Ah)(k\D, t_gҢhzzUE@fO"G?{MET32 ~bvԝ>/Bά+`Ɍ,~ XSgS0ꭾKʍ~_E̶BiFt餰Ⱦ 1S IvsG/ r~Gxpw&/N=Ë4bnJyhK%p~ZŖSG٣Ǯ1#3}*ƉS=#T\Fߧ3Çn'x,u2?Cĝaf(*Yo@KUl$l{j$4q \c"ao3Rm/L6c3ՌI:ѿDi> >llWԆ8i+Х)-2-ʴ]9b9J1ž&^g1z`,2$حkv|g}}+"EG7ӕp*)~W-}oFX@J%2p[v!.(!hF;٭p@ XC}޾Gb0`s2$@L)ћAZ`rǼl ޟ "<1%|C`'ɺ|DZXL:턵 Z\+jA;aa#VXgiƼBCIrOzUKV-5` 0=~0A]}6VG=E4$=@0A4y*,}mtX/+b%'EQdxL>XENc&.\fDMKȔlMcctpgqPmA4iU7 K KD`:D7([E ǂV%E~{ g U&yFRH&ucGE_>h[= 9g$=Q2n GC[~ZHemD~E3fwO$0P+Q3ߪ )걸!s  됲7*Tl@=/lW|/[) bcfB|.OVetѐPNpr>żzsxz[9\:AqsW+e TFM[;OENTrT kcMrbGF݁D⁕dV÷s;q-cJ$ __@joE]}`uCo92%2yz-;cnQ''c[L&_ؤ8wL9ά 'H\.)a} FPɒ&֡m9kKaiI8]5l[FFϯ۵r0qJC?R;wi9:uD}1/ V{t܅(NC&2h-̜$;*3//Wh\td B L*Xu7KUQdk9ȍtή"/ &4hr>3V͈Zz1U#jE޹4J6c š9'y!|SA/hzvLitW BAZf˚K}cN$ CڐtRX'o UuЕ0fkTS*>qpg?#nˡHb{h͠߄~7-_)rCŁt оyOG#""{`&&Fcϔ8X9''V &'aM-S03ŤvkgiDW>vWARW BLHI*ӽӛ\a[V}6Vy#2nC;J} žBרm{Ş\o| C ˫`""Vp .\]< *hGRL"^:Q!)0e&4pesf*ru5p;edk Vq{ᴤ+3E ^ A :bF"w%HP^s'‚n,ñ E&.筼_5Czo3uW_@_ m]ڨE C }I0Ŵ#26b\dő\ ?DQ\H:`t EMw f+gnr2HͦHY\PdQvYgs;uN$>NMP(>f0BN+)f^ ibV<:"j WĈ6C&Tq_ʩ[n#uk,[S(3kA$[ՑMߙdxC2Ɍ4D{} {.?׉Lt&JR 8?TOeY%eZbywÞkWK0qH%vl9^i8\a[L8PukVbShuw|];Ee>ʎ0{%pZVAClu@[ ٵ?U?gҾ/҅ɯBJ ʒ~8shR<5 PX-˖@RdEڕ6 c/:D#j7@C,JK YDDTuY9Mr6d,8}Ny'W屇Z,zen7ԵwT($P qXč/j(!}:C+a)޽mYU~O6"vЊs&CI[L8F(zMMja|~}O=!t"dܓt,aq|U`>p/*wcoX<-u 3.,}C|d_-V~ؘlb *&~9jQ(ş-{7: ]zzo{[Kv֊Iw7&'$#JT*I;Ԫ ٤5dR@JXξC鉚4 ]xL:"t{Y#SOSwd=c4iG^RեYh9YQ !;QM Ni.DI/M7ljުPL j~ Qu5G!iSެ"5лͬWӦU\MhT7>|椹.`TO?^Ir}Ha5sdy+6[ɐ ך%Y1İMzEho<.b͛@|X'egfYgn.ZGwZvPiniJo}뉊l+Fdv %zכ{d㽟r]ZշPbZ OC38*_1j(TLRchKjQl6Ec{ { 3 y%g0+Q~MEtUgg`#Q 3~Jt}hDKN&(W^>Fa%GH=Fޝpc:?3M KI/Z6F#D#ޢ H%kDe~eo>Ia o{Q\'(9tDznEA/¿=IO `ʚ 8ֆ$,QI᲋&&ǿߒX1ŰܝG_u^٭;_VgjS%e= \Fĥ/߾ZC.&,$tL&x Kc-Mb=֠6[tMY#Du ycz;*Hmq` K'RDRY 9lNjy<ϚHhLo$zi IG~{\X$i^"@P{~eκHRcΏ$]ģq%S|(P}dM~w{8~4Fod=g[h.ùB5Xƥr15P?}54xSࢌ=8z:|۹\9,*S?cŴ洯o7 B]Y{S ~LwE츰t0,_XP/VVmP=C'pVꗱv_{.85휴ǎq\s)ˈ﷊!Wg Ml{Y,8ez9:0g% JR;I%Gq M< [OoÇ.2u.^Tw5^gKZ$[bhu37P!q{mɓk38Tڭ(x% ]W{i/1]Q #}Z߾08rh:$=Hg[6eA+xcm8{k(3{Pya2:sZL!\meIEchG|>\Ӏ.ScXF71[NͶ^U,h rGbСv&ZpDV"9WNBv,8?q\(=ק9H`fUb"ړ-$(׳+YT2G:5Ϫ)UGs]Ԁd#+1U$tr V|42W5_]E l,)OmXa虨 %4+?7trR{ȣfa{T7hj4/N sd0ND'~ V;-L s`!҅e?e?r`n/ ׅdh%P4ެtuюp`Vxz b D3E쿽b _!eʥM(l.)+?,);y% fW -]`%#ʵ+tBپW32@YlO}2ʹyPSE'Hp 'L oΝH]bm4b+KmrϮ ovyv2 &2vd<Ԫp_'| . FC1?hWZʪ~Kӱ2y_^^ij\T TnEYHnWyT"Yτn4#Q@Q#GXvp,Mʑu\ e+{/݌ ]1n 2`DzR"̣~ZژȧQI5tT [%u Ե@HOtqfyg F}3K4:+ee An$!㻧0ěp R7ax4^E}+Ԫ#B>{m:Dp&b`oq4|_o0 v{X2kx$Z8fgR- zT3i+^n}X @)kD >vh/Gd{X^ ^V'F0 >a#O=9ZyњuzCrZ#t$b״Ԯv}8\ƞb@~&.+#e^N`d)||ϧG)6k@L l>Ir$G ?StVrPP6<0n#-.,qjyTGٻRYe2uJDIS0O]$AQ/11.pcT3ij1Ғ ㅙ?A,t`_H]ּO%dJԙ0oD^_b&XI3q-qr]j_<q"_siR̽`DBv׌j._7~p<~ITLH X2'xj`$%WDR߁TO*~d}W&~d/O}w$ޅIj?R~:m  V$<9N7E`dai$L)@Ě{;ѰdW>GP{'+(=Ne-,c0j+{B@Cĭ<+ f)7eN6/V!3—&"d]2vGj@] y(另)_Z@; !蒚Ft帼+e0"uu$-g@nLk4{e0l 2Z3EKkENHvBic&:hS׿Ay- pe 80ik^X$#(}(f=/q0DN M,+ kVBM.'(OC'`+y%)Wړ_f%'M+Z_7n8U'e"l/f,j͸2uƜV:<˂{raX`*an_ )!yzfSnfHdvZcS8D*e!ۜ9%iF1Рh+B[ s@|DA!ׅ9GLgz:ԵS0|M с?!;dݪٗ_fͩ9D/v'-;N:d?l{u]a720|zh_j2m++\HqfeQ΂ҳٝB-§aRCCr^,[DK{ц1IP4/161r>{*fZg]$ Y3'fLr^%̜ή_T,OvE#U=5C3kwJPkq9n;}-zrO2CS_>(JX$'l% k=vm xiW;`LoaՑO} bK/yCQBr!cǛuHsF 17h[ D`o} [h!7'Dle /=5N핮iD}]Uzøt,bDx0-QȎN@ATl-U{:b6"GB_Bc'jVm~qVu٥h))j;l#DzQ4XA(>/c52bu$dr69HC3+Dh"N%(*O2n:mqR3{E 2$* AR+"B±ӝ #w]b_p)')NBOqM?rtC/?Z~IB][m&"ZҴ,v 59E^,:؆r{y\ 0I좹u /׌Y`ԇˁ"w@p/M_]pm2Ltڐtxl֬5F7\kRk(ҥEp~c&yzĞK-ir.(d8J$e׹Cpݜ. BdD VlQHK9 lj-3s)CƄl^ [qBੵj k %Y^' i,\B2'յ1o !|fH&iYk+i~K4^atE- ֈ84..AI/I+ea}sۆ>L2v{}ed+5tf[eSsȉVز.K7?֨mOgyO!X nfq*Q'2y2Eyߑɞ@^ly(>Rocpn1>PmDTznz(vE 5b^ۄڼ9%B3(~(<^{0~ڻα!e|Y~#I! |zs7T.A,]wgß(-чʋJ@Z l-y$4[F->ޢDBˏƀ7eWOK3 +"<IL `"Jtm!8).kl |ϴΚЩgPČK%TT& tHGf "zK`cBip BM3fWU^6xc"p)h;IbO6xW۵RjdOi=ooVF| (2Fr4~+#^:tu.YN/A&fD݁ YC;Gu]ɌYw;@̳#$s/SQCnY>PSr)2_AV k:Z]FHCe=;vy;t(v(#h0BrA4ṷ P P#7` 5<08Ή[ ^ Ė`'jazٷ16qi3 ?H#ORoi7\!JОkbwn-j%-(XLXؙS3YvcG7 VV?vZ,T0߼n^ni]z%u v_lOz|&Њ` k u/llZF`Q7r[R=:A}_E' ?t$a CoPvQƏF,'qE+GdƁJ]+W-3D)t0W>vsV@L Ozo.YA^]SD_&i 1JQ^&S\"~*i0rs.#Ϋv (NuTͣbT .SpLYƳ $ت ӪC,5$D[H;f[͉ ]=2ě1ͫ:^ ̛Tzes!U/Nzv異?.M鑱p tEhָmO><ҩUַAN(JFtbM"(dv/UX`booC'BV+G k 4N eҧY}ZYdN>͇֑C&t67MV89GW(p|TP&I2#$T+%=uARtpPۘs(Ө IkѢuC~pK"v Ӿ=W[H'e> ]p5~&|d(A i.}ꁱfE鰋qy3CcQ>N)uPmCq%f)KqJ{JKs6b5w),b^jY(/ֻo\8@D i`L ߦL`Q(~n*D K)@naaA5;_AsY?7qalH5JM{CCUq~F8Ugƒ1IrCmn-).%%LWR0a`)0QuzQ2WDA {.R|huD>y"bٗ)KZsK +:k)FM{(HJF$'{s9B=* _ӣqj#QkϬk\?iM!`#zYVC#OaOƾɐ`W$VZ )`vc5UثY򙡇uBK.&[Y#{צHS(/uS?NXؐ@^sY$]U_n˵*$&Y Xn`8$|YrI|V%de) ~/6'V*E¯N]k2o+uTwJ`k/.69jX֝ S8fQCulty${N5Rԇ܏֨6ҾޙF][fĴ}﯎{"_*\$BJMx`vEl$OTco5uߌx!ޢ -07rQgauuwXCY[NQUg+( +^1eS[D:%xbn(;E$H@ts{S2@]~D[اs>I@n50#/8g/b;VgQU#F$S+hq ;§Y[E^6ař^ާF(o,Ȃ˫D! M㱘(JƷ_EFѫb |UT6[&ۧð@6ŌW WM{A 1YgxvǬu!vKug6!,> 6z3KU]mze)y0/= }W/+=EII8_hrp9&?v|%0GՏyke#^D:}*b?K={j#AyPzFpd;c`$D'dW'p$۞a} V2\ݫI@6'1]|ΜG-I%즇?HT;ۍݨSfwMUGz@GfbZɟ5E#KMVpl^jp02m_+j{r"#<'cn5l>ziY`ˉ]blœ tGl6%'(RPa[;G\r\ T& ;3Se驰5aJIVHG[=QtX!o\ij.T7ohX>0uDb_:>ff4+'QƐd% aM)ƒfp#{RZaK}x!gDW d d2>FOVfwINYƆ5Ġ,k[U;U,/ߕSR(mxrF8iq ?<ﰀaK)M4d=+p1 X:4Hg#$}mluW"_=GZ ~0p"G]Ա&m?c9_lG$ a6[篧XcvTeb=o ]:keeXуFyx Ot: aX D|5ѯ>DuSxBRh#o?]jn In ܊#|CBt2U˾?M9 ?~k:ELsP;7iGoAqt2͕KvA說؝p \ۓ SAcVČ`Cgg襆ց&=(5]rBQykGAqO54*[M _e& Sx>-+γWu6-q_Na?XC Xnr٥M\Dz&ƕyM!=fFA7 YڱoACS[p{T8N{nn$R|E?06zm42͈!+q$v[CS04DO '_̻@$*u6(EKneìVFnm@~Tj0HXO%ϔ ˚1+l|Geݕ ,$ 0 d+xzǭ((_a%JwvF}J[h^v(VR𸅖-[tUsTZ٘m?D.EV'Dil%zzY9}JݣI,~VH] &! 9"ewBF`~OcWڌJB]L5׮p:.uFȊZؘ'ց͏{0}e5Sl\=9 n>/=i;gO9ULu7i> l];n݋dm&a,KxIƐcBUCTDZK*7?]0& 7B=+f7Vk93O'~:` `l)9dE(RdGҰ ^s߃:厕NiW;HJij-!;# YzANMpXߴ}QU0L8SE1~iYP>?/Ƶ:~n@A rܑTM/Ggš#q% QI AO k) d/\4IMR*qX ̵8dz*6o˅z莖ɬiCYc:wQc4}2!SP 0ΐvsTY^PRy"9ԗ+:MsXk:(LCP)-pٛh}΄%_x@^,&|E>r,^Y/92#hv^^oᔲX'2~P|;24j;:yJLQ$,iux0ol+,ڬ%5+xd8%B1/₣$[熞%B}S#, B>v&a+ꁂoAGSW?: fizM !G`f2/ S+VzZx;&x [2#y,9yp0mU!C;[abmgѩELϡ *Șxg}q!qd 34>dme5j*U.IMEsk.OĐO]f_HG$BTb>D ͇4eá,2lDnJXİ~3Do,a*~(\}tJx,`9 j+oz;W첹E=;:W5糺`D|C<:ndonP<*S{=K >r ~FPij>Nݼ<\>g":$F?1 FO +H)4Wm6 | ť%EJmN&_0 B%>\0bi.9}=iHQ2G"6?ŋuʘ8Riok\ݴza*pekk<|..\ey-0c\$mg r@-'rٽҠQP0+ykPYȁ7NĪpyʂos(]Z [hL]uTH7m@؟"J>+`$v66!C,8TԘ i?ea%1~r5j{9l<s pMXexp?D*b*>P|"8\Ƚ6DIԪhTW)/().Doԓ@ {3iI]&:.`(Wʃe`lB }UYq; ,]A78!)^T$ǷcαT%**Ð2tP>역]LD_?ʉXpm~Ɇ'B.&xa",}I>Nc:ϸyb M;R^ECx~ޫ~p %3UODO,t-_ J.).!r\ ag >+AJsh% xPѳ FVrd.07aΉb9PEHGs mb;Bk׏1ɢBUPDt޳ո7 ckndAx7(8pho BD$@iU;H%dAmYrQ[,u h<7Y@!mN2w9S=SLEb@[m2Lk/ȓ7 r|pD;by:P+72 fg).XLO`(OI/H"tC=h6rà"tL K5 Rl0olZw.ZӲ8n2bƢhUXͬn %2|{]{t-pyD'"yFQCñ6tvIb!dñd.[KP~+W`3޾zӠ}1{{pv驈|=ö6[xCl\+ B hKY/[ZeM;lv3[]IkM}_c=$T8qq=, a`u=EXBJ^(eF 9Ғen2uM}Ir (G{7N&0ĭurP+F)ʎt(/*=xz|a\Q .䄜E'mtAρ~W+pYmR+] ~>+B~$E!xT\v7a@f9[4 3"P`}nIa~8X#aSl ~cs\E1s(L|:M/@*nhqOuu~gAڜ )9>h6!!~Zѐ(&n(:26Krtv#D{/aPn1`%]*ȗ+ـbO<û'"nl)<؞AeHHXjH)㓟4"KCM Vŀҙ DYǹ5bip);f*4%|\@ytN9KEN2@crD qr}d8} ;c! Q(A!˜/cVZ}L}RHBE2b-O=\7^>5e<)FX6 :^xt2my-I *2[p D q`]*k@<Ǖ7cck{_'6˶֏FVٙP&g謞^՘fyb^f!Qvpvi~LIڍaf6\;$G՝J2t3re;1X3BHyW4qxxFd>s2f4A'p-B[R_eCFG[ Sd/P I5ov])1$s ajjD#=ШnM>\@Ll_SkU 3ee]8dQDݞ(iZRL'Ӽ4Ӱvbu9e;VҢUQ!۷),`Vk֚]=kZ-Z=Qk%g!9,;}X1Զ\/`j7bq!@Kѵ_'UuO)U̥#,+fsذ;@2T=NGޥ_ ^hogm~P#TCi^Tu iiG&>hw߹«-5*d|>fTN0[%?1{Gy+Oh?n⣽D,#=e=Es#eë`?EݢcqxGC]R_k|ݮWRLIiUs Z:pXViiTqŵ@| ᮛM#W^-jevNh\ E sLr]:ǻx(SҮ; E.d9+s_^LT-fZčWN,g3g4=[9ai3\%;RQ^Y E<% ɯ#I-LS>%P oDoj#a<=54w}d (;%0$YG$\8xJ|{$YO$=J p/eJdsF0۞\ײ" >wz} rmFw_VI^$OT<ԈfbV?al8Hβ;POheFg-`%ȃ\@-JG?@; X-! ZA1,ƻ\QU\` q{u+g}?ԋ03ҦLhV"h\rR\S<xZFV er\4qʹB:9EhxϪ[9= 8+Wdq2Ԍ uaZRO:)}zB 3Mjd(l׬&cxҢ6 '}hǪo^8~jS?"qgM/̵rUOx:hɳ7%wY|*eVw,Q޾9HOXP7%k9 ЕYf@<vjCtצhω\%L{?r uX\.-X <7e ?=ټ31p7_pZJ>U >5(*^kW"73=M&M>dsUjomJ7i>Bl8o˽!:Fcj7% iRM}mC#>E--/MRezBʺ촥݌sW[u qRVp˿V#k&]v\nj^Mb( JⶨD0~ BM&z#5)m Jyt8z 9JRBz-SŮdc}?fvzڦY=L+T.y߭xꊰ$ye#2mjTO y>e'ijN7k?TUvƽ( 账펗s|MsP(aQ²p(}a}`$X 7?,6*^puEtWS.#Z`RTČp24My.xuY'BE!lLiRS5#jiC$w_ $],m-FwB2eVTؾ<"D ۹2uJ̘[\qekuKO*968 ܞx1.@] #Ws,İc HBAžzeW=%JE~Og ?ͱҨxR67ʲSuG^4%].c7j bW̳{Y s!3"4 alyM$/zP5NZI`&ȱnhZc9\g!*M;͟yl"ӓ~v~z w eDv&&D"YOx˻4%""xsrY;r~oOWS U*HިE]x,5]sF0(8UY ^Ng2ں,D~F8%'0Zɻi[з7t^˪6T,%M-Pn聶Ȓ>h_N5X2nNq<& kߓJ@2RAoF! ǯ[7#x|sZ2hgl B]\Z Jby("I4Pә[U^1 XӓU58ӫLDK^Dta(!a&pٍfpaVϜKTŭlE@vZ SmN Ǥ3K찑\dAC#"ΰU!Y\a oI` ]Cؿ*A)-!0}$/ RxɧY O|kGO)m?Af$ߟ+BLy`Rc z[z TI;zćZ@A lG0ћg&W8v\9泾5$lR<4֨/4MH%k Y 4?j8GhPݝzҁS^4~VI!Kw6[ӛ|V& W.4i,˟`UƓ]fhWwlZ(7eOWf!07-`ŀ#Ee˅|uu YZ