mdadm-4.2-150500.6.6.2<>,dfa0p9| }r8-,*X".ZD/Oo*K-9d UWiˀvL91Wc:m5utb_Hkw l}}5Ѷ*ZcH.VaKZ?Zd   L  ?EL ~77 7 d7 @7  7 !T7"07#C7$V$x7%T%h!%!(!((8(@9)@:.@=I>I?I@IFIGI7HJ7IK7XKYK\L7]L7^PbRlcSdSeSfSlSuS7vT wWD7xX 7yX#zYYZ8Z@ZDZPZTZXZ^ZCmdadm4.2150500.6.6.2Utility for configuring "MD" software RAID devicesmdadm is a program that can be used to control Linux md devices.fa0h04-ch1a*!SUSE 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 || : ( 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 ) || : 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/allR,,A GZ@ F9~1vzV O--e.Vm  F?U m,A큤AAA큤A큤Afa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/fa/a a fa.fa.fa.fa.fa.fa.fa.fa.fa.fa.fa.fa.fa.fa.fa/a a a fa/fa/a fa/fa/fa/fa/fa/fa/de65e7c12626c8650119db1882680d4db79d46896976919e413de7261961520fbd6565d1f12c78726f95826d090e82cd2b5ec5e73db029bbc5d04191834bc6a974749acacce7cfb528b21470cec1902b761118573fe3ed5f3e3cbb27cbafbf67d789d3d1867df89d312d17cfff73b0cc4b47379486bb0ea4f059708dd2012078bd8f33c83deb95ed60e2983e2f7df2994a086e6fdd505a00f168db6ae7b856ffd3957a71e448cd8425d585405606ab1c5f27cf72aa092c0cf1a9a9fa46d2036fa73495654d7d02f0b3da7fdcbb9e6ab35e7777478818f4fb226966efd1d0ed8d1d23260664142e2def5f249899645ed5abc16fe158bf586e0ee12bc0c3b6d70c0bc69279653d690bdcccd412fb613909578910994b926dde53ad63071575f0fd615e8af9d8429de6c1a70eb418653eee2b201b8061d92526cb4b2f763be1d22287befe5e61b716be922ebd2be3bd05fc24f512082a00e38f7742cc2b7d52957bcf361de81af7cc2962d7eaf79f80ea64767390a6c9bae0d4eadda50d8589a2a179f5ab1e4c7ca00916e1444d8d47e1181ff6e9bd5fc8a511bf84a16a7ca833ee94c8d7c15150c5b9c826eb213217c30035733103349ba38d06fd88e5c6bc39c41bd0e53d55ea78b78f0b442c2ee32ac9593ade4dc3e6e2065f0984ba522e1d53b7a0597152d10e09dc4f6b5e9deb85dde04b48ca19bf458cc8e0679aa66c7bfec7a8b98a69aa04ab96fabe36591074b5106e0a6bf9a3db6b6abc3d685a20c28a503e39d471c29659d5e67e690dc7ea543d557d8f0e8f3169cf1f3d01b367a0ffd82179d20dac72aa7c9536952df0d8cb5f92d15bec37ec2c290083f135b1bcc1d72b3245d3f6f6fee432aeb23fdf7c0c2ad5fe2c1e197c757dcf1f8384515e66da08f4125c0a269c6a67b3757b7d9fd09e14c6f67bb8c7ff1e541d532dca4da308a09f94e7c1c57032e19e3ed4f5e8c18c5ed533e47d35d833e608cdf7804e3207ec768327b0e324eab80693a68852d342bd19285bf7356753e566c5e179f889902a174c2f7e71b4eb1b1f3781e9577564db0c7b9b1b5bafab2f6f2ce99095a3e6f6d62f227eda2151af5db24ad5e728ffc437a3d672e828a1e7b81bd7783bbb76890b029d204368a9be769d3ff580110f0e7742db48b1b026ec56a0a556e786dc763e2231d021ebcb1ac6b81b2b86c7d53a23368ba6f38b0f5f347278156f9496707ed85c848e03daf5dd08d0a66e448308ec62df3bfac5e8529ba10e077447590676b7918d24d93c8eaa4b56926b83ff31493b122e688e44fb967258a36752921e40b0e7e1ae3303a4a293d063f4b6ae0a95f2f5590fc184371cd20c6b6ac9ac0448ed2dc45a3ca9b523bfe870cc904f143139c50f827ad981314e654d39ddc46c0dd4ff25105ad19addefa46ceded4a1e13c43d45441729dcf14d6bad9e656f25779970c7da4d4620c6b9af103a91a3f2eea5729c496979766e5e0bd858c7732fc467a5756529eb357d4ed5bee9c8c234e812454211b2e12ef75a4489583dcd5828098c7845bf48876f3a2b8d66182bb0e893ddbda1237c68fd1c6cab4a9f27bc2a41b759d69136223ee282ad38013331a98c864dcd6edaee4a58f2847336eeda765be954c997b8cf79038c7fa64223c46505f1e8bdc65937ace772cf423b314c5722b29ee8a268bafb4044116175f6155f21c9e6bf843fada369fbf0fff3d0c6892ad74cce318c0521dfe2e1244449e52fde377fcc5edca1c4eea179d208945c7c3caa84969b8c5ff013505a35eeb1c1a8e09629fa471eb3b9e05ca138d68177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643efdebca020982dab2413f0e21186d8a6064fe95477c63cbe758611611fa3e34d61aa07a330c93a980cf7b290fb637202e4dacd00645b8b9d1e07a805544437d37c63974846cb9ab8815d924c11e16135957ce8883fc01f591e24776baf737eaf9f43b6c92cf23e740ed51d0b828879b46bbab0515e7611c2d11735743d7f81021c318d317bc193e07e27c83dffc45832ca1aeda1f4d99df96e79e16e41a5325c/usr/sbin/mdadm/usr/sbin/mdmonservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootmdadm-4.2-150500.6.6.2.src.rpmmdadmmdadm(x86-64)@  @ @@@@@@@@@@@@@@@@@@    /bin/bash/bin/sh/bin/sh/bin/sh/bin/sh/bin/sh/bin/shcoreutilsdiffutilsfillupgreplibc.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)libudev.so.1()(64bit)libudev.so.1(LIBUDEV_183)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3f@dp@dFo@d(cc@c\c\cc@c(Yb@bb4t@aa]a0`f@`f@`Q@_T_v@__K_c^@^@^}^^F^^F^^F^^F^=Q@]{@\@\b@\\U@[$@[dC[dC[dC[3|@Z1@Z~ZTZLZ%8Z Z@Z ,@Y@X @WA@W>@W)@Vii@UUAUWU@U@TPTи@TWn@colyli@suse.decolyli@suse.decolyli@suse.decolyli@suse.decolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comheming.zhao@suse.commwilck@suse.comsweiberg@suse.comnfbrown@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comheming.zhao@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcallumjfarmer13@gmail.comcolyli@suse.comcolyli@suse.comnfbrown@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comnfbrown@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- mdadm: define DEV_MD_DIR (bsc#1226413) 0062-mdadm-define-DEV_MD_DIR.patch - mdadm: refactor ident->name handling (bsc#1226413) 0063-mdadm-refactor-ident-name-handling.patch - mdadm: Follow POSIX Portable Character Set (bsc#1226413) 0064-mdadm-Follow-POSIX-Portable-Character-Set.patch - Detail: remove duplicated code (bsc#1226413) 0065-Detail-remove-duplicated-code.patch - mdadm: Fix native --detail --export (bsc#1226413) 0066-mdadm-Fix-native-detail-export.patch- Grow: fix possible memory leak (bsc#1208618) 0060-Grow-fix-possible-memory-leak.patch - Grow: fix can't change bitmap type from none to clustered (bsc#1208618) 0061-Grow-fix-can-t-change-bitmap-type-from-none-to-clustered.patch - Use source code mdadm-4.2.tar.xz from kernel.org version for checksum - mdadm-4.2.tar.xz- 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) - mdmon: fix segfault 0052-mdmon-fix-segfault.patch - util: remove obsolete code from get_md_name 0053-util-remove-obsolete-code-from-get_md_name.patch - mdmon: don't test both 'all' and 'container_name'. 0054-mdmon-don-t-test-both-all-and-container_name.patch - mdmon: change systemd unit file to use --foreground 0055-mdmon-change-systemd-unit-file-to-use-foreground.patch - mdmon: Remove need for KillMode=none 0056-mdmon-Remove-need-for-KillMode-none.patch - mdmon: Improve switchroot interactions. 0057-mdmon-Improve-switchroot-interactions.patch - mdopen: always try create_named_array() 0058-mdopen-always-try-create_named_array.patch - Improvements for IMSM_NO_PLATFORM testing 0059-Improvements-for-IMSM_NO_PLATFORM-testing.patch- sysconfig.mdadm: Remove ServiceRestart line to mdadm since there is not such systemd service. (bsc#1203491)- mdadm.spec: create the following symbolic link in /sbin for compatibility, /sbin/mdadm -> /usr/sbin/mdadm /sbin/mdmon -> /usr/sbin/mdmon (jsc#PED-1009, jsc#PED-947)- Drop the patch which is reported as regression by upstream developer (bsc#1206139) 0045-Manage-Block-unsafe-member-failing.patch - Add jsc#PED-947 together with jsc#PED-1009 in mdadm.changes, they are both the requirement to update mdadm to latest upstream state via different requestors.- Call mdadm_env.sh from /usr/libexec/mdadm (bsc#1111960, bsc#1202090) 1004-call-mdadm_env.sh-from-usr-libexec-mdadm.patch - The patch (bsc#1111960) which fixed rpm check failure is replaced by the above patch, 1004-Makefile-install-mdadm_env.sh-to-usr-lib-mdadm.patch.- mdadm.spec: remove "PreReq: %{_sbindir}/mkinitrd" as it is unnecessary now. (bsc#1202352)- Update mdadm package to latest mdadm since mdadm-4.2 (jsc#PED-1009, jsc#PED-947) * Only patches directly change runtime programs included, - Unify error message. 0001-Unify-error-message.patch - mdadm: Fix double free 0002-mdadm-Fix-double-free.patch - Grow_reshape: Add r0 grow size error message and update 0003-Grow_reshape-Add-r0-grow-size-error-message-and-upda.patch - udev: adapt rules to systemd v247 0004-udev-adapt-rules-to-systemd-v247.patch - Replace error prone signal() with sigaction() 0005-Replace-error-prone-signal-with-sigaction.patch - mdadm: Respect config file location in man 0006-mdadm-Respect-config-file-location-in-man.patch - mdadm: Update ReadMe 0007-mdadm-Update-ReadMe.patch - mdadm: Update config man regarding default files and 0008-mdadm-Update-config-man-regarding-default-files-and-.patch - mdadm: Update config manual 0009-mdadm-Update-config-manual.patch - Create, Build: use default_layout() 0010-Create-Build-use-default_layout.patch - mdadm: add map_num_s() 0011-mdadm-add-map_num_s.patch - mdmon: Stop parsing duplicate options 0012-mdmon-Stop-parsing-duplicate-options.patch - Grow: block -n on external volumes. 0013-Grow-block-n-on-external-volumes.patch - Incremental: Fix possible memory and resource leaks 0014-Incremental-Fix-possible-memory-and-resource-leaks.patch - Mdmonitor: Fix segfault 0015-Mdmonitor-Fix-segfault.patch - Mdmonitor: Improve logging method 0016-Mdmonitor-Improve-logging-method.patch - Fix possible NULL ptr dereferences and memory leaks 0017-Fix-possible-NULL-ptr-dereferences-and-memory-leaks.patch - imsm: Remove possibility for get_imsm_dev to return 0018-imsm-Remove-possibility-for-get_imsm_dev-to-return-N.patch - Revert "mdadm: fix coredump of mdadm --monitor -r" 0019-Revert-mdadm-fix-coredump-of-mdadm-monitor-r.patch - util: replace ioctl use with function 0020-util-replace-ioctl-use-with-function.patch - mdadm/super1: restore commit 45a87c2f31335 to fix 0021-mdadm-super1-restore-commit-45a87c2f31335-to-fix-clu.patch - imsm: introduce get_disk_slot_in_dev() 0022-imsm-introduce-get_disk_slot_in_dev.patch - imsm: use same slot across container 0023-imsm-use-same-slot-across-container.patch - imsm: block changing slots during creation 0024-imsm-block-changing-slots-during-creation.patch - mdadm: block update=ppl for non raid456 levels 0025-mdadm-block-update-ppl-for-non-raid456-levels.patch - mdadm: Fix array size mismatch after grow 0026-mdadm-Fix-array-size-mismatch-after-grow.patch - mdadm: Remove dead code in imsm_fix_size_mismatch 0027-mdadm-Remove-dead-code-in-imsm_fix_size_mismatch.patch - Monitor: use devname as char array instead of pointer 0028-Monitor-use-devname-as-char-array-instead-of-pointer.patch - Monitor: use snprintf to fill device name 0029-Monitor-use-snprintf-to-fill-device-name.patch - Makefile: Don't build static build with everything and 0030-Makefile-Don-t-build-static-build-with-everything-an.patch - DDF: Cleanup validate_geometry_ddf_container() 0031-DDF-Cleanup-validate_geometry_ddf_container.patch - DDF: Fix NULL pointer dereference in 0032-DDF-Fix-NULL-pointer-dereference-in-validate_geometr.patch - mdadm/Grow: Fix use after close bug by closing after 0033-mdadm-Grow-Fix-use-after-close-bug-by-closing-after-.patch - monitor: Avoid segfault when calling NULL 0034-monitor-Avoid-segfault-when-calling-NULL-get_bad_blo.patch - mdadm: Fix mdadm -r remove option regression 0035-mdadm-Fix-mdadm-r-remove-option-regression.patch - mdadm: Fix optional --write-behind parameter 0036-mdadm-Fix-optional-write-behind-parameter.patch - mdadm: Replace obsolete usleep with nanosleep 0037-mdadm-Replace-obsolete-usleep-with-nanosleep.patch - mdadm: remove symlink option 0038-mdadm-remove-symlink-option.patch - mdadm: move data_offset to struct shape 0039-mdadm-move-data_offset-to-struct-shape.patch - mdadm: Don't open md device for CREATE and ASSEMBLE 0040-mdadm-Don-t-open-md-device-for-CREATE-and-ASSEMBLE.patch - Grow: Split Grow_reshape into helper function 0041-Grow-Split-Grow_reshape-into-helper-function.patch - Assemble: check if device is container before 0042-Assemble-check-if-device-is-container-before-schedul.patch - super1: report truncated device 0043-super1-report-truncated-device.patch - mdadm: Correct typos, punctuation and grammar in man 0044-mdadm-Correct-typos-punctuation-and-grammar-in-man.patch - Manage: Block unsafe member failing 0045-Manage-Block-unsafe-member-failing.patch - Monitor: Fix statelist memory leaks 0046-Monitor-Fix-statelist-memory-leaks.patch - mdadm: added support for Intel Alderlake RST on VMD 0047-mdadm-added-support-for-Intel-Alderlake-RST-on-VMD-p.patch - mdadm: Add Documentation entries to systemd services 0048-mdadm-Add-Documentation-entries-to-systemd-services.patch - ReadMe: fix command-line help 0049-ReadMe-fix-command-line-help.patch - mdadm: replace container level checking with inline 0050-mdadm-replace-container-level-checking-with-inline.patch - Mdmonitor: Omit non-md devices 0051-Mdmonitor-Omit-non-md-devices.patch - Remove the following in house patch 1004-mdadm-super1-restore-commit-45a87c2f31335-to-fix-clu.patch because upstream merged version added in as 0021-mdadm-super1-restore-commit-45a87c2f31335-to-fix-clu.patch - Rename 0000-Makefile-install-mdadm_env.sh-to-usr-lib-mdadm.patch to 1004-Makefile-install-mdadm_env.sh-to-usr-lib-mdadm.patch. - Update mdadm package to mdadm-4.2 (jsc#PED-1009, jsc#PED-947) All important modifications since previous update to mdadm-4.2 are listed here. * The patches about Intel Matrix Storage Manager (including VROC support), - super-intel.c: Handle errors from calls to get_dev_sector_size() - imsm: change wrong size verification - imsm: add generic method to resolve "device" links - imsm: add devpath_to_char method - imsm: Limit support to the lowest namespace - imsm: correct offset for 4k disks in --examine output - imsm: Fix possible memory leaks and refactor freeing struct dl - imsm: fix num_data_stripes after raid0 takeover - imsm: introduce helpers to manage file descriptors - imsm: free allocated memory in imsm_fix_size_mismatch - imsm: assert if there is migration but prev_map doesn't exist * The patches to fix program issues, - mdadm/super1: It needs to specify int32 for bitmap_offset - Fix memory leak after "mdadm --detail" - Utils: Change sprintf to snprintf - mdadm: fix coredump of mdadm --monitor -r - Fix error message when creating raid 4, 5 and 10 - Fix buffer size warning for strcp - Fix potential overlap dest buffer - Correct checking if file descriptors are valid - Monitor: print message before quit for no array to monitor * Improvement or bug fixes for mdadm itself, - Assemble: skip devices that don't match uuid instead of aborting the assembly. - Assemble: apply sysfs rules - Assemble: start dirty and degraded array. - Incremental: Close unclosed mdfd in IncrementalScan() - Monitor: make libudev dependency optional - Manage: Call validate_geometry when adding drive to external container - Remove Spare drives line from details for external metadata - Don't associate spares with other arrays during RAID Examine - Add error handling for chunk size in RAID1 - Add monitor delay parameter to mdadm.conf - disallow create or grow clustered bitmap with writemostly set - mdadm/Detail: Can't show container name correctly when unpluging disks - mdadm: block creation with long names - mdadm: fix growing containers - Remove the following patches because they are all included in mdadm-4.2, - 0001-Assemble-keep-MD_DISK_FAILFAST-and-MD_DISK_WRITEMOST.patch - 0002-Document-PART-POLICY-lines.patch - 0003-policy-support-devices-with-multiple-paths.patch - 0004-mdcheck-add-systemd-unit-files-to-run-mdcheck.patch - 0005-Monitor-add-system-timer-to-run-oneshot-periodically.patch - 0006-imsm-update-metadata-correctly-while-raid10-double-d.patch - 0007-Assemble-mask-FAILFAST-and-WRITEMOSTLY-flags-when-fi.patch - 0008-Grow-avoid-overflow-in-compute_backup_blocks.patch - 0009-Grow-report-correct-new-chunk-size.patch - 0010-policy.c-prevent-NULL-pointer-referencing.patch - 0012-policy.c-Fix-for-compiler-error.patch - 0013-imsm-finish-recovery-when-drive-with-rebuild-fails.patch - 0014-imsm-fix-reshape-for-2TB-drives.patch - 0015-Fix-spelling-typos.patch - 0016-Detail.c-do-not-skip-first-character-when-calling-xs.patch - 0018-Fix-reshape-for-decreasing-data-offset.patch - 0019-mdadm-tests-add-one-test-case-for-failfast-of-raid1.patch - 0020-mdmon-don-t-attempt-to-manage-new-arrays-when-termin.patch - 0021-mdmon-wait-for-previous-mdmon-to-exit-during-takeove.patch - 0022-Assemble-Fix-starting-array-with-initial-reshape-che.patch - 0023-add-missing-units-to-examine.patch - 0024-imsm-fix-spare-activation-for-old-matrix-arrays.patch - 0025-Create-Block-rounding-size-to-max.patch - 0026-udev-Add-udev-rules-to-create-by-partuuid-for-md-dev.patch - 0027-mdmon-fix-wrong-array-state-when-disk-fails-during-m.patch - 0028-Enable-probe_roms-to-scan-more-than-6-roms.patch - 0029-super-intel-Fix-issue-with-abs-being-irrelevant.patch - 0030-mdadm.h-Introduced-unaligned-get-put-_unaligned-16-3.patch - 0031-super-intel-Use-put_unaligned-in-split_ull.patch - 0032-mdadm-load-default-sysfs-attributes-after-assemblati.patch - 0033-mdadm.h-include-sysmacros.h-unconditionally.patch - 0034-mdadm-add-no-devices-to-avoid-component-devices-deta.patch - 0035-udev-add-no-devices-option-for-calling-mdadm-detail.patch - 0036-imsm-close-removed-drive-fd.patch - 0037-mdadm-check-value-returned-by-snprintf-against-error.patch - 0038-mdadm-Introduce-new-array-state-broken-for-raid0-lin.patch - 0039-mdadm-force-a-uuid-swap-on-big-endian.patch - 0040-mdadm-md.4-add-the-descriptions-for-bitmap-sysfs-nod.patch - 0041-Init-devlist-as-an-array.patch - 0042-Don-t-need-to-check-recovery-after-re-add-when-no-I-.patch - 0043-udev-allow-for-udev-attribute-reading-bug.patch - 0044-imsm-save-current_vol-number.patch - 0045-imsm-allow-to-specify-second-volume-size.patch - 0046-mdcheck-when-mdcheck_start-is-enabled-enable-mdcheck.patch - 0050-mdcheck-use-to-pass-variable-to-mdcheck.patch - 0051-SUSE-mdadm_env.sh-handle-MDADM_CHECK_DURATION.patch - 0052-super-intel-don-t-mark-structs-packed-unnecessarily.patch - 0053-Manage-Remove-the-legacy-code-for-md-driver-prior-to.patch - 0054-Remove-last-traces-of-HOT_ADD_DISK.patch - 0055-Fix-up-a-few-formatting-issues.patch - 0056-Remove-unused-code.patch - 0057-imsm-return-correct-uuid-for-volume-in-detail.patch - 0058-imsm-Change-the-way-of-printing-nvme-drives-in-detai.patch - 0059-Create-add-support-for-RAID0-layouts.patch - 0060-Assemble-add-support-for-RAID0-layouts.patch - 0061-Respect-CROSS_COMPILE-when-CC-is-the-default.patch - 0062-Change-warning-message.patch - 0063-mdcheck-service-can-t-start-succesfully-because-of-s.patch - 0064-imsm-Update-grow-manual.patch - 0065-Add-support-for-Tebibytes.patch - 0066-imsm-fill-working_disks-according-to-metadata.patch - 0067-mdadm.8-add-note-information-for-raid0-growing-opera.patch - 0068-Remove-the-legacy-whitespace.patch - 0069-imsm-pass-subarray-id-to-kill_subarray-function.patch - 0070-imsm-Remove-dump-restore-implementation.patch - 0071-Monitor-improve-check_one_sharer-for-checking-duplic.patch - 0072-Detail-adding-sync-status-for-cluster-device.patch - 0073-imsm-Correct-minimal-device-size.patch - 0074-Detail-show-correct-bitmap-info-for-cluster-raid-dev.patch - 0075-imsm-support-the-Array-Creation-Time-field-in-metada.patch - 0076-imsm-show-Subarray-and-Volume-ID-in-examine-output.patch - 0077-udev-Ignore-change-event-for-imsm.patch - 0078-Manage-imsm-Write-metadata-before-add.patch - 0079-Assemble-print-error-message-if-mdadm-fails-assembli.patch - 0080-clean-up-meaning-of-small-typo.patch - 0081-Assemble.c-respect-force-flag.patch - 0082-mdcheck-Log-when-done.patch - 0083-Makefile-add-EXTRAVERSION-support.patch - 0084-uuid.c-split-uuid-stuffs-from-util.c.patch - 0085-Include-count-for-0-character-when-using-strncpy-to-.patch - 0086-restripe-fix-ignoring-return-value-of-read-and-lseek.patch - 0087-Block-overwriting-existing-links-while-manual-assemb.patch - 0088-Detect-too-small-device-error-rather-than-underflow-.patch - 0089-Use-more-secure-HTTPS-URLs.patch - 0090-Update-link-to-Intel-page-for-IMSM.patch - 0091-mdadm-Grow-prevent-md-s-fd-from-being-occupied-durin.patch - 0092-Specify-nodes-number-when-updating-cluster-nodes.patch - 0093-mdadm-md.4-update-path-to-in-kernel-tree-documentati.patch - 0094-manual-update-examine-badblocks.patch - 0095-Detail-show-correct-raid-level-when-the-array-is-ina.patch - 0096-Don-t-create-bitmap-for-raid5-with-journal-disk.patch - 0097-Monitor-refresh-mdstat-fd-after-select.patch - 0098-Monitor-stop-notifing-about-containers.patch - 0099-mdmonitor-set-small-delay-once.patch - 0100-Check-if-other-Monitor-instance-running-before-fork.patch - 0101-Super1-allow-RAID0-layout-setting-to-be-removed.patch - 0102-Detail-fix-segfault-during-IMSM-raid-creation.patch - 0103-Create.c-close-mdfd-and-generate-uevent.patch - 0104-imsm-update-num_data_stripes-according-to-dev_size.patch - 0105-imsm-remove-redundant-calls-to-imsm_get_map.patch - 0106-Monitor-don-t-use-default-modes-when-creating-a-file.patch - 0107-imsm-limit-support-to-first-NVMe-namespace.patch - 0108-mdadm-Unify-forks-behaviour.patch - 0109-mdadm-Detail-show-correct-state-for-clustered-array.patch - 0110-Make-target-to-install-binaries-only.patch - 0111-udev-start-grow-service-automatically.patch - 0112-Incremental-Remove-redundant-spare-movement-logic.patch - 0113-Dump-get-stat-from-a-wrong-metadata-file-when-restor.patch - 0114-super1-fix-Floating-point-exception.patch - 0115-super1.c-avoid-useless-sync-when-bitmap-switches-fro.patch - 0116-imsm-nvme-multipath-support.patch - 0117-Grow-be-careful-of-corrupt-dev_roles-list.patch - 0118-Remove-Spare-drives-line-from-details-for-external-m.patch - 0119-Don-t-associate-spares-with-other-arrays-during-RAID.patch - 0120-udev-md-raid-assembly.rules-skip-if-DM_UDEV_DISABLE_.patch - 0121-imsm-support-for-third-Sata-controller.patch - The patch from SLE15-SP4 is removed because it is in mdadm-4.2 upstream already, - Monitor: print message before quit for no array to monitor (bsc#1183229) 0120-Monitor-print-message-before-quit-for-no-array-to-mo.patch- mdadm.spec: add EXTRAVERSION string to make command line (jsc#SLE-24761, bsc#1193566)- imsm: support for third Sata controller (bsc#1201297) 0121-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 0120-udev-md-raid-assembly.rules-skip-if-DM_UDEV_DISABLE_.patch- Use %{_sbindir} for prerequisite of mkinitrd to work with usrmerge of dracut-mkinitrd-deprecated- Install mdadm in _sbindir rather than /sbin. This is more appropriate now that we have a merged-/usr. (bsc#1191076)- 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- Fixes for %_libexecdir changing to /usr/libexec(bsc#1174075)- 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- Don't list XX@.services even for sevice_del_preun They cannot be stopped without an instance name, so there is no value in listing them, and it causes and error with "rpm -e mdadm --nodeps". (bsc#1093163)- 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.patch - 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-mdcheck-when-mdcheck_start-is-enabled-enable-mdcheck.patch 0013-mdcheck-use-to-pass-variable-to-mdcheck.patch 0014-SUSE-mdadm_env.sh-handle-MDADM_CHECK_DURATION.patch 0015-Create-add-support-for-RAID0-layouts.patch 0016-Assemble-add-support-for-RAID0-layouts.patch 1002-mdadm.8-add-note-information-for-raid0-growing-opera.patch- Enable probe_roms to scan more than 6 roms. (bsc#1156040) 0028-Enable-probe_roms-to-scan-more-than-6-roms.patch- Add mdadm fixes from SLE15-SP1 package, - 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 - mdadm.8: add note information for raid0 growing operation (bsc#1129900) 0067-mdadm.8-add-note-information-for-raid0-growing-opera.patch- Create: add support for RAID0 layouts. (bsc#1162479) 0015-Create-add-support-for-RAID0-layouts.patch - Assemble: add support for RAID0 layouts. (bsc#1162479) 0016-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- 0012-mdcheck-when-mdcheck_start-is-enabled-enable-mdcheck.patch 0013-mdcheck-use-to-pass-variable-to-mdcheck.patch 0014-SUSE-mdadm_env.sh-handle-MDADM_CHECK_DURATION.patch Improve mdcheck (bsc#1153258)- 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-ch1a 1727095088  !"#$%&'()*+,-./012345674.2-150500.6.6.24.2-150500.6.6.2 mdadmmdmonsystem-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.ruleslibexecmdadmmdadm_env.shmdadmmdmonrcmdmonitormdadmChangeLogREADME.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/systemd//usr/lib/systemd/system-shutdown//usr/lib/systemd/system//usr/lib/udev/rules.d//usr//usr/libexec//usr/libexec/mdadm//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:35776/SUSE_SLE-15-SP5_Update/1651c239f9b9bb92c90e8a5e9c942502-mdadm.SUSE_SLE-15-SP5_Updatedrpmxz5x86_64-suse-linux directoryPOSIX shell script, ASCII text executableASCII textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=8a04bce594f85946641832905c080c44fcb4e13a, 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]=d36994068b21174505a66bc4f9e51ad9ec44fb52, for GNU/Linux 3.2.0, strippedHTML 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 executable"RRRRRR RRRRR RRRRRRR RRRR RRRRR RRRRRRR R4r]jPL 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-84c6137a7a6418062f360ee7a98a6b084585b9123f050f9c804f53b37543e19ea?P7zXZ !t/3 ]"k%f2)/]09;v෤1B8WQ(`mg>o _rQv?H[cqX^*e2^4hz5s OKf"Azg ,W|ohYgM2E(e'bƘrffurNU:y4ʕ3)򒅅=+O$µ?}'+_݈Hc-ҙz_'0 ;b|)N"*ȷ*ˣoAM k>/͵U?N\拯 6g.JW.5z>F!gV. 3\P5Uo̳!XrY5HjL85eʼncc[e!mw ٶh< F ^Qq&_@bvUQ(k|- g3s,3)U흕Sg9:.r򲙵B\Qe LkmŖz}=\;6uLl^|W;p@]ᅣq~-S<*xoWy)ial`_"]mhNZg8{hPƾH&:ֶV7#2HJnatuvf]6;Q@qnD躕|.,Vd@~N, ©FB$=KQU=зK5|U~e/+'h4(h3{-p(yqF^\k!Eaܤ&wX+K"Rl6ʣ"0jGʀDM5 o/l`Q ߪ1/Հcrzps]Tr7UEF%G2T.wNb)}L{XE?/7]:UX+mG1_Qk;\2g5PHN9}3+W^wK©"0sDVCtc] HRfG%vPe=0]#da6o~f(I#Tw<npbt:f}5uyP9Lk$Q蘝QچctuKa,&h5837"gFy@XX+T=J r?x}FZF3THG`A!Qq37OsTXV.q1_Z}MSsͱ%#{mXJi?Dܹw*EWn/Zϐcm{ PU'sVZFey?jAӂ9oB#)%oyT}j&X߅jbѡMvҋPPLrj\KwƯRVi$K3JNx(XCl"<)9`u }bw2 )]31Jn })Oc͓/*RK|Wjer\-i֯D.;M>ٙ 0cD^\{ie%!J ß/_Q59{ bKɪvh2!_ecƐ{<#A3 Ч@TpE98 mhNf4qp#dui '9ȸOp ?wIPPm{њ/aT^T};t_]&?T1-l&0$/rTsvjUlTMֽܐvf4|5 H+[WIyjUMāA7CN<_ yQ"_k'd89\ L-nawˋdR](WpH4E浬qe@nfpKP[S#i T=$0|+~ ;-\{1Z\VXll_uw _&lqd` VDWHBa|tk0(&9Q68@ܧF+hsI3Vm}ҍ]+T8S0G6wxX 3}Sxu­4io{AMRu70zujF]Nm܎7;K K4 ز'.jZUf̩&SgNs6g"ZeNIg]͇H&dXP:ͺúTg}*Nۇ\R0cG" _xILҡ39DHG7GbaOk/*>eZT[ikNdt\j9Cv1KAkO wp3Yy͢1\9~%/ ('Vx^=*uLeh4?S =h ad)>Qg8uQ44bZOj;t@y={&kڙULt0e*εZ@֌ K!pT#ô"7_{ٙw {3W{A~ S>PPZ¨,-Z\t`[{ʼ0G&#h55 jJ Og9ֶ 4>]OFvvui|P,3KxM{uYP&x#CIv:\q =Q(n:ëxqN|1q{?^`)tbæxl3iC?Yb.RvcB5h8>-Ovv/\A2RXjiրv="\VƺF=zʢ ;i} h?'ԙN@vqذv2ᶑ$3[X#Q!FA:3G:,27e65][>釕 #BDn+[he[PRshyA*?zCMK΋DЦ;yS3u 9^Z'ԑ@O[%buI8Ɗb"3PN3dX>u W-m"ezHǾQx؊&Dۦ_zTc :֒2eҚj*m%#ÓiQ2<*'+  OQ%U3-kE98ӬgU^qM{i9 P8m٪#tFg x,;ՒI9ZX:Z8}#nJrM8"-uשPn /tWY<)>[s(Q;̮v DnG!`!zk=7{ 7)~0@渱JRx#sPf}ܮȧIJ+!9$LnR!5WpP?yclט}͸$V7.L-.l`zhqZ]w_Vfg&0pՒӗUyGR 1A վ+}ό.GB /rGv\O)5-~$b[A~q lW5O^h6ooJIxe >w,; E˔iz݆EWP.ej}mH0{GЇtq hT9[r7jqcOdx}Ğ0 T_FMŘx>E-(p _*^o}|lVZىp+\sйR?ak30׹h>;2¡YV‹zY*b1WSanHjNG5ѹ/LDQXݶAax[u MȞ 0VxFyq_(s!U;6l\cXלoy035MYfIcCyL5˲~H1(Ӎ lU8: =WQSUm dyG[.kV8ijJ:Áʇ m$PL-P)9 _!!_>kIQ?Ӏ=nh-dP/ky Fy㩺5td:!OP|q(x!C2D ܨQN,-hVAKdKR.wTϏqMwP[n)Y&`ٴ72HR%;pI';UyT*QB0loG8_?$2-IQ=!7-",`(r)h@'<4UI%G$d*1`txFד>ӅbCW17BNc3Q,-іZF Q3ߢ=P}T R$є^/~|!=(MEoSwq'S4 :Iƾu k)J"M `Խ)5Owcu}aM|z;W~"sqym1eoY{ (}lm0'FVD|iy@1!)ݓ?"ӏg[VLO4kNu IQS|OrՖٺ6._[!L P[>m5HQrz4+3ՙYy9tosxJ2h^M#:eXI-nz(ʹ3.>0]XhQ14Z]f>8bވKEћݵ] T2.oN.4H1X`|#?%{R1`si6]Nhޕ{o:XI[Z~tNSScpH%JH,x$.+5߲ǚD;}5./H@ 9RL9 f#ҕNӌ́?)]%rDϬQ,7f V翶[. m m3:rԠk1iXHBH;mu R7'};4b5-姩>1 "#`L1mC0h@r0&'=,+BR;D$*ov(~S/'c-5 K:ĈlXn[f6RHِU+JvWO}h:/tݔ&g=ċ?I Uw: 6gwy񄳲YOMLt-g(%&] lA0₶Tql2?9FѰ)ݺeOdКj#1J@ΔN :`ktL&Uʘҟe" L_)fюGɋ4Af} KL1P9۹ a#!D!I [L(\^IHgjqO<2 B-DXI roJ!W&҈3/pJtB)5`N |>E9> {nR!v _4Xr:jP|} J30C UVWXJqk*%<`VP,@Wy ۵XBJWG ^+;ДtǼO -"kD@M; cws~O`C)pפ/DHWК*:~K\V~j],Ot6Ƞ/l-G6! 'ET#'UDJ%6ȕlvYQ$9~Fkp:[;.J+hUwF_xG_ۚF Ma׶Q~BtB˕%m'fWjq@'CK樯@inoX{|-56J8dm^wټ#h~l\p87@!Eаs+p6P=k6^70&43kZc?礟9~L~\xJȅ.*x3YA׃iLZ?F&*r~0N4@Nن.Uq(M+ɤ\gj&hϳJ6 `cCmU$)H4z+7[2`@ .ld Sst?BSĠ~K/aֿоk7o2n'(d9ȅ^vao+x"ղ~܎x(=x?(yҋAlsğAt t^f)Tww ]H:] Ju)`o)Fv'lD ;;QDb ܞzi*(yH 7Nnxز%dG5L If@_iB3'q3B'H:\E%4gn L}r \uD%x}k~d@ ;fWy% ][m֪}`WRXB-S[a"&jx$)˷]4l˝b}gSbםNz5r j))΅5v)ͬ Ұ4#@ϩLҭWsEdެ#HEzOumRcLqy0_T-WLP:`[tCN-R0ar)C87_~8 3ZթnI8cyMls$-z(TN^B%ո:5h<@ Uw'aʦ*-$4nrjDɼW윛t 41(*뒉F V#QE MԦgg;̼!&b3,MiŜ,T@M7fE\'ȑ=@$%>g-yյ.!9̠%VpT@ٗӆ3u;;3ݫS8Mq#)JZ.T &=,E[^6k?a ƕPڟ^7XILgg67 %qZmrzŕ{D%v+fɳz͸UHC\{ײ5tD(R<6_tlc&1qAf]xzW+"H)^VnD-q`]3_qDTN(iEg"Y)Æ#!,=j ʫv~[rGLʤJd5g7'VzgJJc8[/ '* ,BVCdWu`V.bCa-ojR7ivrOa(V>ߴ#f'eS͕6zF(<5%b_rOrN]FڕsW=0,d3*U<;x;6L)K4~gO`tP`j9H![';5BhlB<Æ̬d]BzW;Vz[h_L DK )%9Da@KiFNiIWT]ߺd[qD]sS;qq SȠ}dSs[\a$Xdeeb='jwano] CD]=Bܑe?#<rL;ͫpލ>ol5V'ݸ-bk!i t" a@={b((tcG93ۛ>8',~n =OܷJI^LaJN[Y}=+gdQ!,g#R_CЀifuГNXU},c`++:>z-w|7z)ӺlCAP RB2Ș6ժ_79WsLR&{|[h MJ[v& pp IOpM7Uǀ%{=EVjKw\>njh]@OYўsT8Gd|2R 6X)rR[;-H8ä`˕fYq@gډHj9د&@1 @4EbhǸi= |]2xvnOِ/F+@I..vYɆFVjSVS}@B'Fڂ}"d[ \E-onTpƹ  i͈7#M:+7"z½"IĴM"Di4˯*ՓLK>S I㎭FL.t7u!^lB22Ҩ׉MBJ?jf_,mS sȝC-ٔ]YPanafȐrTUة/>>0k=>)K =eM/Qso.ʝ)v00@vnRMCNmCJ^dΉHOu"NmUx|HA>Bة=@*hSMuOV&a=WͼöRAΛoQ/G 3v#B4vHh[TǬ7*1O]1cWhM{AP$S VfnD@~ă< & eu#|7%)걉zj{#JS<H/n](o wzYbaژyS=4j;ԧ!YL! öL#&a"@wXHj'4Ky]OոD|ӰqƊݒܟ7$8̘/%iHa5ʱ4r63ʑJ##y_]reBXO^ɖbbs$Y!q);hCQQ<.t3fP}g^4s!2O”k$dMX$JJ90_G,8hT F(Z9tz J F[@ 3VmϪg@QVOx#kh`\ z`^ldHHE³!,s^+8Y;W@ "rtGYffrIU'<ҮcUl>@>H&e&mջFp\{pi[;A $T)|s+TA`VRDLng#oB O4lwBL#"7_FVX2"dADm{`d~@S->uZ[.Q7ֽmְKfJy_,N_[,}8įh™jW V * C0f-"Z0!Lnъmi^ ^pdMPW#ɣȁ@ (! XA"VafJHb=3'|X-B WvIқi&fiB\DPäȹ>nO:=D4״|Wei3c4Hau&gS(AUsU 6#6D'gv3O֤Q0cofl!湑` oE "UKo*Zgmbg~YbN[7N mCX{>#Gh_յ{FvVx sm+ yRru="H&|7,QhyWd>}5OJ3ʹ> / $)A*S MAu3bJ|u'}WdWhz7V$-y*Bв. ZoU[#[k6i)kf,NC4 "%JB8*Ab5tCz1V}Ч;#$K*G Drl7=?i`PP17ӘN+Mhԍdt9ID*Vi"\oXx+":֔x^R 6SH PRB&yK-IjUA:Xr7@5 \m[HUߏϸpu\F7{eT Mt]H9d6MvzzZ39D*/O5ҋu s K`N(?b@]"~5TӞt2SN֡?Kx=~$0K=LQr+R%̅![ǔMy["h`n+j|DpdH'縜Cd LI|BLwd:+{|tPe?fP9;@g@fL}u~I+Zo 1r+<2w= L D5{ßuTb.-"'ۯ5\ȣ?/ s/jAiqxUg慉ďeCC ^>,pū\q F7M]B͸8 xQB.>Ĉvsns*ޘ5EJo໳z3gcyL"\DNsצN:<>LC3 *$X]WQp\ғ;0ȐfO/3;R&|&7ZlױaߢW쉁 6wUu]ß|KRXG1tȠuC(354ғkfg.|7xw5Ey%^t&S[[,6oxR7x=X7Cqk %b||)@rW[ՃZnbj]{wr4 S ~VE&JJ-| ^op%&%yWn[w=%DM"PV/ j:=ѥs|hMV 3d{ᤒ6e,e(ĵfP!6O2MiBOg{aOzֱYj(Y=ΒXW!(`Ŏ?ʩJ‚_ G._Hkb3BC[zU2x_KIuw$UfDD٢vT*Θn'@f?;oL4LU֫(GxL3|Sxpy.C`zEBcCh0f _ tT}h A"ц< j`C,rmN Nu^"8Uh0^B2+Ͽ0g^!:XH[bw 1 { ^?JŐ;;H!n!+5n8p@Ü$`Z&3|%];xkw zo'g8,F0F4ZX[i:b %Gt_dUd[y~v$oCdLMwwOע‚/>9Wn@wPϋrf=fvlR0Acקf@&6@U~0}kXyOqs6$/a̳񸔱owv}PBR*'}L؅xȆYΌC$"J,__GP.Kchģ}u A(MAL%bcOȫB~%>gahRG; k7AYM]D\bo_ʿr>NL@EX&W#8`!GKL7gQjlXMVz! p- OÒܽNI'FS` #OQV$h 8{'^D\Ӿj趙PpBhAo8ju?K}R y}$>c%FI-^c )Ek )i /̆~JXϨ|wN`7DUXh{O=K+{nLf*#c|TX Kx;QyXN9,_(aƯEQ*'c:$H&Gy[zܾnՖfQ!.f!e\9utq6Z*p-GtJN6`;T!]Uo. ωJRA\[bpS8Աߕsֱ鰷[BOהipomlp CL7,:wIuMMr nj "y|& 9"TL;2n$D"/4{)c\_`n~KvvšdY!F^0 {g'^80V.;=&J- Lz;nhW(VudY={`B-h.(|lNba$Gg-"|߭wԭu[?{3W,!Co rAwJVV0E?nEIN8ӠSqUXw. ?胘+_9sV\YQ5PjC]0TO9r咭B-Pb#+Wrӥ(CfL8L^ȸm!DY.;g?M8L Φ#/EM~F KD#u]76aj]9'„ ?iq%t[9d5*{NKn RV_ːV#h* 溶mk:-^"ՆJ}Ics p` I'|]B/EN{x&,)p\u P˖9.Nq%!y2"oSK,{ԲqBB\ך܌b2z ڃ-XdkG<[U83 $#S/AQBlΌ1OUEx'Q 8fdM*a{@_PTnXrYLKN.d}^g;䄟ˍ~;v8+eqN78R&p/ 6+7ọ̃W={ax{.̭KmȠ3rD{ @iqjy_eH8_"y[2"8 >qvFB H41KQh-mKR?Diic"| ]8ɺk'wz(krGN{SW8d1IL@I8&\7LzE S۫ ] iBM,tSn*s*3,Ix,f+m#xG@synd^TpXs.XǙR3=|~.h=Yװ;ZP#xiYx Vmr`\2VL@gy)D'4UUCɷ؄ Xދ׊({ HKweFq'!)LKgzd2n\ A`tȩ@ =m23BKP",>t:vJe| ` "TUkIJdZֺASs"'V^pΧ“ nXnE4˪5Nm ;.f+fx}ON[Ls,d0q (4 ҠQtúP kBvb8] i*ɤ; %C$2*/JB3|[cMeg "s// /9{{XvEbW4f ?f7ඉ~9B8Ʀ RWє'Z,󍜭_*w^_w }*ζ(d}GDbno<}bM*>k-T2zdt20vwhJvXd^.i?ǕCV)Z#)ڌ۞ſ$j^̄w8G"wZjH) R+~5ȦmPYbx̟JX#U@ ~"%?IRhk \9- p&hIh`Vn>rh_lϢd${ '#ȏcjYghQYR\elW]/S<uwעN%8p%3l]h[5Op77@K>ΘCry8wwaQ:Ϭ|t 't%f?~ @ 90XA;}=k(c)a8X I=̪l9gYƟ-b@^=Z/oIU oA}93Yi0%m) ^om=q♣ n$;Y_Yژbu]YG](<Hm$Y"GG[Wנґ#%uj   Xޗ+ lZGҠ4T&؉ Q\ 703&pH4D7qT` ~M Z04ZWٜɣj PAe8"t"ȯERvQ"L*)m[pR ˦@Fq*nČ-#Nl3s04)1KiRhFT ;\ \"'"Y&Î6 i2b8ykܪɑ^[szQ EP@pؕC巀i /fqa/ qIHn%/m{#u᮵\p d]t2Q&Tc[u)7-2Or?rU;Q+Kcג;XT b@ih_;It y&͘5LnEJbczB3Ȱ$s_#0]k̀nJ"wȈ[DJ8b^e<"@P۟-;Y$)o TԂ<+W]Zueˬ#M:$ 3zP }% _^4N~e]/G`Fn0*1Z73jQ]x~FN0- xA>\;>Y1.Yx'U.,a8;?R^_C;Vx+pMEis /QɬQ֎WExʷ;X店ZRwyEEO JաT*:[GXEvVhxDSe'Ya~wvfO{^iWu2)v$xaA,y e?ڎy6L;LVx4V]OHя5?>߶څX_f0^A^=D-LW(ҢqZdqlbG򢁭 F ߄JwvymlN9ezJ\ N_%[§~j#m]yexadpZz~A8cF׏ҹ ur'wN':yi|c OyO&4 R}4$Q /73])˴L[ g\BWkP-K{b,7[G9DZK1 Y䰒;D_|t%W@nPTq(MFGO| L׭ӔIdfEGrAƚ.lm,NJgiTꊍ/dv|luGu.<|~nC6\ԑBu[ =e\)?2'.7zّ*´ŻS٤ͬl[1[C*`F70Nb؝ݠ!Pv5mF8Nv7SHc:R&Yآ6݄H cD@sslg 2g천ұKyIL׭ZYl"%^ۛK&l e<H76 r=I MGk6,Q#kODW:3xbswà۟od3g8+ѳ9_Q;#_9" *p41Rd CaQ':PW{.}vO>L#Hh1}ߦ^Ȱj#^ p)r%gq<m#JBAv˨%r*0xߖAJƻNNaf&;Sw]HI앾GvhL)l2ـiZ oT2 PéqlI>ʕ>{(` (J4}\SP졫6u7/uu6ّtL1k*ME5j3XsѰ neP`l 3EI9d8=:6#LtD ܨ$0j6 VřaP.%\pUZ O1t7` EG͉&Ò+tnBb."]\T YcGU;|bv_sVڔ6yspUX/ IWj#cB欣 }N:Jځ6u3YsxP.®dq5 ?L :!^o9^6ZD7v@^n!AYn>,OIH5M;/?,TTRL-'d#S%<+jqN-K?;:;4D~9X^PF9b$Q\=z8\fCF &0}ĤD [cx$^і-Sᔊ+H) 5SP"xc!yqʤ (S,VQJJx%-;koo̾I{Zkshr,\pzr;#,ɍ_WO% D\t$N4!#ioN*|ee2_\rF_Ro|?<=+aEUqFd5lDwHk(}cH6h5HcO{׸%LU$hN$閆6QCi oDWxBf7yU;@Zv7m`r)rygAڔ/7]b[V<{cQs8dcH%M*7Tuk++ʒO X}M s#J^;+5Z#HݲdV* ( M R׏8g'C#vA!řY(x>g*Ps X[mxЋA8P<Cц2>a_u&G[gsh#X' ESnGG(J/{ ?`;!嚫(ũI>B|[c/ Tn3 oTiKq{Km817t\G*v}C)5ێ?rtFs2!+ 'B+< ڝrZ&R]H(_1{ x8G|~3+C" YQ֟|2yys7|xCkh-$ghDs)e9eVcOFcBVއad$*<\rFB:i7?Dػ&b/5Cy`r8?`~|aQUέo=R['m{DCqsȐa71*+ j wZY_w\M&aiC+[|CYQDDxc4+pT)9v{`iOG!#fij1ADE_L(dNXt wG4UWTdo2J$%%U ?U * ooZijG ",)w39 z"K8w`V('>Z*LP.6ރ 5SX~cqW8ϛJCԡr w$G(Dr$s !kK]^@{|wXO8\%gL&)>{rNLްBJJ1Y2#;Q\͎0ǡn9(DXC5I3$?nĄ|nHhi҄=FZXi@3gJ7_f@aHOwe1C!}+ rr鿵Wg r>R_u49)H:Ge(F9QcCfhAsՌ} rBkvlbl0[X+ꜾRh7y;y'ęC D{|ZYcB!(Q>|д4~gu~+lB*>/GR&]K fK2i]aҬbr/9#= L8ՙׄ/u׹݇&ՃeGBN鳭19~hHȔŠ<6@\ gy*d֋y8 ^.":gFcal=nTyDhC++3*,v[O $i\0ʅG2%ml\"CD\F|o4>Ku] >E|#iG9W>3xB|&A]*Y~a xi 4ma#}]C@C$pX{%c;)<0]Y8~G%Q=!x@{`OU[6N>B%²&mSڟ4~03U|f BRh 8+g,@qkRm.Tsj3pw,N'k7m%XE=xǿ%V- d#+pߐ]hk o#,W.Ebxp̍E1u9C_@,VF7 X-4IkE\OsD"]& vccTqLF?oR \q2 ͈'po@4m_^Kh$BRr !MET~mWܔHN8mHiHy 9m;-횶-埸΃0'ϒNc ƌ5uvd62(4M2)rP?ba`%o V&__wms̲y?]j2~,nl~x@t7[˂OIlu_|cu%qxwd|w9tQH۔9>ҁk lxq)s;l=b'[f#]\i;Č},yFu`|o' ٵZ UPdP7JQGܛ1^: [>3bȈ՚.Neg}t 5)&bX-a8S4 M$\C6RKRvz[kHE,ܝb[x%eMl} Аzc-q&G/lWuƮ&I  :C[%U[n@0x/;Kh0'h[BuGl8EDZ<_5+!V_7=Fi|_6q#"Z p+l6X>anJ=gه#oO?^MhriK ,n:?YNZh`ǭ)[ˎ^d@L*zZ5g$dhTuEPRLRZΖy]D'6/Rs/= s\}ސ ZwaM?ܥU6L&{\A\&ZH]~YeXT,(FE8m./L :5[>k, }½"0I>mHn \57K }⇳DCh4$m}aUXQm1nd#S)5V%PT.aTC|bԣ W\1EA;}qZ@ $:v|\UZ`ͪ4) XY$a8suӾB=5BOL{jvHG7.mu;?;U63lƢyjUX9_YCm.ghXdܩ/(2u̚'iOϽ@G6 QѤ%I|=GΒ&z_m1~o^)ݚ-SJ go kt]>fNo3wK5dBpje ny$+y#wz^$XGAFld";H8Nj),_ ҏݰ9=EF,l x!-ipU)%6ieZfꖳ`sFh,0# "p ~K%imntD+Jƺbn(Ul{Ր9;+. ! uL6Sefb^N2Vg' eEfꙣXet }ۄ}뷷E~T!I b 6|X9hi4oH- A5Ǖ%(fҞ20ߢԿY#O%U ,8kWى0a8 _\p>Մaa~r84 "m Dvں0TIWN$$͖PPA' Q.p|=~«x:iں5Yp)@*1,_o_FT_$+8j*!RFA !VBS493SVMfODߔNkJXJ)TA?z a=fጜJ 9q Oe.R^Vu2D(x&~@#N3&ڊz !chӦêyA?ýG˻#4l%T,6dp2@< 6;Db%f;g{} +~Z,ɇS4}%rfG(h LIpĄչO<5{`+â1nNÇfOG}C\c|AE(OJݧnv\vF$X@dV5VCgΌi)?",cd;j@dS W^Sư >B xV FM ݨm@2pb?5mBOB"3Jy*RG &a81!kIL*=|RbHh, 4c¿yމx*1 ښ 0Kg{ڙer+2B;sţ|âYedLϽqXm+dK806jߴJiOh 8 LgZCb Rbg#tX7@~=xj:#cRm[]t)iIދK;: HϞM#A5TĖjcbpSe"IuAk)jNC!>:e EtN0[NW;)u^9ѕ]އ$=1#ߠ|r{y[* Dԍ8(' W$ @=ww7nDY_V ҄_$"h1OYLKh!Q5KgOy*)]LLDy؎`lX=ӜX[ )c~\e-QRP#ЄB_&vu.qUp =R%Mk(R9.}ᵾ*񋤞uFW旄7o;02Ւ?Ё#tW Cg3R޶2"kayk #UE|ףNǓȂcoLz7KHjx mEpo}$}e5/`&k`mLs.'"^4jLi,ܺ}w-3$7Cbd̑q=b]u :#Ar-9Ex~2=gΊ`^ 5W"2;ISԬbgՕ2]Swrtb(~b*0;ZZ\ @\ `I )Y%ЄD• o_&Qtu]&.}ty<x*rgWȱ,sci&I֣+9:zH'\cڻeȫ3X*(3Iw-"-8KSm^\kN:s1 sZ.鞄} (R#7YRTq/ߜ1Q.<;uO'f9QFe4%b(m+zF-ݿzE`'%)n㐅5Օ~^Y F[eFSBIRN <;GKgQu;% nj̳!' =3$ザ@}Nzm.#|$++9i3b+LԾwU~إΜ{l/ []/3"_k4%8c,UM+.Gp=A}PA2RiT#b *d +V>;u&ڱᷪ70WJn: p o/ř!1svoHYo`k?<[b,DqtetB!Ν z aa nN;yLyRrpǻg5t"/Ԫ!3CΒtqhM#˳z-hfHjVivc֬,j+h5 `*dGҢҷ4gP7KYD֖U>jFT jfeI>O#1AĸN>-E'⁠9FdG*> 0[.Q4G|r ƶJ=E|2蕞͆ww>b yCMl 0ms-i]HBr|e$&EYxEϪ>Tst BX7?G<iͣb pm&E7hei!~ehy1ֺ~iLEy(:;zU 2QZ;ס^̢D1 -x9qL+|=  'bdwzOFG vW!]]B,5jf!1EҊ $X%?uNK 7UA6oL~`~!C0pCfW׌A0YC &v#,`ch`s@0xSP HE1I, [&c +7ci'̟f!pY;*N:Q+upڎԋEi0' V*&N*%%pD {tY?dlA2yY{N|kJf^Aqt=;4&"=iӢKr&.>QQ`o8C'Zq TB"?@*Ҷ܇d& 2LJ%۷pxU nIu^vOBõ5\ mUO7gHzfk tO1WG4DtĹ9SRL{lkۦq][$fv~zhvY;QN5}K$a"IR\C[nJCV,CAV~l2ɗKK/xE޷U^qœoLOv lt@Pp)S㬮[![)&W"c%mc{Se~lFyWDůۂK*S8wӪ#+; ڂ1Ѫ߃I +hڈY1M00JJN;QQ4 (ƜF[V _D:>ӟ7Q4 XP2m0xKIpSoRE =s=ڿqb7B'.= Q|Dsc ˡW_4ђ9E~(OeJY'T䞵YL?JZ9O/e 4cTWZ3+Me(LI=5"6;Xb&†_,;{'e6/f{t_@y:D-[d݌8 OP{0/& w2Va@+ō{\]^"P3sͤ'OVcg3W3@yp*o.鄦.:ݠn% :J"M>`UKBtd4 a3ů$ߤI.-*-Lv$6\AK0EPtvt-XzOd2i;¯I[XQ4AO%=Vt_2OV|}7VpS0fx@ G9fqJqI;=tGy̍\eYHW6U/"vCzF'FXaXw5S7^VIcZ#!2Tr'(YTH_夑1)7uk~$M74Ala1P*otUxH?[P|l^&"%&B5oO0(ld/+L;=تLWKZ8cfP}(j׎AWT`YQY~Q̃WWvP RTl< h] ^KO[׾V1s-^>$dK3"4 V[LwL,wdZ޸˫7b1YcǰDBAs"AZu582c\N 9^D=gކqk_EЍlX۴"PַfTPeRK+kUYwҿ?M32YN+%b)H`v R#Ԙ/h]!8a^Ϭ6F0 HIUw5CY5#xQHcq}-|`طJ[uG5 ɤU{#r,\$m I"t+wRBHytm([b~eRG6"δ,Lszf?ܬ@-޳1Hm@ð釞җ}ЃY^I=Xpq/ Փ+dFE‡9]BPŝ )[G [c-#v?t{/hRMpP+]?\}QgA+7;}W40 z=S普5EHG* DGdAJ9ݨlԄbl̋pyIug\ӄ: N*5D9iPSN=үk-p%)za3rQ lD|V4TY KG5:;訮%ȼ}ElF u2 b6@ŐrBze$#W%Hs kșn0K6ׇbƖP؝\@d0uHb:" Sʡ4^yh;5 1RP`NkDM)B`ei0)N%D05Q[WNI5e~[;o=N Jθc{yn_f Fɺ^D j`F4a\Kq(t@]YŲP۔psNiOf-e1=5F`-yt h2Qo%qɦoOIFInE!#g7سϊݶRHOƵG{ aO:( ~*>W/ =eņ'jJn*لpD3P֣;ilY}qBaEfr4m|D`Z-s*tCb]Ow T/4+R,QWِYZĒeSa&;B\$M?M1#mnGjb1pKUd Z)5 G;ij[DvI]i4S҇7 B焖Nf2R(WQ6:v$iM. b,Кt]SlQ9rDSBe%F~X5~MRiIpa"lϽ]Qh̷j} ;QeL! T>tAL4HAWn Q%YqEph-FrR6q4O)iWQkLkABi+`"ۤϬZ~wIџq< Nr @7@'M窀 ٌY kNoaF̥Dʵ!yGpGV>71n6QT7x !Q=oMs1N6~~HAK9 *$NRomzJ-}v <#8m!p7˘Ϋ2{q1d >HRHP0:PGgso:h!A]turkV2^ܱ}P;`lf/$.s=:N`13oyW0!ȡt{68|0\ .aknZ؟fR 8$hH~r- 58x eJ+N#z41` L@z7O9rB0,90ȬNV%YENpنXQ\M]38 @C6vkן2l{zİI>ADlo??XnijD5OHK"Ի G?GrѸ"QVc`BO|&90DHRbъ;MⰨ9x)"OC3H<5{#WrK^NMPuF `i:k_fC@`a'rc W*?F\gq\ q^k&#!wNX+YH0ȉ G !D%#5(uD#y맑1"EO'DVP X9|,j@a!.";d81ٽz0`f>c QY0 zn/{\ŝ'G3[Lʼn[x'Ed'8NR͹!0PĪ͞Dp0ꔫuԶ_rzˣ)K[S-l 5s1L7jp84FRo[Y]%c~kT2j&(-jjr*Tiq*53xע앒Sz7^>MH嶅 0k2_K kJs(soN`Ki~.=A4 tJ4{1Vnۺ9FEn֦]|m > ٪ԿiPb;,Gm~Y mfJ'.3Gf9Ul+Hp3he'IWbByeFB ׾|wK!&%]k$wo^2{#CZ4bSҾcޛZ]s PZ5OEq!2.ݼ/da_# Yro d"zPE&@H{ S>@e)CyA2^SuU7.BpP &J4V/;P7-i`{rOTFz*ޏsɮ™*sfdN?ke\q ӟQQ]ßGkju=Q6C/PhMB6IT @{18+3J輐T6ϋtSf!X;! C?> amkykutvdf<]ߧ-*F; g8&/㰾M“ |+$]R+ Ʒv@c㭹) _&2-~ NjZk-}jy@Z^A?u$*ꛭZYm-6bRv FM<\{PBPwL(t;($anrtL/;0:c8zb @ 䜾U%|/ o znyit_4XRGB>'.2lX ֠#ta1 D-Aj@ ccr;CLYe{EC{.< 5MaqiUy [+3 8BUmd:%Sϩ\m@c9BC}t!<Ќtՙ7 Za?ꮗ"l1}>kJa/S'bMl~^}}} ØH܈t~SYb48BHB0oR9]{oc|T;@ϒ 2s5|J/®d)Uti"ஓd(3qwlߩsV}dd VSah/<#B-UkÀU#\]aPYrnuEC^Ksy@^[C?񚞎yR$>)T |WY+R80aS>Z)/Y8Y˂uI*&l˚ieh#k/g[YTR;^FL{ 6P'1c˨O <uLapʟ?l7Zt%T~,qVx/['-ϕ:T^pgXG#y V,fU[.knm+5]5$5PvOy CMNۧ{UH0JT&7`3aO9 !sdq2QV5);MЇW6 rySI1{ 6Pk1"in2n 396T?у`/˃V mܱ~6sPf;? Go ;QJY$(i Z>|}oW7٠ZyBS>'+f `e+'yP=!3FQ.Im c "Q_,i;$6GDžM3J64[Х%-Ahk9?I 9|s`4|NX׋>mPj шjK>=sMENDZ9띭rbJ?H!i߰[@(B`6M!鉺(ɣ[QҟYh@A%6SuѪKO'biYj].B!)-M\ٙyN7{eІ":`Zq("g2;q TqIِY0pޱwc@EF  Sno_VWwJw KpL8 Yt5~Q{?XIſ FL-n[R-9Ij~ K%a@E)ab:6V|[֐dj/9Gv˭Ix;D< lxmB(fk,Z[!ПXc:ߐŠgpasxINGT >c7xyGF ϏLK]ߑl O2s'x]%wՏúHŠh y)C'˿aNAM@Ի^ حmP?thW H$=NAWJl6,g~v~t+t/`N ߌ<31+8bs_W+ea5b?{2?g{>|>Ȯ frug#mhhV%E:uH3B_n-ceH?l5+<l !FϿWO}o_㋿&ž-c݅*?kar Wj V]Xɍfsիp"U({/x.3sAتl Wg"Nl.ijvԣO3^ sƢ-i/鹏#$5Eў7ϻ`E.a0{=U= #}PgdX~ǥ8안L|01ڡ.h!4Z6gGi@VbuD̼f_Bݮ<NiaFm.'lACa9#ofxܷqϒ~7`8[#U]f1jc5+U},SgZHSEk29ch#Rd!Ͳ!!5#kQ~ ܞV/xFRNM$g:mYgkOq6oH5OTA][bJAk:lG_A.[Pt樎f>Dk Ml =M?wB<]wsr}Yw,jHk[zDSadp 4Al¶>e Ed"s'Z-Q?|,A)`b(: cT4 x۷A>H B (Y!UNU t*TPsYs5Eo&$5=`eY E^i6wN t8P2O/NlF`5,0\ 9m< Ld:0iTqg4xqzP]b~l$Qآ.Li{| &Q,6iϕZѣ2Ruh\; GMV1G]G5!0CԝVe^ސ#QX,!n蘝cHhCQdep^ 0l qiw^ڕ5=zGS^/Qho /yoު@7x(HgDG~$ݯABXiJ'P1Nf'UKrhҡ 2-lOX۟;( #&5Ɠ QB0{\82؂寳QK~"Ӱ۽1 FGR[ 9rHYe^Eմ[&VM(r15 ~mG: ?3Tw#6 ,'ѓfPVw4DyL iof=5+9g8πs1Xz,F? -]ͺcX\&ӦEGG5~S}}ޅkQ?>vU ^ 1oQ\Ondѓ$l.kso:;Su>b c8{@3:nBrgnr #T-#xrOn>X=#&҆{6Gxr& ,Z DϻÞ U3 8hvs*.:;||"4b.F&7C, oL6km4i}{EO 'SɟK~vU6ڿ-)OT y7[H"E"/al\ 4']O }[YŬ2 dm|WIp0bE#^dZt޲Imy#NE6t2CTSKqyxpu#|$mj/kGx3`2#)79IR n v.``TS ,IbBqJj<NJݲ[QR&I="}Qo*-:YyXit%2$EytE%X{K%[V%ËiVqj2VXw92ers!U'y%zV_! З}I SpUuf_ϧd{im#ʧz%3E; K2=zx(.Z>QjtGMFzA,Vs7,y0_;J.i'J>~/j9*ߓ uPҸ߫*IlxqF)ɩ[tɦwBaGȇNtodv GoT x7E yÏk BIj')t~ex-󵝖+_!dkצ`tt+Ŧ:pEs]M%9 Lj[gfz!zcL/2̯rHjUz+1d8l0iL$5Sl!OhP l*Kq V*|q?Gci,͍_V2򕰢Uz]$@K@Ɩ1JF) n~ PӲwދ"Lx yMOع}3Hf,5$}߼W9qOA&wa*wZFE:m:9Sx#gb.ag94oK /]!AQ硙i ~Mb;{ɋ/jNt; gW?wW4hGn+0#M O/Ux]?&J-wBQhHLzp q\,o, w 6*?)P*!߉Pۂe1#"P ܹo845vI0_oMqcIhdek}U]ּDLUW{h> ⤍\Hp=w],{FlֵRri:6ͥ! &a'L%<4BATxcmQ; bilח#(Crc.UЇ}-2>=Z^3yf`ُ=h ~T_[:o]Q%jfDu^7kX LM.zb< a)*l,#"a|Whgn~aMV\GzgorW^r{ͨfX%F>uYߒoOmKccEV= JK^+ x"8eÔjg t*̏C\#edM&<:1.qSP>SarE^2!08Uc[޻&6%G@8b/K1:Wc7sǎo~S+ UoVBir !lYl4ߥ^2P-#0j.#JmˁJҮYTi)+0#D9Z߀%:v2_Td ͹5#ωnǠ@W`$ B_ic-Pj@¤(A&8]蓮]؇KSE3۹mYw5%nnnY̴D7=a6fE6mpu):EeieVSx ^BmĸQҍYR 2Jݳ}c~[MTqA>}b`M`?AǓZp0Gop{ZɁXm( GM`(+Nd8|XWЗΤHE_+)$7hC~QP[V܇ msQ5ؚf)zpؽt{liߨ]i@`]OGUYڦ"۪NFd=u8K" :[k#w!𨋄Q{oXVL{V&Vn\`[U';; :P~=4L儝ZͭdG[}j۝l& gu7L8@oEџUVo7-偆m?}vk(Xg#\ v 2kl5t( 3fY$/&hZbLS98u'([wi)tnPe"Sl4^,.Bq'>Vn5+f Cɬ )AD` sv"!GOkp X 5IH,cWp(DTƏdS.rX\:WfL@5OSկ;pmoCb4J3 %>/>}#|ciUz޸۩RoP([}Hώy^3j] ,aWb Bt.:=hQesꂑPІ*2yayo’.尕 l ?d @5xRe'f ЗOZlR7A 8 xhDP ɻSȟ  l+EID\B;?Mfs,qFW´Mo",`l0:0=$K U7 W)-Đ0uZZ Lu+>C B ϋ&~H+kf j7KG}=ab POah 7wR9]; Gw?,XP q摝`Qf%B-q3o{ف壐I}.Gxf(n0PiȑX|n+94.{v}_q(wo[6DZ0 ;v1I,t^:PkDŽZc#mVVl$yL}42 <1TscZc.$Qu~86?j;d'5'{hܕ.[^hwͯb6w-'h8xNv*0V}VϬs6Ȋ$iUltWP_;gF j U.M ơ:d57yT5s3{!s#7AB8ƧeG)<=:)}K+[bV?=L7!\q^xLx6g} 2{3LG܅ $TRr IBUd}@!D2\' ړZA=Tt+J%ΈSB#~zHkY%E]k)ŭHϚU_npg rg+o\3b{Ѕ{o: Ngѳ ,}2d;AgD0-+Uz x!ĥ4[zLC>,/?nO Q~mW5Y:$no P^"C~y[6KЧ0LJĭ*ǰHBH g;b?L$팁JƿFDzN*3y ZSi/kzXI +aߜՁ ^ڄ2Pz҂E_F4jK!Ӟg8ma;\ȷ .m;ж+wv8JkTG{۽k@Dnָ!hX;YA.J@5Y2fϊW^3/_Dp~59bY^B?؞A&Ԭ_$s$%$*EE".V0i,;crQ\k B҃0߅Dh"T1׶gH6p~Y-!+7iQ@c>c!3fshWKhz2PPQTc@Xow)1(^0jR 9¶iEnwސ۷*e-xo r>#@uQi>ۂԍ9vz NH|UݛCE3KmkOARkgo3pAŽ®q ߔj1MvѠ^nBrHjOU"F` r_q?J2r`K-J;6#'JO/I QOd®ܩG^e_G;Uߎ\Pl5TM%U`CT:(EՊ4}qb:9wQcP Zvje>OJ6+{5Q}]hʑ>&݉Ӽ?~" R~)nXتjk T@0Bj~{;`ړfA.njWxiJ?rO}=wZv]!;k}|DDtmcgL^H,?ay,h.n+h]eԘ-2}9^ALURF [ZhA_"'#$vYܲ|P~SkcdTVp.T-"9#M\P6z].~q y EodWbo0M>_ch5 ; 4\ ӫaP5 2d[ivwVCjEl>@l3AGճHo!#-xVLHkZb/Kd%B%YV FpoHET/ڔIscϔMShA0-{""KID yDl稇Vf,EKvχ0X}%󙃚s$MN_z`MeҳIɆ5-J:P]Ɋ?fX: kU"pW"~E| ѺDr(9 Ќt#6NK DrA<0%d'EjeXK9<pJ%C,a/?i3_Wm}vx[I`W)s9뽬F߫/c25{Є-n|p.yFO42y<;D&Uoq-҉oBðǡ#Xq Y~7n|;ֻJS5? q+s{B=(v7E5%y# dD,&դaRrnߥ8\ˬ}h t+l@^ p7am͎4˄ Lq4y6⋎:n6/2r\*U9055Vwtu*RTNC 4FȰn©묜n62~򆱆4ْTk_d{0IA1#<> Wïݻrf_X<-<ҫNE`lǻ%vl[13|Sl͍p@+mg\,[ LEGm.t|s{9XoE cs£u3ٵ_v\׳5]`kސ?fԂ 7Lsݎ?@> dkt4]>6B'/h#T_t.aw Z=JIk\TK/B NFў_ec?WHAPԏؼ0uv}="!uϳ@Hf/y޺t).|9nؓ\/2vw<.6,ӋD0C{kWmkm'\ELo A%.5J 7>lvRX$׳D؅D@DԊb <#Zj-|oA+)<.1772Zzϵy*P6Ʈnz GORF3`jV¯,=<[rON (w  (cʦ@_Ǝ=Qo;?ی\ oa¥/t}=s0X6?ѯWg=m8vP3lr/L*˝vuDO09)]GcbМiy{tKVOhLmkZC#?:aBRAf쳁ФOɞuANox2%PyI!K"qvU&N6+#8M#F #Őܪ=d),+f T+cto a˷Hs!Ik70r@M2Kl~sBq]i"g֔`o<qN3 u'Da$IՒ.rm#_.Ul,7OV^Bز ܫpPR#`iCg /׼QC K|F{ :Ԓ ưw??smeQ.ֵ)`br(`rRkC!d%6bPF^Z&7u֙Q#6iv!i?h9I|j\T]; ͧ jK|[w5$ەo7J{NBFj,i; B K8yXYS% h%/0Pw$-i$7_(CԴUx{LJ~b\0 :̊\=A@2|^ȏf?R_*6.H/L[mֲ dju^քMӚ;; :iuV+1(FH1Y[_"`D兔X- 5U,xZ_qvk1;=S>oY)Ʃ$={wҫR]7|ǎ3"<&  ]FEø-vY 8t__*>Cko^5Ǧ&d ]D-=ULRϡhjW_T,tdEU2+$fp;:[ܶ_qcnK]5W}LǪczKx "uKZ<-@nI. kˀi-dz^[g"Z ~ێ.J:mnF^ I 釻p X Up-q\`={0ifξQV=B,0h| 'IbX~]2^rh۴\>NW)ZiDqTEJUL(M^oAjwsƿt ,mJtuҲ爗C#K0ACp)NxsټA{ZCG 3L-_e-͚{ B%+})jWQ q(_;00 QvopmZl a` ViʸIgՒud vA rwЉ-˦YdBD-jθY|Rb&RF.mJ"x?EYaFdD-zxRBQpFE j7(&}Ll}}[o^lC0~]3ρ9AE,)1Sk_rt҉G2>_6?S;ܤF.i8!3 AJ+R[r}torS =j\ZmNuhX{#:{J1j*& _BYF(Q|N^]|(cwCɪ};E->;F?wϞGw<]e Խo}Uٱr,m oB f{Qu%&ǦQȱ hUƜ<4MW[{L_N,] 9i b-riAJ.\)`l}⿬ZV9YKV~:W^(?FB1y?8k6^>+&sh`l8ZRgCQm xYfBM8-VdމVn0kBB% ;u1[͘9( :KjW/GYٓ=qtw2ŨW.a$g뮬~$J_zMxaa[+)&|vMl(ryE|1bHO("M`9 &Gj3*[3Ll =Ni6`O)!7uۼJdDv)^XѺ=^WQ&;X~sڻ$YA#-*1*Jͽl敯T'L$үfYn2[rV -|*1ux|28ߟ Pg"o؍ݧ6<Ñ2nzRީ{oLjAET+(Pp05?Tȳ}O-ync9MxԗeWCg'LyGa^Xޅ9eUkx޽)>CP]s 2Xh)L=~ iWMʰ.:d2=*p2 .w`=8mU lLvn" gGK'Hy__/z>5z+u3]eZפn#Ņ,j KNk$݇{]7Q1y?,c~&PHGx](@b5Cj7wA j6xl8?r$qvZ8ꭇ߀0˕3o ?v(Z&M$wy"q GL&ﴞ /閬%Ŝow| ~7soY\H\{Q /Xj]0'}Cs$Ol/%^jiB 5!iպ!-M , /*r mX.  -VnN|MTw'@@~@f;5(8pw] e)ߕęm#~ $4-c[@$)Ĭ; ;p2%P=@0eX udϬ4.^I#O+*% $h +PsЫ5AhWyb8( ԹwxƟoWꓹ ^ɢgW🥐G7h+9"Vu1ޤ17!8 UryVe&!.f8|C|ъUr*UPuȌ>'3 kl"!E{"~P4jSBtSk}2Z)QZali 3FҾ Gm6l eT4 $㈱]9笅 YL?r&a-v.|On*P"Yٚ9E`>eH:-Xr|[?wvwcw$UPvW4Ay WXYbu`*~dI3@b}!DheT$ M%ld n+V]04#gx*_[Y\VoVܛe 5u].EJhaDAIZzhJ( =w( O@O[WF) գu%dUR^&G0voI40hU_*k**NejLt>Y˴0y:v mjg+Wf?5vL#tHs:c%fpidK4v 2tj#5>9G&,mدmJ-M\w#sw?rusMF[sM&XcV27L~-SQO5DQLOEƥ8d|s檄(ZSYN1 12\+Tb&#p\NoNyue]Ijxwx}Eb~u1F"n !f_&!н6l;TyDtFӚibl LJ}|ƞgee\rAֹ 2 j97pdDgnA'l,m(seWΔYfgƠy~V/fJ9px w[|xK &5 $[?=4=djt#sPж DMKCamp:0>"ќ?&jJ e;T~3nfZiLj#æchF Q`]"ԌC)*b>~Zg}Qf>GqY()bE~2uc%"h;=$I,0⏗^2}k _1PEih:Z5igJrZ:o(dTzZ]͂xRU A}=-<ૈZrMa.]Da_ӱPr*˲6ywL֍7Xayߥ;DP lj)]^uX?*21O07 K.\%}H9ANs8皯CޜiSYFNO5rwBCQ% Y%SRUt1w/j/;`OvCӝ|r/= sVآ8<'QkTI?wM^1x֓Gr-~-ź㞊O|J/IJ\w0^fM=̶j2$8#"Q^y 7gٱM?C4~N{\nzOKM27gmI[ X"a}XUW5lAd. ɽ\-,j݌5# 0+a3GӝmlH/9.Bb!,X}0 HEQ4eÎTuQ ~n4Q8|S@.RÆ ${sXE_r&|[|TCVNE 8k_Zv\ִN1,+(yFF=@Kȫ_#5nz!X[SGCFWR!oVos>68rЅ+PȮζ0vootY=&;=YZI?g$ڱkyG^ybG*/>@ ,[G hOw #֋,T+~>O$ٸnH.^68捕mI.7UMY3F ddrF8aҪW1>N/I,EԆf3ju~+ubș,)8Z=a&|Z$ţ:HKgFh=~Vd+@p3"wM|+O"sh?Q9dj\:LA%[]]?Y^ݷݯf ԯjx&W۬J2K,.-oϭpHgk}x';2|\./Rp%7WҢXv:+ %K,x"):=7oּJIH!ZmSk<:X 꿙*jȼ\ڟka]f - -GgJt]s~:$atǥ1|3mDjfkP7?q2F\C6mH=]@y4D0'::.113ŀ#B8 BYN4:LDZ _@X|FR"aЬǹ1{ۤ~?1@Cj~E+DIUL"q'gsL éfntU:{qGnm5 0fbK/d`@_o".=@%E<KV%AnK\oxfIkxg2JHub$O?f~l=^5>5%A9RH,a<: y3k3:N c :9hv uq ͽqMʓpkfl"=чm*XjB/,AuP1aKbX, /bڕ2;4GQ$^BL 5AF; CԱde'%ʞ]b|EQ3.s]vX,2EǰuJ _7<;.w}ս,ӎrB3):#2fzaaEcD'g%_\D/KahRn\FNTj !c}Mr 3Cˌ'! oWBEɴ2kU5/i|ٹ5<ł7i>gMƵ*+Eْ}Rj'!ysi<>x|Mrɉ)DkՊ~^8y [ }}rƒOKaz%V6a/y_@@AC GPY#e"O.#h{}j&C}~ܵa3HQ`k` ZT4GiU&>^FCPSV] q>/uRiue$_(Gf4E^-QgsZS:M>%]Mw ΄|t&&pC}q&RL_D*#܁vVe]DB ͳyp$xq%3ixqbuEҾP|0h=d86>Fl|²`yo*G廵<˶d}4kXRQFb5ANea7z ;|~3_+4fQj.H`$8.F:t9W *PʆIծFbbe`7L*5ۡn#+;(C(w\`6 7 4C ?wD BƾzށL8[)c?mNioSGW'Քxdqu0[83ɼY!E;]#./AX18SXll-I|v5նۛ"N|Ú x#?aTB]:lbIH 6-}&Fc Cә$,˜c}]UUTb8-;f9-/?_fX%Q%3eW)y[Z@ ȹ_OxrzĞEU G~oncyq[6u)?pdR(bOqFNuy O[G mS|]LP{ȱɀf`ҿ/pM"ܟQ9_w}7 5Rkڋj NbAMn91wP=ڻ޳ջ1 X{i Ha؇4e P}G[ھ_ҶA:U Q]{G`>lLOWM@e({ zo]Yw` C+;䅈tVò[n BU!!j</NZq1۸-ƒ}(f+qo=83iGTUF_͉oG4pO ({25>v>՝71v Td,D_L~4TFB9m_T˜t6_L&w^ / yf{Aq[ =S`)Ϫ8eu0u2Y{E*Sy]vb쨹z850o^̠6c^)JZr.-7=tbgYUWO<g瞨 -ʤHJzFo&sqQ~~aD$=Nh!>! ޙ(~{2o827 2<,m%1PG6/"Q 5Luyovp>ۇ+/`H =K92aY`yi}uJAtc P!,Մل#|w,K֒ovZʞ]->y۪R[il/'a!5bKkLdHx8FHo Ղ1[\!֖e t֕Zt +w&Vii+Te\Y∬f PWv2JR;A3w,Ί֥\.KzJoh<6-삎a>|fJ}g~qDѢP_/gx+3pA5s/w0_M?l)O,yO\t3n oP !ʾX->2 i..4GiShC q`zH17?hG=$N-c.I͉[8nx)tZ+%ep]ley81LN9c~!Xd][QHMՀ򻦄8z%_ #V'/):Exþd8v9|Y:>jWE'*~]=C}+c4\!z責گr1\x+y.5SYYɆp칤>v`0)Bg0UfBri'.jnA7&[tS4 Pװa"C$Bb#FrAD8ٶCeK^}2$ԺdD)1AR|LCaB@n 11펮`>;jGu6 Ӈ2pZMFTp+U=tү L4Kh3]AƎȔ6Jb13[KSe(.j2]6!KS;S1gN+x,O|yW]z"0 ""о/M\~K)aݨ:͙gp1pOϚhrΙT d S(^ʱY3j8oc9TjM򊯜Pk3d8?e]`exc=ib)˒ٶ:ܨz7Q c)*x 5}^JMJS0(ٮJz|[Х$ Ċ3ZǷg8N|4EBgh zI9^N dh~9H:48l,K~jޤ @jyO١l_/棒')g,x+iP#&>*dz6@1$tm9a),CGE]@\w@fVކΧ /^>]_?]ӥJIz^ha'h p7;IcQQջv /m>#z?PģISs9“%{m&' g,qFɔZsHU݄>m$~ 6NjUS,źG[0ww!Z~Qe;Q*oпTb$B,Ft/.3O/xQK?"Ңj/"-g6Ҿ줴e6kenL/Ҥ_=N߃]7ےrǶhbʇ .xO^j|WŇOrmO3~Hu5:nm,ε^z_V"m̻ y>z_U4C!f7%.ovC;JEឪdQ)[5̰W/jA7 ʔˎ4=)<' U.y  "cчfЃm`Tp$%RT?(^vi3M\;}]uιℒ67v tnۿ6Щ\ve'큌䪉$7?Pu8b Ȍ|;KvL|Fs"'Lg XSb%@-(2Os67qxl[!z',;/]:ٶһ~EvcO;rrI1aP"x: wbayF",f5n=Jܔp֊H! 1?sA^YZ?e/#X-ȵ0ju,ӦQ" $")1Kx 8?Yw@PA\aɖZ]@]7ca2e*adRJ7٠zP֘LF N ']6pJ, p)~пMޏR?9i@N07 =0MikaҺ/y3} ̉L3߇o_kP{ qIЭ9Hͫ`AJPQYRАf⦎dLKL z! 5T`;2 hz{hݢmÓ']ӝebu|q}@0cU敾F%ENTŖ.P*a5ƔK 9w] ڣCD+H"mU_5.…`;hvLcov)I; &=HB3*7/'e*8 -\,W4y\k‘#$@ +,IA̍͠3}u~1tno&Uc!sr'7/{IU-8"K'@}B' >Vm4*sXu'ٖ$/ d21+JUmb8 $Edϫ(e꾋q,UM92W]tmW`y'C-O5"򩲨PVoI< )7\0edr7"| QuuS.Znnaik?[x> w|%,ZVa-*[ZUEs+̽,hA9,J7*6> ;gw*xγbS1C-ա;2h|,..q) G }ǎݧ㞪.NR': hjyq۰(ZLÌGJK~QY.I:M|lv}n8(kP)Seҫ#}Vڪ&B+I 4UY^+Blt{XZ)q!@|z풗;, ɠ]-]S53S9[7"߷ }jAG^b`8FS_jq^=:}=~lbw/T gVдKN[XִޤaԾFjd`k3ЯF\X۬v.|D4%( s"TraeԽ\Wāq1Whs3BgzH"KV_1go+9ΩNG EHNӧ2C2kI#j ;/8G`PaբDeGn ANhzh6jD1g[_D/2E1v))oNo5ъdn FtTt%DdJY+{,?!e1mq&[\kW޻MXU8\ߟō^x;Js<(c V7#J 7Ψˠ ?dvpZN' H@[&n[A&Xx-oF;<'R,"}ˠڊBw*Y>\!QT$S1wd\EhT* ME%8iņˍ;\P  "3r ՠohHc, HC q-}R! LZz<8% NOS2l*ܑgUzΧ@-<&/a%Xob6Ĵāӄë,`dpun|=Zp݊l?w{x!- ֹ:74w9OC9ßjݐ5V8a<ݷh@JɈ^ҕ~ lM$It/ ss82^J+R(_xN]ץ1eCh];=ohSAo #b 6hs"Ha IiDŸ-!@GOf&Uf!J=%Fg-FpT4kg"T'x Ԡ|ma:d*OR2B<_s'dvV Uh B`zGq(̒Y1)R \*3q!pډ'Ag ވ)'z?hf٫~xeC_Cl=l.c"ҿ3-QNHp#b#"&UH-= e9ՓݻtUw1꘣ B5$L$sut#H3P 2+P* <XJ-V߲3 ^ii<8 3%r*$meCJIAK:}qآHFF25%|-w9\7٘{313M<ח+7Vm2./Ki"W맘U( [1K#ƀXKdu6}|-L~v Kڈ\KrF(NkDwق4=YѢUQF,8dnfJf` 8lU f;/0)y9d .& ږ7cj.?l1ar B'سͣˆ^M>/$Nh]6BAU|7pM?ڧU_8#@1.PIPT\кԧnͺxIaf"^j(LՇ ҂@m7x"$lk t`# |YK|'-h3JgGF+0cj5v.\LHM%eϾ<0*]f1W5Gwk ۈ+g͘k[w)b/oa`rsZP5?Sן^=4y#Jyok=|gW~Iى Ǎ(/|tKEF.MF7p'摟3;=r/7 _ }WL/e NzrwVϷBz=[>&k^Z dn2.,Pa-]'әx,*0MD9* H.!%KN?]8<>Hٿ[àl"9Z$߬sºXelŀ03ͳu?x=wB(W,,@g1fit_wz]s],zcqEDD1u[vFǴqj\m#M,VKwfg=䙔3ɴ{0?11^B^v9 ^zqrl A$ߘW>w!4jzE_Sm0h=7Rx xh&u2~#mH.2lӑ!W:De~~3~6MA :<9~.Twt8 NعBOjLxwֵDS=0)TDM' #Շ4?RE%nd^;Dzd؆3O[A|9q?zs;ᢤCpF?0B5c5sţوRqy=(S! H bşAsQ4QBj\(=|OP5h] &:meK'拀Qt}?OMR>2qkB#2`/n uo@Yqmu(W<ߏOJF_E~k P :Ǔq߯~I=v!*q%GMZe 8$MF- d2Ie,.^kȣ^dNDHG5 c8Saw.gydf|$roBt*F)ݙs;wf}PR[u@9+<:;t[+)ͪDAb2>τ('wj`^Q}߂ vL(+& v{b?cRaCO10Ucؿz!1W-|(\(aCŔ, }N7m~eSl~>MXP$cv!GGtqj'D˘11?b@t7.nի.I%Gs]˭'>6WsWU_=[S V(?N)RÓN(clR5mQgx{d'.e-=>G; Ϡ {N`4@LCl\oG@}G /Eߑax~Zj)M43%k]2$ ^y{GD1~Uz-sLwE$*"N"WSpҦA޶'b;ORJ `i@5u&&vkgڸ]BVe@ڍ@sLm oK4 BI` n6%C(هxO42FeC!¼ѕ(=hs`9]8L4#½45ڗx*4 Jܡ'q{]Vu#rˍu2Q7T.J~3|fzCWOa)'s*8d^k3N2y?CfD/ǺUAL<ؿe$ڙZ/-uε{5hnKg GqXbͱG7GJ{|`xf $]Ѡ,s hϲt<12%(y]kuzFU8{P!oN|p" 痚רx2Vjoe Oؽ?~-(4 ,' KC{([$ԗ>0)ɬ%>f 7 xyq[)ڙ_ۇxlyk+T|1/`N<0ʻ 89@5MwjosC.4oyQuc)>5jD wHەm\ސj_J[Ȗ}j !^(!wpHmTp3]rҬQg`a| /jݕ&(VC)#p!&y|r7fe¥6Wn xGY'T񉬶RUmm9i5| K\9|oȖ?9 u'|(/7[寷屠JH^PU@ ZD*hEIGfZ <5"Zմ`$x!TZk1 ʹI!_̯蝀g^yӠuόӠo9p ae!u)e&ܤ:B\\G&-QW̰!33K*:;#?62*w+E,T~ wA'OH*nQ() ߽&MkzeD}`'>& Q拼[ M hNmDx`+bjqTǨTg>qף.qrM)͗+y=+-qI?N~#lH9zyE.6J<G"RWٯϧծ+~ctO[ I+3 w~066I6j$8L6yR\r.Dx5efUWHTG4$_׉Fbv+) W2KVnV*U v3܆wrN)"lT1+%ݍ(Pp=mK!EW =;EvR菇d6 Pa{BVxvYslzdz0p1_& N?G5JӀpK>&4~={%نz}垳•#cdH6=nV.6^O։WZ|PZZyZUw $*u=뻅)[gރ㓹KgLZ@\ ?XsOC֖AAȾ|u?Mw`xnL8&C qlU,M ?xw\bH~W;KDX&ܱXPqYVڥ0wx.ެO` 'ăcA@A)ƵO^LR޷-ΟB)▮5 ϕ"Z@` NzA1='_/6Lܓ1"UwHu<nz[)V3FJ}WhWH-`H@I@ֶs;4x}5  ]Kj 4TS_Ei+c,3𚰭LF".pdb`i!GAz/OVFԲj ſ&GБi0}Um& fFnsډۗOD<X5 *-¤{o /p'͙JEl.@jP@6E&:h'; ch~VJdg@:f浭G6 $ TU6dϜ%IJpkTT+c% KAksk1$GS*{)x*jDA@(wTL$ս䣘?A _;&zvHf>bRg#$b}`Mkk} q?s!6ǜmE7`y:!ܢ'֏9`lHp.@Y ؂n ŮS^w.7e{pm<6TX+D!4]L\8k.YaD/*U#k9VOͽ2Z^=XMB`(gRw< J&0x cB:'OSt0a"' ':SfAi͸VƦdy}5Q& pu)L.㳩汶wyʃN#-cAnļW7nqٺW<= [Fhek6{VMMz؜Ӈ\ xYcO : 2'ڶ -s!c\p@Ȯ0^?4S4@漷.bUyp)&(0I]9}3Rt yC#7l(7H}dT(^R\mB2ıA5G[\2Y{D6l{B^' 9 b*H*1t4O"ӦOVFweJP,sȐsLO2 (=v^x} D z.+v)O _'Mo{k>V^ޙd[zHS%vBќ` 0~s'aa.5PJ<==xa&;SZ؈7:(vDQM ?"|*799%}9T`s>ҊJ=Mo^ RwPy7;3-QVe WM־C؆ͷ'f[nжqSA zKB}+Ftv,R:A8O#WA(L2K~^h&['5?}S\5mNy'3Y*yM.79V}oD!ޯtvJة^t>OJwDN UՇљ-AP98Cn#w+¡^$Pm,=$ۊ f3"ot-}>&KqDl)pa _Xm?* 8oG.=jŒEmMa\hzM<ړG6= >FT󓩭;k"Ji#A|r[Bf>$-uX|#ʥ&_"VV9C\_#-~fܾD ۿ|gt1~JaOMO.^ -3Gr 6fG\z n@Ϯg0,31(0oK{p42p1;ͮL/ۼ/^7cMo|43hj(mꘚZV1Iͨ;k(;\[CE:-# 'qL LmH+/f|$H,R_@Qˇ@qJZ 1Y^$iLJ6z!c,Y?ϡheG~<ތ_JB6Մ Bolo~@,#|1~-LD]÷HXW`أB %݁ѫ{Ǻ믋FCH$YX_\6ŗ!Sn6G hK|8 9І&mC^<8Œ&7 !sYL+&rWU40[,;{J lz0Q|O@!㡮7BS& vg@w+Ņ^=$|ޫ77kZcCnVXR+Z%)-NJo]@11@ַYo}mRFJ/3wU7У/vi2,kG˜BUǕ6 A53F?Sf6bZhԵ1?rX^g?7ϨkXPYT"ߥ  s5|ęR>S\!7 ~^` s0:Ǽ'FYA͆Eźe8HTk9/y .Po \#?\C0F=T(ĀA" F1iS>!S{AXLT}U4?Za;w**]9I(cVM**ډC ٝVj-6Ոxsrm:Ͽ0戢JGE#ٿП=5h "U+v/1Ǒ/\dە=42kUF$snc4bp*w0  R?0;@e`yq,o AwGҐ[ 6u0Sz;GAmn;TIJ<P}3xzaFSwʛ%g2xPu\ Î7Ub@UcgFMc^l@EY9WW9OQ5Tn׶umnZl`f(b.@G_td e~?pmnbV.L JMSCpI.'l}Kd=v؊xFVe.4fYT>=*/]^%lME;3]'x/ Q3mrtwgΜ/3HHSW#DS: ߖB!X;0:cᚴfm*m;4";Q:}k\lclIj{?ю3s}8习uKCl- ;R|h/FB 0(sS[ /;Πl~ПȄF;FGZ{ejcP}G*PᣯP>C:QD6s 9}[@}RnWkBUp^9Z`IiH%8"4Kxwg9ck(dCma*>GYup#h,G 3JysϩgڻTwaw**Y[bKi{YhҢPOWhʮuq8QKoxzLYwnڀ]f:sߦ#qk]+dJcBv`ZcydZڳI2L?~?DN4Ͳt6'QQ 0O |O+kתu IU Uwg PuMav!(ꊅ^Gg@P%sM͚S!_&dx{YC:Ҍ$2^$a,+A ̊@V }iw"O1݋ȍ&<[Em-O`G!>,X+dATEIC7ߴ˛7rknZHF=SbjswW])XoLWI &u)j?sxΨi|AɦE2"LU}_q^dM@; 5fP9$ҿFTS+Zص>E?/(=?s)ҋ v>S`D@ ({ӓ Wy2n4*ͨi3c hWH"8"o?0!0g"u  #LfN볎$o <QҿЀwxL\vH>pz[`72:aJ/DYyd}&IlL00P2W%s*uT+t1]l!ä9R^ϠAjӾ/|  {ssz3d9-$0@$@v%U٭q_k&_KnKm:-fI_Mzŋʉ"0lQͩ,A߭~]w ߾bfo`(VYIsn8@vPo;8u`Bfڙ_r>2?ycwNUU!9 d^˾"SΑXQO?~b0k߂Gz)BKboF:R[~gM*GzPgAҼ5IbǷ{Yh'7={'KT RRH(|-U(7B߰&Z'/I7UOY)Uլ78XspTd#ټSx9H& ),xEGؐϟ>;;ƒANj1'28WLTla6d+@tUzL~X T\iuBs /22u!eQ1߱xRxau59M` s(B3ri"A9یrWV| X4\CPq)8P4?n'{ Tn+t58=Z@ _/} }۰%=I빫I 8vAehu\z =6K`x+ch8&}ZqCۓ2s1V1YsO(KKW'|6WQ8WbJ-mt9#\4P`[w fȨ*$M >"ãq9!4^D?E¼s@*,ooпkNo.HR\d̳ ~ֵ! [NG }3 ef16[CEhIZPB~KVU LCUqN_UtϒWwX{o֣݂D,X$V2NFUmE׮/pAHoA=/Q. j_4$Atr(87$㮩BT@5f),f>9p~>30Ӽ."_*L>< {]XFƜ`7MLh9 yPOiz(ʈSN+NNb6zDZL!#l\g:ef WS90DDTU( ~RWi$K'mη9D 6Sml QDݖe &y}@qXd|e-Cf~ ^8v ]wT;X6}80ɑEPUؾkʯЈ3 >ZJ3bvpɊ R0opb| 羽dл8MhLXE(NL ĔXOك(H/*1Z#%tR t'u{ E0m C>$(->S92у`Jsu@WLၻ0u$R^^_E>e^F'hČ6pۧ &}v]mW8!ovg5K'!2]ȔGNI~5*eDËK&+WH;jhe %YL:Jt+_C6jCuX'VJA7C'N.U6NN P#{Hd;#!t6WS uLKRֿv_Np EV@]풨$lO%GP͠7c>_$qy1}/o:JTw5ӷ645GhǞ%3_-5L=<5AVn:TT2j)!۸| + fogdvóZcx:GV[XDwxLeiIRP?H$u\lk·~0mi9`[=/ OJY9AE\~_[˽|4;ɝ٨s@s:>SEuM S/C]2B[0M|P/f9}V7nu2 JN8Mr&̨L@oDRgYkulGU2 1*3E6Ep>wT)V7tPcEn'ҴpĀ\Mü6J}7'VFy/#C/W*r?b}U|Fb{0ԡ)೗vu(M^chTДeIlM)X::qkLTyz9I^q_Pw~[W~) +d:.W]d]Nmj* в-)ݺ@^\%}QQ-IO  '3n_'K=DՃdeU4Z5qfWXk6w(~|?s.>ք A(_cψQ;N%dz+'ʶG>|~́ Kub实Cbf{*_vd8V㏺]2l-O; >MuVGa6}7lJN9Pk)tNf&53Qx-2|W+;E"6͢6idRaս` Ho2'"cYDG3~7uC Y{D]&!&- [@t" A!+7݅]C)p8Nz'\a'cFDwZC~kp7;["93D~-0,&?ꡄ9.SW+qtY}t)Twel >IhKLVG)}9caY׻vD9{;I%9O=1˷3C$X n+/[wS7Ô|9=#a''f~}1”-VJ ibua4R4=^deP0L T׀b\^!j2]8aw3aXDz|UiiEM0A-4V {gRylN *dw1(elBm!jy4:4vɹ1!/Fet܋w<A!"}'Q?P!L,.v5 yF]"gL2%g%`\5/Ƕm }/\-cqH!䭥oX) t+X˖mDzA3rljzՉR~z#Eː"Fđ]#;XAQ|y6oG//^*Y?[3,v]?-#G5lLB"ҟ}(@e˵1YcQ%$6/n3'XY8UHv[p˹y^_,i)gO~b@(l =s(8!wA'}Dζu-`BY&@0n!4@B"tf.p=̒p6/qCH,aκinIxm-J )F܊]ib0ڲ .TCXr(/y~P&eسFU3rT)._%VTqK*W۽NJOfCҽq ;]ՓYұqENt){N!Yaտ- c#u{V (3P^cEdyd2֐?|6jfͦvۄKtWG t2'>08YɻdbEp~^QrO|qs+(|8¯?[G=ӫ3^\O]ux*+"c~F2=8RׂT[r ]siQa6kA(M쳙Jm慊/Wg_W}| v,RM ҆ꁬJ7XOڸ̹?m ]Fވ:,xq\KTkh E0ȧ1H ;ʖa@mSvmS O:P㖄xm X*$Zafxĝ~|m\M%)(lO折%;NN]}pΡ&'<J^N%U@m c2}ZC(+jcs{~[e. (zP}MNO˪q9v˪iߡFXP f4ώ![Gړ̠=PYtX'Wʈn1"%0WUe!oO q*7 J]|H(lDAֻD!lNS1FM۝65*1c#*kD%Eq9 ' @0gY^Bn9 8w@ENdں+dWn'ϋf _SܦrCȗi0P+ƚIS Ҍ9<ZUr<ǻ>B$­Q\SBQ,EMz˽)\WK#-vX.iv:)Ӯf5:r>, Tcj#wz@i0ڋǦ䮕,;F(2ý wNYֺN(y~L~vROҥ9eZ2VO‚-%40khqOF 5Uބ\KO&u@rtG_EiqƑx"_;w16” mULYÃ>`Gzy=mdz;?ǭw<^~݁OrWK#wy_~®j#<DzD,:kHg3Ң/ LO" E2᛹߄>H&C?5`/Ղ}Đsq%v0k{ {LSFpڪcT_=2YdN^"heݷe!KJiF2J!E.aj09W#oئdɇ>#FsR_Xfw;=@(73D!՛.9Qsm%Nw/ˤ U9R.$d2WwcQX޸^H@yU%Vf!kQ# Qٱ6á\ė7c):':;l3uw`5A_ϭ(w森0n=jJ9e. d@c/'O5hUFjI!lC߼ F{{/j#Go3֛EbWxks(-}Z T6dOʛoƦH08 B/lS7M/^<@s~frnl/ab|M3>~ m%#kCVwMCk?(g.x\٨C @24V% V3 V>/s~e6@3x<\(^s˅ꞂɤrHPOn:8EIrdJ0V2>7G <[GIT1Le\[Fg@A(j9=Km_NíNZs[!vQᾥPW._3YXm~һzMV&}MsJ-xC` Qw&K&#=_bm+1 U%s%jB+adzl,f ʿ^O䚻<5c!$[sq׺Xt D~-7i6 e.NHl۸=X)m)#E?Q} b"V '0.+Ps!be,2ŦCp>P*ZT*,ARvc~h!zd焊0VK%G"uk@i&+-0 hg['ImZA8 1סkkzSl|Yy3 #(38IY,aYh`YOB`7Nq$h<뙱7xp/ao@MnMԢB~ D&Û 3W:i(bvl[~*_& Tٞ)mq]:wO LMHFsMP᝹@PT>V !]?\TlʊҶ%X"ű:4G\ n}w*tͭPS`&lHa;NJv W?譐 яMMW7#g!߸^ˍ&<{HLa&_ 8tfP 4泲B_+V?/]=EX.V`Xvխ YZ