redis7-7.0.8-150600.8.6.1<>,7\g9p9|,P=AQЛ4Y[[Tz_΋ _;mżyNP 4[sԏ-q.f͗sQ0n}-ͷ$Daх^z6٬ {sk Š>(tuT錣 do _@o"Gб8lFºTBM.d|XS)"ÉU (i;3kB66D|KXJ*"eObGA;b] 6du>LeP?e@d   :6C Yev|V  *`   X  l'L'''(8b9 tb:( b=Y>Y?Y@YFYGYHZDIZXZYZ\[<][^];b^^c_d_e_f_l_u_v` wbxc,ycJzddddddde<Credis77.0.8150600.8.6.1Persistent key-value databaseredis is an advanced key-value store. It is similar to memcached but the dataset is not volatile, and values can be strings, exactly like in memcached, but also lists, sets, and ordered sets. All this data types can be manipulated with atomic operations to push/pop elements, add/remove elements, perform server side union, intersection, difference between sets, and so forth. Redis supports different kind of sorting abilities.g9s390zl31UGSUSE Linux Enterprise 15SUSE LLC BSD-3-Clausehttps://www.suse.com/Unspecifiedhttps://redis.iolinuxs390x 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 redis.target redis@.service redis-sentinel.target redis-sentinel@.service ; do sysv_service=${service%.*} if [ ! -e /usr/lib/systemd/system/$service ] && [ ! -e /etc/init.d/$sysv_service ]; then mkdir -p /run/systemd/rpm/needs-preset touch /run/systemd/rpm/needs-preset/$service elif [ -e /etc/init.d/$sysv_service ] && [ ! -e /var/lib/systemd/migrated/$sysv_service ]; then /usr/sbin/systemd-sysv-convert --save $sysv_service || : mkdir -p /run/systemd/rpm/needs-sysv-convert touch /run/systemd/rpm/needs-sysv-convert/$service fi done fi /usr/sbin/sysusers2shadow %3 <<"EOF" || [ -f /.buildenv ] u redis - "User for redis key-value store" /var/lib/redis EOF [ -z "${TRANSACTIONAL_UPDATE}" -a -x /usr/bin/systemd-tmpfiles ] && /usr/bin/systemd-tmpfiles --create /usr/lib/tmpfiles.d/redis.conf || : if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$YAST_IS_RUNNING" != "instsys" ]; then /usr/bin/systemctl daemon-reload || : fi for service in redis.target redis@.service redis-sentinel.target redis-sentinel@.service ; do sysv_service=${service%.*} if [ -e /run/systemd/rpm/needs-preset/$service ]; then /usr/bin/systemctl preset $service || : rm "/run/systemd/rpm/needs-preset/$service" || : elif [ -e /run/systemd/rpm/needs-sysv-convert/$service ]; then /usr/sbin/systemd-sysv-convert --apply $sysv_service || : rm "/run/systemd/rpm/needs-sysv-convert/$service" || : touch /var/lib/systemd/migrated/$sysv_service || : fi done fi echo "See /usr/share/doc/packages/redis7/README.SUSE to continue" 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 redis.target redis@.service redis-sentinel.target redis-sentinel@.service || : ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_STOP_ON_REMOVAL" && . /etc/sysconfig/services test "$DISABLE_STOP_ON_REMOVAL" = yes -o \ "$DISABLE_STOP_ON_REMOVAL" = 1 && exit 0 /usr/bin/systemctl stop redis.target redis@.service redis-sentinel.target redis-sentinel@.service ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in redis.target redis@.service redis-sentinel.target redis-sentinel@.service ; do sysv_service="${service%.*}" rm -f "/var/lib/systemd/migrated/$sysv_service" || : done fi if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi if [ "$FIRST_ARG" -ge 1 ]; then # Package upgrade, not uninstall if [ -x /usr/bin/systemctl ]; then ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_RESTART_ON_UPDATE" && . /etc/sysconfig/services test "$DISABLE_RESTART_ON_UPDATE" = yes -o \ "$DISABLE_RESTART_ON_UPDATE" = 1 && exit 0 /usr/bin/systemctl try-restart redis.target redis@.service redis-sentinel.target redis-sentinel@.service ) || : fi fik6Py(o]Vu /Y3 4WA聠@큤A큤A큤AAAQhXgggg8ggggYQ[|b{YoUan^ ,`?7gggggg8c~c~gc~g8c~ggg79b7e3332d59780365089cccbe9837528635ff45e3d4b1c93cb19b13681573e8b17fedadc4c02406e4e59f74b2a087eb4da3592292eca15764850f0116036775b9d1ac8ddf7ad2470934444d7ce5b0b1fd0b548bc86b91fae82920390b113e2bbcb325dcab0b157b25cbb130dbe0d033d53c18ecb8c89664097ac1e2d3d795436e440fbab97169f15d35e9e37b1c557dc7f92fd8bd6e9eae78de89bd61d712a67f99bbd464b4edf44ee341ccb9a714e613038fc2af8989be1f3ff6f7aff127cc0c3b9f9e75d23bc600e9c8fd2da71029642d41a4b98f4a44638d98d15ba58817b3382e6edadb3add1298f00ff516e7a422f8aec2c4fc55bde05736b5726ef72ecd973cbd79a5155d58f7ea2ee4a72dabc91098089014c3120b41a66781f80a2726616e7d30e8822023f2c07bad93fb74997d8f27c2afdb3f25677db23dc8b2a33c1707d70f6f18ada82c9519054d1d8251e01a8b217f96c786b027cc5500ef9fc86463ba975f48ee06232095831bee64558da078c5619f0a0ba9b5cc4a2f78f6f59a1b86a84ef667b76169c2f318e1f958a1bbee3f18dae5f4929171955e81c215c5468add2f51c3498ccaca42ab5b9c3a9aa7da10613b7b0a401b7ae9b96d9249d6babd4e68dac09df348aaac507fff3495caab4a15a2bc75742540ad0c646deb21e1e2aa759603654a7589cd7f190128d56b0ff8ccc8b6764daece4b88a2a40b0dd129597c05faeb7f9f1147fc65e1f4d6f4792183ae801ad60a02035dde9297f0a15b7bbae580d2609dad2e11f1956ae167be296ab60f4691ab9c30ee9828../sbin/redis-server../sbin/redis-serverserviceredis-serverredis-serverredis-server@rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootredisredisredisrootredisredisredisrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootredisredisredisredis7-7.0.8-150600.8.6.1.src.rpmconfig(redis7)group(redis)redisredis7redis7(s390-64)user(redis) @@@@@@@@@@@@@@@@@@@@@@@@@@@@@     /bin/sh/bin/sh/bin/sh/bin/shconfig(redis7)libc.so.6()(64bit)libc.so.6(GLIBC_2.10)(64bit)libc.so.6(GLIBC_2.11)(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.2)(64bit)libc.so.6(GLIBC_2.27)(64bit)libc.so.6(GLIBC_2.28)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.2)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.32)(64bit)libc.so.6(GLIBC_2.33)(64bit)libc.so.6(GLIBC_2.34)(64bit)libc.so.6(GLIBC_2.38)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.6)(64bit)libc.so.6(GLIBC_2.7)(64bit)libc.so.6(GLIBC_2.9)(64bit)libcrypto.so.3()(64bit)libcrypto.so.3(OPENSSL_3.0.0)(64bit)libm.so.6()(64bit)libm.so.6(GLIBC_2.2)(64bit)libm.so.6(GLIBC_2.29)(64bit)libm.so.6(GLIBC_2.38)(64bit)libm.so.6(GLIBC_2.4)(64bit)libssl.so.3()(64bit)libssl.so.3(OPENSSL_3.0.0)(64bit)libsystemd.so.0()(64bit)libsystemd.so.0(LIBSYSTEMD_209)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)sysuser-shadow7.0.8-150600.8.6.13.0.4-14.6.0-14.0-15.2-13.2redis4.14.3g@f@e@eod@d~cc<@c]c @cV~@c*cbK@bb@b>b@b@bzSbzSbu bi0@aKaZ`]`r``7@`~@`~@`L@`@`>(`>(`6?`6?`&m_@_ _[f_^@^ϧ^'@^@^^^@^@^^y@^r @^>^)^ ]@\@[@[h@[[[[v[E@[#@ZZJ@Z|;Zm@ZN@Y@Y@YJ_YXXX WWWWWs@Wo@V`VQ@VU|@U~@Ut2@UW1@U/@UUU:TܕTT_W@antonio.teixeira@suse.comantonio.teixeira@suse.comdanilo.spinella@suse.commartin.schreiner@suse.comdanilo.spinella@suse.comdanilo.spinella@suse.comdanilo.spinella@suse.comandreas.stieger@gmx.demichael@stroeder.comandreas.stieger@gmx.dedanilo.spinella@suse.commichael@stroeder.comschubi@internmichael@stroeder.commichael@stroeder.comdanilo.spinella@suse.comschubi@suse.commichael@stroeder.commichael@stroeder.comdanilo.spinella@suse.comjsegitz@suse.comdanilo.spinella@suse.comandreas.stieger@gmx.dejsegitz@suse.commichael@stroeder.comandreas.stieger@gmx.deandreas.stieger@gmx.dejengelh@inai.demichael@stroeder.comandreas.stieger@gmx.demichael@stroeder.commichael@stroeder.comgarethmccarter@gmail.comilya@ilya.pp.uaandreas.stieger@gmx.deandreas.stieger@gmx.dejzerebecki@suse.comjzerebecki@suse.commichael@stroeder.comandreas.stieger@gmx.deandreas.stieger@gmx.deandreas.stieger@gmx.deandreas.stieger@gmx.deandreas.stieger@gmx.deandreas.stieger@gmx.deschwab@suse.demrueckert@suse.demrueckert@suse.deschwab@suse.deandreas.stieger@gmx.deandreas.stieger@gmx.dekukuk@suse.comilya@ilya.pp.uamrueckert@suse.dekukuk@suse.comkukuk@suse.comilya@ilya.pp.uamrueckert@suse.deegdfree@opensuse.orgmrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.deilya@ilya.pp.uabwiedemann@suse.commrueckert@suse.deguillaume.gardet@opensuse.orgilya@ilya.pp.uailya@ilya.pp.uailya@ilya.pp.uailya@ilya.pp.uampluskal@suse.comilya@ilya.pp.uachris@computersalat.devsistek@suse.commpluskal@suse.comrmaliska@suse.comastieger@suse.comastieger@suse.comjengelh@inai.deastieger@suse.comastieger@suse.comrmaliska@suse.commamorales@suse.comeshmarnev@suse.commpluskal@suse.commrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.deledest@gmail.commrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.delang@b1-systems.demrueckert@suse.deledest@gmail.com- Fix CVE-2024-51741, malformed ACL selectors can trigger a server panic when accessed (bsc#1235386) * CVE-2024-51741.patch - Fix CVE-2024-46981, lua scripts can be used to manipulate the garbage collector, leading to remote code execution (bsc#1235387) * CVE-2024-46981.patch- Fix CVE-2024-31227, parsing issue leading to denail of service (bsc#1231266) * CVE-2024-31227.patch - Fix CVE-2024-31228, prevent unbounded recursive pattern matching (bsc#1231265) * CVE-2024-31228.patch - Fix CVE-2024-31449, integer overflow bug in Lua bit_tohex (bsc#1231264) * CVE-2024-31449.patch- Fix CVE-2023-45145, race condition during UNIX socket creation leads to permission bypass, (bsc#1216376) * CVE-2023-45145.patch- Fix bsc#1212119: redis services disabled during upgrade. Whenever a user upgrades from SP4 to SP5, the old package named 'redis' is uninstalled, the new package named 'redis7' is installed. All services names 'redis@' are disabled, since the file redis.service is no longer available, as it was removed when 'redis' is uninstalled. What this commit does is remove the "Obsoletes" line from the spec file. By doing that, the upgrade doesn't force the uninstallation of the 'redis' package, which does exist for SP5 (both 'redis' and 'redis7' are available, for SP5). Because the conflict is maintained, it's impossible to install both 'redis' and 'redis7' at the same time, exactly as it should be.- Fix CVE-2023-41053, SORT_RO may bypass ACL configuration, (bsc#1215094) * CVE-2023-41053.patch- Fix CVE-2022-24834, heap overflow in the cjson and cmsgpack libraries, bsc#1213193 * CVE-2022-24834.patch - Fix CVE-2023-28856, HINCRBYFLOAT invalid key crash (bsc#1210548 CVE-2023-28856) * CVE-2023-28856.patch - Fix CVE-2022-36021, Specially crafted SRANDMEMBER, ZRANDMEMBER, and HRANDFIELD commands can trigger an integer overflow (bsc#1208790 CVE-2022-36021) * CVE-2022-36021.patch - Fix CVE-2023-25155, Integer Overflow in RAND commands can lead to assertion (bsc#1208793 CVE-2023-25155) * CVE-2023-25155.patch - Fix CVE-2023-28425, Specially crafted MSETNX command can lead to assertion and denial-of-service * CVE-2023-28425.patch - Fix CVE-2023-36824, heap overflow in COMMAND GETKEYS and ACL evaluation, bsc#1213249 * CVE-2023-36824.patch- Change name to redis7- redis 7.0.8 * CVE-2022-35977: Integer overflow in the Redis SETRANGE and SORT/SORT_RO commands can drive Redis to OOM panic boo#1207202 * CVE-2023-22458: Integer overflow in the Redis HRANDFIELD and ZRANDMEMBER commands can lead to denial-of-service boo#1207203 * Avoid possible hang when client issues long KEYS, SRANDMEMBER, HRANDFIELD, and ZRANDMEMBER commands and gets disconnected by client output buffer limit * Make sure that fork child doesn't do incremental rehashing * Fix a bug where blocking commands with a sub-second timeout would block forever * Fix sentinel issue if replica changes IP- Update to version 7.0.7 * Fix regression from Redis 7.0.6 in distance replies of Geo commands (#11631)- Update to version 7.0.6: * RM_ResetDataset module API should not clear the functions * RM_Call module API used with the "C" flag to run scripts, would now cause the commands in the script to check ACL with the designated user * Geo commands speedups * Fix EVAL command performance regression from Redis 7.0 * Reduce EXPIRE commands performance regression from Redis 7.0 * Optimize commands returning double values, mainly affecting zset commands * Optimize Lua parsing of some command responses * Optimize client memory usage tracking operation while client eviction is disabled * Multiple bug fixes for crashes, hangs, and incorrect behavior - drop cve-2022-3647.patch now upstream- Fix CVE-2022-3647, crash in sigsegvHandler debug function (CVE-2022-3647, bsc#1204633) * cve-2022-3647.patch- Update to version 7.0.5 (boo#1203638) + Security Fixes: * (CVE-2022-35951) Executing a XAUTOCLAIM command on a stream key in a specific state, with a specially crafted COUNT argument, may cause an integer overflow, a subsequent heap overflow, and potentially lead to remote code execution. The problem affects Redis versions 7.0.0 or newer [reported by Xion (SeungHyun Lee) of KAIST GoN]. + Module API changes * Fix RM_Call execution of scripts when used with M/W/S flags to properly handle script flags (#11159) * Fix RM_SetAbsExpire and RM_GetAbsExpire API registration (#11025, #8564) + Bug Fixes * Fix a hang when eviction is combined with lazy-free and maxmemory-eviction-tenacity is set to 100 (#11237) * Fix a crash when a replica may attempt to set itself as its master as a result of a manual failover (#11263) * Fix a bug where a cluster-enabled replica node may permanently set its master's hostname to '?' (#10696) * Fix a crash when a Lua script returns a meta-table (#11032) + Fixes for issues in previous releases of Redis 7.0 * Fix redis-cli to do DNS lookup before sending CLUSTER MEET (#11151) * Fix crash when a key is lazy expired during cluster key migration (#11176) * Fix AOF rewrite to fsync the old AOF file when a new one is created (#11004) * Fix some crashes involving a list containing entries larger than 1GB (#11242) * Correctly handle scripts with a non-read-only shebang on a cluster replica (#11223) * Fix memory leak when unloading a module (#11147) * Fix bug with scripts ignoring client tracking NOLOOP (#11052) * Fix client-side tracking breaking protocol when FLUSHDB / FLUSHALL / SWAPDB is used inside MULTI-EXEC (#11038) * Fix ACL: BITFIELD with GET and also SET / INCRBY can be executed with read-only key permission (#11086) * Fix missing sections for INFO ALL when also requesting a module info section (#11291)- Migration to /usr/etc: Saving user changed configuration files in /etc and restoring them while an RPM update.- Security update to version 7.0.4 (CVE-2022-31144) A specially crafted XAUTOCLAIM command on a stream key in a specific state may result with heap overflow, and potentially remote code execution. The problem affects Redis versions 7.0.0 or newer.- Update to version 7.0.3 * Performance and resource utilization improvements - Optimize zset conversion on large ZRANGESTORE (#10789) - Optimize the performance of sending PING on large clusters (#10624) - Allow for faster restart of Redis in cluster mode (#10912) * INFO fields and introspection changes - Add missing sharded pubsub keychannel count to CLIENT LIST (#10895) - Add missing pubsubshard_channels field in INFO STATS (#10929) * Module API changes - Add RM_StringToULongLong and RM_CreateStringFromULongLong (#10889) - Add RM_SetClientNameById and RM_GetClientNameById (#10839) * Changes in CLI tools - Add missing cluster-port support to redis-cli --cluster (#10344) * Other General Improvements - Account sharded pubsub channels memory consumption (#10925) - Allow ECHO in loading and stale modes (#10853) - Cluster: Throw -TRYAGAIN instead of -ASK on migrating nodes for multi-key - commands when the node only has some of the keys (#9526) * Bug Fixes - TLS: Notify clients on connection shutdown (#10931) - Fsync directory while persisting AOF manifest, RDB file, and config file (#10737) - Script that made modification will not break with unexpected NOREPLICAS error (#10855) - Cluster: Fix a bug where nodes may not acknowledge a CLUSTER FAILOVER TAKEOVER - after a replica reboots (#10798) - Cluster: Fix crash during handshake and cluster shards call (#10942) * Fixes for issues in previous releases of Redis 7.0 - TLS: Fix issues with large replies (#10909) - Correctly report the startup warning for vm.overcommit_memory (#10841) - redis-server command line allow passing config name and value in the same argument (#10866) - Support --save command line argument with no value for backwards compatibility (#10866) - Fix CLUSTER RESET command regression requiring an argument (#10898)- Use bundled jemalloc to fix active defragmentation, fixes bsc#1200913. - Remove patch: * Add-support-for-USE_SYSTEM_JEMALLOC-flag.patch- Moved logrotate files from user specific directory /etc/logrotate.d to vendor specific directory /usr/etc/logrotate.d.- Update to version 7.0.2 * Fixed SET and BITFIELD commands being wrongly marked movablekeys (#10837) Regression in 7.0 possibly resulting in excessive roundtrip from cluster clients. * Fix crash when /proc/sys/vm/overcommit_memory is inaccessible (#10848) Regression in 7.0.1 resulting in crash on startup on some configurations.- Update to version 7.0.1 * Improvements - Add warning for suspected slow system clocksource setting Add --check-system command line option. (#10636) - Allow read-only scripts (*_RO commands, and ones with `no-writes` flag) during CLIENT PAUSE WRITE (#10744) - Add `readonly` flag in COMMAND command for EVAL_RO, EVALSHA_RO and FCALL_RO (#10728) - redis-server command line arguments now accept one string with spaces for multi-arg configs (#10660) * Potentially Breaking Changes - Omitting a config option value in command line argument no longer works (#10660) - Hide the `may_replicate` flag from the COMMAND command response (#10744) * Potentially Breaking Changes for new Redis 7.0 features - Protocol: Sharded pubsub publish emits `smessage` instead of `message` (#10792) - CLUSTER SHARDS returns slots as RESP integers, not strings (#10683) - Block PFCOUNT and PUBLISH in read-only scripts (*_RO commands, and no-writes) (#10744) - Scripts that declare the `no-writes` flag are implicitly `allow-oom` too (#10699) * Changes in CLI tools - redis-cli --bigkeys, --memkeys, --hotkeys, --scan. Finish nicely after Ctrl+C (#10736) * Platform / toolchain support related improvements - Support tcp-keepalive config interval on MacOs (#10667) - Support RSS metrics on Haiku OS (#10687) * INFO fields and introspection changes - Add isolated network metrics for replication. (#10062, #10810) * Module API changes - Add two more new checks to RM_Call script mode (#10786) - Add new RM_Call flag to let Redis automatically refuse `deny-oom` commands (#10786) - Add module API RM_MallocUsableSize (#10795) - Add missing REDISMODULE_NOTIFY_NEW (#10688) - Fix cursor type in RedisModuleScanCursor to handle more than 2^31 elements (#10698) - Fix RM_Yield bugs and RM_Call("EVAL") OOM check bug (#10786) - Fix bugs in enum configs with overlapping bit flags (#10661) * Bug Fixes - FLUSHALL correctly resets rdb_changes_since_last_save INFO field (#10691) - FLUSHDB is now propagated to replicas / AOF, even if the db is empty (#10691) - Replica fail and retry the PSYNC if the master is unresponsive (#10726) - Fix ZRANGESTORE crash when zset_max_listpack_entries is 0 (#10767)- Unbundle jemalloc, fixes bsc#199164 * Add-support-for-USE_SYSTEM_JEMALLOC-flag.patch- Add ReadWritePaths=/etc/redis to redis-sentinel@.service (bsc#1199198)- Update to version 7.0.0: https://raw.githubusercontent.com/redis/redis/7.0/00-RELEASENOTES - Remove upstreamed patch: * getMcontextEip-return-value.patch- redis 6.2.7: * CVE-2022-24736: An attacker attempting to load a specially crafted Lua script can cause NULL pointer dereference which will result with a crash of the redis-server process (boo#1198953) * CVE-2022-24735: By exploiting weaknesses in the Lua script execution environment, an attacker with access to Redis can inject Lua code that will execute with the (potentially higher) privileges of another Redis user (boo#1198952) * LPOP/RPOP with count against non-existing list return null array * LPOP/RPOP used to produce wrong replies when count is 0 * Speed optimization in command execution pipeline * Fix regression in Z[REV]RANGE commands (by-rank) introduced in Redis 6.2 * Fix OpenSSL 3.0.x related issues * Bug fixes- Added hardening to systemd service(s) (bsc#1181400). Modified: * redis-sentinel@.service * redis@.service- redis 6.2.6 with security fixes for * Security fixes: - CVE-2021-41099: Integer to heap buffer overflow handling certain string commands and network payloads, when proto-max-bulk-len is manually configured to a non-default, very large value (boo#1191299) - CVE-2021-32762: Integer to heap buffer overflow issue in redis-cli and redis-sentinel parsing large multi-bulk replies on some older and less common platforms (boo#1191300) - CVE-2021-32687: Integer to heap buffer overflow with intsets, when set-max-intset-entries is manually configured to a non-default, very large value (boo#1191302) - CVE-2021-32675: Denial Of Service when processing RESP request payloads with a large number of elements on many connections (boo#1191303) - CVE-2021-32672: Random heap reading issue with Lua Debugger (boo#1191304) - CVE-2021-32628: Integer to heap buffer overflow handling ziplist-encoded data types, when configuring a large, non-default value for hash-max-ziplist-entries, hash-max-ziplist-value, zset-max-ziplist-entries or zset-max-ziplist-value (boo#1191305) - CVE-2021-32627: Integer to heap buffer overflow issue with streams, when configuring a non-default, large value for proto-max-bulk-len and client-query-buffer-limit (boo#1191305) - CVE-2021-32626: Specially crafted Lua scripts may result with Heap buffer overflow (boo#1191306) * Bug fixes that involve behavior changes: - GEO* STORE with empty source key deletes the destination key and return 0 Previously it would have returned an empty array like the non-STORE variant. - PUBSUB NUMPAT replies with number of patterns rather than number of subscriptions This actually changed in 6.2.0 but was overlooked and omitted from the release notes. * Bug fixes that are only applicable to previous releases of Redis 6.2: - Fix CLIENT PAUSE, used an old timeout from previous PAUSE - Fix CLIENT PAUSE in a replica would mess the replication offset - Add some missing error statistics in INFO errorstats * Other bug fixes: - Fix incorrect reply of COMMAND command key positions for MIGRATE command - Fix appendfsync to always guarantee fsync before reply, on MacOS and FreeBSD (kqueue) - Fix the wrong misdetection of sync_file_range system call, affecting performance * CLI tools: - When redis-cli received ASK response, it didn't handle it * Improvements: - Add latency monitor sample when key is deleted via lazy expire - Sanitize corrupt payload improvements - Delete empty keys when loading RDB file or handling a RESTORE command- redis 6.2.5: * CVE-2021-32761: Fix integer overflow in BITFIELD on 32-bit boo#1188598 * Change reply type for ZPOPMAX/MIN with count in RESP3 to nested array * Was using a flat array like in RESP2 instead of a nested array like ZRANGE does. * Fix reply type for HRANDFIELD and ZRANDMEMBER when key is missing * Was using a null array instead of an empty array * Fix reply type for ZRANGESTORE when source key is missing * Was using an empty array like ZRANGE instead of 0 (used in the STORE variant) * redis-cli cluster import command may issue wrong MIGRATE command, sending COPY instead of REPLACE (#8945) * redis-cli --rdb fixes when using "-" to write to stdout * redis-cli support for RESP3 set type in CSV and RAW output * ad Module API for getting current command name * Fix RM_StringTruncate when newlen is 0 * Fix CLIENT UNBLOCK crashing modules without timeout callback * Further developer visible bug fixes- redis 6.2.4: * CVE-2021-32625: An integer overflow bug could be exploited by using the STRALGO LCS command to cause remote remote code execution (boo#1186722) * Fix crash after a diskless replication fork child is terminated * Fix redis-benchmark crash on unsupported configs * Fix crash in UNLINK on a stream key with deleted consumer groups * SINTERSTORE: Add missing keyspace del event when none of the sources exist * Sentinel: Fix CONFIG SET of empty string sentinel-user/sentinel-pass configs * Enforce client output buffer soft limit when no traffic * Hide AUTH passwords in MIGRATE command from slowlog- Move sysctl file to /usr/lib/sysctl.d, so that it can be overridden by an admin in /etc.- redis 6.2.3 * CVE-2021-29477: Integer overflow in STRALGO LCS command (boo#1185729) * CVE-2021-29478: Integer overflow in COPY command for large intsets (boo#1185730) * Fix memory leak in moduleDefragGlobals * Fix memory leak when doing lazy freeing client tracking table * Block abusive replicas from sending command that could assert and crash redis * Use a monotonic clock to check for Lua script timeout * redis-cli: Do not use unix socket when we got redirected in cluster mode * Fix RM_GetClusterNodeInfo() to correctly populate master id- Usage of OPENSSL_INIT_ATFORK in tls.c raises the minimum version of OpenSSL 1.1.x to 1.1.1, say so in spec- redis 6.2.2 Bug fixes for regressions in previous releases of Redis 6.2: * Fix BGSAVE, AOFRW, and replication slowdown due to child reporting CoW (#8645) * Fix short busy loop when a timer event is about to fire (#8764) * Fix default user, overwritten and reset users losing Pub/Sub channel permissions (#8723) * Fix config rewrite with an empty save config resulting in default save values (#8719) * Fix not starting on alpine/libmusl without IPv6 (#8655) * Fix issues with propagation and MULTI/EXEC in modules (#8617) * Several issues around nested calls and thread-safe contexts Bug fixes that are only applicable to previous releases of Redis 6.2: * ACL Pub/Sub channels permission handling for save/load scenario (#8794) * Fix early rejection of PUBLISH inside MULTI-EXEC transaction (#8534) * Fix missing SLOWLOG records for blocked commands (#8632) * Allow RESET command during busy scripts (#8629) * Fix some error replies that were not counted on stats (#8659) Bug fixes: * Add a timeout mechanism for replicas stuck in fullsync (#8762) * Process HELLO command even if the default user has no permissions (#8633) * Client issuing a long-running script and using a pipeline, got disconnected (#8715) * Fix script kill to work also on scripts that use pcall (#8661) * Fix list-compress-depth may compress more node than required (#8311) * Fix redis-cli handling of rediss:// URL scheme (#8705) * Cluster: Skip unnecessary check which may prevent failure detection (#8585) * Cluster: Fix hang manual failover when replica just started (#8651) * Sentinel: Fix info-refresh time field before sentinel gets a first response (#8567) * Sentinel: Fix possible crash on failed connection attempt (#8627) * Systemd: Send the readiness notification when a replica is ready to accept connections (#8409) Command behavior changes: * ZADD: fix awrong reply when INCR used with GT/LT which blocked the update (#8717) * It was responding with the incremented value rather than nil * XAUTOCLAIM: fix response to return the next available id as the cursor (#8725) * Previous behavior was returning the last one which was already scanned * XAUTOCLAIM: fix JUSTID to prevent incrementing delivery_count (#8724) New config options: * Add cluster-allow-replica-migration config option (#5285) * Add replica-announced config option (#8653) * Add support for plaintext clients in TLS cluster (#8587) * Add support for reading encrypted keyfiles (#8644) Improvements: * Fix performance regression in BRPOP on Redis 6.0 (#8689) * Avoid adding slowlog entries for config with sensitive data (#8584) * Improve redis-cli non-binary safe string handling (#8566) * Optimize CLUSTER SLOTS reply (#8541) * Handle remaining fsync errors (#8419) Info fields and introspection changes: * Strip % sign from current_fork_perc info field (#8628) * Fix RSS memory info on FreeBSD (#8620) * Fix client_recent_max_input/output_buffer in 'INFO CLIENTS' when all clients drop (#8588) * Fix invalid master_link_down_since_seconds in info replication (#8785) Platform and deployment-related changes: * Fix FreeBSD <12.x builds (#8603) Modules: * Add macros for RedisModule_log logging levels (#4246) * Add RedisModule_GetAbsExpire / RedisModule_SetAbsExpire (#8564) * Add a module type for key space notification (#8759) * Set module eviction context flag only in masters (#8631) * Fix unusable RedisModule_IsAOFClient API (#8596) * Fix missing EXEC on modules propagation after failed EVAL execution (#8654) * Fix edge-case when a module client is unblocked (#8618)- replaced /var/run with /run for all PID file paths (bsc#1185072)- redis 6.2.1 Bug fixes: * Fix sanitize-dump-payload for stream with deleted records (#8568) * Prevent client-query-buffer-limit config from being set to lower than 1mb (#8557) Improvements: * Make port, tls-port and bind config options modifiable at runtime (#8510) Platform and deployment-related changes: * Fix compilation error on non-glibc systems if jemalloc is not used (#8533) * Improved memory consumption and memory usage tracking on FreeBSD (#8545) * Fix compilation on ARM64 MacOS with jemalloc (#8458) Modules: * New Module API for getting user name of a client (#8508) * Optimize RM_Call by utilizing a shared reusable client (#8516) * Fix crash running CLIENT INFO via RM_Call (#8560) - includes changes from 6.2.0 GA: * Integer overflow on 32-bit systems (CVE-2021-21309) Bug fixes: * Avoid 32-bit overflows when proto-max-bulk-len is set high (#8522) * Fix broken protocol in client tracking tracking-redir-broken message (#8456) * Avoid unsafe field name characters in INFO commandstats, errorstats, modules (#8492) * XINFO able to access expired keys during CLIENT PAUSE WRITE (#8436) * Fix allowed length for REPLCONF ip-address, needed due to Sentinel's support for hostnames (#8517) * Fix broken protocol in redis-benchmark when used with -a or --dbnum (#8486) * XADD counts deleted records too when considering switching to a new listpack (#8390) Bug fixes that are only applicable to previous releases of Redis 6.2: * Fixes in GEOSEARCH bybox (accuracy and mismatch between width and height) (#8445) * Fix risk of OOM panic in HRANDFIELD, ZRANDMEMBER commands with huge negative count (#8429) * Fix duplicate replicas issue in Sentinel, needed due to hostname support (#8481) * Fix Sentinel configuration rewrite, an improvement of #8271 (#8480) Command behavior changes: * SRANDMEMBER uses RESP3 array type instead of set type (#8504) * EXPIRE, EXPIREAT, SETEX, GETEX: Return error when provided expire time overflows (#8287) Other behavior changes: * Remove ACL subcommand validation if fully added command exists. (#8483) Improvements: * Optimize sorting in GEORADIUS / GEOSEARCH with COUNT (#8326) * Optimize HRANDFIELD and ZRANDMEMBER case 4 when ziplist encoded (#8444) * Optimize in-place replacement of elements in HSET, HINCRBY, LSET (#8493) * Remove redundant list to store pubsub patterns (#8472) * Add --insecure option to command line tools (#8416) Info fields and introspection changes: * Add INFO fields to track progress of BGSAVE, AOFRW, replication (#8414) Modules: * RM_ZsetRem: Delete key if empty, the bug could leave empty zset keys (#8453) * RM_HashSet: Add COUNT_ALL flag and set errno (#8446) - includes changes from 6.2 RC3: New commands / args: * Add HRANDFIELD and ZRANDMEMBER commands (#8297) * Add FAILOVER command (#8315) * Add GETEX, GETDEL commands (#8327) * Add PXAT/EXAT arguments to SET command (#8327) * Add SYNC arg to FLUSHALL and FLUSHDB, and ASYNC/SYNC arg to SCRIPT FLUSH (#8258) Sentinel: * Add hostname support to Sentinel (#8282) * Prevent file descriptors from leaking into Sentinel scripts (#8242) * Fix config file line order dependency and config rewrite sequence (#8271) New configuration options: * Add set-proc-title config option to disable changes to the process title (#3623) * Add proc-title-template option to control what's shown in the process title (#8397) * Add lazyfree-lazy-user-flush config option to control FLUSHALL, FLUSHDB and SCRIPT FLUSH (#8258) Bug fixes: * AOF: recover from last write error by turning on/off appendonly config (#8030) * Exit on fsync error when the AOF fsync policy is 'always' (#8347) * Avoid assertions (on older kernels) when testing arm64 CoW bug (#8405) * CONFIG REWRITE should honor umask settings (#8371) * Fix firstkey,lastkey,step in COMMAND command for some commands (#8367) Special considerations: * Fix misleading description of the save configuration directive (#8337) Improvements: * A way to get RDB file via replication without excessive replication buffers (#8303) * Optimize performance of clusterGenNodesDescription for large clusters (#8182) Info fields and introspection changes: * SLOWLOG and LATENCY monitor include unblocking time of blocked commands (#7491) Modules: * Add modules API for streams (#8288) * Add event for fork child birth and termination (#8289) * Add RM_BlockedClientMeasureTime* etc, to track background processing in commandstats (#7491) * Fix bug in v6.2, wrong value passed to the new unlink callback (#8381) * Fix bug in v6.2, modules blocked on keys unblock on commands like LPUSH (#8356) - includes changes from 6.2 RC2: New commands / args: * Add the REV, BYLEX and BYSCORE arguments to ZRANGE, and the ZRANGESTORE command (#7844) * Add the XAUTOCLAIM command (#7973) * Add the MINID trimming strategy and the LIMIT argument to XADD and XTRIM (#8169) * Add the ANY argument to GEOSEARCH and GEORADIUS (#8259) * Add the CH, NX, XX arguments to GEOADD (#8227) * Add the COUNT argument to LPOP and RPOP (#8179) * Add the WRITE argument to CLIENT PAUSE for pausing write commands exclusively (#8170) * Change the proto-ver argument of HELLO to optional (#7377) * Add the CLIENT TRACKINGINFO subcommand (#7309) Command behavior changes: * CLIENT TRACKING yields an error when given overlapping BCAST prefixes (#8176) * SWAPDB invalidates WATCHed keys (#8239) * SORT command behaves differently when used on a writable replica (#8283) Other behavior changes: * Avoid propagating MULTI/EXEC for read-only transactions (#8216) * Remove the read-only flag from TIME, ECHO, ROLE, LASTSAVE (#8216) * Fix the command flags of PFDEBUG (#8222) * Tracking clients will no longer receive unnecessary key invalidation messages after FLUSHDB (#8039) * Sentinel: Fix missing updates to the config file after SENTINEL SET command (#8229) Bug fixes with compatibility implications (bugs introduced in Redis 6.0): * Fix RDB CRC64 checksum on big-endian systems (#8270) If you're using big-endian please consider the compatibility implications with RESTORE, replication and persistence. * Fix wrong order of key/value in Lua's map response (#8266) If your scripts use redis.setresp() or return a map (new in Redis 6.0), please consider the implications. Bug fixes that are only applicable to previous releases of Redis 6.2: * Resolve rare assertions in active defragmentation while loading (#8284, #8281) Bug fixes: * Fix the selection of a random element from large hash tables (#8133) * Fix an issue where a forked process deletes the parent's pidfile (#8231) * Fix crashes when enabling io-threads-do-reads (#8230) * Fix a crash in redis-cli after executing cluster backup (#8267) * Fix redis-benchmark to use an IP address for the first cluster node (#8154) * Fix saving of strings larger than 2GB into RDB files (#8306) Additional improvements: * Improve replication handshake time (#8214) * Release client tracking table memory asynchronously in cases where the DB is also freed asynchronously (#8039) * Avoid wasteful transient memory allocation in certain cases (#8286, #5954) * Handle binary string values by the 'requirepass' and 'masterauth' configs (#8200) Platform and deployment-related changes: * Install redis-check-rdb and redis-check-aof as symlinks to redis-server (#5745) * Add a check for an ARM64 Linux kernel bug (#8224) Due to the potential severity of this issue, Redis will refuse to run on affected platforms by default. Info fields and introspection changes: * Add the errorstats section to the INFO command (#8217) * Add the failed_calls and rejected_calls fields INFO's commandstats section (#8217) * Report child copy-on-write metrics continuously (#8264) Module API changes: * Add the RedisModule_SendChildCOWInfo API (#8264) * Add the may-replicate command flag (#8170) - includes changes from 6.2 RC1: New commands / args: * Add SMISMEMBER command that checks multiple members (#7615) * Add ZMSCORE command that returns an array of scores (#7593) * Add LMOVE and BLMOVE commands that pop and push arbitrarily (#6929) * Add RESET command that resets client connection state (#7982) * Add COPY command that copies keys (#7953) * Add ZDIFF and ZDIFFSTORE commands (#7961) * Add ZINTER and ZUNION commands (#7794) * Add GEOSEARCH/GEOSEARCHSTORE commands for bounding box spatial queries (#8094) * Add GET parameter to SET command, for more powerful GETSET (#7852) * Add exclusive range query to XPENDING (#8130) * Add exclusive range query to X[REV]RANGE (#8072) * Add GT and LT options to ZADD for conditional score updates (#7818) * Add CLIENT INFO and CLIENT LIST for specific ids (#8113) * Add IDLE argument to XPENDING command (#7972) * Add local address to CLIENT LIST, and a CLIENT KILL filter. (#7913) * Add NOMKSTREAM option to XADD command (#7910) * Add command introspection to Sentinel (#7940) * Add SENTINEL MYID subcommand (#7858) New features: * Dump payload sanitization: prevent corrupt payload causing crashes (#7807) Has flags to enable full O(N) validation (disabled by default). * ACL patterns for Pub/Sub channels (#7993) * Support ACL for Sentinel mode (#7888) * Support getting configuration from both stdin and file at the same time (#7893) Lets you avoid storing secrets on the disk. New features in CLI tools: * redis-cli RESP3 push support (#7609) * redis-cli cluster import support source and target that require auth (#7994) * redis-cli URIs able to provide user name in addition to password (#8048) * redis-cli/redis-benchmark allow specifying the prefered ciphers/ciphersuites (#8005) * redis-cli add -e option to exit with code when command execution fails (#8136) Command behavior changes: * EXISTS should not alter LRU (#8016) In Redis 5.0 and 6.0 it would have touched the LRU/LFU of the key. * OBJECT should not reveal logically expired keys (#8016) Will now behave the same TYPE or any other non-DEBUG command. * Improve db id range check for SELECT and MOVE (#8085) Changes the error message text on a wrong db index. * Modify AUTH / HELLO error message (#7648) Changes the error message text when the user isn't found or is disabled. * BITOPS length limited to proto_max_bulk_len rather than 512MB (#8096) The limit is now configurable like in SETRANGE, and APPEND. * GEORADIUS[BYMEMBER] can fail with -OOM if Redis is over the memory limit (#8107) Other behavior changes: * Optionally (default) fail to start if requested bind address is not available (#7936) If you rely on Redis starting successfully even if one of the bind addresses is not available, you'll need to tune the new config. * Limit the main db dictionaries expansion to prevent key eviction (#7954) In the past big dictionary rehashing could result in massive data eviction. Now this rehashing is delayed (up to a limit), which can result in performance loss due to hash collisions. * CONFIG REWRITE is atomic and safer, but requires write access to the config file's folder (#7824, #8051) This change was already present in 6.0.9, but was missing from the release notes. * A new incremental eviction mechanism that reduces latency on eviction spikes (#7653) In pathological cases this can cause memory to grow uncontrolled and may require specific tuning. * Not resetting "save" config when Redis is started with command line arguments. (#7092) In case you provide command line arguments without "save" and count on it being disabled, Now the defaults "save" config will kick in. * Update memory metrics for INFO during loading (#7690) * When "supervised" config is enabled, it takes precedence over "daemonize". (#8036) * Assertion and panic, print crash log without generating SIGSEGV (#7585) * Added crash log report on SIGABRT, instead of silently exiting (#8004) * Disable THP (Transparent Huge Pages) if enabled (#7381) If you deliberately enabled it, you'll need to config Redis to keep it. Bug fixes: * Handle output buffer limits for module blocked clients (#8141) Could result in a module sending reply to a blocked client to go beyond the limit. * Fix setproctitle related crashes. (#8150, #8088) Caused various crashes on startup, mainly on Apple M1 chips or under instrumentation. * A module doing RM_Call could cause replicas to get nested MULTI (#8097). * Backup/restore cluster mode keys to slots map for repl-diskless-load=swapdb (#8108) In cluster mode with repl-diskless-load, when loading failed, slot map wouldn't have been restored. * Fix oom-score-adj-values range, and bug when used in config file (#8046) Enabling setting this in the config file in a line after enabling it, would have been buggy. * Reset average ttl when empty databases (#8106) Just causing misleading metric in INFO * Disable rehash when Redis has child process (#8007) This could have caused excessive CoW during BGSAVE, replication or AOFRW. * Further improved ACL algorithm for picking categories (#7966) Output of ACL GETUSER is now more similar to the one provided by ACL SETUSER. * Fix bug with module GIL being released prematurely (#8061) Could in theory (and rarely) cause multi-threaded modules to corrupt memory. * Fix cluster redirect for module command with no firstkey. (#7539) * Reduce effect of client tracking causing feedback loop in key eviction (#8100) * Kill disk-based fork child when all replicas drop and 'save' is not enabled (#7819) * Rewritten commands (modified for propagation) are logged as their original command (#8006) * Fix cluster access to unaligned memory (SIGBUS on old ARM) #7958 * If diskless repl child is killed, make sure to reap the child pid (#7742) * Broadcast a PONG message when slot's migration is over, may reduce MOVED responses (#7571) Other improvements: * TLS Support in redis-benchmark (#7959) * Accelerate diskless master connections, and general re-connections (#6271) * Run active defrag while blocked / loading (#7726) * Performance and memory reporting improvement - sds take control of its internal fragmentation (#7875) * Speedup cluster failover. (#7948) Platform / toolchain support related improvements: * Optionally (not by default) use H/W Monotonic clock for faster time sampling (#7644) * Remove the requirements for C11 and _Atomic supporting compiler (#7707) This would allow to more easily build and use Redis on older systems and compilers again. * Fix crash log registers output on ARM. (#8020) * Raspberry build fix. (#8095) * Setting process title support for Haiku. (#8060) * DragonFlyBSD RSS memory sampling support. (#8023) New configuration options: * Enable configuring OpenSSL using the standard openssl.cnf (#8143) * oom-score-adj-values config can now take absolute values (besides relative ones) (#8046) * TLS: Add different client cert support. (#8076) * Note that a few other changes listed above added their config options. Info fields and introspection changes: * Add INFO fields to track diskless and disk-based replication progress (#7981) * Add INFO field for main thread cpu time, and scrape system time. (#8132) * Add total_forks to INFO STATS (#8155) * Add maxclients and cluster_connections to INFO CLIENTS (#7979) * Add tracking bcast flag and client redirection in client list (#7995) * Fixed INFO client_recent_max_input_buffer includes argv array (#8065, see #7874) * Note that a few other changes listed above added their info fields. Module API changes: * Add CTX_FLAGS_DENY_BLOCKING as a unified the way to know if blocking is allowed (#8025) * Add data type callbacks for lazy free effort, and unlink (#7912) * Add data type callback for COPY command (#8112) * Add callbacks for defrag support. (#8149) * Add module event for repl-diskless-load swapdb (#8153) Module related fixes: * Moved RMAPI_FUNC_SUPPORTED so that it's usable (#8037) * Improve timer accuracy (#7987) * Allow '\0' inside of result of RM_CreateStringPrintf (#6260)- Added parameter -p to all install command in spec-file. - Changed file redis.tmpfiles.d file, replaced from /var/run to /run.- redis 6.0.12: * Fix compilation error on non-glibc systems if jemalloc is not used- redis 6.0.11: * CVE-2021-21309: Avoid 32-bit overflows when proto-max-bulk-len is set high (boo#1182657) * Fix handling of threaded IO and CLIENT PAUSE (failover), could lead to data loss or a crash * Fix the selection of a random element from large hash tables * Fix broken protocol in client tracking tracking-redir-broken message * XINFO able to access expired keys on a replica * Fix broken protocol in redis-benchmark when used with -a or - -dbnum * Avoid assertions (on older kernels) when testing arm64 CoW bug * CONFIG REWRITE should honor umask settings * Fix firstkey,lastkey,step in COMMAND command for some commands * RM_ZsetRem: Delete key if empty, the bug could leave empty zset keys- Switch systemd type of the sentinel service from notify to simple. This can be reverted when updating to 6.2 which fixes https://github.com/redis/redis/issues/7284 .- Enable TLS support and add BuildRequires libopenssl-devel (bsc#1181830) - Make tests run by adding BuildRequires tcl and procps- HTTPS download link for source - redis 6.0.10: Command behavior changes: * SWAPDB invalidates WATCHed keys (#8239) * SORT command behaves differently when used on a writable replica (#8283) * EXISTS should not alter LRU (#8016) In Redis 5.0 and 6.0 it would have touched the LRU/LFU of the key. * OBJECT should not reveal logically expired keys (#8016) Will now behave the same TYPE or any other non-DEBUG command. * GEORADIUS[BYMEMBER] can fail with -OOM if Redis is over the memory limit (#8107) Other behavior changes: * Sentinel: Fix missing updates to the config file after SENTINEL SET command (#8229) * CONFIG REWRITE is atomic and safer, but requires write access to the config file's folder (#7824, #8051) This change was already present in 6.0.9, but was missing from the release notes. Bug fixes with compatibility implications (bugs introduced in Redis 6.0): * Fix RDB CRC64 checksum on big-endian systems (#8270) If you're using big-endian please consider the compatibility implications with RESTORE, replication and persistence. * Fix wrong order of key/value in Lua's map response (#8266) If your scripts use redis.setresp() or return a map (new in Redis 6.0), please consider the implications. Bug fixes: * Fix an issue where a forked process deletes the parent's pidfile (#8231) * Fix crashes when enabling io-threads-do-reads (#8230) * Fix a crash in redis-cli after executing cluster backup (#8267) * Handle output buffer limits for module blocked clients (#8141) Could result in a module sending reply to a blocked client to go beyond the limit. * Fix setproctitle related crashes. (#8150, #8088) Caused various crashes on startup, mainly on Apple M1 chips or under instrumentation. * Backup/restore cluster mode keys to slots map for repl-diskless-load=swapdb (#8108) In cluster mode with repl-diskless-load, when loading failed, slot map wouldn't have been restored. * Fix oom-score-adj-values range, and bug when used in config file (#8046) Enabling setting this in the config file in a line after enabling it, would have been buggy. * Reset average ttl when empty databases (#8106) Just causing misleading metric in INFO * Disable rehash when Redis has child process (#8007) This could have caused excessive CoW during BGSAVE, replication or AOFRW. * Further improved ACL algorithm for picking categories (#7966) Output of ACL GETUSER is now more similar to the one provided by ACL SETUSER. * Fix bug with module GIL being released prematurely (#8061) Could in theory (and rarely) cause multi-threaded modules to corrupt memory. * Reduce effect of client tracking causing feedback loop in key eviction (#8100) * Fix cluster access to unaligned memory (SIGBUS on old ARM) (#7958) * Fix saving of strings larger than 2GB into RDB files (#8306) Additional improvements: * Avoid wasteful transient memory allocation in certain cases (#8286, #5954) Platform / toolchain support related improvements: * Fix crash log registers output on ARM. (#8020) * Add a check for an ARM64 Linux kernel bug (#8224) Due to the potential severity of this issue, Redis will print log warning on startup. * Raspberry build fix. (#8095) New configuration options: * oom-score-adj-values config can now take absolute values (besides relative ones) (#8046) Module related fixes: * Moved RMAPI_FUNC_SUPPORTED so that it's usable (#8037) * Improve timer accuracy (#7987) * Allow '\0' inside of result of RM_CreateStringPrintf (#6260)- redis 6.0.9: * potential heap overflow when using a heap allocator other than jemalloc or glibc's malloc. Does not affect the openSUSE package - boo#1178205 * Memory reporting of clients argv * Add redis-cli control on raw format line delimiter * Add redis-cli support for rediss:// -u prefix * WATCH no longer ignores keys which have expired for MULTI/EXEC * Correct OBJECT ENCODING response for stream type * Allow blocked XREAD on a cluster replica * TLS: Do not require CA config if not used * multiple bug fixes * Additions to modules API- redis 6.0.8 (jsc#PM-1615, jsc#PM-1622, jsc#PM-1681, jsc#ECO-2417, jsc#ECO-2867, jsc#PM-1547, jsc#CAPS-56, jsc#SLE-11578, jsc#SLE-12821): * bug fixes when using with Sentinel * bug fixes when using CONFIG REWRITE * Remove THP warning when set to madvise * Allow EXEC with read commands on readonly replica in cluster * Add masters/replicas options to redis-cli --cluster call command - includes changes from 6.0.7: * CONFIG SET could hung the client when arrives during RDB/ROF loading * LPOS command when RANK is greater than matches responded with broken protocol * Add oom-score-adj configuration option to control Linux OOM killer * Show IO threads statistics and status in INFO output * Add optional tls verification mode (see tls-auth-clients)- redis 6.0.6: * Fix crash when enabling CLIENT TRACKING with prefix * EXEC always fails with EXECABORT and multi-state is cleared * RESTORE ABSTTL won't store expired keys into the db * redis-cli better handling of non-pritable key names * TLS: Ignore client cert when tls-auth-clients off * Tracking: fix invalidation message on flush * Notify systemd on Sentinel startup * Fix crash on a misuse of STRALGO * Few fixes in module API * Fix a few rare leaks (STRALGO error misuse, Sentinel) * Fix a possible invalid access in defrag of scripts * Add LPOS command to search in a list * Use user+pass for MIGRATE in redis-cli and redis-benchmark in cluster mode * redis-cli support TLS for --pipe, --rdb and --replica options * TLS: Session caching configuration support- redis 6.0.5: * Fix handling of speical chars in ACL LOAD * Make Redis Cluster more robust about operation errors that may lead to two clusters to mix together * Revert the sendfile() implementation of RDB transfer * Fix TLS certificate loading for chained certificates * Fix AOF rewirting of KEEPTTL SET option * Fix MULTI/EXEC behavior during -BUSY script errors- redis 6.0.4: * fix a severe replication bug introduced in Redis 6 by the "meaningful offset" feature- redis 6.0.3: * fix a crash introduced in 6.0.2 - includes changes from 6.0.2: * bug fixes * fix to client side caching when keys are evicted from the tracking table but no notifications are sent- redis-disable_integration_logging.patch: remove - redis-enable-bactrace-on-x86-ia64-and_arm32_only.patch: remove - getMcontextEip-return-value.patch: Add missing return value- add BR pkgconfig(libsystemd) for the rewritten systemd support and force building with it- Update to 6.0.1 * https://raw.githubusercontent.com/antirez/redis/6.0.1/00-RELEASENOTES * XCLAIM AOF/replicas propagation fixed. * Client side caching: new NOLOOP option to avoid getting notified about changes performed by ourselves. * ACL GENPASS now uses HMAC-SHA256 and have an optional "bits" argument. It means you can use it as a general purpose "secure random strings" primitive! * Cluster "SLOTS" subcommand memory optimization. * The LCS command is now a subcommand of STRALGO. * Meaningful offset for replicas as well. More successful partial resynchronizations. * Optimize memory usage of deferred replies. * Faster CRC64 algorithm for faster RDB loading. * XINFO STREAM FULL, a new subcommand to get the whole stream state. * CLIENT KILL USER . * MIGRATE AUTH2 option, for ACL style authentication support. * Other random bugfixes.- ppc-atomic.patch: use libatomic also on ppc- add hash file from redis-hashes and verify it during build- redis 5.0.9: * Critical fix when Streams with AOF ore replicas are used: Prevent reprocesing some entries upon restart * Speed improvement: Clients blocked on the same key are now unblocked on O(1) time- Use the tmpfiles macros instead of calling systemd-tempfiles direct and build wrong macro paths.- Refresh spec-file with spec-cleaner and manual optimizations * Remove Group tag. * Replace make by %make_build macros. - Update to 5.0.8 * https://raw.githubusercontent.com/antirez/redis/5.0.8/00-RELEASENOTES * Fix Pi building needing -latomic, backport. * Fix impl of aof-child whitelist SIGUSR1 feature. * Fix ThreadSafeContext lock/unlock function names. * XREADGROUP should propagate XCALIM/SETID in MULTI/EXEC. * Fix client flags to be int64 in module.c. * Fix small bugs related to replica and monitor ambiguity. * Fix lua related memory leak. * Simplify #6379 changes. * Free allocated sds in pfdebugCommand() to avoid memory leak. * Jump to right label on AOF parsing error. * Free fakeclient argv on AOF error. * Fix potential memory leak of rioWriteBulkStreamID(). * Fix potential memory leak of clusterLoadConfig(). * Fix bug on KEYS command where pattern starts with * followed by \x00. * Blocking XREAD[GROUP] should always reply with valid data. * XCLAIM: Create the consumer only on successful claims. * Stream: Handle streamID-related edge cases. * Fix ip and missing mode in RM_GetClusterNodeInfo(). * Inline protocol: handle empty strings well. * Mark extern definition of SDS_NOINIT in sds.h. * Fix revisit CVE-2015-8080 vulnerability. * Avoid sentinel changes promoted_slave to be its own replica.- print instance name in the from the service files- Don't install redis-trib.rb, it's only a dummy telling the user to use redis-cli instead and pulls in ruby for that.- Make redis useable in a container (drop size from 100MB to 20MB): - Change user generation from shadow to sysusers - Drop redis-initscript.patch and sudo requires, we use systemd - Drop BuildRequires for procps and tcl, they are not needed - Make logrotate recommend, it's not required for redis to work- Update to 5.0.7 * https://raw.githubusercontent.com/antirez/redis/5.0.7/00-RELEASENOTES * Test: fix implementation-dependent test after code change. * RED-31295 - redis: avoid race between dlopen and thread creation. * Cluster: fix memory leak of cached master. * Fix usage of server.stream_node_max_*. * Update mkreleasehdr.sh. * Remove additional space from comment. * Fix stream test after addition of 0-0 ID test. * AOF: fix assignment for aof_fsync_offset. * Rename var to fixed_time_expire now that is more general. * Expires & blocking: handle ready keys as call(). * XADD with ID 0-0 stores an empty key. * Fix unreported overflow in autogerenared stream IDs. * Expires: refactoring judgment about whether a key is expired. - Refresh reproducible.patch - Update to 5.0.6 * https://raw.githubusercontent.com/antirez/redis/5.0.6/00-RELEASENOTES * RDB: fix MODULE_AUX loading by continuing to next opcode. * Missing per-skiplist overheads in MEMORY USAGE. * RM_Log: add support for logging without a context or context without module. * Cluster: abort loading nodes data if vars arguments are unbalanced. * More strict checks and better comments in flushSlaveOutputBuffers(). * Improve comment in flushSlavesOutputBuffers(). * Replication: clarify why repl_put_online_on_ack exists at all. * Networking: flushSlavesOutputBuffers bugfix. * RM_ReplyWithCString was missing registration. * Fix to module aux data rdb format for backwards compatibility with old check-rdb. * Implement module api for aux data in rdb. * Redis-cli: always report server errors on read errors. * Reduce the calling stack. * Make EMBSTR case of #6261 more obvious. * Make memory usage consistent of robj with OBJ_ENCODING_INT. * HyperLogLog: fix the fix of a corruption bug. * Fix HLL corruption bug. * Extend REDISMODULE_CTX_FLAGS to indicate if redis is currently loading from either RDB or AOF. * Uses addReplyBulkCString. * Adds RedisModule_ReplyWithCString.- update to 5.0.5 Major changes from the Redis 5 series: 1. The new Stream data type. https://redis.io/topics/streams-intro 2. New Redis modules APIs: Timers, Cluster and Dictionary APIs. 3. RDB now store LFU and LRU information. 4. The cluster manager was ported from Ruby (redis-trib.rb) to C code inside redis-cli. Check `redis-cli --cluster help` for more info. 5. New sorted set commands: ZPOPMIN/MAX and blocking variants. 6. Active defragmentation version 2. 7. Improvemenets in HyperLogLog implementations. 8. Better memory reporting capabilities. 9. Many commands with sub-commands now have an HELP subcommand. 10. Better performances when clients connect and disconnect often. 11. Many bug fixes and other random improvements. 12. Jemalloc was upgraded to version 5.1 13. CLIENT UNBLOCK and CLIENT ID. 14. The LOLWUT command was added. http://antirez.com/news/123 15. We no longer use the "slave" word if not for API backward compatibility. 16. Differnet optimizations in the networking layer. 17. Lua improvements: - Better propagation of Lua scripts to replicas / AOF. - Lua scripts can now timeout and get in -BUSY state in the replica as well. 18. Dynamic HZ to balance idle CPU usage with responsiveness. 19. The Redis core was refactored and improved in many ways. However the list above really does not do justice to the changes of Redis 5 since the core was improved in many ways during the development of the new version. However certain changes were back ported into Redis 4 once they were sensed as safe, because many improvements were hard to distinguish from fixes. The most important user facing improvement is without doubts the introduction of the new general purpose data type after years: the streams. Note that we worked to improve and fix streams till a few hours ago, so while we are not aware of critical bugs in this release, surely there is to handle it with some care for the first weeks. Bug reporting will be highly appreciated and we are ready to work immediately to release 5.0.1 once there is enough important stuff to justify a new release (probably soon). People not using the streams can have probably a better production-ready experience with Redis 5, also because many internals are shared with Redis 4 so the jump is not as big as it was between 3.2 and 4 in terms of how things internally work. Well, many thanks to the Redis community and the developers that made this release possible, contributing bug reports, patches, new features, working on the clients, sometimes debugging problems for days. Also thank to everybody that adopted Redis for their use cases making things work for users worldwide. see installed /usr/share/doc/packages/redis/00-RELEASENOTES - refreshed patches to apply cleanly again: redis-conf.patch redis-enable-bactrace-on-x86-ia64-and_arm32_only.patch reproducible.patch- update systemd unit file to fix redis shutdown immedaiate after start- make sure that disabling/restarting servers works https://nordisch.org/posts/hooking-up-instantiated-services-with-rpm/- make check && true -> make check || true This was probably meant to catch an error in the test suite, but with && it would only return true if it would return true already.- added systemd unit file file redis-sentinel - the unit file uses the same multiple instance mechanism as the normal redis unit file systemctl start redis-sentinel@default will look for /etc/redis/sentinel-default.conf and expects a pid file /var/run/redis/sentinel-default.pid Please make sure your sentinel config sets the pid file. - adapted the default sentinel.conf.example to set the pid file and the log file similar to the normal redis.conf: /var/log/redis/sentinel-.log /var/run/redis/sentinel-.pid The unit file checks for the pid file so please adapt your local sentinel configs. Changed: redis-conf.patch - adapt and restructure README.SUSE - move the LimitNoFile to the service file itself so the user do not have to manually do that step for every instance - move the apache integration into its own section - add section for redis-sentinel - install sentinel example config with group write permissions to indicate that the actually config needs to be writable.- replace some duplicate binaries with symlinks similar to what the fedora package does- Refresh spec-file. - Update to 4.0.11 * https://raw.githubusercontent.com/antirez/redis/4.0.11/00-RELEASENOTES * The disconnection time between the master and slave was reset in an incorrect place, sometimes a good slave will not be able to failover because it claims it was disconnected for too much time from the master. * A replication bug, rare to trigger but non impossible, is in Redis for years. It was lately discovered at Redis Labs and fixed by Oran Agra. It may cause disconnections, desynchronizations and other issues. * RANDOMKEY may go in infinite loop on rare situations. Now fixed. * EXISTS now works in a more consistent way on slaves. * Sentinel: backport of an option to deny a potential security problem when the SENTINEL command is used to configure an arbitrary script to execute.- Add reproducible.patch to have fixed hostname and date (boo#1047218)- update to 4.0.10 (boo#1097430) CVE-2018-11218 CVE-2018-11219 https://raw.githubusercontent.com/antirez/redis/4.0.10/00-RELEASENOTES - Important security issues related to the Lua scripting engine. Please check https://github.com/antirez/redis/issues/5017 for more information. - A bug with SCAN, SSCAN, HSCAN and ZSCAN, that may not return all the elements. We also add a regression test that can trigger the issue often when present, and may in theory be able to find unrelated regressions. - A PSYNC2 bug is fixed: Redis should not expire keys when saving RDB files because otherwise it is no longer possible to use such RDB file as a base for partial resynchronization. It no longer represents the right state. - Compatibility of AOF with RDB preamble when the RDB checksum is disabled. - Sentinel bug that in some cases prevented Sentinel to detect that the master was down immediately. A delay was added to the detection. - refreshed patches to apply cleanly again redis-conf.patch redis-initscript.patch- Update redis-enable-bactrace-on-x86-and-ia64-only.patch to handle arm and rename it to redis-enable-bactrace-on-x86-ia64-and_arm32_only.patch - Add redis-disable_integration_logging.patch to disable logging test when backtrace is not enabled- Update to 4.0.9 * https://raw.githubusercontent.com/antirez/redis/4.0.9/00-RELEASENOTES * Critical upgrade for users using AOF with the fsync policy set to "always". * Latency monitor could report wrong latencies under certain conditions. * AOF rewriting could fail when a backgronud rewrite is triggered and at the same time the AOF is switched on/off. * Redis Cluster crash-recovery safety improved. * Redis Cluster has now the ability to configure certain slaves so that they'll never attempt a failover. * Keyspace notifications API in modules. * RM_Call() is now faster by reusing the same client. * Tracking of the percentage of keys already logically expired but yet not evicted.- Update to 4.0.8 * Release notes: https://raw.githubusercontent.com/antirez/redis/4.0.8/00-RELEASENOTES * Fix crash Redis Cluster instances during deletions.- Update to 4.0.7 * Release notes: https://raw.githubusercontent.com/antirez/redis/4.0.7/00-RELEASENOTES * Many 32 bit overflows were addressed in order to allow to use Redis with a very significant amount of data, memory size permitting. * MEMORY USAGE fixed for the list type. * Allow read-only scripts in Redis Cluster. * Fix AOF pipes setup in edge case. * AUTH option for MIGRATE. * HyperLogLogs are no longer converted from sparse to dense in order to be merged. * Fix AOF rewrite dead loop under edge cases. * Fix processing of large bulk strings (>= 2GB). * Added RM_UnlinkKey in modules API. * Fix Redis Cluster crashes when certain commands with a variable number of arguments are called in an improper way. * Fix memory leak in lazyfree engine. * Fix many potentially successful partial synchronizations that end doing a full SYNC, because of a bug destroying the replication backlog on the slave. So after a failover the slave was often not able to PSYNC with masters, and a full SYNC was triggered. The bug only happened after 1 hour of uptime so escaped the unit tests. * Improve anti-affinity in master/slave allocation for Redis Cluster when the cluster is created. * Improve output buffer handling for slaves, by not limiting the amount of writes a slave could receive.- Update to 4.0.6 * Release notes: https://raw.githubusercontent.com/antirez/redis/4.0.6/00-RELEASENOTES * PSYNC2: More errors in the fixes for PSYNC2 (CRITICAL). * Quicklist: change the len of quicklist to unsigned long. * Quicklist: fix the return value of quicklistCount. * Refactoring: improve luaCreateFunction() API. * Remove useless variable check from luaCreateFunction(). * Fix issue #4505, Lua RDB AUX field loading of existing scripts. * Regression test for #4505 (Lua AUX field loading). * DEBUG change-repl-id implemented. * Buffer overflows occurring reading redis.conf CVE-2017-15047 (bsc#1061967)- Update changelog with CVE reference- Drop SLE 11 support. - Refresh spec-file. - Update to 4.0.2 * Release notes: https://raw.githubusercontent.com/antirez/redis/4.0.2/00-RELEASENOTES * Different replication fixes to PSYNC2, the new 4.0 replication engine. * Modules thread safe contexts were introduced. They are an experimental API right now, but the API is considered to be stable and usable when needed. * SLOWLOG now logs the offending client name and address. Note that this is a backward compatibility breakage in case old code assumes that the slowlog entry is composed of exactly three entries. * The modules native data types RDB format changed. * The AOF check utility is now able to deal with RDB preambles. * GEORADIUS_RO and GEORADIUSBYMEMBER_RO variants, not supporting the STORE option, were added in order to allow read-only scaling of such queries. * HSET is now variadic, and HMSET is considered deprecated (but will be supported for years to come). Please use HSET in new code. * GEORADIUS huge radius (>= ~6000 km) corner cases fixed, certain elements near the edges were not returned. * DEBUG DIGEST modules API added. * HyperLogLog commands no longer crash on certain input (non HLL) strings. * Fixed SLAVEOF inside MULTI/EXEC blocks. * Many other minor bug fixes and improvements.- cleanup service file - add redis.sysctl file - update README.SUSE * add info for socket usage per service * add info for limits per service (LimitNOFILE=10240)- Update to version 3.2.9 * A few rarely harmful bugs were fixed. - Changes accumulated from 3.2.8 Two important bug fixes, the first of one is critical: * Apparently Jemalloc 4.4.0 may contain a deadlock under particular conditions. See https://github.com/antirez/redis/issues/3799. We reverted back to the previously used Jemalloc versions and plan to upgrade Jemalloc again after having more info about the cause of the bug. * MIGRATE could crash the server after a socket error. See for reference: https://github.com/antirez/redis/issues/3796.- Update to version 3.2.7 * This release fixes important security and correctness issues (boo#1064980 CVE-2016-10517)- update to redis 3.2.6 * fixes for GEORADIUS, BITFIELD and Redis Cluster minor fixes. - update 3.2.5 * This release only fixes a compilation issue due to the missing -ldl at linking time.- update to redis 3.2.4, including fixes for security issues: * CVE-2016-8339: CONFIG SET client-output-buffer-limit Code Execution Vulnerability [boo#1002351] - bug fixes: * TCP binding bug fixed when only certain addresses were available for a given port * improved crash report * Fix for Redis Cluster redis-trib displaying of info after creating a new cluster.- redis 3.2.3: * fix replication delay issue * drop CVE-2013-7458.patch, upstream- Test for user/group existence before creating them. Request shadow to be present for the scriptlet.- Fix CVE-2013-7458: unsafe permissions of command line history boo#991250, adding CVE-2013-7458.patch- redis 3.2.2 - Highlight bug fixes: * Fix Redis server and Sentinel crashes * Fix GEORADIUS errors in reported entries - New features: * slaves support the slave-announce-ip and slave-announce-port options. * RDB check utlity is now part of Redis and uses the same RDB code * redis-check-dump utility is now able to show certain information about the RDB file including creating version and date.- Update to 3.2.1 * [FIX] Cleaned up spec file. * [FIX] Critical bug in Sentinel was hopefully fixed. * [FIX] BITFIELD bugs fixed. * [FIX] GEO commands fixes on syntax errors and edge cases. * [NEW] RESOTRE now accepts dumps generated by older Redis versions. * [NEW] Jemalloc now is configured to save you memory, for a problem a change in the jemalloc configuration did not really survived when the 3.2.0 release was finalized. * [NEW] TTL and TYPE command no longer alter the last access time of a key, for LRU evictions purposes. A new TOUCH command was introduced *just* to update the access time of a key. * [FIX] A bug was fixed in redis-cli, that connected to the instance running on the port 6379 if there was one, regardless of what was specified. * [NEW] TCP keep alive is now enabled by default. This should fix most ghost connections problems without resulting in any practical change in otherwise sane deployments. * [FIX] A Sentinel crash that could happen during failovers was fixed. * [NEW] avg_ttl reporting in INFO improved. * [NEW] Sentinel: improve handling of known Sentinel instances. * [NEW] Redis Cluster address update (via gossip section) processing improved to avoid initiating inwanted handshakes. * [FIX] Critical bug fixed: There was a problem in the way a cluster instance loaded the AOF that could cause data written via scripts to be lost during reshardings. * [NEW] There is a new very powerful BITFIELD command. Check the documentation here: http://redis.io/commands/BITFIELD * [NEW] CONFIG GET is allowed during the loading of the dataset. * [NEW] The DEBUG command have new features and can show an help with DEBUG HELP. * [NEW] redis-cli show hits about the commands arguments to the right. * [NEW] GEORADIUS got a STORE / STOREDIST option to store the result into a target key (as as orted set) instead of reporting it to the user. * [NEW] Redis Cluster replicas migration now works in a slightly different way. In the past a slave could migrate only to a master that used to have slaves in the past (and if there was still trace of this information). Now instead if a new slave gets at least a slot, and at least one other master in the cluster has a slave, then the new master is considered a valid target for replica migration. So if it will be orphaned and there is a spare slave it will get one. * [NEW] CLUSTER SLOTS output now includes the node ID (in a backward compatible manner).- Fix installation example in README.SUSE- Update to 3.0.7: * [FIX] Many fixes to MIGRATE multiple keys implementation. * [FIX] A Redis Cluster node crash was fixed because of wrong handling of node->slaveof pointers. * [FIX] Fix redis-trib rebalance when nodes need to be left empty because the specified weight is zero. * [FIX] MIGRATE: Never send -ASK redirections for MIGRATE when there are * [FIX] Lua debugger crash when printing too deeply nested objects. * [FIX] Redis-cli implementation of Lua debugging now allows to use the SCRIPT DEBUG command directly, switching to debugging mode as needed. * [FIX] Redis-trib is now able to fix more errors. A new CLUSTER subcommand called BUMPEPOCH was introduced in order to support new modes for the "fix" subcommand. * [NEW] Redis proctected mode: this feature improves Redis security and makes harder to run Redis in a configuration that is unsecure because no firewalling was used in order to protect Redis from external accesses. * [NEW] Cluster/Sentinel tests now use OSX leak to perform leak detection at the end of every unit. * [NEW] Detect and show server crashes during Cluster/Sentinel tests. * [NEW] More reliable Cluster/Sentinel test becuase of timing errors and - LOADING errors. * [FIX] lua_struct.c/getnum security issue fixed. * [FIX] Redis Cluster replica migration fixed. * [FIX] Fix a race condition in processCommand() because of interactions with freeMemoryIfNeeded(). * [NEW] Backported from the upcoming Redis 3.2: MIGRATE now supports an extended multiple-keys pipelined mode, which is an order of magnitude faster. Redis Cluster now uses this mode in order to perform reshardings and rebalancings. * [NEW] Backported from the upcoming Redis 3.2: Redis Cluster has now support for rebalancing via the redis-trib rebalance command. Demo here: * [NEW] Redis Cluster redis-trib.rb new "info" subcommand. * [NEW] Redis Cluster tests improved. * [NEW] Log offending memory access address on SIGSEGV/SIGBUS- Update to 3.0.5 * [FIX] MOVE now moves the TTL as well. A bug lasting forever... finally fixed thanks to Andy Grunwald that reported it. * [FIX] Fix a false positive in HSTRLEN test. * [FIX] Fix a bug in redis-cli --pipe mode that was not able to read back replies from the server incrementally. Now a mass import will use a lot less memory, and you can use --pipe to do incremental streaming. * [FIX] Slave detection of master timeout. * [NEW] Cluster: redis-trib fix can fix an additional case for opens lots. * [NEW] Cluster: redis-trib import support for --copy and - -replace options- update to 3.0.4 Upgrade urgency: HIGH for Redis and Sentinel. However note that in order to fix certain replication bugs, the replication internals were modified in a very heavy way. So while this release is conceptually saner, it may contain regressions. For this reason, before the release, QA activities were performed by me (antirez) and Redis Labs and no evident bug was found. - [FIX] A number of bugs related to replication PSYNC and the (yet experimental) diskless replication feature were fixed. The bugs could lead to inconsistency between masters and slaves. (Salvatore Sanfilippo, Oran Agra fixed the issue found by Yuval Inbar) - [FIX] A replication bug in the context of PSYNC partial resynchonization was found and fixed. This bug happens even when diskless replication is off in the case different slaves connect at different times while the master is creating an RDB file, and later a partial resynchronization is attempted by a slave that connected not as the first one. (Salvatore Sanfilippo, Oran Agra) - [FIX] Chained replication and PSYNC interactions leading to potential stale chained slaves data set, see issue #2694. (Salvatore Sanfilippo fixed an issue reported by "GeorgeBJ" user at Github) - [FIX] redis-cli --scan iteration fixed when returned cursor overflows 32 bit signed integer. (Ofir Luzon, Yuval Inbar) - [FIX] Sentinel: fixed a bug during the master switch process, where for a failed conditional check, the new configuration is rewritten, during a small window of time, in a corrupted way where the master is also reported to be one of the slaves. This bug is rare to trigger but apparently it happens in the wild, and the effect is to see a replication loop where the master will try to replicate with itself. A detailed explanation of the bug and its effects can be found in the commit message here: https://github.com/antirez/redis/commit/c20218eb5770b2cafb12bc7092313b8358fedc0a. The bug was found by Jan-Erik Rediger using a static analyzer and fixed by Salvatore Sanfilippo. - [FIX] Sentinel lack of arity checks for certain commands. (Rogerio Goncalves, Salvatore Sanfilippo) - [NEW] Replication internals rewritten in order to be more resistant to bugs. The replication handshake in the slave side was rewritten as a non blocking state machine. (Salvatore Sanfilippo, Oran Agra) - [NEW] New "replication capabilities" feature introduced in order to signal from the master to the slave what are the features supported, so that the master can choose the kind of replication to start (diskless or not) when master and slave are of different versions. (Oran Agra, Salvatore Sanfilippo) - [NEW] Log clients details when SLAVEOF command is received. (Salvatore Sanfilippo with inputs from Nick Craver and Marc Gravell).- update to 3.0.3 * [FIX] Fix blocking operations timeout precision when HZ is at its default value (not increased) and there are thousands of clients connected at the same time. This bug affected Sidekiq users that experienced a very long delay for BLPOP and similar commands to return for timeout. Check commit b029ff1 for more info. (Salvatore Sanfilippo) * [FIX] MIGRATE "creating socket: Invalid argument" error fix. Check issues #2609 and #2612 for more info. (Salvatore Sanfilippo) * [FIX] Be able to connect to the master even when the slave is bound to just the loopback interface and has no valid public address in the network the master is reacahble. (Salvatore Sanfilippo) * [FIX] ZADD with options encoding promotion fixed. (linfangrong) * [FIX] Reset aof_delayed_fsync on CONFIG RESETSTATS. (Tom Kiemes) * [FIX] PFCOUNT key parsing in cluster fixed. (MOON_CLJ) * [FIX] Fix Solaris compilation of Redis 3.0. (Jan-Erik Rediger) * [NEW] Variadic EXISTS command. Now the command accepts multiple arguments and returns the total count of existing keys. - added missing sentinel link- also pass the bind address to the redis-cli for shutdown (boo#835815)- update to 3.0.2 * [FIX] Critical security issue fix by Ben Murphy: http://t.co/LpGTyZmfS7 * [FIX] SMOVE reply fixed when src and dst keys are the same. (Glenn Nethercutt) * [FIX] Lua cmsgpack lib updated to support str8 type. (Sebastian Waisbrot) * [NEW] ZADD support for options: NX, XX, CH. See new doc at redis.io. (Salvatore Sanfilippo) * [NEW] Senitnel: CKQUORUM and FLUSHCONFIG commands back ported. (Salvatore Sanfilippo)- update to 3.0.1 * Sentinel memory leak due to hiredis fixed. * Sentinel memory leak on duplicated instance. * Redis crash on Lua reaching output buffer limits. * Sentinel flushes config on +slave events.- update to 3.0.0 >> What's new in Redis 3.0 compared to Redis 2.8? * Redis Cluster: a distributed implementation of a subset of Redis. * New "embedded string" object encoding resulting in less cache misses. Big speed gain under certain work loads. * AOF child -> parent final data transmission to minimize latency due to "last write" during AOF rewrites. * Much improved LRU approximation algorithm for keys eviction. * WAIT command to block waiting for a write to be transmitted to the specified number of slaves. * MIGRATE connection caching. Much faster keys migraitons. * MIGARTE new options COPY and REPLACE. * CLIENT PAUSE command: stop processing client requests for a specified amount of time. * BITCOUNT performance improvements. * CONFIG SET accepts memory values in different units (for example you can use "CONFIG SET maxmemory 1gb"). * Redis log format slightly changed reporting in each line the role of the instance (master/slave) or if it's a saving child log. * INCR performance improvements. >> Refactoring changes (no new features nor bug fixes) * Blocking operations full refactoring (blocked.c) * Client output buffer memory tracking refactored. for all the details see /usr/share/doc/packages/redis/00-RELEASENOTES - refreshed redis-enable-bactrace-on-x86-and-ia64-only.patch to apply cleanly- make sure we do not daemonize- finished systemd support- update to 2.8.19 - Don't log admin commands in MONITOR. (antirez) - List of commands flagged as admin commands modified. (antirez) - Lua cmsgpack lib updated to latest version. (antirez) - Add symlink to redis-sentinel during make install (Rhommel Lamas) - SORT: Don't sort Set elements if not needed. (antirez) - Fix zero-ordering SORT when called against lists (Matt Stancliff) - Update redis_init_script.tpl (Ben Dowling) - FIXED redis-benchmark's idle mode.With idle mode shouldn't create write event (zhanghailei) - zipmap.c: update comments above (Sun He) - replaced // comments #2150 (Deepak Verma) - redis-benchmark AUTH command to be discarded after the first send #2150 (azure provisioned user) - sds.c: Correct two spelling mistakes in comments (Sun He) - sds.c/sdscatvprintf: set va_end to finish va_list cpy (Sun He) - sds.c: Correct some comments (Sun He) - Update whatisdoing.sh (Serghei Iakovlev) - Include stropts only if __sun is defined. (antirez) - Fix implicit declaration of ioctl on Solaris (Jan-Erik Rediger) - Silence _BSD_SOURCE warnings in glibc 2.20 and forward (Johan Bergström) - Mark whatisdoing.sh as deprecated in top-comment. (antirez) - getting pid fixes (Serghei Iakovlev) - sparkline.c: AddSample skip Empty label (Sun He) - sparkline.c: mov label-ini into the AddSample Function (Sun He) - Only ignore sigpipe in interactive mode (Jan-Erik Rediger) - Simplify lua_cmsgpack macro and fix build on old Linux distros. (antirez)- redis requires sudo for the systemv-init script. As of openSUSE 13.2 sudo is not implicitly included in the dependency tree.- update to 2.8.18 * [FIX] Linenoise updated to be more VT100 compatible. (Salvatore Sanfilippo) * [FIX] A number of typos fixed inside comments. (Various authors) * [FIX] redis-cli no longer quits after long timeouts. (Matt Stancliff) * [FIX] Test framework improved to detect never terminating scripts, cleanup instances on crashes. (Salvatore Sanfilippo) * [FIX] PFCOUNT can be used on slaves now. (Salvatore Sanfilippo) * [FIX] ZSCAN no longer report very small scores as 0. (Matt Stancliff, Michael Grunder, Salvatore Sanfilippo) * [FIX] Don't show the ASCII logo if syslog is enabled. Redis is now an Enterprise Grade product. (Salvatore Sanfilippo) * [NEW] EXPERIMENTAL: Diskless replication, for more info check the doc at http://redis.io/topics/replication. (Salvatore Sanfilippo). * [NEW] Transparent Huge Pages detection and reporting in logs and LATENCY DOCTOR output. (Salvatore Sanfilippo) * [NEW] Many Lua scripting enhancements: Bitops API, cjson upgrade and tests, cmsgpack upgrade. (Matt Stancliff) * [NEW] Total and instantaneous Network bandwidth tracking in INFO. * [NEW] DEBUG POPULATE two args form implemented (old form still works). The second argument is the key prefix. Default is "key:" (Salvatore Sanfilippo) * [NEW] Check that tcp-backlog is matched by /proc/sys/net/core/somaxconn, and warn about it if not. (Salvatore Sanfilippo) for the rest see /usr/share/doc/packages/redis/00-RELEASENOTES- fix bashisms in pre script/bin/sh/bin/sh/bin/sh/bin/shs390zl31 1736500281 7.0.8-150600.8.6.17.0.87.0.8-150600.8.6.17.0.8-150600.8.6.1 redisredisdefault.conf.examplesentinel.conf.exampleredisredis-benchmarkredis-check-aofredis-check-rdbredis-cli00-redis.confredis-sentinel.targetredis-sentinel@.serviceredis.targetredis@.serviceredis-user.confredis.confrcredisredis-check-aofredis-check-rdbredis-sentinelredis-serverredis700-RELEASENOTESBUGSREADME.SUSEREADME.mdredis7COPYINGredisdefaultredis/etc/logrotate.d//etc//etc/redis//run//usr/bin//usr/lib/sysctl.d//usr/lib/systemd/system//usr/lib/sysusers.d//usr/lib/tmpfiles.d//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/redis7//usr/share/licenses//usr/share/licenses/redis7//var/lib//var/lib/redis//var/log/-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:36952/SUSE_SLE-15-SP6_Update/3076bf965186c7b7f2b78306c0745d79-redis7.SUSE_SLE-15-SP6_Updatedrpmxz5s390x-suse-linuxASCII textdirectoryELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, for GNU/Linux 3.2.0, BuildID[sha1]=9b82050f4e3e3147494313feb8150342aba62309, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, for GNU/Linux 3.2.0, BuildID[sha1]=99717f3ab3d7449e5d47be6038289cc210fc1cbf, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, for GNU/Linux 3.2.0, BuildID[sha1]=97ece3690217f334e7ea638bec23f7decc4277c0, strippedUTF-8 Unicode textASCII text, with very long lines+-RRRR RRRRRRRRR RR R RRRRRRRRR RRRRRRRRRR RR R RRRRRPPR!RRRRRR RRRRR RRRRRRRR RR R RRR RRR'@fXBD/logrotateutf-873255110f069203361d54a783acafda3f8116e2639a124cbb67475e0abb7b307?@7zXZ !t/ ]"k%jx ^P)֚i.z{\.ک xG!]-ChyqHjUvN&J ݁;}I̚*xמ/ͮ98w8$j YYo2h!4]-bh_ߺzbTm4ώ1*鎶AQ֟D+V. >4ƻ&㺬33EU[],^Nަ9PQ }@. `"~B5?{R݌l9y*ڗ]&B[Ҥ% !o%Θ [ECǾZ!:+g%i0v̂9 ())[[y'3YԐ*{@Brz[RSDxI 4pUJcwDnn[0x'?] ҳj< DfRlh{ ;IC`/̰c9lDg\Y߇;DC"Tj]'֠4.^h!n/32#wo5ͬs"笝 bh>pBZnR#york-ԍF,.&b*-(&5K.A'Sd"َZyAl{*F~PXp@4( Jt~dzYX.xyn5OJ V9D}$pK&7UuUbB'}:7}|ә`(:EzTf=$"ij5cAxX#lJ.Wt뚮Ů*tZy2ȮFT7^ 6oj=a~BsoL(0itv:m&@ea^1+&6gYO7@枈TP=սXp#G3Jq(p|{<:WxP_G3h.$ʟz/LRV"s{19+=nD+%ЕLr.Y* ^вYέP4<R[>!yѧpIL0-MO6t/h Szܹ,D"˞;gm|زD[RCX_ν&-Ku} RjeH+I:ns,'F'cEɀ0GwYeة @w%< l!"T@lI;dgӍ+1IN?ѳ1H d =¹n%B[W\^֮OCVڟ|e -,L-\2`NCskH]>vTgm"Ѝ߷I[:5A! 6 ό '7)֫`D9}~)A/E ~p=j_k!PǢW$m3:"z{Dۓ5,{ۻ-kl ;zw?:sZ@6v5 ^:/Dsq>p]^V}?;=J^$lO5vm%Q(BWh/Y~ M<9lysLhx _AO(?6O/D.HmUO݋:j$+H!կԚ !={ (9sv0G!2uɄ+@Or4!FO *|.Wo{j HY=UqrB~;qBGώ29Ukh~ =F.>WdnݦPI٬ܽHnrGV1ueT*VRU0ِ斻kGq(a:eNl-n3՝?{ϪQ 9%8֛EoGԻ-q~ p\Oˣ3l4 .aUۣP9nZ  AU˰1%OʉEe)qe_= GƯHhKGg L5<,jdJv+ %^W9rnP;1']^,t~9HUA,4e^<5KKboA'vHoA҄j4'f5#N4k`;_=@8ay ZiF*5lNȲYTA٠O՜%̖ϳG$~sx):S-w`jG6tdN4z>NwLjbݳTY?}r!nN:75ϐ}^K pc<`ix_@tRAOiDw4xp 0JTkW5ܣ#{8JxIrNRy_:[1^,75gw2Mn mh 1BoW"ܧi* ed=:Bjкw0fsdo9G+&LKw1+7(?FIwN`FQ=&ChI? r%@S#4pv/eYek):OwQ:xvhϚ<ᕂ:TT`qTZ2]R%ϘG,'nʩӝ ] DaG>&)w!Eע@5V=\ܠ*vB.'iC-i2:ø1RVOIGRz9hOFH2"÷PȗZ:ipOpȓߠ_KL{`;N0fٴ2d7`Z5 c6Q(m~4_[eᕊvCܡ4A+.uxa= ??ٕ2p +n TihVQ|rbz;/!z_ѯ5fϾp*x!"Rq/хE=D;,hz_j lPf z*C Q5`"DDȈfTIJH\?4eB/d]::4h-j?wtZ5 9 yPZiy<߄ɐr.6]& wClk[dSz$R'ڶ{ϵh=jsHՇ*pvmor9l|XC82!3E]$ȲzL4':QSz7EVO% JOqS3s_윋# JvekT' *M`q^ᄴoBOO# Q_2E m7H8L{!H1Qojb:b5dGNnfѰ;pHaVWC 󘇧ףL$Ok&C"&MeoovcV $ ssk臁ÆֺމiRđr .}dC%ZȄ%Ġ`cɭn s`I.] ?>gFaK#q ̢iOn,ƥOq,D6'lH+:bI _ʑۦ%Cj"&dQ !@ 4Pe=qgvICa9Ag"rpA񛗵u1T-n 'l?残Y]T|(U P\cP[ kk\o{2oR—mbl1Ŋy?i&H|y猶4 ;VM9Kg%\PPmKcK9cQ(DղeA!6N \XFkhӍиaQ,[diW 2'J^ OuyHQ] o) 4c{I͵=1&@,Q+TvBSj!U>熇/ggsˑb NMw*EA8MiZ\ Ͻ3q Vy{&H>R&yeZ :*?j+S$?-]_ qȏhpwzŲq)ǶOτθbznQk&ZNT>L/a8e9igmF%/Hِ2 BRFad1b7W[_f ¥'D,"Lc/܋ VÚN# .\G5ӥnTG vv.΂ч ]9X«H$|5ѷ߂DΏ:Sѻ1ϼMD+I"..x13 :t1K"Q \B\*3J)z~|au'+5O8 XLљ:tm0FTwGljspOh.4>m;5eeYib Ђ'+v#hፖq.&i{y Rs角L 6ΛgMPFΛئ:}t62lܥiw_RP '0 Aj3g}eDuV8xS|,379d)Kί:bm^P!d[Ppgh dr7l;7bW{T"^iC6p[39Ns%y~\ݏ 7Ĭ0}mNkBV"d} -]OU7ZŤ2o7 YQӎx\*$B*빢pyr֖7`X Nz RZNj)3_N gCuQWL*QsY0x3ntybNYy%v?l165k/OVD߸wKf0bZל!J 0?>ޣ)|s,"qEt׳@o-8 CP CͦDРq|wɉn-ڑn!<(W #UGV: t ⯹k% >$n El^XN*uU+q싼Np$;0,~+W#ChJ>feuKt%D&?_W5FEI _k;vMɎ٠Ft8j )i<>/ s[ŲtXTRA\,̻?+j#"t1VZ9i7voqgZLj]^=G hQ]cy>rc K"0)_FV{~7l :'~ ',j1@}͍2llA_䒱i6oъo$IM4p!<}J禽UkAga;kd,:S/|9h=ILٱF`9 ח~2!wJwm!k g[E5d0s2fPb*$;ζ"e4hklB%"fĦ "V+!8o\|8wC*;brb(D{}u"$|%m~g{wl.*I{ 9JςŸ/ޕfw)!1pg| "5%,$~җx=_!Ѕn7O0R:(EcI^K}j薼"aG~Q:ƩH468*х8ɐ7"cNL61M|_ɏܨFέ'ykYS2 Zo"PT)/H 3 u\b0ns7ܝz3\YAH¸f Xl_wr*DU9{~_a0ڳdLPX\&eמ!Uw $, UCB )jv_#\I;D@{f5D}4\ 4߲yhAƲ1.1 `V|FfeoM/8Eg}KTںמZ(8o+4,'6]~I9gH}Ѫs$V|T!&%BŎ| McbzS;,歾>=^ACHà>-ezs?/uݣ .H;lh4c;,`^Jtbbg|:QiJ!NkFժPsōWIirD@_Sۏ[c%RL1P&q*1&VZ\BZ8êQWfS616o"IZ=,5A{YܧuKCgM>OPcJ\㌦\W^0pXsf;L$m fWEO>94˟$xhr&6f}/3ߚ>$ӛ.IL4Qose?(O说Ha!2C?qCm"q!k͋\vF̰EX{z O\E9LG(#׻G$q24fp+7}0*1Hyέ~0Өk rRUhITDE- +4S!϶5ܟQ^#>n0T6 W;';׃t60pIX{n^"&F<'j99D| -l"w NZɷX>@L SbH`|P>^@ f=<9 ! Lл~@բg})7&]B*l[`ye8>}H&ε'tqR~6v9kރ̤,08*>$.)7tnEiAc}f/$ȫ-T|֨ݖAWJ4VLW.Lo.]PkH!no0Ze; n$*DݙZhЌ آ /-t* ..|%K0^ғM0Pܖ=Y* t#JpOLP,I5NK(Σ]̣(m0­\wDTLzȶl@e'T쒨!Gھ[fuof=8= pl.8JÀ| ?*&R4*WqnլA0;9S5lս 9#ΰWXZvJ) {*/]:َ-UN_oYϢ2B2GD?16#]67iX]h8]r/f/uf&㫎C=Z5,`fXËXFrpS5T1ewwx_i*GUvA%ajJٰ0 TMy.1z#3ۚ/ 7>{jrti3)/]@*?^1m6' 86ƥ w6v=1YT 5$/fP_T}@>wˊiR O Ogyp߂*mHGX@[ؤ(M.RZb;br5?ȘTc2j mi.­ģ|ć!Cu] e tܖ+ᦈ X_ 8X\X29Lw;ѡZ_{2qZָP`dQwu˷Khq(gZY9 Y!I*u+5X+%Y$*AD1;n >H K`c6aư{_cCN!c 7yn Dl\/mb3'?*TLDIX:7K[ؽlI[ƭt/dž "ƥ)={ZG?#ۘ.yKu:ujagI^k\LjM{:ˬɾ(Z 6D@x˙zH(D7zJx \i $]QрYk1H.oHY8DD_ӑlO鹿 ǛߴpNޝHiPXIA)$=u A`$52G,9I?JLa5yXK|#kpXꝄ<_Ir!{W.hE0!f\(?lIZr>P!DTS"ph~F iUp8A>{!ktx8:lb+pViјtERx)y]ѤBL ԁxTCfBv ]FZB<⋖ 枠hC|\^]q,l˜%!sצM.L|;(|j9%+͟!6$,LNy $fbps^L^U, ;թxCħ.@rcM|^/pnXK⥛zyKzܸ[<;jC;1Y9- :;2^<5}wY>دfWKAg@xoWc[Z풮CwnБ;F2/8Ze[:&w<qumОqg]P˲?(i[eW:1Mw4Y7mtCtm7 <H]PfZ-=VnjiTU)CGnYoD2L N8-O؂"Nrc^IIJ݆(j5,0$]FHqO-!g?Cxb_ 2?D!S54Uؖg,oAhCLob1ԭB^VMWez$6Q?m ܒXd A|X8Qܗ)0S`?0o6qYg CRM?&4vX3he"DP GB6Hq;ښtbZ4+&[9][Q:E ܵ&QS̃%9:~P>$c|,[ Wg8| ơ=(Jt[.򈍫CQ^ҸT3ɠ' _[']'{0 ryfb(8]=022raH;u1-K]HXha]宔0ފQ QY-%8I k;y@ɪVsfH=M9PǺ"n|v߳5`&Cw0k݊{lIo!+QNcҤ~|lHG A9-kgݫhvν# 7Ik@yh6fĐq râgdFm# 'J /7{pDP}NA]ՆV2g#KEٗdS,n%jZ(J;-PU_]*tryk^V\=`̟` z0i'ckD2(GM ^ҭ{̶NjZ bD #$aځ5*Xg2gC1!b-akF}"1_^YN'qst~>7y__Zdp h:F x=%hb%dXZv*jK|;\ <ީ6sK'LNAG?22G *l2ǀ4}˳ k($3;KԖ m#)$ Іi:{&UJxl{M}[޳XX7''8UAJY<|Jq͡IuF3׍Ams8{(OT+1m⏣WU ͤ ':VAP*Hӂ;3mÅ+aE,mPI@R q+6 8!E84.Mv@TyTMu'oFnw$3AI!#9ݦA:!EޙVʪDߪ~2Q*SOXw9/g8 ;EPK:[>}ޒJMsOFi!.pcme+@7xf}[4Dv|.Mj+r@T07rf]L~.֚7To$N/7>Z9OӬ7YmUVm 6z&֧:zjaz+XƗ2s'%M.?=re S$sg0n`⾲qrPɦ7@I' / @4eKX888Y[v/kț6?i ;~ژ tނ?ls1:Ct@Y6)T*pvJ +'ʡW/Svg //뾃5O㵵ΞcD<ұhoT+ Dn6 j&qMU})ayP<(irۧ]R!caݍ }  w *yq~iT vO76aHY@L'6@Nd Z)8dv,kF{IQnYmpk [0Gj]'%S7)iƒ]i͹Jkl~75צ.]JH-d z@销tO}Tܳ^TvSºϏ5 pQ柁m=CsEc^ (+N\=<[68* 忞*aRH]ۃJL Dzwd>AKZA`xg q>s@E#Ѫ,q= s#L2LXdb'4cЪ~ᮒY,+|zNŧAV[ύ{݄ ,#'L.hꟄZDKW*--$kq2/w*Le١*݆3z_ lrCQSK#6%VcuN;^OOC%ZbY6qGIވb0* pCO@ͤ۹xCO[-T~Sv ,bagəI8@i~%t2sm*6 N~i`jݐ)yY ~ΚMS% }jR׋B$ 4Y"i/Vx13a/í-e&.sy}jڙ`/iݽ! NU5_!wV13]6AV^hƜckۃ;Yk !=vXu-i5BFH0 &{}Bs`NǕ baG)΍8 qLl 7*0 3+@K{4w1ZIJgOgw=]- QR[ꠂ/=ܑ81;SȊEo朚Tmav=gU߫4ptQJ5[auQ6}e}b ]T\gZ}.b*{rwsަBww:+uXH4 B}UⲖ<(&SƦb$lv1c,qɮVݱ wʔ|L-;#8.~y*DOWV .aW% SΞxz` ^e-`X ~a">XU>yu}xOGW܀5r"%9.'wXHsZ_tÊS0У8z$L;\dl !'rx%BYcS|K%aJ.ʸ 4Ê l>ٚ.uZקㄴ|/ҰͿO1oW%oн߯+;un@n.U(^j:ƈ~P-=9 i ,Gx|OHXe!J9KM*6eZ]r_MЍͪA\P5+&UKR#S٧@U9!EHB)} Z&z]]z PS`-ڨþHܘ\2v|}V"dkO9glY5.qC/s(Ѫua'*ɰK1= |ߣ~Ω2P[J >8}̚y@ zQ؜dƞ(췤&Wdm4`tK{]'|A56c4< TO^Iz8Awo<Q'pd#_~ d74oCJM ط 1(tÅf|~5*Kb{Uzh;֘LZ3C=d n 2sɀ<)ZP%涓3D"σaiczm!Z։=&M&%+NK13L;[;/bgxz5I*%\f0s:3b 709#`4bfUZ@>3t`U:p_ R ,+oin.iB|BKY> Wxu[h[\^5̜w說`VMkYhM01o`[g*Yqw#[BH;O;K_s/D RMR+kϑ 7{͟ZA} PDav^&e==I%TMHϨ*F! t!5/^0>:{Q_ghi:CY7{!Y-FV4cEGWBf {"OmY((D0nw?.`pVL۶&H yq/4Fgco 2D SuCVM:P.DCHw0O[.q#S''cajjQdno|CWȚMp硠q1R-PYv'$HF*>}[ 6ouAZG1{u2_:YO_N -)n˓"Eyo ۔WNJ1j{_2Ij=j[usT+hӶE `wHQ7`mG;eA4 jf"tW] ɹ0lZx-HFpu[ EC 7?4ST //%n뷮>w/A^&-/r(HiWư˞d`KVͬ$}^9JCkf &BŚI. OLh<[=Ni&b 0{LCQ L>9V)欈0Rie3R;?l&jNUE&`=.CIpR/-[Tr" x; RNLMG卜a\aE*}\XjNpC6|cͅ QXla\Bɲ'v [xnըxqkT>yP6UNz zBY;)O=[wAw =-z\܊e~fzU*cĘ8s`0Ư 4V@> 6:_.EnXX-W#feh/ CΟ ۏ/Lj!*K`)€}XmHgɦ0n 'xBQ|(t@{e@S)ܢD y\‹UG>@xjgRSu&P{%f%I/L*9y箾<$2(yfi/qt# P8M $6p- [[4:zIٹ׉SRT$g ߸f,@ļ̑p+%:PgD"d^2_q6Jڌ]1#mtqCRRN>T߀Pb"%j,J['#pPs3ih7#"ȐV5@֗ X3G޵ghd&W\8i0z[J;0ԚnW1MR*}leu@II?P4(tNS !GЋJlgzl6 A?ZѨHOkϝu o `nm 6ݏY:+ &Xv5兝eU.?~`-^D67whS.Sվ8o1v.8i]e/e"_u$B}=WvrG%JVV(N,^Tƒ\OiE8d?ǜ=Y0Udn{ӪC#j+_Ipn1D t{l)aD`sVY$jj, 4wSW*>dk%K~B9 3܃ ;M P&D1pxa4s'(ٍoeWu?y: Ky{kM ]Lz)evԱ0 Ge7O_ A\(X<  A+GF5Q=?)gK1d'R\nʶAf߇h:(&XaF9t`0[21_QMToDDctdg]1Y" Åڃ`%Cʫ! n# ٯkgk}B>YO^v/M$q*_S%Im h?(*φ=%6" ےSMGw"`pPN.Vҽ8zdTm1 WaY(RvejG'2I6)7*e1ׯe㞇RQ, טd *P/ڱ.ש+{ ˙/v5g*0+Zcffӎ;glՏcn Gy% lM,H$9M g2<^LBaW𞭉bT6㭢XionfBJln. :J2n.Q}!ɹX8HuhjR^gBSCWj l>w_9쀊k}ho%8掞`귄fCqS ^؊#q .6-#-b ]J`ϼlX$# wӠ(FЩ8հlJl -zQ?bJ0+p fަ]\mOJn~lMDmb1B`'NwN<~xR9Hr xeCϰ0څ akW׿ D1?Sted{P- zn>?TBq<!ͨ@F{\5a(Mz)0lX g]"(p$`?sٓd4q(Ģ<~@(:Rݕ56 J%cۜ dp9؄&bɐ!D}O4ca:TـWu8J7ehn:j)Ĭ[JyUh?xj20W+%z$%z,J hΨs+2ov/)SS CoN WKQ|v (}o5I>NώNeeL餠&@H@bSLFzK]gY~ G«'\įwXl82^xQF ?e~CHW m']1yI`eTf9J\&awҫ *yKCcF@-Cvass=%:k`ʠ.f6T%ɕLEޖ%h%̦3wLucttMruFO*Ӹi쳵z^0_SX7 <>xbQFRMט\0Hd,ɐ .ewF'r׈Dg$m>Otx\9s 5H&J@'{{\//r̶af"yt~ 2Df]ׯOT 0G~^ QcbeiWB_#ZI{+ܱgʏC`Zp;e-f͕^`~{L_'`U({h7'q?=ߺ!HJ Ł#I`#j|e3cE </ vq,$1c#*63_Z f $m6B}9 xZrì S(yzـ _xhDjFy"%1W|˗NR̞\)8m:.1A; vEO;S~L(y9.'Rt&TYzfW vX&"|R')#M }6k7+2dD8僆p#Q`]w+i 8:^ݫUc+,_ݜ~v2|0cw+{yK F =6Vܕ!G>}(j>g)q+H[\P5ecjl%KD [w 9IN~g[z#qϫg94T pkqn(jqfk10"lJ6;o'ԉyEuGh24Bۙ@ C zλhAl1#gS;\m ,6 װqℒ_^_\y0j_B[H@] L׵c- ?O|Huav:#2* 3Y5o\yW4 Ú 6ժT2|YG%H;j amΝ߬d#R-RW8\^er>-*t+{3صE.;OӸ},3 ާhn:8C-T=ݘ1\" Un{~uόT4CZ 򃀺7D,HL߫l*WfaRSr*Ɂ"FѤUm)B8ГWMf@.^櫁9,@N#r4x8Rؙ'&^)Q>V{L`S~6޾!>%%rrG>I _͵Lvn)#@1|W^X(7S40kJ0XT?ariۀpFnFѫ (>*jfAکY;fz!MRR /K)=_n;A}UȕzYpDZ!S<<:W_9T^0`1MuA X3ZJвtR$r}8>rs"뿸L̔'ZMհq1znWQ?zȮNtδu+驄t[*9A=(a;&'o$cż_mMX.Bo>+2qmw!9 XF*I=OTRfC2Ha! ,Wԟ/qkKjA Pz,U= (.Tې,Bk<'0s«P(q4]x?jf>Pї#e [̟vO zlI 2NHQ܄uDl )ܼCiל (OGRQ9;/iTe>hi~A7y=#i[kh]vD%΋o.K=a Doc,XLm:ycw#]v[B_"썀:!llk5՘ezC[!ץT+Pcz_X|O?l^](u,5W*苙FM PͲfvpA)|&JцЬU* {u;IJ HC;Um'VJQ1{|v?˴0"ҭ1|_FNJܘ gt>α.!Hn*yw՗9Y\=3R,|G?\W& j_WM ɥ^]3;NI8Τs 4/h0rZ!#X 6v'>M0% tѡ'Us|5ӥ"ȒO+#/Nư!1T*kZUXHx^_W&|m!RI p(iSԑ" 5#Gu^4&?|ޑ#X76 ?Wת AQ( c_UYslCxuy3h9KfSXBw߾ϊ >U%/Xx14>FIQfݬmF^?K4EqvdF#*%K*-X*Loo/@$(R4$,Nr>q~G1߉J (yz*:)|mυpρ'ƵwepXtݼ!˪H!' aw{Pj#אlL#TS%(|ShiFݧmmx\?;ӏNi-{u& HW)Hqkc@^#mx:];645TH&4ZoKi(pc!s#kw+Y^&Lnr4<[߰T_qv_>Ze5ܪ"hE2Mm~FJ o~\c;ͼOa; ۴Oo,DykU!LLN?̱UgW*TOO^br~mɳtJP9] IB?~mr@v/ gpU]Un6<48D@` 3ݷ2WKH|Ui9~~Yvz[O'4j] }גl0~ Ww|.e45nRI8q}}pGU_V%T&hF}#'_s9ζpeDod/ı3וD;@ 3$P]Pyh|N`䓹59_Rַ=|ޏ[xh<(2~!xIxzsUqi98U 1e+ro1̆$'?%bҋ19bˇE+] Jӹ`@BF:uW$kLڙȥ4bs80@TZGBTaWBMڼ}w=9\ؤS-;fe~Hs~j! #8)Ӟ5~\%p?'1!#ǧTF=|7L6q@1zi #c_̎J,C~M}>Tw;s.~s/-o8jIē%waWݸTd<2s%)&\ϖƮz$}݌#A[e=SXTE*qmzL\YMSpLUyv@iN]ms~ o40Ss}lZA!OAxD)`0( TpNj5 h2#L_sE2h@ͩII"uR{ezT݌V/$kG &@]f]_sdp9ukS.#4کGã/DJ`7e5eO$CC˅{LDV|S `53'+%xaY,3</$;@yz0.q|rt~^j)% 1FZW=*@$ "`] P0 ?6RT+u.vLE4N4 "?u\ujCzU\աM0;(;9{![/p햱* +;(Xd$JzIFLY~7*Kƴ`a:>G߬hq \-K폮|C a[ p3 z0T"2bIW4N>EX1Q~w|]F#Ou9Ǯ:\w#bȊKHCg-+n[v\ih'MDZ%&L;5CJBfEqC͍XȎ䊙4-b'A?R\hﶵҸO'Y~Ro+dxѻQLkʱe r@LNM{+R2-$" JYg7u3‡t گLB,-cLl^PIQHH5!QKoc/$o֭B aY νe:^(a 4&Jv+W V/vvvb6u8cN_BttQݑ.0y `^u,E왊!@|ҭ5\VF6Gq,}oE Tק7p03T;C1ܝ ||F_SjgItt!oD{C/oKmիLO\=P,JE8 (2"XmUY퓖˶:0@ }1S.~N1yvGVb,S?XZPD N])+si&'GuzDkx]&JՍy9PXÖr87T,`K,LA+LWIic؀/}}HQF[Һ!(bʐsVu4ɼRa5Sk4`61,zFrn^2 KD=[ɘDD _I~]Gb3TEaUp ջUFC]@e耓v;{߮Yswq YBv'Ł Q`VPc+ pI0)7*Dǿѝ Jle1ْ `ciuPaqS2\>z"=.,#%R &q4nI"٭jX8RvqJ3&inۤn#tYݏSev+(0lۆ,e7ZcN; )2RDFW<|A wO|צˊ_ƹQu1mZu<RXT}v&kCJ>$̽п|o[& (ݤ\1xU(h=[P# vuP5f'DugOĊʮ#0~HICЙ; !3.;ݯc dhjny6| 6o `4ᕀDdsiVP1:@Š! ݊z/ŝN+|ᣤ&zً 7)#UOc ZtN9GOXU*0j;޾C(@2n, Է8f >ýTOF[>m8&Qq='ʭ_Uc9:+vkz(u2Wie]~l Yt4~#(%- 49rMScD*h0U'\ c3BS1V6ΤD%80G8jӞאXcbCIA^, 0c52rj({Qs<4}l!Q!'QG }[ d-,9%*<G^8=r((bi ~aqQIrFӞ=Ä́{~~=nJ:"/vǒ޼PUԑs#.<|oOG +>ohޠ (BW -bjWan-bI0 L#Sz:jR*qP<ԧ>^`o? 4phǦFv));H+ʓ)het$<#(Ȣ<*i5l@'"M`rJn.7ADMtͬXM8AP >~'ۈ{f%3'e i0)HX- G,0瞧3y̮&l x!Q(;H]1nSv-`g9B,͝ߞ7 d#2<ai(cE wMXJI^u3}]ʖ g%+stX9Ұ2KNXk6D6Fs%hwD't| %OM+kU\K.Y1RLH 07=y CүS6b,4ŏ= 8ڪHw}r823c݃'>3AFWZ;6d#,m(S $,Kr0f'{VVf4)[v33A>|^pHvNa΃Xq:R;106<8/w )Tz8i6bA6&DI͘ ɩЦ|ApyڛQq? D3qQTw[uhTo>uy鎚n++T3VJildӓ'ފ[|*V}C&8-%K.bħ2߉N1>HɭJ_f+U;4ՌQc17#CR7zo4fF~Zõ,ϨiqNdNݵoNKSqfHK*`y^;[Kxjxy6;:;|R{AґF_ O X+ZrGx-}8_u4aѩ4TՋJ^]txFI\V{6d#|%a89ן0I__<΁j(Zsl;բּa)kvsrKprRD@ճhi=CFɷ_xbwJ@I-ʲ[_, >om} ;CҹABE}CAv =k;UǓZ.84¦5ҢG G@>ă\ stTᲞAxpvĖ}q qQ[W%˰b5!lgF{Z yeF/ۈqxqUBkYEF('W}+WJps>MvƦ%Cq"U2sRamS'A EbC=M))9O(Ā }xz_xə sc״H?n V tp4KF6G!+9Z"7dKr  %q],yc4B4i'*pp1PG KX3xUͳ\ƌzM(5~n$鿣/E[SZ~KK.-D:KPq?qVmk}Ib7AH}t;rwG2Gݎ U-We"%fԧs)0jUb͙;z1r1YSg4f%opWM4Q?xcq'ޔb|Ca1Uqu@ RQ~2u~eO+lB#`cΛ;dGyܐNq ':]J"]qH.*sw7Mid.hnXui?bP)N!l9/182tz]`G;Y#wI5Y8>4ShcAZtI ԰yM&eS~hLCW)(r [,&641Z^zٺ"k-F~wڨP!4+=H"}&OX4adl#3D D"q0JBmWw?[SpH= 錷rO`I$g ٩,S ^ 2`耐TP7S~aNVvs6IRi=x" +ŊZiN1TdoM waZܳvW-|&tjwp^g}w4JEzy6hBVC]zj6zwuPl2b-P+%ݰ̩LQmI#UI''?}Mj~s.s`vv"#:i#o~{F܊ %|i\tɿrNXeb^.BD)Zjs.Kj p-v-( Xgȼra4~ o`/.ݑh pX:w’ Vz$0ӉmzGɘX#OPΟghOsWZ\񷞏RlvXЪ2s[Q+Y6Q |Ru20~s;}.Nl Jv3 *W{{Ve\TgQqfYY ;)LO)V3\n7Cp$ _J`  '2vs;d39Qk[7=W7kWByꖏŕ9X /jkzG!;iW?Z5^TeI`%ؖ /qd{ԫ́ ;,#S`0tk1G̹+%\@}ZiP1ӫwo)%ګf[Eݳ:㵚Íͯc% N "@0ǚ;HsڊUkvp c!w{:Y\x_|PSBr8!8`vb=CיO7wlrzIp&8Ixu:ve4jh1L7IBp8!l5{x*z%P5ejX1^zEz,5h6r(3zaQ\dҼ"O!9z1,=tr?}0 F.sZ;?浪D@d$J?SjDS^9a@jv)/!3<b/{ʛgI~ ZF/ތTv~VyNK@6Y95|0vƖ:}:J''s w9𮯞~}e0 &i;l8! `X-OcU5T)[.,vLOxX_raݐACwbJckɫ,skt'ѾoscЧmÂRZ@$YDmXcQɱB4t\~Uf'@&i"`{j@m̆Xt\2F-Zb9 zr͋T<>H Oق5aN ,aV@ǛR7$Hյ,>"w;Xq(v?+-0.@ ?S[y*&,FR$BTT1R 83DzbM6V.##5Fя"˹+h,`TqӲNk\+^W!Q$EuIn-Jm2/I,t_1߯”Ff9x/M_VAR؞Tb_։ lE3;!e KB9Boz ~'厱 ޔCsTa|J5>-%pK_GV/>7h)d LxpYU-~i F1Qm#Mצ,5o2-Cq|gNK1ȤGd]:۾qJw&"/&j`ٵ{vSTfvzouq×6n`/?˦ $willQES^F*0ƿQ ȫKdީn%'g5t Lŧrg\6O&Qnء::b^M+XtpRLRKn Yi:0 C'[T=ƥs L,SߥNZT %jӥt]@7 ri,X?Yigk^MItFu U/<53*1pb0\}lgFhjF{gjSsޤkISZY+#Kw|]K1 xh/"xSa)//&{g?+83f*5%$䑷]Ox};+h)`f^ R (:Ds=^AcfOFNnj^O ;ơݑR$N-u^1[ D"IHDxO&vڜ6/HsR12"qH \s# ?w\WO"@r#Ir9ؗ<蠟DM.$Ra]5;FĦFr[GtˤeCAWQdC`<5-HګTNcr%^ Dq 4R!v}>ֆAn~H6{1)y86zx,NxVWuvU7p %h~K1nmN{jDG9^"$D=AСsۼ< ;+^?iSƬK5s~krTME2թWᷖ/p#K#MΊċ&HO1 >;Eg 6X>7ߺWQWnb¹}7p?%:F+kV'U:tRţSD{Za a×zQ]„[xoZ hc>%EX]v  = ǜpߊ'XOuv9s#'] ~^wv^)h<2We' YíXw]=fg=6t$5<is eq_ୖMzJM&NPu?nZQ6~n9(Φ @ɕS ^Db9Tbw߱;Xi QK_G55Eϊ&VK̙Zo/w=%]4;TAu% 9pD7 HPҏƠ9tjr[ <*5Wզ]W*gFa&Aŭ򃰒ԫ/| ah.9KmL~3L}q,TgƟ\Đ-VQ#G{^/Y=H%K:%- 2.q'~ϭ=Ψ[Sjj 7w: .2;"F9{PMd9Ѫ4h)İ-Q ϳ7W5(I @ĥݴ΅ -Q+Oetf_ 벗jܕ j=-χ#Nt.2x)bw^ﰦevNtX-琓Y HKElk%iܠrsxږdq榢LZwzTӇ<4Y*de%q瓥aɠ^mTAcûthʈ}Pv̫v*7?l 5dGUaA؅};! 8Bt# G1/tbs LK,v9?r( UHn@55 ,C|"\T|Cq:8I_ad0|Fs߆>2 8&\9%vl 09?MB!7N RYAdC **T9MHgg^_\ڦ$?K_Xa1HeAݱ+m+넙K$f|r!%=c3 R0ulJ)(d )΅TqFc%;! oѻuCK"MkJ ۔VLI(CdhҪ qeq8ad5MU2*~@|0hsuw5UQRY^VCr(/0r@XRuqvTvE $ 797ploFɺVQ n$Ns_7^XD ?4:r(*,뛭5yvYKWQKLOaAl-JƥR8綅˅Q9 0Ǥ$#TZ%9D"夯~#>X+RÙj=FoNu$!nK͇aVV-n\͠c#}vG~E0yZp߻?O'[@ڷX[U̙`[&f6h=GY__Z2Z cgwYy@y|:jgGG O3=E9^J)H 2t^s\IfJ3(ہ 8p}ڿFy>\lўK-4PB8/xbW6,wEm)`!S|"1t">Aqyhuf@X BC'6$>zXLׁ@K2A5=ff,8,v:FdOR-EjE8b@̲꫆th~gؓ٪-w4p3pHKT!ab #hKުޖM{\u6iWRqCsqnl֛.m#ׄ9ASF_rڔ\gEљUcK$rX@_bYPeM"JY0x·޷B"p٣Q>M\ܷ Le Fѥ@OXPx#q }C7 &:< cdz{XQ-6Иy13-}dj D,-^TZɉjʺܑv}FP;m>Tb5S|p5W/O0{ӵ|*W+5Kw`%C(s|*I4cl/}YЙXf7 "3UHB/ʷUAHe'1{˹Hgo Z5 L~:_^H84q~.鮐guc{y\)ޣ06i[kC$sK" oH3L*Ɂ+̐Tc&)& Zn\'YjkS)pp g p#Pըk|t(pߥx'u3i 4gt%g{XlEj;MsaFpԩ(h1o'ÏTzk?[aVG3ʢf-;F{27e ӔI! Oo4wr~HtYz~ࡌu}n|0O{%yc J>ds >?`8̑m - )x0e vWLTOSLIJBoeq..:%rM:jOfXF[5_恴c69NQZ4K>NbWe\{E͏FjRy%#d/\qY:Dma(ETcM3*+>n!;qS+rIDt[T'ail/JѼ3q "}-0IJje.Tx(1=/z qtJO(FlKR ݄ZF  )Ǡ7jW 9{N)[&A4#S,6p #.<,,e ɇ&k L Sj*FiٔmS$F-wb"jSayuUS¸0B,Bc=qVόe(fk蓟0qtsF+N:SZn{H}ANd]~4Mt@60 ۈ:* (;BÃF _^1*sF;y56ꅜ8fHԛ9 ֱ//Ê\noTAf{)7}''VghVjnX˾ S#DtV:EbЍYzˀ,M8dH`dX=sнCR(#T\׭e I^95Tc<蟿kK@ƁBn A82\mū̷!t =KXǓ̼L֥]4|#Y,?f׫nl li<{=_k ʼn~wZaytE5`AOPA+sK8SDcƲۡ9Whd 3c Bm'AO b*^xvX\:7?]\!w;ۮ2".NNAUO٦GW '3~(~E%@Ht'~ϵ[TLC!8S<;Wy`Zޙ""&*SRtcGW,ъ'lTGe  c"`.42&#U-2# .-8? RZm!1}7Cʼnǃ񛹝8 M+ws#N^Kg(P.Š/Ho{C LH,qccwϟdo8a]l3@[#VcNre"20'mz.c< āM(9Tsmt?8p3 NWa1a!N8J,M{r4}aibw_mD5U}=ABmu V2$a]w56ԇwR{{hJ`¨RxEu. dɖݼU\O %b.P*L$5wtoe%!WO,915)q*]n"FSFuYkXdl=<lc?}|9eח;T<ޗ3}:TC=uk#'|EeY1=53>saDT!`CkʻxWbhxڤ i Rg7Ax>ʼ@k Yh QE3M8ked=4x75\ߺ6S00X /%:x޸HZ&Hu_sQ& *X_kɽMov-Qn Sn [q$1~GPd0rUZ'nLHa~0'xl4wMBÒo iS>=bY(=/ _@XrCe)(0z:yJ4(ðӥb*Xh!o#6NsF6x)?vƿRMߢi^i`$b,"9M)zL12ЬdX9{Y?ЯN&sܖvjhU5Fd}pV?  DReTmFD=);<ڗ#,;G`k فĄ['ʹq} _]tT˧d4Ғ-d:G` )s#`Dvb4(3§ !UډzN7GazS|vJ/6YQ-"ka䖦L WB [}'`_np&8/A0]踠j}pHwƼ79Kd./1G? ?>VY2gu(Os0=騖? 0i٩}ۥUD~ȆBTBZckoρ+tFJn \s mh<:|Ҁ^5^QI[+WD:Hnwa3A&7m!TO!_5*Oȥ߈Š/1QJ aky/{z`Xf *\M$H/V1)wN=$ ;,/ZY1ϤfnK!7_]<}BJ x{e`' kk'9s$* fO8WYw_Z5 ƊeAӅԂքd( C,Q-f"#m݈ꈞ=rmkT )]KLd8X#ph(;L\`Io*NrP]d45\nj>x6$9gT7Q:94^|#l8TX!F ;4D c1G:R(N_,/ ؤ`mb旱<bQO²w}Tv @vhcx #\Ǟ"ld<] "TRjUjz\ѾHa&MJOpaWO ,a6$5?L?>k~nMģYLP~RUz$>7Kr+O~d%V2 HEĞs-t5+R!LCR7JZѓ>j!P{ Y3xyh'*c 2ce1v\B4I32\MV2w+ȥ?]x[-ní<8+: 4VPK+pEcn^wq6E) /=|X#{&Q%FltSj!Y>򖝙0?1q` 8V?z'8hq5<ȲfPHeO?+'A,!rP6%@.oKVJ[Ȳ-ExÑ&e66= TQGt ;v[5ӅߘO 6scn|e~߬/aHƯ Ō䭕4-~?A7lj= CsІ^*o *Տu?ID ^ Ni:E|B0SYԋPʣT}ڢ4&dؑ'P( #AP/ w"̈lXZ,rXDŽ۱:ŏ*:&@!/sAV?1ÀcH,Xh |I +en],0cEH36XqzYU p/xkEӍp%]sHMdӎVlj Y iATyA#3l9+>Kcu{ttMYrZTvpK\`wMP]7J/3θ& +.wUѩ`ܜş\[eŬm{ԏ ?xXnil9^P:җ΋eEcet/B5;>mq_vEtEKcQa\'a;'koUh$5Űpml>,U L jErJAH?{DO}H!%+rP eLc ݚH)(3Jx5@;j~cl=VO9p=)+NN֙N2Jb7.-UJUJ?V++0`Np/Oq5>寍_[W0kP )ߥ n6j=>ϫ|.wZo[p[/+sR {W2 HbPl#Rw2ZFl~KpŰzZV {hҤy\pQ](.wWH>caǑlIʁ {8;.*9ySm@F_0dx66XQ“ zl!$FjIEVhsfz$ϻ_zV _;bA L2:iJxHrb:KDb=u|&6=#~S*qD6ִ=]e3ӳ|f%7BAIMJ' %pNqnzLX1.҃=;C4xoRSwђ3r#O#ޣŋi{7ۣ\侱[|D{9;`6el+p4BG+V,%E+BO.{>7z FQ]d)Gs 1%Bv/|)5U?FE(GfAZ~f[{JrWsr~Qr@ۭ̚~*.duH&0#OTl {!t $WyFgu0aosY^13;$ !*qf2gEYu(%aå `9@d r QPCIP ȸsDA,1S:\^Z7 7;oV ޹cc6wU\|,b}1eJ/Q/V10.0ӿYxNH$U&%y~YHQ2N5`"eHkśL:{Ӵk4Q %75?3%{U1{ 6:tk/<7D(_4A;\R- Ѱ=%uut nD\g&js!L\{$Y7\9n^HprlAuTpc%xizD&AW-Y:eᙗdYй3^.ɧr8 hK?L5рA61x&*=4s0J){@^d||x҇GB'?ߵ3 PGr)d}˞dae8ڞ" &^8H>?]t_$оYi$Bj)+'1 @p `<7g%ׯP"j=^ҧc6# Ӝ8BV"B%8_A<^ )GqW42w{"Xˬ^Ap/>l'smV4a-Q(&pҠj$ُQB. K̺Pi3;gE%Ts:U_ z3y<Ҙ7U.cFS=L;φK\3zF33)6\{e\$<&Lh߅Ϙ;^MpQKCulP^qk^'z ذsnXuWjuɨJ݀rZXޖiy8{@Z-Ǩ KG)-||$on"'dmO,~.+ LJ3c9ށBj }^,1{P&S%d [:!AJ~.d#FɊr=ԑA]d3͡7/@Eb㓈A"-ym:x~ Fb.dՅhh勄LYi2,TrWsbڡ~ V5N7Q}_R~0L&eSt2f}%U=Dl^Ko%mY/yC H=:3(y ңz_,zKhwDc L.)sZZ+Kܦ ^Yg(&'/Ey4AiFhk64D}pڌ;bZċij6J=V^l9'zX%ޮ{WwȻ 睺t^?i?:wsZzIm,52O%LƼGb2؅C:i`g" guhڏ*5h)jrRR^—' <[7n>Z~4<3Eww Yǿ pfei[8k~D$B=kxv# ?YnX~楝Ԇ!,2 (* /b̡Pvٞz`(T۫5qUG0y7o'qHUrRmbi0M |,];O D Ӌ&^yKeAwYEYK-ˬ*W~$lsTfj7mJ.+h18E ߍYoh柚+e0T-z%"|d9N[/Z ,uB",Q>dBn]+mnE}L0cu>+* P*5Ut="L7(HNzVBnnߊv(wX}UKA*G;a{nfήU#"p"=7 TV?|LS\_F,Qfc0gf "lU/o=kbv"[1!t͑d0blY.룠:>BY<`zK%J71 FMQ6CZ_(q_F jiD5ۍUQlb9NXZ`f Qs;Gaܔw lQ8w 3rmu蜭GdzHgز wQ)p@y&ɮ{d2A<1gYPD[y5a4C,w)WE#vQ$#Vw?qK9f>鋷ioU?rMH/2R3=`b7>&od#u{Ln`ꦌ_ʎ" ,@8NAU®7cP$[˶؛5ڈEFUt XgK^^P͜rʲey~!1̡R7ޫmD ,ᄁrpJJ=eTu(q ˸ 5U5W)x8H;UdO}F|qZ>?(rt\Zy!q/[] {s\LFJ7@ AI*/4wq򅓏xC &V+'$Ha9ۦ~N@YM?; P;R7SiD|- +i6V`e*..I1rG\?lz[3;TF A_ȜAK:nbVͼ=i^hpf,D N@96w?K9:!=eLhb\w3jn%Zn߁zeJgYZ"bMZD+yF@I*hna=;L/)1*69/sa{:9@JIiY @j}aɍ?u៛M;6& 0S<掆31&eTvԦcl)Ee-U8Ѯe$18A'ܼQd^H6h,I!q6z̠x)Qhgu,{&絈U `L"9('|: _11E Z57#Fzoa }l}լZ/lxt*P撬Rr^yh39FQ-oa|(Df6u_}N6 - ~}y|®h%]ʓEڧQC9"׷"6ұ:Jš#Bz*Xw_}CTȯ (4O!Is˯+ˢv,`âf ŕ[:*WumRD<)X* ?T1m߭&>3:eP@xK'pJ$gWn"8[VU{'j L;<BCw>=4݂뮯rWߵN2kvO]AIՌ7luhq%[PZFR+0n%I ] UŇT9FE,t^zV24m7hPj@IpuTazqtqEq:@)ҥXߣ*vBu)A79ՅS c~\N@b7Zď6MF+^ݪO2r -2WօO߳Le{KqҵlسZf=Eӹ>͏&<U"/!pgGZ-E-S\GVCtW"`/Vq DfR|@(p:18ĀCB+UU a't Eι[M,]YY6? 2 so&` *,K'nghYB@h@rL=D[#^K1VlM;>OIvj^kMx?itކ۰z1Ϊr|MG _y;⭏~C`L?G {ηV{nn,&a2C8Ǣ'F;V` *+[TIa_}/(^#і8V(}pK0#L/_*ep_c@w(ATz D$Cu6jH?Xi}rڜz#@:RE>%p Si:5;٩ dRkEҀ/N;pHnBƂXe~z>vܲU5EkmCK,%!waךI}an8\krM4s >Eyإu$Kmx" wN1" ]? Tz޿8ڡw,ZRlNn7o\%9<ڴKݧP:FևRh-ȭdW ~eQɑu[FF^Mg$c$ u?tlՄ#3c4{ Y3jtWTwik@f0\bgo7BL;PYXPRjk^Y'sq^3].͏<vҺOYG3nMK& iU &/ȵ;-Xh#g6!\"H d %(ݫlV 7Fwb<j:%֨|uQnҷpBʛѨVc B}"M둙ђ +'Y9ZY{^I{ܼ6jDFx/ОS;FۂSm)%?)B՛S|ĔR 8y ^[HMU5=Objv+6߇8'ګ,p /-ZYȳdIԀlGYô8Ɍgntۭ k7-w2f~!8WČń3 cmŧhF={(P#8&:$/hzW t4[z"F";߬6|!+#\ea ak[%W呏FLuv-f)}xW1tY*I&fh/9n;MNκSHi zr?Vo5Hdov\k.2`z%ZJ 9m>HaeBL4b0S4{f_Awngb.b%Q뙇΄-T8A<Nftz55[V#!brB9A.ZB[1VKOU7lzd#l"fR~Sd?r`KclG>e3q;|v?$7H־lM۸pxӂ+}MJKlxnJ0,TuR5!>o#9%?aQ͑"}mas\3,~/5 _A8̮)P#b5%ceVN\%KuUƶG!^|ِ%S+D{~:x=K⁞ؗZ˽mj'4ږg&nœ${_Yeg M1rN m3S#^HAp$8uZ4ٷ*@PBzY<9cLl๫uBhFdsv'0.cJh%~}|QE7p8Mۅ@h6%iY I]bMIgrB4Qö D2 '"a6/r.nME_hH~~ -5Vfk 5Xg( m}õrupYTƚ gh lM÷-;w}$a*ߑ JI(=Q+Q BЏ&Z^[Hۈz@sAƶΠa zD_eؗ%,| kG44DC\?E{ߣ[lDڱ vt|I3 KjڠeڪC@;Æ v[V4Z:'e$iK]#ɕ xR-p<7shk,cn=1hɡ1y3ߙ^bFa_'c(j/@W_թ씓)E; 7z~A~" D,-Kc̗Ck*@4#՚8${aay΅"þ$Zލ%=`UOHyrV\|N=lWd4O:%{-cjuUR̺yhwIi̛SkعaxUH O< nbzQ\嶕\2PĎ1 C$Yү 3|&slJ/*Xi2 H`LmJH:hH22C o2u7SvBlzց I$2{YH܅^< HSn>q{ߐa.VKƋi ȴv7t_q7WD8Qa \]BŲWH9~!M tA|[$*uw gJ9 –Jcf[aW6Ok=ӡ2:zvLC}~XM޲ԡBx7l,_<#o^>{ԏ쌗} (qςfFxQ3c@?=)P1;]H-9sATdTGTM^-쇢jli?Z }>iAri~|8 6I&wvꓦz0<|.zQGAiҪewf_v΁GO~vre lwZf;}>8;,i.[`h[m:i-x_/vq,SيX m Ig7Q#X8ŀ&"`dUsyYшS XGZZp\3D5R;L,\ky?Bh4)_67 O yPA)䇝}ɰbSY0(.Wm 鵸2)U`f@ZQ46Գϭ,k]૑0Ā2amr5w9|ͬ~ ex$ȍtYws!p;ĸgQwJcDc.`k9S˄ EgN%00 K֔sE3/1~܅Ĕ(̋IԄzAG X!zfrЯAHh+`#٬DpVZyLE0 RR!b/mD??s-##2poރ:T.CC\RtXN˃PQ|O)wc?#2F#Fy+?^+ݥj52 ;2,]fP j]tKѸ{/zŕRExdJe; CJh%ñKL%M5ƌLm>AKi#Jb K>pa"Dnc`H4e`]ZMhiT@!i"F롅:U0k YV.GlZfw@8acԠ*8-,$Apcʁ4H;SQp#uƤ_OT9X8BHV`[8GH#O.~xrZV]W^ KZ|_G^ڱ dƢ"EodNFVYɽE5/TEB&?=z>NNT]*m̺D#jʲc(Fv-Jkk_<פ-5AqufQWU^R \ h,ǑTL%hE_ĝ:mL*R\u"wRd\耔vrS>ڀ.ߕuDl?_ ;dƇ"+/FG~ 8nv4^sӸBms o^zFSutՏF ?Eԏed֤Ȕ<`$68"w65 /X>o;[)IN05*Zx_mXr@1x ofy1K 1VO0^S5g[t>"KZ& q u!g@Y'rPEtFt@HB|Υ~orAR:pUB [{(dD< s\+ҶbՃqr1Xb Ed|;-W絸4/jzDX-Q*+#W.,YHJNf%:IHފ~ݺi/ 5suKa Ӥ= }(k_WkNr~^E nؤCΆ&Fl8M_dƖ_w+<}jсasәR68na[fV(vHfpT?#H y~eYq<}'1=[ Og=:xb"~2 d6>횇>.\ZkO`0U*x5._duNA*P<,O&Ǫ[&+P M M_}`zè"=aDO b34zfȵ\\Ihg…$qφ9S-@UEʻS6s쑪7t%3\̤:=p3SCY^9]0^j*V>@IU`N\q dM^e QUhꆩƚ>ӷ]*dl%ClcoCƅ獩 NĹ4%`{]772_Nq=VSBHWU8,pߛiIxc:IAʀ(r4t]z{QYvzU;v8xq%N*9*ӝ@69Ruwvk̩C•Ta>+t^oMh!{> nʪfptU8HEٰue>SSʹOadU!',Clh` Ÿ;ެF1<$Z~,ޝ^djŧ&L%|Fv5/lAKGVlEa5NG Qo<&73< : ĭCJhDuZIqKX1 '@9+po ;{9꧱aNLq5{B2T1 "FvJp PVvNٝsĺ/¢5_JCl&嚝f(6u!B[);:OzN$dZYª{YP'Nd k!l4 rKU+ٌˇ\z؏$kRV ɹ9$78rGc*Oc EO~&a%g7֝4D ̾ C%2>>vPcW#Ra ^X36(R5.g``98~Ơ~Gԉ2KSEBrw-[8,vNCk&[iGW7My yZ5<omcH|6=f9(U8Xu4v1R߮zݚs/6őz;swc\5Gӝd,1@Ͱb\Z*4/ -xq:Ra)TʶK46!*phQ0#:(~zQk%a9$=_׍HQx$vtlݒcı]Tq\ӿLk`z]dE%^؏NbEN@Xv1匈{T8z RP]-ɧu6m w J>w=l}2n`~wT9{r5Ց.oiw,te7LcӪdlֻ ;&)ӨWz$aiC`Gt@q;H 'jXu9gu$!X ="U}>y v0BmHZ82uk}V"|Z*-萘>df2<\!+/%0Ntn Tj|e#\L~<)D C:dY.Id]UAT9r!mǑR!r-7E.; gs?28x qޅBm\%IkT &VZex^[J6ҿӹH,E,]R븓 Dq,$ 89~i\ W7-QNu Oz} \:^{5g[S3 jj&>Vy#1Փ=7ZC hUbb-i@F\&yN-ˌ9W媕/H(#pak]Ё6c% p[`5) {.8=pw"@k_.tcC?qTkc@Zl茆 G#ZO~dPErDd|g!Bh+-`x7MvnU? _s,^k6V́+kPLiWnF'M?edZI)~V‡/"|1\rvL>jп@~`msFmO(ZxkÔQJ5JuK'w#L>PLAzqXCa +KJ`,u0%{49X Ӹ+sAbCnn=@kO/h˜m' 7$eG$)93.B(aDi]ձȲ끋C]ycY0Gfdm&F 1BhkumIn< B:$eI #^edyXz]wch.'?h3lx 2@\\CDgDzPoYŴ/C޸d_ SJMzʐys8)BP5Tjo#TK/I%e?eZ2|nK,&4woG`Y3KaD$Uj;dGJvxoI&"zqNKh<*k{'P: Yc-),srW62q1EK#%[FGzpjLo`y&%rLӗezMè{2 wDFS3.4ƕ p YVTcTDE#JJ[QH)X#MȮf VXӃQ JqeUF^VLmTR Y`1EJUU*E ȦZ8Е%VwUb$QM0[J""%E)f J²U hP9 QHyޢ:]۟scڿyGky3t6Nyb6}]稜L~_]C8_3yڱ{̆zwcm؜zu(9~+~voCOY]G3lnvO*uX(ȁC|@ 3a4p9 7V0Pzx/jD!?7UsS(j;WMG2:خ '~tc}YDrDB DpʼYh4Mc>` dSg.CsPZ>kՂT%^}~T£7%w ] FR=֩M%*>Ӻ?YJZ0+mLo:ӌd`Ϻ_͐cU2_;;LCQQy%C0+ ~gg`1aUH9';7oeDR uQ(`,~a3XoIoP%>=Dp0 K^^:i9{Lcf^, E쳾K̤C/0XWP2!_%7\TY@Ek:>m/[ݥQ7^q `TCkw2 "yXw[(Z;JdVA\P'e_ù9O_\Ԟ@yFCmߍ(H</"!"`J#mΤf<&lc$ PI Y>|S; `:i1 ^k~]|:| Z_+cqkk"i_f>uVO)a%OrʊKY{_mp:ȩX(_muD/@Dɬ?0Ο#sz"@ l`v8$ơv)tL Η1g"v8|cŰÁWeFМR%JMlv(?:&tLqUv:J" z=L %)vqyצ>Wa&’(7ԀDоniHCxixDOGW dH mI6Wzy[ZNץzHK a%g j0uX(PС~.my 9aU\D;f+,U^b+,X5zˠm˷%#nH٧5"N.ჱ0Q 5 41=UK(UyS%kk1Mzv"w,yif!|;=puL2:1\Pa*wL0DX?k]4w>OP@;2b@SZw;gW795^ť>j +f#MP[/VVd#w֖{jZcL>2L"Z6$F 8 IS"`@P_b$ #!fS6'Gai3ݞ̥-GIXwi7qfU}`N;~֧MpтK wY]**j x1oQ)(ek]a޿Gr;;?-mOo6Z@ @I&Ƶy{D\.#j[aa6 J,L4=Du}7 uwхa_gY'&j窔,%0w8}?ϰɟ|3d{&yU !ChԈ EbUuJ0;Imv]%,K0o㵞yd2ihIFQ#VdPck^wacuﲿ#ȎTGM|CϋOs90=@5@@1)o+pWޅwS`7F7 *7[ˢ_[ID (y$3aa=řTf!PriCώ;mxJjB,<^MNHA[s^dXϯ,u1OMVQe\6#R`m*/ Eâܿ6G+r4Il% XmYzV^vpAaMꚟ7H6)Tzxyz6`mfׄ=m?[BX3Tyyb$+ MM yۻyM'юRsI Nvo9'Zk,z}sf*ߍ5y o'|mMqCh;H߷ -w[l[ܘ*p>lPeѪu|y0e+}.=>&uIPr-zHN #uzm-H i dqldq|ΒC)igmn%xͮ9Ҳ_B5ےbElCW}ѫ.#!ʢ81d|7JY-{KH]E,\~,Bߟϵ j3VLD>_f%ceR+yοfoj[9DaJ!IrQ˵#83@6rb`JbOtk'46;È|?.x6.!FPT P$bq1߱Y_˾9FZ, I]˨Ŋ~=$m 詔J6ly(zkN?j" 2`Yq.3OG3 G3k߇n=oBh2bD ԮHeT0bLI?ц[ ~M YF}wtUc1RJvLfB|f^g-=/G7/b#K,ю0bsbX1H%9lq*;vHcq`\=*%saUזp ' ͶS/j#}]5,¯O$[̿f-9*O?n5mKLE4!_>8UOkvyIS-^ *L8'Yc- Ŗ~69HP@Du"yӶ{15&/(]‚OO`THd7SPk1BxEᬱn<|61\D " 岽ʃ)kEOueg[;l5/z~S܁AFyc%bcD@*TsmoS.l!bu3*&)$#B bbTVa{b&[϶qzm}CҺ1Q\*TF_9yds R₩VdD(3tZ5Emy{^BF NX[M(ˊ<]R6*_-}3ٵmN{[u$UdIH$P3*Wnlۅ6v 6^ޢZ?& * ;Hj͎S,* %Ym_'yq4gMM 8KX4Ѫ=3)PͲ&Xj!.t*a l@klTgnHe:Xw[ЍI[Fξ'!"ܡWV%"l Qd~L~ʂB0 M@SXǦeG2K?ό#?Yľ8z *Nv낋H7S 9|$0qypU wTrԒ*(EW6h {fO's:6Z@CnnQC:0SI"߷E8OݛF/P3۴o2GkWLLc溂ؤ LBL VAD ,B5-!o\==?{/CwdMH@ Z 䈅b!"CHK=NKae%AyRE@VEmϮ4`-):2#*a$\V"zo4b(^q1`_:5HDQ/ tYJ (_WUR+*]>mb:3D,0!"-k0ld*zM8Ȉ VOj4lffV)XfO3juI b1 *ޗwcڡ.1հYZ۾(wDJٓgL5DrԬÎLr9a5`"V( E*Q1V#EmZիl-?E nRg?>_I{(d{ʚJlȱNV}͞3ô7-VbT¥ʽyrQxZ$6R)e1RcFU ɢiEQGDV*iA+ Q/"0Wa(QBbCFRBWi5ifRT 18.`=']kQ$ 2aFE/ul I+'[CvE S2';!Y1ņN6RE,QgE3@LVE bf,MB@½ "oodMVKfnvB@݄)$*HiHY $SC R= 5mVIdU8GFkO\d "LJ>(J \Pfç'Y6ftņDrf$cy?lRs4@@﷏l3} jEC$Y#k.0DQL,P@RQ PRU"DA$F# GJG-- fA(rzZB.|0E/BDNۃVCp@5 *H "HȀHH(XCP@đQ-ߗ n6-suk;@1I1ҦZ1;<.;]9C0wd.eU&GuXL1=k}uGBb+KbJw*f++"Ɍ1]=Skm7LIlo*E7DQ]]85(VE]R\8SCI5s!*U6i4Lo!;&u,lP)busJr lEpj qaisJ,|@O݅]\n~(,)OAktシi3㌶ ]՞doq%<3ŅaݿHHUe ,t(^7," &4@^Y-}SPDz>XuJ8aicGH p0>SӭE ,G"FfidžmCcf]@0J ↰FFG)f;ΧOrihe'[QQ¢jԨ UHPD6X,D:af%m-,]̡TQEeQeT2Q2*eYJRZmKF+%J$X֭tLe@PvŁ(,֢OKG7W[ F#Fo1tSÏ3$R SLYKU8i1ͭyH̓@C6TS _G{ZOSuK/JH*]oYMa $Aut(;,g" 0zY@,+Eb.5ǣ<>qH( d@ّذC!40$X@v)̆'l$P5FURnMaFHCvU/ @F@Gܛ(".BDh= Ç 3]yo썶t$zq:rNy?z5c7U~1LsgM1E*(Sk+D T b)F2Pd Q3.Ï M{a$vmF`sCtpR6R?J-&Y$ eroQ'RTz!D\Q.&I&chllcSmبkq& 2 P;20N%7wpEd-*Ik;vdM0 oe{urkF8~>Ys'B8XW$T|R 2""-yRXC0{;yT<8m pjMp$jo6dG"Ŭnz_ci@&d+eF/2,v|w! sWf [#qK'm/T\%A^}>-d1R_dc([_ BJTg"Ti2f=9$IQaCi4%)JNl% =fFb-hַͽ RmBq= "+(C!פ\ueƙgipw5d>'4Ni Y8l,YRcySa e& BbOIL^HC)88;!R^RI/@D؉^ۇs2g=IEE YBfҙ[vMsپ݆yؤXA h,mOu uE(H;kH[I & $,(ݵM?OO}#tx(i10%Mi!!ؤ-J›:NjH( 1 D>}:u2Npd0A(ݻni564kf&v"%]q* }~g@e h׳.~K *@x i]N ĶTU՗|D @sT*iWXԨ)Qѫݎ?ȩ=aê22L0/'d+ZꪖpWU ^(ä \S3P} fHۡ !5/ٔ{vf /*"á^ϚYX@xŖj2 SW4#1W2ѴkgZ;,M 0g@Ή[`r?pUR?='ą 3dhLp؄*Tkxnx4L_s{AѪT0멲a*\ .e!:xlDQTN4'܅<lj_*p2L{MzH)V%S-D b_C-A~ >=۴6vzV2ӏ#neMO>g:Ӹ-7=k L<̃w>(mApڲqQf2C3R@GD$i2ViJ,hX6&i~ Ii "o[|"SVD/G,=.Yu2 u|"\mOsz5J>oJ6qqO#;{DwjA߽֫K475gHg۠ 2!tӛ<${4SRscU5Hձц@c]WiG'fYL~3oX.::T!<`nZs"֖".eNkiܠOfvPVT2$U J̣KWUsB SR[W1ɚqbKaӱ%,9&pqUPDʐ+-KQp,MCUˆjR!%*Vx9-k~Έn^R>|oKJT4UeLd,Fvwk/( Rɒ,gFpMn`کaE3Z uNrrTJZC)ak{fĄJʻxXXyιqhpԌgk lkNJ!2`䂯jq}U@T8M[ա,!mWvglRY1Z4*,U3Xn=ձmj*#3Vm_}fg(ִ3RsZo\淜Uc-ZٺW8Ɨ,$4t2ZfE czlgo͝\m9tqjPVQ`88Maz!- WA v-0]eU.Ҩ7Y̊^ӵ(mZ2 ޢePtlX-IP%['ԉ 走;gZAsCD1MH9!EIv6>7|qf`峖X9F4* ߯Lscm%#) Iq)aE;^hk/fpqKȺf̮`BF꽖웗)"1(.҈ (^\'5 RK`#\}]z2\Ԕn #5b.'2Ʌ[2\tK, . [biU'Edѯ tXFņKHUp.4=6oW"]QgĪ̀U&m!JH r k1f,_YvmA*AF+]+p|3 KMrgJ8 . En/Y" b@K3,d4,* lM7h\[is.4jeYmEa8d} Q E4dhfXPo7.9'hp3?hA@JXTZ +hؒ"wtXKT | PC(fT~gk;"DӀS'ld'P% 2?01\d L綛]q0BG^P֨xqaļ:;,ffbt:`Co$ޣFhKiwE*!*}m4 `i0r|s[qʼnȍ^FBw##N|n`%lÅ\Ooo!˂jBXM@GJ (bq]`8d`VB rxp' :2(UH S(|[Q1=AqD$Q*hq]b(cJ]Б]dIw.H@) ;cjH(~kܜ5P% $0,:_]iRӢt$>--!(Rl}T%%E;x;Dkpa@; LD_Y:}vqşūpP"pg@cB  t%+v-\g3hn!+*&:H.8%oE-J@9QV!Eh$IRUpr&FdQ/7W(qw@ L};YhYCTDVHE5 0 E h7M-@^P5ZڊG]91xU>LVD3)9څj) dl+$mu2lݮfOCn羻2wiagdy8307.6v\IBi>ނԃ]u5u*PK@T5MpgJMUIѾ٭ɡ16d!twmŹcrJKAP9@ zrOsO >.3nxt2Hhn j4yK>c[& O/C{GPf8IDR Tp)!p)HN y H2iouI $'7`8P#& 5+V>̾U 2.oٍ˕x!83L0ҽWj&QM~+h0a4feЭu0g_[pHk$5HiLUgL#ɷ[BuR %tx 6[7ΟrJ60A P .<-&¾voT>` p$35*1Q 1 @`ƃ<0 $K{~;G%_,@.<>T8.Q`,"hTÜS ɗvŚ:7W[[o ` /?o>hh҇0ɈA Fx_,4>dk gΞ-Wla/Z %5m-6' .~ӫY(.5w5]TW%!Թ%++oeӎloͼYC-#EXS{^&E [Tl %J2 @EAmBbk+0k (8g+ & Hc "(4m0@GAҪT8 PH~{c $ˎwTӦM kAd}RJI ˙\~}kwXA!n6~g3O2c 7.JYy]67M]_gMwM$l>ʩDPf3-E0@ :[NWS:QA+]OQVe5vT.cKrJ쳏؈ePb x|44J\VWkvC(!L,R "ϖÛխ|@ *Fb;7(C4%/tV !VnU-Vԥ˙z/{VLت]bclPC $7 aHF!P|ABTY%YaCO@]_7pGSv8]6=!6y[ u lܟZ5ᶣϡd樧{W<f4Xܶڿ5s$Y}>-hY~pOw^c%@ACF AQL/uIWc^R3" -Ipp^ XA@x(ZᄉD3[AQt8%yPE$#kѐ+ODF_i6ŦnK4-yyN "! A$I,`(H)Q`H ,H ,E"T )!y!6d±@Y0"J`=vߠ)$29y̛{? ׇ/^"IH2;JќMQ<_ XKD$ ?+nvħK8JQX-"$ KjOg,wTjL^.$X"5A324σWeZ: ngcWg 뾯/smhr>u旝KE  H",,PAzwxzl iNyLnQp>w?::<%HMkӃlt8r҂{)_nż6~7y,ER*MREPYHY0*Y$ -AϙY E$R,bȤ  XH( ( "a d$P Y ERXH,$,Y$if$aeRwGr?+_CuїmB@W'AȤx?C*7;uS}m`9G;gfx1;q*&&-㍑d%b/k4>3,ˉ*94/l8yLD"6#̠ %Ʌ3 S%NWz?Q @yPЫ"),u.'_ b.Lk1k2H6e& *] _*]p!P>}ۻ%U{g y?,i)/a5p ,|oi{5.C)闈ҐX ]T | fwÊU̘mفPY:&; 4~bY@ DE%~[Q~L[ЊXf}IsV @ b>iH`M[ \l6 oIdY47ur\pQ`"bi| iĊ־U%:3٠8R_v3HkZqu6Ԃ aa[2D$E[ED>m=/q螦r{X,jmg0DdFd*`@Bonqbk9j|&Spǹ1[-+M{|Wڱx ?y?9_?M4|#W[:t<ɥ5 3: r|v^u _g)U`zp=I}ڛYrv}Z?εGUbl>W#J+;y.]2~V3Ճ= kM#y3}}b{l{# w.5Fc!nǿ3/1QMu'~7ӟw!@$PH$ _򮿕on(as3"FȱH~' ɦUwmܗcC. sYa>RO >>FGŒLjIv=v,b\ߧxro_f~2 U"ZZ.ʲr`"IDYTBHTBH@6CPDT\q>x?CiLt/ÃtEX@+Ad! vZDv:N`{M 7\ v&s|]u[uv;eSaSE,4'`#R_[π"dQyϘO8""R`}tZ 8UA@/ QЈm E.މMAwS P?aX< /6OUhxO3%GE>H H a Ad*)n 3.~3?ڞеDlp㾈d`$)xWӝz#zsD1AJ_Z|~^xu'C}tlj(  ))QD8#%HH: 5"t09DrCˁ>y[`_Ney|wySb|Mդ0E _ܘRڝȠ1b e .d x.@NH8S6L7Frk"dQb^aq@ "`JQE,X,"P,Q`1VRv eXT"(EX,R@PaH=Ieg6bEPđ`3locs,*2)PP B,eY*B,}N6$1,UBb"0"Ȳ ,$ ",EHAAbAdHe_r6xqD#ɉ; %w]?ma&ތMiǙR`0RG}icA.6KWm@{_y\2A- ly;#?lIUE!/*!#eawE\Pպb:<@xOsۚT1\4.l Vl#f JuoP,u}ɊI\:w:`6 0o DqޝlDȘf(x*i#&>XnC6w5ywk[.~q%riX/zmJ1bs*& >3%ˀl笝keCI?xpH9}ǏN0sg.e2b5N&"ǣ(|0U(Y>;Dg#bHM.ϗJ]QH#q'ޞ+ ǫ>trI[pvGUa炋 Ju?dg~Л\(A06b(91 ǭun|_=Yy3 h@d0yׁ8r5('es=l9'#ȧ@3lX^cv5?B, LWX1C6@=~A[4=Wm]ic&`5, M2(w(,y2#|Z!|B>/[k¥3/>TGoX67k36"C \?a߷fDu8n.q5 Vam 1[acy(+7ɒe"rL=*Epm0VuTemKt̀L|4فRV~2~7.FghiB(~- #" %I]okowo$1DnB *vl "ŐOq 슲vQ6 Pn>2!/㱗](s%vɚ)[e3_gW=bR",{P^nāey|?M {-e z ~}>:ccퟙ uWyA{Mrzz{0a=mw0FX}g,8"3~שe0*S nK r YnXdDKk:(v(tk ɉEN$I4AdPN9v=IT%" 8?\Gv`E.nƭu[kztp2 1RUh=3l',0x8IAzn% N[F8b>X\Cb=\eF( }u^ ĈDPo}̌JIJ 2=9G588V[jů ]' ErH fdbzrm@P`0(-筊}xA@ d O3b JqXպ;7璅s0fp~c~㋙';zMYL8,3jY8U:|폖ZZ/!ͭOS4uu>Kyu׃;v{o{}";vMFF`jSH5OǨyXAޢCFf*AT;v?LƗHmu2X{쥽n祰muG.o#{`yN`ZeC= *93:=ՙ0R٪ dmuQG;<>;߹@~|y%\yý5ei+[[nKIAoB6/P[ЁcJo{9 b\KIfl'/ES٫ȱXDgps'TѷC3~]Q%+ASxHvjHc#6h nݱ_&1qQ7 \ӭī䢸$ a_D>j`gSYS'׬S=k@\vXACyLx^=jxmrVddMߞt1fvξ;Ά&MSG8ϣ_:O_[cPP=PU騩!H"Hu|<.6ϣ3nMm9VHAF 8&z\IR,%nO+uz0A.(u{T6O< bI,~ז5 .xFno/ӨX7ƨG1ZKtxQ~%W˻W%MA](čw1tܘ87f.6w-Si43WvI{EoB?t紤z=-̝;>2j̰ QJ&hdlZ <[o8C{N,?{@@m5~kIYЛY/ngrݮ{ s>&L'WB &o,(̆iI;VLFߟX:O%a I!~7^W*uO 59O"% L=v4jmϨ4nCm>,םIgnh 'O̠')3_Io7>&%B (KdzF;uCZ.^o2wvphdeR+o1t$Hx R&n=e*[m4b$tMs?榚ȡ%M(<{^g)Ecv0Јq`}/Ucdv8a=^B[צ;rLJ/L$w;.ŒB/2I꽻L Q#vS5nɩ뢗63#:j ba^n/*jTKkNZ)*%첮2f/uR+v?R3.hXWy>=qu i暈v+[GF:ʼNexvư]&K܀[{wIIٽ=b1C^,'6rg?$ʵJypO38n+yyľ_Q'Cm%CEpcOGj_eUa٦9Yq+2BzK5rO6#O}ErqX=d +2%|\Z_as_;+و;%sqXú7XjaTfN\{zzL<3>^'ٲd +^A41hb~fO?(I"@Y ""gIQ_{T]e7%ȺS>j>Vw&+}?=ʑ6t0q < a|Cki]6yXRau![h_ "7y,_j$i@Oam,El.{tWecʹrxsX$ C[` `3uay[20h}f?gwDYgIFUpqְXgv6_>܆R x -n, ؼBSn+¹o{}.EF5`p_[zCV-xf\9 1d;-ZXmk^YX$C uF @HD%K:* S*Ss)WR1ռ &-#&dk[qx &ʔMc i\kMtV7eOkVjx\-W_5eذviS4~ Ψ"+G<R,ȼҼ^j)HqT 5d|L;zVO2G0ŏV#0,k)_زƌs$ĊƧy&½;6>^x^+H^vk74^Jd̊C3"NԔϺVCJđ>&,6Uy?j+91WBm$t~io}h3nX9Gvhl~JmQoI;vFr8]UY&\K8s߁/` 4@B!MT|Cue)0Yզ̫OYDT^^4L—}-ջ5:l{z3~|=YtUMOIZd>pVay8g6rJʼl'arYl, {g 3iybd=\~+2guwhpWὣ #ݻ̸qר`U0NMʳ^KC<5uЇ!;ʸ3L*[Toqh\[[E=*^J0xdey0:uI9[7w\}LNוi'.,HS%Z!l8igs3K» ɖ+%/ JC VoUdº(Rhvku]aUi:hKl"i]k= #5Y ;9X٠xXZ̙6|bCYpkfM;bpNxS|4yML,y\ TSFL  PީSRL8Vf+*bufY^km;bs sv&d*9,6i̯g<4f"ډt6e0e;\"Rl%u5M(iMp!̹YVi;*m uGba}M!g;R2lK\6Nl6dW[ŗ$[H@TLG>@ટO3z?uk:܇KO/4 H"Hk>>%x7pXyz7\؄H~%@\]0}"H$q\b'2!~~_^J[bɑ@%6?|)َB̊TV@Ђ}C2ZEo6CH͘zʰm}u6M޸چw VqlFc,dT5Aحg6PAP $HFZc"^m3ԕ)!`!Ge HsedE(WGuX٩O}n:b8텂 a&ʲ2`dZ @ q﮶-nNg @aэ5+GtHCFT ~6-\$ⱀ'@h_jhK%Y'@I9TnX\a薄"nfqνi 2Hϭ+aAkwk>L{8 Zp8F]IL4?軑悠 ?⬞ew[? @4J9D f'rM'ܔF]]Ngx\XFcض=f[[knqsclMni@ {A;=(B{Px-6V,H[d1-ݿw{ эlanoapGj=Pmz).BϏ&lk@:mtrF2AVN G%²Y#Y&} J(REdIdZ{JDb:ѼPA3"I FuuS5n5+k99|<8dp@={J"y; =ֵ<#q*E)"2ݼ7!C$=v+G#t`|k&͔!w}yTf!5Ph.η_6Շr}LRx50Ќ{ۈ#]{0ծ @ k7`lW6 &/jJ΂'ĪB@7 YlOV( 5 Ћnì8Tgt{w'+P?Gf@ ZJ-ǮKjzεetM ~"!1лL!x2}j~@?'h,Gm} acp< r%uw50b8[=i~ A~ON*J"QoRTZJ.rHD8Qe:P|8%!!6t &8Z2҉KE /$jzy?={ܷFQ̜KRY!5Qa/haUBH7΂@62|}+D]D2K,r B/?i0äeϚj-yNsoFZd 4mU,ZxߛbW(Ȁ7!BJL6?]f!A}  .FW+ /8~#ՔTVX>U],[6e%WHuNBE;lNwЦx]7{ 5PDوjd yB.lhI5գjH6 PnKnTshaw0/VǑOgЫή9U0M^v`\e ZB &{:HüsypӽDω!6T[TB @4*Dn} ˍ,:`?]Ǝ&Oe~^j㖣pBa1eC>'~"[M_/zZ ħ0.ih9T-wܷUk]_aM&j[P_=~vWm8_T`N"B"1Q(n{~3UUL A *"PD4ɮ] b}87}!0 W5 yoel3F.-eun[oWCt3Ck !ܐ*>`~mE@k3szϯ}{C[:@.0ڑ>)H'H/d;VHCTtH_(cjS} V) K[W2ů[ ҢI 32f;Si%}I MLcЏQ8Ce*s h^XlﻭnKZtKtUu ԯbPUDBE$V"@`26y2_F&ɈpBi Xsh2w5lmdÛOSaNj>3NV"G< t!ǥ{y]t #t O =YTB:m$۰î;'-<˹-Ǟ:p/QlKWUYmCcĄa|D*&B \# XqiQ:9tмt=X ٤Q:RF;&sNfP8e4B¢p-t쐗OL(S6UAö\S=&_fi1J]s7-g{d~͢ZAOp:cAA{{X{خ벭ט Sٷڷƅt:(8o3KG_* kTH=ƳǺ/D(i^îxh~57a3! Ic4fy;%C<>h@щ/ȾrB] #Pgc.s]flxϛw7[lR"߈C @1p _x3t=w3_`֝f3 ̈|sTm[omcWB/Hik*H,,zhԠksU쥡6-)jsT eI!'E093^I:7 ![фڂf1¨8ER08ޫsqf]&!p|`~=J6uŠ)Ve8u:/vj/qMIKoDa.U^T;+m0])+w<(8r.* Ke)4q0ß)qE9iS .[0hy6RRLL}tLƶk*< RZҩB*n:Ćk>dFEɪ ֟fL0͔a8̉fUʬQj̢peC8 `.w$ EZ"EW"$E5l$ ֊*RBS .ffVț[d,kqF3Ѥ夆f4*ֱ2{n}rkݯ{C>| wD y;9ew뱒B a HȟPzz/N&o_,# # $:!Qb"ĔAXm/cX *.SBv95#0$$\[ O ~߅ d*e**ռG^.NQˠzOMiDțw?G$~ Q~`&z>/u)Ĉ]Br3(Q_?ls; xQ\2R~.Ҡ_󰴧zq/,.Y$\Ͱ%Gbg؇#Zr Y aY'c 4nw[wo4I )o#| {T0Rt,GSo $RM.1vm vQK9UF Ep=@Oo$Lհ'i=՗DX.jG#T2'=$ ZP/]x~\;/2&&Wpi!ƖPRf'L )DÝ2/N|;ye&I]B f MP繂$A2t3rgy{y| 쵧SwdȦ+|Hr;XuTu#.jO:*  ?8JNdIW:N .=>wnsp檡 L 3JA^=rYQTKFpvMwY**T5jQdY*m8;Mkn ̴jZ\0eSZSɸY=zJ+&R!lRuk%ww=՞\Vj ~ciAo" VnX uHcFFq>GPPyi񠸠 hh[)˃0ڄY@ܸy'o-=4[6*?>j3;cDL-C(w)WZ߸dIl>OՆ/ۛ0@Z?$}.[s `ʿud$O? ߊ pXoȰCs*YOTfDTnر~5iie=sg;r-njYE sHd~)-Ww׹xsmuhrKWQYMCFǡx=;jfRRgd9,ݵPM'ŎĢɼbT|CˡCȗnw22:?ecw7͌OŁ} na1Lj*MX>Iiɞi+YKjP3"Y:r?ʰ{ /qPt`=U〉}\戓v?.D'P1!]08 CJWԐVj3kzeҌ6i*Tԃ_tˌg #Blbwajmc1yJ˂fk8H<}bDEcD  ۨh[Z3"ZflJ箼A}Aе{<F|\3{&_H~j @$&g@S.LSziͶ?*]HLttMN%T@mA=\*q51!!1B@Z_Y'.y0˨m|=zM ĭ"2f@+gv><9*| .Dt(|ȯT(0`JQE@3c]o" ĂHHz@Av3pzx @A:iq@`8]67Yžc^&Fn[un!qq/sPi+vH6'}GdR=qAFfW*yB_sAb@h @~bh8{ fzEz B:W޾'A<ȟy@\amikof_ȃ0B]lyS;|S [eL&pw`ӷ͚!ñ#3#Ci;ͯܲ8(}5MYJle)bb' WOtm2}|MwS1(*)57&^͗veQGGm̒.+7]%ؗ,"_.iĉK*>$.;u.gJhš._kT%o&b&̫̐D[!ɿY6H?]Ć=ܰoI; i'P4<XX UWč}?n~ PtAǍփu;Xi[H 25**SDp? :'0p ,@~Fz"e#K" x;^cU ?Yll0N^:~6`yK4Ȕ'Pa)]ca=́dƨJcy*F^V 230cdƪ،Qq6x4f Ckztl?Oh"QAAVD@QV"(Xc0X(>oq$@ H/_HA$*H R1EbD_"( #}h ~ WLQbTnŸ`A#FU)QV  h̦1bL-HEbMYEX#[iR"Z21DEAJHH,V KD"(zb0!(hN!)3Ɛ @I I7c50+S>CMt}AǾZ/:}A2,˫Ew{]GkԼ]BD O({wf\ g@CdC=s{_WP_g,֙fXɺjz?P sC¿rU ;5bN3J^ !We_2M^K k_yPGAD " VIdN^sA~LO8Qw`1^hWu;as`) "Ȓ)l 6 r!E4$B C(y)=NVl= pK~5@X(*TdY ($QX((I$FBBFB wη_#I﫸>F| İݻ9rxf){wZg7?cK7ѐ/mzn AY^ Q3r F!B," %ONLε?(cW߅u眓쇵Cn{q Z[I;VmxϺOWc{Iݿv*%I`D:Iݕ8sSM|2H;+u>aWlmN͍'Ū^;W(T'io›=(! 0Hm^a"^bfiQ2Bqc͝lN'̺~c13 v+Zl6Aԗ'J6yJOPpD(pTrcF5 [dA &i/WHm*x}*]4OV/\=^ ,E d b[z q_Lks$t'>\Dz65]N&=upnw]jYܔ}}?|HzQD菹#V)nπ M0:}tzz}j~{?~.}Z/_|0ljk0[:|bh'U=#p2Ë7SR=,e$D6Sr_))ܹr,?ˬzgɔI*É4at>T>}nw\n1eOͬd0ͭ=K>XOqZ}Wy 7Z2eSvX=A|Z;o~MkxvLcߏ 闔2 &G筇a=d {2U 7oO(x3!!YFktzuKD-Qp|jOZwq6eA4oKbN^*g);P r @ ݾ1=k+xႏ\`)lQ{ ,ҩyS3JPt83pC߳oi{M%~ەIݡá>*CS`pIgx曁l.V Lrep;?V|\ B*5i>hN;d2n5Cʧdo_Vw&|T'#elz_'_z:ҹ(`sy''IQZ<|HZA=vtr鳩q~忋l2Nk^9V3̃tTIΗ6IH#jbňX}ƴ1K(YD%D1éf9x|c7hsF cf)2}"]ba,ا;ׁ@%<6Ӭ +R,U LϧE#kR UtDQ,bUtʂ"ŊXEb$ Giӽ`_1Le+evO.SHX_=)^|TKxyNF6*B+si'eB9B4Ky0J0A{-EHӬ`w+geTC>9(QqyTށQmٴ~v-w>#jW8#x)wg^ 3_׺ʑd+_!=S۱d$vP6G YX!Цn#?R{fZ8syJ (s9/@jxFlbhGK%<]l6uqJ?ԣq63i4vt;&]*my!r(Y[Ta@~yZ(2+Mś($WM iM^F^W3x(2A7L"({)L]EWԶF@d@$Ö>sYRӢu= 5}RGVS` YSx!! 9F<9(w$QƤA :5K&& 2A \L^qjrU"1d, ʹޣ| `5P^B03zjF`7)5[T0Q(_RΚR4 on|ɏiQ.R=RK+$,6O)-P^jwy&Ý߯P$ ⧥A (/&od M )3,g{?!T ƒ"$ ~S9zbjD:ճ~kTE`XEQD!oI?/ݣfA.Ў8|'krAvj05C> },f#^:u0UD렯yeVo掫i^th آ$/j=n/aP6 ̊8.>Ҁq|}#x0t>')(eZK@ ϼ&)i M_nR+x&&ߴ2}IP̆HeidswG3J _o:ۗ󏗽9|_<^)ZjD0LggBe Q i< NgnY2XL"J][?ˆ4yK1(Y@ @Q:cQ(='4k27~Z1*hx!SDfX ]U6e$,[G<9!HaCJq?%`<"):CDF! hkðu&,/{oFZqwW؋}Rxv=m5pPr pBE=ݿ;+z 0X+C tu|7OzEZW4G3:'X6Je(}f`6Šm@_iPpcta7hLj$FZV` 6TQF0 2Ʋq_w%LR&5 8.1plqΎ:0 @$*l%!'$5IC6mDRF1A7ei.\RYq->TthXٶz-zf~au1aT:J*91=p>8"k5n6tTpmmcs!cS_FWߓ/wmo01$}k~3KVZ$/JuJ:== `>_/o:s:pVoA `i.| )ewM&Z4 Ā$⯃2.uı|ㆵUn"e]j4k'ŽWl3-f}a|p.aio;]z@5a=. $)91&?`y@Z=z>itp^?n>{s D_7#1N⪪33exzl|<EX{Au?@1{|YAV(G@z d"0@bӛ.ۂ 0X4TU-P`mfZ*~{d]ʺHTA[UQSk"*EE? =6M| Vu< %/zt]){)g)5}_GB[1_ O @Adf$^PC3vB`pVOhî|>|L&b}ްQUO]3Ӷon=/y z?} bX95Sb3vRS%5w$x쪪2J_~/ X "H 1dTY"F!$(B*dК.Q^l=0))/ڧ5aٿqQV uzyB(pI'G]/At2B zt-X3;ݫZvþFM 69;l2V19kKT Z>6VM φA'PzPz _mflt Tv]|TjAzC-`1|tc3ѿ(}Bs#TA<C˝W2mbot\(q`u}^ /r^WüggNGN%T 42aHvdx}uB(F:{YP3ݑ 8CKȎl&% L6yLm"-:#+[p J =Q،*T;bUiv-G+ջͿ hWRq¼]R#g[#eЂ@lU+s~VwUPZrE{`Pźo^A 2:>^(3US؂l8=4|.Sޗ3f/G`~sIZkUti7e KA'jB&;qajт+*:6P ?] *f Į^ZA/q<4S1Klx|590.h!n`i!BB4g#tщ G$?(@mG73ⱃrq% i:Ԭ>z"ax-2GQv^RT- `|\U`(>k#o5"lzˬF5:=m:O7rhwА8aroA^WȵPU_#?v6NGQ}Z~nӌMlL̆9:NZ'ڏF!p6y~X7HMఉ"Q cQH_V.WZ6Ju5 0D~ ȱEQT:P`2XT5gOBۨ]*1_~F(#-OJ.^^ UiC¢/}h#e( X<F,TFdSkk%}BQ+TޕNM TTDbC_5ZQ]O0^Xryb2[`|XȺh @bܯ\¯ל8:8Ulb4jlk/g5L;jv($V ?ӀSa X50@2"0w-dz)~lp_}ʈѳ^3H\n)vTʤF|uBDX Lȉ%o]*-LaS+C?ud?__z(qBDAIEXH(`_,jE9i?Ѵ`4>4HӼ/9]ַ9P qH s=<(vo=]Y :suʪݤN{8ݷaU/WAy$Q6"5rM_EkʙIz.ڥ ByxgT|(",NπE"M{\{LUyslsi_jEI,H$ X`eP2 kNH\k A*O'!si|[8pյV@{cZ٪Hekm\+W갏x0SV(OB? &K&~#O ! x?bS! H!u_QZ$Yf$ KU3ܵBOK ½T>=5vwiO"Iq({5Q]2QJ& uW&cqt3[a?Yl6, dFb E,TEQV(DQUF dTXQ"EUb+~8'OAoz!Hlu‰~/S07g[g,V lńdQEX,W7,PbdV<8p坦7RkD֜߅a9p37M2dy6l5,bfʯEQH|ѱ1{ pRec3J"EQmhȨP**,:lESzVL cuv߰ibA",X4Ȳ,EEVlX"( 0R **;#hF($V,DX"0bpX+f(,UUvmeF(d*LTDAV* aVZdDNm(lWѭ+V"A`a[|X]q˔.e7]7I^>OIvm՟{4|yȋN_F?ozok{:]`Ю$ożǻ> Ĉ'zo|5 VP 4d;_cOO"'|}Q,6QU1TE?~Oyz<2D#-p{>`'(0d`]vtj( ^g6˘3HmWy7Ğ\7aӸ/I@n(gxS(y$}#5kfDψ(P띰ݿV Ȋjs B4o18{?vAr [fc!ŋiiʫH*1X"Yc+G ˴k g\wd`|eKT\k2?A`Whf1#vf @hljT.HV(ja.)gcaԹ;L-X?J 'ڗW:KTD1.C;3O 889x5r.Y"hV*Tg3w{c%m5X :udIUWܓO"FgIBKl|,#cg]<j%?*=~Ut0굷LOfCU'rz( I# Ks|U~A?J6k?Z7DE"ȂdDPb>F沈i:HEioLG%ۊ-͐(pБIYEHEXRMaA8$TZpd<#Ċ/'  2lmǗG 656xF,YdVj,PbT̺QHg_1\0(rNAEAV ܱ){l (E2(Q ka,R1sZD%Aj b T3C.&Gcib"DEEGmdUoV b6ѧ041!>[jmo`sF!lrnm nۊwCN3spM f| ~<  srH<@)UK(e$ Z.0¦Z?uѹˏ?uCn>No'2;SsP\$c7 L.>#. Ɠ̂:D)c3 )>HӞ NϲԦ 'YV(>=G_m܆lԄp0ףJG(}ɲw{O8ZBM\_/W̼?Ǽnn-;Ʋ%v`O@ E'#EQ6_>y}<'ncN!㤤y&RXN""( bUEQEQ=s_ak@WE EWC Yŀ?[]WmE4iyŠ_?^h5S鿏A.&AUDrM]bO3'SpCG0cIN @LDN-,erX~_D;J\ss"dA> d)k[6m#&;$,oe]D0 bD䀟,%R!zv][Qn `f>z?2y "P UV*",2 $Ud`*"dP@XDbH("PPAF "# ,QAd` T(( "$" AEX0c"(`1AEB1FEQ"1 *"!@,`R," >V 0 E@EAEX@`T"26  #"V?d,`Db " ,#b"AF$EAV EE2DD YDDU(TEJHArHLGicضK58Hn5$ן]~} nu謂E_$YFB(EdUX `w>{>kSQ@T2Yw{;$1%'š7WxObkd=d$HH Tb*O`""&dd l#\T֘MѿcZШP( 3[n8*[dFZ&H{$y N۠ejݕ +BMqN|'FM\2.ɹѕUm0%ytBG$”12{f>E0!u 竘gU|78_}_HwHAdER2"cADEb ""` TH(UAU(bb H),PA"1XDŌYD UX* Ad/O@`t y܍mSɿP $ԧ}FAc&~:I0 y ))@ N_V0|>zg>dH%gz{9Ϸ5!1aJ [8mwwI~'.%Cπ' }@^nP%U1čbyD8s-.7Mmwӥ^Vwc4о.L4i8M7ԀD?U^7 &(PNTs#pĭ^e(+8̹Ď=Iu[]gnǛً`O`t (e_ afr PB駡D"`xT:[uTm@V˭rRу|CDp :Y|ps ΓOZ,d&o$.aݏÇɣ`v[G0 ^[1ȥoa<,'ӒR7~vVg,w'Ҩrd1F|֘3Ja/}>;+7l H6UI$ 6$yVSvbhxKk$ *ѠT/ÁWFGS2͒({Сk ٪*2`zjS-)j_V[ LJY9v'v1u 1 ˏny "\M&Yq=Zw:# U H9*U+(WYHl?&qŒ$S (8^[hK(vNc„B)L-dK>l+@P&RkZ@V9=TTyV鹡lEKZ`0i0XC,qaT62taՀIvpZċO 6 unb1DTSa"Z*8|T}ezo*m gL&D&+C Ce] 8WUK|0^ f3F^?,Y#YxN.bAUƈ}a"cL2b (C+j`pE$f5Q@w)`NMy{fe^)9kYE^%B&A QƧ~&6pR#Ǧat~:llͤQ`vsIh۳u 27xU/şv]#$ !'CzQ,0~Xbr?`};q $2FdrZITjX07^r_ntX3KIBB H,m_=#߇.H",|*="{oo5beFKWb!8CqW'LeNMmM(ä8 cQС{B E*dALuR: ''lXAA*E1ɓI{J%weh͒YJG,'GшWpEjCfbR@)etıMH" 鶻o먿X9zġ}ѐ2C{9ڗBIt:ρW0 ϣªǔjIc} #D&&0 9i44>.bxWGWd?/O7bs;7rNt^MFzqbgo~(\c}۱Ĭ ]ߞ/q0@lpopvg>J1i!> سg|qH|MllC>$ <@gQWye5xS$hN3`. NeJ) $D$3d]}6_is}9{|8rO0FSzaT$`"$]]v*>?QC rJ 06, 484} 5>l *?kǮ=z'EEPs{OopuKOEKlA %,QU uŗjnIqs~vܻ6LCԏђW\RKZT%0MP.Y/cgO-ig'hra?y7 <[}5Ě;Tđ_žRRMBLy2vv h\&i*^+@rk@( ǛIb^\GѐrծG~@2$R@(b$D7w33mu >U/Vdz>ӛ|Lxe'#c> {}y*K)x[|z/xmIz5WdS|NČ3 ̞Lb#()aOlzR.ƇШ$J3Νǖl7hw)(|L.`I@PDiFMT6cRB $MiYbm0Q)J7&A p "klQ, Tm\#vٿYoz1f0}z? 8vKX*}U@ٵT0j!&@UfGḧTc4t ԕT)CX!Ps]I_;tx?f`q^5%gܖ"͞ppe8|'Saq w0tGVoGH@O=[A4K͗Ub%b`B|dOiD@6H`/+˜ *IS `m.E;װU'$LOl"LJ!nALLCN`ЦYz -L phIsb,Gr|9{iKF 2DzكtoC͑V3ҪB a$I'mĚ |]%8j:>]ii~'U#04=FS8ۓm83gCNA.`̟s[)n(#x]@TـHf\ôr P}f=j }U,Z?z}]330&Դog_%+OOqR1#ïL0bd|S̝ ҝQG2=IU֕W%x^Z \:Iys9#[anYIZ:cA7y:نEp42)jni~ߺOc]WyGJtWW A[E|Tz'bZNowuvtLX6`yxw"qB MX?E`'#%EK0MA@M \[h^3a/2OXh&63Q0A|ΚA;Zo=d)saaB7qA[ncr T<˾~W7XWɤmstB,>6_Гxm{bDِ;3"!âuE*f%F*ָ#. H#!%669I>NbZ-VqBm{]{U?^сc'=;z)-WW fM)6_aS  S0琢[U@-f & Y3Oݶ__Ms9qy(=εWVN"DBѡ@HR$NuTkrTbl;7ا6ܯf}d_gOmѪ3Hg :/45Vr LřU~w'Sz uQ0eL2|ziJxW@ nj>MaR&|O5up|K݅B!B9L#"P "OCW8xUxN+?4".,EUX~.CJ4̖Ȓ汍8ugp 3hQ]r)~&S\X}>~ž^ =z` 0 ] `] $y]DB w#}z[_=Yz% a$ylLN$xLn'{dF@7suw{wwGu$~5D R $ITLvWM w>^vNV_÷uT戌Vgdz6˖M` JKwf]yRvr eDM9k=𮝣69Z<o|SZ7eŦs@_» y)Toa=B!8quzc-_;ڤi\Q 5]&7^\m0q콇TM_u׷~ѵ<-ɺ8_b`u,:CP9BX"ݰclF &/&P)r;u,^uV.R-igl3iN~YL(w:z-TOyu T#khe7LmxY@>}3dfAoS23\ q v|'{o}y{"(""E",PY!{H %Nu;lzoga/Jdh !A$!iXkVV 1\td !ޡ X)"w;Dem҈BJy鰜rK*z'c&f_vAEy] ",GY$/]X_3{6SnԢ Il@ys VDi5^j[mfAQoVLCQ$AR5ph㞽@ryL:m·:ʪtm}Kau~Ɖ}ҕ$U0TMI ;&i5{#vV\!}ۘJUCʾ΂m3¾v|@ l8$x| j0#j`GK1e~:Kԥ)1rDΏB^%8aV@d<f}2DT64[iqJJ 6cC -')nm%?5ަzj c%ƣzS~2KxrV rGz̨ӐQMf&h{hʠE|n",)u4k2Wìp`}T'ʔK );O]7|̘}IPH.y=QsƆ H<=?iժ. 5F]b[~Oe Ce$>d nQϡphIumsbwUea々D5B:F bؼ" 2Qvx2\3?! 8̙-86^-`=t>+7 Gx_H2k^ʣ +(0vHȿPy^(}O"""(* F*L:@vbKχH"*BpODO3a;_+HZmn7ĺ'R|?QO#$e^U`P\m'o<3D 20djEbQU#F"XAHET"((( `IQ"b0ZKb(*Pfd̍YEbDiDAM'Qu )D Wl_ysKO˫?]Gľ_x?7/GbOK~uPlg{:pFS 7j@Z6OukJ;~ق"nt;_/N_N~}Lc"*=6?H̀**14Ր>ISWV[NfpʷC択JH(5WelQJL(h5_pàfFwo3`;"Z1Hu1VlO(;R8I1cơ&,jKT GKRH ?!xѝwf{|l%pڋV( iWJH@n>>˓0/V Hɩ%a@I'C} @۞ <%2U5\xs"_A|5afy{Y=\U)Tn?ӘgG +cTyh kP {;{>L"Z+9cXmg<گŲ1Cx@HpJ׬f TV_;Z7ew31юxWT!ju}ՁB8h63r7[ۻ:Ok 8.VeU!h7Ɩ"grL JV'dFL}YS#EI1[Yss6 6aQ]}E;Tpp7Y(Yd8W~gJC N=9q\Zk;IDQF w:W؜xɗ֝MUTbf33u ;;쳓 $HQp{)>{V[>6X0PQEAa;s?ü9krH(,E`F~ӆۛLTUcPUYc v![k;kdEPR(D];ǁScXV $DEXPEb1`Db@U 1QA]^¢bŊ25|0^,DbF0X*N' ",Ssn5QExkj1EE?ӝ{˩"|,EUe7FmӱhQџv8`f@w˳^0H 0"0:ԢDDH laU.xǚOmʻYR:S}w ed`z1͞nؘ3:[ǸPf^#+?)yi?8y>K0 ,(u9~ IM]%oOWk)^C[Fڲm%nz7HT]|E85VUm GW{k|cY {ĩ'npuh5͕X2x7oFzu}V P2o? =/?`[s%ՏbFP_IDw4)6] gq3zz[h 0;fB?KVآw@8'fzyhA<±y X `M#nACc[,eB>IoɿԔx91nC=ߘ@ֽ=EDPIJ@pam.\Q]  ]j9{dlB9t>h?$#QDEF, "DH($<`s=}8\C=ZME]޷3_)~EIІ=r'?c$:9?ӗ$&V~'{cUETPQH*(",U"`Ȥ"(a.m?tߩmŸA%z ibZ>cb~ lj'm0#3 l=rF #x.vSDQVQEdXaiݹ1Q^ ۣsx(Ȼ1QU&= =Fݍ$ "PPHLƺQ趃BATXB"3Zu:zdbX0j**#O$Dbb"UEdbQ""*AH2$*pDm뷮:'TY|ݺ5d$DR" E3uF"GtUHfQG `AyJ(q"g)()W"Aq0Xxg@(AXdb5N*z~tՂB {@P [6,Jad2!Acj Yo1hP++p[W1@2nw0m%3O T"ALx$ %"@\CVQJ3n1ixrJ;erEH"!oy#~زI?f;(7};PYO-.ʮ;VD:u ~"㢝$f q,"ۇTNa\<8I$?:v%g#o.4h}&uZY L8ioL<劀t\CZJ# x3IPZF,r_|Ɛo~?a҃1䙨wTaլ8՘Fp&5lO{Cy7^2>pTsddbӜ@ )Lek#$o=QGMGDBNn[j Igxm 01^ȿL#ݿ+{ /YX|lTw4UPv7<} P㟸*dZrOM<1rXv&.%XkmO4̀Ta^T!%LKwJ4;kf.F9`¡ 63uK_G1O)EL>2.cm!A$dzyxnVY?909@0oyS/{d(A.B3'Ȣ"ȢȰPDYDQ`(* H* (VE! kuq{OChCB!0~UMuP(z#0S4Ϙſ89. "1x[CMEb`FUEX ( **d"R RT1@Y1AEY"$$X 1EEX `# ;w= E EX*R("sZFbVEF,X, * EEU@N{ۦlVx{,np l>D抄E/? |H <̡ٳ?@w{ 33阼FbCNn??>c _G 0.Wwwc vQW(Cy 4(YCO%"a> Dhi+ aft^4VϾk幊t4⎂gګ?__H_wj^ڊJ f9'] !'z' ~$?Tgl 9S05GeY(톒 @@W7MucT6oi!@<ԼY'ް p]@)ź"IO™+/qlxݾ-Q#qXb |%Úh0l &"VBj~2J߷JA-Tpհx2C0 X䟁erG1,#]- J} q1͊HR5l LRx]i.{2c=`25X)eꠇM fB:3hn֯&b'eAJ|봔9{J6LG$w9Wut? PFY(A*TGu:qo98K5?& gf' 4˿flD77z\ S~ݲw w [|w'CI#e|8s2'eAO"7+H `i|}hybmNbd A(`EXEȠDH0 0m;JV(BE$Y Atafw`. Wlk,7}}4HE)!UX FH i1)X#rzpmo^΍yB A!ӱ>YPk 2D*21dAd7ا )6]s[&|WO:Q ptp VhY_;hVYkU+`^3% ". r;=.͠7j ?i6 {M@P@6V"J*' !]gV޽;2S%t4]Rb M~+:@ Q5UO󔲂 'RK.z7L \nEA~2zҹD\ʛ,`&ig`56zTd[2?#B '0N2A =vݘ“_b9w^<NYwȚ)L8? X+OHn]r{ZHsՀ>#R[`ߤa#Fwv̻_ EP,ven& Ay#fĻ,jcʧa|;&ñJłTr?#<"u'2zYh6_n[CQy xlqV>s4$hhhiI]H,+nZ sUym@1kEDzjQظ_s,vއA%ësܠv?Q[UOQ =~WPrb!IAYM\}{-Hkm;?~YT\ S~+d\oj򣟁5bNUw^T>)rdS^x3hD-l扑hbV񼤬3-JNy*B=%B-e|'.x^AY[zdEi4-m>gu{HPBzH0ĵ%'t(iWM(@!@1cG -`m-7cIC)3oiқ֪;lӽe ܷ9H ru5>$vM9 <ӳ`,_27>uMRv\]E]#* 1^ycE%QR?d'Л 㘵~cd=.f˝l^p:LG 0ޤ<@"}vl'><'#Xiߒ/d+$v]xَ, \cEœ YAu|2d/xP鵑_]WY Lx<2Yo UF搂G)k1'p_P*_w" ` 9"c"s6Za=lj2M)h^0t7`C>Ej^L;=kpi䮍côM4Ty$qk6r}Rh5}(YۀA+FZD Khf yg5L[x_5`3uGf"6"ƹ@72%t|:mH>+jmd}!t;S^ 3Jdb,J5irG8֎(Bs";2ǔn>n sTw> OulYUgɕ;]З$0~P<] X+a>J{.Csaa[XZ.`鄳,r#7݀݅h2A3Zpi~joߝ ZJ Uc/_tp` RĦ\ sDeLkFNΗ@řVM(8mWAt(;K} t񟊃[lJWGw`x>y*l2=k]+=a:C܇.pdm%, "]|m*}.geN$D1 'nxf4-_E۳U,unK.ly$߶%Z* f8-fmF|Ggh?WF%lγ>W'4+/S1[d#g)#atq7{f~]y(0ҺH`͜ȨdK#7_W@2F/@[XdM**XJ;qpGsнȘӼ@fFHb xZ_7<%ş69iFխWsgtJ7$>{s@Sk`<Ο@>~tw <#Fk 1Y:pOφSEȸ ni>COu+ N5qVo=i xekʛ.j"@S-Sd['~?aUĝaGAٓsžm |N0Eh_M2ɍu<3WXp2zԦiq8X{߷yxs~ Y etי;3#/c&DRz 4 Yo0ӋWðv snRlHG4CL : Cq~`!֕`g25d86nD լp؄PB=2V?ksD5i!ޣȒLt坢2Kpk4 #wOPG7AEIa2"VP B3ęwFl3ɥ-]N̽<)4k*"F(xOJճ[XRh$; I1C@hk$B+e[}kVI@ĝ%\l$H[C`N$rKa @@IiGaR痢|8m<SZ.n{Xj# u0%նаޜVüBlg@o\_y90߾6d.T!Tb ⱜG{*wga:?5>yO8.xgArŠE}nz^G2]ΨYoVz)}ͧMpIkyz$|́s0v/9~A~O?Ԉ=z7S *Q : "$MHG_Vt,ɳ>fG98FxK9)M~CyNE͏#UFidGsM.jĄ_qװnA-D}+6T:%4d޵bmXiS:=Ln- r !sf tz⛮B` J%pgOkJ="Bz&; ;, к$ 8[7LjX *-jH즍Ȗ 1UI+ѹim!BPOZ ]T2!  aVwu9y>D݋ӴĻBQJ)V~ km :Ng rSV;-Pj-yI:[qR+ELQ}}z0M>%R|uU~~<ytӼYL@deSxK0ѩRF6KyF3%H1L,gVl"2s}%`~ pQ 4+>`,3قrg;[)Ssf 5 ?~rDP&yl؅uM_ fgS`b*ݡ2^e t6s1cY`-sߊ}LWjWvq!g̫>~ <1Y" JYNB# "%3hģXFArq-3+MIm[(-9Nƾ?tk>V%)q؂͊ZurOݿJFמmY5 2GǙ H!oBJmbM^<BEIs1D^Cv]Bڜ-5| 2[$3#zȕY O cIn\9UCK)ÎFYe#23:$ ɝX҆ih& gX54A.βh$S$y[ NfFSB''v)kZǠshj]5kd!A<׫XF199rqcBȡ̯6Q7oJasbi2=- >'ձi4wvbHiP[wc=* zRm_5fR6<%6Sg"Ux~R*!yl^^Cy*mge!siNhױbi疁>[I!|\1(g5[kZ ;[(Wg1gvĂA q_ xH-r;ƭF04ǞuEU$Κ"$P$3P(y&-Ԕ~ I`j,ko@a q{ C6Eemj(t>.ܲJRז&.D rz/ .H̞^euj@3/ali;RTYo2WΙ:~}Q6wXړ#A5M#ZbqH$wjWRs/e(c-5[XO1׫IFBXQi5p*ҠQ?<<8="* ٜ'~%ޤQ$Y% ;@g֬х^),GA}) ~;䮝;-d@o`YpP:,:p+ 95;8N? \`77ѷ5:lƞF}5 SMv\Q9 ME_슛{󸛜O ,x NTa'&\N8=Y5Sz/h.:<GHU= ?[aDФ"UUH/M'9 `41TL"Q\Ȅ]޵t@ 3esSH"qW; vH@fw]v!w_Lłߏ&3ۥXSVP'_PGIKE/QW7`>&xa$[xkzb^ >V&( 1Ck1}& k¯%YyWӘoGW! P2:Eq5sl"p3 ОSc ~ԥʱz GWtQOvru^w@Q]q*(N7s{B4>휕p9czN+r42~-ѿ S Iw!B<Ɂlr67c;'ÒM <1cbA.R$`=J~ t=^uksȫZ8̚t奌ԬD%{]O0Rh^ ݖD`:N Ɩs6[˫"E (B3ZN['V:%Pe B?x#}ןj!/%<%drX;͌n MvrN<^+DayouflB<>+&rc|Q<n&!w* !ۖ9l10t!g 魿dQdy)P^Hz8~-GCօdQ.N)҃=>(T 3ȮEh.G YY䤑@'4)*I8Ii+{ǒP"wydmU"6\='vcla)5徻S(%SэxX}qV>uW~_%Ɓu!ά tX<~Z'z`y :GVb)~2hGn 87Cnr6ީC.vnx]@c-Շ i[G%>U;#(Sу~[9ZK>]g s0RjUg&jX][r?mlҵvjK}]isyX~U5=j4 u`衔!~׵f R{M Ff<*6Ļf̨I^؀޽/DXs}ͱN"(Y α0NIeH |tA C\7΀-EECKɇŔp\ M|a&(.U o)^X7Ї1 Gv! T\1Q(с3!17󭉨8(9BNF|k$TH?[gD?kSZXIaٱqh)is@/X҆@N[iG|BnfߨmMo%+NDbLV|@e-0~(υoa5@:KSj 08@Mg.{B ւ'Z;Ulk9h쇣!TE3 sζz&!i=},Dt4*un4>x%jcm(P۬J?x) KT#8ZQ2ɢyX#Oy\= snx60*%B"q*׎}~ oR+~K)s3_e:xk9fZ:2Q1M'2hDVw# !vϒӄ|PJFL{T>OsbHvnGrdjBRWl*T:Sb߾6&ٔGOŨVV7X_ddmtvT,n"j>ϲݝ_նY%kSqsWI#Z!p?אLk/ď#FM ~? Pda4( fn=DmEgߞ$OmRuim*Kg=daDZVw,׍<)fj%U !n%&)<0b! ̢j< *t&Ǘ݅!]]]e)ɷ.s_~eDXgw1h}pdlcx98FWv|20Zd4 Gf5.k{ʇpl! @F$YsMuߚF4MWŮ^L(R}F[MFOR?T@E%#a)fms'Ee H3O{U2̓yAv!kMr_<6c6h7^]=b9P sP6j6VpHTP;ƙX1*Ej3{:Ԛ.M때*o8'5 '5bÇ] R2\Ԍ>=@pPZ$t09ƒÑ]iA IRm5+Ca庤0ά>N SDdwZ"a}8HAA/a\\6QN<{Wb+9wc|@iSdg)7XY(:y\GH%g>ڝ`%*,7VÓi(-`.LO78Tnb.s*GA3V8QoYKCdN6uJ$،Uz1eVKiqŽԢ܏4ol^.`މ^Ubh`NV<9W:]x0h`5m2lАjx,ZQy"Kqr.e"lD-kl@:qFt|fV]WzDLRU}i` ԿG@msd L>6;i/"ov7&g|%:rq,v8)^zqceb72h^sHdNaJWk2+#|J YGK43G+i"} !k~o`TV?EϤ۱ۗ3TG*Rf?{>"%bwUE(w`m & ҚїS({\M#:2{&ͦ_vİ҃Ϯb O٪aK=Cca E)O$?MEfpMxUhJox@~IE_(b^B3ҝ[{nN 3iٟwyը8O{CQm=Rf^8$c2-%p. bZnR. Uh3o}@;>)^7C(4N*h3)78G0z^` OBB F`=ɼY8\UZ7Σ*lҢ«W,eL|4 zprUy>XeB+<2?> 2w0S%KhU8wA?A۔=ԧM"ju~=\Vh*W`xy9˗ݖNota[ ~LB"gޡ# V8K!Xѿ4Đ[i6lMxUrc]IHیϞq۔ r5p6"$9Tz6 ?$+rxRy蕿ɜ$PdSrkл 6?`w?[p$0::& 2FgckOC]Y'Ļ zɜfj~9X%pa0oYx%Í+NqGgaDZOZ6T|AC hLfXJnBuhBcҁۨ0oyTUrme*zl=OQ!@,+'ӐAXd 47p{"$Z.wUU*U_K1"}."ilt${/s>k80`=TmyƗ H! Ҍ+"x|S2T]p?ΡHB,?Nʥ g^$Bª–CjjWor_<醗'[ݷsd'qG`+Tw|Yn;w"Qxp]V <1KV]p`84OHEHhP}bEl-_jQ T$z-hVT1_| ݑOGTH2Y5gx e`eALJ%P fȓ#^LD"|`W{|-#eFkbM6%m #Eתmwf-Yt?J˕D\,)Ҽ܊vfDy[J6A/m'ށhf "iR)Q<$jXld>DA8:Qy6S5ҫA5꤭r j b{` l})L^:ɪ Xxz}'@1A<6iU:mi _Rl ystw=]=&މz].Fmɳ{b%iGjaB0H왡p䕕F3VYܛ]؏ɳf4.7#b!|w) (w&![azw3ŷSڬ^nc H o.(( | ` u}E3_ &[0,}Tt=]HH~/v(((4ړ!\٬U)֪Hٮ AFa^\H]#-5ZK^kOkSWMʃJƃ' q\dzk&I]ҭS| 뜁6A@-\VW[WS[6wum\эJBޤHGKrV>kcG:AOGmbq)m_v MNKm?7IrI,94Fyɢ2ؠ z0P({wvk"lg[7Gpֿƣ *SG% w.Gg(o:xC!7\Gq\lL KF au{sHE44I} ,QKa&Y=Sϣ9!ɎNl.q^D,x]C&-§e ֠BrIXa96\%إ?D$gn'l`aҤ"ot<#Zm`pSUT5=v aϯxQKr\Ud+9_+]R7gv {Sr1g[HJZ0]0c7</9τ`1QHp )AH~8 U>YY-3Na ݀ xWQ:c'FN:SS!DI몓r$x;Fc`C`epH?2`Q<՜žWS\P[QHx~=n,}8$柳(']6}%ޯw{}9t5L̈́FȲ9c ڿcjEߥSS#ϤJbhVx'=Lџow"(vi8] `gҤFo}q׸(z{hgKvϳU' *\͉!.*+S>-:uA,mNZhn*]q8u=ЫՅ2j:D>zy`^@;)7vdnM6l@(SdٳϛX|~kW!rwS6-B,4tm$g߫cܹ1E^'Bv7yImNw5i`1vO,BlLH}Me6%#?.êGrqiMQt154[2Z鉆[nҢ}sÜa!'KijhG8N)0NꝀUզ,<鯛pjFChU\7!rw& *Eʤ9^%10'ڦvɸ@r&c #ТR(Ivl"/.{tOwWϰ[QB 0a ݁KQȇTxBAX'Fܚu"_82TAuVU?\nmY¥tT Af6Jz/bn{OVP+q_억ZL2n~d@! 6HFȩپ>|Td'\^ GCv2a; tV^Z>熜9,qI}/" y69y J`qڕ8!4#{GzhuRvI4\dT!bg䰲Ӱ %x)eX)ަut梂HqH!50en`G7i)3i CQ./oe(vZg8|n5Ijf[W|*I, S4jqWF*y*J7Ҿm m' *çt3CgLp-mǑaߧ]=4C@pFD2W)<2Re!uUDM&f{6aԝ6ܫhyCxLਁ:<)r F@Uy.%ږL|KZ>STgA昐[\$̣XM -Y_wl4~IUo&Q`7gQ[ g? 5WIlw*`(jF"h>r|v%#ܬ- fp7C2QBX0^MsUKnG` > ;P3cJ^tlzܝHKhLڕ)x Tb@F8@bw2fnq m"D٬Q3B꒷5 Th\֚L,\o1%18-НFh4T:JI]ۨ,pcy)v4Iv2v^8':fV5~`mcv)d πbYUk9dl Q5ILެe Ůh"xnKP,S@`P/u:W9G@PaWGUhmwb`u&JJ_H4YFU(?[sgj?H-8BI{򌆿+N(^RZ} l`ۮ/r- \d$ 7I箅bqnI^G!.N]wysg&("]N}Jbqtk3+ FsVTH->w Ш\24lkX7YQ.{38[jӽʋ363KΜx;Cc$~b`=c72 \3n`§,-'^AN{F}; "pD*/n; Z|uyX^/BԱWqDF+@}W6%ԭK}^ͣi1Q%`ؑg @pE,DgZ|Q4<]zGv6y3{70Xuk<>o:7X"ș.0^lLHR>j~H6`gttnM3v4a7$21ŏ_ 4 Rū_sWl U> )EJFo\;? {mQtD =5A_^ G7@cЗ}d>G[!9ɑav\{|8ӂ $]Y5Ʉّ/U L6.y1($WoxNЎ> O!Q1 ,F>jVTºMO1Dq qˋY]-U?fkb}^Ң? #L6z@L sRTţ> yUQ=?wksl+QPL[Dj^kMȺn#ckˉtvWiqڢTY4tc~L4agEbylw^+pꠘEvHUjup!ćiɒfrXp[m-AhVSۻV6p(05:`О]\2 [ 脠fF )Y5׽ b/Ws3V#UJb6V3|McS@X>;߳|tgZ}4)N$* J~ҥZ( w4~|#l#dm4H: $##~|i*[P}hzE6* !3zF֐=Xynz_AW3[Auݏ[\SÓwQS,*0Mg^[4Jǭu^ c\%-+?[_=gv@(iSt'P1ٵ?vjUP%뽐M=1gO%rdcsAq&ceCh zSjuWJWavDI5 pȈv) @SVdSDQp_dF}yaT ~׽efΑߠǷ-,_2(B#%!Ig@ ^\파YwC7? GտJ~}"aׅO545"tbX^:B mt4K\ {%KOJklF yLRL4in-[gbuZXt68VI`^f{ɔ~xojI|y/r~KV"=B9=2NN$JBaToL_l%u kP`%y FϺbRϪOX@YXj&\ [^PabBMhwI>0"Q+MƗQ~{}˗5s˶m*`1c/t={c~J(XJWF0zи4^~S$8|OH vo<O*b;oz5e#D XM$@,%jL~gԄ{Y [!`1H̟3;E_J.-h4d*LVqs(@$/3}&QRϋ)4Ths=m7=hѣ5H>PvW܅@<#!P8-ؗO Ii)k>11g0D/H$E7%MMe,}F)ݨsOb>~v/C(? MR~vowH[h`PT|"Ɣ _JiUt~ɦqb<]A:i]rc?x x?U]h qvz\-:t͘l*!Mi˾crMZKl/̷~1LXl=طgLè*IE7Knch\XFAS܄! c~Qû4úv*6R#1CLmI)^+xg91hvEԏ?X3ZJ*.D43C{ ʗQr%}Rm*c){|@5F?X^"۔u$б"m_ŲV޴G\ EjҒGb^p)4&mK[\κ=0n,)PAJ8QLpjC5j!Ea1 J@6M:r9h+CXɡ;^:yU+f ۜ$N>\mf㭆,ZcEW@EP#-z%A9fVvo{( J %T~PMVs-C17v%23H(x-(,Fb<1fHpn򑫮6"~ pT5kl3$y1waҶA'xm%N›"g;c{1)˝aT w[)Ͼ ]'x.`Mx~jhG+ѳ%˥3_{3(V蓩~e: 2z4,ZBXsw7HK)``}st :LtJ O~<\O<ߊo X"Z[R9Bt:[5/\}$fY7w#'2-FC6NVvJ2:2! XОFREv}31'hPK {>-^uvZZ/a z7 5 _03tŖ8Z :QXC2E앐R "E7=C 8܁×KDwH > F;Y?7`)[˵\g<PRnxl@[e BYYaGz^TEؘcy<>z@K؞v].e~i*[h^釶FWoj4tCNcN^`8%#ENڄt^ .5|X=,7p>b20RqbSZP[qH/J&mDdꢶ6\e{dN 1D_6af3њwxĦѡMFqҰ/NWP7i#|ȠIq/!MC5 lmm#n0;Pƞ 'XMS $ xs@4E@I?5הjp)! un?ߪ )E,yҩ:bNDv`Yz܁7Qቢ@·* 8;f'R m~ N4l-ְoi0ǩZ!,n$ eCuGY嫙~ K;C|N J DA!V8N^z1XXوyl׈|jwLar߷, M º/6?mX(f={m2L+̅AoppXym'=YPY.wj$ ,`3< daѹf GiuDKTky0#zXhpƪ-n97})s+3[YnFnY.Ht35! Kkv{M|`NX o$nMk(}+MR0[֯ 69htt?# g|} ɀhQD/AIl (K8XZ=ޣKȏ9UW;7rS/}poc^qIkB2yp}E[u+ 7k|E^~c,WN2& utYb4p'ΝZ"͇ Ţl=E {k|%6ns7yD:}0-ՙ؄LvCQZ0؂2 hZFǔ󻛆'AhEG@Vw^$ғw8*}E PMAy)s7ūplXI3SzZ`Vs6M]ĥK$?C'S{FQD[_)KoP^iN1E#|$WD lҌ|A&\U9> Ipmcÿ( Z̈́lPYLD4Ɵ-c:pKy?]̥|T [*'+÷_ˑW`룻r,Kz_r7uw3ZqVS6\>.>{ f)TG(-S&.1K p#e K<97Em2[wAX*PN!0pF+i:rϟ'_`OB'AΆd@X۵iW@mv"&&sI)UZyʪ>_U2qc\~ز(1#jICq1XMbNfC9qq |OoH#4oNϱ!H0NXz Ezn5o{̒hٯUB(#,lKP7hgop'\|_HPb+.Tu-k4ʎA ByDo0`qq-C:HC2y̏`5 Ax?slO \AM=_d ikvzu(KDP|"| =SR'*-TϋKB璖lj5Rt/x&HډX^Z ċ%`B$cLD] [h24rmp/zb[`oLՕ'MOi),(9P&i}dXРĕEdcy,#UvS;5`Dw>ph`DV?斏#i/Ғ1S#Y!ĺ2kMcd_yTJ6>̴w %G@vejz'#)՟ frʸt.\d)/QyAQXukI6! IX`1S#DN (1L"4bf-%8a$e^]Ӂcv V~@,6_4^:kEb7sX aR /J W8x֍o~]%r~wh V&#]$Ў>jEvRD/!Uh - gˣ 9aa_P73&!-})Rh Ԥ) l\Y*(BHSeOtll#x)V3pͯIт;0@5簵zkl'iԯc C=(!$qyߣH_z{}[#$ MExt< n)ϲɖM{EUpQrBi?:pH'Y8NVXO'יh_#w1'1;}d3F[FS8iɥV#uBk>1^0Vaw OBaD1cpgr@ EËo8 6\ <pLOla-P)@]q+$Oo ?_Mȃ%|[CœIVյG?x<,l\"LAkOc))|Qq([JmP^pH>KI߁䳫X#+!a'ɂPcaQ꥖>74WCgA[<A.k-*>INd7`N柖ktJp :T!:FEߎ_ +V{YXRa>I@濧 xu<6L-1aGݐA[~7E.`)WOM*w"8@w>z|6 e4[⮣^q $!Q?y + ^Ii3w՜a$ruV|ʙt;ow<޶.SRrxautu;U'P2K!ِj{42C5IӱT[YLo+/Pe~AzcC\ vUbu@(ԮZ*-CԦ]2YKV>M0t^0akL#`` 72J%!<+(xF-Px|>P=^+ y&Iea$y|J3:x'z"\ծP=m+E٪1udb.ڑhM -5+rm riLTpPD O1ϑb[]t.n(7z^jഀrS_iLU!{W}t ;/ @9L:}g捒&3;9!L9US\'MۂX:T󫽥+ON TrA29#r-^v.RQ & "jxB&F(܅cW3 Fu\sc4XKƥO;!j\HOD!Ӂ1`BlYŊM?oxr~Za chQcVlXx CP L~ԉ>i:v 5͹֛3j kz%ɚ'b!NrXvr>1| !d'W u1`mӆa%Jxq5+[i.V/twI:F!+:! {g/h"˛[ӿm^wTȤ_ z.<;gC~ rmJj#AT6gJ !ɵ 嶒k D~*G:g;xgx9u!@@z¥-K=G`( z1ۄumRdЦyU>Hs}[gib g3ټv F&ܭ_-K92h>C (Js]>5 *7@CђҡEgTMH)o!z>lsΰ?q;/XAd s3]/w}V`М X2`|ܾj:-{pR\CiZ`J_-GSZk9mUw\&^vi J}ד#\5V>[1̶ۿRx}ThͮI c9v qx76Gd]AOA똁m3=!ATƧ-=E|C`I28gcW?ʸ7Iq|f/;1a.W<@Ң:HpflUm-5P+Xzmc$25ǥ(a)#XoAGo+=w%>#4-B'W̮^jQ.v6<&uJ+4f2 s7DsskG D47v^yS^)ʿ}$\ Th >Z;ǶCC Om5Tv7RG6)Őzn4f&zQ6C?v JM_0 EBū}yvp ã x* d'!J$I4 U= MZ͹1m;|O.Ҥ8O I3+}>эwH+B]?*fT')DJ;t8s,*Ku{S撰AnhHu.i JùF<ψM|Jt7l9ǵ%|,j$^_WX$C EKё"\8,='C0͛X8'{&F,aP[B[&em]{$Sֺ0׼d(2?Bm\g{4߉̎nH2 8Ҕ7MKOx˾0YC0K4ڰ!QmB6~9J7wt߶=V :.2 s}~acYv>qa< l8 =Qe/xfݳO@ЍqF7zyL&vM`J J MT܋9ulpW9~@$׽@=~z3~G˂޿ RVYV1)4' Y,K#3cUdG?w^gB1Xp?]-lfY!U?{V5&{HLn~PyD~uY馢0@[ 1*V؊6:$g֭V+( Zɹۺd ;rQK:%}qӸc {ѠY4I/d@x11HE6qn &[J ԩ5$;l& q'e>V'Fs@pd)~Y {J$;iC!C蟏0S׫#֜tuju.i x}*Kݪ24FQ[?@aLgT]=z }ӸH0UG2l}XuGŸmqtb%:LR;g+SG)N"K:L/7 ӘP{jm rnBIH W.ƒm&2y/{VdD{*p\S8> oNּ:Q'aش?gte~WJ()E\pRaf7b$XQ#9YiCE/p I1mJW=@qZ6к>*t@i5/}6X Rܝ'^Z,r1*JwTɚI~珔ۍ FG?+pK↥[nV0Xd<ȶ%qUhŞXc~i֓[~LF]}y:YHuw8G{UX=zwT8I)J<= s_q5ijO)0*V]Z>h ]w`$h3{h\$÷KtEӬ]c)'ѩRr(rr;t߁ޗGRiGTg%4p)aD]g|Ĺ庭覉[5P,N*\1jw;SHnt`u+,겁'eUr%!= g/WޣZ!ԚAu2y* )@hl;΢17E_ \6wIiJcgÁ}fM()"`?nhr>.i Cń,5/VE0Mܫ)kd4GQ\Lŷ0y+B׮L*+, -oݗ|u8C}_nU5mHV~ZAh^hB9N&:PȞF [Bns]9r=Y선ef%!V#IimZj5/uԋX׍`%+pjTiUþ'4X$m3K@A'#ؚ[ 7v,8@p̻|V`.=z|o)Xpr2X-AL^?eua^S KD':/j@ cc˰α>ړś3s0\ VQ1? r{re)"Eria Cyrd$ˆǜTi)Hr%Q˲0#Y`\v -[\$A^wr^,)_Eߵ#OQ(2=S95BACfo)H+%|  ~\Zoɔ_uֳrjɅM]"Wb"N[|# -I [A<ᣌq~6<لc#i17zC)SeL%M.P9)5v-%$+\P3Ƕg0U#~2|1e_!rφqP-fPU淴@ 0T0˓k!=+4%MsK%S/}&T,% R юQGe-T^Bs29kgo,8mxcRfÛVng=%AUDdxBHqz *IMe]6i+J:G!%[0ô9|3C>y䋃jO]rvKX2ߥxي ],#weBtA#=RRuI{-7:y?ƈ]̓60SHOJ naVDa#Z|\ \cS@tΖ{Z0h >t`ܓ@oJ8zt|έ20\׼/&ŨgweyBeN0jL0QҠ}>w)C;ܙ\k<6~=SeaܐWܐGsBR?Ս@Ӝ?; W65+=m][t,PPcu9 TR?:ę/#jBej,''93fXP٩bs+ (2r~@xjvX|&yA/55PzOP(}+g7 G'lRΑ6^;MMç/\ho;+ djY9^4>{|5Pz_&[|E Fu8>ͥt>{JNw1pxasM$c"?{'+|hKBhSN^#PԎilO@ÀKW&{ܛ}/-Х [pLzxD<;(^m "z& zÛ# H]>Ɖ<.#klgyUP6.UHyvb3ud1i@f5#hu(G.ʹ[QwKL cM rV(t0lɁ 2څ|k>SOX[:H0a" ;/?{䞂qa`?guӌcv=I0˕n%'q~#C8:.nAO.::u1, N*0aD b vwк 5\d":8`(i9o,T:>qxc1`;IL!\|}IP7fPpcJ UR_hAW%Y }2/ N stEdcc:: !Kc5I zgjVLh&r]_LY-oj5 =RgD +>x D:JB5sG xUm6$78Jɷ7H#꭮"(q+Tٗ~j+:9FpN* tv`<7*X>>9 ,*;"GgCnBњi irNϊoP~O;LGj2 \K>ӗ8ʲd qTR W_(5 O$.!VOfk 5 oFʄgL YPgyryiv sð~fJryf[rHnC)yK#ۼ'M-eQ#t%c!a d-,'h|ٹ`B5Y u䍬_S/[mN:F[_PZc)?ƏfbINƕM>nz )ࢥ$s9M%9 OZc?Hd da}@GVJ@u0=<60)?q}s})D~|rKv#3&f1t? qW dT\ǎj({=s"D0KК?AvˍCeo0޴2KdD96pi"5lఃHrݤDjrDRѿT4\ggPbk\4,z-F&tO x9WdxS\b{Hlrգz1nkBpknGO1um3E}fZ3^0'=fZ H9EL B[0ӔW D6e؂Ѹm<đ l\/I`zQǶex+P/YS٠Ag`iIujݓ{~KND|60`ػCf_s3_X3EG6lyRN{UwAgYҪ Vq`O,rF.V nxSS::DK[hz& e=}ixIX y~=q1K@ (Ѩ49y񋄴CGJ/nzΞ.sz6jկ.i0@.Ii/Z zG9}/J% He o^ jk/FOG)7 sU5 utnI׃3le|wVrl78}4LmO XZRkv oR8cIK~;r~_VNXgM T1'zӮ%_Cko"K#nz{v$ "Z3bMMFGzxc4?o?ئw0i.ܠ\/#\2JiO4 cZWjK*)8rAӽ(:(Ņ-4PpRE_!~1&O֫p5`*ӫ٦$Ѱ/Z%s <,*c3ݠ t7\̽$Tw̛`IhM.'  ?/K\W.~ 쌂D fS ]o!ͭllii,F  XX^VF1hzJU|d/D9U3vPO}B#Vqlݏ•V`{n.ˠy2 TsfQmf5<6Γ+xS;}10r$X6}(_dTzk>oELj6ۋi``9i>%b/`r@I.fsFu*II5x%xwF{5tסoZY e7ͱAW $OZO@ KGo!˧L2ϋo9%^5_=Ybk8ERڹ)-8qlf btg^PEͷx%Q}a$O_Kv._|X6܇o : 6g<5 <؄JYo*aP]#H-qXİD \AeoO `l<܌2Z _fO}Wԑ܋)֕jRG9 3 Ʌ?Tdn1_fn9+}#m>XrK9IR׷7Wn~wߒun`?<1ȅwΊJљnMUJkMC\>Rh.nnHߤuFcW`_-"]бֹ?Л?Fݗɟ^,rV:x0R:Xc[Ψ{)g LG2T֧i9CpQT,E \h6W( OPޠ^Q8b\Jhz~85 _7!A)[[ k+j{ĻB;J0q+fS?(Eؐoxқ@ %A?6EC󓐬}t,Wh0]͠jM6R'ɗSc|e}Nոִ@0DfƩDw1Ԃ~|"b)4x e)sLDds!wl ںoJ-oNSƖI!kUkc$і6sTt\FU4k4fER觅l ,/<}>m58bfES[ Wu V$Գ& NZH'/^!&5 *= gH@fHR}qMI YˁZ^͏Ӯ| Ia tS9~]AM΅VՐ[tON F'W[kw.e.} Q.R䚍*9Y!dda4TP/uDG{r4r7v(r9 1?/]V|ü1\IEܔ?2~aM||ׄ|e9I_"m̲Q`Mnfcvh#n/рѧXؕٮDM+ǟ<J .ȕDs!VӳO J0eUHBE!(1&Y2C!( G_^wua7\V :G]>[BL)n2__]ÑUtgھ:Ȣ^TY谨1(2xOҤ_ {![g> Ӱ[;-d=zmi6\iӍ C;T`XEEտ!&O/Q ewp54甯 ͂1 ġXK,]lY1WqmYcblͽW (q'@ u$J,G{fʰeA.=gJ%$<=hW`pSK㘞̴2.6`F*;)0W( {Np}kvp{3Gf(-UhM)ȸ=pZ}N܄{䁵.+<aeҟñ QJ=>_J&0h#1/1.fPԁ(u]*»;) qn"*

xtE-Sd/aԙ=֧Z` *0MnY] R3FA2@M@"@j;33X6OVL/KrYq3rf j zz B M3^Zf? dK2,:9H4]KE^h@jlxe)^Tm0[ *<$Gq,UՖ}i1>L 'ɋ! }]!˚G5T^Iku\2Po%{VJ]D0i[01tS+4 ?,>̉ ns3̨צY@ɣ_F:tK[7n 4:7r9w6/P)W-+r Ymk6i9Kf #٬๢odȮDowZx%帧!%ZŌ5"kT+46iP6Gpanp_hxctqv[8rǻb?>6JdڊM+S!C$Rc'<>I+}-1ug٨,0+v/S0s~Dz*pf܁(뒎%9i)pkDo&9WūHm( q+Vç1j͓^w'2'Mbqo2̧$ii=4s"lX۬:-Eō6@ϙD `Ֆ}4 2$>P.1EQr5  +ʪ >Ӄi\@XeN\j!cqՀ7[ITX.T_!R P,n{ܸm_|XC1fqv=De"\iJ^Ldf;ju4S:]YH9 +ؓzy_PXx^#8n_^YP.vſʗuSopYP>wl"Y]R,B ʃKnV9~gap5BK\Ya> ރdɮ}H %^ QyOl8+$~ j hˬ2DK})1z>ق^Qy }s)|| I{fPT) i[#4F:Z=xf|FO."}*I̸y߁^*,H@ uY,za ?='d {?ǽ5!,*bpJyQjJrzO rA];OH((+򯦠Ľ7fg*pk&§[(5`@p8y De'~2P: *-:t!5"Ε>af[ Y^BVo~{-#x4p~He9 h*G~s62sTn*+hw+T匬ͨ&6ۅ`$]SgaiKtFS~ާЦ>3՗+>\А:N_FӯA)owJf~ z_ld:c7Km-+~6X- ,Rc.EQᐏz}03xh``dNA269|%í +²@$b{JѬ K eyHN]_$`@4X!/fw"AnG뱰xdfA`}z~D©/\u՗(Q Ă­&E >>NNұ0j0Uv!/B0/|Y8,R4O{ND /I|Ql,$htLDCen~#!* ՒZ._ NI 蜦1ȹ/$l!b9gerOR,*b~Xw5dwHC:+νЮ\y:OB*+"]fw=LI\&NRɾ$QcӍ\j5+x;ZtŌO>Tl`_, a~GBNkn\,trG ~k1T#g'X'+6xYX%ƣlɔl$cA4xptK=]%X Ai:dHOeqaÄ.2#'FeBLe:1>]WT ,.FMU訞,Tj^`3Ĺ3 ) L& K[3VHdmy<Wsd&(\O&m%}y^$k 7 v,Y*\(+!&;IFTҖ^ױ5"[2r&Dpq>'' H*2|A`ȥoQ"y\1kI|^f'].Lx%̗ vqma\%CZsr-P?ɖ^IjZj0 5PEE$%eq.瞖3ZbOOP*dh֒-[ CnCJLp]+/=?l̈́hi53Ă ׆YmANR/ .180`di鬖&q.x,eQusgl|8SxbOGY[s\6fw‘qȇwbc A[cXAks XX "dF̕Iwl2Dp 'g!%Iګx,[QR0r ni_',d89lS׸BhmOi0PDpO 2J ĖN*`u*׵BƜfs^egN gΗ6XmJ"SxyWam^x-jq?~{֝_*tTas֭F4I AD昱ɗ'Qwى@$bޭs̜kިZ{`"b[[-[WTM&n^u;K.T&QT$Ǖ dNḲO~1󗖕*{.@8 %~`>WDnNѣC.'.`p0ՅTOED`(J9D߫L޶-t2? -}/$Z@ =zҮgm|Wm A`mN7Q6^Cx^ƫۦkw<δDvL=,E"Rk=m] ZD93 A4#ePC'~pݣDQ=0&c $ tN^k"Dү0Y>(M! fq?5!ϲRp2|@Q UC RS_f(3 (Jw%5RRؖfҧY)",p)IK5w䏭mZUe;QoiEҕF=.{HXdX(eSH,Ev3:k PNP5NՕ2sewpxm:=9gr<-P9|PIfQw Y;k=KDPE+pQj;z;(qGmhdn C׮0io$lySQ_gҀ·S}R~kVvԸ&$[j~ۄJ|2Ŏ&I+: F((8%޽57)k8R,b@]ϐW!_'SPs8#Ƈ^*X(ʟcĘ-$;Jq&.eAHfwr7w`H -Dz]8_Hg󯚳;?ْ/2ۏJt)x7\(@w+Y`;.9t֭|,qbgŻ}%^XHowCN aITmC.8'[%};wL:ɟbˤB-at+w?QcD+#]wrG\9 F u0`x6V0|8V\C9M7Yo§aHTrLT(m"5ZʹFբxU|$ irg~ j# pD (ܕ-io 5%z 3~I!SBݓ*J0nX?|Y'"y U|#4nBlӘb}pˇ 䱹rJ~pim>V x)FCav SdMa(P,7☁"WabxpܩAW1Ntu`0P=? 5sn1Uyːcd{.hggq&V)G4RuYO:߯/y,:8 40y_$ޞwoƅ\ FS'!)" /WJ?*}Dɨ$ ie/QwKI[AnCwqzEK3/5'TEYA.X%s^d\z|qyَE<|l|ؽRR;cZDVųG^GceMݻ\-9T- 'S "lHd6F93ɲO, hsM EMYf̿jAG ݐ"JEo%qzFI~WJ[ w:Vl^r\,`~FϯVJ6hjyoCD~ak7`n| d3M;M_y+@Y㳽e3^!cP|xN何B"@1V[*t_(ym4{yWQH4cI+87`N6!'HuS^^*! hv9 ~U)īEfP(: aEЌqghF@ p <=z+4S(خyF, pաLӲ&elWk@a>W=ֵ䯞xTu#\2L^騒t^p5.6l-[gr׺fB%c)G"k <&P$=s~'9h`0ȚܒDXoZ*t ʇ2XOx͖w 7噉vm|p;=rP XEe<2a@KJсZhKLGSKrQ *1l{T빾<."+Ee/͵OT8i=ܟT/5ԴB2W?hͬ+wDqxҹ#[0+V7`[[LGoag5HTq -&m=}~׻^nF v'qI!vS px>ȃ`u3kS#>yntjwƸo0c;#o.$vH)\_]=1S=&xGCqĆ̑-M[EcJwo YX||x@M̷Nq_\S톸/5WRh>{6>$ N[\$\\p/%.K!K1(t=ԊkfJޫg8=>jopL.)ݰ_NWt~Jn@qB zK`cQh+GwrHb٥FYgG?o5j=_w]}g*]APa'^M"trKbR?sz$98ElZbN 'jQ کrD["$ uU5ۉo [wJgQTE${vߜȸ>Ja\ҼhpCtJ4?'ķq'ލAje k\F`qjֿd.׈gqaN¦~%_s$2zp3I^e!bQ9+zC;sYgb5q׿n0/ksXYsBC$x8 KU/66j=kx.4^YSf+ƣ7c2zDʧ tZ+qw "ّrZ̆#3#(B{Qg9Џgigo s1', )J_k=WQN KKu4sn`w7YUoڐ6XxT .| daNC*vT=޿nHQTxxrO|pVs%W_VG0bvŊҗWK6-_ NqsS 836ӊǹY',sZ@!o04[qHRGDfA5y:~B8KS)%BE6Oppk!TgvLB|U/u ^C421ޗ[?Am.(?t|ўQ+aHYpݤel SeFJ1ڼ%Y ʛ{0Ny5{ 2Fg/HU>W1w~a"A]끸 7s5ʋpChtBMoL > nˣtN*.gdңduۛx0XMؑ(]߶BNRv:B50 ,вߕΡ1A}e[Z9e0Uc7b{^]%]hgK ^p?&I?q'2OtC,iIJ!dx;咆|n;X?Z_҈=*?%Q. "ŏW'9 eI ϝM'ܐȱ|F_f%G01=W-74xD47'#`WKGnS_qsJJ$w㺑14 ؚ Js E47^Jl׉P0`JH3j,jޫjޕ%7I9ˏ͞=pB ͟I œoO"R=d= 7[% riGm G{3iW{8<| >рp."2JrMd+Qfj2jLe=E/ 0FIB=hORyj7YCqܻ&[ %]榭O3d>[iGr'T%VvlsYP4<ˀyO-ل^Y.޴u,o3 u,b4=QV+*^c`ю ǡ <ZF\/ shIKa|cdQ]F|^李_A9P:pMOD䱐jd7}BoRzfQ#F/e"B]bP`g6X w6Q;~%f\=DQĹDHC``X~%+W옭z ?呈;-P׵Ъ,L-zY<[c6ݐ4G ix a[V&\ n [?&F|7s2G#=7!g6]]Ƃݼb+&*0˫\>C9*q(3nX?fˋ!:ncw_Ya6:9 `4,%ZQfYȔ_n9{0&7oQ@m\4c3LX }mʑW:<@ͽ=\&QSBAŗ-Y@Rj=)a`~flH<#υTJ+&DRYm JVͳb Y=_Oȵ FzYx@fĽ]}<=:@A}Olp@ItʓuWW1|Hy0*dI&6d:^):Jz%l-W6\WU\;Zgr/sB0cb2Ȃ4,l׺}HSc n_BzLjFj@c*t [\y$Ʉ)0LXM3VYV|SmH /NlPiMx(-(](Rh*AK+S($n+85 T"ٿ}1S4Jc1N Mvf'n/uoʹ,$rLUaף!TVkg쩛x[bi8׳O)gI<ӕQF- PO ٌѼChk%Nz9. hUHkRx[yf[-({*m KnFW/R*I+DT" oBR[p4%qKg]"ɏ}>I)s6jh'h)F=MэA t~ -%tpK/uC[bpdi.p@JC8W"ū@DD#1(NdC(oIjz>`raP-0ũŘtؼeͩz*WheNN Ɂr̐ee_ ),s3?7"'̿Bm=Tw|i |[vIAtV3|%,/|1p2l $)sL':*]{ mӳׅ/bvY۲8/E)T_zɆ_;y{?[) !=gk667ׅਅ \%7afrIe:`&9S5^׃9J&L{rAÄPho;=ޚZAjCDxD[?QpyH0r'x"$%%ͣKop*ʡLأIRe$!0pGo?o{dh C:os*XD] &9#xFS5X])i/tyiEΉ_&!؃MØb!_8bz(K#Ee9GVµݫA҇0 ȅ 8,oYzYbb`ߚ )G5WB|GE!DIhqG\oY6}EZ~ësxPe\]}6NE) w"+/y39^lOQ#(A>{l2a%봝G:Tf( dTF^%\*(`>ga6\ݻ}4Ye3Tjg(#Խh2Q G_\|ר\ƑfH.)|&mD20H=kl©B30*P&ڑ-qTM'_ے!UF" (!c!{H.&ZgtMJ[Ӗ}Co.哽8 X~5+!)o/ 2( Κ;l6M9~R {,)qNt Y%^ȅ $G*d'L ǚ͈cjgbFѰ_m F ċ bL}>߀ ԍې^] WrZ15Q3R8OuK 0i6o HmLd;=q*aqBP>t8c j2vFf2cSG*!.,# |؍>AYn?tBʔf聃ІRW4[wzۍ{_1;c1z+W 9#]`=PRSwN:ssl&0 A@doԿ=%<ͥէr&,-{l" CC2!F) KNR?:a]4rV8&h۾ho"h)&O!dl?-r}Tcjx=U??pL]!Z%ghD3XۍjޟĔr|M!Qj2i!2Ö{iJ7hV#ȥ*)87\FuGXC| AG֦pi I1hʾ&:bl8orxZChbVSlcт2<0W{t6~.FoHͭHk:bQL)i{k%$ZPt68(Ź 2C ( N~ ŝ(sQqI1RKߩ3PW53,wƾWWGfVjdp&=8zŷE[r$S8c (zP+x4W:#-?kxC!YdW$yy}TǼe#+BSNd"=M K,{erg)im>:(u2 FsT;u^gsQOj` OI]TMsf55I6:Mq힖JFF3ye^֒lPFZaps>{1DR F͈lzVfwq~^( ,w:_JzI0?+Ipؘl"1ɢ7?I"EY$Ð ˥ݩnCJ+̴< sYUdj`)lEH]"`{iz/qcibɢ hx韟,͑U5&G}AuCQ>lxlXǢN).Kkss)tz WF7VlL.eTl2ُ+d1q*ͥH5iSrLi]acs/nJђt(LS": Bz ێXtn3+衈 ХZ/PmB?/G{te’Mx7B4<2˼ĉ\&[fSF-ё^fӞy{闍% aUWFQ"F_/,٩ |oWCW~zFar͖颢#/f;Ŕ֯ 1M s˯`4b폓#=$ >f~\6q4[mDf1<8|ǵyJG8 bB3hפS{֏4n,hMhAnp\~ ed\^XVj"|R3;ծo NJj6N~#cwKPn]1#뉦ۜy[45_Ct|$&\y9E)GDiRy\rNb $#$F|*}U>a=^qoM/ <ŚwOqlj=-[8e&u @R7s(CF ݑba$<{:06"&qq= oW -lvX(C$I,SB]ԑm5<jH^CR /6YM_]L*D„s29mURl}hx=xxC!XǁUkk/Rۚp{vρ i;WGmbN-~;fЊkީ@boFcθ}ৰHA˾|)ԇ~ ٳ/#uv#3F1`PJtZI?? 2s H~t-Dxk!HH*d(}0˷'1N-["m 9/G{U9K|5ClX8@>36шoD)6k0zaWKҩ(n@ΥԪ v> !3 -$d%Jr.sdM{b.*9wf'^_ۊFʼny&rï)U?!>ʘ[^Z0n.@&3ʌtK]$}E+Gnh~5Y]Y򁢟kA1[!/+# dy;sC#:qb/sȯR `>Wl%U4Wz x:L+Sqz O$!vǹ.MrčTR̀S|P"nI(4cKkc$@WJAs$Σ~1pbck~$13o++D}s&*# LDŽsܵluNCc g ## TO?"U' S"CHvr4<ؤh/2'C|9mF@ɘ&2||;s/ X);>ƭtAv_!T\kXG ѥ9!4` Ls3yilj] Q68bѼ`CYSwDB3Ѡ5Qb,2i zs;5~ɿf6x 0O㰢iakǀ1"o#g Gahҙch=1? <7oД7rT"_DW/KХ7A>4 kgmS|Wvjk ~K^ü؉D4{Vʢ[4paYn -r , Ա XI"*%n3瓞~2BO)Vgʫu BFI%e<13 ރ"VeؕGRYY lu|}y }!"0MvvuG$S*DK XH5@ҠSּ$IIQtG>ȣ_ ykIQo\<6ڷp#sN!XS`57!]!1ߘ z.Q uA,J:;aZC)9 3<͔8wB>gKV$zwtMbd/4fw>KL[tLK-2Vu !fA|*=6Rx鷏Nٺ2A';gb(DtP 22UF-ܧđiBx,@~A]TR?b}ת.KHAaY7 _y'͗c1INƏ<$ay*>-%V}rjw#>-6~'Wũ|`a(@f1vj *a:48FgJ5D7夥37'0OׇKj860Fo wui#HN2VJ;l%^9KG&ܑ. 8MZ,o[gh+:2%I lqE!h Pbmx+2KB^ұw߭wE !uGB%쪥7>}tX@k OOhQr@]_#e+~O]e6iNնM%< C)˞|!n, 5L| 9]tb9Uѥ&Ѳiѩ W*C\G`?zOt1CJ3m4$=UYL5˓g_1V:$r=cgLXC[_QZm9G*.>(_/10-e_k3bԍͪQ: E u,^P4#t2Z؍>jO|%%a^\IZf\ CJ|7UǷO8Rn ["Ϻ5>/,"B]psUD<+ :>{v7S'/)$iK+#kVoo0r:_Tq .﵃_$!u׿Ho:P#'1P-a4K _ci$( 8 Q@"U@KW 2}KpkH]rv T ;(J?ymxGvGFEs٧]Gؔl 2NЏ$Ϙugc`!v:m[qUۀuuĆQ@[gVtzu'`j 3*DYfN9 |+Y ?moTC-JN.1Ը=Y36 ]8DүJ+h=Jn]NZ3ɴ itdv8J5jZQ42τ/ :)-c#F? -Qx'd ܒV\_= bGBM~x J z*06-zW殷zO R!жƙх+TH 4я#î_;[Ԗ/)EW?Z8M_l PrjA:teJK'#S)F.`yhD@'ʲ0VONōۓ K.H5OLy¤ *w # e3!hTmCF53( &bï5x`c.HsW kLD^-^&>0j2)so`wl@>މ s#>QcZ*w["%AoԸJWjf m{t#K3ӓR~t{U>, nO_ԆuX^nf4=9q ٻ xU|dND-r]^ j-]pxcG3zj 2P1K 2Mٽ;:i:ԕl(AZ0Iy@wH3pn+Ȓ{u¾j[ל?i橡-2gO{].^5 ?":6ˆ/\"w+cAm=oEI56$2lLEPT(yHw% zpBCE4yk~~k2lrD%YuP,?>YM7^ 3KrCi4rIO҅Iw62ZMzw5V~_` nQayt+} 2av)|qNѝF&юs6͘>M}A7!s*9 (pD>H$m! OV8d3$Lbt$FLD$B+, C*xJ8NTWvq7ö#f\q)>ύs*/)0Ke::J,?:A_Fh5t6J,yPLR"jZ K|0T^e^*[P?őjcՏgއsr#7{wiH>Jڽ=9DNNlB+H};HdvIrT71dٝ+8'ϤGL&W0l̔fM i ul̙0^zD4<7*A{dT~.xT= gQBM6Ǖ=yۉM.K2p<ڵhO{%tIRL@ĨЮ y?W^žg[EUz:?R)7.2z]w1LXO]fH}4bdsJ}_x x:9.b_ڽL@ 9m2c]FE?4|<ޤe!vKIufYJPH2?ryŶT#9${Ml_ϚzӮqƸm ʹ&K/Qaz3Xui R{9]aK54":#q1?Zcߤv]?I*K(w]@2.YpU^ kI2N58_ `\yb3z Z]y2-% AjV!B/t q軑?UJ@[Ke\q&>.ۤ5e`Г'Bo'DŽ(FBu\^8BA=2Y)DxV|*;r(jIݜ5B =q@`jAr,(b%x~fb3HqӧAQtsQ1oѨxu8,f[Br-i<dz%}29: % U<%@6\ [5NLy9 hFqH@}F4/`VJͧunX k}4BHr3ONԎFي9XHv%n?t\~'! L`4k;>؂+^mGԺ(*nt಩1 r?> xh >&Fvٻw*>nQRUcU^r6jM|oQvݭF(¼L?az/ojfƓ/~+~umpD_+FC7ST}z F\`ZFW0LQ|:a"O;AWzF"ZsWuȐ(:soZYΏ*.* W'z>1$K4Odb)QT#)1 $f@?:.wLjh;eͼ판 kWYMddK+rpg~Ndi ,E^ر1OG8= f3OG)0‰0؜"wŞyI:WЄq>x+2:M?PVs|YD84y"+cOvq]|:ͱQeXX9֜M ;@%$ roVy8>Bn`igVw]| !Jb,o˥1͌ep}WePVӣ^2ϧ^~EMrEgZ JPR(cހK; bu@y )Xf%LReY$Hmp{h4FIX]lK݊QL' yA%Rx1XM4CLc|xLQTH8OՄ!Jxy6pvIHŭm=&ֈ!> ,'5C>;}̏0L062 fB;F뀱!50L0fl6[BVh'_㲛Px:$5Ds1⪚ԓ'I휉(ҍ:5YcJ9>M܎hu⍜?r(V'YH xL;/P+jqzq^v}u<ۃ *ЂTHz/2 :g( }v+-bOG@ *߶J֜`L zI$x鎨2٫o/`yrmoMUu0B8[sTb;>`fBx鋋mF^~q4DU76[8]b3Df%J$ %K {:qs*Iy0TJK2GKΛ0*|#X4KszE'ޔChb1A~,% !j;u5̞,6%6“ }R䥟aBߦ aE(R$q;R-U%O >d&cZy4wڜ,.LLF, >RjUH jZ5-f Pɢ!<kL={Y1l]O:ץBlQmws_ O rd-gwDPrZla'/K=54q7S'I1(7ī8)u"INjUDbO g*W0΃a_:p5q\(+].$DITS62ZҹHLU\+gfmV4!$ S,Zߺ)1_otMK׆LN?S\:2q(XYĹ kt=ZO|7VuIl,D>}vb:%EySZ`*h~E(1&4o;kIy/~_fOE4zjyP4APRVtQۜv mu V͠tX1b&n8u\^W@$O=psgPH{!cA6E:7yt;)Hu#Hq.r) NA{8HBh~T?%'ut 2kcb9K nﲇ|2E-V ?r,+߷gR.[Aaf`f 'jڸƲ2%uIR$;Z ƅNG'0LG=2x ۠п'1+UhЪ{LR< &_ޞQ66 9%x\Y=|4YMBQ'nlGÔ5.-Su& \ )FI0Ú h 5H9w;.Jg3erRj(>h^0/OӐq/bn!/KvZ G UKQx!Ĩn C RrQ)_JOYM+^1.!B)=Rs#j \Hb|өWpnǡ(l]Q25T[ R|,mw5=/;9qM`º4 ~ .-u1ѯ;ԊLܐ4",pt@*:@b̖;]qa~ھ2WKhHJ;Σ@Ihh2נoT` rE:)~WE l"LsF A5#{W\"Z #%o"T2G_RVkBlu_b4IL(@~zVtIo T`E"3e> ( p捪f)=j|[Lp;AWc葿Cef&ᄌݸ!oPDa9+āNY5gGV9^;)A"[{7*P!31w|F֭e@Df` sFZIxgȤl0OB4]-$ep 􆝕5E+aP]-|$$Jll Tφ ކTQ" m^0(vɫ  4J8nYU)ŶYBaEK:cxvl ݁~D]43:\O1GR^Ni/ig&!pO[}-FXQT)DND*R4a kEF9,rF՜ZU#l:}YE07wzuW("tzjtԯk (j\^Xf8-mwP%n0,;N3W-h =1^j Yښn ذ6fQoƧRRhl HEJ0~22,ѫEX瓠3˿y}T/ңl"#@ RM";u}7;b"@k;z,J˳gHTonCKZ~ҍP=uٰYx(&e)&X-~@]J?hK :EjDj6rg۳+!"#Nu#/w}p7@<8=DH+Vq3[O4wKCo:& i0Ay APAM1p@ml8c3c*äY?jd:^#zB+h*e#(Ԙ#'dO9e.ݜ͠m}58@bbqnS2p ^xfWOT}<9:g?o9=."5UM5zʞ Wz@I b 5e h{U^$)$*QTYτ7=kkoV֗KId` or^:w^&٭E>qQ=+kD13 *]!m7X 7 ~Je.V!ZnWfC& ݘvՂ*T0]CS- I![ ?GNc9/[2T &9E *P˥?(Kp iJB$mGAȮ 2u:rHhĭX`FO>[btTn#gswFU ,nLf4ڪ5q1n|!+/`6W>A#'0oAScMD z-?Mf7^%Rrr!k4!Kmw;ۚkAm,Kx 0C~@C? *QjMD 2+eS44/*m 1Δ-2(9UI؇T>c9f}4;STkt+^Nh5LD\%5t0ҋQd $RJؐlɿ*aWe.K`!hr.* &Ч*FZ< f׊oO?v5GTzTkLeO;3FALz9'bgt ?$ &Irj3W5-`%BbV|Ⱦ e_ԟ\{;9-psBΙLEY"yQ*?2D:3xW,:_S:F!&ULa!tMy:h)$,IT!JQbIK-^{ze].5c|MAGB|ֆLKcN<jhQڢ=5ԫ& LC8(P1J 7p54u6[`P6J3p0^49xGͩ*g ד36J|A4F/c|R0|gQY8J4:mJrX3Ey"!g?, ]"w!L`>48L7ZF<2N-/A+Ec}p_RZGٸwު4 qd7Z*6ӠޮAY i_M}L"[⬙TbSke i`Lb:Xև`#RDQ>jԩKB3b֫8CMDX6 `,HZq"ab'ݖ5:w飼}v=`W3&O@p_ dm=l Gw+kнj@vL5JgCjy>uNA4'hoo8.+`PWZ'{6SŸi|<  h hD) 0%0=ȏ6qXbvÐᦏ33.g֜i2s."Xs !U LLȷeZwﲍjEqyRͫҨ_R3[TYCGUtѠ]5ڣߟ8|-r $ fm N 0[_7V+Gۣy h ]>_7֢絜ʡ[cE=ԏ/t)tmw8[B b07.Ê \萤rw6NyqM$k* #p>,9o=PKI2nשfγw3,&>GKpÎإWOFLch Iا?+Xe;zSa}Agu8I}B@Itxַer-Q*ض{=A /I"Ғ;qĢD.2k>AaB#KפŰ0b1禿Ɇ!q2Fj?f:7%nH2>4Lxt憴^Xt?r>"-[.נVɿV8g _lImڊi\hF]dA(ԖG.")5bY(p=$NL56)Z|5}Y#Ep)§I0еuyH ;p"MJoD`^zg"fuMzp-Q#^3%YS%x_彊a+⃩d"F\ <B. /Yw$ M$^|I+pӏm0P3#3 4(=|=Xbc11RB@x/=#N{l'r q)w,^i-=WlzF+]wfBU.ѷ)r3@ :CRûex6v 'G] ~4%坃FDC2ILpg,󺞏MY!l#slU`Jt}FNjzgk޾8~^1+*엝pVNt0{StHv yQDox+AP t'y+oM'm#٪xb?g)Kj/Ś,\*;LLn?88!ԨfX~=L#yhWW L/CZA{t SAT_r0KzmyKK9cb,5[PdH7PԊ;uN <9ExSvT &27w{b?enͺ91*ȽO,mWg.uxn ,.gPi :7'p\uz 21ҳ+:&8 _Vtzg9 ml%V&*r/F >Fd68?29hHeZ >yn㝺~rK @݌%y{=Io*]^Ba Hv-~xfʘI0|o?JpB>U2Dכptiit'=I|/d qyy5!,|igQ4%ᑞaI}LSlz6|dl萂"}&ﷇ^"ӓSRtZ*>2.__Z*1-*t+Z *͛%- ,ˬ*EC4\+fjsY7ܕݺ2o{T,aE.$[(#c)Vytdf3oG3 z/5Jl"͒-T͡Xd"ͷ3M $cnM2*D:אI֔kH5}&n$n7} k&M]6{ZVyl,>ȜBvWl,b=ҫDxP){tF| `P`9UVƐuXeǗVr_6εWFyQނ"/T]"=fi4+&|FVV&u;;#ŠK]{х-YS $@} *ua9[,2 *qE6ʪ#<_PQZ_ <(IRVα]s™Κf$v"˧:!ш9 RׅElf@?F![¤{h ..u k ]-u>~&d}G.<Ɉ: M:2GTpL0Cu{d-祚QX=%nQ D&ZrF۰dbac!fQz]Fim̘ >zQ{"KK3/|}uk1R<v;]%&3M\#VNFg&ځ_AEƋ _yp&ޙ'7]go.,Α.݌0$̯4*_*!=GϢ)vAd*h/TŲH[sS ^&ԫo[Ly1_FDtzk ^oѽF\E+0mnC;qCA#퉉jmlU}>F+%gAWtkjG5\_mjTmk׏duNO CES :-y ï|Ww}tĖ9⾠ */yמyoY)CHL% ,dh WoA#Ff:p:7&~T끷kr(bnHi6zW 1$&Mt}qt,x͆ѕ{e5pQIx)U߹Fm@$Q̵Guo)Q&b{. UF,Byu)D謥bIEBڏ&̖ƒN!"Dl#u [莮~y e84=>Q{x֒OZ+]4SQ'aC85'v-b۹.XeD {5f~tEgw&{"[e~\gw] ]ڷO z'0v>H$ԫCȈ4u!}J$ rsa&B8;{XHЦ 67}6`  x[&:?5)M!c{_ۆcǶ{`7KS,Kl郇ubJ@sq&I}4~lf-{dMzD!ݖ|+i_7AƘQfNJhTœ A`?\AUK$!lGɕORNM4CPAqQ3u0a4H, G܅ՆUIl N*oI_MxHPLVON>h'(=@R]j Yx' K iٮb2,&h2޶Uki27~`ՔLImBi8OUrķJbD6M^Qm2aUclwA/b69 Qܜe~^RW°b0Ű WZ??CyTo]B/?z^s3 ݈\VuaLQRp:1'Hm` -N|yAvZ;-,AH4*nߌnI:PzlB| !^fS/7R`H6F2ȀZX<϶"`1&JM 9/ھʯFuS;EuH\(,CW @#L&3оzCî7SJc2vNuK߈ YPbMU)]&a"ys?! eG~х̦4~G__-]0戀vΛ5 )ҁKTfxgQFZo'Of ⪪ΣDgY^%MڇSrM`|)$VMd-] ֈ_hű|0Vq' ܍WW:JߣCߋ3 {m9gc[ WOXvcSLqȾE{ 7I<6 w]@xk#Gο4 ~6/*v6#(oM4Ɓvj r= %8o'LD0`eu5\6}Ck U{5ֻoiϙ›\ a>x]Jwfhuթo_cg&Yjl_C>̫g_%i ~Ǧގ86ؓAY0"׌B|QQ0x(/`t.PlOi+H E+^$rÙ[KCdqY|tBE,;hzG#|&y+Y0$"yŁM$XI#5_v0B<փ.MxE ꜦOWq5SI9d$s,m>e ktW t8w`{IrJ._xVznvzs0|SGۀ9R `I}aZ$n.rOy2s<6[vz\U$O`uߩh2)WJW4 %_Z,!ş|=W8f%~OixaF/ruAl"5PlzeOId*8v(E*p%F_9TVM=%A-[m' QfyWLqwJjaoBzRULC&4%ѓP 5x Vk\K'Ctہ?7&Wu0EXmvW8miFb΋:KAэ |¥]SYad#$A)kvK[UPHaɨ¯Sy`FdH^C*ݻUď}/zՀwcʤlG{G៙t_Mu9EM71uGy2mzZ!L8![4̱3~{ g&q_vy͒^;DziEubφ/.G2*/- l^RFOaRPYЃ0U gO@_*-SG>EFa{xq@5|S7&'Bh 9fϼ _y3X[q qe.3n= uS~pT8+ H6q B.|ٽ/MZA%BTuVhu%T5BF`Nc6 Mt^-4VuQ)Tz`ʡq1l(?XӽcϭAT8QOeX'Z4rn`-es?ȱg -,*4.# d- 6{$6ʽbgoN=b1=Vcesv5b@U! ji&n|NKVJlՕt໲C ~%05eذYmyR^QˆlmM+y !{.N]=@d/O|߰ JvhC̣ W 0H74ivdD{?[ɜ,m/ce<٩X!!:q<#t ]z/MؠfH25K "ؤ&d[{"EIs^Ba-oLS1:.{5HKڮKs2wL#Zr+.[#0Ði٤.WU@ Q!c8إS:F7H|(JUT7ar(u/!.'9u{Wh/S-9r~3f_ΠGUdc~۶1OQ?<ǁEEM/oMm.j3biE)އ) FoJʁ_mz=3U{##M4! 5y)cEf+Pu._z1!MS䓿D^ d8M?, ّlK8XiWGtΙiytz_g0f=UO@Լ7EgQ,h0**?פÅ.ҺXt/uMSOGco9f9=eQx_s=[~M03Fj.W ,_K/+/g )Eo(N8,^(6'~[1,:SorzyW۳,hh&maK|.A7cɾ|Ư!'2ИFK9/+KUk E]_1#ޤsJHƠ zڐ*T)D(~Sc§rcح?Nj5Cӝtk҂@[ŇRWrykA,&05g )y0ѰnTbF:^|W'GT .ꬽ>6|^? % ZO_0%[+*_l߁~ Fu5̩!jA`ΦLlޯn4gb88.ň96 Zr>_2 J2Nvg R'F.7>.@ޟ x66#2=!SQQa".*;uF\[u4nD#6wv?<+52D~y,X7`aWD;R)qlm>M_C  0٪1Jڙ`tLDY='V+>W?C:嘼UQ6뼏lU,.<TJS6ɩ* Hq"X3j=%c"fXC C`&Fר#N6'J$L_*ˍ}W)H%O u^tuzLX"1.+#2x#|佭foMIBb^x:V]Q;4R!J nuڕmׄAI_#=쌄жYp[35HTWn)/}6; #ESFe6'cexMy p}vz=y  \eGe3lpD7/No ]$,:}H{Rxg]YwAשFì|#^1${'#(ܽC;0Rn$ƽ8!l[\{ԕN&WJf[~0Xcx`#3br M,)ZXa^TE QmoC HE뙒ӤևOOU!ވG-$j'ffaMӫB4u֤<5'x\TIf1Q~4mF tfZ'JMљtRjF.#[8}zd ly/yB) MCK=e3t'ڃի-J$t."Ҋqg[m5"}1}}z!D-vѳKV:A/{2j+<ǷŖV`;.]zO%؈pP@b.<ۣĎІ@k2xOƜs֝Gˍ4džsB=:~J"aX78M%[F643Pcf&+1=Mw=Q #0a4ǖ2z>W\&C 1s튻m f¶ !Jܨ2p'n(h-=̳oV^j6E RV"MpD~KT~/̙ ;C4[~u88WVWm]`#E[ImY"T`JT|Ju_kK5] IY{1%Y /Yisuwv9 0á(/bJ$>HpXM%UG3 E٤C֚EyM"$ ̓9;F'띘eժ'dDXB jDB`Dp/ZwJ~ūO"d0ȤaBXMƞ׶quK-sQD>|s{d- iwuA E=QLBQhŴáѿbvd74GLC3['9|[jU[:kSq}>FBфKI5nn`a3G[F.W;opRer/Je7ȭ;o-3fre|SM7QH1ه P|ϮB3w6@fc/lV'rL&v4NΘHxb`$mGW3 g xA'D UkduBL_2%96 ]"aaWJ-j޸쾔Tas" WNlMlҥ4 bg-P}JLu77#ir{:Jt'0` Fy"9r^zP 2\\K \GA]3yI3_90p,Gxb-j" iC#y .`E5-99^tUw2:ahqwfL ZaceB$~W x}`. g΢jyDv5$Np[d!Gh8 ^ef6͢xw[Z T}:c^'gwE oQ2emuvvy%WxǞ3`l?6[<͊T&-zLvkB]0Аq:!k64GX&]ظ%Jf#rh:&Qj<10lYRu(u?րa<3 9YxrӠ4輧3j~56z?ŴCy ,@6Bf|*[~mȗw WJX#kKJ -3kLlmHh{8DI;QԾ+hwiT? :z{H_O=WRD i}lI#Vn'SL>6^+[y.D1VNw4U;+Pמ+Nm<4;Rxmi T5b2;wJ**7OR!3+| ò!hjkFG7:C?ۂYUJr"4u%z,KǸ倉닿K hDk>,9pٷӗ] $ X16ACK`(>+frw$fxi 7s_{ A\ZT*]X%oRW?zOk=񪭫=QUѪAadZoH^`qgϠ,uXu4D 9ɰK^ObE 7hL{@ɏXN '޲nJsSֳu?At#@4Rak\66p ^<Φ+^roɢ.i;V7ZQF2W#h/]NNW~F5X`,BA0>q,[f˦ĒHP=1Ȼiŕٕ#!0?t58I#M^.#0TVUVNlabL(*U+8#fF]mr\I.3~8"R|Ucxsr4F (Ox+ ^Bj~gهu"巷\d)o݆7610@-&>{T ̖R=C$"o[;Qoad&ZwjmMO euW*SLIܢy2} ͜S>޻)ڊ.Ayk/Ҟ$E{z?hD%u,]]|9mg6r܇/뒛e+bY_UNMtN*j+.wٌ\̙_ "ZvĘJVQl;P:)z,+)Cw'帐9GS7 _\)Db$ dП+̱(NHDbʳw/;;),)2rV#O6z[?ojvDĹ%5^o!A/nj$ h3R|(:ڧtNnRn[A3o b0RbAgu $IV$#7/%Z9F"%4owZ}BS M9;:G5ZEC#!qxX6eG:޻5f{ccDGcq4nNiI١<0Lx77gqˠW#!Spё[B,Xs!HҜ2maX&a:0;So )M)ي O9L&u4V~۲F֡:GL1X]H}SXjqƍA4)|f e82$XzzFG?azazx#̈6$y3Kku>HOl3 {#l81JMK/@,ƫTZ#BWk󛂗K PS hԈXus,6h}g x;,6[?Phoc.uuz̧BК gsЋH`nUYbق "桻dv?a:~^N$4HԜVv1qb.1&l[@uFK˧s{GflGG/CCn$WSfxN*2(9[~U^);GCdҢD #T40+râ$;FǨ)lK\$}犌dI"e' ';X' @QvH?<88{{J; /j=aCEjF~lU봁l'րq1HuQYKOYVWA>F [ղ"LSsf6UX#K)E<$ n$+~6%/kVdg[#Ndk8f{Sb~16TMܑyu y zu^X= ZǍEt٥ CW)O.A)ގ$]Ԗ釆f:BJc>OuS";y3Oo5Ao5 ջgص? Yx=*k`K]"i4:]j{̓@ {\O@@xD)& 揎Li鮤gyO\V s\1)W\extk9iJ ҘH_^͛:;dR/SkǚpGVTc\8_~U&( oy`I&idO!ہĨh :;Yjxp򴎻PB,\SסV<m_ك~pWR @ t>nKK~H`u%fe ]r޿~ִ=S]ʭQ6:g:6@œ++&^bE[I8s)#󏙢-LA:+';2. 3c~ V)2j `7c+Or"(W%% Q@q{&j9+N0g|tQP?_^*0F,צ/zȟTҞrl]ɞzG98%e$fA@޼cv;ĴX?eߢ7`b^Щ=4?LK.(af#{M`ɹ y3AA5YONMjz[8=T~#Nt:n!YWIpc#[DեsJ6ۗJ-X/zA8+Z;vN֥jU:Kp\щz8 oxm&CG~:i%Xn3T+ yݨW-qSSxmvrt:ѣE8șňZgU=='/ꢼ W'Z@OKv|{ys)idcȉk1ނPaJ?ѓYxX԰N9Q p!LsVD};t&$+cej&g#0@9Bsq $> m?^T?<3û0v^pD$z>(գө(Nl2 i=u`0y Uв'NBaoxvmEG#g mdu^SƋN_@ QO:r%;mnNڻZJ᧟z?Tj:*߼ "cYqGNEAzXadd7k?P ᦐf4͟/[EU2&KlHd{:; vP(Χ-p<ڦԚxV\*lC9#!ɍ'<tp ޯ͛mOiedžfG|kFo{\N)܉9e_Biz_/UX[ozA F(N6?ȿI=lj{,4NIK#XIO؞I%H%j]4PH`}amق3-єZ-f-qOdDK ~Q`?5I̺ UQ~l6b3Lؿ}:סAE$u d R u..| ,|wi8ᨏt}7W{PpFL/^SV~zTsF"u ý5~9u~} J8S0H3nW[=\$j"0drz N=ek)/s;DΖf'iXKڌ>mWjaዛ^KB&}|hF!S9R߉ 0vn}nɃ[glfwg˗](4 '^:SR5*V<s&&5 )((Pe#@[@\zވ_9׈y oݩzx@ )4y'.4i_r. ۈ=eJ0@>xI8 %;t8}Be@ONEǚsVٶ)%'D~*+ܦ=G7 k7U}1-zOl>{]Z]-O138)<Rwt*eE-欱(ɧ\:3ӳ@;´\ٟ҆Pw]P*ٙY&H!{Z?qQ6)o7?ZUӅ( ̗<>WP6ۑJqTUx*g.Hx6ڌ"QU´XrkXT)yyt wpP0}IS(3W,|~ކB\¤Wgl XR' Aت-` î-256"'uJܢ2B|* ˮ>bKmcf?Zx)X͠sc!q0%(ooL~UANg.^Q d*\8 zc#s Y h.\k^)k~ ;LD+ hiXj: C R-?gH&uq3 DV;㌼mk)k[&V+ ?ȠacX"k6.J] qS`HhWVA^K tmAK ƕ+1&S[9ofQXr `uJOx%g~`ss"P@Q\z@ķܔPr煖s* De%ZHvpd}EbLgoq=ہ#GCm(%"5Jm@KP!y|Ap $T͎*r="] B"T_b l \,2Ci7tGMӚ Vi%\w!b)y̟n!`Ba"k#AO%>,>i.T)jI*$4e78 f6cQyN= D&`P6ٍfh{[hD[ M}9XDݐhBS!wlπ6ܖڣ/VJ\۾<ȟE$&lyOFOq*Hә$vqZ="v;ޑ^*Sj\_ cN%^E_/jC}5RRV9>"#&nrK2Q,L)v6־#ح,+߲6S};ș)7TEzJ4_Ԧ_y^* EoU\[l}taeY `JצG]x"l:qG)uąỮ;n64*wIw !TجA"Dk0&‘+-z̎[&|EkNb,QRoB§̰.]:WXZD! `)65>wqlNXsJJkDH[1&ݞӱD{(+o2Un%m63YAΰ֔_K% ?UWB=}Z]b 0`Fv 3Nf=^c .as3hC+j )\e@3ƴDNl^mq~gj(u(ؽ}RtQթ^fG}=syk:>+Xg2(C|!%`'zYd 0p)VGKU~SisX#-?w>MДʦ3*fߝTJTjkbq`)N(d(Eilr%JQ6fFE 0 6>/(єz*|#Eȥh_%-{V}J֭1JՂDyy>hPR<>3[=$|27E9߄n%ObHkҙז[A !46[AcS!Mqֳ~:~>7]׺m(:Ot'nI ;:Mqxa9M%QAcz{HE_αu'J\u-F=9M6OP. 6IGc Rp\Dm~>t[;"/D ]zVMG@ k&g!]pDFcɬQհIcȑstقġ13 b0[䐢 2B6eQE,n@*$ѽ^!Vk} BgP\. g\/Nb7>zHfNx؋ 剽'.*OZ"ih ڠHn}F]/HJU[IxG0/|{d趉=&P1p3kG쒧l`ӕ"鎐tqD:hك^-D|a ʉ}z;6i :pwАiDX X CyEtۀvd}$qm"d[6h <Žt=jh&9{W(rn>չߔd#/O]"T*\u^:]ZBrIXq_r"1L?Ko >{:3gT=6b'ƜĜqd<+lo?6RV̭kB1茧KZF]q>}РpICp\`ؾ?(>W4+38tR_qWmCA4?]IQ}$D}wXg԰|NI[k?eρ`Cr V0glJ|:2GgB䨟L^)qSn>2x=MsmNԑ\c DS!n}Q6|]r n7 Mk1?Ү1k+\UOE ;Ȯwio |#h%fhLȐ R&M6ZށvUOokT#C9|o0aAU ŏo2'A փ?ޤ-jԾأɭEo(4hi1N6YlB;Lǽx,c8,^;0,')V Ǔ s^juWa]Pb_IfqCR?I:%{.?Pj1zu k'1/)ܰ JeK qxd%L^g9\啙7dEdT|~RR;Ms_4[כ.KIxsߛ#Lk4F8" r> CjfU1h׋*56_ }GIA_9G$3SrEM1-f -ґpMc>](d@X7*W 1^7uIl8-i"&, S4SqԿ;YV|%z\a_~9C*$ilѲ,?ї7@w)Z\VYeНq*J?Ii^9[WS neuB潜 ʣPZ̺[%kTַ~iG\ϱopxpDᎵNZ4vtX镧0Aż8l@|U[TK ҭsvѢs!B~rlN[LH2l1XR1ZE ix8 cW>`'ƚQ ͂vPS#̷y$\D|uSxh !Z w&?+ZնVÔXU 5-*7) EX|kOrc(@LH@Z1 (Ϟ\^38:64V7J*ϝĽ'෶)K3ʼnOR8OLKY;YWFn9>5sNؒG3UTyv`'￐^Akl Gz|!\GgyagZ`XɈQ%X*@OF]Nb/rnsMrZk>Z ¤ulPAJB BZQcOC m=fʨ9Z;`qV❠ +@ (lo BL_n>31$_x`IA}VJ.Z fs'9ԛV KNm쾮B5Qڊ*d{\~8T":([]R>@b'E;p';xNv uΐ^A;O҈hQ˵nE^{Ӧ*G{f??,bU& ֹ`C?c|[H39s:kRgBnInWxpq.XƜpu,y3in䐾Zb,ѯU,,mU4r)b)jo}ѯŊ\D+@|cnsJXvv8ԋ{ͥBoϠe]!G"x3W.a*cNZxg=*Q j\7sibMlj;iyx )T3)jQ|*ľ=mq}vx[4Z@W~xmQT*-zC@zi<՛hJ|2 Dntoylӆ˪)8ǥ࡞T<:χ?=HثHpe(\FY[z_Z&s2⡏o̿ˇZi(ofv!#}RðF0VwJE36w(`13l ArU?Brz/ɺD&϶ʸdRR|j'p9gCޠEQ w_,{G+I͇%#gF~Iݾl!TK-X!8tXخ"dƑc]5jaCsj2F=Vp{K -y1 SFEiUOWt8.(E%څo9 3뚰ʖP=]̗p :QQoPlX:ZwJ4ҤlR 2{5(yv#WZ-P?N|yuMC_8[t.cGQ&YZ/cH9lC?mq kn!̃2'p+_#S1 +W^V~1OuI:MhNDZK|3)Jj\Xŧn%ʕ E}+Kn9a'&=ĸSmQ9" ڞ{)=73 j ^W5/Jj;9qv4 Z=j+<YvFtx뒴CHQYLIiEOS/qAUWϡ[τ)c{(z&ijCa/*! i\@jM;вdYd&, 7gXCjEreoHe|L(˚ֽQCSZ9i]JZXW!FL0zG(`p;i@(%@@%f+n0.e!JoʹUBeCAȹ7`jdS@М;Kײ4]'("RIA(׫f0})'-]_ ԯ_"ҙV \jO4ozЕÞ"i( Пf[9#&Pn^]7k#ql[n"v@YiCyu{hb ʯ! E,Fǃx돍#-Z_#iGi":GCKۺQXCk䵿M]%9Z! iEkVd_.QN*3ʂu5< DuV 'Vd. O7"0#H,K=O~2s[xĩsQ`s l r~Qٹ$;JP2H*[;FC Q 0j.φ;Lr-Upu\鞈Zǁp{4{1Ҿm'/I'ddud2˟mRpZunVYPmQ]^z8lpcXCYQwWኈ_ęeڧsK4U.ŭT6(c* U~)?F_8UZ UB!پҮq c^]ˊ]U<"ؽ:Yp!-GW9iTW!c U_t] :/c候 :GflAR ״8fм>G8 H3|etef5yg%ޏ=gկ%v<uIf}N=÷b'OϯO @2S 6x00vA8+[0u! RA)}(m0eO =`Z(ָ(g V Iս't7*= E*I+T^VY՟Ꜯ]g%|J/=,;h⊑Bjk߭tblNTCbys8iP+F_ty^vg6L (O/Rp6T x5bUL KevJw _-AҪR TYω8Gi[asgjX y̿`!I*Q$e ݟ4|N+ :Δլ4Cc-5l%L`*ՁaBYkZ脱Ƨ@GO=f[TGbekeZL0LVE;yAo+Q$daLtLd `\nBON,o җI.6`MClgjUh?5Yl> 8t?Y_XB%eBgCְݪMD{leΎ\s_OhJțZ!(mM(dž=Q )}>b-? ? c.F5 :&f郺6xUzU4}W5( ۝良rR-_Տ5twR2VֶbSoEu kDG3c.Ad)i23K%'aaX7-,ZPI)+vSXκޅvUO^8 h?F6\~{QG Ij5Dv5 ެ ױ!?\BIzM⻏ e1="ց yC?Z֩\ݹ\s6}͠1MB\ E-jsbMw{Br)‟@mU\=9.Z6ڷ^)4`{fP՜LWFd)/7jO2uU3IJ›Τה(We@X2Q_Zƭa--0K;VQ? G5oa+ko<'8[3̴a;ZL@bp ZO~^VhW?#L5e!៩y74524Mcn:# ,|Vs#𪰶vOx5ݑ)' &׽3"qb\d>ɴSPIx/<)8DPy'rv>t|sYHgR$F4sbjZX!sr8x.B81Lr :LxUԞ2 #v(/f3Y1aNI *TaYqgȧ4>[ΡESLbr,"ߍ Flg(>],p3Nqr[^$OM./Vjt ; n5Z("#8}64Stxt?\$\ E%Ν`<ܲba"1fT)>*8tHxPbiiyoG|/}C\X=!FZv _ yXӥu`4h[9v^#p+h 줦Flշ#$4>e󲽝ELP ZFh{(.c <}#1Vy6N-d_W[ "9?@.\Hy1Fܲ!W m/H_Rik/'P7 A'$I2RA!G|\qL򹣗Ft2-}CR"cM{yZ6Hw[| a:Z注ρwdG\ I(H|s⍫.nX*=Go~c $:%C܋'LPz@` Z!+ER,DA18S+J bxU d/usnV[ѮpMHIE fwne#_e[.wz~d|b/!ּ,E*rkǡ'6yFT氕9(vt|HLxuSzed0X,xd29FjBOQhRXzwxj=n0Slu+\U6?9^cXqkghrxYbR@X{KMLn<|0lZZՂ&}˚?Cg^Z>Sf{77Q/m^S9&`U#$]&싣2/_Ye]KG̕LGKlZhckѤf<_3ZIdd x=I,r=k55ܦ}Wb{.V fn5l.7ʇ(y rHc*|4be{߭V!|aOCAL`M +={.5 !qtD]ȎS 4g없5 EAJw p7 >1&@z#Ja9v^Bj }rld2d_/wrh%^ζHkفipXT-&!r ozU 6bLFX7R?!^lne /Z'ܚj퍈y)^ p7e\evs8]5 Ӌdm8n?-GNetR:z.6oTץ Ğ2 Յ7sBaՇy%!Z'&D}cfz"xFJUȴMƕS}J?ԋOg\!pr:َ96@UrVǷ웿(`eHt6As8Ef4MY:j>*W!Fgn.5%mh8%V*E;m{mڃܭf?qux<S /S.ib__=g0kgQzkV'4.lsg*Ǯ"7VT_gP(ZY;Fryuq"x.9ZYU%&z/::(U*O[/[5ՙzH^(TDdZYmax8먢鹡7'Uy4&9*:Mi<*A f*B buQ1Jq<ŎHP^"~4}2|u+p./8B~GAӰ=0)mά,>W?G=+t֤ƴB 3.K݌jL_tjXYT-jM9ئMqaz,ɶ[P"vA@ _'Guһe_v܅^t0 Hק(=r!]FZZ#,oҹt2# FNJHhpN>^b Fң I". MtI+"U"Ii?dg1c5;TblXa!#?ch'/fMfbǤyQ/s3p]{K-Cv5#W|Gis`KMh$UM9*Qw~)! IOP> r@•SeﰴGZ ~:h]^"7ֽK !zn_tT ey=amt)E+AoQ#w Ds$0v^ؚ̲r$C1pA壉f_X j-V+J YFr&70HtDa!*c(nv37ϫjϾOQk&ʉht76N@YB.*p$uqx@B[c5 p~/a0ݗ ~;%\1j/lΤ)"_-sx5uS"pr#Ә)(430 DXp!sw1+{2O FGD-*KةlTMilJV?:Ad(lv6~r4iPu@H2ōՂ`)F^vmi)x'-VzMZ ~Qlec*= 9*ei% T?*vz-p<M}lb zIy~7ZЄ"YvTfz^{OE:eCݟ17ެ|[y˫| kCA xMfAuʛjh5SYWDEVq wۊn PL95E$Q,@tENecahx쮏yL:Zn[Pa],#"1JpX;',_yؼ\o |:C(wO(h Ĥ7~qW 0a?/eD' {f \o'ۈᙈEB>0"3Sã?}繠F $)3S7iRǎ FueME.>ZR/tv05S9 O2ZeYR!y1[rTu+~2՘ET%p3COta΃W񗷥t.w/9 #9 kw`Ԭ:0oDtU82[<ˆ/:M3N}@_+o`UDisFؔǞ 9&߃R i}3h2*8fE+M,XO!.8 V{XS 3 bKjlN$)iC뎶1x1Ė8a[II:uf!76Ӹ*vTx5JoNvSmVGw -yY|q}׎e(}YRvTn\*"4zs1CibOwukB7b+`]}~#N9T!aMN3,'퓩\Y'hxF=}LĔ߽\$PHߌqj"DuR~)5oʱc$ ~u5[(mǷ ȊUc([d_ѿ]iJ[Qz b9no{e(bsڢ #z8R;Z[jp#j7BgW$䆽I`Mݾt0ۨkHE7CzyIg5V=e~\g[ :g`T_-ekvIZ%t l]yY>bjtcNVƳ"K;b0D?&}\,6S RQ=; Tsw\p( ]ٝϺyq GRr#AmApcKa#Fβ0<-ٍ2LNZ:R=' ZtnÜPoɸ\#m})i .pI(@BJ늙дt^GUעh" oʅ*ԝ. 3O 9 Xx gzK%I&!D@z X8( XcBߍ9y0Ihzٺ+*``ȄR1N4|78#ᆬ6q"fW_PZZ[3mr`oGdijM"TfPP8"Vb?XԹϲo1Bz:{6++#'\}+[^ HsNs N=.T]n݇6f 4?D06ev|MvP$S&;gۂ d?m: "8GHnfY'j g>ݳ1"DلxZN42;tVVh^K揱"X{a8W8sh_I\C)da[|H55;[%ҘIž*񊆫Ljehlϯpj+76KG xqEvP//蔇Li\YA  @Θ (G{Rel6M%m@ʪW Й~4>j \d;>us]WØ=()GweU V'7uB&,_P^.5 6ۆ4= ueou%N$y67oт)ZQG*[y427͜ m(S>`٫};*@_81&Jt?Kj Z U6ĊK6,nrB^&=݊Eh& h73@ k&NR ?@G1.77i;&؞~čb {MV%r@ߒoz3 DaH/k!.,wC Y>E\1ڍOCYJIy\. ={f۲1*Fyz6vm!.gAݟ-~bkwAwV907&z$j앨^f]4ڍI 'kz8xlI],:0b_."t VH(8Tau@zL 48!_º_S^9 P3A!Xt|UedGDM E-ҬDx4.7;0Rߜ ^b}dfyw.e~ixY%1:=q{2=A'K`ZF#*{oK=XD|F$rW' 0Φ%+qx)x; s׌c1]^R!|`ߡW pY떨Qx]PvStIuB洕/XBz)Xg_1k;}eSGN^'|ŤmvRİMVU -_-ytA*.nyۚy†:kP %g&ycz}X4MN{Q *So_UJd7ީǟoXnf]Z޵n.,ZSecC^.])]̤@du^as C\>#P~[EFX%[ÆǛ פͅ boؑ =l=JޜS c|09?DObsEA>N8aedHT8t:+r  b8$.O5_oeZX>Qt\Sc讣 gmxH6v}1sM(_F[bbW/jMK A0xi)ը"nr%,$! xtɞ};w쨋BsCI4G) xHp(vUG.RQM3'$3yԭtf.[}7ݬQkep6 Cmp0+aehݚ0CD-aUPў>.`Piugܼi*# : Γ j*g# d8I)X# J7/uiKWFb$t֛r觩 < |$bSܵS?(^7LL|^rS,33g߰j0MB3T0X'!1Gj;/G/ߥYW8)t7GR^6H KP^*s.VߋdvCEV)7#ׁw-Q4ߪ k=dǶ$(hMRFGvi$ڝCC,dq H'n{Xk[0b\GL0d"^h6ܵ3\0^ls|Ìm{_+iƶ"˰BXze6{^b8\@f_H sh2߻ RCp,gupQB Gy_P3j- GN'n8':W됩H[D.ס4b|,5B <'*lYRlтĒ28kX{jRVtsUB3e"?L"r֒?f3?-8yӮXPues>dv领=+ZR94Bz0/J`! aəީCfw(|٭}v#'hZW Lޟ)([Ev(5ʌ P9o[2 f6T2\qAO1ZS-x _vM|fN:2Wj㻜?{}kvy&Kk!T@Wƣtkn]&n[{H۩mrs\(Jd _hg}uS1 Â2/y<c_zb5*QjPS%Ղ`T?p':AH %4] p| U3[)tor]Vl 0/!J$aS:ܥꞴ-#E* ,g?)$#' U_5%WxF]msOI`lSv $R6(4O#:Rt0mlfZΓ\oۋj?Q]n G0ݟ (~OJK✧I{S96N|^և+({ج(qv ߭" si rCfe*u/ܕ)RV}< `&zW .1 ?n|v{B(2_myē"H6Q|ēƴog̳+ LRՑ>5UMx|$<4V)&T>z _8fѹkk9 )/)jHQQ.?rrS,v~Bu? ];A>\- h>{%wK0r 6Dr-€|>2J3uUbNcWܚ&#熖r!PT֠lwRLHK\ZM`#7D7?=vl[?e]iS&. ys=~LX2:@I[zuE<"5k)`Wlħazy]޾1&L$KaBznيZLK_n+XZ<T%CRlaq^:ϲ`)! *!!G/Ԫ>rN#q?zϩ| oKIquFb,$`ӁsqDB+AқD0 #R`t]q5 [9s7f8[#Ҽ|unF=zYh/!XKEa+/ci#z7[ڝ7kx;մ€J=k# pňIJN*{_NRG F|]@JvK2wC0tW!d_*#%kMաfT!g"wFQSLVg2^[=Ͷ$85g.HLTgue*DTMU61E'ܐ%5j8x%z'k)v6f2|N9&R=v9iNǟVVnc: [ ! &8y"&h,{!cMG?}==ܯio{s7-EmpcI J3}L>ghk˼֩+֋{g=y%<[4G(5n@oѻV!ղ-xjAkz/ԣfOg"3~ E-: #'Eҭ4G=X}DKY)3Fjm '{џMւWdf n[:?ZJXwSXhDiBO\ڪ¤XҐc 4G:D*]* ~<xY{G`yNK!۠Ce?QyF D?G]:@NG{s0 ܲglao\} .+Q>{)oyX4u*o^\>zO__Rt@xCZ<KOgkԖ&~k(u[=hI~'Mč zmiRSMTRe/Ps'. qjnFtx_,}̪3K`6ÉM>^b]ݍatMJE&1D zFYdˆ$Aݧ(J|kqe $B h {.8 K{-.ueSY-jl`qn-ˡ'tjO9-fݫc+P[RRJw=^#t {ݡuY.Ꮉ`ITH:IQ ӛodi'T}%h*?db^3OKAD0QU61>NAj<0O*W"QuK`@0h@UO>1~=no\Hł(U9TOv\qݛQVG8_n 1%i ed8:j !O"3'Ѯw k>zUmcX+pMܯns:E^ott0c*R*'F%o#dB /8o[͸[Ru'#' kҪsng8 $Ie̙6>\QH&c-"U?96!Y$ogmhܟ5Pf7EFA 1>}f`W!Up$f~y1Z[ i=O‚?#3wN}*Tk:"lnу 5*aQf!@Wu&wѡb;ԆxB/_k'Pkm+|%^c.VЩcr^3<)"E\iҦ{e#]֭F#Gp2FOX ~m`CEvnxiG2%s 5Nlȴo^CJCɩ k:I7鞻DlRԥ=npd {W;6zǖ8A z9U[ J|=~B( [?%iX,7Z%+q*N~ cW `G]X찑 waUZ,o&Ŵ,"@*yrLo/%d-@})vl{L OٛZh2E.z5 VJEBD.t[MJ8K۝3+9I`̸ gbV1%0+ّXڪJ.Uj=eCLm'K ԘuN A/ xաバ}I#H;퀍HO;|Z1L%wG:IEl ] ' $πؼ(p9p\$HSǡyx &5NЯQ3䙵 N<]@pƕǡ׿Z*q(Ip*΁f !>i4EE{xTJ 3[vpTM}#C#m H3%M)&,W]-8Y_GH@au4,܆I22>Yٹzr-`oWX((N{iٱͶT41s3 X^ {`.d)@ >%.7{[1be3He&@PcJGK\sTQs.]X&qoUpv| Q0j56蕽o7 RAsVX1l)svLcSYyR`btqZ@RWT`O$A&Ѧzt+iBLI܊uR-}v`e!m7q&6taV`["zN1H:\1Cehs(*nf]u#xPY(KmYP ^U_?+iƱ|!#|^Oo>G}; ;3z&7{bΗDgqiZQ-O/1\qp%pe8u(UؗW'JT{}/4fl05}kZHWaB{JLNO&%Q7t5e|Ja"Dɐc,B1HL1KXu‹7AbL:,V_Aϣ~>l "2CϻиK>~**MH_#EP:K&@1 |ꁋ!Zx55xYu\jt,Z] uR*)^ZN({]`+vX ֱFD &[A^ٴs=}omʢ 5S ?3TWQ(w|TAMO*O':Gߨ砠fT~fNT( MO =" ^Ζ扷MoC,劇kGn'>Ng ):v^}n1hLI}$62*h=!XMֈmUit 2`YT5.{J8hU*vYHrh!*G0Aퟟu̇,8m>*&Mxwoǀ PTw$lM`|}9.PH ͬz ģQ\CDs#V: bn昬49?PvV?J@wCx"v f>_ s]7v}HR_X>dv)psK=fwr=$>H(0K "w3ndSvJ?`8{] co `8>e\i[2uI"OGQ8`7bKeDM24pAď6B BwR3 7+IMnqV}Y\]d1GШ͙EuV[s4NV07 \j'Cep윉>>5L'm<c’^8| $%wF-RrFؔ>;s6&Fn%/J-^K( G5Bk}p]alը|2)c@/d^fζDtvbϴvg2~U>9g\\`ۂg||@:dƾe) ƿ $wF3?g_$!>'G p/Y97U c&LFyȂ0#0n\14A0yEcb aF9㖓ZlU)/kTrOJi ~Ta4Ut׉k+ɜ4T6=\J}0] maF&P\@j^FaBw1~k;no&aₔup!@NuOn,?j'2ԣ$YJ/eȃ{ Yk5[S6/}, n38D1M017Ơzi{z"WHK .*mWLy7;5e=3+2G,+-j Kq#j"6EEm]qjљ6/f'M8_`9vB/BR(o pқ8q%2>. AQMgqI;K3c LBab(R9~kO ` RMm{ͫ“ 11q_~'Ȗ\%`"KXKt y !FP]jNRKS@ZnFYl M/u˫oV;9Wo9ϣ}u$ɯCn+f75 qUcxu3V0pdɲ6Gw)k})J"t) EbJj]rD2s++Cu?WcM\uzaW2/% =+U!$Pkٳٔ %|b0<뵂]24w/]JNj= %" ΃3J>DNn` f!o`DT=JOLcXW\'i;RJ4J.ƃ#Luγi _Q%i^$H];r o αC[H;/kA4HTZKSOZ~m6*qu9ׂ }خr3#|u6韺̭EְNJ~wHcp2,w ffu־?Cqe< P2q4:D^)5(N~׳́-3Zـz7Elu#ǢaՒt#D "wY Wa{BF-LF{L:OXzbu5khcQ=.. yጮ6F^onT%sMΛ =fy>E2wI8:s2{\]7x@2$0 Lmho}pᨒ&K΂'kQ44M1FT +Q̃:L,L܊nNM ݇2cٱt- ` W:n&uxۈ^+ޔ`jMEC/5FXх ))qHapt A$Lh t5ɪ>όQQee'绨pKs77 Bc6(6kBE$dR- 6oΖ_Y,gG$bO VzK ;~޽t)~Pdȇt5 0sV¥;Ϩ-/澠lв3K&^.'#!wV/(›jZv&qIZ,~ת uHW+-GPZN%H^τB?ft0uqIIB6 E/[oUW0&\]* Tbw{> e + O\ +*"0jcOwYɠ'尗zu%;:?ߩHT<Ϻ7fwTJ?irna~$)e?2B-qɫOMiuyBQjziҲ\o %8aNϣM/C=oh:r Gj[o`1+C(jpF[A^W\cӵR-I.FDP Emµve#֯ @36w>&)aߔ:IS X-ba}&qk?|}udJ@zy 8?΁񛒹}<TWv3Cs!i APd ԁ/he1| Φvg=;GG ljU:89-YdKL/Ft^#L} U(iZBsku_]y%lͪ=m!kgMV}eE3^hsx8[D5B4<y󲛑T^\[%ŵ=|46TqAvW̬|ĉK\pD9D薼ǵHbIA_pUyتG SVJag_jAbܩT ýg]_7i怐~kO\RapkӞ軱}_t YrՂ˃Z:"NcOV(Bi3ȗz|od\g$;^o4}~ E3R%}!jpz\ |u1}K ;bp=:\o-qko )X},^&FI[ ($TͨCTFeR25p٢\fkL eKLz"YĊfԉ I!4?|,l@L6IvJio q.Sf(;*Z<{f59֤#p{@$Z7+;vp\AAS5?PEz{Ƙ6__t;IW&;# dz2ԾuՒ9dOVgi:ƚR΃ofأ !kcI@c"͢E@?O?8>Q|TUF˜D(篇ov:)vv"i]KabU-OH.0kŠz>YvC(tH"gB׍" nKl=7m*t5s~SBuߥLj[#^۩2A(0 ;H,<&A*q.KdhohP;vPXgSg6xO Hp5#7OK~b>|g̘ZRY‹C Je紂YWsU5/m43~*iiDXR#IMq~ez];0qVNb?7O,;YJmx ^) bh+~4 X=ZjH mxN B!|A 7erW訯 (ޞ?R|kԖL1;ͨe,+qɛV8rohA:w'$J.`PqF+᠓Ҟ{.Y6d,9?1Ȭ>ֺ}3xi!ʙV|r-iY];"4P H(dvW`3%>v4ݝA$\e[.)J8_~6A 6ϺojHxeCdؾJ/4lEC^z: ~ʔ}Lz BSOA(x,O:N<joJߴF,4}~P @+-.Ŵ$8w?'[u2/,cw{f.(petT1*侗T⥚D; @_&b* A XDRȯO7y# BÕ@se<"T>8kcEP H͵87t,DĿ$Vd͉a|eҸTJ̦aVg6}!N+2ލUǐ4 ;CN2V"ܵOؗRlXKS/x!2-r+wr1v"mK'lL0-CK CX}A fU/)0<ȦF,{UW  †5nKH%)aGHk| (uk z{%M#\b)K>>|I PD>G!ua,DT;Q'^s)ҷD5@;ɪ& !>"MHVȭGh#Kdie2~+#Ei^PL׺;LywxAu^O.J}ۜDǡ+`x*K3Wpϫ:Hc2 ~ӭxY&JuMVhՅG؝4#m~paᰝ,ǿIj$ 3Y5z" I$ԇ Ec1|wi.1k0 Ҷ*G lщeWrld4If0ujg *t[FFG]GeDNRV +K=0pU,nvNHC`pÎ%QF򌆂s5W^ί)XoϻgWu& MYf`çg;ތbvO&  ->+gPa 1&&v"WI^ܡ ȴwĽwkɈP2_{,)ɨ?P6屜qQ|_.D ![bzIZC]P4/]ne*rR8OARs#]j!QmkP+fc,PUTyG<:NPlVʺUIj 6g)ڛ W ni涚S}v"cvp0Q[G췣TX1kDcVہCi=7 +1ߵahL%| }qawtB m9 Geo-McT'q6e}CMz كalJwKC#B XM8N<|T(j2<>?ncI-eI$DxݝkVԩEGm|f3jF;CtiKRrD(b;]uPJle"sF$,Q@h IAl`k|Jtu1N :hu+(*7ȴ`O$ŸxF,NkҥS/~TX)9=?ޘcWQ˔sS>OBnq >Q6=m' B0OOK!4dscCL#\ٗ]Kc:쟦 p^rCz}ƩjIv_TϦܯ`22^y5TX#۷G/*ѯfa)0y stOU e4(~Lӻm' TϘF_1<) APe'@,YK |,6E#PG3qfFPr+cY1t->zA Mi[!F5ɉ9`m{\#pE(H]koafC 0U?H#O"6&^RխB:_\\e.cG?Axlqr$Y1ز,))B-h]kx KRQنWU ;ągDKxȬ:*pʺ_M ޮ 8cw7_vth#o-)ԙ-Vx _ nf$9'Yxf o8)qc?>θa7R}&}UD}6L/>MM\h r:lS# a1|d(ɮ0Gz?8Q2{ 4[(:KZ~h cұ4B[] 5$3һNf VfUh9 >_TV%+NjRK1i,LZDscY=@Ű遨+d׽s |*@R룖(o{Ƈ (-_Zf~d;B97^7/hl|xUyMlr^%mů[ \M#e_kv}WCa䛥kD(w&neWׂBypXJ;peoGul;5^J ;^~׬si8 )9Xr)EeT< y.2%UGsi`AJ?,ƪ *D,JsMLZS/,"KYuڳ#c\A $\6b \ьR^,`3;m[F؞3CHxd`㤢/Ernz^ޔ-%m0!Ϫ Vdc9ݶ8Շ觛RX߶ K GV%SdgSE4O}C>wCir>TOLp[.U>h)O~7P%:Y(tΎ,1qU)[l8ki?UfsCԪopɑ.An{awY!;ڈBJKfѢ=#[zThՈ&Ws YX8RAat,IKD5 Z.>D،Ј">'oMBŔӍ[.}9uUuɩCPCvϏ|\IxusIoDIL*TDM)hK.yCTߧyh}O}gW|gv퀐v㫮IaR6_2Olӕ DVӅ={;ÈL0]lCGzEV*LH潖1o!M $>NaO:L`̾TB0=16ա͊S4Ihqixw@_9_7E-PYĐ҉bͩKO+iI"}4z kf3֟&_)FP̎J4r|8u(4~! @soQ*&ُF:CAc$> mu_e\t5[[ː5gCUx-#2]E nSvK')NJrM> .ĪnX[)^ڋ=5Rğ"rfp-;פ#o݉*!"ϹQ5"OUORi:(rY/:Kq%s>Td M/`ՍD(}Wa6w1^WsQ P+&X8曥}Py4jbP>ǜ&W/", J#D! ƨ;De g?a$@kBkibP]ǿ]%P_důMEuEOMpQ993xxgs%_ge q KP[DwYU {KdX pURpʼ20@;7ZxHAZ9nUn^Q{}2 I5F4=Ű',{orQb'8UQ}= +މ|f1)FBFh -i$9d8R䰛ٰe; X9m>9G Ժ0eU5m^>+ZࣅapbUKHi2eAlZi<NNV\FVd)tv2ӪL?[P`=j\/_~y]->ɢ34=W8]סޢ y8\.h%Y mKw%L.-xH^BIn67$b0" !7{̑g!ؓPOE BG%[j*FO*e} 5uC|`) ysx,y!0JFۻ{^$g:S!PCn7l-r%YZAÓj;WJ!sW{7VҖIܾipQ1tvu,A:ɩvs;PׅOu~O0(\4PIk7 <֏_Ծ]ȴ(>MW:W͍|>t!-]ZmVіQ+QopqM̨eUŰؤMM<)0Xᦀvoa;;Jq!hl?)L$Xb iG )@xl86Ev]#_sw#)Y,CQ}er[i6s<>_/ӭ` Tzxќg Nw۔2(Q}zNdHQ[Xz X!`HXD)&cԃ B](7lH|H &RNg !\@ ? VGKV$\ߪJȵʧ)8]bďh}dFO%i2$rGíno]W.1\ Y6<8dQ+N5bJb M]U\\|OK@a:;c:#[)OLm/ I 0կj?/u%E٪1qfkbn{K~5ޥRI6=8A$փu~I Wʡ+❖S p;^/3 e(MbvQM>(h|vn} `@҂yop`Rjf4-a~nFwMि$+7Ԃ ڏpGGld 镯_t 4ǔۮ»iwS"o?ReBri{'T'̭-f@iO՟(-\mW"0ʰEnpr pR`>E8NN ؟7vyCN,gdg_?[l'KU_ BXlȀ'KhG3ts۰`CȄSI*ϡ-[8+CAW*񖔀&P[c痱w7 X'BXq3џH4v{#` eVriKe D'&RhjRIp js{?=`jHly>w(:fWBku;GYhS`L&; U}}1ʈ%B.jA^W=ߌңx(e$]ȄP5NDKgnj l)diҠH8}V펕>Lt` ޲@e8"0kP㞾4 B(Ţpw<ߏ;ﳈX̓;t mqqYі-@k fx񿩲YVtKj38;C*M*5Y)lH~p> U9 %7:igmDpWr2Hוx6p~"܉&T/OQXU=|mv??Ո'—GǬBnRC— Z:3fZ^yp=*f0q˛"V\\"/XtRd+5ȍ%8E &n2K-m-w!8-KX(BU'_1;Jus;G;Y,{5` zc>c:O|w9\s/+ YZ