libpmemlog-devel-1.9-3.3.1 >  A aw#+p9|>1gWM DovI%*-SOh)`^`)- !(^ V 1d@ E#'^o$K; )xɟ THފНѦ%c}];zIF ,MU/Tc{x7: {n І6T 2F4ՔWX5 5!$~\a慝ܙk۾ȋp>G?Gd  cdhpt  0 > L h / h@  ' (b8l9: (FCwGCHCICXCYC\C]D ^DrbDcEbdEeEfElEuFvFwFxFyGzGGGGGClibpmemlog-devel1.93.3.1Development files for the Persistent Memory Resident Log File libraryThe libpmemlog library provides a pmem-resident log file. This library is provided for cases requiring an append-mostly file to record variable length entries. Most developers will find higher level libraries like libpmemobj to be more generally useful.aw"sheep93ISUSE Linux Enterprise 15SUSE LLC BSD-3-Clausehttps://www.suse.com/Development/Libraries/C and C++http://pmem.io/pmdk/linuxx86_64-`A^waw"aw"aw"aw"aw"aw"3164a51619337338bbd20558991d1c781f3f5393e70bf681814e8990261ee710405da7012c8b276a616189105fddbdb89cf62638e120aa5995b50d8a96d2f09bd692faeef6138214e082d6096173222c0599ad9ff13b3eebee4e32e4fc3eb8e0libpmemlog.so.1libpmemlog.so.1libpmemlog.so.1.0.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootpmdk-1.9-3.3.1.src.rpmlibpmemlog-devellibpmemlog-devel(x86-64)pkgconfig(libpmemlog)@@@@@@@@@@@@@@@@@@@@@@@@@@@    /usr/bin/pkg-configlibc.so.6()(64bit)libc.so.6(GLIBC_2.10)(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.2)(64bit)libc.so.6(GLIBC_2.3.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.7)(64bit)libdaxctl.so.1()(64bit)libdaxctl.so.1(LIBDAXCTL_2)(64bit)libndctl.so.6()(64bit)libndctl.so.6(LIBNDCTL_1)(64bit)libndctl.so.6(LIBNDCTL_18)(64bit)libndctl.so.6(LIBNDCTL_3)(64bit)libpmem.so.1()(64bit)libpmem.so.1(LIBPMEM_1.0)(64bit)libpmemlog1libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libpthread.so.0(GLIBC_2.3.2)(64bit)libpthread.so.0(GLIBC_2.3.4)(64bit)pkgconfig(libdaxctl)pkgconfig(libndctl)pkgconfig(libpmem)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.93.0.4-14.6.0-14.0-15.2-14.14.3ama_*@^E:@]n\@\\@\O[@[@[s[Zc/@ZB9ZB9YYm@YTXDX~@X~@XCW~D@WoWKVV$@Uchristian.voegl@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.commliska@suse.czjengelh@inai.denmoreychaisemartin@suse.comjengelh@inai.deopensuse-packaging@opensuse.orgjengelh@inai.dejengelh@inai.denmoreychaisemartin@suse.comjengelh@inai.denmoreychaisemartin@suse.comjengelh@inai.dejengelh@inai.dejengelh@inai.dejthumshirn@suse.comjthumshirn@suse.comjthumshirn@suse.comkrzysztof.czurylo@intel.comjthumshirn@suse.comjthumshirn@suse.comjthumshirn@suse.comjthumshirn@suse.com- Added pmdk-1.9-fix-missing-sfence.patch from commit 55ec1b24ac89371e1dd0544a17662c738075041e to fix a data corruption on power failure (bsc#1191339)- Update to PMDK 1.9 - Switches the default instruction set for memcpy, memmove and memset implementations on x86 to AVX512, and introduces numerous performance improvements for those operations on AVX and SSE2 fallback paths. - Optimizes transactional allocations in libpmemobj by avoiding one extraneous cache miss and reducing the amount of work required to perform a reservation. - Introduces a new API in libpmemobj, pmemobj_tx_set_failure_behavior, that enables the application to control the behavior of aborting transactions. - Stabilizes support for ppc64. - pmem: mem[cpy|set] optimization when eADR is available - obj: detect msync failures in non-pmem variants of mem[cpy|move|set] - Add patches to fix compilation against libfabric: - examples-rpmem-add-missing-lfabric-flag.patch to fix examples linkage errors - common-fix-LIBFABRIC-flags.patch to fix daemons/tools linkage errors- Update to PMDK 1.8 - Introduces new API in libpmemobj for user-assisted defragmentation (see pmemobj_defrag man page for details). - Introduces experimental support for PPC64LE architecture. - Introduces new flag in libpmemobj for opting-out of transaction aborts on failure (POBJ_TX_NO_ABORT), along with new variants of existing APIs that didn't accept flags (pmemobj_tx_xfree, pmemobj_tx_xpublish, - pmemobj_tx_xlock, pmemobj_tx_xlog_append_buffer, pmemobj_tx_xstrdup, pmemobj_tx_xwcsdup). - Moves out libvmem and libvmmalloc to the new repository (https://github.com/pmem/vmem). - obj: introduce new statistics useful for defrag - obj: introduce transient/persistent statistics enabling - obj: introduce pmemobj_tx_(set/get)_user_data funcs - obj: introduce pmemobj_(set/get)_user_data funcs - obj: disable workaround for offsetof() since VS 15.5 in public header - common: drop support for libndctl < 63 on Linux - pool: rename -N --no-exec to -d --dry-run - Add gen-doc.sh to pregenerate documentation in pregen-doc.tgz and avoid adding a build dependency to pandoc- Update to PMDK 1.7 (jsc#SLE-9886) - Introduces new APIs in libpmemobj for managing space used by transactions. (see pmemobj_tx_log_append_buffer man page for details) - Introduces new APIs in librpmem, splitting rpmem_persist into rpmem_flush and rpmem_drain, allowing applications to use the flush + drain model already known from libpmem. (libpmemobj does not use this feature yet) - Optimizes large libpmemobj transactions by significantly reducing the amount of memory modified at the commit phase. - Optimizes tracking of libpmemobj reservations. - Adds new flags for libpmemobj's pmemobj_tx_xadd_range[_direct] API: POBJ_XADD_NO_SNAPSHOT and POBJ_XADD_ASSUME_INITIALIZED, allowing applications to optimize how memory is tracked by the library. - To support some of the above changes the libpmemobj on-media layout had to be changed, which means that old pools have to be converted using pmdk-convert >= 1.7.- Disable Werror to deal with a new GCC 9 warning.- Update to PMDK 1.6 (jsc#SLE-5400) - See ChangeLog for details- Disable LTO (boo#1133276).- Restore pmdk-tools package- Update to PMDK 1.5 (FATE#326234) * New features: * common: unsafe shutdown detection (SDS) * common: detection and repair of uncorrectable memory errors (bad blocks) * pool: new "feature" subcommand for enabling and disabling detection of unsafe shutdown and uncorrectable memory errors * common: auto flush detection on Windows (on Linux since 1.4) * pmreorder: new tool for verification of persistent memory algorithms * obj: new on media layout * pmem/obj: new flexible memcpy|memmove|memset API * obj: new flushing APIs: pmemobj_xpersist, pmemobj_xflush (PMEMOBJ_F_RELAXED) * rpmem: new flag RPMEM_PERSIST_RELAXED for rpmem_persist * obj: lazily initialized volatile variables (pmemobj_volatile) (EXPERIMENTAL) * obj: allocation classes with alignment * obj: new action APIs: pmemobj_defer_free, POBJ_XRESERVE_NEW, POBJ_XRESERVE_ALLOC * blk/log: new "ctl" API * Optimizations: * obj: major performance improvements for AEP NVDIMMs * obj: better space utilization for small allocations * common: call msync only on one page for deep drain * Other changes: * The libpmemcto library has been removed * obj: remove actions limit * common: new dependency on libndctl * pmempool: the "convert" subcommand is now a wrapper around pmdk-convert * C++ bindings have been split off to a separate project (libpmemobj-cpp) * Bug fixes: * obj: fix type numbers for pmemobj_list_insert_new * pmem: fix inconsistency in pmem_is_pmem * daxio: fix checking and adjusting length- Update to new upstream release 1.4.2 * common: support for concatenated Device-DAX devices with 2M/1G alignment * pmem: add support for "deep flush" operation * common: add experimental support for aarch64 - Split development documentation into its own package so it does not always get installed for the build service.- Update to version 1.4 (FATE#325145): - build-fix.patch * doc: update ChangeLog for 1.4 release * common: SRCVERSION for out of git tree builds * doc: mark experimental APIs in man pages * doc: rephrase paragraphs mentioning eADR * doc: update man page version numbers * doc: automatic master docs update * doc: update README- Update descriptions from NVML to PMDK.- Adjust Obsoletes/Provides to exact version- Upstream project was renamed to PMDK. - Rename nvml and nvml-tools RPMs to pmdk and pmdk-tools - Update to version 1.3.1 - Bug fixes: - rpmem: fix issues reported by Coverity - rpmem: fix read error handling - rpmem: add fip monitor - test: add rpmemd termination handling test - cpp: fix pop.persist function in obj_cpp_ptr - rpmem: return failure for a failed allocation - rpmem: fix potential memory leak - common: fix available rm options msg - pool: fix pmempool_get_max_size - obj: fix potential deadlock during realloc - obj: initialize TLS data - rpmem: fix cleanup if fork() failed - obj: fix bogus OOM after exhausting first zone- Fix RPM groups- Update to upstream version 1.3 (FATE#322653) This release introduces some useful features and optimizations in libpmemobj. Most of them are experimental and controlled by the new pmemobj_ctl APIs. For details, please check the feature requests identified by the issue numbers listed next to the items below. Other important changes are related to performance tuning and stabilization of librpmem library, which is used by libpmemobj to get remote access to persistent memory and to provide basic data replication over RDMA. The librpmem is still considered experimental. New features: - common: add support for concatenated DAX Devices - common: add Unicode support on Windows - common: add long path support on Windows - common: add NVML installer for Windows - pmem: make pmem_is_pmem() true for Device DAX only - obj: add pmemobj_wcsdup()/pmemobj_tx_wcsdup() APIs - obj: export non-inlined pmemobj_direct() - obj: add PMEMOBJ_NLANES env variable - cpp: introduce the allocator - cpp: add wstring version of C++ entry points - vmem: add vmem_wcsdup() API entry - pool: add pmempool_rm() function (#307) - pool: add --force flag for create command (#529) - benchmark: add a minimal execution time option - benchmark: add thread affinity option - benchmark: print 99% and 99.9% percentiles - doc: separate Linux/Windows version of web-based man pages Optimizations: - obj: cache _pobj_cached_pool in pmemobj_direct() - obj: optimize thread utilization of buckets - obj: stop grabbing a lock when querying pool ptr - rpmem: use multiple endpoints Bug fixes: - common: fix issues reported by static code analyzers - pmem: fix mmap() implementation on Windows - pmem: fix mapping addr/length alignment on Windows - pmem: fix PMEM_MMAP_HINT implementation on Windows - pmem: fix pmem_is_pmem() on invalid memory ranges - pmem: fix wrong is_pmem returned by pmem_map_file() - pmem: fix mprotect() for private mappings on Windows - pmem: modify pmem_is_pmem() behavior for len==0 - obj: add failsafe to prevent allocs in constructor - cpp: fix swap implementation - cpp: fix sync primitives' constructors - cpp: fix wrong pointer type in the allocator - cpp: return persistent_ptr::swap to being public - pool: treat invalid answer as 'n' - pool: unify flags value for dry run - pool: transform for remote replicas - rpmem: persistency method detection - benchmark: fix time measurement - Prevent debug libraries from providing symbols- Update to new upstream release 1.2.3 * pmempool: fix mapping type in pool_params_parse- Manpages do not belong into the shlib package- Run fdupes- Update to upstream version 1.2.1 (FATE#321727) This NVML release changes the behavior of pmem_is_pmem() on Linux. The pmem_is_pmem() function will now return true only if the entire range is mapped directly from Device DAX (/dev/daxX.Y) without an intervening file system, and only if the corresponding file mapping was created with pmem_map_file(). See libpmem(3) for details.- Update to upstream version 1.2 (FATE#321727) + build-fix.patch - 0001-libpmemblk-cast-translation-entry-to-uint64_t-when-calculating-data-offset.patch * Add Device DAX support, providing that "optimized flush" mechanism defined in SNIA NVM Programming Model can safely be used, even if PMEM-aware file system supporting that model is not available, or if the user does not want to use the file system for some reason. * Add a package for libpmemobj C++ bindings. C++ API is no longer considered experimental. Web-based documentation for C++ API is available on http://pmem.io. * Add "sync" and "transform" commands to pmempool utility. The "sync" command allows to recover missing or corrupted part(s) of a pool set from a healthy replica, while the "transform" command is a convenient way for modifying the structure of an existing pool set, i.e. by adding or removing replicas. * Add experimental support for remote access to persistent memory and basic remote data replication over RDMA (librpmem). Experimental support for remote replicas is also provided by libpmemobj library. Note: This is one not packaged for SUSE yet.- Fix 32 Bit overflow in resulting in flying writes (bsc#986657) + 0001-libpmemblk-cast-translation-entry-to-uint64_t-when-calculating-data-offset.patch- Update to upstream version 1.1 (FATE#319673) * A new version of libpmemobj pool layout is introduced. * Internal undo log structure has been modified to improve performance of pmemobj transactions. * Memory pools created with older versions of the libpmemobj library must be converted to the new format using "pmempool convert" command. See pmempool-convert(1) for details. * A new "libpmempool" library is available, providing support for off-line pool management and diagnostics. Initially, it provides only "check" and "repair" operations for log and blk memory pools, and for BTT devices. * pmem: deprecate PCOMMIT * blk: match BTT Flog initialization with Linux NVDIMM BTT * pmem: defer pmem_is_pmem() initialization * cpp: clarify polymorphism in persistent_ptr * obj: let the "before" flag be any non-zero value * obj: fix compare array pptr to nullptr * log/blk: set errno if replica section is specified - Remove libuuid dependency - Update link to source tarball (x.y.tar.gz => nvml-x.y.tar.gz) - Add libpmempool subpackage - Add new BuildRequires: pkg-config, glibc-devel- Version 1.0 The API of six libraries (libpmem, libpmemblk, libpmemlog, libpmemobj, libvmem, libvmmalloc) is complete and stable. The on-media layout of persistent memory pools will be maintained from this point, and if changed it will be backward compatible. Man pages are all complete. This release has been validated to "Production quality". For the purpose of new features planned for next releases of NVML there have been some API modifications made: - pmem: pmem_map replaced with pmem_map_file - log/blk: 'off_t' substituted with 'long long' - obj: type numbers extended to 64-bit - obj: new entry points and macros added: pmemobj_tx_errno, pmemobj_tx_lock, pmemobj_mutex_timedlock, TX_ADD_DIRECT, TX_ADD_FIELD_DIRECT, TX_SET_DIRECT Other key changes since version 0.4 include: - common: updated/fixed installation scripts - common: eliminated dependency on libuuid - pmem: CPU features/ISA detection using CPUID - obj: improved error handling - obj: atomic allocation fails if constructor returns error - obj: multiple performance optimizations - obj: object store refactoring - obj: additional examples and benchmarks This release also introduces a prototype implementation of C++ bindings for libpmemobj. Note that C++ API is still experimental and should not be used in production environments.- Update to upstream version 0.4 This NVML version primarily focuses on improving code quality and reliability. In addition to a couple of bug fixes, the changes include: - benchmarks for libpmemobj, libpmemblk and libvmem - additional pmemobj tests and examples - pool mapping address randomization - added pmempool "rm" command - eliminated libpmem dependency on libpthread - enabled extra warnings - minor performance improvements Man pages are all complete. This release is considered "Beta quality" by the team, having been thoroughly validated, including significant performance analysis. The pmempool command does not yet support "check" and "repair" operations for pmemobj type pools.- Update to upstream version 0.3 NVML is now feature complete, adding support for: - pool sets - pmemobj local replication (active/passive) - experimental valgrind support - pmempool support for all pool types Man pages are all complete. This release is considered "Alpha quality" by the team, having gone through significant validation but only some performance analysis at this point.- Initial packaging for SUSE (version 0.2)sheep93 16351976411.9-3.3.11.9-3.3.11.9libpmemlog.hlibpmemlog.solibpmemlog.pcpmdk_debuglibpmemlog.solibpmemlog.so.1libpmemlog.so.1.0.0/usr/include//usr/lib64//usr/lib64/pkgconfig//usr/lib64/pmdk_debug/-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:21602/SUSE_SLE-15-SP3_Update/92d1b10bf99e6cea341e982ecedd9df0-pmdk.SUSE_SLE-15-SP3_Updatecpioxz5x86_64-suse-linuxC source, ASCII textpkgconfig filedirectoryELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=893fd4e17ec31e44a1ac192251b69f885a409214, strippedPRRRRR RRRRR RRRRR R RRRRRRRRR RR/Mm3>x`.utf-84e12a2968903a12acdd4ab4d279c1f796a6571a5033330c221dd0bc7f2e4c9a8? 7zXZ !t/D] crv(vX0hJlp[)o g*]V}s륦Hk{wzUE y8`BnAMb^<U賺Ob|Xe* u)cTrK>=VX |'=E 6'E/a{J{b({}O孖ԛgj3QKO84BĻvvf5  ׀*͝EŠㅩl(5FF(QNdMBsڃ۱t''iR{d, #ڂ3bi;֡gqŸ;&#ͱLY 9Ӭn/`즢9̅ʋH5oB'2" v ‰S.9g ,uJIZML~ҫ*P' [\̆)>49avIo5f{ YCպ aWQ⁁14 \llۭ @ i~W3A4L#q(-a{-U"ZY-D/dKY;YOu&¤qM|Af;'{Ѐ+5q$EݾG/BF:䘈 tQFZ,NF ͑'Iݜxl쳹lB 5οMYLHx纁7tL ɾ\ÕA'0J*eReݍ?$W|K * +/lc?v4v)x#/XO>J^2~V:T=7uWΏH搔:p_wk}w:m)9h Oz( ;WhB+"3Af-z$`+7 _Rc}@h{9l=7K PoX=H4@ !$h #˔ 3^TU|<q0u}t>qͼtqͧ/D MW+'H3moakCOQV?2C)@x?)o4O;'B!g.tQ6;>,6Jg!BA7ԡ~Qp۠h/wsp _Joe6=>ɸ;g<;ur᧯/^#$gF)%(ޢ÷T^vԔq[*K j.ѯ⎉o +%uIX Cč/4 ng cG Pj/SE0 Q}Ňc"㻖R?|OQ#,e(H筀x^n袩H>.nN*ǕkukL}oVfXl΄wǽ76fEë gyqN $'~|=D<4Ef5.uC'(yKnl?,a,%9Ά Fk5R'GKuuJn)W9!!?`B~-(jMX%!WOb-tNYvkjhjѡ>R;9HYbĵ֎C 2̆Dx'Z-#_kP("nIA)׶> *K8tR6$v\ly4i:@0$_F‚)zJd4ZZO#DWpReԼHUOA ){~.G _xY8#9o5Ԣ1{;}7`zi_oGR9NG4w̱mn5(@!oS0G#cl6POZ~&9ü "m_5=wT[eaE97fFLL\N]3vE:}ʒ)&cR6R2*=j!yߑwѣku @LR*'@3gUIkc.y8 AIbi4E/Ӵ79mTF;9y_rƝ堶?`4Vl͓ $14RĘ]t:y6HkI aoRNpl_?7a_Q,o3 i(Ù%)0hZ23oɹniyb#? U$O CFmq$ِlPd0Q^+݉3f_J)qđhZ}tPp E9u5iS'6KwR{TuaOX(2#Jq2E?h=eljUѧTI%6zB:PvxC5 mYm;;Bf3U޿ġ>kcZXmoj?&dro~2r5<ŻsW ? )t+}'%AI ZD-ˎUOY։LSK`uF06:XY?ٌ*& =j+v ^7˂0M(Πnɫ^3A{7^߃ ަV1Ќ^T )c#Se# ."}뽯>߃a~anK*1 d2S`8B}Ζ;$:~Y{%L|0L)([fYYR=xtݎ5v2=\c)Z/Xu}ښ#t`27t^tT6e M/%sRγ}]j\e\NMxa ɈHxGyVJ.]ovөV$Xgh~0F@@8[_H4S_1K 4m*\F:sTlK>k࣯jn;r!B^ŅUS8@zho'3ևR{C@1H:mfwxj&}2~ W.B|lXδgq3{}˦Jy#nRhwzo4#ݘGa^cVT60վ̆X''kPҔ&(/ #{WR_Mv.lCOq:nADL+xbLB+၄@g^o" **Q^wVz+{E=ɉ,_B>Fn:x)O'k xbe/yMzw~C2^PՠF/jY|Gx^/1 Xrx CmBU`H.z@riI HW+EOcc Z}0f(yR>V}G2++ugGVFMF]fH,)LLgB;Ր\sZv'uͷz >\ׄ7h]?KĖGJ=/H;l@ "ORx# V# *FӦǴ}BdK,[ҥbҝ^vWd]@p)"&l:-@E'q)1э=$SYae ?𓗀8ŕkBC20;ItӸkrM8֢uUү6y*J,W èJw25_,DQDtX}Q`ZBĕmE؜e"{C B>Ԯ Y* uԼ9#5Fn1k dƺk#V nԡ/n\L̲KmVow+W m~L2X=Sv0}e?ď (B0X-]JQ|J@U1( 3n;;G_(_ ~=P}ZujT!檀F-inf0Y{X>`4f͋OeԷ)\O,Ω̠ x˪je{B5f"/SOUGC؋٩`lK_DOdm"{i3K_"y[gS⮗W%h/ԟA=q}.VRN;ux`bo j>sxNwNpgHZ˅Q! KBS?u!{j@IUK+v., lPj鶔1S˘R&\ Tr f06--=ck:} %ۺy(5}K+Tdź BZ[,'4 X|?gwlpG28Q@Tĸ5 :t {e;G$=ly/ětc3inub{:Lkqi[+mI1u3δ0]:~`3l#DmX;!Ecg?l4fRl!o;^t?~8Q@ }@Ptgsq:ZP2| >u( ^Bd ᑻCYZT@"Z 6 v2t Ep\c `lW+0AV$C% `x3wm0`nQ1oR:QV.Zm+AɅC#4nr,nl%t(p6[QeAr+.&oXh!B]2IʰF`7@pBG8B' s⭇MK۞Oz 6HeeG@Ur,5C {|UmOZp9ѝ=f dPDo@" 3e=Es3f(LD`׭Qٹe,4Q0r7T'La`l15 YzzPn&). w" -|T';aOUi#-}0A8:]phyL_.i=eB܏ D,Y>]\0*A0>W)*0~L5K<]:>sRTcb2isuڎþ)#ȇ}nCnW`߄d4uIlVg})bP7gR Sò[5B.9 >`ֶqC-)Ⓑ>n=[?6Gx$/kR֊xw﬌ѥj+ev4jO*um]OCwE#v<0|~ p2488ZȐ˞۶ـo~R,W'肤֗(YQ}{ϾRcΛuЋ͸E>7؟`s4s]LAZx{Z@'Sm=4.]CJ 'E=fҠJ&ʴx*KA4'.p:G_rg<|5 Bj.N:8/snHYpGf{Osߡa=!q܍OWa4ug0wJ$ Y8'B~DO<*`?)'- D pvbfVky!~ ,IRehY)V*/. a_5˗+zԘt56g\&'?G[8ggUȦRVȈRÆ?}#6\"oqL A+UQG'&Ӎ㮱;KTiZuɞx!_ձؐ ޏ CBqm$EuFIÌ݋v^|Gu9ӓƢs2sOӕ ^8NW3IV%Y%eϸ} 8D pmheWl *2 ie~׎[HqfWB;uk6zFl$u[ڼ~;HRppWl  PO:8/]s'13]8)ZQrnU (e=jXko$~?gZ?[x5\ ^@rfF͙TLhڻ ̺.>T +Ѱ"i}\w|{)z~՜_$#}O,<hޠe K/h CVǚ$'phl1"t<&>s>pِFKD ,4mzT JqhiqpfW@rf 7l/s!ad|`KLX]DÐk]Bikp3-AUPfȬR5 dA4%|:lؒ pT|?""cLLԵY?'\ _I٢U $9 6sIeHpR&Lа%,T(4ue$"9J>NH OY%)L<8 !BtN1sTt(5!f9$gJaVBfܥ!E ^]M3ڵB(҃8UgiEr>d6;LSRb'fknL$H F 7@q "^4M4\!}LeےZbH TжYh#an 픲 9>_f, d7 lq Eۡ*A~cp6"TU鐻U WY,({+D5l~HtDžFlXY߹Pv5훻IE'Aȧ!"CU/iWδ=kY$1:o$[J6%msq(Eޛ7pX3xOA8F'v?KHǦKwS-5\p4Vsrg:t2*%| }]`azsՄ ՐLH+pss됏械IF1m TGi6TA10={k<-*C(XIe9$K)D*kA^X؂S*̬RUOIÐjYwHɮ}bz;ykr #"5,׶rd-$buu@01Zs9^itzvLGWa._XC0x q9'k{X 5RC5"E`ͷf!/'2($\B$2KPo M Ğ !9d;G[#2&%$'R9=vbȡI@ir,[7L'z,*Q"qvד%Yq#b.X2z!Fy {o ,|^ | MYְ, 6E8LVB[`Ƶ֛kD4sk#L%6ױӠY*TP1 X=c ZY*P4U86j->HYZ|G+]x,[(dzKrOJW:UmiL{dcl۔ID{>(}Lz6pBOKgmFK$P͉|)EL%b`8Q 46UIM o쐏YZrKg<:h2M*j-8O]8~naM 2`?[*p.UHU+c ) ]̝Ɛh w' F7DCү) `K* e1;ǬTXv-|_=a MkJAV}]RwrMXV/D[sF`2&I`+>H0]vV3̣~׬ˆMI]m%8EP=4Gw"kZm3ni΀X # -j1`[[ i@ ]3h +:5JA޾{`(d%h lk^%֑t?dtV"1֢GgPeѓ+C@=&9m8'MW}34ظFÓwi{6?#R!_v},MT)A\W?o:7=VU@To[%E]| J&ЉƤ;\$r'y4;S"x%=,_'w3! 0".WhӛZI3oxW?5r \HvPiCP#4aydmII8n8_2\xQZ+;Arɸ;(aoĆA#fy#;6"{ÝY F={Nꪪg42@˫U5ݠ!>=.#s5ofoNJբԹ„wC ɪXR !()~ǟr~)ņEД>t%hd$:(&ڱ%LQLd͎ o!7:8MÃbT 8903{O2[Bu b̯JhKW9fP* o"@!?nmɂ' >Gmʫ\T7?E EmvEj^$ߡqYp2o@3u,7£fph9q;:{ cڹcQO$6xȐ.ަnH !u忘rGtpaE--%r*6}.xPpPḍĝCEfOrEٟgǤI$4gGj}2X\ս#4Vy/-%oby>0$p? w`gGSpJJݸa𷼦)85E ,?@S~L4S:TgRBOֺw,䷽$v..5dOUTRs8KC kf=%FvJh\aHYlc壄bêFݽ+P) v iXT9 ʦ\jZ:GRH/s^N]eV}A5eFhDK{>M@u!SOHx%3G*Gp| y^[Cpq2n lb?=ek)s8'|lU_HY-Zqg a!m\Yޢ9MGlaҚ)W#\pErtag_CvCZաiSpj+ҔS7["eێLȁ6M1h<$&uLW8jH C ѿbXC>,%e]<[&pq"e1)% uS>MUc fG)G֭M<:]fl`-$5>$lRswj&x5]J? 4MRha7 ;]F ](Y9 q3 Ru#ny:_Ě .'oHrJIc>'ǐNYE dG_qP(tl\cQ `c ?Gï)z?faȍg`SߎI=SL6о" C rymc}a#sy-bZ8VIk"Z#aGy&GS.M+TcK otVh42R| 3 s1lj:tVw%zaκ&KJ!QsuyVu fYWbjS|"8 @B (f&8]E807ȶx -R_5ޅ#5:c' cð$Wrs0@?,&0f`j .k2cK EGX[&@i h w&"];f_x4w3J]hԷ<Ζuoόa:H.jnxڼY==.A6v\Ox6xttZڃNeǵ[ңǏM/&[5ФK3O3qsp'Q]6ZTUsIW`B F8r7Ы4A~2ogs9ɺSa'5xM5wD5/0U:wM|ST=P/4;xp1و/-Kja+60C`Ň;FjX'Ue&|=$8"X \ 7(LEzrqL nnУg)r;}jH\y; 첛\q^ឡ!.EtˏG&Nifȭ~^c]\%zr.i`c#G|G堜*F$Rе* 5_g4iG ͚eW(R ġVbO6Y9:&On3ĵy1XbGc4j{Tk͜[1Tg EI#!P|E6}C1=:Q,) rnmK<}O83͐@03lX!o( iϭ;=n*`me7ޖwJ|,-I  eQ#T4%ߣhzYJynfѠ(竍0Ծ3 j_-2(cUa&?GL',pRYFXY_4&6KL7מ|LlRiZSBMmT/Ԭ NfjFp!Iy k >/ b=g?u%V1ّQMv]}|&C+mf0r(ָT&4z(!N8Q*ܴ@ӓ)oQd7pz#3Jq,(Zf>~;c3,UI-qAgıaP Uʏk[<($-BVF=vI2>L ~Wc`bv' d#2il9ĵp^dIX8|-}}'ϡ fUBy%Lo'7PHg £!nn71 1qMj^ hqɶ.mC%6vB D|5FI6J/p{.4Z=:?)"~R%6r@mkh+tEZ0]J{y䂉>g5jopfp4F:-*>CIr<zՠ+m,<~?ME8dOGLL\Q͠|N0[#6'#O@${Á_cFgȭR'bxu^ "Z$oS7 ԐgA+L~{R`TA&I$V1'س,Dya{.0°҂ke[I'ig??w]aah6= /7Rc:tq>s8xk:*zOPX?'nV"qT$:2S4Fۣi_gڲ-+8ur1!H˙L7DdtYІ?*X[BCB:8 K,^=[J]*߽!|6 )Ccm,&QZ ڋ<U&LW(Ϊ fU͍gqA&5˸2]5~^R<1y&`4pBgԁRJ_2i5hjpG$6:Gw_qn6Dm m\ ]I.u%"OaO8y.ia8wߏC^Dl.&ܩ"r$fN2&ؽT֞Q}xlO =ZכPJ_IK)*sM:lF_1>&&uTA=4tH Eb՛n2wn4H%t:ܵ l/n_sxLs WAcgN`q. *Sb?d RJS6m\ܨW \ι=>OL _Pw"rpV-z2&I8J},0[> -ྚgcIegA)>PDՏ(3Y@,3YHuKFsCeg}_J&eqYlo6IOhs)+Z(r8ߵ  -2@9iGOB5hBcpzB 'G5qQ|&Y Pot^2oV`YܜhAk$nT=o+VuPN6)(B:NxzOL:'R.&H`Ɓ 8c90N)1bf꺋rkВ5 晷a1]3Rs\#fpp}+ ƊE݉lK7b;0lb&Fq(@r].44@G-'UgnܻX _6ali]$3p"5ú'!sc,;Lt {*FԘk3&FMU%ь辰>>B W!Q3E_ RV =RkOA/;JLRjG7ta7t2n7' =od|[)d]W_/ çb*VmC14OR먱\X&)(R.Tpck&qK?I锖Ƶ&y(:%M`vvvn܈'g:f&69; 6]V^ }+7Kh|lzYV./hwoHOK}2icm]eu C.{7x`|E"6w{䞦B&ܬI; oFQ~HMvwKpɓz)~m# k/8 =YFGݲ=&}>]@>IH]]l|2]CY"?DftQ/2B 'r ̓ ^/qr4Hk<<(Q%%Fhj =F x{㤥~=;GZ@2;qpq ֙gF?亡4ݺxp\יˊ]6uoxAQ>RF닡Q j#O j(j» wr=o B/z3 ; 43t)fv L{Jo 8zѩ'o tak; w_׾[μfrg&& P E5 X@]Vf΢3mSӴ)C~kqqǀ׭z_%_zH=Ǟ\ ,C ( s|P@hBvyM"vQXnt@`Ԕ,vU$n HFTa\dTfPJٰ{LLSW.ֺ*i*#VWrs0 t-Thڛx(by0o칰*9XKD:)8lLь1v3gTTi {S&Ka<™J=VDo9\__"B&SiXMq#֜\k⁝N*+ImV |*>8/n)pm.W}(^ C$:V>ǮGR K*eC*h`n1i 'fS]BG$WtϳI]Y?145c@L{x`N֩x/g5|N2Dg~o8B?]B2#e6혾~lDz~fѥk+kDZ.G۾kyy3k3 REm^E7:`SEBK~;ߴUOHO+c$d)=H^_lx#;=+SEL9t ?B>LJbԣ!m 1S^L(DحIJ+'~c3Ӷ|sm-xڲ[QvA [ǁ;l.ˡ zi’м+c-{hnޔD𾧸%@@bv ~$4_Bff7Qv+[D^WuY< ڠxM@s\0L~u'q15O<:- 1zpV#A͇48<+@r\#kGXYwe ,;ަ?8h |±};Xi mZ" P'6>m>ФMu4TCVI =os~6" OkCKPDg%U[)h})ӆB*](dxUR/_WV^o"W!WNQmǰ>ǝjG'/`\v= mߞy|4o!Vc:2WnHR*,ӻZbSe5\# $34h;C,~rn Vh.} 3 y3seI@-a+[ 0H$At!w {.`-Vvv@^lUYd.o$nMBi]WF’w[C 5!at%^,@ 76Uܒnw۞C] E5D<1}χ5vYڨZOxX;= A{6:Ek!j.J_O_/'ݼóHk1c!oBZR&@{tDm @}=%*E wBb$[!״?ЃoN-op쬬qRLwKPLiK%"8~V%SIٹP:xGf^m)r//ڂKYf>AcI$Bd?ڙ&'cYkd*72FVmvhN6k̗oCs'{ B X*^#.URɔKamo7|P?Y{2k5[p{ouˊ(h} ywh3ؒ Mi ݊o&.eޏqv.7Zَ{MUrIݿOrSI5TeUt~"Vmyyё XvV-:j61 -`+^ '5Cx:ng(/^)hU_wi 8=e84b iYfo!yLn)ݨeg_xӪϮZs㭭Ԓ$LXQ! ^\-жjjb 'qCeשYi/ ϖփ]\#.{g<yAFO0?o)vy G鋶1EmՇ 3Yna/˻ )^/BbߩBlڝү|Z!0x1 ӋM ?o6Ho2Aᆍ=??(` .҈3tMx%7ZMlc}ipE:3FK ++d*Yr(N3|}uWz3-v-$m_[%4st`^v׻Af䩚FDjTf({ABρ L7.<K| MNFڔP6I E'ddwg-_铣 Ճ,[ mOYj$緾 p?)\0x<6PaoƛsCgd9gG%r2 {-; pZ۳]C+7W7͝Z݆:tFNwh񄎂JeS̺,{1uS޻Ww"u:ҡ]MŅu̴Al=<}IA8y2iutwEd)0;Tu(R?[d/c.S}ѣE+NՊ(K%5Ww53^hOKVa4%Ǔ6*[YҰ7^i"QA\j Э@.0tq*羠 ~~ B։M2X؏pb&zAKx6#ISQWW׶G@8GB!J%ER ylk$C-Q5@Y=x`fNBt1bC7:M+zfcO EF&c6¥@NZ aJJh#]4i$FaH =rP>'<:#.\kѾR8'A``łU:!>| ]XTB}3i`CY.B7M#.@<kD ]Gg(yf~c2>;=if?O3PWQՏM,WBTߒ|L  s˸?yvM9.b˥k'bJS47 \},5,Oߗq4C14j@ԗHT6*Z"^:=:Q46:2'_.U JdVc |>9]F8dŲ ~VHZټ0z<]21XD+ɒqa B5^d@` [% %%f*8vw +^tb3(4ldz3  j%KZUmXVzZye>Q2{&)TOvPux>q^ ^G_Q=iubT.~#&%J638wCPޕ`< Ҥhs1H' *# >`%_Z3 }R su|qTo&*]a _e#:0dƜ*?b;: v@YM4If7P۟䢉tT(+6Js+LwD йUw rB^8zy/g38m3&1x %EЛ?=R?;}:f)*賗t1,gfd+ꊏFOx5ױ=و ֛-qJ̛R$mO6_(?lڿs6Km3BZNK=O%V7 #R|MelVr\Ldą o줋#e~f>F+q >[7O6CFBޔ -$'(>2u XK$Q;ӊgI!u}yF#4mm7I.zZOձ8"B`EoGZk?_j)]2wc3ILP眍K:H2A i7sL^Y{Lfkfp4O1GU7C7c37 bݔ.; $h+ىa0]g^4eP=%LxB]'W K )"qidLÇSy[hZ M+d B{_K@kD +b&=1 :1eO?k:!E`dŴV,IDX:5r;iL~ -H$w - UT,ì{xaFA9XmCuLoNll]}@ǹ׳Rq|BtՒ?É}?XC0p:} Q*ʶfrBb3!{cȈ7.΁WJVZOiF^U 2vYxA=8dA_.4y~|R tPBzІY,OmgM}K6:F򥝘l >Q 0>&&-43w8ZO#JR%+KyauQ, !kA?Ey\mn+ƌb^wyLn6%YW..WT׾J;+ks_~nX UF2BFx~5OL ѽyʐgt@Fx/v@lɸl+:"V ("Ban T"J8KR#)qTe]n^"Gڹ i? }|n6ձ6/B ɜdzO*Џ,&86-xAPv/Y/lQc,f\q&Yx VVy{N\ɢK}|6\)6"ӫHזK q"A3h$0Pu8X*E!hDBmϼi!#3A:3zA:sÛ+PkQ}?2!jo鍇"]S()t ZswR[6s,vCC`e Q]$;s8WdQSZ]e7_F7#vIG4ba֟@mVE>M읧VI .@%wQi0]}=9E `JI se]vK?"%{ /#Jm )(:HS^7k|,@.wY+ NDR}iAMn7,^30J8rT|&N?ɸ| me9rf5:Q1.xeޝ"1a9MȨ"+e&ťt176g9¥r2{ Ě!خy4 彤UR)c8Eoۨ+O?mYΕ/,F)Cl-ޘulWn$G9,5(0)77_]Ʌ""]#GصGRz[ש 1ܝO u+{ 0)gna keWtS,5c$#M&;v80Aha%Zq0ޟ褊&=lB(/ĭ~2pHh# BX a>Acp'~&"rm$cPgٸ38tmv@U\d$KQ ޾OiqGa@UC ~o"âW_<qб8ɱʗ="Ȁl8N6?U6p4=grt8&+)@,d2IAtTۨ 1ZQv4;zYfuR 2oy"1ڗi|èwY^X]'/ ZN7%]K-.Il WL 7Zt2 n݉FЋ=(z8؊"%( Y0 _nka(%Jz1tRn{Q[e7ve537Q?@m|PoMVuf>|+EQ2q,1 WϮ83כvlI泠8CzMHL<_^;Vx*ci8G Į9-r &25T2cgڮcdmL1 s4ɲFfN:Qs{߽R9߫ĮɄ+/Q2ҙ:/2`KUƣ'%.ULԇ]lxyUl͍|wyCb X+q~T\\轭>HK/ sIKYA˜]P z+c-kt\ tBBneI$u2-=q(zјcЁw ޣ4mxC jYJt d2O lKdɓA4'.R Ir?h5+໘g t,Uv+0VR37T[Z?> Ѓ^y."+T#_+^s!z߳ک )`<mge5v'#Յ4e= 0;o&ڌySUkOڳ$xr/)r`tT7pfw]׎Eě $Bx]~eDg帍rg EǵSE}~Η\5E?[Xa ?@^iTˤ*!Gd򯝓;[ 0^ @rLen$!+UTQ/Hp~U/afe^ՌP-.tt2;RGJ3D:3SFAiO[nR~WB3pV|[׽ܠ%ό jy&'(ݶyuZOK43=9'ZDA __19/{?nŅL þh@JwPf6_d}}S[m#rLd .;7͌u{1NϔNԚ&bW 'EXY4n|Q_U$`P(\.Zœw8ˆHz+rSoK2ѡ9UA4hG=| WG4 F,,ik~#`q (Is|kfq ekyW^Kw=nGa6 w2cQ4Fm;ҟFhʩׂe21Xl]|RvC1Hu J Y ̟BYxe٬6~S2?QcKJW-q|kBc >jRu^ \^&GAˆΡpbqyGj~b vJwW{T92Y3Zz"M~kJySڎ8 >Vt;8A{lI/uzy bwl;64>zH]HH-{sb:&YwlX?sms(^*1jmo_caTh0*vcbS#!"ӊ`yu8%i w3<DYQB`!wpDfg*G5pc^jcֳܱrJxoЛKI.)|qxl|mR] bf0+  ꗾ0 A$,lVήog.*S4NY$ū?!4 Ms-B{^A WXۓ.ZezDV1_,VUf:k K[0ajooCбi`)+z^oZQ(pQjR%݈zábPne-{hvd;H* F1,+4&[mҽXђ% dE_5J*ԲvHaJFH+=JgbؗzA[g '̣b(dCt`q[ '6b&k>jԙk)\58q"AYI#/775+MfwҷKk>*/ [)neL{t`ef7 *,{U\z  q("st2KeY]~ǪgU㒄#ؕk[h0މ0nQ[kKb >-ؓ>1>8k(=aFxLrhϙ*4e_BF{Z 'Q[+Jb߆jh(Qڒ8]Β$Gqn~ʼlog50 Sardb~6]X,a7ǎ .neHSK?=y+&ٻ’纮Þl>g"7 oRJ$8`' Vb> 0g?hJE+LJ3KV5FNߢ)ۂ_f#Kn@͘V8JKד~%QL~ciC,3̮-nin\/ /UKʊ/EZ bj=ځ@=̉Xe${.lk&Xk21nLn\- ; (vsv-&O("e~dCB(g#eIP=$5 \0:Nb]4PakdIn7Ҳkr +Ly]>}#wH;m8/%ܼ=`Usc`ࣵAˮ`RDm1&Pm-f,DkRsat4Ʌq;!z6E;==jM]C,3Lwc]c8)%@re:]en 9X5$_L u3 uH+=g&nt_,٧lCN+n:zL0+{ Wcod'wpn&B|ut *yDO+I5'%NĖz Wھ3ҝY P75r|:dU?4wx&彤pfV]sO"c3STɜ&!.peAjjaO[0^UjKlX S/2u?U0u1gʱ8R:Q n&'{o; ?5+Ӽ Jz`2 ')D1g $Td=hF(>OlK`t#oUv*dž{AĹj/ȭ3׋\l Wf*[bEKhZLMUF` =BWgYE i?IȤS0*zo`IlCRB`$pn3[ui{n.XݻӅKG̍G/Z,ކRx$N@ɤ$gr8ZI[X ߫# ԓ%ޞyv;: AZ+TlSo!^L-'/&uQ@$_ ~dq]TO_=|P.pBJdH$ؘ9c[w ij}_#E؋xՉe[w?R3]BߏCֳj́UKK:FGʞYG^bej%i@PrVzIi_a2)Ҡr-AVH͒bJ!@;YNUءDW{DzX5Ox~ _MtKe,9r)Ή)pI|5~30 L -Myw3> _˷k**ͽ4"w19!ұ@oSGzkG8N&m}ʡ LD-N`_ַwg c˨?GH/Yۃ~5ZlMW3M9m DX'RnڦWwu2QΫkaϜq24{G;wxCBNRP!//I}Y~\gd5BA!*I3r4H ͝$, _ **r4 `,AnV)&m+ݦ }eA&JR /^_O)e1t 5IY߅FadW8.zEnЁ_0.h; I~ ?mGuqQ@I^ΣI$}C&̅Iϲë$[imKu#҇ǔIO4nW v(5/6nNp9텮?(!Sq6gςW$d#u)ԀͨRTE}&=O*^|7ċcm)(Oaj@$Dx7fB"0c'3xO'b~y[9:x$73k U͝s0QҺ_دn,S̝7P3i.7`^%}H}ŭtHR;µ:8YrEA>RFRN HSV65'VC}M-/S]rh!De$X-2"˵<.MEZD)ȏ]2Mgv0=Otd+_ʎ#6禑1.mcBNa1\W- '-\LEw>nny%<z9/  wNv=id_<[%˿vPi֧%BkBNk3u @hf09+gY_kwmfM<-pQKm5v^Z5Xh]Bդ>[,Ʌ'nM]Qr`[\ Eì?:$ L0f#"7VMNMI ªLްrjJO?#{*븶E97QZija\u ϣʝpCgl>g^)#ca?x-_1i:|݈ԛ6dJ9E9~ZげLmا0I#2 Aa$aC,3젺deb3_nVtb$0Zր#u|K^"as[*iԳYOM&gn›jW3)d@!rW]fӤY7gjN&4vdQO+2 XZ4ޑYCI'Oȯԙe߯;xFիd&1?15\\tBz2%K/UNHI= |;F>#}R[cK!ŴDlvw/A\6⮟K[nYjP}f@L uwC?{eϯ_y 6ik $4XZ1pd(i; D*E6J g'jBd82Ҹӆ̂R8=FBw;siu /PAY[Sks2-nw A2Ka"92+n7UH >j W䗗z{Jtչggd&+R-X I]gpcXES/dF@}MRJ6s O&*#JATbFaboqxx`l̬L;a&l Ǻh,~$ ߖo_ 6bmXiR| HYlgo<>es|q5'8[U·b|dD}8P mL/~nw;@ZH( %N"4∇ GzX0$S>jp5≣O7oNB/mϡl(գAQC)F- _?|tP xSlKrj@sT!ͨ%f'q-Mϯ5& ~eX-)\v!Љ#pk&Q,;~$M@uq 랿 ugæm6 tsiD{꾰l*-Vuڨ6R#x-ωO=U66λvDD Tq[@I!^Z ;rl!2?8lOpDt 2E1jJU{m@="4;OQUarT3cWoGgLS⡘#}6#% ೝ``[p5$]1/ēvȑ hqBm`ۉa͞} 6pbiYy,_D< CڅcPwk!GbHyY鸧xIuQ:J5՟q@dcyɲN<`Y̋@LޮJzD&4"DI6 j D\÷$gTфUe֘Y#.0#n"es:'&l j]@.ΫŸ+ 9O2k`+LVO|&VrU'b *&WH_sz(bDΑP.+{NM즿ݩGT nt?߆9sh)Ȍv0>'L.r\I~ieδ#l d=[Lj5TWb7纃č^ƢsJ9FaĐ|F<&It!N tyXSNDU%.hqА>:xgȬn}1銢:fYo&0K"wЎBɾ2H^Q%f@MX|uyx\GR}5XGQKz@zxۏ2*Ecf?ޠ-=!p#/#"'Nw"wxe.곹 8[aD:_BzEuT*l _MI*Jc6}"#ڸbm[L۠Ȍ´F^@q4-vh0Fhc} EW 0/CW|, )BӇ~<7W%Ye*+8ѐ0@?yl,@!J`L=A Fo){,˅CY US ˳3̢b_Hl 4t𥁩' NOkewEqDйl?i\taM‘m[[')ěoc^E9zW|TL~ =Cz)OyԜ!zsU^BE.ֹΔ<:Q2;TlK;rߢInk>?$L q9;4%VIi_ Sz"_kWRw>w9?ҏY4BY2:ι#NQkdǿ47yaq9H:lR}%/ẕeON_"J;hg|px>/Nz(  9}_f[L7pϒ1RMԍFpR?o 'Upcڛ{:nkatw&|%i61& ԛ ?j!NPױ7mM)%od `X %:xU+_^v׊M)On5]Jņ%125K-,E`iS9PR\`45[ĺhĖϑ̵Mkh=r6$H0LeQ.9qha]Һfߜ:p1Y RtS)c$ɬ2h D ̘>)lm5IP߈"~Qyo?(I|7g /{ȕvG"l{[N/UU9tU{b TISz"K4JU(%Ua5BKG9x bkk_xu6)㱘zw M-i$@i]H ׋{g8ϐ\JjN}5 sas: MuDԀBj2w^-ULҚXވo-CzX{5j7 O*;e1X"7&͚]?%:B| ~`bE}?C?xv P#$'g`vbHJ]|WL9jd/3J ;v f9*]%˜o XnrZP(z A*}#ϖzӮ ERLpz'4fX{8SU[;zC;ON8l)u8w QN Ter#53Gr03 Bhs n0 f2 ?Oh m+_,U[R|2gq}{j}n#vGxdUqb-aP ,K la1 -iF;{'LdXpAS(ע0GGUڏΔxr{P~T ޚ;MjᱳcP==WᩅS0!&7!HPxtt4јeidͰ%{㒣0\}Q:B2dQTeV]FܓlDA*}F  $$+$L]XRTAMS@ f&cgձabCcٴ!o"> Tv)%ڇ=R (}i"/s+_jDP]_}]`] 2Y6CNɪXQm&ENcǏ2Kq8?Tdf$Rh_vX텑4<"bl6 ~S`~f!Cok۟AUӝg!aB/;uH[=|\i͍zLKsR<z?b_m"p.27)1ϙH&1*1GLڵCz\E3A N}MYkPL缆pCZԅ5c(|fd>4O^d6]\u.f\fg:B6My|[zF>GTRtiZ[XXE$)JwΡ* Eٰ߉Xgji#[E|EVu{xӲU8cG"/0j8 *nͺKp+B1NCvEvO DMeEFc,\f,P?}Pؕ\ D"cgրZAiVZY1;ȝjGȲfl98tkn[XqrDΈڛC~\D4oi"qi!?H]GL\ \Ul qVM|!}O=`S,_%Ǿϧs)^G5O[vx'5DIyTZrKo(' 7q?\-j|'!_=Q9piZ>8R| -thW2dv&_lO1U`=HV>ӹ`ytH674>v8vhv] z$묘ڞx@DQFJr껑ZdRYԃM0q ЀeKqfHV0@/("xA8f/̆L ^kuνu(V}LJ`iLpYwO??yW+'bLlށjǶ} Uo&K$oz$TY(WBi ?Sa$LJeSnuS{M_N3hOgYh3z t.xsRpĹp؏#ƽ'\/y՘X=E$Xs\g| -jr M,!Բ8mk _^YFr?Znc]0 5eXh0Ew:,RF)*6h\l1dDYwg;tXw7xUw8rpy-2^Ot;TshqH`?bBW:v6[۳nmԟ43p҉^1d o_A1FEmd)4g<=I>wIPm 5:`ս-9Fcd řy|2!NiZzw+PςѠI>eZ]k)J?j$b/// Bs#sX9G==^|ɀX TwM*Vɸja!jrcڃU?+6mqsGjv gxݿh#Q@0X(I?]`]/^ڵݪ&m=ñZ;Qf]7 I֐ń鶯H&M;0hİV  ̇d79Z iԨteMrh kUX:\(ds1@,6smSrfȄ3>k}˒ȗ]Xֿm$!'nHJQ<}pZcpVsrF I7w+%u[+6.fA_!vHb/K;8α}F՝UaD&X6T\L=Hj2zTx=X8w& LUijS3On!}DhWbCT-pk┱GN54PaqXo|OSzS@E%cqņi1 TA*,;ۤ}HjI ^81c<j|rm4D#8M hKA\(y.3X2=:oΗۗ;Lp޶Bͪ=@WJBӥ?)8䲮^,,$wG 9ޢ*v]>`ƿ7_>?cri2PuQ-TW/т<"@J(&=Onm 56ϩY{QG?SfOa1htoi@m&?NSDWwrp@l+갳|Xlת.XCڿUa^ՉcȨʼ)sQ VPe -D;e_|M%v6KT|5Hf8){ yX@h7=d,&9Thy-Y. ]%!딖;mϛn~|`xkkv@ l NJ8{W/]X]Oo Ç閦>ô6>}3ˣL+jk*#`dw5 G:ąw(z#48<^`uf)M_{X'u%`۪< |ؓ ƕ#\&%m "U~$6'O }6OJHC;q-=qpNJmkcEQ}hMD}O㇀L>N0A%@yz͆W)ۙͿp2 z &&N7KUVđ)#2m9pYO:6菲Y C y{9RdXS%b^I3DXےl뀈9s׿ŪOfϻB/Nl{(AW'9 5Q?V3F~+X*cqhEf3x 9Sex]ĔY5T#47ULu)‚٥:?9iwik6Z@shBjǞ; IsNY/ԇB?-n|׳" 5^s/ !%*kށrЂ8G8GtH87< yKEQ8鮣6TM䁺ZpK"T\~rPB;7ɽp.Tͯ)(#GAbEf'۷C;/S`QB"a^&& D}b[7'HoiȖ5NjґTMP%XicqWGzB ܒOQW@߆FFSU OP}&#i3}AfKӜ5xgMy{XZ  aLIu5f@z'-̲lY;鄴*mfOJ½ Ιa"qyNgQiLGB a h}fS y"'hv Z&e"OZJaZ~Φ^e硧",~,}ŋcYGCZN4ғ޺I=#}}1L??\N͊Is^7d CՄ膴KrJHhDɹNRۚvm]5(/4,l;i{΍.ĘT bBуgvPv?#O?)0ٚPl_jXfV0/I u8@I2r S4GΎK"GMs٥£q{/?AfLݰA# #o:km9$+ E9iGh:+A0z`LRҥ8;!l\'dg.'n VѮR#w뇍& wrPsgwx3ArXԫk=bZg*@tbgAqN o뭠vC髊ŴƗ䲨&CO$+bKi"IV(RDY4>y,qO- Fm .Ҿy-C2wTyE9Pu8l6lʏFDiɉFƇ^> sFJcFa"3!+P^,A 0vtK( ?b<C$VۓyԆa`0KZT*3zlMڼDjkF>(!iay"|HIazUYFMRy$;_vz?)Sg6F@Ttlcʩa;g+ $OE^(EZE?zq$ma`ѺOP C,}>=,RQ\pY "UuYGM۵V{kOD6o.H`z 6̦ 2kLs1 QQo!CBZݕV'}qJ-U=tA"9ӵ3՟ Ye1Z8Kjնef=ɔ|K1?6{iifxk1aGQMY'N/,/UzհV\R0_!Υ;s" Tjd-)0e191g͇4-}cQV%XF$K#a7hM9 d1k:PЌH) ;\Ϗl~$%:zkՖybzc jE6+BB_T>eR-d))Ñ-/ywh%pq ‡„W}l&nxss.5 bQR M _%O=@{;ʧiǃ !Khnz) K {'[c.Y n%^IN؈B\><8h}ppe[Ӝˣ.OU{'ѥG0 ܨt0Ti혍'Fyg՟Xy[@sl_X cܙ x&GS󃑴b;ޜW9?in:lMgY1[jII_;idkO*uls/6Tjܥ~RZ>NWj%>]nP^X>fNXm3M7dI-q ٔ2UV>a2,,%PWoX;K' <&9Ԝ]Pa_.hc0fps 3Gjhz4cLU(ܩ}=V)Bz{r<Ғ2ٴ`M򅭗Amdl2P}ݣa@ؾB[@21F'd}<#׻J :H̨AθLBc`] f[xHKG!o1)g%RbS_U4jw$4O뎇aÐ+"7,8Kbܣ]{lk¶/8sT(K}-փLb\@O %6nKˤQBKx b?^b]CSf&}~s8WU;L~[У {M</Zx)b:2-{MطhN&:?*Oa2E94pF= jZrՎcYΊ%PNLuLFn PC1Ka9n;\#<cuo~6& $SG 7֑"{#Uih.iܯ>jdh5l}*IJtvZԓH[7]r-h%׶"[AfV<@Y2RTn#s2  07A%ց8!,a ֵRm#8VWQ-_r)7A9UUOH6;QmXרO;U(1 1QEkUxpFSg5"i,%A )$/VG4*[!Eղ7m!I:/ߩIĹ~rM@h*yo̐ ek(: rU W?_c7XR;׆҆e>(}u!qRVO?]Y7:L4z5ڿ>7O &eV! ;YVh|rU,Q㸘e-׈g9ە`{mJ܉3[:ɲ`D?ڪׁ+uh"> er]6 Ȓ^GI p x~Б R\ySo& s0k,+B6l\Էe@4؀IcYgb$0jʌh& smJL?uĒU/q 3dh .Y!($W9M,%cHѱX!5 q֪=9󩁚da( Nu.]91og=`n=\Oy3\]"W ϼ\i^yh.}apXhf&ҩ@!ditҪ" D& IqPdɱ6i4!Q) Y"u)8&~BA$eY,Ho7uVwgfݲ2CeN1 #$D6^{ mCaV7jZ_wP,!ؒzDMoLiOa -Hbš5uTgg€jXGRJbߐTKU]WU%#:]d&1#UyR?g`EL˾eA7bPUodL~ O,!Ȝ5pѶ*s|8%76 d=mi ҙh3/(b߮X HDJA2K[YD?UJʡaGZ,m*M | %Y^(푖8(;p1fP2܄ ⻏t/^\\A8mg4T]Aq OGT >"!)rWŮ)Ls2VY7=aj2J{qpTJ.׏?0GCѼ[q |ߕ@ d~i-Ujg` >ɬK^l6(fF^@N㏧ {gh;lt,-b%s]%+:@&zV{-cVla],?AI[AXJ +гxpCA6lΜb O?̸{s1Tt"1Ϸ0v6{!ٲӓ;*נ|۞腪hT cۅKA$VGϢ qhA]a!Ezٶ~β+{>=,}YYC|  >]ʁQo#s,5Pc7@sļAEWⱝ,SGSS{W%~T8b0.`}FML{J]XxgB%!"P/}-nc!,`giuXIA NC =ibpjtu32=qtmwhtT ]g-KwJG8n\1g@US`vCv^bu=VXg<Sxu&w-Ddw *o|Mڂ83%F>fljS7<XocRWaBȶQ J%Jx<yc64?tX| ~BdԎ;y `4=In̅`JrvBmTo ҧAMY╚RW)zX !n'~Bkצmo9zba' 춣0Ѽ%|>`rDž}|,?S "&*~ӌG Ӕ"аH 2jʹ} "vΔ-GرV#^pZd_JhϨf&TA /Xɧ(FDB a'Zc%R5ռ3T (2^g|@9LA~5}\95ov!gfX$¿:酹E0iuKb F" ݠ1Q8znoegCFԭVwv ^!^m$b)nЍdUǪ.%v>CIukoNle[du ^&R!ߕ@creQL> ygGbtz>.V~ ՇJ4|fZ桛pfg4?? MhjRaxQ4ˆ.W*@ZG CxXнcqؾ.!(7c~^T,ZNf'r'.׿5YߜEy7j]PoqJcX{ ewNT\\ 2mB@iVTHCx8#@ڈNtl !CґSh+a2-J8Q6ʏgj2F^|E/|}ߥF HCX ?XE{סԌY)6W<*{ncC}b՚AF`un{y WCW',gʗuO0-}s/ocZ6<( t]ӭ̇KDԑ.ƍǢ'Iҕe1[Qto>|('#y# #Gw'\5 Fi|/CN7l ?.&5Jr90(qa6Gځy]y^3t,hs!D78@T[%л+^3-' $^PNBttBm=CcKl<#r`1o-1-z&Jۈ"()O[ȉ(GD*B})+G8ԺoJVӔ按1c1LQW6 ) ~,u99 [{9K 8ye~n9$BP==>s;JJ]3eY/rY*OWH[@{P&ܑ2c ҘCJtŽ"[$~,uВN /LJ /_J( {׻ksXۻGap ~'V.v[cdhD#ѥ׺c[Sp,afK<'ϞѳÐރ'kP,f6=oL`òЗE|e& `*z<hAXPwY aݴ8`ovys Uh:!b$lHRȔwYux кcf|Ued2_jU6J"L3^N|;9L_Xm=o0s:J~<ci =6^}@ls]|{Wk΢}ȿby UsGpؠ~E WCZy ߪ[Jo- [Vclz܀Xs[U'm% 杇4Gmо0-WeD#vg࿉.SN ǽw˜ږxok/8z(qDa]khՐ`/LƐjN>}wrtAy* oHY^x=4+Hk;VqɍwS hgC×у+zC\%/*+%悢+03%ie_Gק7a0'1gPٚlz2zS3MuKߴ_a)u$kEP_6eJYcޭv~rhL6w\W &P`PT!N3D+-D-_8])/ Q )Z 8* Q|j* cƢv `EB7 =HS0R@EEo ֎AЃr{hj*iXD~ 瓶gd*#qqIx !+.?ہNO!E'WkMb3.W};=rȥͷx)*HٶJ[1;_g(=)QI$&U%2tWbAUÂ5PQKX Β~ϝ9bh{M \sI* ۦӥ5}9ʟSϝ!3=9< `/BUpԬe$4eWe 92x#uZ4G=-׉X l6]"pe ZͲ8rklH0|@Y'KׄJD9N2]/Q|\_m"t ,~*9aXhgd\|w.gV4pko-a:_aưpacJe&l%SZrpOsPV+2gL|i >YtZ߲Bej+=:@nȱф3: Ӻ\M}-\]V3~] Bb75xŚ0{IGL,P;ʴS˄ULя2O$oȴx,1(P*ZY8-GRMuW*D#38ͯZa9H<bkjl o~48c Fw 0Lt(㒫hNN|gK#ʀ i}D!H9Y̧!>;#dJTW찅h!+s">cXZ q${ -D";v0JCၽqnSH@9#G,&e2BUkB@$6 bcRe6Mؼa6[ % еj2îKD*r湹}E&]W;OH #^P_d']NXjNGt&ٕ'7w?}2xM|j8Y2;6߀~Jy0b )n;Ӂ.R`zX%D.a9x)${ d! @p;:@^8P ]1V5!/ !A4nݓZAqwJJl_O0x,w&?QXnHMa'=Ô/lOC>iO[}sϩ#X4y(kw n'SO]:l%kw!ӡۧ;d78 woDY5x;n@.0d3 lEF|T؀A&E@QŦ|^Lⵌ{ DmSWUK OŠ**1|>e6a%|p ^. *߮b`vZ\ qP18$42 'yAsSg j7K=p0$zJa+{8GLFtֿ4 =Aml[CVJ ~+*sEy %/.g !TgZa_Z giM\O"G+¡n'-Ym5>Q Vexu!;fwB Z EyE)Ti!g?)qp٤ + 170 MجχAhD~W7S|]4cH4*'";CEntY<_zv_d&5=U|eհ:tYծu=4KKA~a2pbߖvŏBFH+kCͨB=)-Ɂ yaarz:zD L:W617V?͙'Լah|}; oNyy!3?enME ë@U!/,dK%~pyM-tJ"O"942VСE Ka2~h02>l'Y+7X&Jjε*!kţywi~ْ GmPWvRٕ5JEP$>ixaZhgvݠۯ3[#/$.&DM7Q9$#sgR)Dpl gl\ޯ&_ճK͔;"A)a}`^(tvtDG2G T=uT3p+cD_xwn4BVIКn;:9ʣƖU2a 7б7;>!|917BL/ 1Os!ãfQ16.;g(8Lpn /@mʿRf9^N.Vp~DpD[|x2q9̹6JJ@kmGPV z0@A#alTk1AGKMʹ:XoS5-= Y Oׅ+ Z"GAm3UGi٬"N3&F>ysK344?f` =`*a&Z^H8$:{އp̒{5V(AJ.}aZ4?| K;PLg]/ƓPڋ(٦rֽfȌL&z t~,/*Q p.$jz74Dt vyD`b~|;kw~ǬU/ښ(9EØcVߖCSm)'dߧE6XRkg_XFNScH?$St4%%шIeIIDnd6~&bԟli=^OJ'>УMIݩSbHItwb䑫[~i"N6QGDi|5MGC@³WF/9MzCr3?woy?<&׈s4WʝPЧ%` ED;$w]eA^1fs9*.+)?$:}ܽU^$w%sJXƅay#ߦ˾lKF'_KU1ۮ8eĸ+.tu e^;p5[=ك}^5&]_E]X)dsg#ACkzS@&`hv <ŇnkfB|[ovJ`e}ٽ>)t%\YjƤ[7Z۹FH/'>2=*Y{]feZ{\6{*^UZUQ9S-.PZl f-r_ݍ6 P=lJa{K54xx8Fz>i^Owexq-cyT@jc:+Ɲ !~NwΔ/~u-Sr+*fHYL\3 *?^@ #xʜzntB+F-B 䦤&0L(DRM [iX&V! 6O3fQlB] :x˓8xWǢ,b;Bϣs:)NPKznlmӹw=Q.&ތz1d.LZpOlC*R?i_-Yg [YI$ucPdE=YhDDv٪ɣȾ;4apzaD=8 Rb]ˑo.ZG\L,<|L.u"7XpoKfalU":紱}dUODyRIck@1hMϧX;d)3f@9_нL1lU`A_e]Edx_*< `{D<G z⦧g~դ)|!H_tY As!VX/OY@]v1H\,M`j<[d<4Lw!ws o=Q6-9 y{;q(O愥g|$+ʋᶶ YZ