multipath-tools-0.9.0+117+suse.78cc20b-150400.4.13.1 >  A d%p9|>Sph|}H v3PӋS>3#2s&?b4]A15_WӘil )9g6[ih6.pX5xm/2SU ۛ+X"xhJ.;ь;o?Z,#Zރ^7el9te' {gJv܅$)%Gy|* @[3eIr8e75765633548d137711e802a4a1881085873ce6500da184a630cd941054ff0373b4a5ac2c2f1f944bcd8481a7ca5c1bbd6dcbbf8d%p9|D8Ŝ|-̃Om,vȿ0zYuj =4q'J:D_߻kpeHJy7?m{}7Ic?UZʍ73kmKb5%ٱ#ҐJv ce2.:´#$9Pnb5\Fq2V8[IapmM^Ch 0ZUQ-)Kv6@-@CG,>K ֨d3pK;?;d) 7 r *7 MY|   4 d   <,T6,66(89":,i=/(>/0?/8@/@B/HF/\G/pH/I00X0HY0PZ0[0\0]1^2ob3c4nd4e4f5l5u5v5t w8x9\y9=z::;`;h;l;r;Cmultipath-tools0.9.0+117+suse.78cc20b150400.4.13.1Tools to Manage Multipathed Devices with the device-mapperThis package provides the multipath tool and the multipathd daemon to manage dm-multipath devices. multipath can detect and set up multipath maps. multipathd sets up multipath maps automatically, monitors path devices for failure, removal, or addition, and applies the necessary changes to the multipath maps to ensure continuous availability of the map devices.d%*sheep04SUSE Linux Enterprise 15SUSE LLC GPL-2.0-onlyhttps://www.suse.com/System/Basehttp://christophe.varoqui.free.fr/linuxx86_64[ -f /.buildenv ] && exit 0 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 multipathd.socket multipathd.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[ -f /.buildenv ] && exit 0 [ -z "${TRANSACTIONAL_UPDATE}" -a -x /usr/bin/systemd-tmpfiles ] && /usr/bin/systemd-tmpfiles --create /usr/lib/tmpfiles.d/multipath.conf || : 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 multipathd.socket multipathd.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 if [ $1 -eq 1 ]; then [ ! -x /sbin/modprobe ] || /sbin/modprobe dm_multipath || true fi mkdir -p /run/regenerate-initrd/ touch /run/regenerate-initrd/all exit 0 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 multipathd.service multipathd.socket || : ( 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 multipathd.service multipathd.socket ) || : fi mkdir -p /run/regenerate-initrd/ touch /run/regenerate-initrd/all test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in multipathd.service ; do sysv_service="${service%.*}" rm "/var/lib/systemd/migrated/$sysv_service" || : done fi if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi if [ "$FIRST_ARG" -ge 1 ]; then # Package upgrade, not uninstall if [ -x /usr/bin/systemctl ]; then ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_RESTART_ON_UPDATE" && . /etc/sysconfig/services test "$DISABLE_RESTART_ON_UPDATE" = yes -o \ "$DISABLE_RESTART_ON_UPDATE" = 1 && exit 0 /usr/bin/systemctl try-restart multipathd.service ) || : fi fi if [ $1 -eq 0 ]; then # Package removal for service in multipathd.socket ; do sysv_service="${service%.*}" rm "/var/lib/systemd/migrated/$sysv_service" || : done fi if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fil`x`qf+"@FHf AA큤A큤A큤A큤d%&d%!d%!d%!d%d%d%d%d%d%d%d%d%d%d%d%&dbVdbVd%&dbVd%d%d%d%7fe778beefb4381ab3155f5361177cc52217245a2e90e445335da42c003d8141eeccbc45db13a653dddd439e0e3a455ed965ed53100c80a566cde1e602fba04e816ceaf8c6cd8e872c23b98c5c2fdb17e41e46fdf99cfbce94c400d7ccfca1c6d8bc9056cc786834bdbf7529bfc3e2463d985790d4345f32ce5bad142e2ec0f363ccca50a060f5fd723622ccc51364015b7980fa8b9de63c83802c9988f17c2bae60d39901a388fe0c3beffdca1273738241510165d07a9909e624d6e017ff60806d7605ad8dfbe1ccfeaf7113ec267da9e8c23b898c4ac9c77d76487a0ef9d87fe3d6ba763cc9a45e8895b134b7759c27fb51509b9eea0c5f09b85d4391f38aa64ebde32cf756c2925ad17f557f343ae1d7d8e43f5b8c93c24011604de14a3df543968457224a8cf718b136412b8eddfeff54238fb7a1f6abd6ed490d8f3ebc36f4803ab86c57ee79c936eed2e6ba1a9a8ec7ba2f0d58484dfda75e13ea8022fb0a5d2008c609fec129d2ffd01dd7f65f0e3868bcf465b6fda76e25ff896ce98177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b88064309b8a2db13549895c9135764f47889feea5633f00a53f8eef28d89d79a24489c711778ac43bbe58ae2916e89afc9d2693cca66ff93b950d1f9f730dd0a4ab9464a0a2bfacf59605d662402e3ec3bb578ba30e522e1ef5b0700e841bc0a4a8d53d11a8e8b17e9994b45f276a8ab534f3c8da8176e5507739f291101b5280d885eservice@rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootmultipath-tools-0.9.0+117+suse.78cc20b-150400.4.13.1.src.rpmmultipath-toolsmultipath-tools(x86-64)@@@@   @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@     (kmod(dm_multipath.ko) if kernel)(kmod(scsi_dh_alua.ko) if kernel)(kmod(scsi_dh_emc.ko) if kernel)(kmod(scsi_dh_rdac.ko) if kernel)/bin/sh/bin/sh/bin/sh/bin/sh/bin/shcoreutilsdevice-mappergrepkpartxlibc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.6)(64bit)libc.so.6(GLIBC_2.7)(64bit)libc.so.6(GLIBC_2.9)(64bit)libdevmapper.so.1.03()(64bit)libdevmapper.so.1.03(Base)(64bit)libdevmapper.so.1.03(DM_1_02_98)(64bit)libmpathcmd.so.0()(64bit)libmpathcmd.so.0(LIBMPATHCMD_1.0.0)(64bit)libmpathpersist.so.0()(64bit)libmpathpersist.so.0(LIBMPATHPERSIST_2.1.0)(64bit)libmpathpersist.so.0(__LIBMPATHPERSIST_INT_1.0.0)(64bit)libmultipath.so.0()(64bit)libmultipath.so.0(LIBMULTIPATH_15.0.0)(64bit)libmultipath.so.0(LIBMULTIPATH_15.0.1)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libpthread.so.0(GLIBC_2.3.2)(64bit)libpthread.so.0(GLIBC_2.3.3)(64bit)libsystemd.so.0()(64bit)libsystemd.so.0(LIBSYSTEMD_209)(64bit)libudev.so.1()(64bit)libudev.so.1(LIBUDEV_183)(64bit)liburcu.so.6()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rpmlib(RichDependencies)sg3_utilssuse-module-toolssystemdsystemdsystemdsystemd1.2.783.0.4-14.6.0-14.0-15.2-14.12.0-14.14.3ddac@c6@c6@cbγbγb{@bzSby@bX bA@b @b bar@a+@a@aa@aI@a;Ha^a @`[`@`g@`e`e`S@`KW`H`#__$_cO_a@_a@_Z@_G@_FN_?@_>e^@^(@^^>@^>@^I^C^ P@]4@]o@]g@]-@]G@] ] \8\@\\\\\~d\~d\8@\5@\4\@\@\@[@[@[@[:[6@[0@[0@ZJ@ZJ@Z̧@Z̧@Z̧@Za@ZZZI@ZZZZZp^@Zk@ZaZ]@ZWQZtimeout for updating persistent reservations (gh#opensvc/multipath-tools#45) * libmultipath: is_path_valid(): check if device is in use (bsc#1203141) (added libmount dependency) * libmultipath: orphan paths if coalesce_paths frees newmp (bsc#1207546) * multipathd: handle no active paths in update_map_pr (bsc#1207546) * multipathd: make pr registration consistent (bsc#1207546) * multipath.conf(5): improve documentation of dev_loss_tmo (bsc#1207546) * libmpathpersist: fix command keyword ordering (bsc#1207546, bsc#1209345) * libmultipath: fix 'show paths format' failure * Use "queue_mode bio" for NVMeoF/TCP devices * minor upstream bug fixes * man page fixes * hwtable fixes * github workflow adaptations from Factory / SLE15-SP5- Fix "rpm --verify" (bsc#1207232)- Use %tmpfiles_create macro for tmpfiles.d file- Update to version 0.9.0+62+suse.3e048d4: * Fix multipathd authorization bypass and symlink attack (bsc#1202739 CVE-2022-41973 CVE-2022-41974) * add multipath-dracut.conf: dracut config file to install tmpfiles.d/multipath.conf in initramfs- Update to version 0.9.0+55+suse.33d8854: * Avoid linking to libreadline to avoid licensing issue (bsc#1202616)- Update to version 0.9.0+39+suse.51a2ab1: Upstream bug fixes: * libmultipath: fix find_multipaths_timeout for unknown hardware (boo#1201483) * multipath-tools: fix "multipath -ll" for Native NVME Multipath devices (boo#1201483)- Update to version 0.9.0+33+suse.fdc6686 * multipath.conf: add support for "protocol" subsection in "overrides" section to set certain config options by protocol. * Removed the previously deprecated options getuid_callout, config_dir, multipath_dir, pg_timeout * hwable fixes and additions * multipath.conf(5): add disclaimer about vendor support * libmultipath, kpartx: fix callers of dm_get_next_target() * Change built-in defaults for NVMe: group by prio, and immediate failback * Allow compilation with -D_FORTIFY_SOURCE=3- Update to version 0.8.9+90+suse.71a70fb: * support overriding -D_FORTIFY_SOURCE in OPTFLAGS * add -U_FORTIFY_SOURCE to optflags to avoid compilation errors on old distros- Update to version 0.8.9+87+suse.a1eb122: * add ability to autodetect support for -D_FORTIFY_SOURCE=3- Update to version 0.8.9+85+suse.a9da21c: * This is a pre-release of multipath-tools 0.9.0 * multipath.conf: add "protocol" subsection in "overrides" section This allows to set "dev_loss_tmo", "fast_io_fail_tmo", and "eh_deadline" on a per-protocol basis rather than per storage * multipath.conf: drop support for deprecated options: getuid_callout, pg_timeout, config_dir, multipath_dir * multipathd: don't switch to DAEMON_IDLE during startup (bsc#1199346, bsc#1197570) * multipathd: avoid delays during uevent processing (bsc#1199347) * Fixes for minor issues reported by coverity * Fix for memory leak with uid_attrs * Fix possibility to redefine -D_FORTIFY_SOURCE macro. * Updates for built in hardware db- Update to version 0.8.9+42+suse.45974f11: * Logging improvements * Fix busy loop with delayed_reconfigure (bsc#1199342) * multipathd: use remove_map_callback for delayed reconfigure * multipathd: Don't keep starting TUR threads, if they always hang. (bsc#1199345) * Fix handling of path addition in read-only arrays on NVMe * Updates of built-in hardware database - Update to upstream 0.8.9 * libmultipath: only warn once about unsupported dev_loss_tmo * Otherwise code-identical to 0.8.8+64- If multipath-tools is newly installed, load dm-multipath (bsc#1196898)- Update to version 0.8.8+64+suse.f265f7e0: * libmultipath: fix printing native nvme multipath topology (bsc#1196011) * libmultipath: add %L path wildcard for 64-bit hex LUN * libmultipath: support host adapter name lookup for s390x ccw bus- Update to version 0.8.8+60+suse.4c5922cb: * multipathd: add suppport for FC Fabric Performance Impact Notifications (FPIN) (bsc#1195506)- Version 0.8.8+57+suse.dfb672fe * kpartx.rules: skip MD devices (bsc#1195644) * libmultipath: hwtable: use ALUA for all LIO targets (bsc#1195649) * multipathd.service: drop ExecStartPre for loading dm-multipath (bsc#1195397)- Version 0.8.8+45+suse.628d603e * fix handling of historical-service-time path selector (bsc#1195425) * fix marking multipath devices as failed prematurely on startup (bsc#1195426) * multipathd.service: remove LimitCORE=infinity directive This should only be enabled for debugging. * multipathd.service: don't load scsi_dh modules (bsc#1195397) This is done via modules-load.d functionality on (open)SUSE - Upstream fixes: * Fix claiming of paths with "find_multipaths strict" * Avoid unnecessary read-only reloads- Version 0.8.8+13+suse.79c3556f * code-wise identical to 0.8.8+38+suse.2bdd3a14 (previous version number was too high by mistake)- Update to 0.8.8+38+suse.2bdd3a14.obscpio * upstream version bump. Code-wise identical to 0.8.7+138+suse.7c9afe31- Drop versioned dependency on libmpath0 again (bsc#1190622) * Since 0.8.6, libmultipath and libmpathpersist have got proper ABI versioning, and rpmbuild auto-generates dependencies on libmultipath.so.0(LIBMULTIPATH_13.0.0) etc.- Update to version 0.8.7+138+suse.7c9afe31: New upstream version (pre-0.8.8) * deprecate "config_dir" and "multipath_dir" config options (will be removed in future version) * remove dependency on systemd-udevd-settle.service (boo#1193336) * fix crash in remove_map (boo#1193334) * CLI: add path wildcard "%I" for init state * CLI: add "reconfigure all" command * allow multiple pending "reconfigure" commands (bsc#1189551) * speed up "reconfigure" by avoiding unnecessary map reloads (bsc#1189551) * rework of CLI command handler (unix socket handler) to avoid hanging CLI commands (bsc#1189551) * fix multipathd startup after stop during reconfigure (boo#1193338) * improve error detection and warning messages in config file parser * fix exit status of multipath -T (bsc#1191900) * fix defects reported by coverity (boo#1193342) - avoid sleeping with locks held - exit if bindings file is broken - set umask before mkstemp - add bounds and consistency checks in SCSI VPD parsing code * add hardware table entry for DellEMC/ME4 (PowerVault ME4)- Add a versioned dependency of multipath-tools on libmpath0 (bsc#1190622)- Update to version 0.8.7+14+suse.5a09bfa1: * Fix possible string overflows (bsc#1188148) - Upstream fixes / changes * better string handling * multipath: print warning if multipathd isn't running * mpathpersist: better error msg when no usable paths exist * fixes from 0.8.6+32+suse.f11c192 merged upstream- Spec file: remove compatibility code for SLE <= SLE15-SP2- Update to version 0.8.6+32+suse.f11c192: * libmultipath:fix compilation with glibc 2.34 (bsc#1189099) * libmultipath: avoid buffer size warning with systemd 240+ (bsc#1189176) * libmultipath: use uint64_t for sg_id.lun (bsc#1187534) - Upstream bug fixes: * multipath-tools: make HUAWEI/XSG1 config work with alua and multibus * multipath-tools: add info about HPE Alletra 6000 and 9000 * multipathd: cli_getprkey(): fix return value and "aptpl" support * multipathd: don't rescan_path on wwid change in uev_update_path * kpartx: Don't leak memory when getblock returns NULL * multipath: free vectors in configure * multipathd: fix ev_remove_path return code handling * multipathd: remove duplicate orphan_paths in flush_map * multipathd: don't fail to remove path once the map is removed * multipathd: fix compilation issue with liburcu < 0.8- install to /usr on Tumbleweed (boo#1029961)- Update to version 0.8.6+10+suse.47711374: * Github workflows: add CI for SUSE-specific branches- Disabled LTO for multipath-tools * The test for is_valid_path fails if LTO is enabled, just disabling it for %check is insufficient.- Update to version 0.8.6+9+suse.6c05a61: Update to upstream 0.8.6. * add eh_deadline option to avoid endless SCSI error handling * add wwid_recheck option to detect storage configuration changes * add library versioning for libmultipath, libmpathpersist etc. and to libmultipath plugins * move some global symbols to libmultipath (udev, logsink, etc) and provide default implementations for get_multipath_config() etc. This allows simplifiying libmpathpersist_example.c drastically. * fixes for shutdown issues and various race conditions on exit * improve cleanup on exit, fix memory leaks * add libmpathvalid library * fixes for SAS expanders (bsc#1178377, bsc#1178379, bsc#1177081) * Avoid access to root FS while queueing IO (bsc#1178049, bsc#1181234) * lots of bug fixes, additions to built-in hardware table, and CI improvements (bsc#1186212) * kpartx: free loop device after listing partitions (boo#1107187) Bug fixes on top of 0.8.5 mentioned below are also included in this upstream version.- Update to version 0.8.5+30+suse.633836e: * multipathd: give up "add missing path" after multiple failures (bsc#1183963)- Update to version 0.8.5+29+suse.5dabcd2: * 11-dm-mpath.rules: run "multipath -U" with -v1 (bsc#1182871) * libmultipath: merge update_multipath_table() and update_multipath_status() (bsc#1183666)- Update to version 0.8.5+26+suse.2cbedfd: Avoid "illegal request" errors on non-RDAC storage (bsc#1182072, bsc#1177371)- Update to version 0.8.5+23+suse.c11b054: * multipath -U: reduce log level of "adding new path" message (bsc#1181435, bsc#1183666)- Update to version 0.8.5+22+suse.e1e3c48: * multipath-tools tests: fix stringop-overflow build errors with gcc 11 (bsc#1181877) * README moved to README.md (has been converted to markdown upstream)- Update to version 0.8.5+12+suse.3b0e9ca * libmultipath: force map reload if udev incomplete (bsc#1178662, bsc#1172157, bsc#1175454, bsc#1176406) - Fixes from upstream 0.8.5 * multipath-tools: add MacroSAN arrays to hwtable * libmultipath: Allow discovery of USB devices (add configuration option "allow_usb_devices")- Remove compatibility code for SLE <= 12-SP2 from spec file- Bugref for all minor fixes since SLE15-SP2 release (bsc#1176670) - Added README.alua- Update to version 0.8.4+192+suse.1bc10ad: * Fix handling of hardware properties for maps without paths (bsc#1176644)- Update to version 0.8.4+190+suse.fe234ea: * Fixes for daemon shutdown issues from SLE(bsc#1110060, bsc#1110439) - multipathd: allow shutdown during configure() * fix compilation of external programs with -lmultipath (bsc#1133957, necessary after the above fix) * Minor upstream fixes- Missing past changelog bug references: * 0.7.3+10+suse.70ccb55b0439: Patch series for NVMe discovery and failover (bsc#1038865, bsc#1057820) * 0.7.9+109+suse.203c1cf * setup_map: wait for pending path checkers to finish (bsc#1118224)- Update to version 0.8.4+183+suse.1817ce2: Added reviewed upstream fix for multipath crash * multipath: get_dm_mpvec: discard broken maps- Update to version 0.8.4+180+suse.50a2698: * Fix memory access / leak issues found with valgrind- Update to version 0.8.4+170+suse.801341f: * libmultipath: tests: fix bitfield tests * Spec file: disable LTO for %check (bsc#1133122)- Update to version 0.8.4+167+suse.70bef90: Pull in reviewed upstream changes - Bug fixes * libmultipath: add consistency check for alias settings (bsc#1172429) * libmultipath: select_action(): don't drop map if alias clashes (bsc#1172429) * libmultipath: refuse reloading an existing map with different WWID (bsc#1172429) * libmultipath: select_action(): force udev reload for uninitialized maps (bsc#1172157) * multipathd: uev_trigger(): handle incomplete ADD events (bsc#1172157) * improve logging for failure to set dev_loss_tmo (bsc#1173060, bsc#1173064) * libmultipath: add device to hwtable.c (bsc#1174026) (ETERNUS AHB) - New features * multipath: add -D option to skip multipathd delegation * multipath: delegate flushing maps to multipathd * multipathd: add "del maps" multipathd command - Other changes * cleanup disassemble_map() code path (bsc#1178377, bsc#1178379) * multipath-tools: introduce INIT_REMOVED state * logging improvements * fix "multipathd show devices" * libmultipath: remove uevent listener failback * libmultipath: create bitfield abstraction * libmultipath: count pending paths as active on loads * kpartx: handle alternate bsd disklabel location - Lots of minor fixes and cleanups - Spec file: use %service_del_postun_without_restart macro- Update to version 0.8.4+43+suse.908383f: * enable negated regular expression syntax in conf file (bsc#1182917) * change default devnode blacklist to '!^(sd[a-z]|dasd[a-z]|nvme[0-9])'- Update to version 0.8.4+40+suse.b06c2e5a: - Fix udev rule processing during coldplug (bsc#1172157) * 11-dm-mpath.rules: Fix udev rule processing during coldplug - Fix compilation with gcc-10 * fix boolean value with json-c 0.14 * libmultipath: fix condlog NULL argument in uevent_get_env_var - Reviewed upstream changes: * simplify failed_wwid code * centralize path validation code - Use pkgconfig for BuildRequires- Update to version 0.8.4+31+suse.8f53764: * Fix sporadic build failures caused by missing build dependencies- Update to version 0.8.4+29+suse.c27ed8d: * multipath-tools: Makefile.inc: set -Wno-error=clobbered * Makefile.inc: keep warning flags during rpm build * Eliminate compiler warnings on 32bit build. * Fixes for tests under i586 - Spec file: add %check section to run multipath-tools CI * not on SLE12, as cmocka is missing * add build dependency on cmocka for building tests * run "make test" with parallel make- Update to version 0.8.4+19+suse.48fc2f4: * multipath: add "-e" option to enable foreign libraries * libmultipath: set "enable_foreign" to NONE by default * deleted libmultipath-set-enable_foreign-to-NONE-by-default.patch (included in factory git repo now). * Makefile: dependency fixes for parallel build - Get rid of %is_opensuse: * drop build workaround for Leap 42.1 * build libdmmp for everything except SLE12/Leap42 and older - Other spec file updates: * use %make_build to speed up build (possible with 0.8.4) - Migrated to .obscpio format.- Update to version 0.8.4+16+suse.f319f7ea - Changed github workflow back from merge-based to rebase-based. This makes it much easier to assess differences between upstream and SUSE code. * Use TAG_OFFSET in _service, as this is now possible again. - Reviewed upstream patches added: * kpartx.rules: fix handling of synthetic uevents (bsc#1161923) * libmpathpersist: limit PRIN allocation length to 8192 bytes (bsc#1165786) - Update upstream version to 0.8.4 * drop nr_active field, always count active paths (bsc#1125043) * kpartx: fix detection of dasd partition tables on loop devices (bsc#1139775) * directio path checker fixes * lots of fixes for compiler warnings, and cleanups * nvme: update to nvme-cli 1.9- Update to version 0.8.3+11+suse.7dcdf2f: * libmultipath: fix files read from config_dir (bsc#1162896)- Update to version 0.8.3+10+suse.86684b9: * libmultipath: fix compilation with -fno-common (boo#1160403)- Update to version 0.8.3+9+suse.f6f2a52 - Minor upstream improvements and bug fixes * libmultipath: EMC PowerMax NVMe device config- Update to version 0.8.2+27+suse.3ff280b: * Added upstream patch to fix premature path reinstantiation with san_path_err_XX (boo#1149319)- Update to version 0.8.2+26+suse.d884195: - Don't activate NVMe native multipath support by default * multipath.conf.5: document foreign library support * multipath.conf: add "enable_foreign" parameter (bsc#1139837) * Set default for "enable_foreign" to "NONE" (bsc#1139837) added libmultipath-set-enable_foreign-to-NONE-by-default.patch - Added reviewed upstream patches (marginal path patch set from Red Hat) * add "marginal_pathgroups" config option * deprecate "delay_wait_checks" and "delay_watch_checks"; they are now automatically mapped to eqivalent "san_path_err_..." settings.- Update to version 0.8.2+11+suse.0f6a649: * kpartx: recognize DASD on loop devices again (bsc#1139775) * Bump version to 0.8.2 - most changes were already in SUSE tree * Man page improvements (bsc#1148767)- Update to version 0.8.1+59+suse.f947184: * libmultipath: trigger uevents for partitions, too (bsc#1140146)- Update to version 0.8.1+58+suse.2af8f92: * libmultipath: more cautious blacklisting by missing property (don't blacklist paths because of temporarily missing udev properties) * libmultipath: fix memory leak with "uid_attrs" config option * libmultipath: get_uid: straighten the fallback logic - Fix SCSI VPD 0x80/0x83 parsing - Fix compiler warnings introduced by gcc 9: * -Wstringop-overflow, -Wstringop-truncation, - Waddress-of-packed-member- Update to version 0.8.1+28+suse.fea562a: * mpathpersist: optimize for setups with many LUNs (bsc#1134648) * mpathpersist: add option -f/--batch-file (bsc#1134648) * libmultipath: get_prio(): really don't reset prio for inaccessible paths (bsc#1118495) - Upstream bug fixes from dm-devel (bsc#1139369): * multipath: call store_pathinfo with DI_BLACKLIST * multipathd: fix REALLOC_REPLY with max length reply * libmultipath: make vector_foreach_slot_backwards work as expected * multipathd: fix client response for socket activation (bsc#1133861) * various minor fixes (coverity)- Disable kmod() style dependencies again (bsc#1119414) * For TW, dependencies will be autogenerated (gh#openSUSE/rpm-config-SUSE#3) * For SLE, feature is currently rejected (jsc#SLE-3853) - Update to version 0.8.1+8+suse.8c11498: * Avoid deadlock situation during udev settle (bsc#1131789, bsc#1125145) - multipath -u: test socket connection in non-blocking mode * Fix priority handling for offline paths (bsc#1118495) - Update to upstream 0.8.1 (bsc#1148767) * Avoid device IO in "multipath -u" (bsc#1125145) * multipathd: protect all access to running_state (bsc##1110060, bsc#1110439) * Improve handling of changed WWIDs and temporary failure to obtain WWID. Option "disable_changed_wwids" is now ignored. (bsc#1184260) * Fixes for PATH_PENDING state handling (bsc#1125043) * libmultipath: hwtable: add Lenovo DE series (bsc#1125507)- Trim %if..%endif guards that do not affect the build result. - Combine %service_* calls to reduce generated code. - Make use of %make_install.- Re-enable kmod-style dependencies for multipath-tools package (bsc#1119414) - Separate out libmpath0 (bsc#1119414) - Spec file improvements * Add Conflicts: for older multipath-tools to libmpath0 * Move license files to the libmpath0 package, which contains the code with complex licensing. The executables are GPL-2.0 anyway. * Remove bogus dependency of -devel package on device-mapper * -devel package depends on libmpath0, not multipath-tools * Remove %dir %{_defaultlicensedir} for SLE12-SP3 and newer (John Vandenberg ) * Remove unused /var/cache/multipath directory * Remove check for multipath maps in %pre and %post * Remove SLE11-specific multipathd service stop / start from %pre / %post * Remove obsolete tools from package description (bsc#1129827) * Add -n to %service_del_{pre,post}un for multipathd.socket- Update to version 0.8.0+17+suse.a28893f: * Code-identical to 0.7.9+139+suse.ed9d450, except for new version number - Disable kmod() style dependencies for now, as they are causing problems with image builds (bsc#1119414). They'd been active for SLE15-SP1 only, anyway. - _service: determine "tag offset" manually, the patch count determined by git is far too high.- Fix module name in multipath.conf (bsc#1119414) * The modules-load.d entry must match the filename exactly- Update to version 0.7.9+139+suse.ed9d450: * multipath-tools: Build: properly parse systemd's version- Add kmod(xyz) style dependencies for SLE15-SP1 (jsc#SLE-3853, fate#326579, bsc#1119414)- Update to version 0.7.9+138+suse.0edd0a2: - Include reviewed fixes from upstream * libmutipath: continue to use old state on PATH_PENDING * libmultipath: disable user_friendly_names for NetApp * multipath: blacklist zram devices * various fixes for martinal path code - Bug fixes: * multipathd: Fix miscounting active paths (bsc#1125043) * multipathd: avoid null pointer dereference in LOG_MSG (bsc#1127873) * minor fixes suggested by coverity (bsc#1127879)- Add BuildRequires on suse-module-tools * we need it for regenerate_initrd_posttrans- Update to version 0.7.9+111+suse.b4232b7: - merged upstream cb4a979a (SUSE bug fixes merged upstream, code-identical to previous release).- Update to version 0.7.9+109+suse.203c1cf: * multipathd: avoid crash in cli_list_path (bsc#1121134) * libmultipath: fix compilation with older kernel headers (bsc#1121066) - merged upstream fb824725 * Improved NVMe support in both native and dm-mpath mode added basic NVMe ANA support (bsc#1119898, bsc#1118495) * Fix prio output in "multipathd show topology" (bsc#1119897) * multipathd: fix daemon not really shutdown (bsc##1110060, bsc#1110439)- Update to version 0.7.9+90+suse.f81e290: * libmultipath: Increase SERIAL_SIZE to 128 bytes (bsc#1107179)- Update to version 0.7.9+89+suse.df77b66: - re-enable "san_path_err_xy" options These have been removed upstream, but they were supported in SLE-15/Leap15.0, so we can't simply throw them away. Improve documentation, mark them as deprecated, but keep the code in place.- Update to version 0.7.9+85+suse.766b95e: * upstream patch series to make verbosity level 3 less verbose and thus better usable (bsc#1118937) * fix for handling device size mismatch in coalesce_paths() (bsc#1037379) * libmultipath: fix false removes in dmevents polling code (bsc#1116272) * Spec file: remove build dependency on dracut which causes build errors for some distributions- Update to version 0.7.9+58+suse.0790830: * libmpathpersist: fix off-by-one error in PRIN length check (bsc#1099007) * multipathd: fix mpp->hwe handling when paths are freed (fix possible crash caused by new hardware table code)- Update to version 0.7.9+55+suse.9fc8439: (note the "55" is due to former merge operations. We actually only have 7 patches on top of upstream. All other patches referenced below as "not upstream" have been merged). * Bump version to 0.7.9 * multipathd: reset delay_wait_checks counter on failure (bsc#1114771) * multipathd: fix irritating "minor number mismatch" message (bsc#1111116) * fix possible failure to shut down (bsc#1110060, bsc#1110439) * upstream "checker overhaul" - cleanups and improvements for path checkers * Upstream fixes for failures handling path initializiation * various small upstream bug fixes.- Update to version 0.7.7+136+suse.19bb285: Bug fixes from upstream, and SUSE bug fixes * multipathd: try SCSI persistent reservations for SCSI only (bsc#1108875) * libmultipath: allow sysfs_pathinfo to return SKIPPED (bsc#1098458) * libmultipath: Fixup updating paths (bsc#1110418) * multipathd: fix memory leak on error in configure (bsc#1110418) * multipathd: minor fixes (bsc#1110418) * multipathd: function return value tweaks (bsc#1110418) * multipath: fix max array size in print_cmd_valid (bsc#1110418) * libmutipath: don't use malformed uevents (bsc#1110418) * libmultipath: fix null dereference int alloc_path_group (bsc#1110418) * libmultipath: fix memory issue in path_latency prio (bsc#1110418) * libmultipath: fix length issues in get_vpd_sgio (bsc#1110418) * multipathd: decrease log level of uevent messages (bsc#1110586) * multipathd: fix version check for DM_DEV_ARM_POLL ioctl (bsc#1110587) * libmultipath: pathinfo: skip hidden devices (bsc#1110586) * libmultipath: nvme: shorter topology output (bsc#1082419) * libmultipath: nvme: fix path detection for kernel 4.16 (bsc#1091112) * libmultipath: fix gcc 8.1 "truncated output" warnings (bsc#1099007) * (lib)mpathpersist: use O_RDONLY file descriptors (bsc#1093220) * libmpathpersist: fix byte swapping for big endian systems (bsc#1099036) * multipath-tools/tests: add tests for get_unaligned_beXX (bsc#1099036) * libmultipath: add (get|put)_unaligned_be64 (bsc#1099036) * libmpathpersist: fix stack overflow in mpath_format_readfullstatus() (bsc#1099007) * libmpathpersist: fix typo in mpath_format_readfullstatus (bsc#1099007) * libmpathpersist: remove duplicate test in readfullstatus (bsc#1099007) - Update to upstream 1a8625abd (0.7.7+82) * minor fixes for kpartx, found by coverity * mpathpersist: add --param-alltgpt option * libmultipath: add "protocol" blacklist option. * multipathd: add new wildcard "%P" for "protocol" * multipath-tools: fix products names in hwtable * libmultipath: more debug output in alua prioritizer (bsc#1080965) * libmultipath: alua: retry RTPG for NOT_READY and UNIT_ATTENTION (bsc#1080965) * libmultipath: alua_rtpg: use condlog for error messages (bsc#1080965)- Update to version 0.7.7+75+suse.6287aef: Added minor updates from upstream * multipath-tools: add info about how to enable ALUA in ONTAP * multipath-tools: add directio path_checker for DASD devices * multipath-tools: make Product Name mandatory and add all of them Minor rebase, as some SUSE patches have been merged upstream (all mentioned in previous changelogs)- Update to version 0.7.7+72+suse.4b24466: * multipath: fix return code handling in delegate_to_multipathd (bsc#1098177) * multipath: don't start multipathd unnecessarily (bsc#1098177)- Update to version 0.7.7+70+suse.4a5941e: * libmultipath: change partition_delimiter default to "-part" (bsc#1073622, bsc#1056526) * change default for find_multipaths to "greedy" (bsc#1099054) * libmultipath: allow distributions to change partition_delim default (bsc#1073622, bsc#1056526)- Update to version 0.7.7+67+suse.a7d1e14: - RBD/RADOS backend support has been removed upstream remove support for it in SUSE, too (boo#1099037, FATE#826853) * added Obsoletes: for multipath-tools-rbd. - libdmmp version has changed to 0.2.0 - New patches not yet upstream: (Wed Jun 12 2018: these are now upstream, since 0.7.8) * multipathd: fix mpp->hwe handling on path removal (boo#1099028) * libmultipath: print correct default for delay_*_checks (boo#1099026, bsc#1110418) * libmultipath: avoid error messages from RDAC check (bsc#1108728, bsc#1075539) * (lib)mpathpersist: use O_RDONLY file descriptors (bsc#1093220) * libmpathpersist: fix byte swapping for big endian systems (bsc#1099036) * multipath-tools/tests: add tests for get_unaligned_beXX (bsc#1099036) * libmultipath: add (get|put)_unaligned_be64 (bsc#1099036) * libmpathpersist: fix stack overflow in mpath_format_readfullstatus() (bsc#1099007) * multipathd: fix buffer size in cli_getprkey (bsc#1099028) * libmultipath: fix gcc 8.1 "truncated output" warnings (bsc#1099007) * libmpathpersist: fix typo in mpath_format_readfullstatus (bsc#1099007) * libmpathpersist: remove duplicate test in readfullstatus (bsc#1099007) - SUSE specific patches preserved: * multipath.rules: temporary rule to obtain ID_WWN for NVMe (bsc#1076828) * kpartx: create symlinks for dmraid devices (bsc#1064212) * multipath.conf.5: document no_partitons compat support (fate#323406) * libmultipath: compat support for 'features "1 no_partitions"' (fate#323406) * Added fossology assessment as README.licenses (bsc#1088801) - Dropped patches from previous factory/SLE15 release (0.7.3+69+suse.218a0d0): * libmultipath: don't [un]set queue_if_no_path after domap obsoleted by "libmultipath: cleanup features handling code" * multipath.rules: use -i flag to multipath obsoleted by path detection patch series * libmpathpersist: add support for prkeys file v3 obsoleted by "mpathpersist: Fix invalid condition check" * libmultipath: fix deadlock in tur.c obsoleted by "libmultipath: fix tur checker locking" * checkers/rbd: missing pthread_lock() on failure path obsolete because of RBD removal * libmultipath/hwtable: don't hard-code ALUA for IBM IPR obsoleted by "libmultipath: hwhandler auto-detection for ALUA" and "libmultipath: don't reject maps with undefined prio" (bsc#1085212, bsc#1075129) - Update to upstream version 0.7.7+50 (39ad8dc8) - rework of "find_multipaths" logic * find_multipaths can now be "strict", "yes", "no", "greedy", or "smart" * SUSE default is "greedy" for now, consistent with previous behavior * "multipath -u -i" not necessary in udev rules any more (removed SUSE patch "multipath.rules: use -i flag to multipath") - patch series for config file handling (bsc#1067789): * fix inconsistent handling of multiple config file entries matching the same device (bsc#1067789) * multipath: implement "multipath -T" (bsc#1067789) * multipathd: implement "show config local" (bsc#1067789) * libmultipath: merge "multipath" config sections by wwid * multipathd: add path format wildcard "%0" for failures * libmultipath: config parser: Allow '"' in strings - multipath-tools: foreign/NVME implementation (bsc#1082419) for native NVME multipath configurations - Other new upstream features: * mpathpersist: add all_tg_pt option * add polling dmevent handler (only one thread waiting for device-mapper events rather than one per map). * multipath: add "ghost_delay" parameter * "marginal path" path state checking for better handling of unstable "shaky" connections in a SAN. conf options "marginal_path_err_rate_threshold" etc, see man page. This replaces the previous "san_path_err_threshold" functionality. - Upstream bug fixes: * Man page corrections and improvements for multipath.conf(5) * libmultipath: fix memory leak in process_config_dir() (bsc#1110352) * multipath: don't check timestamps without a path * multipathd: handle errors in uxlsnr as fatal (bsc#1086025) * libmultipath: don't reject maps with undefined prio (bsc#1085212, bsc#1075129) * multipathd: fix reservation_key check (bsc#1099008) * 11-dm-mpath.rules: dont't run "multipath -U" during coldplug (bsc#1084748) * libmultipath: hwhandler auto-detection for ALUA (bsc#1085212, bsc#1075129) * multipath: fix rcu thread cancellation hang (bsc#1110418) * multipathd: register threads that use rcu calls (bsc#1110418) * multipathd: fix waiter thread cancelling * multipathd: use nanosleep for strict timing (avoids possible races with SIGALRM) * logging fixes: * libmultipath: fix log_pthread processing * libmultipath: set dm_conf_verbosity * libmultipath: fix basenamecpy * libmultipath: uev_update_path: update path properties * libmultipath: uev_update_path: always warn if WWID changed * libmultipath: get_uid: don't quit prematurely without udev (bsc#1108728) * libmultipath: get_uid: check VPD pages for SCSI only (bsc#1108728) * libmultipath: fix wrong output of "multipath -t" * Introduce the libmultipath/unaligned.h header file (bsc#1099036) * libmultipath: Fix sgio_get_vpd() (bsc#1099484) * kpartx: Improve reliability of find_loop_by_file() * libmultipath, alloc_path_with_pathinfo(): Ensure that pp->wwid is '\0'-terminated * libmultipath: enable feature disable changed wwid by default * multipathd: add lock protection for cli_list_status * bug fixes for "marginal path checker" * multipathd: fix signal blocking logic (bsc#1110060, bsc#1110439, bsc#1086025) * multipath-tools: add INSPUR/MCS to hardware table * multipath-tools: add RDAC SUN/ArrayStorage to hwtable * multipath-tools: remove DF arrays from HP * multipath: print sysfs state in fast list mode (bsc#1110354) * multipathd: remove coalesce_paths from ev_add_map * multipath: fix DEF_TIMEOUT use * libmultipath: fix tur checker locking * multipath-tools: handle exit signal immediately (bsc#1086025) * multipathd: release uxsocket and resource when cancel thread (bsc#1110355) * path latency prioritizer fixes * multipathd.service: set TasksMax=infinity (bsc#1060616) * multipathd.service: drop Before=lvm2-lvmetad.service (bsc#1070427) * multipathd.socket: add WantedBy=sockets.target * kpartx.rules: fix by-id/scsi-* for user_friendly_names * multipath -C: decrease log level * libmultipath: hwtable: no_path_retry="queue" for NetApp NVMe * libmultipath: hwtable: multibus for NetApp NVMe-FC * libmultipath: select ALUA prioritizer for RDAC arrays only (bsc#1075539, bsc#1081241) * libmultipath: get_vpd_sgio: support VPD 0xc9 (bsc#1055949) * libmultipath: condlog: log to stderr (bsc#1055949) * multipath: delegate dangerous commands to multipathdd (bsc#1047639) * libmultipath: don't try to set hwhandler if it is retained (bsc#1047639) * libmultipath: don't update path queueing on reload * multipathd: marginal path code fixes * multipath: check failed path dmstate in check_path * multipathd: clean up set_no_path_retry * multipathd: fix device creation issues * libmultipath: cleanup features handling code * multipath: fix hwhandler check in select_action * kpartx: don't delete partitions from partitions * limbultipath: prefer RDAC checker with detect_checker * multipath-tools: add AccelStor/NeoSapphire to hardware table * multipath-tools: add TMS/RamSan to hardware table * multipath-tools: add XIV/NEXTRA to hardware table * multipath-tools: add XIOtech/Magnitude to hardware table * libmultipath: ensure checker->fd == -1 if not set- Update to version 0.7.3+69+suse.218a0d0: * multipath -ll: print foreign maps only with "-o" flag (bsc#1089353) * Revert "disable nvme foreign library"- Update to version 0.7.3+67+suse.8f0c27b: * disable nvme foreign library (bsc#1089353)- No functional changes - Fixed rpmlint warnings (bsc#1088946) * multipath-tools-devel: moved .so files to /usr/lib[64] * added version dependencies for -devel packages- No functional changes * fixed SPDX syntax (and -> AND) * added /usr/share/licenses- No functional changes, just licenses - Spec file: fix %license tags and info after closer inspection (bsc#1088801) * kpartx is under GPL-2.0-only * rbd is under LGPL-2.1-only - Update to version 0.7.3+66+suse.dc5fe2d: Fix licensing info (bsc#1088801) * Added fossology assessment as README.licenses * multipath-tools: create LICENSES dir with the text of all used licences- Update to version 0.7.3+61+suse.d4d0494: * 11-dm-mpath.rules: dont't run "multipath -U" during coldplug (bsc#1084748)- Fixed license tags in spec file * multipath tools / libmultipath is GPL-2.0-only * libmpathcmd is LGPL-2.0-or-later * libdmmp is GPL-3.0-or-later * adopt SPDX format.- Update to version 0.7.3+60+suse.46ac839: * libmultipath/hwtable: don't hard-code ALUA for IBM IPR (bsc#1085212, bsc#1075129)- Update to version 0.7.3+59+suse.1b6191c26774: * libmultipath: don't reject maps with undefined prio (bsc#1085212, bsc#1075129) * multipathd: handle errors in uxlsnr as fatal (bsc#1086025)- Update to version 0.7.3+57+suse.bb6be4c8b4ca: * multipathd: fix signal blocking logic (bsc#1086025) * multipath-tools: handle exit signal immediately (bsc#1086025) * multipath: fix DEF_TIMEOUT use (bsc#1086014) * multipath-tools: foreign/NVME implementation v2 (upstream accepted) (bsc#1082419)- Update to version 0.7.3+53+suse.140f4937e9e7: * libmultipath: fix wrong output of "multipath -t" (bsc#1082835)- Update to version 0.7.3+52+suse.08a969b7fce0: - Add limited support for displaying native NVMe multipath (bsc#1082419) * libmultipath: foreign/nvme: implement path display * multipathd: use foreign API * multipath: use foreign API * libmultipath/foreign: nvme foreign library * libmultipath/print: add "%G - foreign" wildcard * libmultipath: API for foreign multipath handling * libmultipath: print: use generic API for get_x_layout() * libmultipath: print: convert API to generic data type * libmultipath: "generic multipath" interface * libmultipath: add vector_convert() * libmultipath: add vector_free_const() * libmultipath: get rid of selector "hack" in print.c - Fix locking errors detected by coverity check (bsc#1082418) * checkers/rbd: missing pthread_lock() on failure path * libmultipath: fix deadlock in tur.c- Fix whitespace in dracut conf file (bsc#1080562)- Update to version 0.7.3+38+suse.a16beed5280a: * kpartx: don't delete partitions from partitions (bsc#1078362) * hwtable: add latest updates (bsc#1078363) * multipathd.service: set TasksMax=infinity (bsc#1060616)- Update to version 0.7.3+31+suse.6804bb73f72d: * libmultipath: hwtable: no_path_retry="queue" for NetApp NVMe (bsc#1073319)- Update to version 0.7.3+30+suse.6b5ed839: * multipath.rules: temporary rule to obtain ID_WWN for NVMe (bsc#1076828) * libmultipath: ignore natively multipathed NVME devices (bsc#1076828) * multipath.rules: handle NVME devices (bsc#1076828) * FIX "libmultipath: hwtable: multibus for NetApp NVMe-FC" (bsc#1073319) * libmultipath: increase path product_id/rev field size for NVMe (bsc#1073319)- Update to version 0.7.3+25+suse.7c9920e2: * assemble_map: no newline at end of params string (bsc#1072253)- Update to version 0.7.3+24+suse.703a61d5: * multipathd.service: drop Before=lvm2-lvmetad.service (bsc#1070427) * libmultipath: hwtable: multibus for NetApp NVMe-FC (bsc#1073319) * libmultipath/propsel: select ALUA prioritizer for RDAC arrays only (bsc#1075539, bsc#1081241) * libmultipath: get_vpd_sgio: support VPD 0xc9 (bsc#1055949) * libmultipath: sgio_get_vpd: add page argument (bsc#1055949) * libmultipath: fix return code of sgio_get_vpd() (bsc#1055949)- Update to version 0.7.3+19+suse.0fd18bdd: * multipathd.socket: add WantedBy=sockets.target (bsc#1072253)- Update to version 0.7.3+18+suse.8c97f433: * multipath -C: decrease log level (bsc#1072504)- Update to version 0.7.3+17+suse.cac42e6f: * test-kpartx: add test for mapping without UUID (bsc#1074013)- Update to version 0.7.3+15+suse.570d5938: * kpartx.rules: fix by-id/scsi-* for user_friendly_names (bsc#1066893)- Update to version 0.7.3+14+suse.da06e7f3: * libmultipath: fix return code of sysfs_get_timeout (bsc#1069037)- added sample code for libmpathpersist (bsc#1066376) * added libmpathpersist-example.c - multipath-tools.spec: package libmultipath.so symlink in -devel package (bsc#1066376). We *do not* package header files for libmultipath, as the APIs are not public.- multipath-tools.spec: package *.so symlinks in -devel pkgs (bsc#1066376) - multipath-tools.spec: SLE15: add RADOS support for s390x (bsc#1066380) - Fix build error for targets SLE_12, SLE_12_SP1 (bsc#1066392)- Update to version 0.7.3+13+suse.db431514080f: * kpartx: create symlinks for dmraid devices (bsc#1064212) * limbultipath: prefer RDAC checker with detect_checker (bsc#1055949)- Update to version 0.7.3+11+suse.4de08d96: * libmultipath: condlog: log to stderr (bsc#1063059)- Update to version 0.7.3+10+suse.70ccb55b0439: - Rebase to upstream release 0.7.3 * libmultipath: add pthread_cleanup hook for udev monitor * libmultipath: pull functions into util.c * libmultipath: change reservation_key to a be64 * libmpathpersist: fix update_prflag code * multipath: add alternate reservation_key method * mpathpersist: add support for prkeys file * multipath-tools: minor edition and corrections in multipath.conf.5 * multipath-tools: fix incorrect length for strncmp in uevent.c * multipath-tools: clarify how to dump the multipathd config * multipath-tools: replace "setting: array" with "setting: storage device" at multipath output * libmultipath: sanitize fd handling * multipath-tools: link internal libraries before foreigns * multipath-tools: remove Sun StorEdge T4(6020,6120,6320) arrays from hwtable * multipath-tools: add support for all arrays from Sun StorEdge 3000 family * multipath-tools: add Xiotech iglu blaze arrays to hwtable * multipath-tools: add Dot Hill/Seagate arrays to hwtable * libmultipath: update INFINIDAT builtin config * multipath-tools: add info about adding new hardware * multipath-tools: Remove the limitation of IPC command reply length. * multipath-tools: libdmmp: Improve timeout mechanism * multipath-tools: libdmmp: New function to flush and reconfig * Bump version to 0.7.3 - minor fixes for upstream 0.7.3 * libmultipath: ensure checker->fd == -1 if not set * libmpathpersist: add support for prkeys file v3 * multipath: add man page info for my prkey changes - Patch series for NVMe discovery and failover (bsc#1038865) * discovery: sanitize NVMe discovery * libmultipath/discovery: modify NVMe path states * Add 'none' checker * hwtable: set 'none' as default checker for NVMe- Update to version 0.7.2+49+suse.993a29b1188d: * Revert "11-dm-mpath.rules: Remember DM_ACTIVATION" (boo#1059227) * Revert "11-dm-mpath.rules: don't set READY->ACTIVATION" (boo#1059227) * multipath: delegate using libmpathcmd (bsc#1047639)- split off rados support into separate multipath-tools-rbd package. This avoids pulling in the whole rados/ibverbs/rdma stack with multipath-tools. (bsc#1058504). - multipath-tools-rbd is Recommended but not Required by multipath-tools.- Update to version 0.7.2+44.3a8d750c: Misc bug fixes: * multipathd: don't flood system with sd_notify calls (bsc#1056011) * libmultipath: add_feature: skip pointless NULL check (bsc#1055635) * libmultipath: add_feature: allow only 1 feature (bsc#1055635) * multipath: delegate dangerous commands to multipathd (bsc#1047639) * libmultipath: fix partition_delimiter config option (bsc#1056526) * kpartx: helper functions for name and uuid generation (bsc#1056508) * kpartx: search partitions by UUID, and rename (bsc#1056508) * kpartx: fix a corner case when renaming partitions (bsc#1056508) * kpartx: -d must work with empty partition table (boo#1056599) * kpartx: only recognize dasd part table on DASD (boo#1056599) Rework of the udev rules related to multipath and kpartx (bsc#1054363): * libmultipath: support MPATH_UDEV_NO_PATHS_FLAG on map creation * libmultipath: add get_udev_device * libmultipath: get_refwwid: use get_udev_device * libmultipath: use const char* in some dm helpers * libmultipath: add DI_NOIO flag for pathinfo * libmultipath: add dm_get_multipath * multipath: implement "check usable paths" (-C/-U) * 11-dm-mpath.rules: multipath -U for READY check * 11-dm-mpath.rules: import more ID_FS_xxx vars from db * 11-dm-mpath.rules: no need to test before IMPORT * 11-dm-mpath.rules: handle new maps with READY==0 * 11-dm-mpath.rules: don't set READY->ACTIVATION * 11-dm-mpath.rules: Remember DM_ACTIVATION * multipath.rules: set ID_FS_TYPE to "mpath_member" * kpartx.rules: don't rely on DM_DEPS and DM_TABLE_STATE * kpartx.rules: respect DM_UDEV_LOW_PRIORITY_FLAG * kpartx.rules: improved logic for by-uuid and by-label links * kpartx.rules: create by-partuuid and by-partlabel symlinks * kpartx.rules: generate type-name links only for multipath devices * kpartx.rules: fix logic for adding partitions * multipath/kpartx rules: avoid superfluous scanning * kpartx/del-part-nodes.rules: new udev file * kpartx.rules: move symlink code to other files - multipath-tools.spec: * added 68-del-part-nodes.rules to support partition deletion * added 00-dont-del-part-nodes.rules to disable partition deletion by default on openSUSE/SLES for now. * added 11-dm-parts.rules to kpartx package * added dracut.conf file to make sure 11-dm-parts.rules is included in initrd- Update to version 0.7.2+14+suse.5721c345: * cli_add_map: Use CMD_NONE (bsc#1053515) * multipath-tools: link internal libraries before foreigns (bsc#1028132) * multipathd daemon: Fix incorrect use of CLOCK_MONOTONIC in pthread (bsc#1053757)- Update to version 0.7.2+11+suse.448921a2: * multipath.conf.5: document no_partitions compat support * libmultipath: fixup compat support for 'features "1 no_partitions"'- Dropped 67-kpartx-compat.rules (SUSE legacy). * symlinks "/dev/mapper/${UUID}_part${X}" are not created any more, only "/dev/mapper/${UUID}-part${X}" (with "minus") - Dropped automatic kpartx invocation on dmraid devices (fate#323743) - Rebase to upstream multipath-tools 0.7.2: * libmultipath: retain_attached_hw_handler obsolete with 4.3+ * multipath-tools: move up TEMPLATE in hwtable * multipath-tools: delete libdmmp/docs/man directory in make clean * libmultipath: fix unit to seconds in log message for checker timeout * multipath-tools: add HPE StoreVirtual 3200 family to hwtable * multipath-tools: add HPE MSA 2050/2052 to hwtable * multipath-tools: add/change fujitsu arrays * multipath-tools: check sysfs path state for NVMe/NVMf * multipath-tools: sync third-party headers with 3.13 upstream * multipath-tools: beautify path_latency.c code * multipath-tools: fix format in multipath.conf.5 * libmultipath: update 3PARdata builtin config * Bump version to 0.7.2 - Update to version 0.7.2+8+suse.95e8f43e: * libmultipath: don't try to set hwhandler if it is retained (bsc#1037533) * libmultipath: don't [un]set queue_if_no_path after domap * kpartx/devmapper.h: remove dm_no_partitions * libmultipath: compat support for 'features "1 no_partitions"' (fate#323406) * kpartx.rules: respect DM_UDEV_LOW_PRIORITY_FLAG (bsc#1047180) * kpartx.rules: Use DM_ACTIVATION as condition (fate#323406) * kpartx.rules: skip creating by-uuid and by-label links (fate#32340)- Update to version 0.7.1+69+suse.3bfa5af1: * Merge branch 'sles12-sp3-fixes' into sles12-sp3 * libmultipath: get_udev_uid: make sure pp->wwid is 0-terminated (bsc#1048146) * libmultipath: drop uevent_can_discard_by_devpath (bsc#1048052) * libmultipath: only listen for uevents with DEVTYPE=disk (bsc#1048052) * libmultipath: fix over-long NVME WWIDs (bsc#1048146)- Update to version 0.7.1+64+suse.aabe8c87: * Updated "no_path_retry" patchset to v4 (minor change) * kpartx.rules: Fix syntax error in skip_kpartx code (bsc#1046092) - _service: use "match-tag" to refer only to offical tags- Update to version 0.7.1+62+suse.62a2c36e: * kpartx: only check for 'no_partitions' feature on dm devices (bsc#1037533) * Revert "kpartx: use mapname if no uuid is present" (bsc#1037533, bsc#1033541) - "no_path_retry" patch series (bsc#1043027) * libmultipath: load_config: skip setting unnecessary defaults * libmultipath: add/remove_feature: use const char* for feature * libmultipath: clarify option conflicts for "features" * libmultipath: merge_hwe: fix queue_if_no_path logic * libmultipath: assemble_map: fix queue_if_no_path logic * multipath.conf.5: document no_path_retry vs. queue_if_no_path * multipath.conf.5: Remove ??? and other minor fixes * libmultipath: add deprecated warning for some features settings - _service: Use "sles12-sp3" branch as revision, as factory and SLE12-SP3 submissions are in sync. Will be changed when factory forks off (latest at SLE12-SP3 GA).- set KBUILD_BUILD_TIMESTAMP to generate reproducible man-pages to fix build-compare (bsc#1045111)- Update to version 0.7.1+53+suse.07c2f6ac - kpartx patch series from upstream (bsc#1037533, bsc#1033541) * kpartx: only check for 'no_partitions' feature on dm devices * kpartx: test-kpartx: new unit test program * kpartx: remove is_loop_device * kpartx: relax and improve UUID check in dm_compare_uuid * kpartx: dm_remove_partmaps: support non-dm devices * kpartx: dm_devn: return error for non-existent device * kpartx: don't treat multi-linear mappings as partitions * libmultipath: don't treat multi-linear mappings as partitions * kpartx: use partition UUID for non-DM devices * kpartx: use absolute path for regular files * kpartx: find_loop_by_file: use sysfs * kpartx: include sys/sysmacros.h * Revert "kpartx: relax check when checking for a kpartx device" - Spec file: use new build flag for libdmmp installation (bsc#1036652), enabled by upstream fix: * libdmmp: enable library installation in alternative directory - Other bug fixes from upstream: * libmultipath: print.c: make sure lines are 0-terminated (bsc#1038865) * multipath-tools: fix compilation with gcc < 4.9 * kpartx: fix device checks * mpath_persist: Don't join threads that don't exist * libmultipath: fix suspended devs from failed reloads * mpathpersist: fix one more crash possiblity - Minor upstream changes: * multipath: Merge the DELL MD3xxx device configs * multipath: fix up position independent code * libmultipath: fix partition detection (bsc#1037533) * kpartx: default to running in sync mode * libmultipath: force udev reloads * libmultipath: print alias with no_path_retry message * multipathd: force reload device on all resizes * libmultipath: refactor calls to get dm device info * multipath-tools: document uid_attribute for NVME devices * Makefile: Remove assignments to unused variables * libmultipath/configure.h: Add a forward declaration * libmpathpersist: Add two missing #include directives * Remove mpath_reverse_8bytes_order() * Move the declaration of mpath_mx_alloc_len to a header file * Remove a superfluous "extern" keyword * mpathpersist.8: add missing documentation for -K, -C, -l- spec file: Disable RADOS support for i586 on Leap 42.x (bsc#1036271) - spec file: Move libdmmp to /usr/lib[64] (bsc#1036652) - Update to version 0.7.1+7+suse.3edc5f7d: * kpartx: use mapname if no uuid is present (bsc#1033541) * kpartx: relax check when checking for a kpartx device (bsc#1033541) * libmpathpersist: use extern struct udev (bsc#1027188) * kpartx: include sys/sysmacros.h (fix compilation warning) - Update to upstream version 0.7.1: * multipath-tools: improve processing efficiency for addition and deletion of multipath devices * uevent_can_discard: optimize devpath check * multipathd: fix SIGUSR2 handling * multipath-tools: clean up libdmmp/Makefile * multipath-tools: libdmmp: Fix incorrect use of __attribute__ * multipath-tools: Remove trailing whitespaces * multipath-tools: add missing "-l" flag for pthread in libdmmp/Makefile * multipath-tools: build objects for libdmmp and libmpathpersist independently * libdmmp: minor Makefile cleanup * multipath-tools: remove incdir from Makefiles * libdmmp: don't disconnect from multipathd twice * multipathd: don't call strlen on NULL variables * libdmmp: move libdmmp.pc install location * multipathd: drop lock before calling uev_add_path * multipathd: allow devices to switch from RW to RO * libmultipath: don't set max_sectors_kb on reloads * Remove a trailing tab * multipath: fix segfault with disable_changed_wwids * multipath-tools: amend text from multipath/multipath.conf.5 * Bump the version code and date * multipath-tools: replace multipath configuration output * Revert "multipathd: set timeout for CLI commands correctly" * libmultipath: fix skip_kpartx support for removing maps * Bump version to 0.7.1- spec file changes suggested by factory review team (bsc#1030699) * RPM group adjustments. * Avoid %__ macro indirections- Enable rados for SLES only for x86_64 and aarch64 (ceph is currently disabled on SLES on s390x and ppc64le) (bsc#1030699) - Downgrade to version 0.6.4+103+suse.bcb5d0f4: * temporarily remove commit "multipathd: fix SIGUSR2 handling" until it's merged in official repo (bsc#1030699)- Spec file: disable librados for architectures for which ceph is not built - Spec file: enable librados by default for SLES12 SP3, disable it on Leap <= 42.1 - Update to version 0.6.4+104+suse.ac0df678: * multipathd: fix SIGUSR2 handling- Update to version 0.6.4+103+suse.bcb5d0f4: * changed to official github repo openSUSE/multipath-tools (no changes code-wise)- Spec file: Added dependency on sg3_utils (boo#1028857)- spec file changes: optional librados and libdmmp support * enabled by default on Factory and Leap (disable with --without-rados, --without-libdmmp) * disabled by default on SLES12 (enable with --with-rados, --with-libdmmp) * libdmmp0_1_0 and libdmmp-devel as separate packages * minor fixes for RPMLINT warnings - Update to version 0.6.4+102.0119472d: * rebased, code-wise identical to previous checkout- Update to version 0.6.4+102.df7d367e: * libmultipath/propsel: Do not select sysfs prioritizer for RDAC arrays (bsc#1004858)- Update to version 0.6.4+101.f01ef4da (SLES12 SP2 changes wrt upstream): * Make libdmmp build optional * multipath.rules: use -i flag to multipath * kpartx: create symlinks for dmraid devices * kpartx: Add udev compability rules for SUSE * libmultipath/checkers: make RADOS checker optional * multipathd: fixup check for new path states (bsc#1019798) * tur: Add pthread_testcancel() (bsc#101979) * kpartx: sanitize delete partitions (bsc#100869) * libmultipath: coalesce_paths: trigger uevent if nothing done (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: differentiate ACT_NOTHING and ACT_IMPOSSIBLE (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: reload map if not known to udev (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: sysfs_attr_set_value: use const char* (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: select_action: check special features separately (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: disassemble_map: treat aminio like assemble_map does (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: disassemble_map: skip no_path_retry check (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: setup_feature: handle "retain_attached_hw_handler" (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: setup_feature: print log msg if no_path_retry cant be set (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: setup_features: log msg if queue_if_no_path is ignored (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * multipathd: use weaker "force_reload" at startup (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * multipathd: imply -n if find_multipaths is set (bsc#1012910) * multipath: ignore -i if find_multipaths is set (bsc#1012910) * libmultipath: move suspend logic to _dm_flush_map (bsc#986838) * multipath -ll: set DI_SERIAL (bsc#991432) * libmultipath: use existing alias from bindings file (bsc#1005255) * libmultipath/discovery: do not cache 'access_state' sysfs attribute (bsc#1004858) * multipathd: issue systemd READY after initial configuration (bsc#1006469) * multipath: avoid crash when using modified configuration (bsc#1000914) * multipathd: Set CLI timeout correctly (bsc#999061) * libmultipath: Do not crash on empty features (bsc#994812) * libmultipath: fall back to search paths by devt (bsc#995645) * multipathd: set timeout for CLI commands correctly (bsc#999061) * Invalid error code when using multipathd CLI * multipath: do not check daemon from udev rules (bsc#986734) * Add support for "multipath=off" and "nompath" on kernel cmdline * multipathd: start daemon after udev trigger (bsc#98673) * multipathd.service: fixup Wants= and Before= statements (bsc#1019181, bsc#991742, bsc#986734) - Update to current upstream (0.6.4-65-ga2675025) * Avoid that reloading a map sporadically triggers I/O errors * fix udev rules for failed multipath devices * multipathd: allow resetting stats * multipathd: add messages on delayed path addition * multipathd: don't update priority of failed paths * libmultipath: cleanup orphan device states * libmultipath: add detect_checker option * kpartx: don't keep creating recursive partitions * multipath-tools: Introducing multipath C API * multipath-tools: sync valgrind.h with 3.12 upstream * multipath-tools: add availability of service-time and queue-length to multipath.conf.5 * multipath-tools: add availability of service-time and queue-length to multipath.conf.5 * Fill NVMe specific path info * Don't blacklist nvme * multipath-tools: fix misspellings * multipath-tools: git should ignore rej and orig files * Include sys/sysmacros.h * Tolerate modprobe failures in multipathd.service * multipath-tools: Remove trailing and leading whitespaces * multipath-tools: Perform socket client uid check on IPC commands. * multipath-tools: Set errno mpath_recv_reply() when failure * multipath-tools: New way to limit the IPC command length. * multipath-tools: libmultipath: Removed unused functions. * multipath-tools: libmultipath: fix gcc link failure on rcu_register_thread_mb. * multipath-tools: multipathd: Fix memory leak on load_config(). * [multipathd] Remove trailing whitespaces * multipathd: deterministic io throughput in multipath- Remove superfluous PreReq for insserv and fillup- Update to version 0.6.2+suse20160928.8939fb6- Implement support for 'multipath=off' and 'nompath' kernel commandline options (bsc#1001691)- multipath: avoid crash when using modified configuration (bsc#1000914)- libmultipath: Do not crash on empty features (bsc#994812) - multipathd: Set CLI timeout correctly (bsc#999061) - Moved multipath-tools repository to github.com:/openSUSE/multipath-tools.git- Fixup glitch from patch 'fixup check from udev rules' (bsc#986734) - Remove 0001-libmultipath-fall-back-to-search-paths-by-devt.patch; integrated into git repository- libmultipath: fall back to search paths by devt (bsc#995645)- Fixup module name in /usr/lib/modules-load.d (bsc#986734)- multipath: fixup check from udev rules (bsc#986734)- multipathd: start daemon after udev trigger (bsc#986734) - Load device handler and multipath module at boot (bsc#991634)- Do not check daemon from udev rules (bsc#986734,bsc#990538)- Include fixes from upstream: * memory leak in orphan_paths * More hardware table cleanups * Add 'serial' keyword to weightedpath prioritizer - Set timeout for CLI commands correctly (bsc#990265) - Start daemon after udev trigger (bsc#991742,bsc#986734,bsc#990538) - multipathd.service: Fixup Wants= and Before= statements (bsc#991742, bsc#986734)- Include patches from upstream: * Cleanup hardware tables by removing default entries * More formatting fixes * Order keywords in multipath.conf.5 * Change default pgpolicy from 'failover' to 'group_by_prio' * kpartx: Fix check whether to detach a loop device * Fix partly traversed loop in coalesce_paths() * Fix memory leak in reconfigure() * Cleanup include header files * Bump version code to 0.6.2 - Fix multipath -l without output (bsc#990480) - Fix spelling in a log message - Fix type of rcu_unregister() - Do not perform POSIX mutex operations inside a signal handler - Ensure that signals are delivered to the uxsock thread - Fix memory leak in path group policies - Update tarball to 0.6.2+suse20160728.d96f423- Include patches from upstream: * Makefile cleanup * Update multipath.conf.5 * Update hardware tables * Whitespace cleanup - Fixup crash during shutdown (bsc#988539) - Update tarball to 0.6.1+suse20160715.3d44636- Remove obsoletes spec sections- Move config accesses to use user-space RCU (bsc#987526) * Revert 'move filter_devnode under vector lock' * Revert the rework patch - Include patches from upstream: * Update hardware tables * Update kpartx manpage * Whitespace fixes * Include coverity fixes * Drop AUTHOR file - Update tarball to 0.6.1+suse20160704.6e52398- fix service file to not pretend that this is the upstream version. Now labeled 0.6.1+suse20160603.9b920e3 - Fix BuildRequire to get systemd.pc from correct package (bsc#983167) - point rcmultipathd to /usr/sbin/service to avoid dangling symlink warning- Rework patch 'move filter_devnode under vector lock' (bsc#982348)- multipathd: Fixup definition of set_unlocked_handler_callback() - mpathcmd.h: Update Free Software Foundation address- Do not install header file with mode 755- Update to latest upstream version 0.6.1 * Merge suse-specific patches * Drop multipath.conf.* files * Update to version 0.6.1 * multipathd: move 'filter_devnode' under vector lock * libmultipath: use poll() in uevent_listen() * Increase kpartx retries * Merge Dell MD3XXX hardware table entries * multipathd: Add 'sysfs' prioritizer (bsc#927040) * libmultipath: call get_vpd_uid() if no uid_attribute is set * multipathd: update defaults- Update to latest upstream version 0.6.0 (FATE#319406) * Update documentation * Fix memory leak and segfault in reconfigure * Add wwn keyword to weightedpath prioritizer * Use 64-bit int for command key * check partions unused before removing * print 'fail' when remove fails * add exclusive_pref_bi for alua prioritizer * kpartx: verify parition devices * multipathd: delay reloads during creation * Cut down alua prioritizer ioctls * Add 'ignore_new_boot_devs' option * Add libmpathcmd library and use it internally * retrigger uevents to try and grab uid * Update to version 0.6.0- Port to latest upstream version (FATE#319406, FATE#320255) * kpartx: support device names with spaces * add raw format multipathd commands * make kpartx -d remove all partitions * Add find_multipaths option * Autodetect ALUA CLARiiON configurations * Delayed path reintegration * enable configuration directory * read-only bindings * Add deferred_remove support * correctly set partition delimiter on rename * Add overrides section to multipath.conf * Add additional path wildcards * Add force_sync option * Misc small patches- multipathd: do not flush maps on startup - Use find_path_by_dev() where possible (bsc#924316) - Fixup error return in store_path() (bsc#972329) - Do not display message 'invalid fd'- Fixup overzealous warning 'empty device number' (bsc#969857)- multipathd: fixup signal handling (again) - Revert 'trigger all devices on startup' - multipathd: print error message for invalid arguments - multipathd: block checkerloop during reconfiguration (bsc#946658) - libmultipath: correctly initialize pp->sg_id - multipathd: don't buffer output with systemd (bsc#954726) - multipath.rules: Do not forward partition events (bsc#954726) - libmultipath: improve uxlsnr handling (bsc#954726) - multipathd: do not realloc memory in uxlsnr (bsc#954726) - libmultipath: call get_uid() for all paths (bsc#935312) - multipathd: Do not print misleading message 'not found in pathvec' - multipathd: Do not update the paths vec when removing paths - multipathd: Do not switch paths on empty multipath tables (bsc#956349) - libmultipath: remove 'get_info' argument for adopt_paths() - libmultipath: ensure 'dev_t' is set when store paths (bsc#924316) - libmultipath: Do not store paths with empty dev_t (bsc#924316) - libmultipath: Do not store paths with empty device name (bsc#924316) - libmultipath: sysfs_set_rport_tmo still wrong (bsc#926588) - Add LIO-ORG/SUSE RBD backend hardware defaults (bsc#947845) - multipath: Reset alias if renaming fails (bsc#943157)- Fixes for md_monitor on zFCP (FATE#319070): * strict loop timings * multipathd: fixup a crash when invoking CLI commands * multipathd: implement 'show map $map format $format- Fixup hang in 'multipath -f' (bsc#941954)- Create package for SLE12-SP1. * Remove multipath-tools-0.5.0-sles12.diff.bz2 * Add multipath-tools-0.5.0-sles12-sp1.diff.bz2 - kpartx: parse emulated DASD devices - multipathd: Fixup queueing mode in 'show maps status' (bsc#933885) - multipathd: Accept zero-sized paths in ev_add_path - Always set DM_UDEV_DISABLE_LIBRARY_FALLBACK (bsc#933282) - libmultipath: Fixup 'DM_DEVICE_RELOAD' handling (bsc#933282) - libmultipath: correctly display checker status- Remove 'udev_sync' argument from dm_simplecmd (bsc#903001) - Ensure multipathd is started before systemd-udev-trigger- Only import ID_FS_XXX variables if not set (bsc#909358) - Fixup regular expression for HP MSA 2040 (bsc#920189)- Add dependency on systemd-udevd.service (bsc#903001) - Use ALUA for HP 3PAR (bsc#922105) - Add DX8700 S3 and DX8900 S3 defaults (bsc#921703) - Load all device handler modules on startup (bsc#908529)- libmultipath: make vpd page 0x80 optional (bsc#917963) - Add HP MSA 2040 to the hardware table (bsc#920189) - Revert 'Skip unhandled device types' (bsc#917701)- skip uninitialized devices during reconfiguration (bnc#908915) - memory overflow when printing help text (bnc#909742)- Do not automatically fall back to vpd uid generation - Improve vpd parsing - multipathd: trigger all devices on startup (bnc#901465) - Unset 'uid_attribute' on failure- libmultipath: Fall back to SG_IO if no UID could be assigned (bnc#908915) - Assign local priority for NAA VPD descriptor (bnc#907483) - libmultipath: finally fix dev_loss_tmo setting (bnc#889927) - libmultipath: Do not use 'sscanf' for parsing integers (bnc#889927) - devmapper: do not flush I/O for DM_DEVICE_CREATE (bnc#901809) - kpartx: handle more than 256 loop devices (bnc#898427) - multipathd: fixup locking in uev_remove_map() (bnc#901891) - multipathd: use global variable for uxsock timeout (bnc#900758) - multipathd: remove unused variable in cli_reconfigure() - Add %service calls for multipathd.socket/bin/sh/bin/sh/bin/sh/bin/shmultipath-tools-rbdsheep04 1680190762 0.9.0+117+suse.78cc20b-150400.4.13.10.9.0+117+suse.78cc20b-150400.4.13.1 0.9.0+117+suse.78cc20b multipathmpathpersistmultipathmultipathddracutdracut.conf.dmultipath.confmodules-load.dmultipath.confmultipathd.servicemultipathd.socketmultipath.conf11-dm-mpath.rules56-multipath.rulesrcmultipathdmultipath-toolsREADME.aluaREADME.mdmultipath-toolsGPL-2.0multipath.conf.5.gzmpathpersist.8.gzmultipath.8.gzmultipathd.8.gz/run//sbin//usr/lib//usr/lib/dracut//usr/lib/dracut/dracut.conf.d//usr/lib/modules-load.d//usr/lib/systemd/system//usr/lib/tmpfiles.d//usr/lib/udev/rules.d//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/multipath-tools//usr/share/licenses//usr/share/licenses/multipath-tools//usr/share/man/man5//usr/share/man/man8/-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:28488/SUSE_SLE-15-SP4_Update/8922ef093cb4def3bbb6ab9034e32947-multipath-tools.SUSE_SLE-15-SP4_Updatecpioxz5x86_64-suse-linuxcannot open `/home/abuild/rpmbuild/BUILDROOT/multipath-tools-0.9.0+117+suse.78cc20b-150400.4.13.1.x86_64/run/multipath' (No such file or directory)ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=c64bfd1655605872da5f9c61b72d92c352725385, 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]=c810c2097aa90a2149cdedfc059a9978697c6a58, 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]=94421f1faa434b1dcd0dba0c13f4aca54a5afb19, for GNU/Linux 3.2.0, strippeddirectoryASCII textASCII text, with very long linestroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix) 9 R#RRRRRRRRRR"R RRRRRRRRRR#R!R R)RRR"RR(R RRRR)RR$R%R#R!R R'RRRRRRRRRR(R*R"RR&R RRRR!%Pqh>= 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/shutf-8577727f1e22a043c6cff28dcb29abe488e2f051864f16a7fa42e7c94977dce1e?P7zXZ !t/⯹] cNſ^Js$tՒo$$jBZfdz>/"|V%GF-7yhF0V<Эm^dw*It.k,I2#ah-a F79ub&4;''nB)qNݫ[0q8Qq3vƣ^D(wni>R^6)YW=Xѓ*`DH4Lj3?ո%@rpTeǶ(޿UQsb[͡ XR5 ^m1KB 0+=%(# V|ƸIy|"tN%"^-m{=KQiю &\~q%܄\L 2>l͸5Kwr5>v &Ck>W|?7`n+ۏt TQ}I?}];I2ݗ'%J){| [N0] /҅jf(%spk\f0CeUa|13xo匂]!:RL-f՛Lav86VOL0^Ĕs3"~0DRK0@%uۣ+X+dxO`PgŠsm!1k? O3߹9vĿQD2 {Bey}vad1^&?";)\.Yh(1M T@lɅ"!qid/#\qnJW_I|!Wda0^h9rgfўZe~.@Z}5К\<k_ g\'/ޕ㦵vbGx[ԡnfc𫼦"*@`l[*٧ jz E !8ӥgmJcr.uV7olep_D,#c/c QE*tl&-ERU CrF@g:GA<| &c1+?ui:}$vXe(mOazI^uϴ eU|WIzir!>8o 92%E2זsC E5#d(ddr:~d{Ě'g0axBذ+8ic~~\zpJ|jqǎ9.@Ű"j'/]B&SSP(guˀ zؚ<:^Hj~L:ZmfMeM`B27`$~AC[֚\ż.'mxw$Gg]Iz-~R>w>;Dtu:^wky@d¬ODJd?I$IcTqv'*9D~gPփxooV F.# x~xwaT\7ٕS !w@'Z+- OPUK;pjc/Ih-sSH^g}LNQ&7vO;gzg/C{qe4IGcrN.RBt+(c2K0žIEk+HP6&kPy g3+ !\NiHA3ʨO$$;<^pǰZ =z ɇ寚e}*I6E$6SD硅/cf󵒎Pë۾e}*wKZOWNN1蒞 oP°A(%VшD {%+vV*a}w0;n Q2?->( Vzd"/x,$\ԝ." [(Ol]y<2{M+3 N{uL%YM5H (TJePc5ɡUIbn%ۉ܊{ۛ'g5|%J=ע א > 4(=IU\hZ$ *Pu3w%?f:xQ\42!c _ &Mto,jYC?7#/!1s; BF-zy %^D2Ui 0Ǻv}ZȭmnJ+7vOf;mJ첷i䖄':08zpePmW[&IY9j]X= Vd a•$%*ƺ0W) #lHTFt""2=q2ha}Kl ?4c`[v ^,J泊XtҏIx&I77keLeے4XXS{Jcn|vؒ޽F- 0iK{~|o}Txsn6MhR פ 3ƛ:'Xٽ6#cЏۄ(_|7U 9t7o69i\] |T{zV|n.ظ7?=4_nΥ!(`2r6(s%;_si5_Q6yF_;5/rw υ ]OYD18!hjOT26g$F{R=I Az{ {pKf`e&jWFJ4#MOʗ9εLeQ[Z#_PsIN{eϡ9tc! 68ϖ\ 0JȄ/wgp1@Dmj UTbgJ&'s9Q |(|k֩A_5"B.D%m gύk7`x)-V<3Y{&C=`[`X )l9H*+ѝ8^US ky,"Ge{%{P/LD~]FqBHs12Z) :-O%b.CMآi$VݻRSÛd޷h\J4käkpgy0o1Tv q \ ryێ\*'2<:_1$P DC)SZ9l<:ۨ^}8WgKxљ 9a(`8Ϫ4Nu ig d[d[ƨz+UmٝzJ "i]tqMTUˆl-:d%,~xDxmSM@)Ee[51=YI4Enyhמ'{u,i͊޵P D]% 3VJxxH.?+橁#D候UM?m-\eB!KPl H3Ae{ JvݭG_{ lb7Ɍ)=G-%5iGa1Z<,CPavۏ0$H@ 76hQ Q_"h]U8~-x~2p_6 ^N<7Jv=0|lBŭCdq{{/$ƃhwah^p)M|F|81ZYݾ)RuwɄ3 w+BcTXɭ+ߥ`fx3ػ4~";YCBt1lǸVY<ff]Y \@3QhUO‘>ោ.gpY1ہ%gBt:}f bڈ]>\WU8)ܨE _4q5tsFy︩h% o.'M znpr`yG,W'kV5ЗfA amZ&~:(ZAeeFΗSgW*%t[ ~3 BDD:~$fv_Yo4\jZH>mw"ۯ,5Mh8I[!E:=[ <ΛT9qk>3{3!p >X n I듪b=pY$$iTFݏ:,x@\==B^*:9.hLJv˅mսE@Yh{4Ǎisl\#;a~TˇRVÿҳy^1=\xYΡ[7ȹrH&5wIBŽ;[M독`8ۇ*0`HRI_q[hz:6KYTF%s )ϴYj&)`eլhg۷p^/ 섴3(kJȰqvXo0||>DbPdf `iJJRp ?ͤ3 sM*Iof.htr~јHXAnjYABr@ P]܄ ,[4u1-))~gЫ±rmA}Iɓ!g sl锕kPS(F1Q.!ySta%w4bd.rTMWRPWCFUNmriʥe[/g ;9fu7ۏ-Ôo֔S3l vMX=5V5EhSU۴:˨Aˆt+:i~59Q:,Bp6b!ϵY78|4qZ;$K ϥPZ 7_yɄ8ڨJ2}&K p$x/HBeK-\+YFuSd ('ݱFSfih:\5 cIOm4='Ui&2H8pQ!2u®W`L=LJVۦ낵i%|}`4Q~50 .^}6wSBR.B~0cO+a;c1fb;'`Mz#\F$!uw}pu#܏Q?k 2^k FR^޿c+$W0y" mtM$x["(h >ձFXb~~wf-:9r`Y̑5{O"GuoѽK~?Ӏ$#Im$Jx8z/?it S<Ą︙ĝ,zOčf;<*Oap'Ⱥ9d1Up\^Ϛn>BqK 5zOUK7+&UkRפR#d| U2C7=">sk"(pD52r'wjSSQ.SkCRLY۩("XHy2?s}w܂4*BRd.Bu',*oZU+s=9n;I2i7䨣n.i` B6]V^԰Y\F)̠%"!JpR# \WYQk,ad՚t_&AhdFA-ZV$r] E+rDaUdAEY)%x/iXQGѬby0DԕUʆ_I#-it$}eD~Rozg Y ;-LO:z iN4C>udk3=htH~ e^ 50C'V5̾h 8M̩ zXMF^f>G G`BJ??ob?-AT2ƻG=5s(ǟ:ؼʡhx@ msswF*&ChLkOr S=b( /桢`&u9RYi{Pr&Sr;D@cS*0WC~ug ˎR A 6)XQh0`Vet:icܵu )zrJQL/ M| *K.rFndzb[Ϫh4MK)AHE?A|KEsLIL3[ԍl^RSMI^wAK^\}}|V0+eL~`.9ӷ@-MƭA Z,[sZq*tCA۽2hJ)k ' cH%c θ7 M6.c+i*Q 7=w ҽ;nܚ /_,Im&`gʴ#) 3T/W.9Cag ߌq'E#CJhLP/75-o.#p/CHz|JE;N{Χ#q,Olh}Ӫ |j˖j1Iz?Q$yWqYlR?&bg+pSID#&^8kXd=}:H`y||P_a)7ڠIO [k|?7E}b)MJ#.]ݮGǻ4вk 2n̥ot)JV3ȃ.Dh6sxfQ2:"UorD@m[͂Zn"ׁu$v}&b.,ϡDkB땮U9j,UĮ*+mg8oq+I(YYG3ryĚ$~ .ƅT1@Ӷ Nn#KS]LMcxGZ'C{ y]&!um< fLLo0rlɉk3:gɃ uU4n{3GߔJw.|OTUߎ ް1?CћfL=~E{]! ֎)qH<"vsLrP#GSi)S+l "jP?TJWEHض_~0DcנhuU}}:Lov.)V @Vr-a}H{5g;}dg])K#ԣ"fō$ŽUV zGkqO\,pJ“sOf;ə 1mJEcr:lQY4~Ov@SO>ֲ?e!(wu:N`L~"j4  ohvfӣdIJ"IVr<7XG&[boǍv$6 EF\e잾ȹyVoGa0dO[ގ:Xk>xG-~׿?E\͉"J]4TjImg}Brv4'_X׬}g.( gw>fTt9JHZ8{<)!D`qx*ۿ EO5n&B֛Zu a]/rΟ8Ͷ.t6 f{7;fboR_N)Vu)z<}; zRPsՄ`VhZ8lϜ/J䐋a9)g2- Kl.~ Jkd}+",2Oty {j1~{v ZR9]?Nl5omSi F$!z5(xҞQbk\v4n,b@]0(M4HK{68pYIx>T& ,c|Nc'~d8?)-"5͕mVtqXZ@q>မomǮƌ`nWR~"ftW`KxaGeNaX9r{wwk|vΓ ,^foɤ1K=D!j@1u]b1!KhM8xf s12$& a2 / `&EU_r'G]<7eVAfהY-Wk/!?;v?aπWYM~/JEÚ p9Qqc\%[Nk#/+Fd{|?l*Rw7ȥ.Dc_AYFJ Kɞ),Nz,_ ^Y˦(r_66#i jU_2fQ͠Ƨ Ȅf :%ntw$G;#$"\@)Cv8\ӷԤ՞M}d5HO?E:dnS` 2=), w'qoS$5{ /T);1 ڲ4hd 1cGZ@Tb;JhDr.*6j=bfK.DZr?VRO9?{yV'|s"M-j\X }ijFh޲bՑY|30B_ҠJgͲMNP*xNco86!>rt56J.DTwuXK8{PK\Y&ѨisPE&SL -Y+2'FhnތOŊV}~]V1V(ƘLwy/t^A^l4N",Mh6bylx_;ڐ3|K B(9zi:*%h1!PRVVQ<4`SZ~\%#7 EEZBUeN21Qԇ0B9UfQHYp1,2qR^CriiLr#[TJE 2JmQz~8k{ GtZD5IcxKf`1@IfCzq#wd`X6w b2a[-ZoLCkcd ev>n?HCߘÌyEzC\?iLrz X):g}\$<-Zj3\&d9;`kb '&NКq;vqM.UYcuLQu@'=+j(fte2WWtҏLѮֽcp@b&V!rR-G "JO#.YZg?F0U9\Z2wUfz{slØH{Q_)[2CxL\R$Fz{,d+`mkL.rmH 6 2w8h!C8,CM'/+VKOPQ#V ᪛IVBH>S$S&6F q(v3אy4Q_T}x&԰Y: A7r}9m>tzJwrO9h]@K`,7h/呧n%)p.u޽Bek.8!a NAy##A|[>tǬh!PǷwR$,fTuSeX&sNq䮐[6ߪ;N`2wG} 6*}xږߗ8sk6zFk7H#.{VC%,@3v󈑻 Qib`JW@F=tu@A:,?ºgcd*FpEP,#`X8a:EC8`dp#z:L䭁×Z'( T) dM2ALY)U\># 4JnpD V|Z)="Ȣ犈#|Fz<.Hʹ߾0߾xCw~?[p!MDW,4P}nYߵȺ%rLL&k;D5GqzϛyKRD}[>9vGwXaEVM&EѲl5g$a>ºCĮ(qя=:4hEU,,&mt.UQA8$~"=Tzpi?v`zOzYl_i5WV`hT*~x_t!49iWt|g%iD|*-:k9? 0N"i:J _f"߄?Mvɑ;*wY<=_|ҁPbg<*'vǾ|Uې7>U~?;к+b-Żcwj7S,U SuK eoamc(>M٘sg(Ttǟ!;p7ʢ@(q)@4ܗw3RB{^,pthWU .Z(̃ wN`I°xg /r_@Yta 3?n9CG.&NLH9'Y; PC1t{?-eEdaqF5^!|?%a/" P1`LκG[1&`9zu-P(vi0m _+hN+ TEI9"Wf٤xԷw&8OFO" e#-w xa,J3IˏNeFLqLz@HGЯ!hi􄑅$QaxѬTh_7>y2m.J}?ҒoqJj8frf3Jr]\nАk9859f.m߮H@:#*:Kٯair(A/#7bi0-L&&ޗOmk QvPbgP&mk\|}s=Xk_֏C}_h1Lx_gv9T!UI~TN'aX?窛UmvXb54e>}>װDR|8RKߡ![4:a lj[Z XLC ߂ RЪ=]rjN= YHӜe?1٥5K mS5 ]™ݖBdJ8WEzk$Vbg T2owgf8VwF[?ĬEAnI]'^0¹nÀTZMd  cCL!]7ib><ʋ3:|X]ɣ9i,.I$L\؉LJ͌Aog;mQ۪Jző1F:c&yrtv9Rݓ[FS[Vu߷q-*Fw"_EhOnX &?(ޤEP"ZA?^t!kb8kjٞ2U 3 iy!k:?i fr[ P2q]8  XpnMl˭8ƕlTgKJSM)JQ:0g-Y-S]1x PYN.&lbLFa _ XRr_ԣАb80u?@P5E;yNVȑOmX\ݜMҾ!;;@d"F򟝼MCS5}&~$}V&lیnVf,DdjlhbQ]OF&wpy)=iB!dC%KV9qg4Q@ 3}5(=l qPwfv%&MY[~dթ`$`lcl;  v'6( 7 }"Wjr;GCKk9;'[%HNe\;E4 $Ջ,M^}J~0{ w0zŎQכo\5L؉ωx5X)aT_qZ =Tɗs:Cp4pɇ͛ J2zj[HTɟ@g7Yե[[Sӵ\mD^m OYcS1a嚜L籂C`2e[+YK'ԭTXFYQb%c/Waz|zMcqU61"q9s{-3̓-O GJ\ϥ;mVT'`9D`LrP4HTsjD,C9!3dp{n-ъi"h-f5q$կmsBt@j^.x]g`T8b e¸behtJ|dT^;;K6}֯fc7h,+0U_~ʈ "3gVvv&Tm܊$p62z*CkH76X'L֯AM/ &ͫ\iMgn#D5g^R!݆p˷2ςSfL{H{@y8`uOZ[}  v{]Qlf+ /6sT[ֲ~>l?D1 m%h) ݔI?^Z œכ5HL^k*7b̻[:O$9^5yF`@e>$T+Jn#t%y`Ͱ!L{W\& %`5󔜀jT_s9FIBiB_ f }T\!ũih9瘯6`\cꉘ8~mSW^ }70sio" F׶_̧"εDl̷4#HBh1Bɹ)}/<zمHGeIԆA&A @Р[od󴌄H>{.g8yȊ P|3LYvB;ӏSh|&)hgK$ў- ^0 #^Y̿}s5*&Uloa k--oШI2^)&4rV:V?4ky-w7*$9j* b$9ަ 9ީUgb2s[$DZJ?ѨI^Vbs.⊬w Bx%0\Wi2(L)m,ᦡcAb=<.ˠ8u2K/ x)]_;q- Gu/BDgJ@zSާw~sf?ͭ"?zhM`ҖK0O՜t#Ď-&7l||sd̳5+pI5q‰.qzMM}_{Ita=DsTaEP;jvrmk"_s 2xxnu{? v $aT?rp G=c{!Nq5뛣S3[^ޫV v"<icC4Q5H  ;@'.?FЯ~1$rěW:S yi=WϖગvĔG|}'yظ\(NDDT!QZH+jDկI j  zaY !c&3[1D-KvXhE7V>#)6q{4!8(5,9F8oBip,,f8 lFNJ~/4Vn>^NARѴ7Ԗ*qb>`Z,J@Y_M1Ys([8']tƼ˧-kl]5&x .Uߏk*[ ս(}H 0Xl7\jMt I۰MGzTa;=ahs4N]4. a~ /B<*ɇw[kT}l+.8'zOZ#o&N_W+}Y h32}Ru:KM~ZlȾ /M|5 H* ɩ-0a0 Mw4ovHLv%N`j"!w]k>EX"#./T%rog?9H)r# 'ЌFc nk[`m )bQ=)m%6'*}4ͧG*tcS.mhGf,<'ZDTc{T@YĐ4)`#c6]y/qy'XX!ݛ,AFzK,kp -sQ$qi%73'RU(3"&$ֶ0ZQ7uvFa|>KaP k7[0%{.t1ahm_8>BO긲R91܀ȃk ;OdҖ^2<^C.^[ޅp wOLoHr)?W/kW'Ӊy(s[ +Ϧ 9C 8DX?~h1,ݾx/6(Sr_5}j̖ dȣ.썴4i:+a.v,qXwb$!hШIFfNTyaZMT\2%n݆PP6ޗ.e[Ly.90ۻ0%  b&R^\R-DhF_M $x3=5lM$;Zۑ1paUqPjݶK =TO` =TĥƢ~dXƓkm:u$=wVj!,O`3BG2X 'fX/.Ep8PcQBT{s!l8y<@6a|8iذz|ߔ#HFgS{ʠx躧UNRfvOn5/MuM:t<3%$ϑ(Qɺ5dRPQ8s|eB[%ꄓhe>QۏqZHET̯Hh'Zz|5=6ή* T3=ꕾ;i?TY^  οxwK\KSzdW|5f1;%P c!$]myb::yEiR. }ȃAI 1yeI+C1T5ļ#lOVACYK,}G |-rRCMæeacHFTeGz[SO6F t t|A^pT[c-{#}$5$ݢslU%)'?~!rD^dORŋf2/|dٽxq ?Afyl>5˻mYrT)XT.A nL~+BMZEtnvW|Z<;xmWuw-2d 8N=TՂP% uB$qM+^N㴨sYnƃ>Vaopƒ??%9ބ`Y4%emȨɹ۸Z"0$}-0&*̭) 0xO$~ʌFx8T3HIc>׮ER%ض=K(/@-b/HIyvgi##HE z_œG XDf d<(}JSx؇sh1<.6XF" ?4HtN#b=JKmEE3#i9Kl((Q ^!8d#,@p5FAINڒK,F &h'$ _gʉ~L M[XDw )e.%uT1 mOI8`EQ^A|6hV]PφbM{dzۑd B.$ l94R+wp\9jvpX߃E W21ՠ2Jʏ᷺'+BsQgSQjpƉ"OE:Ж[EZAO\ݐ`Jq 9'td6 : @W|⛓e#? r[N*eK.$,->"l&>e$u -]?@9Wl~ܣAʉiQFo  -Ҿz/7R>}zy2V9SjُÏJ0%wyJ,J0f(枻+o]v:h2lQ;91qR78g6 c5v&}P_\>4Ĥ ƃO `Z}r fMOD+yRz[}nM$6/# mN>dIW!9" d+ jh475qWd}F/I;Fm!eV:6KG"s>'i4F)G""\]xsIv_+ tHHZw/ clgfƘjz|jfrhVHtFbo|l o̎/"kU#dz -ܨ8d&c(Aܞp}`|TqE}!=[7J1RB_{2LS|%vD%1 Kl#̟sdF[rۢrcE|68u=: s91ׁbA$$E"iB!8h{!~ehg 1P@,r9,; ?s.Ligy,#ʾ>U[l޴gZ+T4W\B¡3^-OǗ:ˌi+ަtI+kyc4B>>@ m AgIǬ/ۄ[N(QӠ2?s G۝%v7B-r~< t7x ⋄ `{HW{5ȦWI7)Qn#(<f00tw_9|Lc%n/ܵakh,ėR 8@w w;pX P1K {GC8 Gǃ&YܝvCqy`(#SftDz&lXF'$R`j$$4Kœi#YUcq8gT&U*P G@Q6Elu>% b 1ϩM *93EHj`mʦLa2c֩G *T |ªc;(ڦ~Jdf)35LM?7 {7zW+a殥&ID5`ӧ`bK3Ђ\Air ,.)[f2-K蛍J;[[ EуpUůr닎nQU=`:v$(?ז#{ص>O`(Po$ӣǀFU;b]c[hHތn oTd;K}80b2!kj]8v#7Rs=e`Mbט̣D}haTK^~?SnF@ɾLL_"8|S c'JBߓ.qr]-Cl~a6B VxNR^HgJnSߙ oĨf/lC"=ivCHTRjeu,PU55 |uV#ÌÆ KPr,b> VCP ] AV͟$(LZLD؃\/2ܯHWOjN7=a1adBz>:.ay]0;tV\jT(CH`𺱂uALjnI[S5tT >-!Өs`{ÖtSB^OXĞ5iøä>$9sb[g^*I[ޑžr h| 9j#+SPn U{}Z+Wpn}Xڸ,S찐;%zx @5[h ԍ*'W"Ķ%{q+T|oxkK~r?3o6 _"|US>yzWv9=$+ 4C2wzC n}ZXtb9)KtνHb '&τ:xNagjl>:"(*\ei`%S!+!n^Y_7jO|Ěcc'N͎U萯^`sYG" qC^WUa@l5dnSc{ۏTvɾ5#>Iն^qQq7[xjVH'$Z1epkGIB,;E63l&VlfLZn^Z z yN#)`LA<ܥ 4v݀VJ ^\h Uq~ ",$Ԏ@Dl }4QrY+,ہXu~-Vj)r.ОAJJۂzJ`*ǩpE#ggح\6/B>0|ul9 #Fϥvq*Q &e'W~WX"-+{bJi6$cCU9߉6r<^ <Pg돠ˏVM| Џ=,q"b1q*ϛǫh`5W3_- <kM(Bhɶ}pi߫D52bʒIeso4igb^1UȼӹkU1 <}D]o?RB,~\JvLyr t8Pj N-wVIZF$1L+<Ҍ^aLH~|e"_nb$ҽ9wմ[ ByKC=#%&V -ʰv<}ƇTeUy:˜CJ*L^a̷# Y2sU0-g+V= piYTVA0CxKA/Tya1HځM#aBeWZzw;YɋfjjB_X}.mD C`SBA4tg1KN7N#:[Bq{GnX6M*;LtCSH}$=g_L;։sV5E}"p̈́]3::6W^}t5~Yezcpxٚ>ϜjuP*Lw\HBJ=Z鳻yUyx+gyD`.ہWA>3ScoMF5m*{fiޝ +cV)<κr,8c,Xi&)LBw:Ŧ[incG=6'NXyTNf)ܗу=*hl mtp7꒞a|FjD|@AG@i3'2Mna>(jw5Qs;飘>cJJ|3AB0%S9 xé(O]q+T ȧ T(+PTFf1՛W3Қx)<͵P{g}\չ PJ@Ly^mbMQö&qg`|e-u( PA\ VIQ+V,w\ pR._wyYC 2Ip@ "M=Fz)lfW6 4#n{ 3\X\(۩/Qm;[ԆLrM~+2طLg,sK8@<,V>9䇟0ٚFg U{mT3/,C|Sl (& #ȁ᧳Gp6![O060/38%yvQD)xpfNVXY.5Ѳ{.l^6D'~W?1c)lJcc+u 9aj,'xh/KA]m#vgcnںM6٤E<#µEZlA1VRrL&tUk0N~hvT1۴Gn#͹!+'6 Up`bYה c A'S-fVu8\8ŎCa^0jUa 1"=+[zx}S]KӒ?ݐ#ђf 3ڮO >Qu*V@fƬA!?aB~~6FX=գv_l=xZr7$/W~yb],BU= dh){#@i>u5|\'ffa+ɯ;[aGA2*eAZ.!c7|~dz- dyƛDy>VW:qC|'[-Y)33v8?=܇xmOn0#@v)_Łi-b`jK+#sDb|I_.4mo( WY<4 ڙ>tyhK{:I-Ļt3% |c"qbbDE` +;8*/1kg XJ'Sw*g눹Ô *!g߁a7s#~<7]sxkF":u=́ˌg&}K TL؂ʡDO迌 sNgٴ3dL(UXi^$9E2~q+2%aEtG9SgC{+l6>=0])!nf ";|M+5Wp5nb, o- B a^㬻x~ E$lU vz3> 5-UU)vxMH@CY>!!!{X|{Yw#R:Tk#Gw8;=X "01%б4oKl&17! .GqP1q)k_{yb 8n#V{~6%C%L8K?(p3zsZU]LLڥzZ#@z]Ck$"8AbN 2Svдh,,/U똺}hI[{[R|y0tƣmm}#5c:MH&-Xeœ#PZ$f|KMBMF l|VDr@ h;' 'phuTHMY>R=j-oTNd~Qəi=j vW!+Y.k[$(!D}s'urJ( 7TQis'*pN~?d7 :''U[}>Lop tjU(rk'1-7.x(X"¿!E􁮽: + ({yk2j4wXg5S $NU7m`ٞ~AXIC{xzV='9F+:=[mo (ԙha9ɥ;u89s',X?L[dr0U~ܩptGPLSe1$M m@zßjk>/fXu.p]ӄ!=A<Ӥh58k&b X+77dπ\W1;h_]],124]Ed,D|I.l/qVPNHlcE;տu5t>KfPݍ[)P>x5:*-gLaAFn+sx<~Gr}qf#I^D1FuRaܞgJ8h\$94Ћ  }=81vfB.f$ݞ] pAOdl(=f )}#56Ha>Th)Fs]iy&/r԰ sq?g;&XPWbK_C9ߧ~SVv{ߜ;F Q1BuV %^/F đ>M^&ۏh ~q#.8 g=Gw XwOSmލ6~;+IOޕ2$9޻ =IZ"s+7X!bQ_Uo7"7y=Z#l瑪 |dIRa=IMcX?qUQ{/`y9 f_ Ćq\'X `a~1#4@FG;+1浵 %2_CN&sSGgRA= ߛhYQ}RdeKax7FtSG2T=N{z+/8b- -s^/WUΔ ʴ$ZCҐ58oǻ+45lK$ Svz irfJRHR7ҎKR>pݼ"ܚ>nf7"i]|C>_~ j\J2Ԥ#m@gDO(驿sb֔\cCrO\Ix3%vsSDC/މHW"x#_DS҃'n'&d9b$-ovq {X]aV?=|zPGaq ɯ>+ ^}ptd7}xFI  }1uNo:K NnNѩ'xB܎+]\(0~ T zJ5i{CAI @e?UVL2űǹ6#q`rƚy mLX |5LvYC9"K0q@6PfT}2ͧxatmTgH +"s _$6!#6G {I"hg1;S>) %#CUЋfmbvvGIa˴C4.mE]Q9t=DaR$S1ZWjL{tЅWCȿ~|Y+$Տ`WoD_B`7=! *q4u֌xub Ȕ<͢^}*sK0VֿX"6ECL/x'&-C?=$ Q9TYYuLm.M[r VI|x3k.d:PkѐY2bJ%n1c(RY/r?UԊc)_ݍ?JX398?f':xJUI=A,- Slu)1gbjv$#-k&$s{DqEj'fz4&|TĮnMgwfG>L/VBmd:A6*P;- #ebLG<姖s N78FTS\ATTP"^ԙo'R0Lejr>Hj Z) H)2[%< ̥tsWw  $J^z*TK0U^X)3_'&+[Ay[1tAjyLRHRXOTUԕKp\`׉Vz Y=){ℜPבh%)Dx Bh 7)8""++|q- Kmv]s ]4|k,c^$H09~&LJ j`pI?ն-tsKw2__7 ]ЛڥD&,, }nXC7ҀqKm("׉|cl@Gkux S=hq\jvT 'n ~e1^ n@$6\^.dmd.^X!=R&ZrM(?qfQEBSC {+杺Ouh«\򼬬=;-_&}P0Z& _-]hO8귺U#ƸY|Ÿ<hJu*F$Q,tbӅxBdF4%J07T0Ql NNbJMpn쪅]bBZې7Nxg6"RlN Ʉ|Gg?q@K@~,9&7$qhXP\RW=@b+ZF-[Qd}N8׻0o .E[N%3nF~*uC T#|߻Z+JnUҏb_}0kO:;`si1~cxU,azw $",RȡGď2/\੭,H2u;-p#`9, pi%wޢ!m5惽GL\`ޙM~.KW6xoYMqP8=gפl\b78V+h,00Cv< J%UŻkE:KK5 .C)}퇌=~42Wb1QKMYh~xrQc,J@F=5muLY&hxuzM6SY/˦ƏA(OK,=RQ}`j06~~P-aL;b66RrTP@{ݵU&nXu&9k 8p eMQ:t!wㇲԬfg3ԋ{+t|u9DA h3#N3G?-%803!$NfH=IY/ t_E sWvtwˀ!u3P6%QEZ³FlUA̱E _GaH8^2AImW/UN uq{V-@Q aG׎ă;ֹ9q] 즏9Ȓzf3ss,ZiG]MaX`Wm>hL½ GkY/*truWnbS?C Mѧ%ą؁JdFl u\[@FWD?Kyޱ#{ߙP|0$׌&[\@lakh >"++-o WF/nO;DzU{x)zZްwL f_O';іmsg0C\ p8wk܀nVh<B 0Cc6ʱz*lsB3GP9>[vJ"'e>W؞}D']Y3ގI\yoxFKfb9ZGQ⮜lh&c|!ֺ@m=A,UM \{|vTV saAB),ۍ. }&~ڊ-W5w=m <u2qc.@-,f饎=4[>xB^P f`L÷Z/1MkxJןΩd@z j`7cQ_q>J7)KE{tXݕ;e"<@Շu[n\{ߕ HIgvΗ%5*t[[Dy H=" ҌB%t(Ԗ~7IFtѓ4O[p&H\p~֕LI~FHj>9ZE\W/ucd~W0"]%Fp5a0%'3t)Bg]/ މOfa{8˚K_KKY遇 ,D&nM*v5# g;2K(${ cnɂL7b3u,=[mP4i-:Bc8`%A:l6j)@PxF 4Nf7KUf ̴ìi2k4s }L1㡂1a]xjAԘJc?d >9  t?#ӄ@Ӌ)&={6ܘ|ܫtjy6\}\~mԀx^wXcD]*jp@_q] $6:Gdw{N©!5'@[}gB (̮o]u˺vCSQ儉S~Df {[(NqV;ŏK!` (}iGe8BJ6bO:`"ķ/v",]NϪssK^wu[c7xr= ;DߔN5?0dO__ FZ8hXqF~'s E{}yT4^J4( alF9dY =o_>}ןo%ݗ촵BF@`K Ϧ^n>頓ڸևz19#0F097FNܹ+ۣ.,l n!L\*gp8+(7=Mlh6KTU9x랰SNlrfnAJc+ QYFL*,V`Npdz\ Ag1e$b[[emߴJ$20w{#ƶd.DBz }o4*AE8j vL?͹9fPu,kθسŁTuu=`lJ~jY@D!n7Ane*FY.fB)}Ʀ"xVwUSڸqom5Á6{&AbtYm t 9x̩>4na滪'%@dGǎV|YsвA0q/A;U惎J+ !5%a+KJ@xdtKEto)! ;eMXh $a)@ʡM+3I ]Ur5[Uɬ=:@-}\Yv6){!l!Acs-aqoa<{(PZgs[I!ړ:I 6+yvo?~ !|Q  5M뜋n=vzbMX鬺Q@̾xfd%rg)p050N.u_{Oq(LT@40$teS kp`ttsuz}C"%N9;W{՘AW$*MM+fPF';Eԅb*vtMmlwUŽԏUZ,_D`ZQ63B_ I/\g:(a2zIM/]H,]Pγ>t<AdSjʤ':{  ?L.S +@dNWn,o i/^nn'v˜jYXd+w{ũ8)bօQc/Q:SF6EQqԂo #E|Ƥ=qM)} `Z1(k#{>P&89?Fn`5&oNRTkx1oY:kNh.gfg2hu|pzNte KZ nH~bi#4K=2|P)^z[1$atg ؐ.; SUOB+cI}l6@tF$ȺhSLHY>-put޻9ib7?)/y8ubGs`"%].|BOEMiB ߪ߱KK9εtviIrU|y,ZUDe6_2#ͩC s ֔36ىқF#hR <19I螇 iǶ~[VÂn@qE}tK&Lq)-Pm:Zm z碓`DJv#tQZMq#TܒgܸĬC"|Gl+́Zͦhy>%{5,7_S9;!JdWm{Zt r,OwE-3^[\m+@6D}ZI&:f_?d4/r}3i[ qZIsh_bg i<<+ ^3IH_xl̀&6.垺fՒOFp]`vyϛ2jdJkkN)p@= !'p8xt1 Չz=vgG}aЭ5WVݤF]??T:mz{Czep|petV`mM:?jk{. B4Q<>{|3'rK}b&ݎ6,J!-mK W0Cxemmѣ=GL-Tա,ia W:!}H«4\[}|X ˡQS & <'l]JU/Y7bTeXkeE,{\|@{0H脇+!lSwlFxV<Ž& `/@;$_AYM{Ucu";S m1k[?VOYX_Ք"OmG{;'˳7C|P2IpI3E?w_V A!s{>g%ÒEz ܰ$̋=:#\esZ#\ie2*fߩZ쑽vK3h &ՒN^;gZs7KWPV?(WӑeG54G-_2zӭ$|]gVsw~XJwV^YuUμ[paѽnP6`tG>Vb ``)GXk29YTz4sGkÌپԹ*_5s:e} Lj[+b*_@S5)y=;A:`]*UCTQ2nM9%y"f$B7dӷB/Q Ut y@ſ={b6 wϹ0r!X.p%/FRe3܁Z$3~ ϰq~B>e$|b 470/nvfxU=7[rx6>nIL&^|=ܕS2PcnqgZ>σX$mqWIh$y-1#|ag=:~Gek5w  -^ <(Z.}_l@HsÕS D',PV,v7L1T(2nePK~Plh^B+}fra.yg%0-WzD.}맄VZ5Ќuyw2$: o-\"Ic6Bw*7fQ胛>ZX!"ZVͅ^#삪{?+r:#X$ak3׫(,UlTK8cԬM }}u&@XХ.SیV6T](S[J}^rˢ>:n? xM}2<'soY]ϨU6ͤkE-aaĹ2V'`5tKxXCݝ ƽ3_xƤ _ooi:q8_^53 RFdF`$Ҟ$>&TCh%c$&ULbj7U=vmt9k/ZI>i4L .q@5ɷHm%&bGT8vn.5{ AZ>]ZRk9U/Tw0uC^ *f f)?p6 >{⃓5Pql yY "~HթWPoT kx|Ob]c&{\1S-@L k% ǽsc),aGRBlaͻ0;tf˦r)߬˚He{ųwifN5i..yâU ǽΆxTF}~'zdܖ5, }1b&kܹGE' 9eq.+gh`hEK|~ר38Tv Gr˦mFI98h~WF;׳x'TY:bFE f [?}pB$b+Sl[uARԵČSrFtn=Zlj+\;5$Y3DE`q0]^6fJyh}f̿9Xcq؇o<,N_& 6J+y߱,ڙNgIDNQ?ou954jN kawkYK'fϚz S J8+Co~b`0N1mi[C@\c+Wb5jjB@%ucqV9%s J}W'L~I <ʣiY# h]+8`!ۘ9-$mH8X/bYJt)PQ}/࿺US5=Q&"cД6pUaL~[U{҉QPɛ>hYzOB6> f v3aF00͸G_D״a HƙH+$eA}$,z+S8h ]BꬰQl|wGG CM4sӋUc_AkH(ak .Yhne̵\ؠb54!1'WR _WE/fn%oou,o WUGEw%ZOɽq^'֨A9,(;"z*"fk?j< .b`Xɸ@_]wPԼu+[jQM1l%Ld%eE`r:Vx':.q@T@ަ)F'zyyuW4 t2"jnXAK}j{c!]"éS}jiW4ƇVRXAd\T8 ;P75?%hS 45@ڼxw҆5-ԃ|rto<@#҅Vog9^.uv_ȣlg͖$[4k#e]oz;ё5V;f2mKmӸAjw27]ooW<OcGژt?Ը48.*)Q$kp@Zȇw@ S4MwFdrd>k3xPJJuXrJP'PQe'A_+Buv7'j/f9}n~ui4!}uD"N' v"5. 'yΠ1_Ve2a|hxF~[bwa)nFiFZ/+C|h6Z`8B' OEHRDjbkR{Q4 4e<fd]X\^xM,̐lT;էRHM>D蟸{" E,vuL>}|2\93 r:iD :D%osU cxC>gH~|h{bmq,Z7ӁgC C0&\ۮ;S'M}A=SlEDYQфcngqP]}9N"|er?f;5v\$m*s<G |! ^]9eqgP/?: >$*)DWQWQAj9 m]ɤ3IoINݩd 9{ցi,5#m;k`lz&GimUtץx};!02nw#6,w_#_ѧل7T͇˂b!>}vKH? pNl*_o]cD|\/܃B+&wb~x%=G$ ^bH\FIZ[\8i32܀Z{^ HNa7)4pA*Yo7\ 7  SRHgLd@9ϟԆ"g8W ZOx8>H_5&ILOeP:-Bw:$:ɉwæ4Q=s=x2W3A5Rؿ˒ ntVHr!vEj|UD.M!I%{D>)A [h%-&/ pak,MLWȴ3*QPVY}%<=!*h>(.i27[/|~{s |ȭ\K[dŔ qHN{y?vzoޓdIK5H'2>P髑IwD6?4!n2>'l^U n: >Laumԩ'hAjg媧$LdM0AT,YOK|t !P:WE_75# SYo#|זڇ-{¦p|#E0$؛׾znP,8{@Q-BZϸ̓/k?M"V޵I?G[sN6 3ne9z$/s?{R r8ۉdɚRA4^AM}2ʼn/8ea `W ] 1_q[փKk=NlwZcf-/UR#?cg;-aK?Ȅ, )T'/!_u :qYN[.%Ljkheѧ1i`MClxs-j},sq^o7kUuu\\D%indT̶O|r@hQ5;-0SM*\^8msߟyKiS"aY?i&EVi$<DEUsYR;6B/B8Vlܵ/]pf _`_Ǐ5n#NG9uosOV4 {wRvT8sٳ+VGrJV oػIqt&7*3wb# %YhTk,?)n#koqՎŃ(?>(clt8C(Swx4ִ3qe Uˑ33Р%a #n^^;e UTX%\Q[@+ wogX,h5焁"_SfݝBa[^4|V$ֈoE;a" H<" ;l?D5p bYC_WjeFv6Pc?/i'@|H>JC8$K[KP 3v*-g}R%R.w/;*뜌}ζ!љH7z$m;d̝F tƠ*,Vq+}养"T1K^bDZF1PߦI#? I5w hZ4HS:שjxCrfh|V&#`Jhv |J9]sn)y+0W:]9K/CNZw?fI- AuB.BSMEw ?sb@.-JZ݅Gc -x~2}02 }?c*s:@_n?JB, 4K1HH(=D_,YL|ȨR]X-'+q׀;waniP df%w>#9냷:QHwKewO;G.I *A"d+/~ ь}H[8EGӝ+$Lr5yG*Ɇ_Hj]-zTA3>7fӜLش+NͪbQ}U'I<'=hVqNӐu?MdS{[])O?spwMq}~J|fȞ6-w2Wܧ=J&⟰H=Id\Ew^-JX2+YOҌGcfކ1aVY[bS:vk}wBz#7,r"'C.ʞS. (aIfd‹!` {( F j#R)@ փkġ4$SO̚ i8#_֜zYH6,g24dB_Z]q6Ko#)S)s0IЃ@sۜ埼Hdu3^7ZSĚ;?sڠ(.-s,6#/" :Ӿb+&V$ac?⢒KX8w̜17\"chPymYH|!N)'3C_GDW9"j叧WǠG=`p (*){tvGoև 8&kFX@̽PgޠȞ.buM  ՙ Tt~8|S\y3`1X򊊆0J03Sȍ[PPVHhd{Ͽhh9~A3dK<.fV^U>r'' Ϝ<nj$@WSnVHƲfxE@Wf%/XJ-'9v0lRthzu?}lyʠmOϦFUabsj-EzN^_ڟj9S2DAy3NZ(o5,oЊ;<1Q\M(|#nkݘޤ<'*iG?`d Xe6Ę4m 1t#n [4ؔ()A{|vU9dfrsՔDܦ Y`a0QguگBJnBD7/Jq^߭*v# M%m_1pyxFڨ/܉sGLztX6͋UN+JzmT,h[SD ,AQm,ςA#hPo x:AuTr c%:d; oO1w<ژ'*ssr/* 0hP4'7?ϓǧYa 3T2We,LJ(e6s[u'Ϡ=a݆YNkfč:6Q_I$hc"' jQ4%T<|&-i"zd12Ko^pukAy6xje2Pz5~z3RQnplv@Vh/P 2 m @mBtEH13/\x͚g:4oq\'NZM#KyIq-\X%*ypECW˞(1-*p;=H;O=NJn-N4Y^C]id3yL\q3p bZ0UD~a7G0PւNCd -7 ZB@4ʘn`RlSP%'y-/zhKea8lZ"mEZ&ň-T|A:Sqމݨ`HL;Řs'ۍs!栠\^ I'rA.`˾ͱzYTJ3,D@xPڏ$\ުx%ƶIX$՛ۮreyXdygWH52?r~]‡&ڞ(ˌ@ "BsjBR#oJ_z?tMMsmН+NOW*_>@Ԕ1]]r&kV. mF` L _Dnш&JN":l2t~8.P]s)\yźr.Zz"1rFvv2K1 ,尼˛n4p` Ժ l(&_Ty0`-5qE`~suiCX!٦n{{M.;ߌ^yeӧu8Sb|7c1`8­Xzͮy>}7n^]+z!3J3V%>MԡX+/actl ^ߏCKvX.!2>v-J$2@+,yY12oQHוu7UP`Rn(h~iM`*Ep0j#G"g0.r?tRA@W KOĠIl XZ{}]Ht}p3ybXR@OLpV(-3̨$;zWq ;rE'xuqy*N`O湚TN)(cVƧPYY"`씻*8yzJ[m;QWyH7{J⺗Qbs5Ra[S_,' ?2di;h͘bE{"X%V.`+'M^lG5nـT٧mA 5$cu$P:Ei}DtrrJa dZD(;|\ ֹ;sKδ]&ٔL)/SwR,".8HD5[dv9< t+wrM-x 3[5a5)waT+֪ƦZMbjl{yt,X|ZROsVNkW@A2 :6 BwSi0iNMG!thjhW0ևy&jly;tg^Js+ijX!}B0Vf.:P95qfh!C}4PRLtC= `+1N#}L[zeԴg'v@󧧇{p~֌֓(5zkݳ4t*U :,7aG''-ZsFI]#Uũқ+EB XrQ-<3Cu,2̛- o7ڽ{&lĆ\E iaş|w5SIwfpn{᧞R暵݈HҚ99gam X X`{. `r62/q'}쪿2;sj?a nv1K^%:q!};]B[ƙ!n>4M'8UVXM59hI:7#)׀8b~ 9Lo ,˺ ƙem0%E8r0(2ZӋ{׻$JK KH40PE(m!*p3` h&WSLY]N=C+: KEnI5{Fg2(x~̰S*)R K3٨Winƪ-9jY 1 hDm7uޭ4ftZZ2qp=Bxketr:ߠ>`o>aǩ(BcÿFUρ& n!V0}Suކ`yq-5+=5|L*9~hìMPbo׺'/88 e(BǶ; f/I>U{2-deֆ=^[.>"7qw(ǽ(49.cV/d t2#?;ΜG=D#+UPj-+;~ e;@9lh`YÙ*myۜ QuvmsH@"x5^H| VTGm,8B9)oO,nL/C2K0 a_* Bp ZG<ѦM}*͹Je $tvpscyy"TKlh'܂D҆]uBF+W~8xb@tӔtŘ{6Q{ wpD &ra Y8ӷ4GBeJgUlmdc$UB/C ӊ~T+iS"H;־LJI;тw~)oCOWn}@k?VN/|i+^)cRG}=#bH$?`A-6<|y7HFR7.Ty5|`YG{ z|DQH 'bV+3R;%,Bvea;T85LiNI '~yq(6\K9gAr(:DЍQpl+N&L U%`sܖ]H[~3xC(ԤY))WiS-kGiyk3cL5f5L]Zak"haGU P0Ŕ%.KDs`mgʊ%)lU̢; CPpiv ͞)vE/5 0̮ڡB妳_ZLn\Oqi8]Xd.Sr<%idTyo1x)H=%6q7PT,Q9;˅sBkJyD,u7/2_nj_ Ȯ7X_֎?\m1?4\mOKUmOh9Go%skTaLj6TaRodBpU09.`4:` SPyj"g{PtuP\AEk" :. Z*/vĖL z?n5:R{[躙yBس3 7m_q/Wol FL}dr-v4g 'YaebS%cLL2Κc4މC/}l"`;YhesQ^ t4l>ṠpԑI"9DŽ(28%Z%Y{vl/uGg\"Ej@G"Ȏdp{s¶M H%_Hpdp;C,d&0(9jb8,%J.\ҋj,XgF@g7H*XY7p\@hƼPv'M.~em ${VJ" U/iRDݡԮ/X;'Ţ<<1+^:]^љf R>!kÆ;zclA!cA/`~ 7Oڒ,lAT;+d=K*Eepl$di ia[幯:kZK؇/Rɴ҇I\XT>()o1p_3N#4W[~TAL,lJNw!EYZH4 q.Jo-mɄOϤyͲ֮A`~u12*:rk4tkB/IڿA?YBSoڂ 59((#u2͛t|HS82ăE\սܝKdgq@5 TQa({dqS7fa霈HF>"La FE?i90!]'@􃕵3I8}s' MȽ^?^/xb-0}Auނ?;.yQhH5I3< G`xOi(Mf>&}̕I8S{wɗBLa쉁c !`~9[ B V||&抍;WR ẖ-ES>ʝ{ۢ \u1G# iÄD ]fhk̥rP@ge6 U8nJCQ<1ᮖ *k}dD@o!EAl 寺݋-1/yG ؼk²Pc?8L\۲39xV=Av;07_Fax73.9}= pyY,S.B #eHUAXgCHՌU<:ƭXi ;`-DXI(' e8[@|V:ZՓZe2Fp(* fѽV^sRYbbl<^QV|&y;Lj9Bn+ղhzcڍݵ5%¸~l[us5x(͂IdVfߎ)a iѼ_ ߈=̬i%X<@S *QD`Ă)Ȫe oy]&dA.AC"aiAQݴO+0qp kgmĵ/#/h`"<]} IՏ ijV62&cwtxW/ c9#Z,,SFߩYo8{a C{8]Fa~ǀƙf"g#݂ZNWlDrP}Zrߥ@l;MGU"gݑ)6)G¿3exWǞt>8`6[3#Y~*g$W6;Eb>m:tz42vرZ-\\InK*޽=K!eK ݨ_pnAԤ5V2tgP `BH!ƆeDzH%,9o7}ufΊg51q^aqo U6{*Ki`X)WR,dArbɞ!x29rS?mhj&檮PK|{9hBӁA|2T<7 ͯ)?#<(!x,}yz6!ȟ[OAÂjjuQs Y&=Ӷbq.Tg)Ca$D!Gv- 7I4*jd@lo DӲN&3l&}杋OT_> _j9aXK\oQ=-ZXϥBJ`W:#&}ވ5 JW6`fǫ 2(F[VN1n?$q|^ͬvuM^q0ploRX/%KL.W~_h 1rQpnj>v^'FCa2SΒĵwɾǀ9+uy|X-B*,r P/{i6WNKڼ9-,rUJo#\VŶq]`/_sWw3y&-ɖ0S x7,}Y29lAmaHT"UDNO3)h 銦mubB!e9ZgIN0y eDDfb;W%q);IO,W\L6LiᛛX~3K{7ڇĹɐV,NG>լx/&: "փCa*M h9۹Hh7BWS!wMwLA2586U@c vsF)g"=eQ2bif(Lxi˜hEL;u?z hŘњq֊AC|ZhF%IuAƦ)42@p_[/I9>OR-N%=vg~ˆG&|{dF8^#XA F@x"nىLe Ld5oyI^AQWvٿJ >,BBS23(E;8p30U7Ȇzg0eTUpU;n(N6 AWSUܐ s[q<$ci9_ &Da4-1\O 2' ,Ky9\l]8@]XeIןI3k0%|R1ys ҵXAF)/,|`K}7h6H)znI5 D|$xۺJtD'Cس8HݚCsATx$ Qw(Gh2T{ZBܜ)BrDBjslb P }-? L*^S&yf#x;KTn o6pqb[XX;`|!MVۍ%NS?wND#TTuyx%ւND9R,`/Em5WU%PІNV[~L -"'7_D\q?d66%?50AQSAS ƽSvPO,gpK6mqSH#AZ'ށULcPOB0nC8o/C4Ic3!mf\{|(_}m8`#GoS; u6Ѱ lce}?+u0h~(<Ѫexzm^zpra|0:n܂%/ե}PZ ô=Ob`X;]@uA|][DzڂẗcYͻL.}}N޹Θ FwF5U}jrMJu ɸerifGЕpIRzI^+}o>wzT!|DRE=_M qY0Um{(Tʉ}y!kzK5ۚVu0]?RXc)4ۻIP3!8]F< e |C7ho4݁llBuLވly^P Bt|+J03"bp!%>(ν%Z"`id^Y.F>n)T'9]#NEtȪ:V1|]({}b xJ|LYgqGAlJ"8_C%+!1j{7ň*1!9:w*?ⷚ)~d X zun^U]˜RA񅩓&_OЁ~zofr/K>urIҜsZPc`4`!0PskTAAS$|:>1v#A~@7z~Rlr A ޤ W2 V41yLߔg PjvaK 2t 3YNV+9P, /?=󆳁{\ dR^18scsX` X8N).<~vjQ~০n: 'V~9? a42|h-L+@gf K Ce٭FU PzW7‡ԷXC:OR5H*ĶؤcrM-LDXw 6 \Lbׇ0Q 8K^Rb倏}[M|u>-upik=+I训a*P IՕ:gp\:p QuR|R͓>CJk)PJ% I=J Q b5NʰFMzjμvD4\8XC_%Ux;>'q3V 6z9`{ϥ1sw~U A>G(q0NԒNϐJ݇cz)}zvbH!c8`^a;5R/ 틳S%h3u?8!ڄ=-?E @A?x{J3EB9Ň,ʿ3vܤ IB!ap姬u<+ {,/«[M(DK ! Nhhɨ`T69VH-N/Pa R-eta\װM_(-!GݸޟCt.7=?D}^k^=FJ.DU1lBؤlNK{y:\*mg-te *xPAs0$?!׌&92g չ&j"MlJT҃WN C{ ( Q2&ky~i4dFyӓVN-+}t:bV$ TkI KxH#q  ZF{]2$?!gdg"K 0)q{*e{Xdzc{'n:\j3 BMq9Mi;YKE˝Kdޔhތ<,LTZ.k2犏љ@EzQ󘅥[GTU/C5V: o5~2F4pH.#cί7?}+.~҈sZ& Pd랛88B V$5Neλ ir`{Dޟ[F%}# ]D aۍteHd8㤖$Ѿ$m!^/(vؘHG'ZXY)q^$(C:p⬸L"nHg' ɝ9jԍhE#O84;rB_dTebְp N>eD5H%O` Uvʬ w1|dQ˸+"o>]𗺫-1$h's!T_`wXGߧF8㌦${,^;Aix98v-i5},-E˩:cv!])Ҕx爑Q',D>vթe0wrI/(9$![s#1w~"3u6FS=;X( ’@Vư$ԏ1ΆDOFҕYW(3tټǨ*P!kDv JU,A?-1ɤ3Q>NOϥՕgdUx(8aKPM4AcE 3 NOO|/Yw.Io?hIȃeLH)C‘@lg~nJCj:|P⃒7ںr O{z;ɄDwԃ"ӸѢy4A P3FdJyό3% ) ѧ!5w);ֳbơbۋxKEgמ wCd}(orSTf&z9)Dr@=tMfBFc:"Ehwh:zW.aTt v`Dޱ& dr6hQ F|4ŗLR@85dd 9)LYradm.d|Jo<(2Gfdצb{̓'i%t.q,`UMF*RYjvt` Lgo(4elT;k8)@S]R h }m` cam>cb«A$᷉;!xiH|VAUw< Uz%jUBBM+ G: 3:"+=b=Իw=>~PoӹU!:)g@Wx|u*3 #Z])|w>tS4Wy hԠ۹9pcep&=8}B:Ӷct+}bWg< /yq^ U-07d^"ꎷ0lwP0[ uB;>RE%ںͳa>(GgR/$w΄Op_uf<~ md" gR_GYn<6IP?|Fw-<Ԡ >;S}$Pmu7y"z&cXhK1iwc:IFQ;~Be+O*]"BVuT_Naw`Mz"Gʿ3>&sV*-@G~Mrjp:=4kV4=u;D:I/ v-@#7DX+6$$?'x-(=\!OKJ4N (LߊW[̠fIso?'㤑Ku$p[XZEf<WC*Т3 ϐđ#bn*}[LM ZY;$ݟmKc }輻]=-ո? ? =?v[XC;2(v {=+ܖ3Yg& nev\#FHjo6 WpvcZ =EuYC5-}tɌgLٙOMY'_DLF$sқbjh.qJԻ&L Ua1O }qo;lf2v:m3u{Y^%tu>>{fH;7hNīeXGخEo HJ4dUKP񔗭=?5(>/_[=$Dn{6ߋDB!NOk t2p\!K1u8ՆS♡ȾA~\AY boo3{:ҿolcY$f uiF&lđ=8Qh Ɵ~ BmC~RUCt}<cl+̭ Pg @2ܱF a[YvƌYP#Nʝzceټ-k{Yx'n u'QA6O_WO\p31Q$ ]i?FWKEd=V1aTW81vlM-9?.qJx5?OI~]JFH_!__* FQmlItQcOPӦ˅u3 }A?'U5@tT8( kU&*2T]Ųc0qcC TrAX].stF!m6!)ۋ[730AJwC/@ND9L E= j;{QUwijB}UrNn0ʌ1s7ltw9I+Jm?9vJgM3't1 X%j]Uh.m[hJTxN'F7U QrI5LBO5zoȚi P Ax޶i\Pg`|K7fCyg c\$c?BvSv s 3G/j.0 .btjl­ioX~<_SP*gy&PH 4^{ `r%wwcӬ2JT)(k-˳on*}k ̍YhO;kNY&{>TCY0A`IlZtor!'PM:)PV`ʊJP:&4ulU# xd&°^4z;'Hv/XɆF+ڄ ,('c3Wݽ^6v) _cmG|o6uqeλpAW9#HxPYh8ƋaIV7*"N<i@n2)IBw[Erg%Rff6 % z Raz4 5#*i'3sTbeTq܁.U!ۋEڬ/Yf'4!:q!Ш\G6!x9Hc$&wJ*;#Ӿs(*8oW6& \ɯ%Q)Fs Ӳ%Hhߜ p* T̈́ 5lcipyA&;W\\q8bDo@3x7,M8v:*}ƚHgװG9WY`ר T4Pp~^ un_[ʱEvSQ: xt4AƎo2W)m%~I顂nC08/Ǝ`aέjˤȪbNT`_&Xu8ii302K~|–Ƥƞ[g(7{t8vٝމ]sLD4Ndn.Ce@P]S-t#d~b^*>փɢpm/x<ġ o=EZv;P#r[Kk"5xC\:dqzY=x҄L+L\naOC٦(ēB6>Vus evc&t=S7r7s[tKU[xб|NzIV}|H]@"ViTKѢ )p9q o:‚llM]v%(th&LYM àJ^3p G2FR}s> x;gq#cCTׯ[NBf&t&PL%H_AB):1zլ>P6]V oAqtj#gRY9)KCUY0Q7 =C:iC Jݬ`ъm۟[ZRr ,=5*&/❌qt/J4{[C3ρrJעH6j U;e{O*aؘYe,Xkb/F/pݜEd鳚ؗDWX/afxE~^dn" Tt>} wf~BҽeHrkCP&hcoD%[Yu&c>&j[U!.^j=o5&7X'2Jb.4Gp̋;TdK';9n(Mh^#PG:=Be7С^D5#>)+KGRsE\J ʳ+͞Eņ:h,7Dģ㖤gՇX %0eLXŇbhݎ®ސ͢kx^vڛr1[]NנY&_ -J@lg*meHIzvz͔,X <QOq$Ui/sqF?G+OA. DdۍC3(^G'Op[ sU0#~ЖP76m_@PΙ2R>: O#k;/ tMĆ0{oJW px(MZa5D'tJAW}uHK~>z]͌ͼHku>хTbpS-B*pgF Jb{ND*A\sMELសTd>TPb1o8pU2+~4д=ڝ%!. :3>?j;iA)ZD?26pw \sh⟃$Q mhZ=ui}(KAKBgALx14r OG;*෬+u҅s[F7P7 /PRl"F+E%sW8(ص!1ւuxbِSvưn/w/7yu@"N0$"`H|^t~R,!2;!ÛNudGg ~W{ \skL8 k_Sxb{T3S3ąUvP'FPX`JW9A )kbN!euSk`;6.?^\ 1r< IGmX%|vcœe݄YE")l˰WWsB٫lT!!if 61j? @qD5c_ ,]Gt,;.Hٳ x'--'ׯc=JWgEy;)r 4޶`)2annlO0ťf9i2ɡߣ'l*t 7 >. }8ъ .` iGцK]p;KqSyJN?~SMډW3Z8M8Y MuvH{Å/5oht%Î|6/F?@P;S,ta$jRlG zXn<j \X-4,g(9ẆR\;\m,/ʟih}fik[wVVNqu;fX GBAj/#Ql8\IA,0%Ѭ; /zG*Eibl+P\ +<52Gubn?IWk$o˼u~¦m4K򳑇Dz˻LLS{AOFT)7D/ST4 V|]IU8KW刭:ƀLOyԽltiC? }ӁJkXd^ ֝$V' mwqS> rXJB7ܛgМb\{YV>cټW,I"6Ԗ?;F̓Fdj;v*m21`m*rX;?_!ZR::N-{)逯}ۂeFкL- ſ_ %\.F .PNfM)/!9KH#:OǛݭ[XF9[ d^2 #:,L 3^%w2RW ͗6q 1F~:\~%WhS[BA]4, 5͊kдTF+9ѓzF`9ej>>V:oP?>g%A3BslQZr+"ƶP0mݖϟ֚:$0۠Xò44rʣ濕d+x4AMJa!fTg!J|,9E5y)LY|ʈ}4ݜO{McB^&O SDA~P̳WKf~wa OheV/`s$N Ҟ.)9oӡWZ& ڀ돨tTM-Ol'%YƭTa PQ<%;ڔ6͍ aa\įD1bF77 2&kC"= pC,HA}# ME,1hg*>$oRs첀H=y27eL!V$ؤ%pzᬳ֏X>M@Y0ܑ(/{-Pc+ݥExJތ?1[Qԭz&=,WPKs/ՑQ_{;>r*f&.^K5`>lcR9ܺŠ(0ᤣ#j8/mKOqOFp4b7R`FZ!%<;?w;-Rat^ הDvnbV}̺Vķ?MpU&??tSU6nR=Qu&UPg^+MV%5tt 䈞7`{TX.nEa$:pYVaPK҆ vXr@`da}Hb8]T4kTXvZ A4תފ}e-}Iݠٓ̿Z(V'\̸]uMz}ZsEP!Cv/,jZءN1 %pqZP8mq,EoMrjsVWԹ86%1M)ν K3ќFGߍ#GXnU7}7r#; ьtP qG,,"]+՚ꔷ^LIlj]<F 1[fCdLc@2WAR BPc"{y?FBJ2`kVLi g(uQɵ}<쏸a$ZN Yv^c` [0s Bݲ+fY5˱.9E.\EZktjt6=GFú٣MC>qR U]##Rueئ@3YSO ߫)j9bAc0,&)} B[h )rQ)ȶy,5\Rw.鵬x$oqVqm1i6%zt;ܭ2R! =whw Vu;60r~uLJ30 k-pn d|Lƛ ^1Etm]}ˍkmf7$ <7b:_L F F@tqEw] QTͩz~lgCC), [3$nͅ d}H*p8IImh>ۤZ T ŨՐPLb`}rgjDjcË( ,ϟT,VɆ7!ayG%t &oTK?R&4k"\1 E2" AHP 4P۶&0F$ xv -<|SJ`d։! T^ WI[QG}+jb:֬\* + wC00}vz#)nX&[Ok_*Y@w$͘ /T >&wb QʤV<V.ab4ȶAo?gSkz[ zWb#Iiөm@3QJA0xRaV׏r6؄KX0wBR-NЬxx<-9R?FH%<24)Yfg20 l̝|$Upg%a9.P߾3_8 9{JMDXGB,V7[W.SBbT4Qlfnw."C*li갲#m;/vnN=Y`<>qpx&I@`'w.& :)Yz *Yh njEWvEtJ"4sUρ|ck?7{2פWݾdak EgH5Kf\Jʻw*AMJATz`f a\8l9 Ű]\5 XҎKeR &*&6H` &Z1rY!~W(2ڀ T際M5^{})j{5D Xn\feN''h+#ٸ5dj4]` v_%mZGbt>p{&'|pdte<퐷iZ=. .Hb xB7j%•~*R,@7Yj\Wu-.+qxl{Z}.rǶ.׭8i/K{H?"^>qGq1ߗuC 4uV-h0Nn6Fgd1\29xTk77kzxuC}\̗umh 6]؏﮳/4 9Wb̡Q6C-L?pèŇMq5-=圎(n D!xt:%+PE įYI$3k*(|;^r HttNGd_O;^_: 8v\t?kY ?FTSo'ƞCQnmn<sohk=GG~Ŷ RP&SDK<@[mI՘\bLƠC#Ȧh<B_7bx]mfK\;>MysF}~LSi~vP̣xԾ~n =8?@ 1ZL6]Z1 E(doV"hSƧr66^FVqyfy!&;jcs\˼18$~Ik Rcy!6q:Vt̀_BK=aE]&5=c z2z@iP?GKٛƵ gG%2>Jo.枆٩UA8+ uzO{X`8n\8mU, AT{;gɮ2}πg^n Y&OXOj pH%_4Ab:Munqޙ| 5Wy%DBɋ> 1$"޽/clWhqDTfP̎RXw%>7И)j%OUNt(WS {x)%wSavR±vvg}/jI^(FN8ڿaB^V2i"d̓ _n:]ђe(2+kKH Y퀨I ^>~1j.B򞳒5>kD\ m̏L"5M wN. SZfc3Zx?.uljfQҟP=q_v.N=& i4''v5q9WՑFqnM]IP_rTD\dw-"F4M/2wqAc4;MUvdtyJru un/IOzHc dK-C 3L`Ϗ0">eQ<|9fq-]ah2E:㑟p^gvJ},j7Xgw<`SއC-Y)Qzy߷b.^-@!%g]E4dy3ܭEhMLAٳoDTb̪;j^%u`ś4p_NPɌ`v'@>U߾'{EXK=y~Qh#q]h94vtمEԆOƘʦ%J>wXtr(rŴ9NUx@m._7 a.^? 6&Dc0fվpx[Ut^㚛<$ћp@X_Z2}Ru 6Յ1BJJľw(>)ఊ[3†R(us?( <#Yx@,>p|՚6T,&.c|7vɿfM\M25]\l'!J\S_*q Ǧi3fTz)@k8BC=4o}Epy. ;} [ u qV J^)SѢRT:TJjn鱺ߑMm~J{H@ ++ϴ- _íTMwChehΊp wQP仨;{]r+dc_|s=#Fn݀i^k g7h99Cܿ-<fAJ/oUg( bxst~tɃas<%rC4\%q w[,5:O蟢EeJ!a7m`80p Ձ`8T &,RB?) tp&>ȺK)6ZN([IBƳlPk[v}.Q ‰E(Ʀ{8֙iiN+4dAPS# "E\96Y#o;k?1 Z38-LOX0֩rS.Xl{`³VQ3p[9s)vR{!xRzm/vBx'S4HILy͸% 1,LGCos1 ju o5WUaoב=V2ؿ>鼳n8rQ |4UP"y @3^.d} URn&dӂHCmR$sIYپ!"僜Y2O EK-9A\e 30eS/Mz?:ZsZ <|G[M:馑P[7D1H jy<:O +;>v-3d圥%rjM W(掓/kG>MYm_2=_,0>SCBijZe]}q,hܵAWBKj`U+umIBtyMJp[j-~xW.q,G}ʢ|`c%Xh:4NbI5u.מ-l& U.Aj,(-K=.f޸l 2q%n^x"^VZ2LCA+i >ͤ@#JNlOt}LUIf(qp&e7$ky_Yj~srGu=هZ5^DrGd܏xmA]B``h?32udI*<; (o[$Z A0-.|R0MIh{M`"yL: @Ut⬫Elt4hw*_m~_ '~JfDS-'wjf:t"^f"`".q16vzUwCX)U]uQ.]e;B2ڣn&zv4bF1W ױSyJ""oN؈;mo6A^%&[+&{T@`'4_ 9ĀFQq3 _/\yyÎwb;*ߎbA?i*@ -h L#Tc7W6N5E<5jEnrd>?MK '眹憌EߏrLF Q1&Lt{aeG#5/=ldi"";Q8-M 72@΄W4qQGe1g¥p3Q(9x:,|V1^ Q:DArV6{ BfB\%>(_AᕯpX3Ň;6J)ejXw=emJN #f!˜3ySBuHfd5D>r<{VCʾ2/ڸ $wx;3En7;h7պ 7l흓n,V{!N5`jEs>5I}^JuXq (i3#zfcT: SIr_};rƣڳO A^7/BgL4X3_ \(u 1`DقmY0hT xX$ 4Q@9vʉm g_>n5@mŖ({p-D|)Y '64ySdU9b}Ëiї> %o˟0uMJ PqegYNw{=(Ti*%":Z'WmME-EkAb% QfCh R j1gǩ$ :k}QCصg4S * ܮdBqc iYNKCl\j]yƯ]A73r1v.5q Yp9L053Mђ%f6Y}4(i:9?r*1{ˏ*2[*Q٢չƀ )F|}k/Zthu :gr3yز)By: T Zh,zeIvӅ[%SDfS U)cV3hl85:b3+{/Ft&`vhef=5;:vߓ${-"n>O`lm߅[DM Oo{Y.ɭ5\:ohKHmJp~x~ԞįHGYe68{_;vDdI|42Hf9~p6?I# [Pqض꥕ >ii"D~=P+\4G;:a%:tkp(7_ `,Vó @,yS~ᅡ?yass quTFZ w{R&L H180`a\rLάϘ] 2VVn=hX79u4G0CM-3d_SŏqmC5KEqrK/ktO>w׏K0.(<οVmlKS̸9W*Ȝ |l&T-^ EY/d5t[WTDeaIDwUH:\OuOt(%_xE`41g(%P w"d@#(Ɔ;(|S\dC=RD\9IAЮ Kc FƒeEF{G 5R4 W&BzJysݐ,lC>(' dcG8KNd1@{ݧ*Pͦ?/=0Njx{k֕uz]ߵcO<\K6ȫݍMO(U-aKBF G"Qt C []0Nw~$GJN¤AG+M}*V DRO K`GC eO(a)5ldiΈfno#VRa26{yZE\o_ oCƝuo6'u*霼v;m+l0*.jrI{N@9fr( (5f~Mi 0&zH+7$Wt9U)ǥ ׋4pS;L%WQ[ӓM{Ѓyb/>*)HXNKZo-LltAtkG+mǢ %L"Q[MWb BU{qwI .9} tqXupA色e)P!~%~v |r\SGҦ i{n HE|6OS=Lkw%.=;lwvyM TakZ$stP#*9VCKб$z̩=34eudD8!c%u('/T[-ie)= eF敊q ޒ~Z*}f.vx\֌:b(:bfRaz!&rhX ǚOa_*X ,6γx)Iv~҂Ug1u:Q OOvEnJcϿtֿkjf,/^]vkhEU%n%1?9)= tGGwxTRX'tTaQE!vnfB3zv1MQPxYA,|ד <=c  חMsj1dR0_TK48hLCPDy.ЊBk<<^= si>W98tYC`M0@CX Ot]uvS.j~Tۨ0{{,|s@-tdTNޒmop=1HlWxշwo_(ǩ܎63-> ;#^POPnpU;V?u0Ѽ0:I2eGsw+GWC"z&hBChzO?IvǩF"F.;J%߻Ԧ]|yn6DR(I>c[e}Iq0Z/bmԛnj+KWC 4SJo»6R7?#`/TKGƟnoR  w0򗛌U7=}&1G%X­r<5Ÿ ۻ֎)'c(vc;oHEqWak}[;ITr0Č񒬾wP‡Yffd- ! iOJhaOs$ԩTμX2[ز k u} 隭,ew,q=:4:ީ PgxT>2e/ J,̺dq 0m Xn#v5% 8m]?W@we_FMnY Qy)܁4l{HW[W* g[."_ uQmJS_:>m1T .~& Tz*0Ȯ=~ienӛﭶ5..Q ܣ|2l"]< b$T` m'? 37 Yƾ?@i֛aY*q"(lr !GW932d֭壌'ղ6: y;ܘ%TbTɍ9cJXHw%19).| 6VxjW8sʠM](wޭ֗ \az!<nX<uB-nY(Ώ{v:ʢPq` 4c*9hy˺sS'hb+rWПc\ fe3ژ}.1bvn:adS)5ī˻qvبPeh齮 sn Me2Ws"?j^дf"h*u90FϚZtHGW~U㧹axj?>rBc׎dgBde+szV'BS R`w}1 ݶ ">VGD$Z(Zk}C,MhKX'mIf.tgQ#f֕46w+W3nB2nSQ8@9& U_#:+1؍lr㭒v9r6g~_0:B8̊;'eB3՟>) wi!T-?51U˚u$Hh/zQޱD!g{qGL (|nޔ@5:&}eR5DD[ں>ȎXB r:Y;՝N(%P>KѺ&N.nbiV<2luL0MlvKMX^$GP4[|1M6r-R{\^$wv w݊Ky@Z˰1SU$* HV!r 55/wA 3vɟkkYreb@ Ԍ_k/LF +mxm SJ qF,;84mT-\l4'K( LvO2T iƯrПKӳ']glb;[9]UOY%~ ˆKi5CRp s'|fFLpcs!yNdMYv7#tδ@ӜDΩ`TLr(ҁmn LY5`4?e>9^6L!rt9!֬*qOpxe<oE?Sf_ѓ*}Td]EʡknDCp%v7*L>%hW1f9` FDp_;?B %_++oѴ Ty)Dޅ? 7э4U?K98:zhdtO]qx0986D\o] 7 p|k8CLj S!gA[?p!'6tr(r!w4mP:]ie: ~Jt#Zԅ+`~71Υg3F?qפˮ̩_OO rSca@^g%<1Eu}4]yPFªni@٩b9AVuPlcPa WȢEy tְ\#HTE x;8M! v|Cm3rff&B$Y̩;|!`͜WjsBP5\Zk|E>4#{##*"̔*U+b %l69QM}òϬ+A <݇,@b n(Dyߠ>tgO-ua āx5zb>&vעNz̎2lMIF屪qfqnpo{?v1J%U93:IEA D'B.q{uYGC>J!4[ȯy2ȶ\`F$[:GOQmp#<>Dx! U$4o>ȋ=E|#k NFgP4k?!{c?T\/R!8+-k*,'v(e$څuSgd{|Q|3!(.׆, ^Cmcc瓑"Ԏ(C|)8uDO&^ cUI( اMoF9 a6&tHFq]k듕ul%M1,$U^~& 1`Y/:ywr> Oa񚡄gVkHYbPT&#̪bW 9MkQZn=B@ "zP%+&:tMiEKπLF~{qV}KsVn;DUV:\B܎dNj#g]FwUP!ocdC̥KB#HDx D$ٝ`bR=m ?]v~#>`@;lvA[,x3zZEMrbv"Ċ72$Hy9Sc6AMk"5Yhg6rX/8KEg;q{B~P$ ̄\/)r7x_U^:J &c??=u-]r % fႍ%խrG N\4{ٵt_-")G.@e:NPx1u!h U фt:*cbZVn{as&N:dM0;wR_wL'J.aL:_I 4' fPu᭚&ud@|| 򝓠.4t9vA*Xi^uT_O`ico҂΁x}WP`X@yy\~jEZ>c|,.l|0hYƾN^@$jac*8p*пD#|ʊ=ݸSv*?mUuI)YAPx+}a%.AskWuvPa{vvY g}myM`<^Ôm 3eϠA?[F?FpU"/Okkśfth!֕7| ̸7ڽD,H(>3|Uu&o s =̭ޢ4 ouĜ a yWd7ퟦq$?Ku{\ :+-c_ݘ vHϩ. !/@n2y;8S&.%sRɝx6HI͆]7F9Z,^GE]PfCq!;RKyo>bD\w+$=D([1ϗ!3И>;%qx+^>f QxuD@T1Ìoupm؈dҵ ֶGJ;)U?ze8˅Wi6 R:(5"7ޘWOy2>MUc&6q&>oi148Gw]Bבt,~rm`p^u4keހ̈́i #nYp[I=?@. 靄Y] : 7.R3:ORJ ȓ&xf.cv-ۖީ>&)}6i9.h"(M2?੭,LglIWS˻0FSPK>ak8~8/oEIL+FdgI]7Q.Ηy taHaI촻Nxʠyk@i6T]v1̜0$u..1*9 ˕-=9+ (<'h_s/\2ur!'X^#ef7nE%-jB 84uD uESr!eU;1÷+*шe:ecIp,rMg=1 _BQ52"=cpќ4Ä(<.sIL[X.'rŭ ?"Nns9tm?zTNDt2!;vykF̓3j8(:{LDڜPm(Ert o"{TK;:71!)G n'mh`,T#r+wg,!Cg> ϣy6AU_:3;tfbm ;6(-AR]XtU1+D(QTFL#6kY})Q%HŽ1c[q8oqsIy(qa^ og [Ŵ׾B_̎_^Qҳ6Q#eqWg=qtd2RǑF!l#YqwVͦp۾YΦ?Li.Br=MŚ5 %g1 \@px/Td8҄^}E|"ZuI=3+*Yr|gG]ZXқ&X 'L*wN)9y-ݖ9SfQ E2e c>J;f4b<\1T2;oײ?E V\J.̍&2wK?=$di񥿴#ۻxʃ< s^[I9=22B3!Mހuu6`<4’##[5M ^]˛~w s:M51ḇAk :[Xx=?hn7y7jUO-}4n#^d'VwL!ʣB;A6}ݛ\VI2e4%#ؑ|hp ׭[Q/`k2s1q\0ʼ$IÁ|E? )ajM;u y3A":S|uS_lC?-W5r{7u\tM>"Czv!`#DX@U$NÎ"vWJT.N3Eԫgv_b\Muʮ{ )}`290^󺅊=)!%H=ia ="؍`E7DTӭ<-h]nGb}eګc 7FHE*5;y +Jt^A U:鏰u.%>_3Q2nҠڈw}# إ6 N߆$XG+f s/); [E13axt Õ*EśYi|sLeGOYa%,Fk^TM 1G}Npr-F+tlx售S拯VfVGv#  #jnSdwfČMµϺbi1:asM`.))n8RcR2eh#(C!g}mIe1e,v]i?unz|ti?1NMVe-x'YvvsUalfi^M'f~ l/Q'XɔɐH|GDHiOVO'ab["V 0EkW(>TuI,x Y\jHqu*ÁחN8 lQnv`Z`Uv8v4.)Z4FK/m8ia-k61 A^g.ebXxf=P71Z*1/m)h&x}, tK0Eh~Xw@ˑށn14@K%V(C\IqtWԶyӐL#Y_^.B!`+u|HrT~VJj>,Iɇ (2 /p-Qk)*SB>:w3$LU1rFKؘ36a nA=D:E|0CRfJkΒxAynGۆgml4"(_BR۩4LGEW.lE+PՒMb;} A8$FA^1Y-IHy;tg"s$:hFuǩDxhD `Ǒ߄Uvtt:CT1cm&<'veb[ω){Ā -+>W%dݑ.dv5n7 6?unXE76N~.!.o+%!jrap:}1)ul@!p>DcǏM.r~ Ij@ te;2;+?^IogIƠ$7ڶexk˷n݁.>f~`E+0C)yKRq0}cM]oG߸met~èܧPy\e-Y:%&0 @ %κvwɾQfs6{m+u*HeW͟r:@A[E+(7P8nMNP6vUaU‚13cNAVM;syئb:]1]d& lo41+%.1j}yc\ 0><_%D׊.M:6zvE7MzSVkT6ȣc:"W#Ǚk'9 ʘGm[@j8y<1_|͘Vd@Nfys0'Y#?Ը[kQjMZZ}eTPw?x~I?<`DcvuTz13(UŒ !V` 1/ֵ+vH;XKOd:Eu*ο40gз"Or &P ܊TX22lt6e`>rQy gf/p] ,zfB7!Zd-S#3 KdPU= I[-ʻxGt#4£?OfQXݸr|GaomD;W" #1>$ s-~Va<\E#yu1 `o }pgGJBp4\AnM 0ymH1Ѣ*;?n,[M,H$BVQi/\W"KDcS}镙!;LY&#-nh[q"ӺNtd~j/F hհٕ_DK?ȧW 8HĆ i^Yʑx@P( >ܡVV>]&шP){8[D4``&}e Ï\89[ƫ#^㶘wj"wb,Ӆb%%Cv FFnaGUē 溺|=x4 ':j$qcq/Wh46NJ^ZODH_P4|ϑ@ ;.\DNG˟1D?5kbSnL)Jr/]!^|>O5@-؉h ŕJO 4k"Wl!Ŋje1R}/J95Qe 󄑼Q>rI7$͢x ?*6YACyk)zvniiM!5Ok:˸3y^ O'=+f54?L!,„iuuDȩ9ٕMuElVIj@l!W!Ѱb:<a s܌+uIA| ݚȽNx9`%?\8bX ^WxU R:p-tRS{/H$@/9Fi=lGHQͳ$zXu` ^S(-XK193IĪz?&\8@6<`Z 9Ov,>軎$j#dDĸM \ ?2buUvMOۉ'Pז31z;lJpdTZX"[‚GL;[v2vK ytѿKUcR{#P:AKx+2Lsq-4^\mt&uLM窛~,'T,хZ vk=' d bi?zysQ$LY C4RVҷ6 ʿA! H"#yb&t3<e۳Zt`Ίq͟k"BNʣ^b **Z5\ZFQ؆3BM$a9&cPC2y>}!:*idFҨD˽aoQt[~y\<7^͡=K>I-;R/;z^-u y^ZG!QcvwVi=GsUyoiݥ/~pS9*;dd(O˥0V~q7=?ArX}Ft(+|ۍ>vQO&7c{:B t h\MfYi\>p~idP?s@4hPrދI!&ƬXӾ*t-9X3kz-T2>y;O$_Ꚗ\M \5M:}s.M^mY =a? l{nT~>Ѻ RCh{ b]K,۪s҄J}aı414DDg j1Feψhך ɝoʜN6W<^“4NmYCH\`5Pا=mg8vG[J)n5|9hڼ @},mAXuGATb][XH=*~BD>CUy}U,3˗w_؈d^^şłUXt:3y|v; !1ycɫJIF>?mݕ|x$*,R5[׊27. n?rv՜+_ JtdƤ9v5ۈ'\v++ԪߢWٸFS(HOso_hKvÈVjV1 >ϷO@jAQq .cs8xCak?t-u/ɰ ),> QZaܸl\٢e ŷC dzlrIPQ<:u?wOHCϻv0Idg̑A97uy9fQӊ*&/+80A ΰkɮO2|daaD"F~Ș&Ex<7ekRMT¡ukMFjY@0y!"'pQ`pYH^O|,h Gt5J-7ą:oYū=PAfE5s.,{85 8/Nar(mN%]Ni[VFCwa−D+ ?j\@`YuB3Lܥ4f$I׃rnCYK@n;¢T6x#b?):9pm --m*g}1W%mן41ׯPWrWS8?Iil?:g89`'"%f5=ǡAoWùnml*#-$I+J Ėctݖϒ" f[) :7oE|}Л 픁;SOJ47|4ȡu8 q Ps$pJ`̻ qoIB#O1]{u1)٪-q0G`C-Mf`ne1/2!2KqZ>9(bC+hpTxSpTqZ}yK=b@:5 )^&7 ܈A"l: PΗF:]\Wx!ĸT؉›m% \~ǕيoPc۶1j&ϸJeL܁U+5#_?>P]r,Ue J^WZtOYN!ݦV!V2|z ,/} f"JE7|''YrC2rU-@!fècggHy˄6- *[@ҳR,I>d=ml:ʤ%EQDed:Pv/z"~G}O 0l}sT(#iZ}W e8IWaDxr.cʴ6o'E5Ȓ#Q<N, [SLXZdv |EdgBAJAG"Q/T)"v<¯H)e.[θҐS1 Ø&2婞;vٰZǦʙr ը8>K<.yj; ;W r?LmڤW/E~Ye($r#w}+PWg/{t6<a`Zo1 (xS)8x5 Zm``G3Bƕ{bH=$GSнzmKO#-V{/?VF.!@]YT7=3Qk0馕RnNOr#a E#{x8$nvRRc6,V&`jV*L ]:DմBP YZ