libpmemblk1-1.3.1-lp150.2.3 >  A Z` /=„!րt9+lr" JT0=mni8Đ]#`n$=]fwFm:8dں3(}Vإ\+o1߹S~Ү+je~bg;w70.\B_Lg4B8kׁ)(I;c֦`D-˳׫`<q9d*bLaax=h<#}jvfW圑W)ύ߅awgyKD8ө12>BOJ$:nC7V߱I UOԡ'o)V#ڇ/+6cskU IfӄlbyPYkr\%l'N.DR*ROx=NڤUr%9"+2 eq@GM@v$(?mVYsL1eJ^zC~Hmei<U2|#G_N >p@,?,d  G #,9 Sdy      4<((U8\9:>)p@)F)G)H)I)X)Y)\)])^*b* c*d+$e+)f+,l+.u+@v+Hw+x+y+z,,,<,@,F,Clibpmemblk11.3.1lp150.2.3Persistent Memory Resident Block librarylibpmemblk implements a pmem-resident array of blocks, all the same size, where a block is updated atomically with respect to power failure or program interruption (no torn blocks).Zc/@lamb28L`openSUSE Leap 15.0openSUSEBSD-3-Clausehttps://bugs.opensuse.orgSystem/Librarieshttp://pmem.io/pmdk/linuxx86_64L`Z_Z_59c94c17930aac4a051fb050041c2f202d48c5af034f0f9bacf586d5ad88d9ddlibpmemblk.so.1.0.0rootrootrootrootpmdk-1.3.1-lp150.2.3.src.rpmlibpmemblk.so.1()(64bit)libpmemblk.so.1(LIBPMEMBLK_1.0)(64bit)libpmemblk1libpmemblk1(x86-64)@@@@@@@@@@@@@@@    /sbin/ldconfig/sbin/ldconfiglibc.so.6()(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.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.7)(64bit)libpmem.so.1()(64bit)libpmem.so.1(LIBPMEM_1.0)(64bit)libpthread.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)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.1Zc/@ZB9ZB9YYm@YTXDX~@X~@XCW~D@WoWKVV$@Ujengelh@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- 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)/sbin/ldconfig/sbin/ldconfiglamb28 15164496001.3.1-lp150.2.31.3.1-lp150.2.3libpmemblk.so.1libpmemblk.so.1.0.0/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.opensuse.org/openSUSE:Leap:15.0/standard/13639fe0f1f29f90df024add1e676c83-pmdkcpioxz5x86_64-suse-linuxELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=b834dd6f280cac89f49ff89da6a202a6d12fa9be, strippedPPRRRR RRRR R RRRR R Rw`Y1KjEutf-8a5abed8b72d9d624fead48f4f2b50e1b609809c27139ca3acc1a4882778ede17?7zXZ !t/N }Q] cr$x#O`"w6y!׌;Xsp^x tI"'FwIU]pAԳ3qyimX<[Q 9 +?+Z Ye$6i f-T/{)ئ)մS>驛؆y% M-1]`:s1XgoY.c(@$$ۈ>ͽuC#P\M C6U0+?2:>szM0 _,n @$8.d0}]s7 Q"+Y0ǰ[ ,yF uHPV*lIl6m0į(HUNH&EOaժ_M&%+h=K1O2,Ӂ4)_z36䏇#)q0e,NMuCX;J%A@3\)[E&1"8mS=Ua @gu\WF vxE;:-xŁEr" D@+[$XΕHVB%nܒTC(':ct1t{}bPB 5khY9qRlw[fd0޻hב߲(@dsi$*CӋQS¶3oMMZaF9Kã bu?+l`:sro&5:Q+b* 1vۻ)wJ|ay0Otsʠ3IS3=G B?l(T}ZY\YE)8aeL^+߆-d,<ιhD+_~;Č &M$/W\_=!yE1~[\'f3S`TDYISOg@2p\鯱8bh-Y| mqeP|3a'04 iU'+QS߄dטU:Ka=_@H!ccΡYVL_I߆I䥬18]W W8M?Hޢ 6M1KulB <.:t[! f+e進^iP[klE bv0QNd_lwX{6Ej{ۢd`iW=# Z/f%ͱ͆m`<.X*!,@]w3 8~_w3Hƙ$ћںbaf#ϣ/ʍg}9!dJ0 Z"6>Hf&YI(i[͟gH%#U4o}}.JKQKx*fY1 oLTs[uYa,Dlw=&ݵc10+a<ʼn٠YA*xbbmO5SD)/)lP&m vb"3W2wL9ޢgNcxߊ[G*DtA '_K;l5s0pnZB7*qc"a })O }]&gu.3;G (aELyRQl$0:뤴e)mO9! >:2l lٱ?.0b" ]^w[kc)>{3ڇz iP&#Ҕ3WtN1TUXp眷Gc(:)P"wQ)$uRk9@"2AA~vfeR<&Rzv8bN<#BS7ުu52z߲k)w+a|ZwN" m4WWkfm dQ512fF-\FVa4851` @@F{TZDlToqjIO1= "mf^Wdu%q !S](j)1`DbrFsłZU]ebɓ mN$#(Gbrx 5VRŔe;'4^Xodwqs]aԷM+ݎ Y#:c`Yɶ&r*C*qͺh?mDN`/4s@e ([ ,%ymݿ {Q0EHI' &@kz@Ad/?׎ u8+!^`LKvn0٢Snsm^ۮǐt'HM–tf"x/X- rG}SDŽ1oM7#Zp{ myZvboSIߗtCSKW_/"<3]}Nn@BW>-]}WUHԘasvrBo{ed2D~\+<zD' dUh#GL }r$ٚ?J_;† td!0\!ِQ?X\m IW'IzҚҗ"[L֫a]}@A!6Tɨ<7<*-3_]Nuۘe xNw?x><>FyApEJ=EMp:K~촪;wqX ٭Cu,#"B_M'0rqJ D%.{tu*k(n;ܵA%"Sq>]`UjY".?q?gcC\F38g;a4\dJi06aV"C t:{ZDOW 6\Zg 91ֽ^[nB-`Y3]{f5]+c9=' ElVo.J<bz a_C:>BIXmh@: 6js 鐅><ɀX|ǒsCbnP_/nl&ܸTls'[m{+ZRn#R"/+`~uY+,зn-ke(S#`G8 s2W/C2D-ᇩr zÑDV1Q9=]|"] %@b! FvZh3q63,^a|{f*(r5 WrG% vTCXa;ȃjY< =|骸ۇQ4lŵ ^{Oޫc@qMoW 7䫺PތJGgMP~t%X*(t%৯Tᱵj[XX.`(^Qviz_Zc?18a4n+Hl?p"(ܭJg^~NŒy,Q>\] }d#4xS f!)#~*DDpu?N?9tZcT}#s\Rh4lz˵D TA #+y`PXùjWsϗO㯶Pfk778.%S~TO?H\:ɢAؔ99'֣ $ 5ny3B񆃍k2|<īM: 9&(=}ġȕѥ|G~Wg<=ZU=ثP05S8_CC-HNN9GNz(1yK,~jC.tse˺@RiiXL\H3P5YĵuQ@7Q6OH1B>LEXk6iBi1x;3нpRֆ~, zqӂwnvAm67:UsCnb3oaś6 ^ADcrsWlUrvy}mg;9ޠZ&W@ؚktNNiihD$ tcHO۸N~'V'=ʠvJ;|ˡK$b7B]>G Z. }4ʂk?ӭ0;/ҕɉwWm)s%ƭ:+GE\`Y:zLa#T]{߂6-tCߊ DG}6`'O25mvoTCSp51< ʋj8Y񗀈zk-EuR!3fUV+EÃ%<96-=rqz6HcGD`M# ͦ yvݾY{N)%yMͪ/`+0\nM9LDbb k%8 䊟wA71ɜ;ݾퟒٍaY1Q-TxMFW Vc ؄!ʰKVP .VZAQ?<&d|f2y:a6RlӲ.3 &rd˚}Uf^1r3U9Ě|~1g ?QalF| *m$(e˃, 0I_4w@*#[&]-0 2u~҇{NsS\&LwhOǓ7.%ƵҩB ?q5ZAdܬjz%mJi 7q1×0)k%-E`#T[V{an9N1lsr F G \clcRqU Jކ9o ^yr:'(bהqd0- U'}(ގ7ijKVYZ%woTb㨛+മ%>)sJa!TP.$OkXz5R 4G]#D_hPǕl_c%`h@=GH*B'l W;E=ؕ`@Ś zkui'0g f0TU"5I(Äm*-.{@ꟇT3cծPyh\PE4L|҄f$dgTC+S !euD_ "u8K w%Xs([woZgo's"t]]qJhV::e_.L90yv5g>`7e[g8)DV:vOԩZBG֕Wp_@R㾻J׵]x{2:GnyX_HpL^PMg) rTU\Q̋>O݁p,*6k' ?pX<\k@- iX  3 aDz1*y,W1ts۽sܨ0;R37N_kblRRqLu ,Ce!=TγA1(IԱ<7c"߻UF`_lPY;ScѸ4qm%g"yQi> %1dɫժ6(v8/kYڄb u MlHӽH8CJ - C$d݁+~*L"K46I.$q!0m-IoI[l}TbuwQO@ _CrD IoG5NVB_<>CI@[ӠN >~ 'Aq\0`c J*K@qy|Ǟ/QWR[iſOtUMA )S#Pyp˚r6Wi'z~U hmTs:eQ2dt)Wv)jq4>J@n\7_ET0B?-nܢ~_E~$ h^-;6A154"nɗlQ 'F`pX8m7YN&Ÿ<)>_}?HRo4Mɳaz^j'y8[[}lUS֍%ܾXu\(8s \}uFK/qvbs%܃v. "]JR;~9r< ?Z>ɂ~MoUvi\ +PŽJnsMz2jVl,xFeKn~1ͅ%cߘK)if\!rOʛhWKK)[Hs}_qm cC$ HHt07 $LbỊxp7xY6\q"Wnl/Y&{(:[&#G@_:X 7.79νIO;+#+َnBZAMCr(k"}B@mYaVM2䇺غ}{)"Jʰؒ6O5ܪmx[#2ԩO?ko\.ڙ9β{8 k(-6ФM {:X};^LN5Z`_;_cjXڌ)I7"7xC@{K2GRww!fvv#G٧N'Ev$*a,W gy^ 7Jm=+jN7a%ɨ,`t,M A9K[ޛ͗nEEߍ .u43[ʍ؄F!$26]XC3khv6 j霿DǐcF[<1gkI%gv7.?[DSȁÎ`mŕlr*GTi+{(/&$˯HЈ m2]AqF#3\ǧKjixy!@;1,jf[*@w #Aר<'5'Qv -N/-8aPaHQjA$(BaP\=E I>h~#B@osɟ޹3Vk%ee;:ljWc!r& *G,xAR ч2A#8k=^IWyD-6,&]߆O˥6{Vnc )5?p%rOBaBWƾ8ج'Bzؼoq(PK8lu ?Zˑ\iaШNL"%|tsTQ0Oz2AII nM7W?WkӑL}!xD2g'm:"m F'Ɲce|'{yF{=ǽ3`)k+2UcrYI!:[$;%),yluM&c@vlRzska]P>=d ɱIK4w,&u/ xv)5؄to"}ԴxIS~PQ5`dK<ywmT\ڌ7VZeW]ޜ%S^㑴== Z&2gj7}w&ڬEllkCکǕ=x_YPM!;C$ `DϢ7d_e kvAo9@2=nfwU . TW[Yzdy]}eY&״0p:uKF fkڢCW]jG4o`d;ڮwn垐۪_ċdFKT bR$:w1kL~e"C =Mue4vb+Ѕ1''vۺ>0 jqol/mRdZcYqS fnxcJ}E]X:NcbՈvLiNkS/Uvfda~pׯq%۰so?z!Z:h%0k֌dްIsqj>1*ߋodu7-$ԁJɾE}İ7%aPFGNȂ\0̰8eUo# 5Ay[NzLx&bĔ[ x@? `uۗ4ֿkι}ݨɞLUsx^+cYUbmrP&sGHLZYTP 5ث H1(r++;iY>ռD$$T惮P@dUŻCOckIAϺfuHID 1N3ݹ4'`11C9 Jf_gD K 5a*߃&CCǸgE43א'ah9UTips'p2IVEmCIGghtZ~~ʧԒ0o(YƃRj=$'>%.\]d*LF\i&^ w+ewET!L؇^Eޓ4{}`RӷDH7 cg}WQ 7' 'ȃ@_ۻovd&*(%G}~V:(fxҦnq(SU٣Q. )MlwٺYB0kYYTx#Nr3!tIbȠb@7JGnR;^;X&cu8@\֒0|~3mT# bcQq8K1In?y`fIP"ZZjHAך /צd2+:%+ %$q"[R\sGÍ1ݫnB 7F?'cExrwq ap)ߡ>|Nr#2QiG:zGV4m< HCy 8 nRX[qA\ϖLhmW5%Ӏ8B(6=@i^mj <[)YSe6mZsuVŝ[z\1޶n[9(p)_d­Jq<8v#HKåmqKOUyėyrta}ƾıy?3DjwH.,G5ز>Hۈ߇"9$/ E\kjvߤɡ䟟9WIk=\tνBmJb͔Νi#ĮlS\HʶcKX*9 u1PN$PUt&cy+&o_\g&yeUO[ޤAB\ߕ48Ъ~ )/?[gHg\;hIcw(4f[ɪl."mlזݾ qC-gp'QA&sJ\8<NJ79r-( !*s [~7@  o_v<4=B@ \5X ewaPVu.ϻIИHU1p'VCDn%qHQ^w=QV@5/2h "g WB2Ѩ.@ݟ[YxZOS7Ҡ{_WvR:p"1o:0|J-娶Vou %jAQnp|fA珻4$9iޜ1Dedu.*B# Z! *L]!78) l1u(Ȫ&űGq> tKF '}ݭKT񤑮 7 D (#.&rZijU',mŸ3|JSde xEaljdO5eZY8a!M2{as&Z=!d{8z$G}vݏ ]H|n($:8-^r <} 83($BJ o+l(/G?CE咣M-V=~pjCECoakԔUxh P[ o6@Ȥ0mP+3c(1K%?g$2&^aSC$U`$p=.|-@tv&t9;ۤ^+z};ؚ@_g"? fM!}Y"TnsS7L7CX&|D+vWU|.#\4;$V_aس`Z +&qXJ'R&&2CPi'e \YZHuxmAb4NQ5dn>Dm3 a* ­b:X 0q5Y؜R\lŠk"]ղ A6q'> j/'X#{0 =q<<ҘUHmV]ZoA.eNQt >oޮQ*ra[8(Vz'BR`@_On)g{?t!+p+V8q㽝@,ƿY>QGP1Z81=P(V錇:>xہjN=\ 0_=e0 Pfi^D;nRˌ?R ~0Dp^K:0t bd?ŭ8ݢ?V9;:#/$f07@9:$m@A-6["oM0t5v Iizaj ׏OJMv=cM 6_!y-++X߰|rԁkn*b\JKU WE@Ӎtԛvƛ `FIU^}a]чt`'}WOΉ6Te3z.P3H2 ȖS 嵫S pʫuY\G/V\0s qt>NWhYc![7Kr̎} 1 R{a n] Xx~Ts."ibVĭOVZ%1!V mw/S̤8vؑ+2_ L6JL:x hѾn:g$j>5(VD9.aw;P2!>]`'X^/)ɜ{{>p[y j]0^y3Ӓ+S'wlC*  ;n(zC #DީH('>PLe\F_Z0ax_9 Gtd, DvG\Tߵ泹@IK@[t6E7fBp][EaJ[:Б?,%?ob oȜ0~)9ntd/0&"4-x],,& m--̬ɬ"!¢\e& z$o}뙐}{h$^gBQ}96Z{Mãyq??LbǗ=VSԎq].u9cG_ ҧh46Ije$,O+=*F.1e´ "wK3ɧM&TY;xN f Rk_ #^שB1d >m33tٙ1"jD#[y!ZI<S_W}536pٚ6+}6\eZ6_ _ ~CoIPCb\<3_cu J*2W\[ 쒔̹S)IFx$tk-i;L!; <P+~Ұݪӄ֎X=6̷[/*OT]]mE,m=Inx)@zy3xì kRn  leɺ䐨_n*J ~`e]np/=(nP +3L²2{{Pl9ݏ(alX|%"q*e_ ( e?pŋY$P_I,eF{!MzYo2ffnJ@,XD>-D+#EeYɣ>l?լ3ў$lpFd S6|<=1 |+/e^zz^Y: -QՉtO?ЈSm~_d[9SLkFHg+G{D/!~O{r9t۟6V4hYxH"a8alhE'ƫ :Fݳ1g8Ko|S ](iV̛ڤR%V A\3fJp&MkzdƙPGG;W0F- _5:+(oh\'i\8ĶX<`fjy;L<ޔe̱६E>mǫɇQb 1.ynin/dHjQ=, p6\&uD,V6jY1aM;Q!"@y8`g"Q>Ȉp$|HnE4O@OEf͉gCO&YjR+67fOꐍO1;ӛӮ&3mW`oM\g8;'{DTc$08Sr pMn# GJ0|=5GV-4I- /> }QK TZ&VzLQ Rc׶oU\?1ёI;:2neݒXTs޿()y&YK>7u_S\&:7ʓ|X3RƚYGpW۪œ/Ii8DϾ3qf|0U}.!BaT  o 3& ފՒԱ;/; 8iψr@ⱜ\joVO{1g\)IR M~ٌ0ܓn9 Mq21B'uk/ɘayRNg~וMnvV}0d{ 0Y#=K?O3\JhQs(DR?O|.R2o%vazڙ<&t8gG5`c45Cq 1w'm̎V꜈>P#Z~b8q$2(@?a 8VA$66Pj,!X |Px{a< csHT̝$c`W-`! ?vmJZzӈqjk6{v8Ε?d큛ho(9t'y?Usq0JPfy9 NE[q@^0*>%{'=pㄾ{b'l}K`ۋ4M@aG/ 6U[+=K>A) !*" +/cYY.U{a{Ud,?Tey%AW9֧t"RKOq@{w}>M"K57+ V+|>)|O|1r E-L J{n>`Wj+@=sM虧h @ M|nJ#Sʑ~(wٞG]=,]@jkA{ ^c?OB6j\jsߦ/jFD{< ?|*99ttODⵡ %H(l-'[ƻ 4B i A;btjmq5C`[j|"!h ,uY7I_TXgqTX-.tŧzR &Уb-zًqi2T!+9Y6/ɷfL8I^NbS>xax T[;`m,q2Lk]8W#n$Ɲ]hUScc0zmyhEѼK/gojA ;ڼaFVueK/4l4\]KGp'h  ye D]j<NtAZj~錎^Qd}m\ɠ-N%|{ #{` , 2+Ke)Vv.(+uZArHߓm>d Qv 僭ǹ0$:oVv"j=UjbGrpMYV 6^+mj8Yp?F#L ]7)L1mqt$=jtrM xN5)B]4Q%ִyWcFqQ!hf_2Ky_3gLuVp%ٚN# ;s~MfӲ),Eg$ʎHh6z0u R3pȠcm~&i{T@ºrlAZ$l呩 M7G<X`ZilS:uYqu[ -bAL]|)xV<>)M"ĦyU7JC~ڪ)iJM+nXT^FyC8T(s |&0b%H2si Du%&8nL?bYbs*E i=߇l6c]þOfDE|sG#8J=@&=| dS + \$fK~xWPt6, }d3$yd*'TPv66tm^=֬!`u|Oky5dJgs^@*%n+툾;u1Jd:+2_[(pXZK}e,(9 Dm08edd˛e͊]4db{ұ?tJMD8IB@RjvKQg Y_z*or!5ʽJ[>%ֶ.rs 6_ɓq!NH,+fuVdN yjƋ#+$Al'|GiVCX0vV"c|XA`?JlOn=*c]LVL]k[4]\ƫT'hSEņ;N `g=Ʌku%:w?'ɴPWka60"F]f zvbG;*К.l%aYBJ!w) 14 K-Plswz%XXV|1dMpL HR"Jd:Ⱦ0۟448,_a6@:ۚoGM)v_4kLzGօ[i [hz^y ֓:񼚴 v-eoOynvpJ0ǚfF⹰R+q4:S^΍qO'j^Smf[k|Q P]<>s >7u`[<+@5 @zxw_S*> `"/n"3.우 Q3IH@QyE+e^̨T7e% նiLb!0xxL͞B^&hPGy cD{0-g|m/_\q2FGɼ31%I&&>(!Ewk;qH9DR:\Zn"u-[ΰ:NxŦ{6.MK1ҶVnO+=&'`>dɏŋgGkR%+mnGr tAŖ맊_b^.TB _;.Zvls}T(+ 9hjx3 GlĠ!p:p:Dhs5qGR5YreV!! 2]I6Gc&E|w0+g~MyNb^SHMz?yX/;SY$1CF.?? *N"vsC&]qZ΢a[n~%`md4Q')$azLuFD~\w=(<!]A{e/ "/:lp{pV a1B+V%LlEJƇv&:̂Ϛ/"U?.K&,BUan 5VzԎI]C*qEk HMlh/ uOsT 1xw"]b`xgK2V2w͊gj-1T^>!c4Qg x| ;AނjKc]{y*!2>Бv5nLGD-+u1ՂXC@hKT8L Lfm? okvb/)xL) o@_55Uˑ`QB+kT3UDL$5b8ygQ{m!dBr--/qَ88T hRj{Si M bZ % =\+&q7(iKe)Xʈ1BoTzXcO}2J#м)+`  f xje8v~W8 ր͸dvx#:Q)x/Ƀ P|n/?@-2`s{tv1P_COޱ`74b7!߱dA+4}1xz69ph;p+[y^|-ٯ^I; 3l'ٟZrqo]ʚ>m։˿h5?~+Y3YII@JҀ2[ޣl݄,ԕ="sWk]rY!q8j]:'0)5MQY √6eav:3:A; K5r%0)2oTēV4߷H0v?Kn}!8B>T)`yF\rg8 ƭZ*UfjovIa°mye4xtw6;g&|BFI ' uo*fsa#V ϑ'vNFj&ۚWX!PԹzahm,=ISMȤx}˻X>XRL'/hK4z7 RqJbMÓ߫%M5F"J@|l^K.O *L38a/⡘#36g24'%1g^^1\q_ 䎟b4l[-X"+]arXKi{6)^gX6T A< ک#ŵK.{CHgג7tX wbT4\_2;ڶ oHOuQtȸG} ^du6 u62z8=zk:Rg?@U .$%} EՁCl>Yei9C|CB|h/L7hAr:€Zcڶ 8k *!ar8 4t RF[E_`YET+|:ѹoB1g><ݩu&Pc&1W$ *eS\4xVYh{gRyl92 Z[r|T28 xTv f"Gm؅]Du +wH9GTZ"U%p~Rn kal}>t H|Fhv(>x/؟$f}1iӖNa@L6j& cw1vkvvMFzMZP!x2 `sjP$ =)U\X~|*AQcęHL$9^bȚQ=ma/v)10]wXd6sPR{Vx:eWO*a}2e8q{YPb - ɷ/p2}X LRrs zժ@oi[ހq4~P'3ry(Y 5xcȣ5;yyכ1.b:35G%-XgTyE8a[`M%mft ޤDPVw!V_ݫqi}d Ƙ@^'~/L}ElN'dvK62;.;zq :o|"^h3f Zn{INT]2rPJl% 8@d3UV(NGL,3O0$蝤xW'o&!wӀ4cyvj2 Y-QYyX:ܸVGeqɂɏ6_>2bO+aX6;aVPjL>$4nYD)^Ls?t&\ZlřXЛӌi+O"TЄ0 tdbӾ|fi {C$5B|'(~=\0<bn9&i" ͗ǖۼ~!Ue pRcg3?OϏ(B7}Ms/jY n׻Xz1+,j3v~KBʁ -ez nj0A+n̻yJv)]A_JR_-20iG#T|O1B#dGKg/&orDk FSYzY,<;+Ԋlk7~ny ֍EZ0{`gy? g5梴cz9JKɖ4pGj" .G~;kOLvke6k4wu= 3_zە~aЭCݶV YLg, ca:ǃV cJ4uˣˠH m T\g\O7IKΌm9RT_.C4U~ L׮_(y n̵lfam+ei_I -`p&Ȧ¢S*xm v58h'?<z+GH )Wr)=`+.jE.q~Zy%C 7-uMHRsZҴm: μnF} uP&zBr)G)?!C)`jhb7?m+m׸e\Bh.k,UqEϔ6 ;lzWWb y&G$rTpu }ҼI,J ē|hY9N7e8hyˤuRAprxկ ̭ 0äG6~$ĵkCM⊿}U4AGeU3I1gJ8rqryfB ,ZnoU]J\s7PRo73Sqr NȄcՄ"H/d?7X@NgJg` oD"1M>.e xw26$+I8HAY|g%w*2؍w;nUESCA[#yuKhUr0$F'*vEgI<(]ABoݎ7dG>sƢ/3X &^dʘlijm>kEkmy7F@\I>24:oTϒ]N[9vw y:V{8]ef #Qڏ36j4Qߍq _XRdNi= +iEgu,#nR#fS1)(٪iOQ-#[k=kV?E%^]γGU緛Y5YR:ǹ)};5p b(. +?#x4x}xi_OIO}a=nةt#¨b~Ĭ(0uMT :u{_ib+Wv^Up'C,F ΢f=F \U@Uǎe*o;m<)8|Deʜ 4Cv9i'`OoS&Vj.sfuXsX8X?#QPˠMRΔY"~N[0PBR.u=4(׼u=[7 @JWפ]ڜJfI,Gd0>$pA;m{NЛW[y]d0_Xg-R(>Y=}ܹRh3/;8bT X(-]~F{>@`M/o^B  -- 7tBciљ?l{|ZhwE&"MkpY`$n2aavXۏ7!)vV$cH4 FzKKBZ؞G{H\70,̹FtUq Xu :Pv~ָESEOȍ4 Mz'4˓8G\ .1CӤ_IJЗRg1q`yiqmG)"0Px4Ȗ^iGL J\D]4~z 3cܳ%]ll%1LoӂP}hڟMdV1؜9X_hԜbE"nC+3Mdռ:(e*\c4Ѩ-~[{\*0h11o,l ˍ0 Lgs=@_Nfk`=)#Ӥ^]?^kiwX^St*^sN׵E`\|YdV `ɏ/*i,=\._UND}Pbh{agb] @Z#hUiE-!L2o+=hOOB<{9ԘFnz3]ֻZ,߫ǧJ3`Ǩ@icAhJJ#F+#OxUgZUԭ|G 3ی5J7u|3yY'u'D&ǐ-_26- kR]*ahTs{^(bq%# Z$ {tb![=|ę~RdnZ$4[hIݏ:FHQ#EāxK鉝D 7SǤ%,wp৑E8c,ׄ`zT\_ЕA0Ճw^!hr 3ɶZ߯h(pJiFvJ .Huc0E"&s.(؋2O5w$$CSs.x:T!}gM9gtQ_Н"Q_Rөl=>_tBő~Q>:zWDӥOXbBoW" xZJ,ƫd ]՞ȩƼ@C7ec| :ecZ)L=3ߵ}M;+T{y H*dC} 9#{ %jk @ ;r*o;Ha/b=%]^y\X`+1U5wv&D׃HKܒnAyc{>[.W%$6\kG9\xzW %l/UsW} ջb0 aPB09R;-ZTԿG93RPt CހP0z\$U4&2,)˨ Ci ǩs BFݮL_)59S`|W=g7?61D +FCG=K;6NJf~.g6hyɑ'!)ܨHaj^ltsai4N66}D,vH1- .xk*o" )&9 Xyw5M<#BpQz)FkYXVEb@z= vCU35 %qߛn(Bra[sI4QuhY[&"Üe#'ӿ>kUll'3#[D%R?.?3bv5 qohgG.곩#H|57HKGz \Vmƌg`<*hho p :g/<i" 9$ 1\bܨPPE],tCW\҉vM1#]rWXQei3.KG䕊-ZunTZ;J~ƭy/eښ|}f-Xslb{ԎV4(.e-Hl1Z̓8F|\(o )`t%uuK%a]R>M9;`` OY&bäA^YXʟ%ü,rx<7ڮ/gQ{ JjUg ][XT 㙁N SLg3:g)LV2I2`蛝o80@H-\6DIuҞg|T.К\CY9b>7ly6zbv?6e_tv\d Ks6V~ ]hɒNjpᇯet_XAP|]'kJjK۸Pdi b] ?`YmJ {.Q0k\dI}n:m=xgLXNok1?$<>^2W[VʏMDY0Ռ osX7F(} ¢GIN8N ޅ|9Kvy`ʝ+ͤړS,ʟ?p;1=j~BZsda2Z yZ"sME[\]$+1F4ySꭷD4t-tO:asSɢ+Wd(#D` ob˥082oPh I[y6^I ABzTn˗TP=i&L49S=Z8)G6qbWg+SݸVm+^V-V)[LX!G# vVw'x:DE}'*;^kddk 켋=̿vR%S,>-!oS#( *Pl< U8LO-ܰqH&i) S ~r#+.JNnj#ἷPD=;Pye9bCWo?04P+ xݘBV5Làݓ ė  ?c{M:i@D`dr(.b)>mn_E7|4wH#4,$4锲v- [J^V[߄/'ĔF뗈FZtpU?ؖP0PL5ǰT|Ks/nݻKEC$p 7e(m]A%"v(j$+ >@dZ$J^0!(: ;{*2M&a|Iy:-gZCvszI[0|:2(JIDe|7Q&!N-=4϶Tڎ'6f[*xolߏ74e~8"Es:PڂOjX+mi9$#[հMJ7/& _ v2oNES@H'~0!K0`Q(MD_6 ((;bs1|<'U,xO YZ