iscsiuio-0.7.8.6-150400.39.8.1 >  A b(p9|zC<3r4Vh&t7Άh=@I`!JYmۍeisv>Ok˴- @8l?2; f~#"FzfѼj 7sxl7//1ep<,񓢔(ry|l Yr>9P CGRJ)[7nDUrJŒ\%h1HCi5zjk2Ybm鶝s-BJNid5fd029c940bd7fb1512461d8adf9c533ff8eadcddb56efaad4fc79e353b299c081f8fa109c04c790254988a4c5b361177bcd960b(p9|uZ]4.|i_눱f3W[ (+DBj"c==pF?d  ! K -Kflr       8Tw h(8a9Xa:a=>?@FGHIXY(\l]^b)cdWe\f_lautvwxy z$48>Ciscsiuio0.7.8.6150400.39.8.1Linux Broadcom NetXtremem II iscsi serverThis tool is to be used in conjunction with the Broadcom NetXtreme II Linux driver (Kernel module name: "bnx2" and "bnx2x"), Broadcom CNIC driver, and the Broadcom iSCSI driver (Kernel module name: "bnx2i"). This user-space tool is used in conjunction with the following Broadcom Network Controllers: * bnx2: BCM5706, BCM5708, BCM5709 devices * bnx2x: BCM57710, BCM57711, BCM57711E, BCM57712, BCM57712E, BCM57800, BCM57810, BCM57840 devices This utility will provide the ARP and DHCP functionality for the iSCSI offload. The communication to the driver is done via user-space I/O (Kernel module name "uio").bs390zp33SUSE Linux Enterprise 15SUSE LLC GPL-2.0-or-laterhttps://www.suse.com/Productivity/Networking/Otherhttps://www.open-iscsi.comlinuxs390x 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 iscsiuio.service iscsiuio.socket ; do sysv_service=${service%.*} if [ ! -e /usr/lib/systemd/system/$service ] && [ ! -e /etc/init.d/$sysv_service ]; then mkdir -p /run/systemd/rpm/needs-preset touch /run/systemd/rpm/needs-preset/$service elif [ -e /etc/init.d/$sysv_service ] && [ ! -e /var/lib/systemd/migrated/$sysv_service ]; then /usr/sbin/systemd-sysv-convert --save $sysv_service || : mkdir -p /run/systemd/rpm/needs-sysv-convert touch /run/systemd/rpm/needs-sysv-convert/$service fi done fi if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$YAST_IS_RUNNING" != "instsys" ]; then /usr/bin/systemctl daemon-reload || : fi for service in iscsiuio.service iscsiuio.socket ; 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 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 iscsiuio.service iscsiuio.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 iscsiuio.service iscsiuio.socket ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in iscsiuio.service iscsiuio.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 || : 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 iscsiuio.service iscsiuio.socket ) || : fi fibbbbbbb3a8ce9bc90493d44bc241bc1e3dc8b0a61ee63e4ece88cab5f70fba8c6a1a44e981a8d3075d23cda9469b81f85c5911d21f92580993baa03187c8c9d1e4f3ff6d9647e6d478940b8f31022318ae29f5e2323741dee14c6d14495ba2f99df2a4d3b2c2e17187e4c3b2ed7c7eb7bf23536b57dc00dbcf374566ad5a2443835a6316053db30fe155893d947959eb607531eff7fc9db819c65c989b256385077a246iscsiuioservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootopen-iscsi-2.1.7-150400.39.8.1.src.rpmconfig(iscsiuio)iscsiuioiscsiuio(s390-64) @@@@@@@@@@@@@    /bin/sh/bin/sh/bin/sh/bin/shconfig(iscsiuio)libc.so.6()(64bit)libc.so.6(GLIBC_2.15)(64bit)libc.so.6(GLIBC_2.2)(64bit)libc.so.6(GLIBC_2.22)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.7)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2)(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)logrotaterpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)0.7.8.6-150400.39.8.13.0.4-14.6.0-14.0-15.2-14.14.3by@blb~H@by@bu bMb#Pb D@aav@a\>@aUa8a@` @`@`N@`N@`J@`@_@___F@_^(@^`^k@^@^|@^^F^4]҇]ƪ@]@]@]{]QT]B@]/ ]$]@\]@\@\HW@\)- Set initiatorname in %post (at end of install), for cases where root is read-only at startup time (bsc#1198457)- Update to latest upstream, including: * Added 'distclean' to Makefile targets * Ensure Makefile '.PHONY' targets set up correctly * fix an iscsid logout bug generating a false error and cleanup logout error messages- Updated to latest upstream version, tagged 2.1.7. Changes included: * updated/fixed test script * updated build system * several bug fixes, including one for bsc#1199264- Updated to latest upstream, including bug fixes and cleanups. Changes included: * add handling name/value pairs for firmware login (bsc#1196113), including man page update for same * Fix bug where some package parts were installed using DESTDIR twice * general build cleanup (in prep for removing DB files from /etc/iscsi some day soon) Also, now delivering a "package config" file for libopeniscsiusr.- Update to latest upstream, including test cleanup, minor bug fixes (cosmetic), and fixing iscsi-init (bsc#1195656).- Updated to latest upstream 2.1.6 as 2.1.6-suse, which contains bug fixes and cleanups. See the Changelog for more details.- Merged latest upstream. Mostly cleanup, but includes a fix for iscsi-init.service when trying to write to the root volume too early (bsc#1192568), as well as an upstream fix for possible deadlock when dealing with sysfs.- Fix the usr-merge changes (bsc#1192013). This includes catching all the places that /sbin was still used directly, as well as making the SPEC file build using /usr/sbin for openSUSE but still use /sbin for SLE, for now.- Fix possible systemd cycle by adding an "obsoletes" for the old libopeniscsiusr for older versions.- Update to latest from upstream, fixing: * Moving the executables from /sbin to /usr/sbin (bsc#1191054) * Remove default dependencies from iscsi-init.service (bsc#1187190)- Updated to latest upstream 2.1.5 as 2.1.5-suse, which contains these changes not already present: * Handle IPv6 interfaces correctly. (bsc#1187958) * Handle qedi correctly in NPAR mode (bsc#1187958) * Update iscsiadm man page (bsc#1187958) * Update iface.example for ipv6 * Change iscsi IP type from defines to enum. * Handle recv() returning 0 in iscsid_response()- Merged latest upstream, which includes: * iscsid: set PR_SET_IO_FLUSHER (bsc#1188869)- Merge latest upstream, which includeds: * Support the "qede" CMA-card driver. (bsc#1188579) * iscsistart: fix null pointer deref before exit- Merge latest upstream, which added fix (bsc#1185930): * Set default 'startup' to 'onboot' for FW nodes- Local (SUSE) change: update iscsi.service so that it tries to logon to any "onboot" and firmware targets, in case a target was offline when booted but back up when the service is started. (bsc#1153806)- Merged with latest from upstream, which contains these fixes: * Add "no wait" option to iscsiadm firmware login * Check for ISCSI_ERR_ISCSID_NOTCONN in iscsistart * Log proper error message when AUTH failure occurs- Updated to latest upstream 2.1.4 as 2.1.4-suse, which contains these changes not already present: * Enable iscsi.service asynchronous logins, cleanup services (bsc#1183421) * libopeniscsiusr: dont error loudly if a session isn't found when working through iscsi_sessions_get() * libopeniscsiusr: skip over removed sessions * libopeniscsiusr: fix error messages * Avoid hardcoding pkg-config to fix cross build * Fix iscsistart login issue when target is delayed.- Update to latest upstream (no new tag yet). To fix bsc#1181313. Changes since last update added to open-iscsi-SUSE-latest.diff.bz2: * Fix iscsiadm segfault when exiting * iscsid: Add NO_SYSTEMD to CFLAGS * Change mkdir permissions to 0770, adjust usmask * Fix typo in util.py * iscsid: Do not allow conflicting pid-file options * iscsiadm: Fix memory leak in iscsiadm * libopeniscsiusr: Fix memory leak in iscsi_sessions_get() * libopeniscsiusr: Fix memory leak in iscsi_nodes_get() * idbm: Fix memory leak and NULL pointer dereference in idbm_rec_update_param() * Add etc/systemd/iscsi-init.service to SYSTEMDFILES Makefile variable- Updated to upstream version 2.1.3 as 2.1.3-suse, for bsc#1179908 (which addresses CVE-2020-17437, CVE-2020-17438, CVE-2020-13987, and CVE-2020-13988), changes include: * uip: check for TCP urgent pointer past end of frame * uip: check for u8 overflow when processing TCP options * uip: check for header length underflow during checksum calculation * fwparam_ppc: Fix memory leak in fwparam_ppc.c * iscsiuio: Remove unused macro IFNAMSIZ defined in iscsid_ipc.c * fwparam_ppc: Fix illegal memory access in fwparam_ppc.c * sysfs: Verify parameter of sysfs_device_get() * fwparam_ppc: Fix NULL pointer dereference in find_devtree() * open-iscsi: Clean user_param list when process exit * iscsi_net_util: Fix NULL pointer dereference in find_vlan_dev() * open-iscsi: Fix NULL pointer dereference in mgmt_ipc_read_req() * open-iscsi: Fix invalid pointer deference in find_initiator() * iscsiuio: Fix invalid parameter when call fstat() * iscsi-iname: Verify open() return value before calling read() * iscsi_sysfs: Fix NULL pointer deference in iscsi_sysfs_read_iface- Updatged to latest upstream, including: * iscsiadm: Optimize the the verification of mode paramters * iscsid: Poll timeout value to 1 minute for iscsid * iscsiadm: fix host stats mode coredump * iscsid: fix logging level when starting and shutting down daemon * Updated iscsiadm man page. * Fix memory leak in sysfs_get_str * libopeniscsiusr: Compare with max int instead of max long - Systemd unit files should not depend on network.target (bsc#1179440), updating: * open-iscsi-SUSE-latest.diff.bz2- Updated to latest upstream, including async login ability: * TODO: Update to todo list. * Implement login "no_wait" for iscsiadm NODE mode * iscsiadm buffer overflow regression when discovering many targets at once * iscsid: Check Invalid Session id for stop connection * Add ability to attempt target logins asynchronously- %service_del_postun_without_restart is now available on SLE More accurately it's been introduced in SLE12-SP2+ and SLE15+ +-------------------------------------------------------------------- Upgrade to upstream vresion 2.1.2 as 2.1.2-suse (for jre#SES-1081), including: * use openssl for random data generation * Misspelled socket name might cause confusion to inexperienced user. * iscsi/libopeniscsiusr:add libopeniscsiuser_node.h to HEADERS * Let initiator name be created by iscsi-init.service. * iscsi: fix fd leak * iscsi: Add break to while loop * Fix compiler complaint about string copy in iscsiuio * Fix a compiler complaint about writing one byte * Fix issue with zero-length arrays at end of struct * Add iscsi-init.service * Proper disconnect of TCP connection * Fix dependency on new systemd RPM macro * Fix SIGPIPE loop in signal handler * Update iscsi-iname.c * log:modify iSCSI shared memory permissions for logs * Sequence systemd services correctly when upgrading * Ignore iface.example in iface match checks * More changes for musl. * Fix type mismatch under musl. * Change include of to * Add Wants=remote-fs-pre.target for sequencing. * Add workaround in SPEC file for installcheck. * Fix issue where "iscsi-iname -p" core dumps. * iscsi-iname: fix iscsi-iname -p access NULL pointer without given IQN prefix * Fix iscsi.service so it handles restarts better Replacing open-iscsi-2.1.1-suse.tar.bz2 with open-iscsi-2.1.2-suse.tar.bz2, and updating open-iscsi-SUSE-latest.diff.bz2 to empty, since initially there are no differences.- Merged in latest upstream. Summary: * Let initiator name be created by iscsi-init.service. * iscsi: fix fd leak * iscsi: Add break to while loop * Fix compiler complaint about string copy in iscsiuio * Fix a compiler complaint about writing one byte * Fix issue with zero-length arrays at end of struct * Add iscsi-init.service * Proper disconnect of TCP connection * Fix SIGPIPE loop in signal handler * Update iscsi-iname.c * log:modify iSCSI shared memory permissions for logs * Ignore iface.example in iface match checks * More changes for musl. * Fix type mismatch under musl. * Change include of to * iscsi-iname: fix iscsi-iname -p access NULL pointer without given IQN prefix Note that the "Add iscsi-init.service" change adds a new systemd service called "iscsi-init", that creates the iSCSI initiator name file /etc/iscsi/initiatorname.iscsi, if and only if it does not exist. This obviates the need to do this from the SPEC file, now updated. Since this was not a version-number update, in addition to modifying the SPEC file, also updates: * open-iscsi-SUSE-latest.diff.bz2- Update SPEC file to handle the fact that the service_del_postun_without_restart RPM macro exists in factory but not in SLE. No functional change for factory.- Updated service_del_preun and service_del_postun for iscsi and iscsiuio packges in SPEC file, so that services get started/ stopped in the correct order, and changed systemd macros so that iscsi login service iscsi.service is not restarted during package upgrade (bsc#1166650)- Update with two upstream commits: * Fix issue where "iscsi-iname -p" core dumps. (found upstream) * Fix iscsi.service so it handles restarts better (bsc#1163499) * Add Wants=remote-fs-pre.target for sequencing. (bsc#1158536) updating: * open-iscsi-SUSE-latest.diff.bz2- Update SPEC file to work around issue with installcheck SUSE script. Update the SPEC file while there.- Merged in latest upstream (2.1.1), which is mainly a bug-fix release over 2.1.0, including changing the test suite from shell-based to python3-based, replacing open-iscsi.2.1.0-suse.tar.bz2 with open-iscsi-2.1.1-suse.tar.bz2 and resetting open-iscsi-SUSE-latest-diff.bz2- Bug fixes, including addig support for "-fno-common" compiler option, 586 bug fixes, a bug fix for SHA1 handling, and other needed but small fixes (bsc#1160287), updating: * open-iscsi-SUSE-latest.diff.bz2- Merged in latest upstream (2.1.0), including more fixes for iscsiuio, and cleanup/bug-fixes of new CHAP code. This replaces open-iscsi-2.0.878-suse.tar.bz2 with open-iscsi-2.1.0-suse.tar.bz2, and it resets open-iscsi-SUSE-latest.diff.bz2 with fixes after 2.1.0-suse. Also, updated the Summary lines in the spec file that started with "iSCSI ...", since rpmlint didn't like them starting with a non-capital letter, and updated the version number for iscsiuio to match the code.- Use SPEC-file macro for systemd generator directory, since the libexec macro is changing from /usr/lib to /usr/libexec.- Fix issue where CHAP was not working after latest update (bsc#1155510), updating: * open-iscsi-SUSE-latest.diff.bz2- Merge in latest upstream, with fixes for: * Support CHAP SHA-1, SHA-256, SHA3-256 vis openssl libcrypto - this requires an update of the SPEC file, as well * Initialize timeout for printing specific session info Updating (in addition to the SPEC file): * open-iscsi-SUSE-latest.diff.bz2- Upgraded to upstream version 2.0.878, which becomes 2.0.878-suse with our (few) SUSE-specific changes needed for our build system. Changes include: * general bug fixes in iscsid, iscsiadm, and libopeniscsiusr, including better lock handling for multiple instances of iscsiadm * iscsiuio/qedi updates * systemd service-file updates/cleanups This replaces open-iscsi-2.0.877-suse.tar.bz2 with open-iscsi-2.0.878-suse.tar.bz2, and it resets open-iscsi-SUSE-latest.diff.bz2 with fixes after 2.0.878.- Enable LTO on aarch64 as the gcc9 package issue is fixed: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91386- Disable LTO (Link Time Optimization) on aarch64 since it seems to fail -- iscsiadm core dumps almost immediately (bsc#1143192), updating the SPEC file.- Ensure /etc/iscsi/initiatorname.iscsi has reproducible size works around https://github.com/rpm-software-management/rpm/pull/229, updating the SPEC file- Added latest upstream changes, including: * iscsiuio: update version to 0.7.8.6 * iscsiuio: allow processing of iscsid requests in DHCP failure condition * rec update: disable the idbm_lock in read/write when updating the rec Updating: * open-iscsi-SUSE-latest.diff.bz2- BuildRequire pkgconfig(systemd) instead of systemd: allow OBS to shortcut the build queues by allowing usage of systemd-mini- Added latest upstream changes, including: - iscsiuio: Stop using /var directory for PIDfile and locks - iscsiuio: improve daemon synchronization (bsc#1135070) - fix pipe notification code - add systemd support for iscsiuio - make iscsid systemd usage optional - fix possible discovery hang timeout - fix iscsiuio systemd disablement Updating: * open-iscsi-SUSE-latest.diff.bz2- Added latest upstream changes, including: * Fix output of node printing for multiple paths. * Fix printing of node database again. * Add Restart=on-failure option to iscsid.service * Fix node print return value when no nodes. Updating: * open-iscsi-SUSE-latest.diff.bz2- Merged latest upstream commits to get needed fix: * Fix output for iscsiadm node/iface print level P1 (needed for bsc#1122938) * Updated iscsiadm man page: add "onboot" handling. Updating: * open-iscsi-SUSE-latest.diff.bz2- Update SPEC file to allow %_libdir macro to override LIB_DIR when building or installing- Update SPEC file to use %license macro for COPYING file so that it gets delivered when when other docs are excluded (bsc#1121877)- Fixed iscsiuio issues (bsc#1116712) by merging the latest from upstream, bringing the iscsiuio version to v0.7.8.5, updating: * open-iscsi-SUSE-latest.diff.bz2- Updated to latest upstream, with fixes: * Use pkg-config in Makefiles for newer libraries. * Merge pull request #145 from gonzoleeman/fix-i586-build-warnings * Fix i586 build issues with string length overflow. * iscsistart is not installed * iscsiuio: Do not flush tx queue on each uio interrupt. updating: * open-iscsi-SUSE-latest.diff.bz2 Also, update the SPEC file: no more need to specify libkmod or libsystemd, since upstream handles that now.- Updated SPEC file with Obsoletes for library, and disclaimer abot updating SPEC file directly. Also, added using KBUILD_BUILD_TIMESTAMP to create reproducable man pages (bsc#1047218)- Upgraded to upstream open-iscsi version 2.0.877, which will be merged with our (few) changes and tagged 2.0.877-suse. See the Changelog file for a details list of changes in this upstream update. This update replaces: * open-iscsi-2.0.876-suse.tar.bz2 (old) with * open-iscsi-2.0.877-suse.tar.bz2 (new) and resets the file: * open-iscsi-SUSE-latest.diff.bz2 to be our local changes since version 2.0.877-suse. The spec file is updated as well.- Merge the latest upstream code, updating the libopeniscsiusr version from 0_1_0 to 0_2_0, which updates the SPEC file. Also updated with new code: * open-iscsi-SUSE-latest.diff.bz2- Use libkmod instead of running modprobe (bsc#1106685), updating the spec file, and: * open-iscsi-SUSE-latest.diff.bz2- iscsiuio: limit retries on dhcpv6 (bsc#1106694 and bsc#1105916), updating: * open-iscsi-SUSE-latest.diff.bz2- Fix a core dump which can occur if iscsiuio is started then immediately stopped (bsc#1094797), updating: * open-iscsi-SUSE-latest.diff.bz2- Ensure we can get qedi transport name (bsc#1090275), updating: * open-iscsi-SUSE-latest.diff.bz2- Added upstream patch to allow host_id of 0 (bsc#1089687), updating: * open-iscsi-SUSE-latest.diff.bz2- Added 2 upstream commits to address issue of iscsi_if.h stayig in sync with kernel vesion (bsc#1086344), updating: * open-iscsi-SUSE-latest.diff.bz2- Cleaned up complaints by gcc-8 about strings (bsc#1084640) - Fixed rpmlint complaint about libopeniscsiusr summary not starting with a capital letter - Fixed libopeniscsiusr global variable overload - No functional changes. This updates: * open-iscsi-SUSE-latest.diff.bz2, and * open-iscsi.spec- Ensure correct dependencies: main package must depend on (new) libopeniscsiusr package, and devel package must depend on main package (updating spec file)- Fix ARP booting issue with different subnets (bsc#1058463), updating: * open-iscsi-SUSE-latest.diff.bz2- Trim filler wording from description. Update old commands/RPM variables to macros. - Implement shared library packaging guideline. - Do not let fdupes run across partitions.- Removed the "rpm/" source directory from both the open-iscsi-2.0.876-suse.tar.bz2 and open-iscsi-SUSE-latest.diff.bz2 files, since they are not needed for building and are not part of the upstream sources. They are still available under the git repository at github.com/hreinecke/open-iscsi.git. This means that changes to the spec file or the changes file will no longer require a change to the "*SUSE-latest*" file.- Update to latest upstream vesion 2.0.876, with very few SUSE-specific modifications, namely around things upstream does not care about, like SUSE-specific systemd files. Also, version number modified to add "-suse", as usual. See the Changelog file for more details on changes in this upstream version. This replaces open-iscsi-2.0.875-suse.tar.bz2 with open-iscsi-2.0.876-suse.tar.bz2, and resets open-iscsi-SUSE-latest.diff.bz2 to contain only changes since the 2.0.876-suse tag. These changes added a new libopeniscsiusr.so library, as well as include files under a new open-iscsi-dev package, if you want to link against this library. The SPEC file was also cleaned up using spec-cleaner.- Fix vulnerabilities found in iscsiuio by qualsys (bsc#1072312), updating: open-iscsi-SUSE-latest.diff.bz2- Added fixes for working with latest gcc (7.2.1), updating: open-iscsi-SUSE-latest.diff.bz2- Start iscsi logins before remote filesystems (bsc#1028323), updating: * open-iscsi-SUSE-latest.diff.bz2- Update to latest upstream 2.0.875, with a few SUSE-only modifications, replacing the 2.0.874-suse tarball with a 2.0.875-suse version, and resetting the SUSE-latest-diff file to contain changes from 2.0.875-suse forward (bsc#1056689)- Add missing coreutils dependency for initrd macros (bsc#1055492) in SPEC file, which (as always) changes: * open-iscsi-SUSE-latest.diff.bz2 +-------------------------------------------------------------------- Clear errno before calling strotull in iscsiadm (bsc#1029364). Note that this changes the file: * open-iscsi-SUSE-latest.diff.bz2 which is changed each and every time this package is updated.- Added two iscsiuio upstream commits, for ipv6 support, and general bug fixes (bsc#1040559)- Added support for qedi ping (bsc#1036238)- Fixed coredump when printing session information (bsc#1035236), backporting commit c8e6198dca71 from upstream open-iscsi- This is now the latest upstream open-iscsi, i.e. 2.0.874 plus latest as of this date, together with SUSE-specific changes that are not yet upstream or not appropriate for upstream. (bsc#1032402/FATE#321911) Important changes in this update include: * qedi transport support * README cleanup * iscsiuio update * shutdown cleanup Also, the base tar file has been refactored to pre 2.0.874-suse as well as patches file for everything after that tag. Lastly, this update syncs this "Changes" file in Factory to and SLE, including SLE bug and FATE numbers, for reference.- Added two patches submitted upstream that make iscsi service shutdown cleaner (bsc#952437)- Added open-isns patch to remove Discovery Domain doubling when loading from file (bsc#897297), adding patch: * open-isns-Fix-DD-member-doubling-when-restoring-from-DB.patch- Stop manual sessions for iscsi service (bsc#989548)- Added patch submitted upstream that sets socket option to SO_LINGER (bsc#974102)- Update user-space open-iscsi tools (bsc#975217, FATE#320753), which included: + Backported changes from openSUSE:Factory branch: * Removing creation of open-isns RPM. * Allow setting host params to return EAGAIN errors. * Kernel include path * Fix iBFT target flags check. * fix typo * Fix typo in man page. * Use system-wide open-isns, not internal version. * iscsi: remove local copy of open-isns * iscsid: make sure actor is delated before rescheduling * iscsid/iscsiuio: remove uio poll * iscsid: fix iscsi_host_set_net_params return code * Syncing up utils/fwparam_ibft with upstream. * Syncing top-level files with upstream. * Fixed duplicate lines for subnet_mask and gateway + Update SPEC file for spliced open-isns by copying open-isns upstream tarball and patches from factory, since open-isns is no longer part of open-iscsi- Added 5 upstream patches for iscsiuio (bsc#960438): iscsiuio: Get the library to use based on uio sysfs name iscsiuio: Wait for iface to be ready before issuing the ping iscsiadm: let ping be tried after iface config is initialized iscsiuio: Add ping support through iscsiuio iscsid: Changes to support ping through iscsiuio - Updated spec file copyright - Build service git diffs now using 12-digit commit IDs- isns: exit with success when terminated with SIGTERM (bsc#948561)- isns: Adding signal managment around DB update, and ignore empty DB file (bsc#941791)- isns: Remove the debugging output from isnsd (bsc#949443)- added patch submitted upstream by QLogic: iscsiuio: Add QLogic Vendor ID to support newer NX2 HBAs- open-isns: For bsc#941944: - Allow setting server name with "--server" - Ensure we can reliably get our IP address- open-isns: For bsc#941791: - Set up /etc/isns/*.conf files when installing - Install /etc/isns/isnsadm.conf- Allow non-tcp transport for discovery daemon (bsc#939923)- Added iscsi_fw_login helper script, and new udev rule to call script when iBFT/iscsi boot targets added (bsc#869278)- Added rcsymlinks (bsc#932814) - Cleaned up spec file for rpmlint- Updated open-iscsi to match upstream, as per bsc#936114, FATE#318770 The following is a summary of changes. See git@github.com:hreinecke/open-iscsi.git for details of commits: a068906448ef Removing duplicate LDFLAGS from incorrect patch 85ed2b4a1cb5 Prevent spinning over poll() when reconnecting to an inaccessible target bbffa1dd332d Fix incorrect list operation leading to out-of-order items on pend_list ce449cc8407f iscsiuio: Correct the handling of Multi Function mode e7f84d774c22 Reformat man page synopsis sections 271b77dece32 Spelling and escaping error fixes. 2022944815b2 Remove outdated Debian packaging code. d650915062d6 buildsys: respect CFLAGS and LDFLAGS from the outside 97ae5d74d6bf buildsys: make 'make clean' idempotent 770993b1e422 Fix small typo in iscsid.conf c9dcedb7b6a9 Remove duplicate newlines in log messages. 2986f9c95f6f iscsid: don't re-read config file for every session logout d56f49d3f947 iscsid safe session logout 3f59db921549 Add some more debug logging to actor.c 75552f5519a8 iscsiuio CFLAGS fixes 73e3e00c0e5e iscsid: fix order of setting uid/gid and drop supplementary groups 99dfbeff1676 add discovery as a valid mode in iscsiadm.8 688c2e9185f1 guard against NULL ptr during discovery from unexpected event c31ec6483815 Allow setting host params to return EAGAIN errors. 973508df1daf fix regression in iscsi_tcp iface binding 93c9d5ae1c86 Wake up to reap children 24409900d9df Make running actors event-driven bc491ac31487 Remove actor_init and rename actor_new to actor_init cbcd086a2cf9 actor: Simplify actor_poll a little 71ec348a2dfd actor: Unobfuscate ACTOR_MAX_LOOPS 61d58fbf6de8 actor: Remove ACTOR_TICKS_10MS() f53eb0034618 actor: s/ACTOR_TICKS/actor_jiffies/ dfe52b2423ff actor: simplify actor_check 8667dcd5d628 actor: Mark actor_check static 8037a0a30b8f Represent DHCP "origin" as an enum, not a string. da567155cfe9 Code cleanup: no functional changes 6478eaac7b53 iscsiuio: Check return value from nic_queue_tx_packet 1d07286fda46 iscsiuio: Remove set but unused variables 382655137020 iscsiuio: Change nic_disable to return void 7c233130687a iscsiuio: Use attribute(unused) for *icmpv6_hdr 8e1d38215344 iscsiuio: Use attribute(unused) for variables that are unused but needed 6ae604304b10 iscsiuio: Fix aliasing issue with IPV6_IS_ADDR_UNSPECIFIED 63b450de0c29 iscsiuio: Resolve strict aliasing issue in iscsiuio/src/unix/nic.c c1e83d439f90 iscsiuio: Fix strict-aliasing warning with struct mac_address 980c471e9f4e iscsiuio: Fix warning about non-matching types cb84219a4992 Fix missing header 9d744ac8c039 Fix bad sizeof in memset 67ff3a01e3ed Fix warning about possibly-uninitialized variable e5518c7a8f43 Fix build warnings for unused variables 5d68768908e0 iscsid: don't round up when modifying padding len d21766d95e10 isns: Add docs for deregistering discovery domains. ed04ac2f9f32 iscsiadm : make iface.ipaddress optional in iface configs for transports that don't have a hard requirement on it. 148854ae2d6e iscsiuio: Rebranding iscsiuio a3c40ba2ba4f iscsiadm: Initialize param_count in set_host_chap_info bfa2f55b0928 iscsid: Fix double close of mgmt ipc fd a037f5eaa9e0 iscsid: retry login for ISCSI_ERR_HOST_NOT_FOUND f0f3bbd25762 Fix StatSN in Open-iSCSI Stack. a9f4d169a95a be2iscsi: Fix MaxXmitDataLenght of the driver. cf1346a86489 iscsiuio: fix compilation- Double the size of the iscsiuio ARP tables, making it faster when switches present (bsc#922311)- Fixing ibft boot, completing commit 26020764daf70, which only fixed NIC context. Now boot context also fixed (bsc#902183)- Ported upstream commit 51c0b6ef8bc90: Supply strings for newly-added error numbers- Do not convert all "again" errors from transport to internal errors (bsc#903729) - Update spec-file copyright date- Fixed iscsi.service start to ignore iscsiadm return value so that systemd knows service is running and can still shut it down (bsc#897565)- Fix isns server to allow legal registration sequence, including portal group (bsc#905670)- Added fix from Hannes to properly boot all iSCSI CNAs, fixing previous change (bnc#902183)/bin/sh/bin/sh/bin/sh/bin/shs390zp33 16602075690.7.8.6-150400.39.8.10.7.8.6-150400.39.8.10.7.8.6-150400.39.8.1iscsiuiobrcm_iscsiuioiscsiuiorciscsiuioiscsiuio.serviceiscsiuio.socketiscsiuio.8.gz/etc/logrotate.d//sbin//usr/lib/systemd/system//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:25309/SUSE_SLE-15-SP4_Update/2e4a2b3740d89d41ef5ba0b0ac9aca1d-open-iscsi.SUSE_SLE-15-SP4_Updatecpioxz5s390x-suse-linuxASCII textELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=1d4bb06ff5dce3d8ae140ffc3ff1ec727a6c36ca, for GNU/Linux 3.2.0, strippedtroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix) RR RR R RRRRR R RRć m%m}utf-8054ecedca558d97dae0ef6a73f1a059ef386fb34bc1e8975ee9cc44464a93e5e?7zXZ !t/#] crv(vX0{"Ȫ5N9N5 dC,bZD*3FsNR+@ ;rqBgיo-zutB~I}N4"wrpzZ@-N$Ŭ`mWhTׇY#/myqP"!U q粣QPQ!զ9'LtH8 Dx{>E3V  }}H Mf]a’gIsdC&#T*@ɀ T.Y&q "S{ؒ.Ivlρg c7z~ v1韝S»xSںU "CevCARPJvpaO4 rpZӨIds|RX7D_7.GHxWׂr,M I,{p){Py~r54O+ָY}z;6⌞c _=d^&1/Y؝8҉c'^>l舝7"sZPR'tնb0dXhIU3b՛ =_lux4o%PE62azzz*Bnf5Vﯢ3u !ɾpWٵjPG_]'VL99. ۜпo`KNbpŹ4qsqLFTuG@f; N\t̬"ͩY qpsN,u1Z\ 4Eft+AzM$MUw2kI$ݟ %Fȇӫ !XrfX\+V]1"(GS|cɰj(w)P@U{NStII{M84eu Gb+V5r'7ӏ:4`+WSGnCjS~F\&} K RJ=F/FI QfX8"ʁ,EJ[)W:qA͋TFTLOF ڄAYA |UUzcJ2F-,@VwEC@DedZ <.b$9p5 zr`{nM<\P1qq7 e`wg aDn`-Pn lh!_~sf]j";?y*ݩ)`,\'Fijb)>V$i,,&'O0hLU-=MSvSfl}{mA#Ey0ׁYsjƖjQ>|QyzG=Z*$/0bMChzdoSW tV03o?!W(O(-@fnVSC→f0ѫGI^&zȞRA) }xXMHr]*r+E<e%5,1xm`v։$9B&NoRv>[B ڪ.LW6~SbQ4LiY&_؃Ң_۩n-\ 95;%:}o1Ed0ik|c3;|ZD-D*)e<ӘGd 9F2%҇X?c *:2TCa%Őֿ)BMo:O^MazUtp?ݽ ^}Ry+Qa,f(Bl8S1\faiρÞ̜nmc^=_s] PڬzoݫYg"+Ts܍䢈1e4oQ,h8[\Fwd6r3޻٥y^=&`"&YxW RE /]@NR$$s4{Y%dV$8òϜl*&`,1W4rr*!O,~KX}^(>glll;u~U޹NΫw A5\DG&O8ycu(O!Cĕc)P#-[?{3iAgA_@Q=0QlK$ L0==A*Ig荏e.~RצV{'Kq_( dϥ 8ܺsꪧ=8<ؕ3;a(d3T/1 .QPdub vS1 %tn6QD߇p=H<5iڀٜboaCT  w*SI9%o9 lxMFE |ZnsnR0kMe)IL#R$SQ_="I6*ϖ*k+YOp52?ndPۅ^Dclׯ!xj)NZBzm[L^g}Sgu@") m귖jA;f?WJي ^=JюmZT˂](?C˻wʙ6ǹ T#G沒DVs#Ǟ~Ql __VlH`saP׋BwX}sA?y4ܱ5Btx\1UD9rD3B8 &pW_X%eho!ʠ3eGjSfer-eɌY0sSk" frw0Oሧ[=8!lh%|k=8bTܗ+:14x[La`ԞS_@/{ehDs"ZCO@3%lo#h,RЈiRx!b2nY\I1UQ9_mX;k(5˻BƣD4ʾ4&Y K'7N pms&K)ؼ/a]9IOg 7:5I7YxbKyUuN [ gP/CS,'A%DW8~`r)  Rpdޝ7dJ:$C4#1"75k~sT8 ad*ֵ<,efZV4uRٽ;dQ @X%{D9 >V sB~MnCJ}4IylaoEq^LH; -X|4z?Z'K d2?tIK Qw4&ɟHQ4yhL8Bm)9Kݸ-z|ۡ5$|Dye. 0W"C%cvOgҒؼnREdG:.tvU3p(r:jhwaL )bGdb:2b&sV% y A"_#7ѨeF͈!-HE~tpWA`{lv)KZq`lT_ v7- 5`zš/ wVf/% bUJCU$AI9qL_#Z A[+Au"s,D{3ė o QBx $|~=)/u]ojD2nM: ط7Vjz FQXDŽ~QJc,hS8ZN3[3Hs&xf6x:u@`FN+f՟ޭo5 hIYIRi^lYTRbu0&=V<)S؂_gV{Z%$Ve/!(f0s^zg}cAV^圪[.)eӓ 4E}/ȶBY|vpeىQ=Ғ!"B7gUuvv@A E3yo{5ݑk*`3t}1Gԁ5B09*+fYW<+[~4W} nN48%o̖Sb4~1>C 4CH4 K{IPk_15"O]=%rӤLTblzN6h_~!k Q}/YjwW^@4?M9" iF侐|j걑#YM-W WG”?\|WAQECh(#ƻ2QN_œuK͖/ҏiȴ LWέ ,`f1.c}C yYKܬxsA$yfk;zP6d9ƅԖF.ט# ZZq)PAWc'z1M1;ջ0: 7) aF}Dd"9`ĖQ*0\p.DPC(Y FaQh d:6<_suȌ5E/^! $qg_˚oo­c@ }R'ȎJu.pJ Fk@4-M2E1L}٫v.Nw{Tֆ+7 w&J&q87^GW)C35H[6w>% sܪ?vAhT:"F_իݢФ[ªIQD1^L8Ɨic`ىo1ku,@" BoD>X~tGEo2*|bs;~j>܋Ph7CjKw1NAo?^Bӗv-@@|d{CvC{9vLY.Jl^d)cSF%3GFwiu-~PV1 Hg(j|ɉ-UP gK 4S5"I6PZ`>ۇ+Rtǻӳ>=,P~ `ِW؀薜]ltq+(!(gP޲LUeF,Ak\i9V#?Mk(H" sFX7ćp5LsQX@̑.![֙UdMPe5]VzT xtD8ټy[_M.j̤~ 侂 +^/}bItmp:$6(:V%[mzD?Vi$$9IG"`"a17'# /g(UktF@)sTGvwa17je5^&Ǥ%V"C ;#@~ZFR$:<*to&B?&W$ pjyJ#j)NhGaXٚz+80mP no}.$0;fA1!''BpCk6DȻkd_PfNCkˑPº^/;>BwZ&GYqܸ'%̨j ˙XӔdٝ (%ոN -zuÏrx۸i|]49͐/UB5-g5՗8HYE{)W}[x"EUr5!ض3 Gv^)\6Z)QR`ղNNUT1Q95xedX2WՄiɋ GxQ H^ue=eJ#,$ΜyI86t;X8WF0IA*u7v$7PNީb/k\ .__Y hzq0"a>Vf)\T*1ٗCwPۢDM{&0򽓨TS)[~LDX=Ĩö%pl'љ AR]p6GZ5VT d#E^o#g S ӑ,z0] "3qBkۊIiM) [9;$_w +a)7%r 2f&ԣ98A#/D)ޯW1Gu*v1^lqt|_j\EzB| MEW+xmJE겂f(6@pcN莊 w qѱڟWSc)bUvre&"fW؋bn-)ٵ/J0% n z*UkEVr@X ~edP|-~p0ynӕ23X5jxPb\WL;*$b? d?ddc2{5hf+Ùb؆$ QB &ꘑ.ǀBy,-"/bgP~ȧ{dͰ}IWɻ2 Pb>vr="%rJr#U;kz"3G[#/~>JAL5< zԺ]NhTh N\i]khZYL0/*+CяDu'%e.KnJK9"nA&pu}ӽǜ)"]pTx{`#T~mAU#c$d9%̇ Tj/ u" x EOznlQVœ:uW˾Ař |t2Ca aoǔR{xBhg;X`D=ǿ&o ŝky<ʍ]4%)P^R_O,|i5Hbi<gw5!ӞNIT Ci?S'gce3fY:~Fh\yЦ#BVΎ^8Z & Lx)1p2W _?OZ;*\qR~hG?xѡSE*ؑ$;0刎L`3i>Ef GFDXsI$D4([|ʽ qQ-Kz{yδscw~[ mꌘ̓⇹HVII#:V@͍\2n{% eṯ.Ӥ$QfYnvrCǣ{&_֗H=[#yN*5Z0BUz p) ޸v: $A\"J؉n +6yI;/ȴ3eVsڛmx3738ÓИp?yh 4^byLyĹ/6=!#yPt՛̇/h֌t݋P:'CiS9fªnYU_'n~oU.\2FkDo,ܺ$2JSGF $vǘt)eYiT%\9$,ScX$ w`)` mYS=E\+c//Z|$QHڕ>(1T>#n~Qӹh}6G$*W5o)\!L?QUʫ~l0cIM2g>eɷ)ooSTĻ1HƎkDnjx䁺BKHLIKGN6ԍ'/-5p>-1{4r)(K o2E0D]_=O,aQ?\+gj`&' IAɢj !z9/UJP]j@hHnJašt߱lF}H(>}NeZ:vt-m}oV$ca+TP"WDtR/Tw&(yVq&.7U܊}Ƭp/fmPmU7" &`d-ҧan)zN+ѭC[L9{9e!::$v9s-ݸ! =*1M al^re{HѳtDЃf1495%f-El$*tZ# LɥѼ T/27I]3XK6ܳ$"Tv8c;).ZP: oʁh2P #;)߳I&qʁxB YaΚ.NߪI\UAWGPCSq_֧+7W[^-# WrO%5;]h6{+CŅx OL"ԅBy$/3Fxձ{ ee9^M1\hܐ:OP2y`<%#*cp⹑CO4 #mFs'R6H{%W+mfM_>یBh,q2>Dž}b~! L1s(fX̼"ic |'4o[}锢d~Fr*Ϟ+&7AÐ@SH>Rn]92` y"Êp_*EoU,*\웦F|+h2'}^4g/ިgC=ҭNx!g6vfk23>ޕ ~]v*T MT .54Hz^93lF/W^.?:\ꚛNFp +N\N-}p7D/H)./)ATRRʭnuٽLbw>s3l8RXh{O .ˌZQPlڭzNy1^%Y.9mz6\P"q1U@rS$J*m(XGm`yRRLKUF8\H{ɏ7 &X(+ZvRI\Ø5[9dPt(<<ƞ8Qs *3=wͤx XEra%̥yi =4vB걣'[e.LuBD)+w躶ywiЇU_tbYA -OԁCVB`~к2 4Aygu 3ь$9t:K;3 ="n9+EJ/)z,Tvh< Y+=F3Z*x'%%9MRu76yWك@e92>e 4|WBes=-(U/r3kg;𢺍̺8H`<y`Vx*cNf^L}dݜrRꚢnK,) ҹ+(Q7T@` U>)=l=Z Iզgp`hb6I3Tf`20۪z c22'VO7ߧ1Ov҃.lZMJw2<=9'!mfP^a4>ux4!t,y42;>.l**&u8S:t³Oڛ{G;6bŲCW]s]P?骉cD;jLK"= 83U(:~ݝ0V8aqR!~x1J@g^=6a ΁ r{O@/ 0d {5JRprRfz{ꄆKu{bGxN2?RBU7]b!/'w'{㷚.?)B7'(B!(@t Iە #Xmоd#T~x|k-%] $r>jF߅y,`-AK}M*>B# W 6 K2 NwԬNr7k&fv-'T@zwf-G[\_ùEN%3<5,8p4aۂf]dh|X|UD;h +5?JU%v@Rmy +%Otj%;gn<[9j[JF񪤨p0/?G(/`t@ ʟ[%DaOQ@zv'2+)#о\r8 RFˤ!P)pE4f6߫ǟvc{_t~w@ƫV#tr%&&+S?bïa08ZxՠX$&fFb{j_!2 ~NUdG{L F{mՅ^/@"|[$I}8|D+& Et$7{u՜&iC[COTV4Lє~#*Q&F=tUa=$BXsX{9BKy<{NJYZ bSQ|e{6ےSWt^lºTY"&q()D#*oKgi !"CȲ ʊ5hG0l"$⦬)D"aen;$T7_E6ۗ'%o.@j[.εp{|M̦:_xH1'ctu$g= Mg' vXt)L\HR i#Mm2Hp$5QdK ~ 5C|ĞD.yգjf:ns`C7^qu`S*SZDZo:6p{(Be^4Z][. p][:,"2 FXJ 04##`hOIKg,;~fI6ВB+IjZNnF˸bzʏ_]dѱiW)rWf[~eDpQLqIHb'2ߜԶ4όo_LK7&cGtV2xL32.ϧ,(pLP`%h{-b!Eiy+Yj"N} W!jB,|RM6* hYuŒ#tips+9yؑ.Ƿ?aZ6:= TտGn)9=ԕy\KeKωq[wLjSͭ7yB'1\V7]3{N mo{-|EǮN%;Q[A5F'IUTÏH&.N-]_gY|J(/arUx\KmUp[eG̱ -LxnJ@ޫv=ZWDT{}.a&.]5xo䙗BY=d}԰+mImSpMG6. MT nvUqq@ };}h,#ovjulIwy fNfᢪhf~BG@Fa tф,sǃ$?oP:($VoA'K|F̅<ݭ}սaǾQ-eF2]^؈__voXUzG@2VWKʹxSqc$#(8g-D_}F"!eeR4a_,Z,ƿƮQt fS̑{Lfpcڕ:4pv 9jϥvĊ57S-h>| uoIҝ>G62=|1?ɿ' ?j[U_{=}%y:/ר&!C/dQ.^Z60I5 4c w&+kHG >O+:T0pe=pMξ(#:bOɰMf׸p}QŘ15x;}T߫Icru6 ٕTWVaU7.KҢKn~m[ZLwxݱh;V 8Oܿb'17Ze[\/ f(uoZ'x49/_\@j%p"X֣fU2SvR,?WM_Ff`ϳVD  (Tt*߱&y߀)$,on۲; e_vkxB4 ӜY6q @:lrX=YAxH.ɘF{?`(>G f~g+4Q(zʂC:PAs,9AZP&@bUZ= #A7>%L9gSvD5 a*.NmPc5„21u*tGxJu:eAρb2*`l=aiuWNXU%5 rƇ |ѮKm^lM}NꫧIzT02M}]>IҀ-%G::)cQ2#qa*/ޘHQ68+CЗ$Yk'/Sq;zR~sVl47QT'xD!3t]43T6ҹ 'D+} TkdK{֊Gi -=j4ޖ;PDڑ)$$u,ӞvbؠVT}~` jKm#cd-~@:~o5K3|neyF%Jyh#:e̿-{$ D;4-A,-.eT #3ZSviUl%˒nufuˇɓC*ƗQ6{xu<:\m#49g)ɥd/`J;F2r9,ɦB8XVV Hrm'>Wn=>"nت:b]C8=]#qO/rŧpF>I9!fcf+ g,'Dƒ[wk/1H:`o[wzfluzUlOܼalh}Kw'Hh9v!=؇I*ƲB( 吼C[d<lDx)jS[ (zv@o-]9"`8+f8NT {RXp>zJiKp9cu֋yWU棬G ErǗ讂[=@{'$jtm0H9[ Ms'֘5c"!Ƒ'".ݜEE@\&5j'?,.$<#/kNW ma-پc|prν}I`RmO7";wEt3H嵀#*Œj@3ɜTI.CdI YNX<:ӡ,@,MBU Xs 4sK>{Ĕ?WccsU85]z! u&VN'd_d ziF:pI_j ]^_DI0 {:vmnpnӷlngbTbeTMs&LiI ֙O&#~g$Xț'ߊKFÏJd^/,G470sLεcX_zip%ɞxg%K7Af~ŏ!m)"%CS<\Mr\B9]ŝBդԏNd#PRk'meJF|ЈaVo:+tJ.ӊϋΊ kgkΧ_GlB@p"L!$jR*fҀta} ,Z>,i 5[^I}mOL.|?B$UBY lOJU}e劀.gT%+JΞ縐.K$oUӦ`Яny]NC BRG-\I"'+vkKYj>8~U6э;V~O#|4`) iPEZflsU} +7<,ELG/>EhMOn9Twa@#HtFJ6VZ@1>5a?Nr:zw(Pՠ3f>:JXMs:r2~RjuE͎I50ŒLv=R﫜T/kw=)aks!/&}W߯L{(I^A? NR6 0`p׸O9e۟e$CowDFUp.c7~M1w̢]"e30Q^+[gW^){)нC>[RȈ}݁x]7Cӭt1lz#4f~G I웟{As -n%䄶|"'Gy&z9vx|vR_j?z]HX^/*>;j]9Yl:*/_C̹nٔKPX'"KdA*Zܲ=v7٦D.w6t9S.GrрF#<0<缢7(:Ûr/uGsNxO"Kl,@8壏X!M۞\4ql=,huFP̑V$+RcseꓞQaTrK@,ǫ襌-Y3u1k;"JIyHb?52w |XgOGH?z)`VXQꦨ DS}A?zw?@WcotV+RlV͈v8A 2p j>C?f%Kӱ^R!SWALK+RmL Z^*ˑQ8akO# D,fi9-J^\GeMBJmm.ϡ `+mh"tF- l!6,+YX/eGD '%B0a?*zAPK(tZ? j*%6Z7""A7I;{iFDULuFC[n]h28Y<)ftUx_$0@\d|!٦RRH=B\ T@&dcymQbY_a7ua}*k{h<9lG.t12J ig孯hV`=kIp}h2`X#20pYQiI*Βo90g,t4 #}r] : b}w n}% 7lGuK 1s\{ZlkܚF"5p -SĂBFidiO2cξaY+Ȋ9!nUpC_HvYHj#^IG<_u)ysd P]~_5|A ,O\0gKvm\- 3ݐIۍV/YMeV}UEE }\U^::"ɏnɃ1B{ uD%Q)_l2hMx]4Do]ݲ=?/|=H zMj!GJˀTE(j[|nܛP" ̀| E{EQ;EaBkH3LNN<{ ¢Rp#lECy%y!tC_*m ۮbx\@ƶl(ӬWV^#eؗ,_+-ӌ;:G78 M?vx6u@'1H?r(_1t7}%f4 R/e4phRh^|Vc1^3];--MvܦG/<CPo9Nv ֐ `vn6Caj!ۙfP$E4z%3l[r =m;s_SP +u3,]I{>a$YAډ%Ё""ؽ:\ dڥɊkJNH=)ߕ_}VU"{m!#/7$i]rƚR= 2T$xz8܋ Y`xO~ߡb Ge<nd6qsab^+ZZr?ƶkĵY%6[҇M`FNͯB\=>/h?cs*0~?ؼ1l[c8,| :776ɶHz]2(ϭ,[f@p#pΨΚAكBjs)VAlUM݅ ܿ4\ß|=FֵrcHsEU-8#!:BLEEr%W(JsTu~oP ˟< 5Ya0|<@G|%רA`.Hf*3'T&]IfaoW;OX%F)Ȫ.fϖ$͵U1F3>A:`,:wNiV5&p | B©X.x#r3 ԠPHeAg;3umve#C`ve#bjs]O:T-kX(7x5%Ϋ@]E r PR㡿BaaŽY/Z+pA :5͌@/ɢ]ܘOC"2m BZhJժ;Nې/P<0_4qiK /(ƀ;BPrvG?"ˍx-Uс D@înNWfVM>9L4f-%r8!@ȦԚ. X(3Q_dTd >;mw/G^ܹW(/忙ҍi }|Cɡq?MhCо+[r ~ot#rn0%Hc(!!Xzn&$BJN6 h*K78j,) !FC@N)XHGG_Z\Lemw;+8SWo]:˃yZ'0jAZܔQqۅ Q*X 9KM/&5_qG^ F Vu{ya3Ņ+OTwIk^5IQ B`&˪x l#3قԘuؽ| qu  3 ̭f7.Y0J+8ІDoӟ΋Ѧ<fo/T.Y*!|YƦq2uj80=`lYBlc.2* {+zuԦ\[@ <"kR*9"Y.{FeC^w/b!ۖ("!V) {5ÿaXё b<%%3Iv=}&ff%JQNn(GlABlOR><|&k} LYX)ՃהQN7gZzxp}R- c^(˧"Hx!Fx/>ij(Y8XRw< Oi g"U 8M6Nn @FU}L`> ԍPJ4} ̠*zo(7+ۉNpśirf_\uv: z ьHpx_dJvٵ5uky1I  aC ʣꆼzylZöIg(qhR kcvpRȇ Cf㳸R;2sL}kVq%cX[ lxӁJ=SYfω? U\m90}$<ֻ>YxĄ4s׌ʮiX'] LR`E"or JW7X^ ?8[EOP|.:B$u?+ 6Y-G?|ϽLDKMq-fc3m຋6%u@&v$v}(/> .tלFPEzz?ZO`̩yXe{ ODU|~ nM\?jV<< F\ C܂$i"{CIK[&v}[CTA\]suha,;b[}mXgȭd>;ʚC:Z 0 A^H%䮥LbX^zY|i^w ۃ#Iu1Ĵw_FNa.|vGŽՆ Ua)OH`5 MCdr.`y=yf3MuEue jpŜx~x@JܘG(w—Z ]Y0ύ;yI3'A led[g9}% yT sMW|GiSwhx z}ZOYeGtyĩ{ѯ*%HMPK\AV.4oW_CͼɰOQDA܌њ.#Di*3JoUQFKGSU-=/7D uoF}p"CScN|-ňBS# 2"a^䫗:WucΛ+U53j N@/IϠڕ_mk~|x1jڙB#4Gkr$4"|' @W@UVۀbu| $Jj^e o>} '3} Ibu>|^WSH륮Њf^y&ݳ^`/EI:h jH~sa-Ao%c͆ )j DJ.\uU>›?Sh,CpJdL3Ս﷔jH1R3e{ofE<bs3uk߈TM6nBB7˹ŝ@s^Q- 5 ޺@L/0g"Khwnl#g~cq?ni(/W2Rf:Ԗ3ZD$3f877j/_!̀]z$zc#%v'/}QÁn*'1הCK Pf'=QLRh܇-`+UOKr0)y&aH{2Dtz'^>½L`M ךB'pe2%ʤ݌9%iq\۷lj hs3틑Z^Ek&֘$[fM9L/٦TgY<̔W қj+ liϪZX6 \ KBz)$X<ўȋBQj5qfaެQ-\1VsZQس%C亣$5&l÷)@_ۼ: NLJ KA#ifBٳK/ԑ1إJ BX \#=`|?-fR[S>+|tldjTeF@41QR6FĻ0]fH0.zk!Hvdνs!贳;Ϭw'ëRúad.bF tM9ªF^ oiAc΋mz5>>nWAaQY2Fګ# &EW5Ҋm\UD uL"Ji~]"_&ԿF;;4ބX; dՓH{fSWr; }1@,|uh(Y1q t]K&9\GkēRd.G 8L +ؙܺZ3NzL3މeY*'eQεM~J a\UKZ}dV!ʳ}dCb 0ՕHj>no})f $PZ@N~3:'c-))O%AP|O^j\& $P[dSd?;2 0}Y7s"1<qٙA_~BN" X6`r:9T=n0D jKqf0#P*/#鄤I)8-2c wm(zvuv 1TSWfO.kpo>N[֦Z(6N .Z!ISi(Eʀ[*^Sl tfzץ#lyP*"k많* t$Zà|`n}F;J-;{ jT?d)2);ir|n@xcn=di W6OF5q Ru2Y3<'qU)܌'U{9 FLH[ *ոw,=}iz\b\yZ 1]P‒+n}]z6,dB>"XQ1M F;x/?Efc!5)5\8̮/[j/,-4PBBW%8NE{jzG86!=^W{OejX% |_\d|RLE7ZCza^0/Of0ef2iY+Ebv1}}DvT!pm2c.' 2'&%~rH 8^CO1Kbau'Rh,'-Ɣl5Ԝ eqd:h\y}QQ]z(! iԑw"S}&bU9<(>5L9 ].H3H_ }A_\?Dq%KG%n A=ĥ!3_GBV O v§zjǭ+>p\,D }=+sjٖHO.!gsDeO`Vs\Rnj'P'5Q-LD l;@P!Ut4E {uuҴ2ws?JzŧjTJ$0vna~oF7gOgπT\k!<,+>o4O4)j߄Ԡ/ycS/DUpаm-(IjL'$I*v >#}TIO 4Y56TSYo{|jS223T$wfD)2rQ`+0-8j}&]Of"uR>+MǮ hqmԁ=>C!btKv7߇wv_/#l}qk< UxlSh/p$d/WJ3^rl.qiBN„̛^pjQPէ-IC"~nў%_E0!6Q1^(:c+)FF"CX^>>clt!8ABk߂獹(~ J{6wquh^bbC I>-Xqw?Pv@<ц?$.?`}ZjIs9oPn)ngjX5zث`殌dm5!{{D@> = 8N]q:١IՕM"7צ#2\(RMFꁪ(V _8ruפ]m1d>u:fvFh W%%8CwSv`( hՓ0T 64ԛDivLv͑]/oz|?飨X ZYlouϲv62[Uj"lQ?=O/.y 4gb%M~:=W5*θIͷ@ki8PO!Z}&MB:Ag~rR<X 4%klJ"I}7\>{0z' O4`bƱJ@A /e[mYgVt?x:Féח &BUr,Ďʕ-3o]Q]EQwfo;$߼Y8oP*3|5oKu0FHB0-t # /4<|k/aZ|FOkR,o Y|rZ-k=/\&Ƴ9?p,u * echċVOӽ}6K bp8=Bo4^ks P`6F׻0oќ{QeFWQi-kj%Z#5m*u_֌2Se]}`;PP!dXLGf:Or~y2XNb`gMդ6]Um%yJ5C$^+iA^8?{KD[i2ɋxHє%ȽAP[gNbcKF=9";fԚ}G+DR6CZEכRjb0'q' N `HW&`}FIZ /VAZG', YC2 NDZbhW4U)4hO Mkh;a>̄Cs (^&ĨDOI u'O/I+\[S6PVyQo:2_mϏʏ۹k ^"O5d(,yZ˘7<"7)fMTaqeX<3&Exο}ev 1/>vpcI/\2qۧ#*PR&e4s e Z>J p33U1J [.FD%2eICܝ˚&1Q!MoI ՈuluYsRF^c8'5k(zBYPrƫ*28{ !A9, ? _6Oo Z Є hG LΩ_7mer}Y?p=]xy`oq崂JoK'vJcu_`MoEvN!-95ꞈS? ]ҁsفauETҢ h}ٗߡF["X1Vĉc G,tH|soH$3L C56c#Qi jwcc'8 ҏe O :ۍǩŝ4W[4,t@޸c$3RE|Ї|, `4{ylLc"78bf3U@Tt>ԅUH+D7Tߍ_C:Xk@ppZZ욚aqU4$::1Ҝ*7ӀQwǡ m<SzfVkLiY5$b33Mi7b#Hs[ߤgJ;qaW15oIE+-:^y7ں >{Nr0PsK1ȅ猃ΆRV6Cg7cԅP= N6dxD#eMVSXMs rlc PG Mδ׹?md0{M.SW>4VLˁPekROҜn _ւÊ6[T$q96`gN2|K 1VkV36w69 2(H{̭~8{6Lb9mh~ +J eWZy`î@NÐ(h.rbDgʡW? OAFe @cZuʖPyYpmm· @ۚ/9w &;\hW%-_4 EVmuc&ZtB^CMp;j9sPA[O>ŔfLH&#A TN} 35åxZ<<ߴ{-'T{+-`8+Y.b2R:g0J٣)dF'ޠ/kkdźIưU+慡fuv߆Çќ'!6TvL"k?@cc0axYșm`Yq94]:Ï[G<-2#fѺ&S2+t4sM_.[K 5u&Cz % -O'M ?y!&_!g6{ glLD2얱H6Z8o-D[Ǜb닂T]5n6sK&Zb4m"xQ H9ap;Jڀ|NWuWnWeW^P-"u:$ DyB| 簀?,"?aB8Eeb[:r%R!3h>RVЁ0V=Dc5(ZR&eݿnWEfͽd01D-h,,XvC},FL%o"6)~:̅rpV4B@lV%'bI DKp#&u7.~uwkҐ$!foNByks sɿjӧit_G OV]Ϫ]C\y)aYmR:Ͻ]CPi>ܴt&8lk/w7*:2dw-ÌZܖ=uy>gM%<΢1/`،lܐ($88oLJY <>Ĝԝ}浦sUq?AL wJIz?Nk n3NMKt &h(cπ,ނ9ڏai}yg˟#>P?{z4f6N;R}G/9/:-#OjY,?MK3"yijCFVhFwy٘mfYstJDff`@Ǐ1S1Y2v/VLR!qɈ)otfjE;M8#A@]WbG#vĊ\D3,c{FfHMOi%h`° .8H6E7_C[7,]a%#r Z @ *WuS׽)m*nA٦u[x3# t/O;}Z7/xenF;ySY}8+z ?Eh"JDħ5IXb3X;vL^OY #Ő7ckEU?`rF PGǶ{P\sҊmO?ǒ]>n5IׇU_T5%/S^y0D1[vݑms|3ƶT;*-_#VM΢`} t$+c `_ʜx#C$UUfdkP@cyeU/}-9d+q#I(h6COrSA+AP!"YaFȹ\F<ݱUzh ge5q4OH4̴œs{D. =̄[fHƶ'8̼Ve7,ސzRJ@%4Q>߭*L2lALǨ(59e3I)"ZNQjwK40 3BQWcjl (4=9%*m77/2Kj]V14P@5N6ԥK[du*6]d~{5]юZ%z-&QcǎA 8Wo~`#^<%Y|\k kYq>3H& "Ia5;1>4wM7"*Ӆ< +%|OJUmp5ubup>x 뇄ð@(~24!OCTǨ,̸ۥFo+W6/.D"Lڅk=uTq~ A{/&MC) ɋ"ͮyLܲ0p 1aRxuύ|@~Xk+Yuv'rvl8kv~4Q}5H'm n\|/OfwFp~j=Wf I? ؝.SϒR:W-GC0yӋ¢4TUa[_%BLސyPBo_+iZII*iY?rF!tKԲP涷me0IC_gBWqW^zˑ?Lӄ~em?ah , yQNg_VxO]xmO-*E xD&bh' I stAJHLY1.g3Xw:{FM55D9Tn/C׏.%84oadmdX)]pvV?-=>AKoq+[>N?=QIsf+x}]lM`V)0hfll7j$Z"ڏ+=@hO(7/e;͜ʼ !rJ닛AuR9tɢu<9ةvJN2n RtŶ*ms*En7 &U*Um{2F{ n4.7 [|M#F`TW.Qgv )!GN|]^Fܗ{w}shG.-C{rmzh > ^C+e:-bwFzcANawI~'X~abV 3N0'u.\&<= Z؁٠>LuPƭ{g вɃ|fכ-++(qf&e@w 3X-̛3H`ؗ=?oV1)Sŕp4[!#rϭJzdϊG yngޭ+VqR YC. Gz !57򛭦eQ@+%?'qSlOsd]>ض+ WT:FCkRT3 _؉Ƅͭ" u[7x<*NΡ6tfC.PݭB{UKٙ!>ꍁ2YREqkEZk Y7Pim \*Yߜ˗CMi 5n-T _/m ѱ$-D¾'QAHfԐn\z_X}K$,Nۄ/#"$u'bKrk-f.E {(V}]g CqoB\(xteauuR} t@1#*$&ab?',c@"YA3<ؔ\9aqn%m[>$dӟ-[V##'wD +r}4z܊n f@ԫǒA*x-k$L%?-dctfRA!]:PY"1S^~,gkRZC093I^&S qx&zd(KT$%N oztV^g5[i٬+̓r{9~={(\A'mo*1&1F:C,3p5fkvQ޺,!צ`p3Jm(qk A^U5~4~JÛC_Q<$Rx-xpo21` 9z f%rĄ i$oľǀ _Uj7>JI=c(WccrlF e esi_W?sUƚ;JY.%NmwVCT'!۳U#x\6Fǭ;8 dsW%OʨT)GQBdIS|QliYq1<~ #_;hcL.2UFzT An~)* @'  mvUYOS~Jch W{Sƿ^_凣]QMNnl;vN}y{Gا %-$voЂ2Ԭ v\MJC5| ($}3HMQ%>vOQlKk1>N[lfYVI-K8RCˮ7~_*WeXl8laP:2:BzDmDL@Efw!%ږ+L6B]tKyHSwE?/.qQ., }(C\,бg]}:}/@AZ-3XT86f]K o7|)Ӷ=aBԴaǗ3ZӈeěpUha=p*[~)*awݏޝUlF_%M Z=(_[ ͟9lX@YڥV.˓iIZVc{f3uWpXgѬ;"_Qf>yqKraf/kEVqGq1?hc^/ G>P8ѼrBn } ߁sݘR&UXS4.d2J$O|L 3;H 4. ou# Mk_-EW>k-bwO ;ߩ#r28lD'Q,W6LLjq Lp)&i2#)h:zU[p$k5F툵X˧p>V1&B7}nx<%Vyval.c!=C NL+ϫ%{ssx`Cm-JiQLJ2P"TFO A`t.t>x|}.^BjΌ&u}3\&=r9AXphkgT" .HdME(ڈ# w҅Sx3HF/ Qe823kJEH0eͮsXX~~ x 4|8:tbHMVQ,adU7}AӞh |ZI:(< ޸aO P7`C{+HDevn3X4 gi7xImei[]+|5k% a[Y `O,YqihP hZ,T3n-ϧ+4IgWq#f k^$:ܳ:c|ㅗW4Ї71@ 3>5!%4e٧T\;G?ZPOm'ny̹2Nb;j|`jhMJC`0nnSx[?nl>Ћ'lƝVdckwY#EJO-9. +$q'[iECɣт;apz MvƢyP;_?ir.v~U-pƥ1п02@edL+_'ܒ+*򺔊X_w>^} #L yCCڴ:ăI(d^1Yc+`TML$˼qdCnڮ 3lÏVOrԶ:m-j2֩ى;!->jFG|Ks1 ЈhĥkLn8S AKy`Sp߈Mh(׺!0_}'&Dd?euQm\ȆBl /a||H (:U=B޲IE7r߹;ӮK Zd}+#Z0I}0%nUl>"y6o/Ңv0"3E9myyz~0+}awl>^N(>^pT(z'ҟV߷&6B Y 'z s-ۑt3u=])4g#7 &R>g[Avb&j;ʘSy;w/5z"/uŎ:'k*=f'44[* JoZg₨[+\࿭gpԼ@xK: p;t kq(nұUP݌6na {*eJczM*uxs=m_l ʐ^{H-󣤭l6jZkE^?:bƥ]뚫3BxEuk.1t/L2o@D*[C+ڔ$}Ȼl)t^n3v9fB/_#&N.g.uZZn鐃yV{qI}ʭ[~qasD;>1tk!@ցʛLs{=F΃ k"r$dQ~ #CY xp%8H |%ⳮg7qa R #Poֽa.Qmb&" H { M&`.VugJmg!jguUR!/hhV:{Z*!]bM/MB? |;fWu,6r!4Y0^Mm>S=.{ltuk̷GOZwDSTW6L$;bD)p|5, OOE92y][/h~m&/^xjA7 yRQ3)Ftaܖ &H Ec24^3A9ݏ+q ׇ'jw dW21CIunJ-,5VBaC۔WY僳vU7FdA虘;ػBЊR{ZqZ0hl]i9rV8Ԧs\k$B&z65c]0ⓒK`}?2tXwrP\t6O}tƈ]ʏ!wlIp .K-Sw S8\Yd` 4cW[wbMCFސ8 b i }?E^Y'PcJIC+/-[CuFhp7`(. ,eg8M-룔c_1FEތ#!Mz=ײ{zwM]ͷFOP=ʏc- `2-4`6w(}[:]iQ94L֝ 7/Hz*:>GNVp 2"8]!rw#?n2t> Z9_. D!`[ 2IAnؽxcICe755COXZ ;j}I7ћ17OD"9|rOQLn28Ru|(FSiՆpY~Qy&F Ђ&>-tCa$ FU(2@Pk-~l"nB\Hg3yCpDJ faf:tBp_|s {gikMœf(7NUs;iT~@Ob'sƒx{} Ww˰=;xdAl./ځ1K@D?vZ8f@)-yml-vKq_qZaR;6sQ6@FNXrUf@ăpx< Q; b5d&T(YX }Biz^!Ș2ʊ7pۮV47 H"+~O;WN)RYV 4r'oՖQT@`|uڿiRRsN2Q3guɍ b\,tQ1[31Y5\M-`'UqBW *tѓJƱumX O16 ^9dd;0Zd{h8F:hBA V4/Zf[y/3|ܖC:،Y0%$G鈶FIQ&; ,' G-@l"NUR5F ʞ 5)p\l+f-,ShS-0 DDشWNE=_hd%U$: ;r"@jzmOv|1.wUVfsumeW9~: p w$&@ ݴ[L[RCps撙 G? f;C }i/MO 8E=74HH ;Ij3mTOBrg|6m )gq #?Icfj3a.mc&RFBS&e3 1Tв~(8]c Z3x 5ɅN``}=/Yn'YEcRZjXwd(9Js-sX!>Mq=+'r{}dVhk;*1C6Desꥒ,_79<(Q I#*1hq5{+>8mtv8]M\R ҀhȘ#8isZ Cp-0ygĬ^RSw$@s E<'ݡFõyr;}_øiuoIVH0W=I)B'$أsu%#?i4GCҏ}V/Jֳ\M/=ccrčh1MYHNuqLˇrjie1 Ih "FeЌ\×~hB:,%bd%6 Tv|?@"]j|)uX Ј*e D)kp}CY4.Y2ِ&\lp֦˶+U.OMR;ZZĎ/`.ȸr"Մ\5~ <`}~P݉00w%.66͂P X(k-+E0IDryZ; mgEϖZܩ|O.{50)yʆX^Kt7,H _`&&,cA(HX hKyelHDJ`2UPYuu^ԡ֜~{*6;B7{3^>$CZ^^k4 |VW׵9.Ta?j_Qۥn ̟ھ6no7!=МPFY5->wH .M>x/O7sQ+8(h Lpr ?fƄ%ic+nu d FfSh!&JL߁GBnMTgu<]̩먴̅}qXDiLv]NI/c[m)%oʇ[<= &&>C! FZeiޜxstp-M3օNJΌJV,ڬ_nq$("qcCΉ+w4կ돮HQa0NUd{44Ǝ!g;i$ !"CU2`\|5#~԰X<->\tpv!z r[pq)I3Ld] FkGo撇*0FZ X!mJPs (ոYs\>BafIΗ;aYYK8@7r%QONI =ʶf(Yhz:B{R+(|쯬m7Dڝ: #O HPf>ELK$Ǎ{;%ͪ5*')_1?y_lBX$?eGΫk{M YNw4qIO̤jMa F)u8d-^ꥊV eַ)R_SɹƘp5qޜmkUطu'lP1ҞĆmupnj"-*7`|7f2BYE3˜g`rn :Nm*,-)T2o5OckĎ説ӝ[k=mZ:kE@}T5'dÁo$Vȸgs#'+kDr8uYطT(HnBe/eVCPyE y6/aȦ?luMx~ >Ǝc jLSuR},PyfՓtg BDl{tUk0G+MfyӟqF}1Pӓ@u~4.ayRA+:S*6hjvE45r+1TJ? m3H&27s5/8FB-}0U=!),*RZש@ið"?a56qIrtQg;|pfo`wiC*~<EFEUenoEY>I-B,2=nCb\IX#W ?X)Zo^NHMT[w,hUF̽د[+a@ܦ_r^G@x]H3XxHlI6gcDFQLt0_2튯x\ &;إhh+,*.mKUs|-0tb@x#'\ud=V# ҷ7!DԤV UOD@8A yhUl.E÷)J)+"zOW+( 7Du󂨨e2ˁf[Go_#ԭA߹ _xqC"M)I xbyt[dnN\{US|&V:f%*}_n \HSۈŠ$E%7.< s'<4@>A3c(kߝ=|}24d9=7KUPR;'6Oyt\u0hV'M8%Rpz] f_Ē8|DZXTM 8/W:C 5J20hS$ڞIyZLЭG@=_ed= R!P/t[lIf&ARsɺ:=V˞ JWTz5e\ @_p>O/>AC:<'NWp6p3*Lqwv0 'EDqvס(_I"24aچN#9 7šnCfge{~tHLRQz0p kY4_s*Yi_OQv-7ۺDm9CPY!&V^Y}.{k0>lB0|FQ{+~{9C^ [bYD~Z1A`=q(ok;,9R)S[6D(7d Ne*ܶ+5oh+VGnށ.A$yRԭJ>Sfܻn ?G*zZR 6͓ARD(d,*xkA5zD/]Cܦ HWZvÄClG=T|73dyvdyHK)O+ ~P-)A)f8.ZM^T$.WdaWfZOxL~*3ZCCKXzX*P7¢Sȟ~YR{X Cs?ӬY:LaM/[i5PΊjӛ _;pnd 6A݀t!x9&U}.zUm:p*N{GŃ;z)g 6Zcbslv|ob߫MV{dRf*-y5BjfG3YQ.nrB4P "4cZkt4čŒ  yv2SHހ*u |sAuȸB&^+KƖv '"D+.[|_%++خ?E2th$_+:Oÿ};N`]CnA\Ȅ-3i\M; 3˵[DDSlMO-Ծ._-Wk0~WEdd%r{ ЙzTNv?c*Y6ЉP\, Dm{cWiIqQVFT`] £;~;ҍ+cd+%g =P|#mi$cx%BF/I U"-n1\SI~x3 E6 ,b9xXzP`vp} =s?3ftCb]SO2dڹe{ހ't1 (;z>MDcJDwj6aڳc(s+ƬAC7Ts>XĈLD[z*4 [ηj:Y7ùa~Ж*1*Isn \ƿ@6J@^Y BK(9!Fp``8fbfp nRdc-?GW[C]vnA`rNI>Pܢa"^rR ű}Dw.4H¹69CDlB|nb4ES L>/{$$aqU)[-^@2{lie<9`6mʟ?Zs=7MiQ-%މM%>Fp iϊp^v-| /ZY@mMwW͟0x,< g1D/p?SDR.HP>,7 qє/ç{ȴgP@ʌt$Lh량]+Y 9F zYu%qLwsTC3\.|@tI轞qv\a'T_gLʼƘBƥMl9fsxIi;I&Tp.Ra0dUpqB͐_ ?V@tJ cycwV b_z0å*49_؄97X+[F6s8H=9!x>.w0>H:WZn`6~-zNPgr(E+u G&0J`8bK$8=w->5:hU)/Za9`C}:(Ft.C ,f)ϷBL47a͛AˀN0BC x} yXXTTiӤŹw,52k1MV1|j\P1~((NuL Qn8|{EFg;E61^J!Г㹸R̄/Kr"RoV"Kc7M{Z 7U }*Pb10'AYKj/VY-É nD2[,7Y20n_$rB31F?Y&W; Ma&30!$p6ql Aʩ ȴ: Ui>5bn˦Zm{yn1{쳁Zz|]IO&T^(/+4U:-;"髯=3<*~j< %I)E'J7i(:y<9? G蚃#77 2nW)BC怩2'ٱD19ǃ[Sf,$l: 8)QmK )Ge*s'ؓvdvTрs֜BD>!4 !gJ0TV3튝e=o@[UitKS@_}<iat}?(R 䙜 0Lz7f'fT\IOpod󫝶qUEu-mJ0HEoμ5k"b3!`oC$q=3y\&!!*%~ZvUPO0oYu $3޿b]}#CnIq]\Y|(:@wU 8CWcܭrWj+_9\Փ@A7ãoL\ gKnGƵHat8lԆODy4K!n¾ɑ(1`@c >7j UpŸTIˬs NW3XJo[e66amI-t97Zo G0uW7B޿8INjHqDX]cY(uyBʃz,`TXR̀2U.)yR{(ܦ>_ܟ^^6nNp &(rHBˬ?D%- 'jź|3?uu.|hL]zmu 2W|fj (bD[I,;"BNXRfol9cN#p}iS2lQ@,$*@tڙ)T'f$xQ_R%s,D?]pR.C)Vv9_c/= eV}nYΧ{f؛ d˥AeipD*D9pdK0ǹhgxӪR*HyH9J۝/wm(I%?*\qs/sʸp lDO5!+uz{[Ƹ A>/Xzyav2b>$`vLdfEcƝy3SYt IZ{dw!dZ*~kJXN4k^^3!|? TѦץ{2U.w,$3?>RÔ«vgD~|!AiY2v[-F 6E2<3ոlԅWX+B@UPm'|- ҺeF%\6x-* @XIuPUY-vT,uVǿ0=X%eF5URg+v7c슶Q\zp,pH@dCnܘˠ,5:um)K. Ai7uaFM0&Gf2Ì}>u:7.ܰH~;d&5HzYEqύqtw$e+ş*A^KYg򐰪ƽeW`'dv@\K%#oRnfdV/L;l5؅˃VUjkOflj`f /(%a|pÛbJTF{Lj!n*\}*c}xfݯ(,4d`9zN 4#;й`)/8n3g3t$ ? l<꒼y 6'J ,#-(JQ0V_UEuHWљz-(`^X/6 5iPeXޒuBTՌkQd?8$s#RQM^wTzݶׅط!<>,*˒jcLLwͰ=i'q6U00x~K0-ܷ]v|Fu~gi,*J,EZTbTvJhGI,aFW'dfŮDΦ[F4C''s$)Bųj#D iYƏ48Z ƸTzf8p.rg1X>& 8E< =0n+98[a%Z(.,g=\`%1ʁ]+(5ާxp=*o5t:xC'%\<PmzcCe>dP5`K1N†_(E>\}e32MI"x`p3T0ӟy =FehMMQH<ٖ6M]r@" !RMoؖ%b~U sAއ> JȡГ]1P.>ִM\A 3N $ol6<PItiN*xj11Fw|Qئh~Y=.sE!R 8vo ӹ7K3.S;IHM[:!ÅXЏ*YHV: 2iGoVgi9Srm -))AEk|u4>Xpcu] @"rM<R`H pDYxR}}7161.akJYѸ4Jh3 rN/`fE7o/C)55H~)L̝*&;<:쒕I ^uD?H†ꮷ8! 2iH6wE\ k /HL+Ʒ~hV`e%\w( nCD]mLXOoݴUwr*gfqˋVuDž$,Uòj .'"6ƍr<d=e"\a-ūZ}Az tx3L$@^PQzx|PW gv z! |p$biœzS 13~D/!*%8-)CaO\ 1hz#~^Ьh(K#}2S:Ȍ.g2U{@ʔq`)PQ`{\[$+%>:Edye_ο#'D@٬: _;nzaHȄ4ۄn6.5:kb!^%;:qM6DAG:,O4ЀX];һ6ƨs1lk~\{{0h~*Ӫt8sx>)$T8=欹! cH=hBhAZbwCV~JEJ1b[>%Ke?IC2C{\AmB՛POf,u5,IqŲ@PF 4Ř\aWMPDÝԎ"&&fewB+\ PCN!Eih=Ģ 9TS div!~GQ@sIov[kE 񽱽u+dWQ;wy*Zwi\9>H 4C>+r3%v9Mj;VDǂtMa.?7ˣ:=g m0qAb;ཊ/}c>X. h} \I};/+hgtGq ts7ǚYK뚇l+Fz2Y,MyIGūw-<t@\U t7Jg["*x'mOrxvLT40],A5&-cC+-CVpZQ 8p7vC*h׫QvK@Ks u&v׶mX.`(r%r gTq8Ϝ ŕU$ut ifFpWdN;6_ϼBt;tbgֶ~*,E|lIu;)z@{m1feݺYjzetA;a#V5OVx ^J^|8#xBk][mvtit0R;}RHn7_+#j/~8WF)' FT(@؂9jV -\1#{8]_!harS!8lWUC/yp:h)u OƏé^F&Κ9A(:LvrrT ?R/zlxIf 8 |!p++gW%Qk2|KJT'}a+ 8O֡5`÷R\Q"i-f#؉岎E$gQ-e9;1*zc@V_16Y>R"he lIV-svҺ}77f ħnb{`"efU*O{ 6#z[?E&#rUDod_P.G2A] osLz[ ٳ?IkIp3|W9\4GYh~f}Mv;+^MŏI@[lUUX(:^"n>q P\) .Z+@jR9f{<ylJdHTQKx}r3?GΨwVy ɂ+](-i](@Ht%nۍxњ6^߹'1WG$~U`~b@kЩ2rX sPy]?GMl(04VZ2%VvkD0_7mr9Vf6Fq-^ZyI:eHkk||+}ЉXJ'_}=ˋ$Pʰɏ$d ;DF2h]H*V"c0 j6s[oH4W\Ix7\egr]ؾ|oه]$ z$dGFP4݀pV~U$|LK sl=!$RJ75g5툫kW,[ @"jRt!AZIb-}48^~VҰD36^D+ۄ? `/f8 #>zv775 ?y*Vn wȊA]D\VNN$ت3Fϋ_JIHYRRm[g8I`iOFR=amx\q'Z~Eee]Xuզ#Kc}_g[} @,M5 P_)Ԕ`ՙn FւcdH<5t)F{My:f=,!Q;sO}߅Re(^ 聸AЀˢ>1yE`}KsA!4ߢBRƟNzOρ^Kė٭/bTn횃f9%`+_p?X8n˟:h&tf)dhBy!D6bpOė@Z$rʱv!E^=驶qC^Z4ep؈<`xf^k*QkӉ:$I/T>td/d2rlY Ƃņ˲sU̕3 :U]vPK%vS^W'$IyOExkhKb9d@OC^/֪y<'z' 4A*:nC!c\Pb4 ZGb|i<0\#)dzۉ s򌈧v:˵yc @#^q3u<ɚPO k}YFCZ,gWTPS)Qhu E/d.J/^^ХHkTSsk%j4_gN0- _5 =Fyl"k7,&jBI +\ YZ