libucp-devel-1.13.1-150500.2.17 >  A dZfop9|! ~6AK0pFDž {_K2L(6om54p1ϐ$;~rO !Үvky ajvNS4c!\kpq!%ު*C&l1XY\@d#M~s5AͼdDIe[Ө~>p;`?`d " _+ Aau{     7Z?(b8l9:F]G]H]I]X]Y^\^,]^H^^b^c_pd_e_f_l_u_v`z`/`@`D`J`Clibucp-devel1.13.1150500.2.17Development files for Unified Communication Protocols (UC-P)High-level API uses UCT framework to construct protocols commonly found in applications (MPI, OpenSHMEM, PGAS, etc.)dZf,sheep91LSUSE Linux Enterprise 15SUSE LLC BSD-3-Clausehttps://www.suse.com/Development/Libraries/C and C++http://openucx.org/linuxx86_64 Q\,AA큤dZf&dZf&dZf&dZf&dZf&dZf&dZf&e4e61653c80baeb8b02b9ffef6dfbc036e7c54db49252985a0fb9b70d1d934ab18597248f836c8bcb6cf3def4c6054cae811d5f1fe82faf55f88ce66771533a246f528be5c72cf18e5b46027187ea46dfc182cf619e20dba44e0eecc83503987b528b15e64bdd3e5a040789779ea9f1a89434fb82a0cab3047cd8b8b32d7181elibucp.so.0.0.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootopenucx-1.13.1-150500.2.17.src.rpmlibucp-devellibucp-devel(x86-64)    libucp0rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.13.13.0.4-14.6.0-14.0-15.2-14.14.3c< @c2a@aLl@`6?_{ _ L^3^@]4@]@\@\s\o@[@[ā@[l,[!@Z2@Zc/@ZaZ*~YYYV=@YS@Y9<@Y(We7Ue@U@nmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comjengelh@inai.denmoreychaisemartin@suse.comjengelh@inai.denmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.commliska@suse.cznmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comjengelh@inai.denmoreychaisemartin@suse.comdimstar@opensuse.orgjengelh@inai.denmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comjengelh@inai.dejengelh@inai.dejengelh@inai.dejengelh@inai.de- Update openucx-s390x-support.patch to add missing ucs_ffs32 on s390x - Drop baselibs.conf as openucx only works on 64b systems- Update to v1.13.1 (jsc#PED-912) - Core - Added new objects to VFS: local and remote address of endpoint, statistics of ucp_ep_create success/failure, failed/destroyed endpoints - Added support for UCX static libraries - Added profiling for rkey management routines - PCIe relaxed order enabled by default for AMD CPUs - Fixed not deallocating memory from ucp_mem_unmap if no rcache - Fixed versioning infrastructure - Multiple code improvements: refactoring, debug prints and assertions, etc. - Multiple improvements in build, test and docs infrastructure - Added new objects to VFS (md, component, log_level, etc.) - Added configuration variable to specify which loadable modules are allowed - Added build-time configuration to disable sigaction overriding - UCP - Added API to pass pre-registered memory handle to UCP operations - Added implementation of AM rendezvous protocol - Added 2-stage pipeline rendezvous protocol for GPU - Added support for fragment mem_type for v1 pipeline proto, disabled by default - Added active message support for proto v2 - Added UCP memory registration cache - Improved adaptive progress - deactivate iface when all p2p lanes are destroyed - Added support for user memh in proto_v1 - Added support for selecting local address when creating a client endpoint - Added option to limit GPUDirectRDMA size in rendezvous protocol, UCX_RNDV_MEMTYPE_DIRECT_SIZE - Deprecated UCX_SOCKADDR_AUX_TLS configuration parameter - Resolving remote EP ID when creating local EP disabled by default - Added client_id to ucp_worker_create() and ucp_conn_request_query() APIs - Added ucp_worker_address_query() API - Updated ucp_ep_query() API for getting local and remote addresses - Added address versioning to correctly preserve wire compatibility starting from version 1.11.0 - Added new client/server connection establishment packet header format - Enabled rendezvous and tag sync protocols when error handling is enabled on the endpoint - Added iov zcopy support to RMA operations - Reduced memory usage of unexpected messages by fitting receive buffer size to packet size - Added support for modifying UCT and UCS configs by ucp_config_modify() API - Optimized unpacked rkeys memory consumption - Added request flag to influence latency vs. bandwidth protocol - Reduced memory management overhead with new protocols - Improved performance calculations for new protocols - Added AMO support with GPU memory target using new protocols - Added put_zcopy, get_zcopy and pipeline based rendezvous in new protocols - Added support for user-defined alignment in Active Messages - Added support for offload tag sync in new protocols - Updated ucp_atomic_post() to use NBX flow - UCT - Introduced API uct_md_mkey_pack_v2 - Introduced UCT iface features API - Introduced max_inflight_eps parameter in perf_attr API - Introduced UCT_SEND_FLAG_PEER_CHECK flag that forces checking connectivity to a peer - Introduced UCX_RCACHE_PURGE_ON_FORK to enable/disable cleaning regions when application is forking - Disabled PEER_FAILURE capability for XPMEM - Added API - uct_iface_is_reachable_v2() - Added IPv6 address support in TCP - Added latency estimation to uct_iface_estimate_perf() - Adjusted knem and cma overhead cost - Increased built-in TCP keep-alive interval to 2 seconds - RDMA CORE (IB, ROCE, etc.) - Introduced NDR autorecognition - Introduced CQE zipping support - Set the default MAX_RD_ATOMIC to maximum value supported by the hardware - Disabled mlx5 ifaces on verbs MD - Added detection of IB NDR devices - Added check for CQ overrun in assert mode - Added bitmap usage for releasing detached DCIs - Added configuration for requests ack frequency with DevX - Added remote QP info to tx error CQE traces - ROCM - Increased maximum number of HSA agents - UCS - Added topo module infrastructure - Added memtrack and rcache information to VFS - Added API for a per-process aggregate-sum statistics report - Added memory pool set data structure - Added new ptr_array API for bulk allocation - Added ucs_string_buffer_append_flags() for string buffer - Added ucs_ffs32() - Added ucs_vsnprintf_safe() which always adds '\0' - Added thread-safe put to ptr_map - Improved accuracy of the topology distance estimation - Added prints of leaked callbacks from the callback queue - Removed a diagnostic message when fuse thread is stopped - Added configurable limit for the memory consumed by rcache - Added configuration for VFS(FUSE) thread affinity - Added memory limit support to memtrack - Packaging - Added cmake config files for better integration with external cmake based projects - Tools - Added loop-back transport support in ucx_perftest - Split ucx_perftest into separate modules - Added process placement option for ucx_info - Extended parameters correctness check in ucx_perftest - Backported UCS-DEBUG-replace-PTR-with-void.patch from upstream to fix compilation- Fix UCM bistro support on non s390x archs - Add ucm-fix-UCX_MEM_MALLOC_RELOC.patch to disable malloc relocations by default (bsc#1194369)- Update to v1.11.1 (jsc#SLE-19260)- Update openucx-s390x-support.patch to fix mmap syscall on s390x (bsc#1182691) - Core: - Added support for UCX monitoring using virtual file system (VFS)/FUSE - Added support for applications with static CUDA runtime linking - Added support for a configuration file - Updated clang format configuration - UCP - Added rendezvous API for active messages - Added user-defined name to context, worker, and endpoint objects - Added flag to silence request leak check - Added API for endpoint performance evaluation - Added API - ucp_request_query - Added API - ucp_lib_query - Added bandwidth optimizations for new protocols multi-lane - Added support for multi-rail over lanes with BW ratio >= 1/4 - Added support for tracking outstanding requests and aborting those in case of connection failure - Refactored keep-alive protocol - Added device id to wireup protocol - Added support up to 128 transport layer resources in UCP context - Added support CUDA memory allocations with ucp_mem_map - Increased UCP_WORKER_MAX_EP_CONFIG to 64 - Adjusted memory type zcopy threshold when UCX_ZCOPY_THRESH set - Refactored wireup protocols, rendezvous, get, zcopy protocols - Added put zcopy multi-rail - Improved logging for new protocols - Added system topology information - Added new protocols for eager offload protocols - UCT - Extended connection establishment API - Added active message AM alignment in iface params - Added active message short IOV API. - Added support for interface query by operation and memory type - Added API to get allocation base address and length - Added md_dereg_v2 API - UCS - Added log filter by source file name. - Added checking for last element in fraglist queue - Added a method to get IP address from sockaddr. - Added memory usage limits to registration cache - RDMA CORE (IB, ROCE, etc.) - Added report of QP info in case of completion with error - Refactored of FC send operations - Added support for DevX unique QPN allocation - Optimized endpoint lookup for DCI - Added support for RDMA sub-function (SF) - Added support for DCI via DEVX - Added DCI pool per LAG port - Added support for RoCE IP reachability check using a subnet mask - Added active message short IOV for UD/DC/RC mlx, UD/RC verbs - Added endpoint keep alive check for UD - Suppressed warning if device can't be opened - Added support for multiple flush cancel without completion - Added ignore for devices with invalid GID - Added support for SRQ linked list reordering - Added flush by flow control on old devices - Added support for configurable rdma_resolve_addr/route timeout - Shared memory - Added active message short IOV support for posix, sysv, and self transports - TCP - Added support for peer failure in case of CONNECT_TO_EP - Added support for active message short IOV - See NEWS for a complete changelog and bug fixes - Refresh openucx-s390x-support against latest sources- Update to v1.9.0 (jsc#SLE-15163) - Features: - Added a new class of communication APIs '*_nbx' that enable API extendability while - preserving ABI backward compatibility - Added asynchronous event support to UCT/IB/DEVX - Added support for latest CUDA library version - Added NAK-based reliability protocol for UCT/IB/UD to optimize resends - Added new tests for ROCm - Added new configuration parameters for protocol selection - Added performance optimization for Fujitsu A64FX with InfiniBand - Added performance optimization for clear cache code aarch64 - Added support for relaxed-order PCIe access in IB RDMA transports - Added new TCP connection manager - Added support for UCT/IB PKey with partial membership in IB transports - Added support for RoCE LAG - Added support for ROCm 3.7 and above - Added flow control for RDMA read operations - Improved endpoint flush implementation for UCT/IB - Improved UD timer to avoid interrupting the main thread when not in use - Improved latency estimation for network path with CUDA - Improved error reporting messages - Improved performance in active message flow (removed malloc call) - Improved performance in ptr_array flow - Improved performance in UCT/SM progress engine flow - Improved I/O demo code - Improved rendezvous protocol for CUDA - Updated examples code - Bugfixes: - Fixes for most resent versions of GCC, CLANG, ARMCLANG, PGI - Fixes in UCT/IB for strict order keys - Fixes in memory barrier code for aarch64 - Fixes in UCT/IB/DEVX for fork system call - Fixes in UCT/IB for rand() call in rdma-core - Fixed in group rescheduling for UCT/IB/DC - Fixes in UCT/CUDA bandwidth reporting - Fixes in rkey_ptr protocol - Fixes in lane selection for rendezvous protocol based on get-zero-copy flow - Fixes for ROCm build - Fixes for XPMEM transport - Fixes in closing endpoint code - Fixes in RDMACM code - Fixes in memcpy selection for AMD - Fixed in UCT/UD endpoint flush functionality - Fixes in XPMEM detection - Fixes in rendezvous staging protocol - Fixes in ROCEv1 mlx5 UDP source port configuration - Multiple fixes in RPM spec file - Multiple fixes in UCP documentation - Multiple fixes in socket connection manager - Multiple fixes in gtest - Multiple fixes in JAVA API implementation - Refresh openucx-s390x-support.patch against new version- Update to v1.8.1 - Features: - Added binary release pipeline in Azure CI - Bugfixes: - Multiple fixes in testing environment - Fixes in InfiniBand DEVX transport - Fixes in memory management for CUDA IPC transport - Fixes for binutils 2.34+ - Fixes for AMD ROCM build environment- Trim bias and filler wording from descriptions.- Update to v1.8.0 - Features: - Improved detection for DEVX support - Improved TCP scalability - Added support for ROCM to perftest - Added support for different source and target memory types to perftest - Added optimized memcpy for ROCM devices - Added hardware tag-matching for CUDA buffers - Added support for CUDA and ROCM managed memories - Added support for client/server disconnect protocol over rdma connection manager - Added support for striding receive queue for hardware tag-matching - Added XPMEM-based rendezvous protocol for shared memory - Added support shared memory communication between containers on same machine - Added support for multi-threaded RDMA memory registration for large regions - Added new test cases to Azure CI - Added support for multiple listening transports - Added UCT socket-based connection manager transport - Updated API for UCT component management - Added API to retrieve the listening port - Added UCP active message API - Removed deprecated API for querying UCT memory domains - Refactored server/client examples - Added support for dlopen interception in UCM - Added support for PCIe atomics - Updated Java API: added support for most of UCP layer operations - Updated support for Mellanox DevX API - Added multiple UCT/TCP transport performance optimizations - Optimized memcpy() for Intel platforms - Added protection from non-UCX socket based app connections - Improved search time for PKEY object - Enabled gtest over IPv6 interfaces - Updated Mellanox and Bull device IDs - Added support for CUDA_VISIBLE_DEVICES - Increased limits for CUDA IPC registration - Bugfixes: - Multiple fixes in JUCX - Fixes in UCP thread safety - Fixes for most recent versions GCC, PGI, and ICC - Fixes for CPU affinity on Azure instances - Fixes in XPMEM support on PPC64 - Performance fixes in CUDA IPC - Fixes in RDMA CM flows - Multiple fixes in TCP transport - Multiple fixes in documentation - Fixes in transport lane selection logic - Fixes in Java jar build - Fixes in socket connection manager for Nvidia DGX-2 platform - Multiple fixes in UCP, UCT, UCM libraries - Multiple fixes for BSD and Mac OS systems - Fixes for Clang compiler - Fix CPU optimization configuration options - Fix JUCX build on GPU nodes - Fix in Azure release pipeline flow - Fix in CUDA memory hooks management - Fix in GPU memory peer direct gtest - Fix in TCP connection establishment flow - Fix in GPU IPC check - Fix in CUDA Jenkins test flow - Multiple fixes in CUDA IPC flow - Fix adding missing header files - Fix to prevent failures in presence of VPN enabled Ethernet interfaces - Refresh openucx-s390x-support.patch against new version- Ensure /usr/lib/ucx is owned at all times.- Update to v1.6.0 - Features: - Modular architecture for UCT transports - ROCm transport re-design: support for managed memory, direct copy, ROCm GDR - Random scheduling policy for DC transport - Optimized out-of-box settings for multi-rail - Added support for OmniPath (using Verbs) - Support for PCI atomics with IB transports - Reduced UCP address size for homogeneous environments - Bugfixes: - Multiple stability and performance improvements in TCP transport - Multiple stability fixed in Verbs and MLX5 transports - Multiple stability fixes in UCM memory hooks - Multiple stability fixes in UGNI transport - RPM Spec file cleanup - Fixing compilation issues with most recent clang and gcc compilers - Fixing the wrong name of aliases - Fix data race in UCP wireup - Fix segfault when libuct.so is reloaded - issue #3558 - Include Java sources in distribution - Handle EADDRNOTAVAIL in rdma_cm connection manager - Disable ibcm on RHEL7+ by default - Fix data race in UCP proxy endpoint - Static checker fixes - Fallback to ibv_create_cq() if ibv_create_cq_ex() returns ENOSYS - Fix malloc hooks test - Fix checking return status in ucp_client_server example - Fix gdrcopy libdir config value - Fix printing atomic capabilities in ucx_info - Fix perftest warmup iterations to be non-zero - Fixing default values for configure logic - Fix race condition updating fired_events from multiple threads - Fix madvise() hook - Refresh openucx-s390x-support.patch against new version- Disable Werror to handle boo#1121267- Update openucx-s390x-support.patch to fix support of 1.5.0 on s390x (bsc#1121267) - Add baselibs.conf for ppc- Update to v1.5.0 (bsc#1121267) * Features: * New emulation mode enabling full UCX functionality (Atomic, Put, Get) * over TCP and RDMA-CORE interconnects which don't implement full RDMA semantics * Non-blocking API for all one-sided operations. All blocking communication APIs marked * as deprecated * New client/server connection establishment API, which allows connected handover between workers * Support for rdma-core direct-verbs (DEVX) and DC with mlx5 transports * GPU - Support for stream API and receive side pipelining * Malloc hooks using binary instrumentation instead of symbol override * Statistics for UCT tag API * GPU-to-Infiniband HCA affinity support based on locality/distance (PCIe) * Bugfixes: * Fix overflow in RC/DC flush operations * Update description in SPEC file and README * Fix RoCE source port for dc_mlx5 flow control * Improve ucx_info help message * Fix segfault in UCP, due to int truncation in count_one_bits() * Multiple other bugfixes (full list on github) * Tested configurations: * InfiniBand: MLNX_OFED 4.4-4.5, distribution inbox drivers, rdma-core * CUDA: gdrcopy 1.2, cuda 9.1.85 * XPMEM: 2.6.2 * KNEM: 1.1.2- Update to v1.4.0 (bsc#1103494) * Features: * Improved support for installation with latest ROCm * Improved support for latest rdma-core * Added support for CUDA IPC for intra-node GPU, CUDA memory allocation cache for mem-type detection, latest Mellanox devices, Nvidia GPU managed memory, multiple connections between the same pair of workers, large worker address for client/server connection establishment and INADDR_ANY, and for bitwise atomics operations. * Bugfixes: * Performance fixes for rendezvous protocol * Memory hook fixes * Clang support fixes * Self tl multi-rail fix * Thread safety fixes in IB/RDMA transport * Compilation fixes with upstream rdma-core * Multiple minor bugfixes (full list on github) * Segfault fix for a code generated by armclang compiler * UCP memory-domain index fix for zero-copy active messages- Update to v1.3.1 (fate#325996) - Prevent potential out-of-order sending in shared memory active messages - CUDA: Include cudamem.h in source tarball, pass cudaFree memory size - Registration cache: fix large range lookup, handle shmat(REMAP)/mmap(FIXED) - Limit IB CQE size for specific ARM boards- Update to v1.3.0 (bsc#1104159) - Added stream-based communication API to UCP - Added support for GPU platforms: Nvidia CUDA and AMD ROCM software stacks - Added API for client/server based connection establishment - Added support for TCP transport - Support for InfiniBand tag-matching offload for DC and accelerated transports - Multi-rail support for eager and rendezvous protocols - Added support for tag-matching communications with CUDA buffers - Added ucp_rkey_ptr() to obtain pointer for shared memory region - Avoid progress overhead on unused transports - Improved scalability of software tag-matching by using a hash table - Added transparent huge-pages allocator - Added non-blocking flush and disconnect for UCP - Support fixed-address memory allocation via ucp_mem_map() - Added ucp_tag_send_nbr() API to avoid send request allocation - Support global addressing in all IB transports - Add support for external epoll fd and edge-triggered events - Added registration cache for knem - Initial support for Java bindings - Multiple bugfixes (full list on github) - Drop UCT-UD-fixed-compilation-by-gcc8.patch as it was fixed upstream - Refresh openucx-s390x-support.patch against latest sources- Remove libnuma-devel on s390x for older releases- Add UCT-UD-fixed-compilation-by-gcc8.patch to fix compilation with GCC8 (bsc#1084635)- Use right documentation path.- Update to 1.2.2 - Support including UCX API headers from C++ code - UD transport to handle unicast flood on RoCE fabric - Compilation fixes for gcc 7.1.1, clang 3.6, clang 5 - When UD transport is used with RoCE, packets intended for other peers may arrive on different adapters (as a result of unicast flooding). - This change adds packet filtering based on destination GIDs. Now the packet is silently dropped, if its destination GID does not match the local GID. - Added a new device ID for InfiniBand HCA- Drop doxygen BuildRequires: The documentation was already not built with this enabled. Removing the BR causes no regression in the package but eliminates a build cycle boost -> curl -> doxygen -> openucx -> boost- Rediff openucx-s390x-support.patch as p1 to be in line with potential git-generated patches.- Switch to version 1.2.1 (Fate#324050) Previous 1.3+ version was based on a development branch. Supported platforms - Shared memory: KNEM, CMA, XPMEM, SYSV, Posix - VERBs over InfiniBand and RoCE. VERBS over other RDMA interconnects (iWarp, OmniPath, etc.) is available for community evaluation and has not been tested in context of this release - Cray Gemini and Aries - Architectures: x86_64, ARMv8 (64bit), Power64 Features: - Added support for InfiniBand DC and UD transports, including accelerated verbs for Mellanox devices - Full support for PGAS/SHMEM interfaces, blocking and non-blocking APIs - Support for MPI tag matching, both in software and offload mode - Zero copy protocols and rendezvous, registration cache - Handling transport errors - Flow control for DC/RC - Dataypes support: contiguous, IOV, generic - Multi-threading support - Support for ARMv8 64bit architecture - A new API for efficient memory polling - Support for malloc-hooks and memory registration caching- Disable avx at configure level- Add openucx-s390x-support.patch to fix compilation on s390x - Compile openucx on s390x- Fix compilation on ppc- Update to snapshot 1.3+git44 * No changelog was found - Add -Wno-error and disable AVX/SSE as it is not guaranteed to exist.- Update to snapshot 0~git1727 * New: libucm. libucm is a standalone non-unloadable library which installs hooks for virtual memory changes in the current process.- Update to snapshot 0~git862 * License clarification on upstream's behalf- Initial package for build.opensuse.org (version 0~git713)sheep91 16836459961.13.1-150500.2.171.13.1-150500.2.17ucpapiucp.hucp_compat.hucp_def.hucp_version.hlibucp.so/usr/include//usr/include/ucp//usr/include/ucp/api//usr/lib64/-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:SLE-15-SP5:GA/standard/87f022ac0f6d68cd280646c0898f2d13-openucxcpioxz5x86_64-suse-linuxdirectoryC source, ASCII textASCII textY>(utf-8dbd6efb002b5548531a59e1c726b893e0849c4b5a48ffcc82271e3ac214a4ae6?P7zXZ !t/᧐] crt:bLL ֭hШ)k ѱ^r3Bb/ǒN2Bxmij߃Ļj?XP܇#䷱mk5iWok\41 Z*#`DHmvO E=zNPMY4",# 0@V7eߐL閭 $B D 53AF|ڀ~BǷpRs"CdAIZ#oPbK_vY BghlY=qdܳde!GI#=HkqG6t&i&\]U NlsB%( \apڀ*3/{? :&$wѲ"!G*wI]d"f|g|)1<ḋBjab0)14(1 -eިrD/[5?zr>g„+T/^qd_A|-C_daH\j&bݤ3& x:evھW-( SCQ N7|MN)gDNޏo/ !.CN2ㅂ6vCk{ђM*y. Si9E>pt ܵw2cRƧvV2zCjw{,RI_-"C ix8=a ӝe]6aر^ U. Ϡ֞B NP uڰ9ia,M^I[P7&fKdyXQ -!s#Wx^:XDgŵRbnM['bv#mpX|NXN`pvc  {II|@-J :l$<-^w`V  G:k݀"4N>o};'m{1L~"BLŎ-F 2}T$bp>F.]lQRe'hz`wI[;\Ifs%N?ɩ\c2\#=. eD0fu;T`֔x]t&̯TGW݆eTLY@J!bi;T 4%7gKzdǰ$D˖_DlkCl/?;鴽j0[@ <^Q+ÅQZޏ_j8ODDo6ߙBtk 4U8)PO-iI% 2Z0ط0ȯѬ—;7!uoz(ne֩ ٽw!7Coi+4pӜRQ`[zT$@uҕd)3MNCVukiK 'M?)@paG+W|t8Ǡj w ]JhX9<븺wJ[L<1Qtl5-q&Y;RX/i^ŴYJH#dX$9O6t7 `L:>_C;-X%)<6x؉N't+6cg$3l2%S>E~)X|!kXP JXS úʗh9wRiNE8'/.h&!oJ-a}y#or?ܹ..M-uG`! * IoѤ qW[Cw=RT_Պr}1>EW 8U.g\W3t,TQ;d)[ϾMͯ.lXㅛx'o_g  nU[hP^(_Vó*< gR@1d$n- z`PĘzdʃ0Oךߚ k | wijfϐg{Be.Uu;ґ$GCojl?zF;f);G^ ^BεudnG܀>mƑSyi&(;ZJB ͔`yY=Xq_b>(g.uz#2Fs -# fk</]qBw47{;A}Nv*b JrƵSZBB;Bx4RfP,`oȿ>w(hXߜ:{|>LAUV5e59T-\ŤP]o3MF@X6q%pEuX%lJBNq#H65TPo(y6O1E4i* vTkwBUǵ Ũz L 쥱iMDM(E"ӒW \IsAo/Fd06&e>:5uwTJVLIW`7u⸐tǺƬF6RH٩gD'-bH?{]lmQj(}Ru4誨,BԽm͠*N4C^fN |W(AX@/<"+@6ZC\IW`6beH}an]K+:o!j,; XxzD4Դ7=張)Hu#17s i.WY,FZ >(P8\0*=?ƹ~dʱ%XXK 22$ "~ U 5eۤŕەG0i}\4{BOyl(-SK "01Rl܅Ub"j]&t MzAL[5F>']I@F!;V21女i X<%.y8<QOZ5*ֿp>Kt+/qINLs1v0yTHXé~$YƎK]~L 0v U5`ݰI{Io)$ 鍊\v5V'/cFR?2tIN`=$bȧ*md"HB˵ST󑡥"*,W{7c{ZՋQ=2֠09 zRM acծt" Z\غ¯Aa dVTxp_+l"(#v2HF&7ZGj87Dc,q;~&+YH<9;S(/cCkKlX&1wSe,%V$1Id9# - <_mPir'|BD;b S)WgزńjQzҴiȘ~Liou Jt6EJ8ˤ.9-Rߟ7 B-TfD r>,Vh}H¡(cvQ|(H_-|EdD[DWjx9d͸Dx%Jͯ/Dl1D,PvlRg8Gb8yk\fEQ9Za^ML|ޗ8:(") I+s6Q]4Sc[;pB Bw:[ .!_Sa/e\§e)P`4ga)15ŝ4FgkpM@|m&Wυ:T- l5sWڜ`C'v[+_x'yC* nOeJA_{Z,.LWC:\µg⊥9~&SAXW`kIp\f𵽉k6 .kUg:uy0y߭ܒH6_VO%}4C P}#\O8CuBܯ >)"$J*_J$0'qVߜZv ޟ q&VH'R-;0Gw31xqaζ泈kKN87R̅f \xR +3V6ʧ( 2tN)zMn}öG~p63BmP+&g3dN@W[{a:@8LULu^(3][yh7 C%+TrE/] eT-y> 3KO \ >s雪Fۣx]!? "~]F= t脁ݕG7&7ObEn=4ALoiU7{Jۦ5HGZI,/KlK5 R3p-5ŊqA X\LVbb+@W!z@ (%])u| ^z}$Z78'`)"Hh}-x"5$ LfoP0[ڍ뒣|m\~-ln..J 2pF/FLH|; z|Z3 e$Ihr X kގ(on#a!o>1>~_%cP Mm,o9I_i;acr4YgXG%WߜXhz-DD;f,2:1m.E6Kٲc[.抭 c$M~oȃm@S!u7Gr˔0)Q[=!ӔڸGx-Q{:RakBH Dђ_dչ c᳄+Xeo+^JnX=*+\F>{#f;̼ldj;PSFJ L24IG(:\0"bv-Y&_6X@$`W2_\\S2xFdG!4lSx 0 #z/ )W a #SG Ys=.zj`o}I~y"/*$@6 -p0?y$&W??SH| SN(-f koh,KBp`vp#j#!0o 7 fPLZo6VĵӶG4!S3ԡJRĺ}KYʆLS"^U#"A`f=aH[YB}_^\Qy,7j 7ذ-ҕo.VuDgSdA}Cb?> DZDg W=bo5vSUMr"eGEc:oTlXn/µh{'iGBg~(kꥐxMRo<%!8%D=8uz8rRy~\Mնxsh&cmf\,WCf)`z\uW5l k C$MŽ0bAN^Pk"ϏhrBDhx9a#z] hsB Yk7bX܍ yuvea?&fU1T-[|3Ci3]9zfy&>`6Hqt. *`xkxUS? a@-6iRq^n,CF/ qZ0_l"gGZ{ -5"ƻkz{-'I!'-F{+Zh19rL"Z$R@*l,37T ;BrIÔ5͎TSn1Ԅ?st /2EִG|t7xy)^n8m T|@.Dpwi:+.tUUjEÒ4kL`@?QBFV*y(̗J.:$tmxB=&˒`)w.50=ʊ"w |Jwi%_m.a(˥#ǃAD?e%3`erA孌E1T#|XylQV~H3̆ n?pSn|<" qV˖+{pQ2o4uJڛO_'lvJ70)u;#W@KjEiQuf*GC̕ffy@xŤ W;JГD8"ы7% >!pdi|JsOl 롵2Rw ˥}Frh9C ៖Ռ~ݖu<;u{68: 2AՔmQ3٘km]UE]gdG A册2Tꓻ?!ULmmc_i~N! H]qՕu.:RoWWBE/;Sg9ٳ뽣-?Mn$39 &@n3}M%A j_7FI/ֺ,v7˅?VS EGX˾sE)~xH]; r s- k.w9(7A6G QU ȀXXa[p{=S 7ĕл:|Cʕjtl!!NlٻF KyU߻u4dK´ٽ#BW)2ɲb3ziƄmKoˁQ.!vpcyzaۼW??g O\=+\ N](BrmiLD᧭Nv{.x2qi0%㓅a5 e<6=(;, i$GV%S;8ðxD{Q_Ӭ%Y'IkwX>>{jX?wHv# pOF!gj.!uoC>aJ b+. \@49j)lsyϓ!?4L^;ڀy:M xbqjr?W_&?DkRbT"7 >䵀zY2o)dX^(Pi!Z#mp9^ ڀi{xhڼ'D@wr-d{ V'6vW_D6 Rm'yVIۜE`صm,jӴvNVg _4Pp8RZ)HF^5]<&bW/+cAV07YąEo]dג;5a*D/4=ѡ3VR_k_‚P d:(μZu,@嵺#s%G0WZ:I1#GAD{%vNmo4 v[.vcrurkx0Qė,Azd}TzhWmH)u\;.aav+=X`*8`=JnǾH5 DcYyO?l`w9UNqdh>U iZ)`$%)~pYuoLWРxd>,R\SW˘z0) U*q -!$KH݄0۪U'&&Dy|;Kv?!% e.F۹?Cib1[s9"wV8(y63pȕ_=ѡo!qEzDDs/EdďﰛϿ >K%] Dr1h=mo0|8 $MH [m0OSpZgBHo w7%Xخ?5IBYC$N6 9ZUŒ{/HEk_1=/wnQޯ~Bw x&\6y3$Lͥ^~LνfX*tbm[~*ˍ6Ads+m5S}V-N q'ϖX5+V X?eỰw}K҆@fܠW/B']Sҩ4[}[+K`i7H37Yǵm-ӈZ s:PHehc.x26tAm$ `;=?3[hDKGՑ#MQZW3$P©YK0bI@nuķ-;kF5wBKG&3C.I42]H³56Xp58ޠ~Yh;F!5 rMD(L WyDsf̹Я3)W0AN.2\^ȕef.sll k a 2fU;Ӵ8咎/Kp{ 0YtJ! h U×R4N0!a;U4wZ/+­ݕɝ,Ph"1#ЈBȀ]BMIo78#:IJcwGo-/L0k X3W%-J3apnObIDsTcU9!8_R}K @0r F EgD!spwM=a *%m:4ڭ\ZJ$ jxt ӗ5s,S}c^Ŋs.Ԗt8tCk9MYciFXY51V?ihۺ]¸_N)2M/7X v(90srPΫ$a6~@p\Y>XJi]cR#OZEIs_`2Zl CH,5?ƥSM')'5C#DU!o: vy܋y#YUnCG`Au[ t+&um{O,\6vvwӡ.̊n\!sFLegRT?Rƥt,j]PZȜ9cJkpZIs [ +(OƆWj俹i/MZbv"I2&̣襈beO@+ u,63Z)u-,|?55dxGa}(`<լ9'n (x e:78ri*f\Ͽoة,W|q0дVFV$2{TtQAuTsͯZ"i2J\o ͗/tmOb&U-Z{P#ʘ.~+N/+}? ]u}PB2Js6։IjNC'88Gj2t4Vxej\eWf9 $u=7ql۝Y :o%/DLޑ;bp:jQusD\ US7U{wQύ~(],t: h^+^DKyzxDPxKmwTUrb=n/ S6jWw(;~ LǗYPK3!jaGP w##}wH+0'~K@gYA,p4(@DR{YzFm=|5 ߌ{ +O"FgQcA\';S\o fRriuXñbqxrc/׻T_!RE#UFrd%Oµ]| =F2nڛ l6yGAx&G(gRX-<ZÃMx,Y&JUvXpTT>ǰd2@智ּS#w1"K%A}8/C*¡ (l4ʫF3ԹEQň ~O0׼JQA! SsB;)z{B.˳O>e^;'u4pYI(<$D]z*o4,-̺mqx0#Oc', <6=:ŒBaeH 5^#}]:;&(×Jx螸w(LM~n>}@=w8d5T[KDw8iQg1T`g-F͚50/_%e}y^ cdXů!ЉRSv/S3TԝFe.@0kfXԃfI&wH;_ #^8C Bl馜3l|uq6c|hk"de{ м2H$ʡq#(]Ut{Ѣ~qkzPm)@: XrFyP+HHS8ۊtJ).~Mklk+'S0%YvfiMD0 0\?8Bal>nmtB!⁺HvsBgfB1Y_vG}L(O`(4zytn}-|jt8r,x:Bxw ?ٸ${q>=Rz?^*ڨVeC1IoJ?<DzQXojWo\L^.Iw8(ҁSo/[D]S2M zV^@O])iN,z{!dOQpa%jx1_\ah{7RPO3dy,`f_4q;tNrc\MN!Ж%Iщm]/ԴboǂٵsZ &v䍴g v_1ߧ^{ȲKo 0h3N-5(`[f%< &KJp4FT!J| IjYȊQxB9cݻin/*a¬9^2pl¸5oҗRM;$`hgPJHDM\B 0tz%󫒹BT73mrJKp5ewTMJ]uʏSy%G_PXnn3bdN$f'KN Aֻ&~=3W4JKeTo5qDǠF~.=PVi1K /obCL+EY4Yڜ_-X=D=*.'w*\d|WLj"KV“K 0OAs,t'ʏWN?RpMlw @YVj1Бiػ8d~W].o`h<V(s.2[P4ҿJ N#c| \,j8 H B*afg\PO-1qn4G}{ %kt3o<*,MTqW/(a~M$ū;Ac YTCET6~!lZOAi5 VE~=@wL19;nhe.:J"91: ]^j5n:_ӿ5M'xm|[.k93Ԧ0q"ʈJĴBju %&WMwv {Z"?ju :}LR'TTtZuwypL++KA'`>v26 L󛊆JZОu+/zZuR) /6TޡHE9_;$ka@w-`'$liY{6.dg3SB|zlqbJ'(O Xǣ+uHt8χ_a1eNX$iy$F k6'4/2gQuP !ϬD J3\*aˇ}հQHhKU>GwOad=%&X6!b2Uݽh d} $= f`_l:r°>1H*7jqFJ|P]D_ ?z:=㸪NݰvExܷ<%,rxVTĆ˖jDCרuJZ0}~ 9:xվ\kpJn(!;o2y8(f X(c_z"my+ CeI}] ;X4`vDy)=lDڣ7(Ƃ$b= g2G>3>`nP7kK9ޯ>qM  l2ƹŨ;+[; 'i:#͊i^,p5ϠsJ+yd"tJu '^| TJs×:yO[Bqϱ{Ki69< L,=+KzlC4&-.3 o9T$]pQT[`*d;/zPP53"q3\n\L"eYt'm9I'[PsPw ^SZ%֜n#wYG缽_]5jfZr,=tԉ?qk~-vk6|Bu.j+[z=zBwȊz,)bBnӀ.G+2)_?Bˇte]{>+n; 3rW|Ɂˣ^N4iw?vq*m700P~z0ع(,mei=' `yy%o&@p>6BϲվoX 3XLa5ݼ >ՄLW:5pA'iX+MM-ӗqh,0'a:TQ")ǒX#\ݾT7}){PCXYErL7W(Y7+76S®杮wx6yr}v{YF_|ii^F>DSu&/n&- moC1uX\U: Kùfi5_;E=B/o Rӳ筘b{xf-YxR6z ڌXw6 \cΦᣘخ","8B ak'Vm¾ .,g^*8Kd#oK'NCTw2d}geAM'ĮfB~X"xn;.)-:ܽ<,~802)翄A-Ch)q퀨~E K |W4|(WmMqNh]90pWts=lps L_t W L1%E#&me;WȼтSI;>ugEZ$ҢaVTt}њ B J8k?ld <8ֆVְ`o=U_U|ԢuJNvWeq \\^RNN7]C2 >̡Bmh}SJ.d:1l*:=$`(hyVO!PZU򰝳yy`/8ae}K U M38elʎt=_LL.X'$zAXRn֛g(P; yqm+6ϰBZ/;UɧM肋T.ld} 7OhYN5g[^.Dt2x$#P {E-^iwi/Ж9hۏ.Jz 8mFRD0tyv8i 5a ^d"! #`+;FEJ7(t6p}Ķ6)]Ն2c܂2Uc:B ekN㫱LFƉB⳨avZ-J` KGA~Xi;'":37,DxVsH뒺?vP).Q½"s:@da ']8+sm)6I˔B{VwS cPL劲W`r}OO0z8Uso^N9CD@X} H.㽖͒qNn60Zy^ _~c~. ~Ԕ>,K~h*h%J팚YSnxSX(֟ᅰ0bBl (r U\F.s!`*[6s1\53HUCŵ烢7`|R dGF,J:k敬 >E>U<=ے-z] FnNjZg{Č+nZm%zye%)5S,ڵU ~OWeۮALPTϠ0 !&U }"?X|~OUi JSO;7 dMP\Zoh!w*b&P%rXyF5>SeP|Al2WF<#{iP4SYO < Ȥ8"i)j-ɘ[p)> s]˫xw-: % 2z]wVdlǤ4A،`ey 0smx "[*\AlɈGqyZ{V;dA.x4ڴ$def}:Fj&jˤ&MȲNCl9@ $У6J`oK_DHJQ4Vq>6tJyrkIH!y'hHGi гX>C-hw4??W%A;b[9*bTs&Q14O*slhRҥF(HFwғ!Jh=S p/~˫p?EMaK4rRp]tժ5M[xS.%PFc-_1ϴVRx~E-=%^#R PEGY/! ̯/%tqΪ"z-;;~fphN,FQ$qy0M%4&zu|\ݑ8,n&r.ly0faV޹4-L >@_'t#ᾊU!T)Y>.[=!E9£)) 9TnDʸ=ҍ;lCZƮj#``tY@J$M2C*"nȘ:UGjq!}hUD] >tz4X; W~}rfGVhPDzo.| h +WZN<`U:ElJe$hQ"boCK˝I9 zݯH<_O+G*$,T~ؠ6[";g⨵! 1F@ Q0ד~ !fYNj, ڵ^!v 3MsLf%=ΧwGaqI@8oܗ1G. &n{q=l\PxߐsnA([ T_)$4i xfI_e^!$vG|ć#X\Jt~Q Rx/SYzQPa~]ˢDq6naB-^ Jۢ#t3qMSh/%F'Bkzxυ4u 쪒$4E5J5e&'x(Tp45_9vGf2dVWY}$Lm擽np1܌W[ gE׊8|wm߼ÛcC}LxSNܦs1s\<il]7JʉhR+5c,G#iP gկq`S@rCG&'1<źˋ 8O'䩓K|2ӹ>Wc81 &|Dt-qi^&fۜ\em$WLZP16>㰻QJ4M3&YtP%_lB{XOAgM`81 ri/- V@^+6+WVS!㔒!r=BX-8~@@2h@f!* Lbd-bR/tw- 0І/wv/QZqCK&怷us ){O#Y%/ޓUJ21DR7î=u,g! _#4C-ǨcxĊ]yܝ+qy]\ZІ-vAT6oDI:bkuӸ"'[ظǣR 3&< 3Շxwv^Wz͏0!KFds_,~5*wvb'H]i"Q5. Xϋ4ɇ\a~bKWw=3Vʫ NFr#SH:>)YƱ/51X3ဗ91T`&qxn&QwW Tld#Rt-^oXS~5SORa|!bb*_0GvsDۅԄxbiY$wRtLѭHaj,X@. L. pNW*s aQ7QN6&>.?A=s_ P  x܊¹\jpe*mxyoZ}my?9l!3r@,ia'NvI8!AAo89LZlRe~kkXR =r6Y#Pkn~EJ^9q:ْd.˃lz\R#` 69$I֝V{})}X>hRăJ˲j+_:>S(/DN\m'DY1{SU@ד>bN)`0*ʷoCX-ZG€LH{;ӮHI&)&q$ BwB9bR@ MyQԁ+9)gh[wsaÔꏡpTJ)8'8OSd; 0)D!LHs}Y'M +okx+Bɾ$jq.{&d3v]齆6m,z٩?i#=d/{?p$eI+r;e5bu!?q@n)k#F6+jjBvK{'@9='wkY(IH(~:FTIL7+P ^5ak0ȚPIIŇ_Bv0N-PWWMDb敒fi;_\41f20C=8(r}D_̲>uF;n WY{"J&dr;n<WidF\s%~6_醱U;TVI2r6J>إ%u^@w;6K?&_XCm &|}lͺ;ҩLy@JŴ)Qx@7a,I/2~ >0Ԕ*2~Si6kN?jtVz9+E& ?2ԎkkUPϹw&QɹhG>`[$St\4zϺ` -Ͽ9/c,`[ #˾ywԬY;Ui6!#;ȟDY[I` W9q2JhyDy,U;[2&QZ0Igɭ.,;fnJoc-0$|,Jd}jd_Ѻ/_Bwa}SPI$C'IY(7NT~T;'7(֔`67V\#9BVB剶(`Qt8+Q੺22gOB=R5Y#s_߶.Z;OG)pM%k mc+rG\;ңk$|I4HC@WN˼7E7kR9-:7{^ߘK`[&*(BCvBV"saWu2qئHnwi9 <Sfus4:gOg ;Q-_,YGڅfjm@献ٝ^Na)e%$3kx󄗆/?qNPýRJMur\/И dh4C5Qgx;F`w>|a`ϮĬ;F̌kRĥFE5w$+=f/y r im+#7ϠPD}g۰HDF|V1,x{rDe-t#L^U\O@\hnp9ɐ'Q l}< ^`6[M:0vujlO5یhCĦ]U ʽĢڶa|dϺoAD#gj:RjERY\dWe9UqCy1TqA0Ԅ'$e)TjpI) ;'*$"$qEyNTƉk}RX_Z[pު!$=fwٻ}Bl-TunAŁ] C1d1@t#C&5hUu7ԒPs!4R3;rVH]kJ)u{fGnq~͖W*Ì_QBۯ:b))v#Jɠ&|uE:=U=*p6u?CJl+C`v3);h`r%qJ`{yhkL߿ o+4hM[ܹ-ܞ٩t~i@-kzϔ&7QObO Gl'K}EB@nNtbI=&d'<4j-YAVER o6nq::#J[WOW̸9f0Co=kgg3k6ǓUM{mapbڵ;Ǔ }y QL+NCՐEv9b:BLL:LhW:U$h<^!͇60ٰHLm^yŶ~ . j׉v mI-]X/]3LnkdM [qK~/-y $?pތ[c+j*AoXx)F6/̥$nM2 0OHXg6dmH-MakԞ;KjmA)qᇫUi(9$\9mU̕c*.Qv;mtY.&Kq|! [g_/UK1 T2<66狳sWL>lxP.<9b'&J  *L6N(-L$*F^1N =WoLdD]nu&H_6EjB4@&oTlU֗zjOH3'ɢm4I5b}a$R=fBvzq秆2}"u62{R' .ԫZFjoHQ0^,-i0y(yP+ԍNv]ShNfh ,դR|JaÂ+7[^5Dt{T;v.s[y!}x=L5rර% _By.G5 n%eHؘ3W 6^6J袧 ^A1۠1{]<-z*aƂv玢Be -sS""WfesjM@kWg^[ފ%G ?WCfrQ~a93"*byMM#f>[ @nw# ّVz'_h_OCpBOFGV>Cepğ[RhȒI7Eb;SeEc՚ZOHpl^~ӉH^hJI1 [֋N]Q>==x8rNtR#2i Vdj,o4Q8Ic]/Y% {/z9>Y "J*6D_0]]U Br8}lm= 8|"K܍iAɷ5HFLrn.qC\?iTi^b~{An_ĸKW>WuN}W3`!MwU"y.vظn^/+Ft1LJp]I5/1kK$?gU̔-]։{P./!2XbP Ru hWI{vpIH̴U)"67?`ȹT1z:Y;xu2e}?D(3<&1eʜ=l ^ct&s+>8MWB/ } .^{ACsF*0: 3d.,qd[ͿRkW:nmv"9q'dRJKDirϬV~h[ȉ5;5O8 &T >3B/Qhwc! @gKV^I2V6Ȭ.0|J&ey#l0Eiq>=MgC\ӝ EQ|U҇?3uE`/'<'4j ̍_F`." !&!KȘYp^v+v;$prŊ 'Uv H+ՒŻ&@x6,VyMZОKq5<&8 M nf≍ }.E8~w8 I/d/fekd5p> o$/x]xf˰&akvRHeD:kUMa͎X}'lKjϲx -2 Ƽ:EKHG7:4G7 v3N!\񟈇$dfqZr 7ȣTs*) D?:=΋U|9g3>|Sy-{@Kh;:.kTVG(^D?bhZJ%T 2ZW>xg[ߗ s{4Y#_4ͮHb&wb3Z6ęD *@ 6~X' NKT_&"OC=ϬǦc qkPP}Ǧ<{rw`QϚK{YQE?WtiT_§2&=(яTYakB35yj@)8/We\INw3VJ99N"TJf*hR;$ cU;&Yv|,1I2<ݕJdٜn=z1s^DkSt`S@ ||JvdD6e I.J'n'A5aP 2Mw~?T=ڙ6.S{s0"3̡,HQJ EY<)}ȩhg.yjs/ʹQ*R*zR~@IYcG EIrޕZmcúp=$v_bT̻~_tѓҋlZLJ?14yRƴ(Zop|%^XRP.1OJsB+(q|c_fbS geHQ:@UbFɸa<^ӓ*azҼK~9ҪjC[+;:z{qT *L3ZMlg.cimWGIFmS=rnRPL^SnNɒ«P օsHy,]}nFfEfE 4X$f^aQ5>f"bF244%P!Nц<wMx@sV-#Of66,rX۾k5|f*ݒDlH[ce;vۏgOH͏`}T`usϺ]P'{h+*UHfC\Jm[PKji!ɧRzI}uTwFiA-FX\^,#LQ 5Su9纈ɸM,<̡2sIϠ4cukJe,kTY.VD kvzLǽv:YfE1&8 TZBdtkI*1Ư %~fH6G@a@ߴW5ϗԉHM[$qGxE׹l#|#\ŗB`OZ-PxRB"SL %fį?!eQ_#A72V?^hѧB # bxje|[Nd!Ԙӛ6s l%$k0JMPwSK%sWHa} ̧F5QEJt r+kR6p!ƿWx9T}$~7\h(]_U7 M=ҍQ!c Q2%GzF՜@8n29~I,'ڻl#i݈xVhlRJrըGǪH!kmX1'R/0D➫k}K.)vsY - Wk*iˎ2ZCta.1qpҜgVc^Y匄qNLeZv+wKELEZǬL 3(, {VGYAأ3A%6|16gCeR,Ԙco)zn475\XA^N؏շ<QI Yu F5YN54ӵcxΓe}YqQώE! #|g4s]kv sA}N2{vyEoAhaXi9wӮ_5͢ӟ;E6RAvC&0ø!בKNW~Med@&ۣxxn Jv(;= Vjub(3EZ^ _uQ=Ld7&4b͛ Ixblj`XtԶR Y ̊,p(j}YȜt@M@Y )ܱJ|f9_"FR!k6CՊۑT$ {;gdFH4jz!Jhd{\aqSWam^Gj =5XXFAKЧ}x~2Ð:Ra/fSB7e'2ZO8c9W/-穾[u~ E ~aK;uY,CuKH*Z`d/ ő)]!Ja؟WIa}ֽEߐ: uϣ P+G7yGEY*`Þ Ai44;L%K<:pϨ1(T.S4-ƖRcꮝ|l% c_ `O;gPsu4s(96IaQ_5ZRU p;fgEOXf62D+ALIhbᑿH,@Z{vM#aO1$ ?D_*ou9ch|=Qs=qyvI?mt-&wO=W/^lpfNfָ |u=F4jǽ aOh)?uavM9[y_BoCΘBImǤeKvԍ-K8ԛN ~FCAPLT9ş HV|V_lĂΫoZSbAǽsA‚~ q@˟E]HDPa}HXJ Ğ}פNJH|'EMɮϵVVn*T0lg_7%a{)EC=1H=hJ#B%" E 8,G5̊X>3'}Αֲ6%&gӝFf͝l}JɪiB2XF*~a7T5"mSP֟pW y9r"ۂk87+mk\#o!ENX+z{'KG%IK"FxZ(m28.F_^Eot);(ŋ_֕AͲ.C`xpxEBs!mà$]]wOO;U~1p4{5%-dYQҢeY.a(Acg5R;jLCk*0P2^ ~Fe V p`K{^ /:Ujt~?\)) QϴhW%ǂ,_#} 4h7~cTunIspohLZFj ^@8wVY;1wpDt*Wb2k"vu25˕t~&ė#5l&,f('Ms? BdR7|p(Ǒ(D`h^u>Ҕ][9 ud&Ug5ْ/b]'4v]]V(2A1#4.._̨*,`c`M㡬㭀HL&u~j8р.Z9jQ>T՘PSAT67ukH0H#ѩw4 ;Љ`qj a$[Ntӕ$J37O+<.`Z=E KSLJԷ