knockd-0.8-bp155.2.11 >  A ddԊI%z -3i/L{&)oIU'mt5%S -d< +%mOc|n>[θ0niY;L"IXHʲS )61NWӟsF SjӤbg% -}W(E@w>6@Bj-kt\dwUVtMp̞P=9 hn&w/p;2Rg|O‹wd,0o 41f1tIt?)Y(4 n s<"<;Js\m:WʇwW=7O! R7V ;M$xX_1W8 I&39\ȭl{x""f>NӳqMsg%wCB:=7wt>u#Qx)5مkiPeU*Vx\X6_Q[ް×I>ֲZC\Y#2>pF \? Ld    /DHPTqz  V W         +  @ l   $L( 8( 9P : =>?@FG H( IT X`Yl\ ] ^.bcdeflu v0w| x yz   HCknockd0.8bp155.2.11A port-knocking serverIt listens to all traffic on an ethernet (or PPP) interface, looking for special "knock" sequences of port-hits. A client (package knock) makes these port-hits by sending a TCP (or UDP) packet to a port on the server. This port need not be open -- since knockd listens at the link-layer level, it sees all traffic even if it's destined for a closed port. When the server detects a specific sequence of port-hits, it runs a command defined in its configuration file. This can be used to open up holes in a firewall for quick access.ddlamb02+SUSE Linux Enterprise 15 SP5openSUSEGPL-2.0-or-laterhttps://bugs.opensuse.orgProductivity/Networking/Securityhttp://www.zeroflux.org/knock/linuxx86_64 if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : for service in knockd.service ; do sysv_service=${service%.*} if [ ! -e /usr/lib/systemd/system/$service ] && [ ! -e /etc/init.d/$sysv_service ]; then mkdir -p /run/systemd/rpm/needs-preset touch /run/systemd/rpm/needs-preset/$service elif [ -e /etc/init.d/$sysv_service ] && [ ! -e /var/lib/systemd/migrated/$sysv_service ]; then /usr/sbin/systemd-sysv-convert --save $sysv_service || : mkdir -p /run/systemd/rpm/needs-sysv-convert touch /run/systemd/rpm/needs-sysv-convert/$service fi done fi if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$YAST_IS_RUNNING" != "instsys" ]; then /usr/bin/systemctl daemon-reload || : fi for service in knockd.service ; do sysv_service=${service%.*} if [ -e /run/systemd/rpm/needs-preset/$service ]; then /usr/bin/systemctl preset $service || : rm "/run/systemd/rpm/needs-preset/$service" || : elif [ -e /run/systemd/rpm/needs-sysv-convert/$service ]; then /usr/sbin/systemd-sysv-convert --apply $sysv_service || : rm "/run/systemd/rpm/needs-sysv-convert/$service" || : touch /var/lib/systemd/migrated/$sysv_service || : fi done fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ "$FIRST_ARG" -eq 0 -a -x /usr/bin/systemctl ]; then # Package removal, not upgrade /usr/bin/systemctl --no-reload disable knockd.service || : ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_STOP_ON_REMOVAL" && . /etc/sysconfig/services test "$DISABLE_STOP_ON_REMOVAL" = yes -o \ "$DISABLE_STOP_ON_REMOVAL" = 1 && exit 0 /usr/bin/systemctl stop knockd.service ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in knockd.service ; do sysv_service="${service%.*}" rm -f "/var/lib/systemd/migrated/$sysv_service" || : done fi if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi if [ "$FIRST_ARG" -ge 1 ]; then # Package upgrade, not uninstall if [ -x /usr/bin/systemctl ]; then ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_RESTART_ON_UPDATE" && . /etc/sysconfig/services test "$DISABLE_RESTART_ON_UPDATE" = yes -o \ "$DISABLE_RESTART_ON_UPDATE" = 1 && exit 0 /usr/bin/systemctl try-restart knockd.service ) || : fi fi9PF< A큤A큤dddddddddd`MM`MM`MMdd`MMdd903eec17229e821bc99636b8c81c2d51b3bbb4ac9034a218e78fca94a15aec0665b22c8cc9cd46cfc21250edc8ec2c54a628d53d5d893cb20f34798f87afeaa3634e674b352bc1a3287747d79e452699450a8bc94567b29bed97b843ee64fd5cde0ed6e8915e7954a225e5fc0a0071d4bba415be2740321e69322f752771fe67c7374078edc9ac065d0c9564664a87d8a57fe26169bf3679f3158839d4c0a1142abdd9d31edd877d4f4e07c41a7c4973998676fcf9cf9df572379d0c4543a5fbd747e19206e41702e40822dd91d37cbf40edd86f364ea416d667a0e3013f718948f2a000d26c57334340095be3ca73ea076463d2a892fcea83fcdc98dcf9dbe5servicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootknock-0.8-bp155.2.11.src.rpmconfig(knockd)knockdknockd(x86-64) @@@@@@    /bin/sh/bin/sh/bin/sh/bin/shconfig(knockd)libc.so.6()(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libpcap.so.1()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)systemdsystemdsystemdsystemd0.8-bp155.2.113.0.4-14.6.0-14.0-15.2-14.14.3aS`]%@Z@V]J67FEYE#@EJohannes Segitz Daniel Donisa brassh@web.derbrown@suse.comp.drouand@gmail.comaj@suse.deprusnak@suse.czmskibbe@suse.demskibbe@suse.demskibbe@suse.de- Added hardening to systemd service(s) (bsc#1181400). Modified: * knockd.service- Update to version 0.8 * Multiple fixes (#67, #77) * IPv6 support (Sebastien Valat) - dropped knock-0.5.patch, knock-include.patch- fix uninitialized tcpflags variables in knockd.c (Bug#1138376: Knockd unable to start after upgrade to LEAP 15.1)- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468)- Update to version 0.7 * Document the 'target' configuration directive. * Merging OS-specific networking code to reduce LOCs and the sea of #ifdefs. * Added 50ms timeout to pcap_open_live() to reduce CPU usage on network-heavy hosts. Pcap recommends we not use zero. - Changes from version 0.6 * Cleanup: Don't null-check before free * Cleanup: Consolidate flag-check logic * Accept single-knock sequences * Introduce a 'target' configuration directive, enabling knockd to react to connect attempts to a target host. Useful in cases where knockd is on a router and you want to send a target a wakeup packet. - Add systemd support for openSUSE > 12.1 - Update knock-include.patch > knock-0.5-include.patch - Remove obsolete AUTHORS section - Use download Url as source - Perform a spec-cleaner- Add knock-0.5-include.patch to fix build failure.- changed libpcap to libpcap-devel in BuildRequires- fix bug #220355 (iptables call is wrong)- fix bug in iptables call- fix iptables call in config/bin/sh/bin/sh/bin/sh/bin/shlamb02 1684330954 0.8-bp155.2.110.8-bp155.2.110.8-bp155.2.11knockd.confknockd.serviceknockdrcknockdknockdChangeLogREADME.mdTODOknockdCOPYINGknockd.1.gz/etc//usr/lib/systemd/system//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/knockd//usr/share/licenses//usr/share/licenses/knockd//usr/share/man/man1/-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:Backports:SLE-15-SP5/standard/268001654efc1aefb496c4f067fd2e0a-knockcpioxz5x86_64-suse-linuxASCII textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=7e6b1c41a4ea2b83568c4b39201b7266031400c1, for GNU/Linux 3.2.0, strippeddirectoryISO-8859 texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)R RRRR Rg48!XK;qesXvHF{+V rc(H F\]Pi(ezr{-ŧ 5Y7C>"]P V֍Xs(i9id'*XْhO2*ŋq2I}D|ܑPDpMRp)1I8ת w@T6IuK>֥[8 e.ց6WJ́lok*v(1BY:{4fjETz@U9fhhk%'FX&"Cx&??R(刳|bEԅ>h1TWGMG`+p)ha2a=^@RT6oʉӼY%peH鄅eI-@pZ$%lcN̖,c} EIdkeM'sa\ц#uJ ^ J}F)QlZz1'4ӱΥ;i^[ Ρk\mc۵Nn{t2W-י%y{#CłcMXЋt~|Vy$|)ETߍ]L,?Y6P?5 bp= `cF6f6M$禖Vr0_o,0# vhz ?Auea#xo_N^u\5d xrB@`IzRop*韟?O|!OCrE(u< !a7cALאA\Px2[-fX3'm_)w{1M1\x)|6kXkyɮ+~5b|r_9'n7`8p?[ ^KVDeD@_K@\eaL-o.+ L':kf, _x#ۚz(3ϟ.+9aQ[y&qdIe'_n^T\9Agv3tͬ^}Zh`l3Yo4Wep=iSNs/ f.f|B5xS,ڴ{(r Yn>t sz,<CvYh\#d ʇuMދЂfL' a 5]3iz 0Vv=v(g0pqC'rkL.&RHhjv:z\LȇArr,SE(aK(N ^K6{DҢ{^+M#ʻD|!& b~xfK ZbjٱxLK{~ϡbJhZ1{tN^q(d;`C }[ )ÀԳtUֻqZݧ>/(CBEwzu(9o2Z"1\OZV||uՋQ v]HBNf\cۈG€W =fase\u'υER%9=W a@7'3ω|G CBbJ]ΊMǛބme ׸mrvs?r"|׍"`$ZdZ8`$*,:yDy)Ul%h;s?gϠpx j|)GޭVt,!4RՈ2őLO'kzeGU[Y 0+O"f[A'-SA҄ 1KsQ3Q-nepI]OHA¯وk@S٧KtRʻQ%ƏGf[s;+7ħ7 @ IzPQ(0)dd5Qls1eO-MK)q;p˰\o`~C(^Lί&:JO)};\9z~>̨2Ru%ߧh}˄ ~wD2j:aALϕ%~D]=L48s uW$ßJ]U{! q^ xkM+ /7ijY d8_L'O?W}Q˿cZ܍},X c.vTG2O<npzY*+}{d t:ra<+.q&s>/>fvEع kdfzGD6%kd'.$ª/Bj9f ((Y"a"F# EtRz_&X ^BK=~Tk 7\Rpv#0y$IPtgDa'iOj'L;i!ܼF֫ć9%٩!X5*"H#҉4j_d9!~4}3D=׼%;n6yUK¢]|)"Ht$`EKVr3N&lء1o0@f/SI"ްE ;BsT=$j%0Akf5X*Ի+cTUc@Cق Ȥ\6I(fSDJaӾ:M$ڧIt檯ZD&&ɪ|4)ek wlMDHL|@NIme0*lMtsosci_0n%p;]WtH-ߖb_{"ꟿ` Lfo& _XoCPȥjh}Ckf6rBq)Jsz%A˜ClxW^xe&9~aV5Aei{_i 9rȵ|-h(IcՕ)lx#TCHe3,Қ(v0VM%O2lan4ՆfNX.Mg5˕jU3^Z^f*]" ]9,KN_|-&;3~]`Տº4.v%T_0Իv5_B0~>t-@Y4&&&e,2 дvb8N05IWiPh X%!aAofR&nV);4૦r\ 6E߆,d>T1QյmPT،\nLib]F-]"kM82l\ Sg`|ZȀVN얡apD);=2jVNU {<,V=H]w4Y{J "ֻ̋oE9~: fˬ5^hM;P{gih;<fR§JE7.2nC05U$U!W{zɓ;c}NH{-a.<|xK>S[Å݇0DZt@-FUY gwo~׺idw$&"r-GkR)`R漴'!Ni`Ȝ M0;o2d5= k6YVpnQc@т z,0jb[$i݌9VBY6YƑ_O64l(5JMMs3fC2?Z?^k1uKU Yf?Kedȓ!!j"L.#h&LӒj?^${48rW*pO:8v[|?sQ\/RHe! 8 m;WL(5OPf Y2ׇ+cz:Q}KW9nq;Tڥ.ց`yW]`j,aVvx=^c|vPɜjso P4n- >*%\$'O?5y]%oE?7l>=~2Sf9g7"*21r\@iq,n$XeJj}+wnbjr:3&-ZxN-Z< FT. j_4"8<o;~a[-tWZJxB6[Ct7Sw!ϳ KJp,u]H ]bN GlL6)A{, ejik!/B2GȣTv?ueemeg~jKV)NDK/KEBeinPG7,Z'tMX5yikW޽\ JHp.sz%#^ZtxtAF<,\|%莈H# }?xހS%C^ˤi`66Q|Ҳ$4]R2æN&v~t.ьwđ1}6`ǰR/Iղj]bxbU/M|P96]@%)zFr/,Ut ;n6 r?Dʧ[hDw"`{M~_8t<${&TUCbaX]rDSUm<6 w T$h/ұjӹ@Y3)<^[~CU?5Lm>ڎ7z}B'3:.ѾġV [~+ G_ %[B?RلITT]$Ei"9l޸7V!gP#C$VDP4ޓe| ᤻O.C&=n[M_"9<_KQ|1FJi86)aHr$o$͌|5LN\Q5"a`bb)`-/W*U[AƖ4t8`D)~̔jUSsfۮ4!ӡwd9ЊgU<=@ťn?7uWg2X 5cOFUX0s ]u:B6bǪ5݌SoYJ5.$Qc">b%2rmf,ӇְPiBoEPrD\)7m\=9In!%gKi`\1! *2tۡGW)1vi+;܅/;lp'EE$81 jVXƷdzⅆ:&@:g \CGe|dJxYuP.B N9tFZw&>d&tY}Ԫ7\iZ$F5 ]zꆡ }K\F{J0̚u& NMΠWLYP&ޞ>."-D.+4(>z$2=|p衃>U l& ./kG/}'lotϺ\/[e/0i|q[5-h{cYVЭ$<:/@Ma0ZpŠ76=EK:sעb2+̵=#W2mG.R&y6UiHħcb,8Vpnlz|0 01s} :xq]|1^FJ#y%¹/.[/wSW|Bxlp&I:{VaFW'F_O YT:fߠE2o.# Vda ћq Me/ u ]^K6Ud5}3=wnheq!pRun9sfRj$㾘]*K.C Υ5Я酪!Ǯ U"=z%sd]qY65ڀu15Oߘ h{^V'61HN좏\D <sG?$2+[45#c]>к:֋l{taܾvdEHq!>,ֺ@VSB]:QP Y.FޘV5;<'Ag"/ncUfJ'S%Ν[SDt1%JcDB'~;J蚦F#Y(=]EAcśNMÚH;I^dA`ut<!Q;)Pf4W(?-l(sn9 }vRd< W!vM4W:W05cVͼ/ m @Vr&w^E}K%Ǘ Ѻoe2&`a tX 8 r]RDys$ L,z="˅ʔȾt͋K Sd&7hmS#(d Р?;3 ֍`!/\C'I AN_ȉ'v<;ۭ^k ^mKɟWG7q>#ua ekz @MK ,P-!6Q˼vA=?JQ'$BDDpgNP*&Gvܻe_+ _7AŤNk\JI`~YT~OayQ;Z/CByW$Ouf%lK` DPٌGBfWdN:QzKΡSghb?u<;yJv6Hߒ+?31.oM _FBZ9t${ =]ظ?ZZ*Vn5te[#.ap._N^@1VUنm EK%Z:)eDVBeˉΩȀu[tE*zkIhcϋA{³]|dzgC0*l~76T2߂DB}u@DD]$̥TgGze+50>JxLceٝB>?T3앰yR8Xyg OS>vfzROm4/e8zkv8tQl[?mrՕz;?\ $2\[LV摺,'6c˧o_{]1Bkݬ_uUKߒJ0@E\.hm藺hshu5D鬃h$=\1K J&[[ȁ1l&yZt)cJ Yl> z{P8,qT]]Fm.֨7o^ߞiZF ,>P3*k <6tO=}{z iY yjG,W)) 2FbJWxTzG+[:V ^];fUƑٓW1U۴o2]ȦE?]6݃h yd{Nc,=jg,Zpxx)4'jJR]2U4]x5ά5r_1lrnRud݌ZޥZU~EW oxZԦJJ@P2E|U5`f4]Y')[RTE_ 9MJʍ^b ȝ/U#H u/{4Otoz@Eʭ@5{2Q ۶:HldQa8\7_3\ QŔ*znjQZ+ua Iy/Lh䣄V H~wf&NI%31ߦy_p#|}n=d]Mɞ(55Gm+ps'W ;&8!-9Ε'KMb-}_ ˆW.;DytpqpWWv>~_5 ;)} ~L-aoy%ô>deRrԫR{/Q\L`m,ʩ 2s*rn*Y|ZQaD0_=l?Cg<׳^8 ᑃVg'~Vd^t=x[iIusYbZԘfJn_R}CHA8WA="rO2!d㋮[ztN=R˰x+:m;4X\#]EQ|܎4RUq} 0)?!U*P1[9<>-J*#EUido\[0^fՂf$W->mrҽ4<`C^=:RT9~I qi7H Y9·aֶY' cSkN0oB7Q ȄugyC^g˨&R6QCh% A8Og~bSe JxoFrs,~BЛS9߼)\FAT%$;NY<9MieAt2o5pg5WxXBCMA\F ?}/iU:z 0B3;>H}6x I!g@BB08tHvhLoت1y3Dź'Fm􏷊Q\%CtlC1P|4|.=vM?qt{N9?I|mM2k+uv](A,ME^bעIѭՌ+N+lߵ]u= R."91:C7E]jK]"o+,N[|n;n6 V*znw&u&rSE#b2^j`Cهjf8E, G D̿o9,b0km,w<=Xcس,:b+2aSJ#86JmNxCDv;!2SRuݿޗٯbDC\ӎV *!lC`Q^UZyAU&ý8D> CHa#+ȰbhRWrz@cL fZ)yf 3#5h, th[84x@ Ǔ ^)o=QfzĚƮ|KJrtp)x$nW=#<5^0@zV< "b"᭶ih;}v]K N紌c۽)#賷̪+>g,0b.Ю2/n%H񥔆LrsPUS=e΄*u wcˋIfbmpZ+J./91Dh׸{~Ŋtky1BT\Sxf( nYk&Z֢LLsaCh>MNȪ RJ*{ xE6gOp1N(XiS=E mX#jd{$6 o0ꖗ7딕0w_c $EnԡS(%3)βC~Of[?JrW ¶{^iPdgD3AJ&GK f*Lea7z"oz}`t~?\랥12>Y%K.JL=!drCfBGC#sVyv |2ZC)^vt VjQճ>AA 3Xh ZZz)HA4 oK66sgf9ʹh}ͥo.Pԝ/ELg>(oOOKFWK6Id!/F+ZDrv_6[+ Ԃ"',LdPe49WR5D*E`婂Z⣟V$:#ab7tN?mηpL#_Ta+աfUtC(;L.Шrݦ/h-R{۟FU"1+3W )_s\z! Ξo8b<㫲N4R*HC͌~k ]yf|-l;KR(7H]T(qTSAyy_n?,6Y=v{Zl>%V;cM\:Nm2HLb`gʽC݅鬌kUfO١zW%2lunHbGR觭d 1N08ef46~Em]rbꢝ^0|"OuUUQи[I |hmwLk8?0G7&׸iЭ~ rGK^^(O .#=1$ iKfp qӋgwgTtgjԞ?1h'g@YAONZ֤W ^8{NݐXpƉ0-IM 1EyL)%خgqE3c~Wdk[.u ˤH:|w,%1ꑓO=$R=B@KzMP܍K$zn^z ǀWIP$ |%1J.fQ:0mM|/e@,oiԝe$Q֔u 5[+HT$US;"-!.;?I\Y%ׁAlngPaхA͏F}R^4HJ0J2:0Ff!hE>(]a~z{'Qc_ &|MF~ !ƀy L>V)xV7?0ō{L*,k䎝֐?_# 9J{*F,(r,[+ O?;'%OJW7f -; ZpF %({U@(-a V = PІ:O.ʖj[J[ UyZ0Іy^^snD"a2/T Pw?ǎ {V-%_Z-Eq$د`av8v/Qޡj;Ez{б=x8+j{F~޶dZE> XW aCojO?Ne?'Xr*[CmR0;b(_ Ԡ=˘VA?rDj~t]IhVpuywkBG{&Idiȵ9a;'6jn#=W GВCEò8kЍybGy$h\%xH 4P)4uߣHW{ɲol܆mNJ7KjNFT7Yo ,񝥣InG3 lSr`iQJa.;Mkd1גlS1**UnŚiy jg h04`eC a iyp"CG8h(Dl.Vm0!pDPrm7{ˡ7%b͏TKq 9yyP,Ẻ0_M@zAsԐ{-!x_ %W< ~j>,Y"E]RUxz4'<<h/;laDR4pkw"-[nFt{7CtTL$Rp /25C:jpC `=ZY8S\/kA%zu;8AwҼj1j 3[bcJDw~~]N 86[|_@Dt%IoxwS0aEAPâĮ-}¥-YSؠKT!h%g#!eNc% Ml]-dU"+ZOYe%"'`'ۓŹZ-hogY%|gUǃG9<%тhe-Jn}SGLJn.y]ǒ[aN- G}O>P'zL ZPˌRZ6 vF6٭ ݶ2~g,Y0i qx\:iL?u#驧j ȋiJn jkxܦBb=* HH^yB"0߲χ=p.dFϠ{"8tE!$_Ȏl7PNo;TM<}Φ}Tl&f)DZp }N*-MgWwM~34Yt)%m8ܰ^Qd5neu3rcA%;ոCR*)t[b <ǐ*V(M1=Y3E4*qSTxm}K:tbQ]LUK9M8c7?HZD@K#>oil8 O[7:!c/b(0 SуCB*<ۉBܥ!U$']⡴UڗlbXaİGZEN>ze 'nO[xE1_0X84q睰8kTĻ6Q_I7f_aϒQG%B./vv0\ՖitsQ.S_:dc=3OT26eLZ,}h:̴-Ec({e"KoDKzDƪJ~t* u覊[rW]r$ɚWFuM+&dc0h&WdȐ">jᮂSzPS0+۠#l«:f1;Γnxͅ?t(+ wM-1|3qK퀁Id0& kfc[WH:w)[ x>bq^QLtmG%:S uE0 QtK.qrOW>!C-ߒ3#l*/A<Ր Y#]} sV*oDKھ`lXHf |'f>E=! PK̮T`),?}5,ڎ'4뇿P5>Bsq.}p>:Ev XJ-@eu ,E73U~u /u4*KQ2Q6GDUBNЕ%hN mC&❇7oN;L݁I ?Lٯc! @9ڿz jNyJ f*d;ȚTA/skb j%mus|.9ֵܿ;KqiU` kM1\ncuóȔ64­l7R<_&үnC.DFmyG9&-Hmڀ{c i A鹇׽3?glE~7Ԣ*Γ85*&9]*к @'5Pq^D#&!7gbzŀ ۊ .Khg^E@G=lhƳ SZ~hکx4ю(F*" Q]î:.+@@ؚ3ܦ3kLuAc콝4qc I"*C+Uh'A(yPJ$c*1dz{7&E#@oKGCVb/%`Ƈ[|/n.X~10[ӽb8 gII|շ%o>hVM_֌N_ u@Q }ŕT`9sщhsڔn]O8j2<["Ku\OyHm3R8{."dH.έF"8zYR:u9+t&(]δ:&1BF\"/3@՜VCHɣW3tK&L؛mq7 nXwHΨ: m.$'V_/65#^Ԓ'ңi6,3OāAD>roxz:泳 &>=AqQs_[}3؜3p-&Cܲ4h-痜0(_{2\TFpWMuvcl}z^O3Ab&[qZG[H1/C=suOe/6YqJ]%:%?.كZ+\-`<3I(mm{J]ǼŌO.G1-\~aDBOuo-H!OY!o&йanܚV:= 8o?eAcϜ~Sr%쾭3:g\vA\3O/==~4:&үCKd%ka]5FU2oɒbm7nUl\ ?XUy# B'ќ!:ƛXl4_M5{drW0۴74C>HƯؖ8<~'$[ cm 99=>YM;Tk@=?S ػT;Nzvi0qWqhpūXXtMQyZ(b7<ք(×y.NnSL+(h 3eNVfGH]Q8"5÷!Z5A^WrpR Pŧ_Fj}]R%~bE˷wS3XgE\QK_<(ƔSbgPwT8?ޭku6*i/A{jM0!;tV y zORa,d2ͱoc.+m#/W(/dѱCS﵇DQfaZ@s1 ҄_ lbT}o+֞Hҿ4HtL> z=D˓+_43V0dH&/H1tOhFn0q #!.iPfdV;r(Iقzʽz Qeș,K~!6D)0s@b,2#h&p[#39gʏǸBnqѭ/w a4Bl[n=m7rR)(sHb 9K6+rKDI^,%¾#CށW)K͕,@ϛA[l͡u`OIqp/Ц#Ʌ^ 1v3jN"L-ZWVww՝<~|!H9_w+Ilz`]8ax#J ;}倫~^,`5!:ʔ9kweϼVE((94-֮>z*|okP^ XYH) ɩhgv#dߚ;G0MKUlyrKd4hb;WU Jt/,ې$/`XAĵ~t 3&KUQ3 FaVYkpn~γ:d.D읆+qE!ޑr~S-;%Hݟ0>fj1=={ %~}S݋Po}478vW{~:ffnt]p$n\Zbr|Gi2PfむO|쫝kw~:l>?eg0[/`Tn \Gz}(DʶZ3EXeC@6LMw3YbHuc54['t!%oTVjɨwY{b5%/).}K$DYLE+!fXWeҕ3i{Dїu]Ғ2W< KέgBZi]C̠Pj=4ƀ:=5"$6F5ky.SSgeysƧx̋e:ȬcJBKs;Dv ghrSE!1.*<#[hlBm*V f3_;&3ܰ {Mخ+aF)Kڏ\H('{.0䣓'=e~Xk Cź%=ma! jbfSMh|Ko[~H>Ye~ҚhLTHћ'5[$ꡥmniY($d+R^9Uh;̿q'Fy6tӲa'],̘[¤w-gJq$a'}4BHN/ A23JLO%zq颉P91}4v3, V]OׇN馲Pz.!ȦCgpIq.AHР?U,#|o=M!'<VIA]h6xO7J[8=k9~m`NV"M (zv"6'I ;8s@vj GkZH.[YlcmĦ:oxӥ*EDZ,4uy[G{0z u88m1<$BdR`rd^w9YCX, ZЙ}fJsp> ioU\"Pɤu~M39 L`-"}Լ{/Z%"8A$Z;/"qe> ۰#r)7jpuL{iZ%xX^D>b1}tP|\g ^xzrFW'9!Eb-0!si)0>P`l}\&?.T)9[6`TY5FDx? Zd#LAlǀlN'18EVݫ-P1* IX¾GD_v"ں 9i@rɎӈwD'.>VD>;-!CF^FgDffgS*xy⮱´((Uğ!~eCA {ʵas~W}P!#$n_vwCG2?:Y|b0+E6~#0#pmK}7ȔD)}8r8/p[٩` ɀO) c͐ }@{}mt%"^V+0k c&KufM[ / 0MeܨlF+ar[Pv`OE+bKPĄ دƅGPB_: 08?BRR{$~!5MhvTmՂ} S8]aG j尰"ou-.U諠?iΤ?Ye9%u!.PY궹m*xNn̎`kIat}6yǺK>MjciL,}}ַUd4(GWX* BOPqXo jJ>GZ{X VJT/zm9Kuѷ!l:8l]B9Q6kQ5mt9@u.Ej δ >b"mjra@t]n5y"+F"ژ?{ݛo@Rp*87fRv` *ѷ%8I2 έ6~O6PnP2^GďrO)tM0L']ΏZ1z$xd֥$]|YߗRBL쩂.z]We61`Ex<.uqL[^Y36 Y@h'ɧ͘.\8͡ ]>~:i{Rz_K6 b~ Y+?BgŴג8#m%(K=PK>RYk_8ChEP&5_AkV ӇQSGC :jtKtO(X QlT0c-k3渧5DyPW pP۫w-!Kd( 0o}nsDSXw5G +N I u+=l*WR9j?/oI_ic$ru {q+J)$k ~IyԴIH#OͲXeBlC+k@m}OppeNb[Fr}5XDh<㗙9~ű>(.n4?i+^la$*}$7>X6~RRT=_<pZ-LF{E#v~V= WWf30&J&Nb) !ۀ}&&7'^Ge4Z\<_okzC#Y YZ