iscsiuio-0.7.8.6-lp152.18.12.1 4>$  Ap`븋/=„CF5n6*̤ 2hF P{,v5F&-Kb={X3٩WUyv]!!G[fPh.5Ǯ!$e͘zKx]"zկҎz<ʴZY󞹢#ـ,Il,ByҘ*\;#Y-j-1?\>ɡ,DQ/q#K[rc0!Fē5jdgV ̊%̬QL\iZ^ˏWa086f639d0a5dafe578b048d8764ff565273a66df54d22f9a018febecec09fbe7b90451a4203b4281d70746bf0f13713adba1cbc``븋/=„ǎNx1ݜatUcO;*A.4w |XTGW <ǩ~Ƹɖ4HBA2'nIy|U$uW<գY>!C? r7e7 ؎kJ-XĜB*Mg7)q)yqOjN!g6V*ozFVp*M3)#O)Q!KLV^Y!/6}kCPPA=f`~24>pF}?}pd  ! K ,GMR  d     4WzTZ(8O9O:O=xS>x[?xc@xkFxsGxHxIxXxYx\y]y4^ybyczd{2e{7f{:l{<u{Lv{hw|x|y|z}} }$}*}lCiscsiuio0.7.8.6lp152.18.12.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").`lamb040openSUSE Leap 15.2openSUSEGPL-2.0-or-laterhttp://bugs.opensuse.orgProductivity/Networking/Otherhttps://www.open-iscsi.comlinuxi586 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 fi)큤```````3a8ce9bc90493d44bc241bc1e3dc8b0a61ee63e4ece88cab5f70fba8c6a1a44e2b8c304ee9f0ec8887fd6a9327f890623fb5c51cc96a473ae7728a98bd411dbfd9647e6d478940b8f31022318ae29f5e2323741dee14c6d14495ba2f99df2a4d3b2c2e17187e4c3b2ed7c7eb7bf23536b57dc00dbcf374566ad5a2443835a6316053db30fe155893d947959eb607531eff7fc9db819c65c989b256385077a246iscsiuioservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootopen-iscsi-2.1.4-lp152.18.12.1.src.rpmconfig(iscsiuio)iscsiuioiscsiuio(x86-32) @@@@@@@@@@@@@@@@    /bin/sh/bin/sh/bin/sh/bin/shconfig(iscsiuio)libc.so.6libc.so.6(GLIBC_2.0)libc.so.6(GLIBC_2.1)libc.so.6(GLIBC_2.1.3)libc.so.6(GLIBC_2.15)libc.so.6(GLIBC_2.22)libc.so.6(GLIBC_2.3.4)libc.so.6(GLIBC_2.4)libc.so.6(GLIBC_2.7)libpthread.so.0libpthread.so.0(GLIBC_2.0)libpthread.so.0(GLIBC_2.1)libpthread.so.0(GLIBC_2.3.2)libpthread.so.0(GLIBC_2.3.3)libsystemd.so.0libsystemd.so.0(LIBSYSTEMD_209)logrotaterpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)0.7.8.6-lp152.18.12.13.0.4-14.6.0-14.0-15.2-14.14.1`J@`@_@___F@_^(@^`^k@^@^|@^^F^4]҇]ƪ@]@]@]{]QT]B@]/ ]$]@\]@\@\HW@\Lee Duncan Lee Duncan Lee Duncan Lee Duncan Franck Bui Lee Duncan Lee Duncan Lee Duncan Lee Duncan Lee Duncan Lee Duncan Lee Duncan Lee Duncan Lee Duncan Lee Duncan Lee Duncan Lee Duncan Lee Duncan Martin Liška Lee Duncan Bernhard Wiedemann Lee Duncan Dominique Leuenberger Lee Duncan Lee Duncan lduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comjengelh@inai.delduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.com- 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/shlamb04 16202311330.7.8.6-lp152.18.12.10.7.8.6-lp152.18.12.10.7.8.6-lp152.18.12.1iscsiuiobrcm_iscsiuioiscsiuioiscsiuio.serviceiscsiuio.socketrciscsiuioiscsiuio.8.gz/etc/logrotate.d//sbin//usr/lib/systemd/system//usr/sbin//usr/share/man/man8/-fomit-frame-pointer -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.opensuse.org/openSUSE:Maintenance:16220/openSUSE_Leap_15.2_Update/0634711b250f55fe8cd43f1318791c9c-open-iscsi.openSUSE_Leap_15.2_Updatecpioxz5i586-suse-linuxASCII textELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, BuildID[sha1]=d9b8c116756e94d9ebb56614996b222297498fbc, for GNU/Linux 3.2.0, strippedtroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)RR RR R RR R RRRRRRRRXbLQutf-8959c8a38cd45ddde603c92e4a42246f5e90d20699a99397732a40153ad74a1ca?7zXZ !t/H] crv(vX0@bJV m I_5$[n%^֤J5E&"8(l~[K7 )/^( km}}G4b!ITkJ_G^xkI 4:M!䤈aҭig:w7u,0?K[( !J8 ]֪qǾe qpvﱝAрWϞ؎Tq3Vɸƾg1qBzrIֹ5=NW82 8| n0{d6y14ïr&eZAM)/{mG8 H/^I閫aYRx8'{nK&X #2& _lU>5acPyBSaFR,t*7~8'C\`Yq1Q&`aǣ(7~e$飪xwL/.CC_.ny4{(Hiܴm+VS¤vz 6)n;J)'tPj;;jhc[) NЋ2+B+*jHP1?>oZ6k=wJ<-J#7"/(6JF]xGJk!lC5WZCd͔<6$а2{e"ʙ3BrvU;$mU CD0)K8'zC. `hd|c؏1Jʏ)D lKR̯õ[^ ԋb@g݊N5}{Gf ت%O*X+VNd; jh+dEI!H'}ѰSc(b(ȝa*;%ЕS`Օ Y^}܁RqK5E 㴄՝N@m/n 5 ?7|1i?[(zPWgyF(ry3Lx=a<'ip>4v` ûQ_K6ײ@fŠ\B>?&˟1n:s(Z'n5 b6ޤ.I57F.ÊDKcbwݾ='/Tym<՟r.$F[,c¼ߢ[3t(I/5;͹Rm &FNjTU/ߡ/XX1f/}V5OQp稭gckO۔y"n[?;<VzU◽1>r Byzge'|,uu:3o0?YzB*Ԕ􀣤#W7`ut 8vA[#mh q&U0(y= wO6X )O; crI16W|چYDT- Sp˻ * 13G 2Lt5s7p:-%Abg-"%HfW/;> IOp\駰Swf$9 m4G\k|dQjϡnl OK%Kgǁ' 2JTJ&R Z2(.Ia=,#2ٖ6l0Bl1za}Z$O8H_ :W$%OF.k`=L֍yǜQJ:rG]{ȶD[ɃjQ6rB4}h w's?jĸAn0u2lnbqV)qs, aJ坄':vr_S3^2+'P_EQ"ѳP.'rU$5Ϡǻaa;gBLTI :AܗXC`hX K1cc8@qX!NP寡e *t[@Wwf BTx?\;PioV B1C3>,U1l02֨k=SE{x a ]SFRd)RJ~8 EA:bjrЀL3zXQM3qWaVt7Kz6SMM=TIh@D# xS,؆/啄("Z^i0-V뚦okɵ>qtB,g'͸9I._ꁁS_YsD ߒw|.iȂ 9!ho2:;=5/FCTM䱪o1Ku"zwrb B}z=ê~:/AaqBp[VT,m$vByb#;pZCTn,,("m{1oqҹD2ڬrdp]r{6>ag@i!UJ+,Rڼ5@;NwzUp`=W=r1 >pBR{#< t|hdۙI7ikKbDNK&acF۴/-< Jm4(9Nx:%1, 5AB%I]k8C`?bhGuC3zfJ m;b?)c/O0I!8T.fsݤwV]&T!@++I}hf0$ltlZBɩ?hW(u#ø{u-MK4K Fe@ x o#W%.F {W9?v:9dߋqVatcr3yUܝeZo(?2rNt8W*y2ocU]b*o`eᧁXiCΈ[8i|$ ;zBz{ep|cjmmi$وN s6% QxFMt6ț\J~\no8(`+.rj}txH=ˈfl4_q?K5a{Tή'N\p`ςY/}X'eyo27\3v# Z{iZ !' @G^xIؗښMtKJ=W8=U,iC@՚4Ƶ#714 (3zvg:,4T~skN’ITtNGŃBi Q׎W{IL/-ѵ'Y`aU}=l>Q^&>p:4M3O…9~ 85İ!x-Tѡ*S4 @Gm!VP~=w b6^oڭU>Eqd($mtӥ$րn% ,@qjom8M Xqw2(%N)3ѭIkN &[fW~.N]N>6PVXD`ڼqeu)b%8c=I:kpWp~eJw ~%{ OjMI,߫afūi;s(FCJm9B15}Օ$ iN][de9=_;qg0nC;\ς:KeVӦ;l%_a:C|y{lH`_Q.~^jDJpEdq3aycb9Ya(-M _9Wdeƫ`-gF=,GQ\L+@pzळkTv~1ii/Y-Zj!-8˽]^oT؞i#op"cˈN/O~&֐Dw GA5f9+俊)ʒD]Xhoab?;p}Eh+~(M<3]*re$̝H6?fOUl^.Z*=p̈,S>13c]>m\une(|QK||RټjiK`̥\$CNQeB,Ι6j\)ewdF#~i-7\&#;*f:߽50Y&5՚Hʍktwr-qϰĜ'NޓƑnaҝ]}S;hOo/btjJP)rߣɣÌy6k4Ch8O sP^Ͱx `8)/h3? °/qt>&Rk ͕mh,ِ^Rյ:jC'?&Yʰ*Eu( Oå6I d / [cNNvD8C ~eujN;P/ǥa +$UVcd[ʧ`ftwfcdyv9=4ϝڀf@RtCqLoL`#ݘC_B[&߷>C/Fg ,%7^֋Zgxu u٬MAI[Jʡ`/5WTPLv.Y#g6mlckBFm[}]:a* IFhs(iKjfT+{j:~sקdN#VeBjH<ٽ>+oNէDP"lU ,oOYCˁ׼?jQ',SĀ\R% ,t:3qU([y)2q":6% C{"Dڤ85Tcx9]\;QvX|b NAHagE@b֏Gû Z}чLjFvC(T_40Wl:e1IC-bF 忝_a~u0?P95Uċ8r}TҊ=8E` zޒk$*[0}W2qKO $aC5zbń;xXDŽ..-:6Mċ.2*PQPN7/(D@еd'𓪇Bd8R\} ]uP) I8h[Av9ﰪ9e>Dچ؅wq&YDG}:k|@ Zg`UR f$=_"y2ߩ} gZݩR- 60VEdK⠔MPE,u!ʿHb+llfs1+o1]#+d*pqzTc{o2lfa]t'lڅj Ȼv78~n" hЦ1LP˩J&cpiibJڕSd9qұ+|lT.+..O&D@o5jYحj/j}:L"N3oŰhȜPР W|R[La_7RA@6pjw_G J4 L%p[qAq1D2E&\}a"ǛV hY^wI %)=,ObīUo=ML=*ٯ3áAkOdk O\yKSQ#Лhzl=W%4PסtlDndNn'a⒞vWp+!;NCpkg}Y@uB(v2|``ސxl1h*Cꥨ_5'tX&368[ b-4"@ ].+(6ϩ8c% IjVW-zm}{Σ_cE/ Ƙ3(h|sL]˱uWr60aď('̢Է&DOxR,Yr s/ӦmB,!Jrћl xa@ff`\VސzI$#  n^oac'EnM>IXDqͱFoWv:_MsIŜ) C 9EAݽS_NG.-K'9ҴA?Iӄ> ^+_5h*Mǭ_0Xk1T@!D#kxϱU.ںUowMA][Gno׺K68^f'†=UsJ餟R?d,tT8&s 7 !K6yc;~ߝU?/0ޛv?Ѷk5GXHZmNQ\J$~&`$0_vo^ʶ ,7ׄK,ЩVREN27#?&/.]NQd+F2"sūFOR%IGejrYReFN?6nyqjF H rڕ*ȾL&#I6,淦Tc-2Hh;rIID\'K`4`MP9lXʊ-D*)%Gv\1(+Flid8 I9}҆xr[bu(H:+Aqtqhٖ:?M.yzzj膓a6Bs~>@=US !II avo(܉yx6&4JlRJF]`]d\]sST寍؛?uQ[ӁB+qJ9LNM][V+EThA N՚ ӢSU7 o& >t-lwō*`r7C|e JVQMj9.L|˔TlzEGUrh(BjI8>Z]2=2I1Ox4ޕ&{-ɀ3@ٖA+ "'^ /ÈrenK1v3+hqA-$ǼHy=K2E&zj=1"70 ݐdz=Ā>N +J4MB*& T9~aG ^T5f)ؽjd ޠʯu_?^Ȑ1C:,tC/%fPBrA I^vB&H'ĴMmy\v3g#/b~xM?B>Y(vS}bAZAx\FgICAtschpTR*TBMfUst.c.r_%Nj~hd>HE%MS]:+fڠ|]Â+_qW=b@wLE6uw2# }3ΚFp) #U//v:2YlJ|'`BqSiOU?XL\lfV-UA3QO5ODۄ*- w 0?4ϱ<" yDL&NH!C:,.Qׁ-fiĺ?cun4x,~65n49Ωi|h^A%#XSj:}gCIN/u$e(7 Q{Qs)V`CJg[etdAus4G-gK.7@EXqbJ~' \u`Qy ;|ýN<8K;2)hnc7N?I>{M"t욅>=Y.s1wdGCrS c`^/.ni SP L>AH 3zb ;aPzܙE%@_k R{l˕4?yE#g-Ä́VaڱMR=J9|*jh)PBEDl0E5OU49II =5=$k.MH ލrZ:CKcVH"eC VNBdm1s%幨, OU%bKX4g'LlbBnGyǵ֖Kf0Y\0A)_VrDK!Ar2d2Tb4%+L ]Km/' ߸<=N\B40r eA ^z9>B<$qM&(z<5w1q_Lo1#X0)baG0J(m>C%݁ƺvA|(y-l7𛲰:w|i]Y z4r괨J@M> ధ(vmŴap& eK/Ht(kٛH[ZUClՈM^5v6hhV8u@fTؚ^ }pL~ͷ s*EiuQLCF΀r~z ˬ FBVb"{lt A7>Ye晁s!G* 4JvmOtR $FH{IO<Q`V[,LtM7!NGvE 6eDT#QN3W/R[qQz~>9`愍rپ {vtUo 0"uHH6[)&8U03@/N0~p9^H/I2=` 1l}Qشlu8;JQ( 8_~s`UNRxwwWx_Wqi \nD tTm3*R R,dmi~}wH٧#y+!f擂0_\/;kgjvH$tL;s𲓩 MyIK:6ɱg4(]]ضk]b" ~e %%nbGd И%-CjqB2n;^,#R(,9+jLaڎR ԹrSUo?i=i{+F^5* 󳄀Q.qaoU1bE>21mbuI !&GPVQT)uiD_wǰ[x0R~\b16/s)X~hyXczKKrIRƈSVf+EGF4.Xkܦd.Ӗ~}}WpP?$./\U UEaLEq1ב(~{B$;H?~~xYg4l n7vEz3L;8oӕ~4z޿MG'+hK^Vs f +\T8._d0JJome8,h c[iRәY?qtn|T,aJ= rB6M@^,ksDU/'B* eU'i"ʗH(-ddDZ<*O-屨XٽdkHln^C2ڤ?e&Nǒat 'ydJ=Lnm, 6`'@q3lL(C@Sk#6͞%!N{%D0fc'm搫6k! .qpX"kO"MfNw-5$ޠ كUgmcY%@vvkRCTK$}K:nJ3 xLYl) C)P!ԴGDE,} ]C2 񃑛gmZb[3ؗ0Gm?-WMv)I"f=Xt+O!{ il̈́lR)fzدp!sz70?XAGn! hw(Չ-ض$7p ^1w|kaaL;,nck{d#FLq;1ף7;_QIګ"{ / ^8К "(6&"q ƳAUQjK9Oţ'iTݪ'gmrfƗ m%p,0#n[ӈj쟇M~bylƄCIyC&; Rz1&慽fM5иloJ?iwyKnr% T݈](-ڔP1̭_P好rmH} 6FA^"+Y21%݉:9-yyG] a"=C!r1d-@bBlS X$A1#CS3lpP^'CixK"8h"8>O#|XsyF!3 .E &VX},z+\nܫ>oCϟ /׀_ɞOxΧ?% @>!>aILɒiAw.SBu0A00!5*=8 _]Mֺep Oկn P4ÊHy!WVLSN5g5oi3b"s;s˴8\Yu*:9}UK=7 Rc3;O}[~ \QD 1~%-a.'?*L57l &׭8Y+(b&݋jKPz'FgvblǾJ /X}y>4k5 UĨKBy v_9h-/P$M%ϲp嫄Msah tW`Jk /{VժEzψ@kIʸ}sҕ>p?ͳAt1lgd,#$]9Ffmt)qbJjIxQEdM: i+%uBP?|_Ap&*Fl1 0;v ب_ וf*s6߷үf(p8%sVԏ".KT5] YRyMzŵJ_h|vO/ F fZ|B).I "Dڊlmwhu.w_~ AL}ÿ UfLD.PxYdB4,tߥ]))bz|ӟځ`W)$Wљe@4x{5#܁v5Q#?eUw]s:ʜ]&N7ZDB\(bH_`x/n|^ѭZ)T5¤P7Tn15DeJQ~K& v̹M{&i ً^uZaʵkRnpHݑ~|OugbUo0O6kPg_[ˠ/_s 4A[^mG.)]C]VS/) Ƿ@0o#j3`vg~tt\Ŷ2Coa|wW~qp=To(ן[:`JoXTZc =J.z|MjkI?4[q1χ]b%F i :DlL{_^oDMgCţ7w-eʙE3;IEY2s:ks:YZYb^)$Pn,9r3ubrr%(ºTQw>];5x}EF^rf+Q^1 Z+yR)<D Y*ޛ (i|U;34vr!^PEo,DZĈA:XZYCN4SfNIh8g_>Pyv^Kfʢ<3%ۿIZHIBuɊ6 X_a{B.8<#0ڮ$r%Yqhx;wu77f1ю'F7a~Сy1ZT3υZT f̬Ǧu)W&㫑gJ*:ѪB} ' JYD8Ky_g*y7?td+>'e&u;5k3Ri` G# ¸ 6?7#u< @$ڴX3L.AQY: h^R) 9Z\c S.N/f$ 9i1=YtöFpJxR'y)|,F%3%(k˞1\֣9! R8xjύb BPcz(vfB?bZ TCG`Ds11l1SK4 y {Hd?ːmW{:|edKC:J+n;$cTw򏥈1z),TKi%;. }+3P~i1sAʝ[M} ,0sy@UG;\M[&S|MVM-d:z{1-'8 \X~ bNP^r7Dϵ綫ى5hm|m E-ZMܨd+t tGƢҡZE G$)cJӦŎ2~d~t׻+\GlBkx-dT&FֶUFޙ/GBX43B*G:ULSc\#/K1Q K A6EMmC+Y,oӯltڿ&1ǖtϷj'AҦc2asE Zt@b0UE ]D`&s?z )}qs;Z?3xsq|}WZI2:49Y9F%jVj`qtEEwZ(FdzTUg);4C'jܳ,k(ϴq1=PW~>Ң1RaG?pR(«2VR_/N_7rB ;nXΩ?ȁhJ׵ɰPW;@(1O~l[aC~ʢ)#֦YlOTҚJeX/ p; { B ѹ$ eSt{/I7L6XH&[ ʢ_7CR#p$/(WfHc1GϓboR SƐl7^% L }@K*_ ލ0yl(T1IgO &|Po*tGJ D75ҔLa^۳i5`@TڠxV0_Æт7%2]5B kLBne~ei# =קv%j*Z>n$ya+·qEc{GlyJ1L†h>$lkxevTnONYᯠ\C쏥rd_zGwjG5s9=g 2'4T1-)"៬\G{Grw(^l? 439XX"eZF6l\oۻ366#Ii-Xa}[vIqO++<2e`.M8\4ylрڒR?d0 8W\-cf3T#cgsHT-֨+6LPo/SE9]*TO#3c>PuB¦:- "_79$8P7 md܃>‡"%I9e,$ǖ8yܓ}̡;2a恡ό:: lbaOwh2 Qٖ"˴$̍d/!,`IWs@u_^<"MK[y'zS89ڒ9&#/+N|۴V=R JHP\CƱ5BˑD1$.ZH4?ZO}N+VNQn"&bH5"s!4Y$[D֞%8}BI"xo)hK\l +% HnaF|V\ e \Vkd&x V=f J%cU @GLHXDM~iBܵh׳cQMg''loLG7h @_s)yO؟g7o릟y%!V8'm[@a C#Zׇ-w:V?cFM)#5Eh8l]ԗ,}+(3OTO rNN[a֡ p%K@8dt>qL<^K-ᏝOt~ 舻CГu*T>FhS{{E8t;$Z3v'VZ ܻ햡mAa&O81 =hQKF_"7qz6<9o$3gJzo``b,%Zua Sj)"25;AwC>(}-Oni?/fz=ZqJxIW|cWUd+73b)WZ@+߰$zI|";f3jvOMĥY—*6\2e 1oX;IA@>K3c84r$1ZVbrw =h'qfBlpqoa*"=%&noau|CWw!l=^ƲK 꾬KfROZV)9"ͷY=lp_& q3WdKj`Y|BmHңGCx&]Afe'FuG a𼹩Ͱ,~bĿޢtH}"xrgDnz?YK,=ǏɲWNBfC88k# ]tUE\m*2d od|9],xlYarT)V$xw#p,e)rv ^ Zu\|w\}*U'M2e~>Ticw6bw0hQ8S E0fQ6ۻi%RjT5XlW A,7 "Y߅'+_Qr"ۏ{>px0 {-05> m̲,$bi:Ҫ4@qq|*eE𛽤C@rHjL-R(d|@P5VAbVC!Pnb3g8=l; JY9uȀR{rM|=њbrbQV 6\1 7`9#t;q@3azboRȑ۞xlElJ]cd^?mZo `c4˟`k T 0C|[9\9 {Ns]&uhC-qʹx;o]d [?# ]C1G f p)*0>n JCPwӫB?|:5Æix."*s-fջѕt6ؘRkjL\6* L\ՕB,ӝidb :nZ9_j):Mrn;22-i˥IȩT#i[ [?m;a{n &jdn>73W AnEzDhcW] ^LRh!OYÞUď|~S a%IJdI5 Ի /I(䠸+_sڤ+9?K=5ZKMb,l+؂r"D&qj74]ܲd& }ff/(,3US9oJZA2y`M)Ÿ%mQ{>z JM|̩;7*8pDٹ6:+K$utD8δ.O73qBu.kHІtt"93Āuo htg 5j!\&Q#P:nC]Ytzp7:s;z~[KWK, bs2#9~[ة햵o6}'~Ȕj͔^l'@UyR@ ﬊yfT,ᠪnbxٰFHyW|IRl{}0d/̓q)m2 jl/hw Y.Й{&G %q&Tg;-} 1ţA χRl~崴3No$Oo(gKsx5g뵎I 9f\Mƺ*#Y煤u+%4 ɢX#S/UL޹%wnA {fT❑bwBN<ƠT"lkX^QNmLw67v'c$גsAR2w8umR`XUB0"Kg4r,P9n! c\F`Jyj2e#]8X[u-jOJ1/J)fQ#S蘤<%HKѲcG\#4dˍ(ꛞĝK$DIQ޴n)WuH ./*nN|m 1.Y8.lbdufjYX7^m(\ "kˮ=nu%o)#΃RP+ݳX1)T#.f@{\yh_WjX~zaASmCT9(81ɕ 4)X}7N 3_"~"-NeD6? gMZ a];\P\Z>/iRGgpEk )6 `J4۸Fhn-Q>P/&cE^J.[CZ^TB)xcqF423%f;l0x r4Xac؆̎f ^ Dl?ݟ1Ҭ]˦ph߲]eS>~-7cmD||?^'utQX4`W]^? *b03ƧK$UEȓĊ|yQiav+V7oД!.q=WO#y;k0`RhR5DbK \ٻ;'Iή^zK71)jn(mb?|}6;:爊 XM0+1߰[2 ЮN]׶2Np9:<ׅFa54h`>3u0!9^5 0Q ;/, >!K8\dEvюtxV&NjmR6u0um.C11\3> 0 RF>[{,nTy1܎|;)%+C<;+xWE!X.9ح*ac,";kм*M%Dk{ݏO;$0}T~s,, }1AE{kdMh|N ߯4vIUR Y(q <9z@+e/-R}E3n1NP El!uIotFB`S YؤX|xQ]ٷk?֞̀fMS'˓I$l7y|pmAPP XOdw!،A;sP;E0\@òD,I ZCxSǿ0KgpVa! : 7@3pHX#_$zXļosi gܜI72%z `<@fe|\MM{!iS Sjz0pdq9 S LO^#+ݘm?B|[ n8Q/W+-`bkAc,WO LT:;0MFu: ~rcyK leJ5{$ 9=* R 07JmTEc&j!Z(i=DgG17$Bj7$DDNP~i] -rF2Ht${[h Ŵ.uc۳}Y/@7Լ'\⊹ȋ^.۔Ѫhǃ!u;Q$ K(5^MRʻ`H!Uϡ<—j^wK;RRN6 @ūZɠo__KGc BWhkaf_E!J:0fuHX]:sIe^n,B1:i=uׯk$ Jq'`$G˳;Y2 (0ډ6ns)[]~.v*CM+F rzOkaMB6>3Њunٽ1Liob*nl(')f&ERyu/ z-"2v/Ŵ 7 q1s_diH._SeWѪR#ꌈ]a('옦PkP|^b敧ldض^V^bIпW!H^kEary~@7e cU1t‹qi1;X}%a7͐G^XQrA[KubdE`y°Hy' zki#1YjE:&!ݳʻ^NS_Fd^LUf&WCI TbFBD>VXr'Г{kt)G\c˱n ֹ`#[c~jd9Sy@[%FS+-o#;$5oAGF0hL%}>:Y?cQ̇,D"f@,B"AMfȻo,Yf{RSFn65wI_x%]F,,ey <'<hGWW{7Z},_H(x?|߇?}Sf&0nmȹde /yXMydF'6X-`h?',a6S=%\@3,j&NBC?C[.͒ҖUJwOgOM7B'pʒ/ꘈ u_TytT؍J_k'ƫj=yHZrga+Mu1B$LD4Q b'r~@2%P.6b҃? N]$ޠVgn͡OMmIj&K>XWo!pшtn}4x#!S~Z l=Ei'C6s !bЊk͙* Ctb7JS:5XPJslV*3oS)vec3l2ZOuqYE{/[![$</;N$o'^G0?}N苹UE0qp=-'n\A-_:s2V&pTU4U(F>x6>;5g7HN W%q꬚<砃1:-UhRG%f'=mMhKV}qsG.^G\Ph҈(XoL)I醷{o9 k~~)@֨:0)F$|-z*Z,+3Ef6#J*P"@81W^Aw1"EJm{71EDkvb ֮Pp ;YAa[JBkoZRvmWdqԴ1^*ʔﹸAnIFC7t-AB cH#)za -Pct[JԺ/KCk#nl{AS)^<~#6rIwrStpgsm Ȱmֽ'ZL6P~!498@ lSxԻv>rgCcձEM)I0}*} cxit@:`>o1aSwaf"s)Cj5܋!ܥ tV) {Ep`@j) &ifg+2GF*Zq)2+%z3<[0Y.kz5 9`AN~|f1odDž ! , Y53# ~gӻS`D(ֽ:6F[*;Xg:,ЧW7b#ވ*5gZ7]MPxn. Ƚ{Tae!!z HT@'1B{d$5)dS1%Ae־o?{N$~|-5IٱҬ Rpca_lJ=aZmކN9{iCfW)O g_fмM\;&O us&S.0[m7F+P4%cpu~bX}H).Si{cRJU/fN Fc~o-LCr(9vȎ1mBI^#7ŃiDS:$r.o.碨E]P3Ց?୏V$h'ͦ '.D%AOr`):VU$,3\{=1*d5y#Q\c"7h֞`jƞЋ~.Iyw-*Ya3c_'81d?+ȍ2f?#Mb}v`n]j\iaS/kz8^Fc GEw)Ul[ 9P8tU%aBtVUqa(;^R0c`69 ݆ОpCL)I?Ыd5ۣ'ZIr7I jƗtXF<;7;&)jrdOˆ[dOQKwO8ZZ8NUta7Zd#l2VKeOSt h^ \'|k7  mxhd#!UBjv4e9{ʿ5Dj v%Ryk00NXZ?7X,vE`&C#O-gw3@"N69LQ"]LG6pK4+#4I;k5xDf_9ה'eS;io[6(-ǃ{NGRW3c0zF&c;6 ѳ]۹ɱa=.ށ=ߢǹHmdmKo(z;U td\6&⫸/4JKTI+WA-WLo@>î͘TNA!t2/ĴaN%eng-H3#?-v/az))'jPe,hs8 LEz\RܣdOy|ǩkEPoK~ҭB!BCnJ?^7;/Uģ;3_^.OC]V^"\WIF6ݟr[DBccMes<[}srKFKEm( $z%?ݴJf1a?L^# =z\ObVV{h[ĭc;q/\>3to&pVʵX\;#d ?>QՄm\#G_KIϸyk]H?- $pc 8RB2Jjl Aeb,P!ȰFA?Z<| H8qK:E! AWw@rq|wP@K#eY l -J`\c+ ڻ=acRg :{ۣ; zwz $V+x{OUcTg8yB nn"V:yYo:uxC5Svљa'vsh;cwx^j1ڝcŚ<2j(k"u0df(={(R;Щk:#u5˿"/ gs*R5rٍ.6|wXٖ'Tó R?P6C 0[Orȵ813d9u1/G@fD/ܞý/\&Vb-޲$(D <Ĩf2  EF+.Fϻ;OuypBϬxԔ+C?'es(iVNW3b)=փ5]Qo7Bbo=Ng j6nߣ#~5w,: lC4.fU0%<<˩#H2x ~ɴPui]=J= g4$*gk5~d 2T:XJ}^ןw`ZԅS&CNoMs-dWG8ގKcڰkJ"xe"gky΄#ܑEHЕIRtHeec a \#`u}̈́+7FS>LJ!њܱe DyQht \WE "jԾ44*{e,a@b7u6baق4=ܶEצ>B+J8<t섪0>#N&?=o^Lp~K}Ʊ AO:8t/u{@[^rk]K{rcb@}Cg9n\{JuwbV˶_?x$kf4ӏ4~/o?cΏ~!hnEk3)oddFu75i`ZIMC԰0ʦD0 ƳgF"Sory VE d9XƕG!(V3zj[[٠w`ST5zbd:%f]k~9By+[oSO}'ƲxW&D)xBԌFaĢD.B|)e _Azۿcvp"k 3gҟyƯ{̭;_I`MfJ%vP3+m]P\L%$H+rЄhڈB_'^XjAPxr3ey'rBy r-FG8C "g2εnGC΂KE;#ঢo5D\n%ԛ}swv($+@+ZK TlU1pw7"rc`m_0d+Q>bAA5D nGXQ^(<Wl,͜(K)Q0ƓEoz.˦^>t'}50{ZA.? =(>s1H.Q{kK+)WxzZ$,xSXV\^>h)Bsroz^g]Ң tM@e:/tiziݱ~ɋ{e~PDf!l'񇦅n'OZ~gT)gA+krxԆ7MC\׶` L8W<¯t)Ԫ7eOUOmEw˳w.$sԖ~MG3+Q`y9;u Fiq#Ŧ4T'F[ND\x9TϷ2>Z6cTIžl 7X7/7+Zv^ݧṭ(^@2mL[F;2 jWWÆ<{EHAL%Sk[nlM! O"#|˧@,`'|Qf;uI% 8z*92Tރ~tnY۵*;sU0LA,fLw3ِ1ܕ%ϣwHvQ9EV"ń~俉l^x3E\sN z3T!xM#kZ7r2B }%wǸ-*N[(>tzr$R`k}RToxS3KM)7׸-HaԐ nRuvWN鱐K{@,9*Nˤ~n8X)c3m}9Y+A;|8J'ƪMx|=+%~]Gtxi2~ ͵ctȑ)dž\ǬM{AKvt3Qc{GSM;ע/8tt!ɷ}\!Gsg-jbgK7a iA$ !öM[N;k4lbWHJeZ3 #ae=ص}MEk>.g1JMpD58kroXwT%ůajVɖf3LlI~9 _\2'ex_dhdOgD 3KW;=v%f6on8w`%,i櫢gͶ@>`#si@)DV?P|ԋI H}coY 4]%P\B<שe35.բg!G0zڍ]:ߘw$o0$?+%\Uro\ݓVo4>̒$1^F~=Iݎ(/-Z-܀טW`z\*lHEtq!d%ٵr`&W|@\R=]玉d_Iep٣MvqIզ1x|9! &_shl_$lw>'q0{-OCWVq宰[>&xpm@}kڛPVʰ|aK{o)d',xb\sJkҢgl(v1m0klxZ_%h;&XjY $zy#G6ک 5md w!qFH>3ML<@ƞO";g75nonQ"'*\L_ !jc$)tf3_@x蹆l;sۗ-.XhlhOek썉\vy(Z! nxiv5pDBF}QTP,*v}üۧf4>6TtꦥS"\oG/M"y(xmՏKf1ڌzUS,;\`E ߇ӍJbvM8/gL{i#@ouhlpxL\^ DIsZ%F0xJӾM|!1A)kkS.e3͗xXe`: eLA4om)w S"q3\zl;:4R+s_gdJ߭ނE sH3F ЧT$S7q/fJِ9~i EOϜ5`f#nx⡽1hKǓ1LϬtaf9|CXva >>qe{`$*rHCeJW3]@0WE4O50Eft>bY\~D84;6.oz3Twdl=[! T"</'o  GG0C#xՔPEAAVzĤ {Jt27YnfEj}Y$izs*cWꬻ6\B >i#svgʣְR⦆3M>-/zO;)$]A0CPBIIa1SIIyX'BADIV(6ZUwW%yjwq?_75S]mL_k⬀hM՘R9RRƪH(u1 |Y.]h`$+ֱUC02}nُ~4g@$[GE/.mƢ߽1giWNUåŶ%;j tU=rݡl_cCef % Hv4bIAhJϐL:5KdN&4RTI2UV! Yu6uL8k/|nzy_0H].-#bA k|Hwn,cz@Xyaf RF᪃1SZZnђNuݝOV@8&ЂGj!&8$ rGDX-ú }o r[w&Y #?cvX Fc'Ezld-8[ҎT ʥx_*N&,8p%M-zfJՁva1jXpJ@8SdyÏm*l[ oJͥxanWDtx(n]q: j 7+MXG:ndܪkQ0*nKm'@%pLG:ʏwASuM,vܟjץ 4N}OyвR"k^Bj kPLooITԐ[wK]yGFT ~sqǾGzz"7yM_މ\*/oh_D'l+$FL+It0eؗG _yI+@\@NO'b>_S,?2Lvp+Tqj)G=R ) v}p=80u/+fiw4[K†$4qb$7q_ @x{R21vm4q擾lcVFt Z>@Eѻ_sN[BrƋ̸8Y wr!C>/p3kw*Zd2Rmܸ1`Mk&9/kZybq䤟.. $CD p Oحd` ݹ˜gs1 Tԑnj̚Yu -luq烴 Phsx;*N+ڐKozCE=oY% x\rs[^*ae6F[-U98 u?ի$]+%Yq=:]wؕnw0'~ꥳJKD;VD!ǦuIcAUMnA^|GPX9 V_CqTa`s ۖ/;HgHGgGAddߢS0V00QT,zU*oeR*jq縩nj幪BkF*q1rpK ~ݛzvPq~")*H }ֺƯ8@@왃[;~w\F3RC&(t.:4/F)WE⩕Av U]Mokh l}UlwuvN/B,@7~BP8=w(7biUS:G 9 Y[0-cv;+.7ƒwp|4@Dm)+*I F*%6:4~ْܸL`%Dsʾ$Zh99 ~bbEE0\Mܭ=z2v[!& &6+ }}G<"nYicjsuҁ rwrHjT$cP<$) #ñ81uE(dj#i[UccI@:ۑ/'& X??4h7/b+v.j;0 , R 6[J0 3!KɈ8V"\cKD[[g) ZoR@8'hKbcj!ybB7^15VT2tSC)X!uev;aU2zs"v 2ŗf8Mo$Xpb̀*3-wp㛬"ӮR= @Z [(nXvOП*u4~(OP#Xice>Ŋy3ϥ+05$*JF6dwP= b|A/Ҵ?Tn&l4$LDǨ\CPTi_"vXdB"|퉗*+O)Um2cK ބg1KAQc3n$(g 9wC4|%Phhc5s-pr>6'P<h?MLp/o~g> qWE2\Xz|h0@2dMDr$6M.g-RK P1F r 3E !6>Om‹*@x-ijMq=jyeF0ׂPl& Bvn!^6g&zSrX# usbm9Y5OI ]F <~ZvW$C[˺YB3W / NȓKek3s꒏T<@ tpj!w Jʾg<#c3 iB'‰fd4_HD a$o8g8-7L&#m5~(>Eȴ̋r%d[nN'˼ Y.+~5Q{ϋBMT9i&q5lŢ3;4?\'rR?X8h_\&2D0}[A(,)kԐܡuhs %pMRV6j1*j M_Abtdr0{ ICr +"stzٮt|t p/ܰ+,ckh̗KgίvbbY^D3{=dnqò]%572SdAGjb&S~7Z2u~+{GP?x6F[{LG༐H9CU׸Ksx.g 3] CsCtsvm1Ea|$q?~E&g>-=ΟO[P80T1XR=*fyT9DZʄ&L`5K0CpRZ,-Ov-Re e--xs_i`F8Ȭ=,Je?|?W }TMq" )6Qx$1 D)/MaѤk=MO/,zqW4Fu&u$چ&"#A"!џjfg*ETveVvہ%E3Cdl:Ig2a x6 RG9Ѹ6囖ߘXL[7d$m}dTCiTׅo PlP㌳YBD+I v&r8?1H3K5b9Pu+k|2؎`~+ʟ+4 nb$U^#"={)TtzS g| bX]u31 Vdٲ#?ʏ@^pdRLi;t(J;Vfn \);-BLT9>TpY7x*(ǧ fbZG,-8Ŀkx9d潭&dsxk#l[..S^'&Q`7 D&7[OjcLsz3N}ʗqj|;-X[lSu>7[9%\yнͱYoZ{-,pZIsq18eqIuP$^5YpyaIO k[;@PkIS>#Ia DCx*A0 ;L#9&|q1_K]co o(T{nẌFn#{}[V9%7bY{ qIal_Z," N`Z 1>6W6NR^0(B#3^M LՎME?v 4+:-e8T5z)<|Krg{mImxr!W-Aw;EfdNjzW8Hf(2 Wkg׽>|'pg^J_RṰ ;~zJ4GKB&'cg/õW,vRH9!NエU񽔢LN)(q2WOqE_VVj}dвK02JcWqhؿ^#XxХ@[XMQ;mT!}_HD" Aw2/p5N{(PJX;*|WKВ-$J@~Zbj=ZH+82>%x SKfX@kl?_ň}6L~Ά6^4:%9+H_`l -aSȞHDA %P]THJ{RifZ* ?*{g~ CudbCb| kc"ѲYk5(%L̓aLxDtЙ$}ʊ^\zh ;fɴ.&*+vTStA^ ^9?ńS*ZfiʾFMUG*¾gUl4CC'Q0 >cnॏhnp5G+YM}CwDmMեbJ) q>rA!ʲA}{,yt(\B-+Bj6V+I~F.u6MMV3p=14Y; _*&%g ^~|ne r}{|G#nC@TV,qgH.Hx P0h۾Ʊs(6j}OdJ C4~kta%7q,v ғ9:s7䏾;[~XLBFɣwtţ9^{qqK1s 8p(6R&ko];/;`̠C4w/G໓ ;2G{k L{R$)w_drD s#Z n·Vׯ٢Y︯s%յ,lsH/#uR#}9*NFalX X^O@T!8k@:p)HXv'n_/%o\*Jz=819r*%ϭ?u֥K>?#I+tfלQ^Jd*-AW-JdHӼXPbsGļjD*n3@dmαf%OjF ՍwlE% I/0u䇐!}X\?0q?_,qhiٿ~ۡփܼ $-Ce:$pBRr0k Ŝ6wn[k٘bMusK}zMכy$ q:#TH+N1*?d1axJ_R1Z-p~y ds0Z&4>6XO-'-PG+i4gBU>3$SՁaTO/4CCE?-/a!]IXn##'M ZgNt܍+>`eOj-Fb1߈Q[x^*7$cl6pW^8 pf̢2g5Qz_`;{JN+޲9YpmN`5rHh5$&y!| s2|%]TabgCpS#iZc.YGДucfWebB*K%"z1i2\bk;hٖ0%:[}-{7D:4,0 +Yo'%EWMTqȏt{3 boeG+ͥ诸b cxKP&'%C~aWhK*),xz/k/LtX3*Aˁ\KM(t 3e.(N?nX8"TC.3 M^4f9V֏vl@ֵ#["z@OtvYΡ3 rܑ[ fjo@]_ό~cp#ow4\SDdd)\\2pJy^4}/@_J30u[Q9@M5RK6?>:Yߙv;]J_Rst>M=eD$ǂ_NmYNVۘbU^4{(osc}ݵRo8>ĭH:{M@GA|(2ɻS:fsv&X;k!5Bo.$ `8Dֆ1x/iZ_~!7 SO%eȅq۔64K8`3ؿdaE㙷b[UZJGƂ%Bun*U%N= TYf[N)u r#qTKcGi;*Ž4?dtD>#_da(͒^ nS/] ^fnOlw-Jޑ~s(-3CڍF㈬H{M0Ђ>p+fO*=5d_%WŻ`v`Yqj+ &6kϯFh7^jw4ϵ'yY`pCuR^QW&SBdl#ѫPs^DSJU9_s".#%UY9cU}<#w Yӯ±uyl䩟Z憿Uʿ/~s@(M-6q/AA6 >l? "Ici t ) ”xyga\DB|fyeb2f aţ*&9sf35@EOxP*{]4ZRgdŋ2FpH$5ԕh&aٰ0ؤKH\CVKFӰU%RVrUu㘞2dp G W-j,Oz.v3dM ,}SzL(AH $qetCt5+A¹ȘaDfnfZ٥59;xxFo9b x;Eѷ,1~M 8L}"1ZWB'^at}ot0.?4bq-F wfbwC:Np ۺ5~U)y`URvrY FF?\lX&󬥜p>nmR\!gkF3/tCo!K9j{tJPčhheÎͬeӹBN3(Lj5gr5&[FS>/9ɿE$l6 ,oiw5";=`NJ^_6*VIƃ?dy;.#`9U757~Qel?&Upj.ܐ=3qq(O)cv0,PAsKeګNPXO;vҪg<8Ѓ__~8K'(~^cq5! {[c#.)uNd#Bt z6ڿyR:9)ZPt`2E2Ԁ9J2`:5s=vpDjeRyB=쨋^կ /Dy^|K\LMs*-c仞aݕr;LO-?Ǔ `!XgwS`s/)4q?"ͧ+r%w"Y1!J똁;^tolʛYEh gECR1GSSQW՚dLTvdk)hŌt #bXAc%Ol>P磈uߚ-!)?70i s]1hシ"VTIPPVo"UiWTxCЬ;.Ol\p%&״zC}uTϹ<8G ՄܠtGf ZL?_aOj8, //y &U}5ӵJZ6*{Hcgmkİ=}A"avȡ{IOM=̰&(uOTݛ#z G˭@*!(sR({(Dv.-Ih+:R[繣tJܯ,= X^2PF0Sج я f"6%ީC#rłcMj[>X&tcU;Nv$l=H$D"cMaSQa"wg+wGvӷ$7B_r`i d ,wTzY1:! z ƺ%jD'Z'A81`h@JNuocD$7k:OS\10w/ O`Fj[ǡrc,7ڼ?UF v5<ƃs XdZ+3BZ]5Ԛp:r jT.7N#^#Sf lW@Q:5 55SҤ`~#{EHhH,Z0I~Xke8͛ʪK$&./1Lm{?5Р\ _XQӎvnj^4LIQ<[@;f|ۍpZ䧹,_.¸uЦz+ۧpy5vi*%,m.wGc]@ꖟ\?mX`6c{H&{ZԎ;Blou˸zB5۫P2ȹ KuF^,TsGsz̮uiP=#P.ys"YvdOho?f!E`o$ #-5D @4+n4@/\#~7F|E+1?,%yJSTҀ~b9n╤I䜤@&v7u!IBu1Xx,OIu;oFniȁ9r7#z ZNd3װC368^yr |WyeZ(#v';c;sQIij<==OQSXk^熡X!KzLaQOM^+z#qmC:@VUyVNM#Q^v( lc6YpttNc5`e3L.vջE7|MU²|$gb l,('gUFM}ͦ;)l9,8Z̄6^wRXc0ٽ۹> SȔ,@<*x% )b\fu謺~X6AU`JRV)rgH/LKKaგe? E@gˀRG쬪/џaSRVq)YZȔQkRFUPBtR%]Ɲ;A}ai7$cq׷f~JI&N3mPk"'!v#- yL+B]Ǡ֗&3Pr \6=쾂(tzeHՖeZz IBK`J$=G $`\ܟa/:;݅As4ǫN4C/&Vw$`Ѿ) CEmt-Kg[S] CZ+! , 6\qX 9ʓ/gAMY=%K_,3c4]{X݈/HϮ &f/+vta J̱jA8 *dhYX)M7vgp)MW 4Q%XP Ϳ u "eI[H?8au͌fBɭ*3luɓ Τ[p6M~LCZPY´᱊:q҅>1/9{ tz<bOfgH[_6-=PkJ6om$v6"zhb},JK]|-z*;(zYg'3tZuS%)D/( |0.1BhA\F 3>^.X˧J#4/=M(msZuRh(x*vcE`_~>0fw@v5VhxȚL.Ttw=3nkug[ߪAYkhogJY^:@&9F7:r's'-aXK #BRM Ŷ被)A@}{0E -;ǭ{Z`_>Rr!uY+%Z3)*H甧) x}٧EE5z'EƇ}uVr|םf]2|JNDjB܋w憴79BNqzo/tːQFC2jv'{9۔CR,0< I+ 6w8nkWa>cG+s~Fn8#ny ٚQgܐuduȴrHt =j5F˻Mg4C{3.踏܋w%s:Vo* >^Чjv{Kd [hHmϺ䐸fR6z\!p&) i}PPa?5" uDbųH:/OV̬ȿ4_ 5L%DGREXRwx yɣ>v2!l,22oEd=2M[;rHiA!zL,͠W}IlzR+^wf;waoc4aRTδ+ikL`Yr@j̗5 KÀIyz_#ߖd)rͳSvvqRa0EذShAM" 䮵 b>͵Lͭ F!p/!!QJmhBg,-Lz hUsbȐnkvn)0- t_c,Qp_wX>I[כvw 3Z֝ޡg /ze vj=g)FD'5.|Vc/U:Ց|.XT1Q{@(0͏7cgjOLK#m4R<ƈqdog~jNXIKD_KtaOEdjdÇ쯅"|rXp/C )i+1Z.融b2,t4imXVdĔ1bC1YXe!@;#Ӽ¹\C{& l)?Jvk[Uk{nH;oah2HΔJ/ \ÌB]QԸ!DxÙ15P2lAt~Unh@ ET&{> hHxnc:)\$B(WnPIt"ъבB ,t'`j̬ph# Å_Ro/LQPU/%Ãn 롖r듏? zrv%g-5ߍ?>Tqa0Z<@B,7xkg =r1& g+VG&Q!h9R֎wd ׵6맻"Pƹ-0$xt`pbJp׾>ᒓm 8Z:KcPbFy|dWMWk@QC7VDޱ|SZҘ } 4BIu'rhFXZV\qG@\J: xpGybhn|?*#7|])ތxФʾ A|1Jl7/p5ɂ`)!->d`۔AD#y41f]l]cLI>Y; oʿ+0P}B?#q.,RF^ BF=Xs2':2y}{H]Q AX:Qo1 (N,"l۵>uV.ZbQYCt=S{vs73эb? $M.|igYo_o _>T5ÎB=dcC,bLQ!8o9аP=V4YϰI+W>XP4_$uSlEѢsD@M̼ Ae~ލHn}QZ)z€bqT=}}%'X6祷JiM!S$(&^O&*FKBh?x"+9ExG{=g/J#fԜֈ| !0BjfTih6J 7.GJ u=+ɉІtSnt?cN;'b@Kh" IԞM oSe/u<17>=u ? c%d!Q EJNJY PZ*̒Nv)0QгP7a0CWJ(ut^dkdS: [>n{EzZ! Xje\A bc*S7q'o#? K6ޟTO 3U3/rP*1:gXV;gr4 ܵM&R%/5_3+Q¦ mJ(]Κas3sQK\~x<2xf@ZXi0:BpLcP)Cm ޑһMz-T[c 5cQLQҿ5 O{Y-(2 E vHaC9; *ʋoDI\.}!^].s0%\-^lMo`EɒR)Z 3ijB=>MK7A6^vǢ6T% [2?g m*2?|T>וH(PlK1q*b rΡ<'m:}9FvC,|*1_߻jK^3,E+ [RX \a֕(ɤcδYI2DC:R]X[K Ł"vL[7GjmA'q%YPt :9JXRY1}N$ "d΃sC4RA^]?ݖK bJ6Pa6Ț0 Y6- 6H >^&{cHrrYcRF,:2{b^phRaZ_r?zse{յ: E}4񪥽/sY } v;$S;A$# lg7An@M $Lgf$:>|s%hz-2)7q$9U5:=ɠ"YnFT^¹5 Iܠ `1j_J5;XIdZtTF ;st!5NN&US{*o[Z&r_tuˋk[ێ{1:oe͆D7 9\jmc"Z|&c'&4CI.t/ ŰE{"<;ɯ4W |pЇŠ W푌j$L򸔣 y T48ptT̕~ z8|,n<Pk l%{oN-m(h|Lj4h1C=)?ʤVt7k O rC*-U6@yh~P\`60QC37:kW9/)Q猔?.Hkk/^AhB~MY> ⏇L 0:ﬥ(A $#ePSqi^v[K$qN]fHwPi [\JrKWY߰]4 (FVjp|eh҆(VחښĹv+|zԶKkng~L)Fq#W+Μ!߲IRV 4ꦜ$HL8j 1v(eI8`͛Xfވ(1yE~mI_entc]@d_B)0VX$<6/y~n% #K|j Bd;e b,tN3+sڑt>is֍`2*W,(>n@7g4c:bBaEg dReO5zAJIA>TPj!;]SƣN:Da"!vH/jV(d50쀃jYrb* -}R*>ǑHfz$~+Evk)se4a2J]78Wň>ğVΙv'罊c+LnǜUsYL7m]>?m)U}}Az!6xB ݆gN7w >ˑʔ9w:"#D0OpC}S#EiH CA1M?zi.ӊSFFviqWOg_DT B]bvV@/XIj5}tz3+hcTp-hDͷ꺉2jxޥ`n-7Ը=UpɺHWd N:u$WiB1 XV٨懏2\ ǝ KTRprc'*]#Kwq_v<ÿgSN'D^D主rrdvB(WT*FL_[}Č /Q[d)SL9a_m|3UŇ5u+'φBm*7 r87 9@OF ;^ Gf)#\ , ܜzi(!j i]7zsd}L@24 `O.6a]6{G{1nuO_5@<镜]} Ua]Dn2A$dV\1Lq yy|{cQ4LHdYuY}z&8\k)`zM%T5HLh̘6l 3wps{*D6ߛVB_uetJ'kMPChzh<ńP5zHh 2zsbiǷḲ23- F].<6o.<F n/QG* )*b Bjֱi~k'/Wu{D@ܟh .Q jfkY)j)p,@6 [ 냟N8hdJ1ɤMvl;}lr=$x냬y9_wDķP#C=X|2Ls'z4R0հGBt^`jZ$d&'8x7 [Nɞ'JʝWpzEw˶s(g ͤqQBE~';O:g ~.oCh(Ye==hqk #ߍɂN#JIbΐs 821ϛ+ni:tӖi=?:}omaQ@>>GEO %ЯĿ4%7DtMO /°wK#wll[5J 0j"m>^g: KTz=r.iGDt55v[؟D%gi{`R q/m=lf\LP j`%G(ʉWŮ&z<`+??XVTL\f0"ȈN$qԹ{s,pwͮX,"OKWICoon\p`S4J~&~Л %OcI9AKb mj *[YQu7C81G̭nw}5Lɷ&VFNِҡFd2 Wdo;ht['0Peˎa~"&qW]&u)!>I?J|@߸'4՛99\s~ӳ>*ti%c^2EC`$6Wʇ.%,1C,zSq:EUEC N'OƧ ZHX0ٰUü$j_+<ң J60xg\ zRۻ~jJ$ag} T>.=Rk"mNq95i#g2}tqk$l?J=^ _`U9LRZ{EpTuAvհLgYqq` !Ojį|vF@!1}DTTANt iuBΤ*NE%)N7™[cMJÁ+d)ll h$ScZ$3 0YQsa% 6bfqR𤽸4ٜ]ݿ}A>L78#sg-ND  gCDr _4t (A̍&W*Tp޺уmCcp/QإO%5@F @f\SkS9b~;G%SSf}cnTk-b49:Eu/ÞMs 23K^i&V1|,JSj6^343R03y/;; ӷ`tϾHw-4I]L6oeOpkih&~M;Jj:Ѿ~ߊ}8b!CVH?_ nXaI"#P !dDR<:{~|t<8#dvv&Mw-@fH 2NI@$cQS@N[c+܁ha59elLFDdbi\"4]<Ԭn(/GTSoT0ZCONinZl(94/MɃz]e`3 sIC/swh} w0@j;A):r蒙/uUK7|>h?&bd-4cd'4lhvFNllwT)eg6e(c]IeW#cSHBA 9Zya*jȎFڝwM{ZCt3Jؐ[CHG.8 )`}<vU\i;x IEuؑr=T/-wtjQֿFk0{ w}!%:DjJhKwfHA)Gt6x܎3@Zqxm4 7FuH_bع6DT%Ui ^U8o퍏`a4l+8)A^" \[* YD֡0 ӎVnW -UAdY4/׼iʵv{|gotrwKOq*4 Ͼ6F QstOM$T'&CdJ?ؽ9$t˴&Mtb&A|j 2LK"SH~X:Sv139.2cRo3 G;$m i]+>29zB UІ?\o*#-A eSk#s*g '9!b&Ý+h72icuO1`|u8ea6?go@szƸuJqw]$)P%% Yف!7H蚜x6^'6>Z t/5km3(R_9žʚSll0z⬀H <ص7hh}LK"$J~߿>I7au~O-Zt8D_xaΖՠ냾! wQuy+4fV4ꖱ;{b]j!(wnCcg":2O;Lh9bO޽5^@+?ȞLUTHn1D+4'zGAaY;cŷ]P4 mʯխYt;N̓؝WRӮ~S]X( HmY%Z}d!o5[r R` )fsRO Y ]2=•ŕ]C7k qm,a0m[YVAb3!arWJ2-X鵯,L]U d0bhYtߐ-E]iUzPq}U62n.5Z0DYk`k0PUғ!G$@s H&Ј%NK|=&+P$>BlQEpM$xF%ef@zLLNchD[.4>xO:)p9M`~D/6#ɍ Wj+c#RϑX]з7_( nzq&951{Vsa_A7Ji\eGeT̬=U}&Ϗ C-G4`93dٴr"vT*lXpmc`cB}(B}`rm>Q0{[ٓ÷ KKcA }SXTBt -D:A`oY?Jg6Q6MCj:_,f͡G씭p7Di?N,.rhxP.HTkR ^)2 &-yג^2*>%fLۃ땝aȌ@{Fă28X_,ʦo#P4N59c z/.^5*]^?γwnS+ Xi,#+RJ=1lj\ d2`1;7-jLDbxͺC@I#~ͰgZHUgACU`/MTQ_ZQٸI:`h90h[D1n@IUGMI8c,DP9է{uHFY`eLEq0Ʊ3&K١ :A{Wt#-r˥fg9Ţ"f`c|Κ9 +Y(s_mrClS8TiFٳ)Ӳmj yYg{7_6LH.%f ^hq$^VxfU6FG92{lI5~12 )X6 F aq+-:oP0&QCo'Ӭ Էxa_ 9fI-BV_\TG^S6'p'Y9vW"㥮=Df Ǡ4A ~6 HƊ^2(($Ep i[53MqiNj*6s"h}P{kEbhIcfm48C4$Ѹ(#16[Brٝ*:FmK-F)IF#?MjIJ؇6j {bJ<:͹INU? kIz !F\ٓZw5JGW/}Yl#%HM=E6e9=hʯۺbvVnq^$ٷuġ{N$qFtjhZ<_QUgGIh3T(xU)K>oroq1V!mLt{&'/z9uC~q;v4AV>"^".%zv]\1;ڗAЄFp6{e48k@Ic$MSfCDջ- x<ƚ 3=9-x7;嬽i+ycLe-Zu5J2 ~Q+8SN㭇˹H6Ah0-\4fZȔCϨޯ +K)UB&f=⽑,CRߙB.tt-p| x I!>.{I C#[ nGTS2LQgtDQ^2kI?bv=w=L*/~ yb>ez%@ٹu `(/+T`k5+v_t35;W8C}|rbdﲴg!!$PK ؈ TZ||˜5]KlEDP1SG ]P*Ӑ0#ی<7|&}٣TCDհW~i44 buFI-ͬsnbs7(.KK@Gjs&b~ ULÅEiɼٶ74$g鑸t03x%&, 2Lnkm./gg6hҔ Kߴ+HEU37(6HFDОk7̳a~ o CQ0st\FK>V$2uxfyxި o1 9xd8E&y#ўi {JW]y'd,{Ө+F&۞H[|p7 UNgIm"p(OӉт F%F~L Z;d=[,%PDI.D^':s,조 K8U?\n%I7%<$HPKtp\@_sz!zGY Igz^~/N$ICCJd*Í|/Bj-g@rj^ _{X٢uG*-i5'waonG.5ˮ6,vVL{@;5@;WRJy*?:P gRy9 4&]!T &*y9Q~}Lv =AaEUF6z;b8X7A_]fup&8%ib"̗ilɲq5zMDl՞մ9^؍֊ع+^,742Y[6/-b\><ɕ>%\xnX89=M$ U C-&Bk}+z?Ȏ ,"\IM{MNdn̚x꥙j6QhI,P`Q;v$GcVk6۬;>jF7uoa\oGe,fE}_~=pҵ$>CPS߄sC!&:3zCx)L#[0TPA)Zw魽hJ qƉLޏHI_p?28)= 7{s_GR~L9C*=v#.tLkG|abʫRm?EBZegE4~ZKm*aIe!pL4eOohnEJJR!Zi՘:^޾GmnI_W|(.:.B.F2R2Q;݈BYTbrWoHqX2vE٧l<+svu/q>("'25} MX9 =7tq2ǃ ۔߉ƃM/=`"n1 [M53&! Q:x>g8+5xWBX9-%l ~.F˕q*s*hé܊x&ۤp5 ?EP+ҡ!nkNC v#p@Ďl_p%+gJ_u

s*uX+'E3ZoWE^zU4b誅 >x& Q9dd,: <ߨ3ty j@*Or:M;xaW4;ug:վl+YE"fSSw / W1J;mV;QlM>1˭g> 2I P MA#B> -;CMx.u+eTzE *Ιòv6ꔷfq}OK/`?l`Ic8[> Mg#TQK4ZU&5':Ac.Ak @A̾9-RR.›4uXi#RgP>ޛ3E !" iE~]_;[(biV>6W‰BREBGՐNҹ9"q 焖d62];&Z7H;CYj`Y[.jy6 #0Q,K $@?xu(UW0K ;WSժM&EXGkH V}mq{Z -1O>zd3YZ5cԑv`f2N:sXR{suoϝ*dӢ!=d;$%rC-9bQvJƥ|XH⮑*:!(ҍۖK+PJrŠ{d,O 9~ 'ANxp!ҙd!לcXAYd1Hױ{(n S)U*% t· _38\̆GfS;ɩC"~j-Q BF2EƗ,'H_~țk}Uț }m|f֮2ĉI`EBHm[w/T`dLx340^Js б컠1S'l SIC'Lֿn[/>$v|aHoHz;gLo>!i f*rʀ]OEtobKCC d`XChЇ}i]O)cZت4bCYg!J͞l5?E mD1jQhԒ 6.Rdvd4]־JH{_27c軏`:v>}akhA:5L`ZY}Zvt 71&NX9\J2-g*9 dlI d 2kkd +XP6ڏR`(ʵQ"qN0[S3hKOe:V>ب_NY28犻պ\hS^$6aZ6[ =>Ōv:8}x@"/Ռk?Y\L8 >O7SUՓߤE(*!xF̃)VRтKqsr2Q+Eᒐ;6$JfBZ}hYGk}X![d6,nN$c>CJ AH+L%BOLuXFp*,캮pyP;!fnrC,7 huK|_:eƒR0{1Z<>k]i }bDqe(w_rsSYbH+g{ʅ?{ScYc%L>7 ɣl-  {4NAM0HK9K=$X:-J*[T1-ٓ!E6fM#C̎]bQ#{k ~I1Ig}bְ+@ΪQvy _x[+(4s oyW 5%`AY/DP xNf&ݱ_"zNjD!N\W꫺0z!Kڔ;4aFrbBmORr\e[LvHV蝶 h&2*}]C$Wd @FBMJTݮ]ri$ئKq|o&QI(F_*+s`>MH#~[mFr!KG9H7_]~B97Yǚ)ӣg(Q|B}ܒTa`Bɼŗj̕ P=S;xݣ):[UO"|Zɛ&j^` K> tIW[a \ /Vf qz_ {3{#Y_^&傸_=J^V,lBǾ$C#AteeSH?9kR!JK ]8hq68%se,U ϪGbs}qQ5i=<ľ(B\c 0jH0 `V NǐxƦ{ןT?5Z><@Ey bx(JOa bb_zսJS{bdavl1YV+DJ.  :*C x̀TY]{1ᓎ9Vnj%Bw;e#z(d$0 rZLe5cL@޽<lӓLXjz''1OP8 %KhUf6)vF˙Cq漭r^/Ѭb ph2^3PL@$4A j^NŌCk`0R }dmf?yC/]Tb<)- (F-x5i=HG/LÄNF Ct>YōV[I #mmvq/hVHIIA `KMu+oúy5Ѫ}p{/IX39a jIS`A@x-yfk'A(j(S@l5K ro$ wBΙeތ{ޑnц3І{־e#15ܛU Q<@%]ve26\7Q}磱3Jv&B'Z Es>*=ī7l.g7xvB_E|-P8"ͫ:*?h6fC3=XNiǞi[ Jii{&(48.lx$8Gl/^(%7` WgcDBtqpJw#qȺ2}! qJ)lˈ0Mdck|v}JYߦbrҦ-P V@j}4%i9BT|K3?iX@ y((SKP4k1M w4G PQ陬&b,7Yu=TTMH;U܋շJdjGй4OK,oR(ҢLu9ee߃ rù]YWq3[ŀr~CHlt v)be L![k02 =gvsDC^oD̝022ƞy7 ~?VfKdVcfh`y"}Xڎ"tr&yxgɓM|r8xv7w~2^l5ċ_+>m"XBr.ImC٧+G:K^irKykά%[\I>fR3.F[Apk Aѷ QM< Eݬ0k^tAjb(!(AU+,~;%S.WˢtةV/?ӾA מGdIǔ~N{.Т kBokgbG{:@f6𱔘 jŦ)gBUB|Rty fnkƊ}/Tѝ9Xե oKyP>:wO6~rOuHA&τr=,gU25czt???!8 RNҴt*LZbVÊc(y]5>&mA%4 vDSQMQ LzW%Z㧜 g8"/V⥿K'AS˶d,YաYK*Nc2 Yl>f rz&w`$m_gh%-y:x7Z^? h5F|l|A { DH F|q`-\꟦?5si/'MDY{#pAj.9ޑ/H&e.s΄(Rex)B•j(-ˎ&zD'k"@SɨbAW Zyfa!A're 0Y s0W;G?yۢȿfX_&+pZ;1nlwFIc> Ƀӆdϑ|ل0O3hTw_?K:K&V/~IJq|ѯ~,aLqKD["۝\D yߔ{me[V P@8 YZ