librelp0-1.11.0-150000.3.3.1 >  A dRp9||@hl&U6[ʋusC4o&q绗:ʚ%dh}گ]iC+<|^C, `K->䞡VrA  \Po C37~27k3?MUvhxd":~PVдV/?^k+>b^#l.R2؞G4W $L\u c񻩂#@ٕci#Pr.ΨI`66045813df600de6783d680f03373a6ca99abcae828c60f33c0dab2125fe22b6c14d91835e4d2b9b2b28e7ccc460a20e2fc9231ftdRp9|bZ'ؒw{F @-_em)ި>E lP!{/>12޻=œ]Do80C@INݴ67._ͥK_Ym1HjZb:B\&V3r<1؆<[RhYI/W>d ȷr ӹ]Xl0A$h-qr7<HTLoa62ˢ_[51.t8KgW٢ݡe=-tkf{>p@"?"d   :tx (0 4 8 @  P()80 9` : 8 >@FGHIXY\ ] ^ 6b Bc d!ee!jf!ml!ou!v!w" x"(y"0 z"\"l"p"v"Clibrelp01.11.0150000.3.3.1A reliable logging librarylibrelp is an easy to use library for the RELP protocol. RELP in turn provides reliable event logging over the network (and consequently RELP stands for Reliable Event Logging Protocol). RELP was initiated by Rainer Gerhards after he was finally upset by the lossy nature of plain tcp syslog and wanted a cure for all these dangling issues. RELP (and hence) librelp assures that no message is lost, not even when connections break and a peer becomes unavailable. The current version of RELP has a minimal window of opportunity for message duplication after a session has been broken due to network problems. In this case, a few messages may be duplicated (a problem that also exists with plain tcp syslog). Future versions of RELP will address this shortcoming. Please note that RELP is a general-purpose, extensible logging protocol. Even though it was designed to solve the urgent need of rsyslog-to-rsyslog communication, RELP supports many more applications. Extensible command verbs provide ample opportunity to extend the protocol without affecting existing applications.dRibs-arm-3 SUSE Linux Enterprise 15SUSE LLC GPL-3.0+https://www.suse.com/Development/Libraries/C and C++http://www.librelp.com/linuxaarch64 dRdRb52aac079d648fa51fbcaff37f0d2d2ada2202ff1429916983c8452eb25508fflibrelp.so.0.5.1rootrootrootrootlibrelp-1.11.0-150000.3.3.1.src.rpmlibrelp.so.0()(64bit)librelp0librelp0(aarch-64)@@@@@@@@@@    /sbin/ldconfig/sbin/ldconfigld-linux-aarch64.so.1()(64bit)ld-linux-aarch64.so.1(GLIBC_2.17)(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libcrypto.so.1.1()(64bit)libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)libgnutls.so.30()(64bit)libgnutls.so.30(GNUTLS_3_4)(64bit)libssl.so.1.1()(64bit)libssl.so.1.1(OPENSSL_1_1_0)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.1d?Z=Y, @XX*W8WrfWW@V@VVUthomas.blume@suse.comastieger@suse.comastieger@suse.comastieger@suse.comndas@suse.comastieger@suse.comastieger@suse.comastieger@suse.commpluskal@suse.commrueckert@suse.deastieger@suse.comastieger@suse.com- update to librelp 1.11.0 (bsc#1210649) the previous version became incompatible with current rsyslog version 8.2106.0 - Important changes per version Version 1.11.0 - 2023-01-10 - code cleanup - AIX: Changed ERRNO handling after connect in tcp.c - AIX: Add handling for other ERRNO codes in tcp.c - bugfix/TCP: relpTcpGetRtryDirection onyl needs to check direction if SSL is active. - AIX: in relpTcpRcv we need to set RETRY_recv if errno is 0 - openssl: fix openssl exit code avoid double free of ctx - librelp hardening: Fix multiple minor issues causing debugging trouble - OpenSSL: fix depreacted API issues for OpenSSL 3.x - bugfix: compatiblity problem with openssl 1.1 - bugfix: Forward return code from relpEngineSetTLSLib to relpEngineSetTLSLibName - bugfix: make relpEngineSetTLSLib debug safe - bugfix: warnings reported by coverity scan - gnutls drvr bugfix: library called exit() under some circumstances Version 1.10.0 - 2021-02-16 - TLS handling bugfix Version 1.9.0 - 2020-11-24 - openssl bugfix: preprocessor check for tlsconfigcmd code - solaris compatibility fix: add strndup compatibility code Version 1.8.0 - 2020-09-29 - gnutls "bugfix": handle receives who break connection on close - gnutls bugfix: per-session memory leak - tls bugfix: RETRY not correctly handled in TLS Mode & CI improvement - bugfix: librelp.h contains duplicate function definition - removed some more externally visible symbols not being part of API Version 1.7.0 - 2020-08-25 - some internal cleanup (const attributes and such) - bugfix: library did export non-API symbols - openssl: Fix chained certificate files for older OpenSSL Version. - fix FD leak when socket shutdown is one-sided - TLS: Added call to destruct OpenSSL remains to relpEngineDestruct - fix memory leak on session break Version 1.6.0 - 2020-04-21 - fix namespace pollution - some non-API functions were exported - replsess: fix double free of sendbuf in some cases. - improve support for libressl - Modified GnuTLS priority according to standard crypto-policy guideline - tcp: Missing pUsr Copy to relpTcp Pointer fixed in relpTcpAcceptConnReq - report io errors for plain tcp connections Version 1.5.0 - 2020-01-14 - bugfix: too late termination of relp Engine on shutdown - build system fix: invalid default in configure help text - error message on invalid TLS library request added Version 1.4.0 - 2019-03-05 - build system: enable openssl by default, this means both TLS drivers are now build by default - support that both GnuTLS and openssl TLS drivers are active together - portability: use GCC __attribute__ only where supported - bugfix: build problem when HAVE_STRERROR_R is undefined - bugfix: openssl driver did not properly handle retries when sending - bugfix: in openssl mode, cert name validation did not work properly - bugfix: invalid handling of connection fail could lead to abort - a couple of minor and cosmetic nitfixes, improvements and cleanup Version 1.3.0 - 2018-12-11 - improved error reporting - bugfix openssl: anon mode did not work with openssl 1.1.0+ - bugfix: do not send multiple open commands Version 1.2.18 - 2018-09-18 - added non-standard "certvalid" auth mode to TLS authentication - bugfix CI: make distcheck did not work Version 1.2.17 - 2018-08-02 - added support for openssl - improve code quality: replace strerror() by portable equivalent - improve error message on connection failure - bugfix: 100% CPU utilization due to busy loop - bugfix: do not expose symbols that are not part of public API - bugfix: potential segfault when listener could not be bound Version 1.2.16 - 2018-05-14 - API changes * add new API: relpSrvSetOversizeMode() * add new API: relpSrvSetLstnAddr() - support additional hashes for fingerprint mode - bugfix: potential memory leak - bugfix: memory leak on protocol error - fixed a couple of minor issues: * fix memory leak when relp frame construction fails * removed unnecessary code * fix memory leak * fix memory leak on relpSrvRun() error * fix memory leak on relp listener construction error * also resolved all other issues reported by Coverity scan- librelp 1.2.15: * CVE-2018-1000140: A remote attackher could have used specially crafted x509 certificates when connecting to rsyslog to trigger a stack buffer overflow and run arbitrary code (bsc#1086730) * bugfix: invalid handling of snprintf() return code * bugfix: invalid assert predicate * some code cleanup * bugfix: error message on open error was truncated- librelp 1.2.14: * API extension: add relpSrvSetMaxDataSize()- librelp 1.2.13: * bugfix: duplicated lines after server reconnect- This updated library is needed for latest rsyslog(fate#320546)- librelp 1.2.12: * API enhancement: permit to set connection timeout * cleanup: replace deprecated GnuTLS data types by current ones- librelp 1.2.11: * do not accept more than one "open" verb on a connection * fix potential segfault when high-numbered fd is used in sender * make librelp not run in thight loop when out of sockets * flush the current recv frame if it exists if the client session is restarting * API enhancement: add configurable connection timeout- librelp 1.2.10: * fix a problem with sending large buffers * improve sender/receiver code * enable compatibility with older versions of GnuTLS- Make building more verbose- fix build on sle11. the sles_version conditional is just broken- librelp 1.2.9: * Ignoring return status when handling syslog frames now. Otherwise valid messages in the frame buffer will get lost when the remote connection is closed during meantime.- librelp 1.2.8: * fix segfault if KEEPALIVE is used/sbin/ldconfig/sbin/ldconfigibs-arm-3 16831351371.11.0-150000.3.3.11.11.0-150000.3.3.1librelp.so.0librelp.so.0.5.1/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:Maintenance:28858/SUSE_SLE-15_Update/9a59c1a9351e180e33dc0250255f0d7a-librelp.SUSE_SLE-15_Updatecpioxz5aarch64-suse-linuxELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=36c6c7046cb769c61b7f031289296479cf2d9af2, stripped PRRR RR RR RRRei>ƉA/ Peutf-801d531ae1850bc3cb4472a0c405f34993b4a00091eb1efa375dbca2434b1486e?7zXZ !t/@] cr$x#H~vNn4xzLfK2(Qs ub'&iV#MR3ևїP׷qǞըs+]p]PnȒL"mPj\u9HZqL@CS *tH(⹈{V'a,L>Wxj8h Izy?bjRQnYhX <-ISejטu,yw)#'0 M>Yf\@aiP>~k{UEr%byµ% ;+ ҉=zؖh &頺\Wo e#sXG͙[I9SW vLIؔDlbO-5!>jL|P xC)rTO-*1JUXpInZ7*PN9+b~#)u +4<@r>īoj\77Mhfd[B~eFn#[U4@iࡁZ$F *|G62ڟ!*N<7VSr1F}q,l*\U#*W"ˎ[EyHDM'vAzu6%X&GD"8kni>|=-ȀO L TL F Qv ER u\özCuuj$MSX>/D&|L?em)~Gt4$jnz<Ώ4M t% QBm爄8Noa+pޯ.;*4@})!#7{‰$A5/%]' Qپr xvp}_+^5[#4ō},aPuQ~ kf(^؞x; LțHT6è7w{TcUc@D&ORl6pa-'5ƍW8Ox.$oir+~Q>4ЏbO"2=f_9N6sNwVm^  M`q|0,7:FVr7U F u6vCQ= +'C IV%G=f2Ml--߸"8يN7x+@% *9D{!dɸWWvt5T?KK8\~exe[j"KUszNg%n>B7lUePt@$P5va#zWJplN&n)C&XOB0*i|nhP4*4Z|Rsp*?#\ YiۓEf[r;' )]C?@7GfHB*U2` Z9oC/u=g}tL53'z5*Y`)X`:idH_=)mq!"NSN+Q0J -GD9 !2,{c M\ 8D2YnƧA/lAx ::*Ѥc^9_ZgDyNgq\ȷe3G ǵd4z'Te)aӤ?C`ʵOD:韷wY࿘d}Bźtz7S\5|5%!q'\O6Ϯkt8Y_j&F*Sl؎a-.tUv,5jOb'T2qH~R'BӪDWW U>Im!MWʸW``s"@C@Zs}q)1V5wYjPM֫Gמ$">.۩q.`3N&FoQx?#kUd?w-?dΒ$Ej1Ya Efs{_)OKtfhNLR9|43\4xG PL۪gZXDLZlCdҫIW"u+c'o~/oiV)jin .]r*[U5 %-b!gq$b-q1rVbjQXwuŵx;Y?·/"PvKGmA2&AѮ9EyZX^5&WHveڋV$#vsћ8Jnd#-kxE):~ '}e[k٢e蚪[3m}m.뇑Jj(.8nhsz4J>T-k^"T%䠍om+@ڱ\bh?H;T⾒s>Aђ ̳Y>~W:q64msdm-*U-0({á zZЎ~0!X#刿+sNl^sX\lg@yr|ԩtue18RpX,tCݛ+,#P[sIt#4nhQKT]KI%0a",l2Rˀcbolg9{E'86WlTBsh^#z!o /1n^"0v̺tjDu^2a;`>A$eslin ULcWsL|Vm`5Vǧ27;?|/`r%@#65 ~>{|u 5 /h Y$WX5F&[ݍЭ]c}F?#HZbڻw.bsJ-xq);݆YJj* `# uW& G2j_6/0ޜ2`q wQ#;g&h)HlJ!٥cdI3q =/y\~>+:K˜B(i]D.>%(iSĕsDymWsrܨDƛPnp&$V\ŜVry1 h@Ōo!?&$Jx>\mukϔnA 3jbM~p-W0c86Q! Fn"~ezAK{CMElY싛ǵhń]&[ܜ.X8 nn]g89EZ Hefj2 _3>Eţ )M0$Qo):'x$ߡW͚MW#gӺ1Y2hq,@fu^ڵ"'$zZH`ʓ >ۅ_ GT]dxƒ;5( e+K5^}lչ7_B<}bIZC0& >K봑)p/9ʎFlmY +F_C+{z&T>EAR Zy:gu{V "Ak ׽k{Sssc '7CNg~?QFE=19h.ؓ417vIz2~ޭͨ+Xԧ1dzZHՉHa/)(dr{rVڼcgoc!%1asNϐ~||;u>[iƠ4gz 21OC} $}Hsa9=dc  Chcc]SA ɍ/GK)Zgڴ*)~ lH s yS7 (#Xծkă2<R(yzjT "rr̰M|^t_kh~%uTH*=$ɨ"zDseॡ5{LE5~"fVGtP1/aG-iKEKi'jp|r|h{[/pGVzzpB8DjP,^uI!u>uѾ`dn_gj߳߹uu47PYt8!Z˻c:Tkaft} ҃/XdDN6b jF&^($Xc82R$)HF*^#e"G:@q`nh. E 2Xgm`H);*8:5&8Dy$h'B?+i; i;&BJ,FoHS,fPo(![gez&~; =0͵>KvFvN%:l& )yPIkP`ZLċ )";"v{+9=zuݲRK*fi`} 1B+](yt-ngOWieE2L_:Ίzi^\OR!3=2I*b=?T?rFw<{?Tj"Q?lDPQmGK̇Uij#L9zA8ӘXT1e~͎Vr3>F, pj <8tCЅi͕ܼZ?('vN<"8gf/KvXY\!q 9ShdmIE ؂rJ67GZDzn>^ϙdk5F S_Df*nv,:$xG66a҈g*Z<[>[3kۍaeXV.&`]<$R˹ƪ6HWNx ^I,}ީ vʢ!q.S-_X*_|rKXIۄ!gڬ18\Jm%Pᝉ>VA vIC(9:~{:[$ ȧ\ ڼ9>:tv9-Nɽw%Gti]=2}ܝ!KyWQ('af,%H˄4uW̼9FTb4.imUn9 *~&JRh2ҷm: fՊ}t=6Sح-kO!m1;N_[!3b|d,r7鰀$*soFDueJ>TW }3[5㢼Nz}=WDqrұVYAZuNcAD ֊eW*m8r^T`!ЂK5#QKJTnRЕ_ARPUJdn_wU#i~ռQ_:*u?T@zۡ~(*ϵRvlgCK矻w,kW$Fuꦗ+yx"?s*P?"N]9g{t:S.HUwO LD*lkhueAVU't^ R%P-kc%ո@$u~)B|*Ϙ\ _P GH4D ~pqyC>L{古woKCW34E muEg${|ͫدÑRQBQV=;-,FZ*5n{bXP]$x N0SZI32S%~VlV#g`Eʼn]7T0E=ӻt4_D. {#w!Lyg<*iVA|BXHDTF%Gn˙ Ayɑ?6 ΟTo~:5ѕJ,qot\^aWK'i2q˜ ~S: ئh4ME/qUFLӚ^;BUHK5$8؁%?4/1.94UF,*yU5 )6{j4ցjFgiZQ2WbDIWB%9&I٧g=]Y|U]1FTD;|V|:z_"'=ɟTُL>p}g]4,^#Wy2FvЛ14{ɛJw&$] gxRgЅpϙlnAXaG7:TrDɷ ?kHg<%Tði0>.^cmh__ԜVltF4N/2=.bo*jIcrl-zu,sLۯ@o4Œ􄨶O>(xhdRjcu h SDA\-SA6<`WOo>`9 F4@lw pL&b\X/l%fB?dP4j=~ӗz,f ~$!Hm'vTod}Q%4)BC q46A*ՁW޴E&EUٹ?08IBQg]y9ZCbQ$;18@}hv8efM1"$AʛIuw>9Zr.`.+ L< o-}d)B?C(I 5jnAI K>z1+\1${uX7v<󧇽ZW2Cԕǧ̦h[UaZ蠰\Xn_^9kk֒o.}NAKYpW'ł3CaH/' ΔX$4ɓVj!!捸_ *%iE n))ޯU]f@Xr_X6拟taX$7ifv8Ek\X@FOPICc駧#ٯ.棌"c/zVtEh5*{l]&Ӑϋb:7%\ zwK1Nznvyct$_<%Ay-̻3>&pPL ?;Ȍ5n slG{N"5Ukdr LY瓱w`XS<k' <v;x'K?W(z9d"Pٿs%{=} 44F,/IB|( vXtc]$d]Paʔ=ƒvtgFUwsia?keiqrя o7 >P[\go7[*ɘ`Ep6X_a %-j]&\n @9CD+O32`mVTG&2@NRHm4NfN[ ߺ Kj\`W:=,pmAq~ esVmY}ۋekEf8\i *;LEEgF G$ :cr="rH'Frc3G1JTn5 pEg9Mhp̙?~n956#Zph8X.hyWaT^LDniT;`?38! PʸD&}9p\n6Fu9r/n1lL]w5m̭Fg6pUs`ui?Rcgs,Iu& xd(9=7D&+N>#2O,BysGvu; kwHr؟G Tf_΄UkD!rHfIE`j}ɓ C(Go 4<4JkА8wx"zNS?_^l  YQֱ 4۝ݖI|j=#!/j9G{dgi[ݍIXH~g[fTS ˞7Y 8{%gjlx{2  IDvz nJ(`sR I^Z[[Cke!%N: Pu;,yvĄ@ehK&ᴢP[i3`s9Fv :)`US4FNbl BІՋD@56JM榈2s4,Cvg/vPrR]bオeOWR)bה0RFCo$KhbH5!_0^[g:{`~Ia*46pR]\F^%30K]fJ$3'+ N-JTB(a_syl~Axl\Ŕ~v\ɗhyZZP>?hk% .`GpHEP5/.e p/*d|D;#$L)`5E{#~/Rd?͈D-byL R9h~^zKݸq_-?7q8iXxgNe>Ps+=@o氺|}7M}!gfJmg6,l4hإVij.҂_nېnzJx9$BTƏ"{Ⱦ\Y |ܚsÝUg2nsEaqOUGR5+P1x}yyuߥ8X`H߹44 Q D j=V\}랅 T(޺#Q籘RoR;_=w>2]Pwdf%$ ߈  , M(?|q3Y8 ~'bm#VuTge1&G,jY-d LRsgl2*NŖ7UOkesy!!=od\{J5-PSi-3N4pRJ˴S;<{:g)aK47L8ZSh){. {ܑgbZ`ٷ^~ަBc[EW{{ &XsYSYПtgҧTִ1d+юSJuƴW$|r Ǘ9S}΢26 HlPp7ȏ*ݎ-ܗۙR A&0;0z~9Hd~_Ly[]ziGuŪ"UjJ@WތxZV#T~wߓ_łq#"1~A[G'۝{5Y.9G93˞ϰvͣ! a5ՠIsY* 0W @B8Of,#}rGß $ϡ; տ&ZRz>-c~tv;䐪ww4X˽M~9[% L@ϨGR1Epe ϖ ;@﴿|HcYf`!(BI%m(<^9jg<vx>gR+E#]uBϊ\0e`XQVzڭWՔ6<{h|3K9"(Z ?Q~ zduLc|G,v5Tx\Qv5|? li,~DFT^Y8;gS[4/u!7b!Rd϶<&S9w{g巕p ,-2\Ʌ}}U'Y45wbƄ# ՔP&cȂ;׫UD"tEn,RKlY=vnemhg HWnN!S,PUǺ/EE\5-4:w 薨>((@^RMku6,6vԘd$FLT} 'Qz8YQE^Z&3x#oPQToHOgj؞ͅMd=>{FmH#}ZǾh[H]/Iz᩹zqS9-H4:93X[{hGMezTG܋2BZڳݭ&ǽ'6i\@YR%+Hg|̼8Ha`)L^~)o^y!o6W wm\1"[S9YKX?]s=BdC>hxvwtռOKG4bEYu :c2¨ ٠\j/񗔗7F;/hbgR;`# 3QK/j X\+G;EDZ^%UD\͆.D<;"ҋ*ɯԾ+$xdYPq(d~yTVlq*F=;IkXeaǣT%kn( J Fkc9!!Ahi8;|׭5<Թct\%Io7/ bཌྷ܅}l.@J=Kd_HvRx|C%5 .?rG(*1FlF[OU^gV]T)L,k U{{|}hq8XF:tHQaHF6ȰMtu0LT* ;ǰ  Il+|ž1JwP 6˕n*:%}~EQ)Йg-y&erH1.:D;ơK9Vg8YJGug}sZlD0yy!įO p"(ƻ5Ez,JuIT;c5{, ^^*!:pN궻 RwQN]|͌8ᰐl! h~DoE\ر`lij_OCX RN9+X:L~ZE+ Es#Sv:aޤ^h7A:_Ejގ査f1M.0La٥\7r9G9R`se0ޓ^I|c: /a)1G& 5K=+$&P߳QO׽f o?C]~HQe՗& \h^1c|65*i@PFjY $HW-M>%@yy,Hpе?p罚8;F6[ w\R_lOV9WT;A\ ]N`Һ(i]ΕL0MaX}q" oy;V Uڞϑ*'^6J4C>V“T\\V4A{Fz'TnzX O~<&:d-DUǴ^i  ԯ&?0I@_)*#iQ 9r#cnODzE9Yb_Գ@U=xH?A{/<o|p&Qh`ј9;D YB5sE(~%]PD3C27?떥bIT(CP Qu2TrLmL4RR5׵3Y%pN^P?דx50(YA]={YSp*Lf}b7xEkvܔvUե!n-w#Un8 aI}@iǃVr yEwXؖ[ uy2"ISo`lh`/{)a.ΪqvMS72 zDxJj6NkdU>JWc hկBN~cas﯏I"h9󸡃'Cm -Z[-͢za~\neI+:̂!x6F7ҏkXk6Iރxt_D߾.{j34l0=%L<7P../\n<WuZeC5 |2@tg ztҧF#s^ՓnHlv2M^5<}6xJ>uأ\gOg(:E*؁lqԵ~mjQO9&P  iJ/ƒ_̕*!% M-Tӫ %D&' L!>5ȋjAb (_8&W j.;a켚 F&]_6=/OBP~Ow%,Z;bEȰ!rԔ'<:&D[*1}5y!; H(ۯH< j[Q ъcFQO)ۂ 8 ՅT'(]^Y+iw4ѯ9h!Q`[cR'V[ V͓o<):#5%cI<"F Þo~S[!]dJ"tnos`ejD%b6 U.jC'sm!G؟4uX 8D?(Kg*YVzs c:QlR˥SDݦr`~|{9MZ]rPbU7A)de3O4&bNcõ‚Q%ޤf"AţޕPŹV7GY,EWs:Ȃ|SKONIR-!㓃Rezi\/^ (\8,g|мR4g@72NO'lQOdpa=UktVYs9q2Z c[e 3jVrn&{ B~Ax!ް'7pË[)[-./v fksd3غKp[h.=>*nSHZ7Ʀo|)2/BFkG ڠ  $BAZ+x-]'G깃=lςOA>7#9 e3f go")Qjl*cn&Tv)u , m4T(zW!&,tRM:!"dgWz3]aև)ỏ, R]Z6HvaR-@yprmÁ(y4^.1hdhESZIÞb4#=N9t&@7?:4$&Л}Gl@ K-ktV>J'%~B{_GUV8U|L&JR뚂8sHVw+vm4QӪA S1S`3p،z"{VW ,gq>y:ȕ'ҽoU'9a y}v:N^5]gu۸0dnc*_'lqI=7X/l9[ ŏJbxCWf]Pʮ`,3B.HYY}cmh9&e)uF);|嘊pKȸg>tV4^44<كL[uCoDNn,t%\92d<@d;RKABtЫk l-[ ^𛹕JѦZmm+.=C 0iĪQczb THʑ ]-1  &Cݠk $:Ɉ3]l"qy4W!%!q=_WKZRסF% ;$ћљdS$ 30HC d %"aՖ n~iф)W OEہq`ȶ'k`NM`FqaR7PDaxn)ՉXJjng7K7?j>BIpDQL̤fp:!?*__"( #p -*iIAat$5)Vpݶ턬jZEw3N6%9ʖxpw}dP|Z=|Wɼ#g*QJ.8e]̥'Ȉ)" dL3")v LaŸ{$O#rA8%G`Ͳ*CfV 9-8] ;BW2ъ K**PkU}(0_ A j֞!!fު n,!-E&g~D68ȎGCBOy>Czw_ MzNjtYdQo>dÞ6 9}^lJ5dZYCjo9jKAP/6* )^y.fe`D=>ds  yY (șDӒOR/, ,(lbtbu'`?C SQ\t ekPo4n)v%m;Y[h3r;|Yc*\oWNvN լ4VQF"eted|G`0|9΃qF@ff¶[}iFe&y 1Ǜ&jMj؎]<z?\6Vb VOXw]3 AY|}]o݄s lu NKL XCܰ~eϫaW.~F{I |c/ SLhV L(d׬yhDו[o|?Aӻ 0d7xETkkfjnybh)@N&jp}NM}ql$5vQH !a-k3a~PL@j!}qeoNʋLF+Q 6DqDGtuMZy@;@^Y RR ?ksvߍ1 9!D㑄,-0P?Z5 cfZ͌nYMA`-$|[zV&0ݳ쿨!0XdeݮY*7+1,򯶄ޛ!Uf:(E3TȚ4wv#Z4p0 zCնpRUT3ۣu(|6R4ZaS 8'.27K%+pL.˄NsJDXcKK{o)CJ6%"ER.kA7t]Ȣyd?Φ!kcgSP̯f^s àIFOnHdqޚ,fhnpILm1*U]rvs>Nܝү (6-7uKshUteFg] ۏڶ(EN2g4AwL%s_Ky}͍dڙYώb6Fl7.ވ¹rc8F N (ZKq ĄG )fwM.T7h 3}t4}(ưB 0JI|ŀJlh:n?P3A@ojHIT2O~Ha^p yTt/󾎲M5?1cTk?'B ocH'=Z P{0shx@sLT/QMzX"5q( &,]s laoTQk:^n9y\q)\nН3:A4͡TZJ;8I(77U! _#-܀F 2.fzD4q赶PQJ`Jנb@&O&)&J6LWIT[;0d*Mj`A,uI*1kE,e-J:JfT(rR"@ka6` M7an{*5X;@䀰FMÒN"+!Q#aƀ))fsJ7dUHtaP ]$ȉ|vcM)'Uo˹6>8d-}$m?=Mܽn)')z*/)05x %_f)qC1P E\X8(<>VPCf7dwvnurb~٪P t%̬9pKe &68(ڶ&HrI%OUMqǠR@S?+o `̱Vf/k47\TQ:%~.|!~5LDIHTAYZW ^[?)dw6l$/$U 4H&l diJNOOr`ED7~B K^Z'oDQWiq2Qy'WhޟU4|>,-o~V"$Jw"2^{{gDͥUhVPNԭʲJYc)oŗ`\Pĸ(2]KC_[ClճD!n;K(t1뇟|pPLYnBΙR9nru I#QSyЇIr-sfs g `8Ȭ(R1+#T#Ts>$#}BtѫE# @wFt9mvs ֏y0QGX2<3qPi1T2xӆK(k- kAD~l6WFjAb`ѣ䛠vfao G-|%L#k6yITLh_Vݧ; hU ^)-GUjC;8a~Ց 2nvu00}#,|A?{kF&ϱp '^Y?I8֎0Cc'J0,i@l'S۸MK TEDn6s L d^t=5Qo'lELȠ`uhbuAh\N؏CKsar;<,l͉wF ouOӵ-cYdR'a0uFiWX#c>{_Hl ]|ݸZ9HKO#Ed3-io$I@)[ : :>FS\GQی$˯Nj^`&,lK~\u TZ1Q)Z^k?I(`znG ;RchB gs sL?"=E8No7m"AcF@7my9bQL;xfm/?Wٓqza]~LuV`Le`XQq zt@K}mv7ebGK"VlI[XuUp4wu z,EAt CD~ADABdYjU:gǼS q}Ўs,Q$m9VބIFac^b{8Һ/p)^,oV\?z1HX|"i$p3ŚCK0r؋sHGhKLy_`gwMOGV2 rlsi6Pa66\%7fuT)rwя:6Lj%[Dǭ, 4A`^|.s+iYQm~~2ՖQ :EcE`vli6EHkyzVMCd%Ԕ[;6iVzKTWG~Rsͨc(a֋5 Eg A+\Å3 *-i(23g45.ts9?ѻ(˨ Zl#( 3Ц`d VHnRENLW鉌)0h8jnDc H PԐ@1^벁,j`<6Jδ:Ȝj}VrӴ|{8jz!ܴ$SJ%̭{|H530",*2@:+Ъb8qkq}'E1I+eiO~i(ƌ@x91mv CfОjlw4Y Gd#d ?z{ e܃S?jH>du-4 gTlu&)m_SlQ0!]2%>IޏAnir_xlZAW9 'O+үIUzeܕ Y/oFҪviSx3H0_xIC&-/y^htN9%9 }""0=1@F*;<X{ ,\\@XF/jCSwFֿ=U#PUOClER<1ݤuvA2DD +$MΐTd;jVG{*_KέZNiW31u õcz{tD/;'^Rm+fFuzYLr.vM= (L"7hXBqD, ۞A|q ?OPA[،|5iw#Vrd&4{; g4_nOܡ M%-D|Y!IyDU=ԞSh0,-ۛ1Kp*dh,B ~/146Qi^Mរ'<ÇCKuoE}pw%K#I99% , V"X5@(Zoz1Ou"הܕm=X2e6+eq\,@ B+&.,d ~cQns"ogW"gOS䃣vaIùolz!1pA!U .zqICtpF&,_[MSEQ3C|)A|USJxqP*J:"S`Obb <) < lچ)nNr_)@S2"4O~K}LoOly[RwC7Xe?tm-`Q.Fg3> kqip6RI؀_ٰ#hڊ iMmX 8&-[:Ϊw^XɫKNqA!B˃KZ 5t e1sIT!TJ(.)$ Jf"=&;Yd;|}c e8[`JgM=ы p~,sGPLP+qJ؏-IC_] \TevY> $MO>Ũǻ.zC ~j*aw^ͭ= .HLUB;V=m;Kn;{"k|Hl,.;LHy)? A  w S>KN?Aݵ%KmH+Qٯm, bpZYN6{2 ̘G-vɉiY 1;]L_^/S?ë}D& ,w7@gwSfp T߸Nz^;¥j3g*A5l7DV̾Ȯ#y7[]lgL}> {{ݤhY G'\dv"qܺ5,3V=@{C/|ni@O^^ F}*-sǺH7 `8l)ord2ݕ.7{[D`%vx5wqLzNCNn#mσSx.u|P0N ^&΍uzBHJ-v^ڃ1 iSlݼ1F;Č0OyN8-V2'/FmyG]]vVh<1Dʅ8t'nBA{.QqE itw\czv[}1Hr<@,8aB؋Hdy;1eRz 2C}j_CLDR'A~v򦔘k aT拂t!} T4HhJnC_ߖ>~ӏqlC3hڨy'@[)Ge]ۼYb cBr^ZydCeJ|ї͠ڣ\#*Hփ9h!llWȦvg//ESNr" D^@lBꄓ! AEFy^oSs09cEX֛5㄰dTU%늻rfv+ 5Qk"H+:EKya: ~KȋՐo)%@=^mޘlĽL's\1brm1_ Qsv]! €zaoC1MC`(3k3ȿRwz6YW $6 `Hr+]!pmJ1[Ȑ&bQ셻_ӒTsكD۠~2?v1A7Wb5j2LPqi FPfуk uGDkXg_ڦK45jQs~309  x!9,uq0-_-i<4crE 85Թ(.HtLvz\KQP~ YȈŢT {96$U{mlshvn t}e]M/Wd'd# v6y~)U(tIm,F,p"Gջ̎@qܼHmkG [/1l荒r{ۅ 獉N]5oNmºNt+KqgT~]М/eƲ`;gI ~_ƞJ؀BH`BkHVD'84 ڴA;?lΝy\ Ey Oy$*YH9㆐G2KT6bLܶt7σ1(͞n"1jw4 R*݅Q<;oYa-l=}ahaɤ5U-Uhz;(r]DA+8esi6On="fUϚBE/H<0qaa6\ 3 U,epo{Ȑqg[&;@6O~a<1wDrӱTmW p3(0Xk-ej%")[?<۱Khom͊r\dZ;Y2{$a:U1(&At %r@&1R>FTԟ 4L ifY>H>tBIQMP]*jУ͜ x+A/tL˅`&^Qݹa0f|iב!_vb}/N&.|-|z]9!rgo,FȥU<w(6D,I}AJQ'#ZAFjK6e)bT{ݍ145$3n2MsѸ.;[/(#6>I8)@ltԬtHq17G5@^vwZP""t.#P p]j2<PED \X|wI77I2DZ!N|v8FԆ`d0}sWsC[ᐭʮaF\0dB,L8:ϢՔfȁhSCa?#IK HhydxmRAkTut,zJP>IϧEɡnat=UaatmAYun#sMpJ=\qus=`QA*܉ I56Sq+DBpM#\ x9 @ rN씣l΍ӟ"qZ `0 ((E=Zywl}Y7ߍ![p*4({gMr\ UYj|Aݺ'mӀB[j ;KIe}*yYBtT&  FU |tC~?Xⱔ7jd9܋X' StjRv|[d$Ǽ9:ۏ̤K 9&[_ejhkyJ_,i禎tyCC'Ex/ئmo nC$xf"%HQv%wKrjS~%?Fdu0@xGXL?EsBW7[EYZkl7xlgc|7.?5k'/PD$V q{׹At G$tDkG`,FX7v/!8B%<> F13V,upG9Wm*;\zjM8cg[(.n&Ze±zMǡITd%]B`EGUI\Yh*o-킅CKC8tɅ;H#"~MTF[gR\ri/v> pLZĝ#[v` 0g$iL`sODFPg&KniQX ;6 9xyQn*80^U8""8HyɉhzUtg n^9}K'tze{8^{68XQZZw5✋ȸ4x"hѧ)rO/ kՍ 4Y]&`κ@ه-2zb&ܢJeHYzCݿ@Ď_EG$eKײЋŨ ݘUmRr֤սT%Ѐi nܦ4R_McDFs+ӵ ]kÓ{4Og5[HI]RR;K X&_5^2$pM׀xۏB_]2/pFQ I$.AcFTqYG}R Bmon{9zŹwʿhZXC7c'aI?Hb bVѣ]o:[ȏ&gm8!0JONPkD ]'[smo[m;1?oPY쾻]uy`+m!89Jf7R{S =?! p/=:+`|f38/\VlXSSoµy)/rƪ#A69m(6*PSρwҚȶ˯;1i^;_x.Px U=ݜ`X K o(h8qB[͝K}-QfDzX=5)tG <tW':DƤhŋS3퍠1xI%-<4qv+* "@ۄŴ5M^b- ÈXtlm4jb[jER,n0X&C2?;Lެq3qh^,Dr?F8 ?ص: v*KgZގVq*9`OVc9 &_06ہ0~f4](C3KްbyRb4ҔtR%r7~9" {SS>] vc`36rdIBB"R|x[)˻5\-D69i]P.h6Շ7=! r^ zS*3>j~F>ƕ[Yn`u(PU뇴 \obQ$19k-t=c7?{Тf. _COғDX   שn#ʶ YZ