V9kg+ҒkEJrDB$#m} @JHrgoD`0 Ro0j:Dµ ȣojcvx qwp"!trm{ u\'&_,yʜ^֬ZXi}Nj˃کg볈Oa ?E^ϿnНp>T?zx7~r{+_|_f˝Bwl_2wml>N1_=O-d> ]IS; }Ao1U_BĔ_h߸ ?!i[y4b8IXyܵ&7, H)5(M 8T89y.$\DE8:`dDx/8rFr OaDnR`QH;Mnu-@;cj3acPih خCfHrۋ IU6!܈L;LE\V0<MҿWԜ+LC+& iXZjڑϜb%ףKG6i['NhP!X ia؀Y,law  (O?m@ D;96ѩG}w1ni !9@?\_--h{GG~5{ǂV{:?h X VkRyL^\65spE]0bpGy,q Xb4\P{>>hR&C> #q[t .#!;rI>>X@F\< ìoIGrݐן[K14u nYwaczR7竔Rpe>7, aXl[ :? ͉Hi;bO6M9&4a;6X̐Q-<Fs?u=pP琱yS k :GB"ܷwk fQj۾gLJ1Α=y6%5 R Ү(,HۣL"DbZ[DlJ}0v?ssde{4ڂ1eૌBn,<Ih>q]H2MbRgD.I#"YE$[5E~U5 ANȌn^zN{ rz/`Љ@=O,vW1 㦃?v{\g-Pn-C\,wњFA6B(i ր)k*?t\x;qV}˃pS<@) 4B6Mk"6a{?@'GyP;mfOwSΈ6-y.Mmm)(}3ה۫biȌz+: ;Ϩ&3wsF0fHzgzbEZ G2Kzˍ+"kVワ\jSċI S{8 k;{K=Id4uJ]+3<EaDs ezt7A@{1w"ʐ$9 3u=* 2nu}@8%7H ~KƎ+ +)#N _\ ?Ik: ف5'fF{DE=5lIq7U v~L."N5AsMǐ'ݹN~ۈrS*@Y}nk0<Qx7ߑZ=mR!F]gR(g3 %ޥ! vEp+c-ȝɄ\u"ufeH;}KN{=@=HlWL4n9V,-vԬGzD*/^ ~ն:>ɝ7\2x2O:0FM.Q[N^J!r翔O`՞UzK4`!PVK4Vv"tv`t N/Ne?` )JZFs ƑI-vv=x4֡2V5%NRNu>-#ZhEh$^q5Z`ɃB hffgCo]n}IqvƩ5:{ugXba28clE9gѥ`!#gIM 2*k޽NzD2m]cHE$L]?M +е9_L fʯW&7_:D<fL H6FѦr _ҦƆl}_,1w>oӿ#oG-"S{le3X6esm%PX%^c{{5|TG'IGF0nARYyYqcvk𨺲IȞS٧ndp-DLe8tXe\í*Gwc7lQ hiȝ:K[fXmvBu"cIMO5 f<\iMs_"I>Vh^iɮ>LYʄK{9j=&&.NOJl $*0)$A[$M_.pZ/ZSŔG7vIx<40q# Wy^oZ=ޕk-Gǟqh,ݯ&U%C9or%ofNUzC}^6S~T+4 'bh'B3$mj4?Kp9\u@oԁ.&4_3sOH^(˟lClm!Z6*P0'--`^YU4n4Ǥx)l&,&ĝA5"*{}n{CQj@ gzv3FplU鶯V{2v7HD.*wC/?0+p  {ݒCKt^fq8u#'\-eB|\ pfr&~>XѳM?c"⋉Rj4d n^o  ɭ66AOIR*kӞe&7>z:;ڵ׎N~G\i&4mwiM,Cv"gA _J~X @  'K'F}9luv.qxw]<&Xq fr,viYm߆,k<ΑM)4| ޒbVU}n֣5g!!rn2΍`.0a><0*ZgSF,~K` ޝ+-<-7tyMbE1çͥl@z ٙ>[W*euxZQ_1Rb0v#& ժ/H (F{^)%X#NJ?<#2hBVE7a 1B9aRX@T c+3f y [CBI>G@s mUiPI0/-]^ i_fd%g Po 1\+Ŧ.iG1Q«2!z\ ;u5,$Ju kO˓Eh{ >'"}p^d޻8,agwei,K~#ϝ.>9=Iv7ג9g.UM5Cx=3C! lH~C?%0`` eAXz X^|Te"gǧj4q.DdFnoI]XF (AĮ-5 A1td4Fae<TTB5>Mv 7:6ڭ @Fᅁ$aHJy A:3u5!%#$ b! ·0׸>f .RLosےHʼnD#%U`|"%dANxrm__1Q5mBۀKD#]uUs =QLAIZkn*]HIS lG2`go|!=|,1ReCY5̰ᕟ N!(-\ENFhMO/H]hè*/K%j4`V f7v f Zheb~t2tb!6BebY8T1V\ `P} eѓJgL$"8&քxsԮt"=M14N7F^9YeVY67 OP| G\E;RB)l Vb8>#&.l@Jk-yYSAO+>%-jmRM`k ч~.2(".i q zXlOi>_JL>d.Qً4z Inb,3'T}"9k_3Ihd.q]{ т1.eTPGG88ST .B˅Z|u  y|"qg A)[7t_v0ՠC`n @ /St!@$wf16Xz@u MN-wI`5A-_EKs_0D8FJcJ&[ N(NX^  [j1FΠETxWW1jf@T7)lDFs8nBU$i@t锶Tn3 хYH7廜촱Wo҈4`TU JD6/PH<m;Ì = cQC0r>r~YcG}n*?d QBqiW og+fxVHnٰcR rۥES$@E |5'&c#41߅ޥIkX2ؽbbOa2Kwk'Iں >B'-)K?ddmIJ~XnKĹdm,=`q3Þht&]E=X&H+bvY 4ߐ|fK$4Sv) uY1^8tSS Dp<(ϖ^v4wa J@`Q=4́-!&DJ4W+;`;(&un~ODdߴ3d_Dg$&Ni,kV@zc%|0h;f S,!nb/ ,tt}; IۂK1˧ -9D| .Sš YI(F7g7G$3ӉR`, x@+ 2մu7͠X#<+ y `_4 nP!e;L= {.xϋEP:7 W\YY5V]AuЁUBfC/#7Z $D&>\F}|qas+شA*Տ|T0UB'~d2.Ƹ!܇~.S ?$ËٿbrѪTbYB{(N\B\neTu)fy]= SD):cx\NkEJY3KeP=8-RnSS >;"9҉)Ttjzct`v)Veֺ̐>:{{ZӚ,4y)o/CȒ,uH ypGy84B)rX>_t&1Dr;4ZqgQX4_FO1 a3bm 8iIRO؃׍O\-Eg34æ/q!gR"m\,d5y,(Y^p(c#9B4MiI=Bs,-oC=s`dIY!4.}15lվ=ՔUD(:"k`ękjcl2e'<#'Yʢ`` F).4^g2"yLAZ2łJ$=KuFlh43YP9R8᱇,;i@H4۝txG (Bnc$Z~3܍^*RGs;~= JU7/+/#>;^8 /S /.>PߊSHjx~⪓)W|) T+?`RIπ&\*&,K/"jL %=N|p-/aHߤI~R=5Oj=/3L1W8n2 Eʓ95O|Ovv.DpQuw"渫KSE 9E)4c 1J7TJd/b0 ]K<׀QيF&Qj23 vLEQRxުLD1##tuJ=We|Voƕ.ilg/nT[xl1Ab1Eq2δ\n19yo-Ys*mKw Ռ‡:z_WhfdUG "(nG8/ Շ "uP G*bl;q!%((F+ b>89'Gx."" N`1>/n,C`3">N:۟ݠ^%[BYѸ 4=͌Dqv]|&l[O/D1[-R>yN\jOZϟSrx!N.Z(xZ]95*_ޫ[Q!گNj&f'e}Vr~Tniqj*ڣ Av b@_a3f>0q :`nr07ufM6z%,BQdӴȞi;~\&Bz˓f$_zV*=d,_P&PNBΑ:L\an`Ml`H S0 T_kj؏sM8^uXмul(b I6 L?@]9dz7#4q@_Y0y"&:x>Sƽ0f xo>|A4YC*ϝR?b^xG&qО3w`dHـ輴-٭c7>Pf 0żF?4er”`ef8t m@.z8dh6#[~p #)#WuH†1 !JgG'K)(氫a4S'ԞKyf$m\o41Cy~p"G<ܫix\kZ>:, y> s lܢ֛5Rnԛ@8O(qJ@Â&.{Ysj| 1D (xH2E O>BPpđtw:dyRw_=BCst2_m LJki)IFkȳH&t'ђYGٺ @x0Y+j0CNe^'S$T$>$>'ħ'zN?<8u)K|*>PX }z*7$@Kل4Q#:Qg3-:4 iJpH,.[4K}14MMS!``Mq= cFkWxA #vS0 pbvѣG`5 O!]&AffG/)2G W)_ uGS}(a\a`mzJLȕ6lgEwOz^s'F{1¬_c 8ɠ`k2 =GIٶuwN|3Y7>gKWKsu #q'&LteG#oh`I|v1`!NF ̎6׼7~]̭5u<hS+JE6_wxh:mo?ާŝ܋k:Ov7;$&7;;UnZ&](s]0ܧG=<~:==##SGHlSV9* 7GUoQӨ2ʣJk|h̶K&37_GwگqիՖb̝ӻ$zvDOߴAfON۸'/PIâҀ@݅ZTw+Z^ vTudxRm9 -xW[J3>ܸ+@܏߽xF.EGf{}/c(a6/)3WkV:vDAdJ g F:_=06\WlI,ezp@e@*v#AsL .OH^%R)ɹ9(6nB p1+ZpPkbԳ\9WXBo[uh Qf&lr7 ~nogWk,/(Zg[Xr:cnZ"ވr#n)?.ހyzؤ݊"a-HRJ{,<k(  J< しZ;h7'\.vy2Iay!Ż{ O>^Q մ# NڝvmWt4J6}]ss۹ܺ B. MӴGQU ]dׅb_i;d7'6?a&^O1zOieՍhO(f~)dOOOo=kwƦPܜx4j _txG+ SwzR7+y`/~#cKmIbWk6s2rw6,q! oivZ((MhBo J/GF.mqnRQXK_OPb9>/\lUEfaN4~Vhtw`,+v}oX-ly~vX&$P/@ě%VUf'H;d,w# &59 4fK 9u}Z;lT =G'@Ypo/%2ff o?1]~RT.E3Eƚ(7pϻybqջبGz~Tkc ƬT.ջRO{7ۛ4D>Wes?60O96y S͝E*6Pns&.auDMQ‰P]^^#蓷ꖨL #]G|9~1zL~Fl\|S~D÷ *toO7Wq|KR>oVrt+0 E 1cAOV?ntknZ292㛀X+u twKM4NׇdY ]vqg$uUzXCSvlQܻpa3<`f;s7sInedz P?差͊` _~+i9wv԰K\YȒÒw܌1ܺz= [6E7'!lSޫn%rDFưWwS.Vy6=ro< >6AηifHIv?k,ltnχG@nociٻx!ɗ0U#t}{kJx7leN=pMInCF;zB"Uғ;(Iѓ=9t$My(DTc3ΓH&0Ɠ '#Luc{i1\7ީ$ohJe*a;3׊Bh~q7#T?. mm͏w-G/w_n.[I$8[LfK.W#HR/{{su=lVPsd^M E+F%kssKOH^?1n]03i@~c3EM<1l&yA7nfa.~ͼ/Pվ%d1qI2KS9ItNlNtھ9wԲfb[Ϫ y$w|DQ-v]yEX!SdǓ=cf(Ӳ`n2ITڃPxoG pbôwό+\TL *aI*d<5ސtAbs(U/e hj~Th *!ct률HHsD;"^fN993g‹1GI"Rͤ.{KrV*= |.Z;Tc)21ӏ+ɻ7(>+ӮpG')DF=Z' uH=3=teS:pf*R"/ȰG,L{8t<ݗr@n&r6jDe "*>oT;Dtpߡ*N9/nfH6r5z}|-  H7JZfT$?6*Ql5[~ EPjcG2sdEv^YtGFkLQKvvg9T6?#"WUPob~ub*;"h LŶ9:B n~K!+5RNN*&!S)r&'{r,scE%Dle\&Le/T kӗꛁq "J<<,7;L<1@6YLt|3lH2+^ y6C%=b#_F1#煡TH%Azޗ0&|aސ~OHZLAvOwf .2ʪ{0ߩ3vAnbPqʜ\+Bh/J{u;!w3OT-r.Vf O_d l*@ծ0f&wwr8J@-g\`O|؄AT bi7+ &;pwS}C"a/C8~/C/L ^nU"#hzR;_|Խǻ?ޡ~zghv?Ablu͏kK5L3wstGAS0١5?~8l1h[}y8I|RF]2OdcZz\8N6}Ld[>vfQ-LEחP'eAȍSZɓc)b7>fs{(.׈@OLracuҐ!Ul̸5wĔdyNeirz|s]s"ӱ(1g2{*#O}5+6?2-=9Noc*-/Ɠ!:ylgA6x֋,xJR@~k\Kig +*_R)Pa .3RͷI5bG3h M l׏@-qX+_A@r ,s-#%cmU_rddQҷyPR` Fc@sx̾l eSMnaԗwڍߋ_-?,l{jz*2j9ttb& Ͼ) c*LoZJ\l h#7N9:(lC K\!&ZSj&` J+Rr'0d܇q8(ՊzR;_ҪO]j> ,uF>B͌-lޅZڶw&T(rgO/3~u8(' dD_ BgZ@sč'ߒh tm貓Zʵ>mb^dQ0HNs `0yUvq=xhb> ȗp9G@;Fi{~ SMt\iw;c~ƈM}r?ao}CD`$W[s >NOde~ZJQ=2}Po ~e va\q*d]X..n:Zߞ.8EjyU/P_R!lc4[?ٛ~ʼHPO:4҉{h>EZ6E)])sλ&[nFv]I4wD+H*m<5uqFct1hNxEN3w}#6ѻ)>KB6uS!1mu[49;u DYk)峳)}|ZX$ hy pq!Z;bÑng=z$O>IֳVk~4j<(eIlNR׀32vBOpWz8{Ka&Z![sg>#"ԝNomomn9/溅VbG[m滛۹?-_ءSgssOoP/l6E12G7Wf-x˓C@g{r*j:fb![O=|TU%VIU2::K\~]m")JB>SـGB..>cZF?XVu766wx_MBqm- YZZav)~شȾ}ۺϕUd"ZḰt{׻ڭou};ǫ7ͱ6oojG{͒2<@LqY(7(=3u9ѺkDԎ]4t4RÏ7Pu[*HY^_i Z#+_לYi|'eg@~20);9aiK(,˴VҬR.,Ju40+9t͛H]k4N.n1jc 8Ԍm-ݲ@R26 %(mMGTV4)]1c lj1&bY)Ӊn\Yu}\?kiZn8>~ˆM.@ZY~\I?mgZ#ZZ+GIu`XaF~قDY %y|To=z%PwӓS.6$X70Ӝ>&yK 0iil{eI5OYx^~޶cebt?7?#5 WwF]R:>k5k0S΄shE'+DX|],<9##uݒism¢c!14Dh=52M} UyyY9U5nupᣮ& aw\inA u# *1Wm಩?8:rwpf +fV0~NvwI QJ3 VxÊtK:hkؓ1 ?j4l9m9"@ ?΍M#\8oԐᥴfF֑S0]':&F"H4mȴ\f<\n6Rջz7bNanTK`h-:ڝ!i%d~tSD>ًU\pOϭ+=F"5lJLCJF [r̵ptTҼ4:|aArRalrt)v67w ؝)؝hp[Btd(}*/l XDz/C|/Spv ?f[?GTͳu&;:J̥)QD[yxK`ʯoQ}ŭ g qE=b4s":b< 2 /@3F?Shw! .,ҀAVIuz^9lO[ڳIжRu/{ty۠<92~Etasc+SuDuq+Qh!Wԫ &v eD3.q  v]A<(1*ڇVpĝ2[QZ,lRNdNߍc3y.򄨒0?jvC^)w]:p=ڈ[/V:F1|>GMGJS dx榳?5J4S`Q%S@YL+K>_4kM|Gtq*-]hRMgznr^}ry?%++rɧhBRWLuOS3J!q+ж8]#)0SU,%eT3B7|EY)_ciUk,=]^y%i+ɼxJ7K5{f4#}2mFuXnԪU^օaXyr4~~c# ~ċw(wx3ߺm{NÎu3v$53{\ S9;kem]_wtzFhWۮw*{EGC3bj]o4xHvTGRYN fQ$Ykc |d yz~RaLat,,HxX'jv,p 9I<7~>r#iLCʭ*w9…{5JWxCXm@Ut''p :W1M2f0 62㍾u{uxn(wm)kۛ鈶c`PBV`'*O?g<9XYL6v&#KۜH'MӠژSê@D1*/r G.t:EEZSps/4Y%Jt}vQҦC_6pL'MzIL 6zZG)jXxWEbܠb6Hp?9ډ[iMn.I͜ڞ8~"1#՟Q:ԝ.B)/-ߛ245jw2DLoNH F=mbi[w0$'j-G'nOicKZQ-hdt#}3mLڣR)`SBag"i @צ62y:9GP i c FؙhfۯMˊ̢E%imw4!yO'% e8YV1Ym$5)4 4% 5,hutd+ɺCK@*c)3}0 mMQBиL9ګ"=CVQi,RZ=1!eW9QJ=E锰? SQ"quUוzoŅ`wcmT&2&zr=0." DB|fI)^D6B, MP@'G@'mpp_1NdLCqZw1(bBha& jJJ "C 4$%NH Bρ;㣡' }57F̤W?2EDIc9΍}"/K(9}N !A/vզBb=Y,Y o(gr\ H=[<\Gqa&,\M+ӎꝨa"WD;0/搸ʷ+{8N/> ?"CsoC}xh; mGMUNZTx83@6Gs^0˜/ f֧9~nUq)={_|vΐO7Hwb7[GX Fݷc*gg3 1|ypr%1v?r,>1|:Cd [/{`&TԻ?mT~  dm9a"]*v2HM0C!ч>T_^@gڳH瞧KRԈG5u)uY]x{I m]x7GUoLpi!Ckj'V4=Y0 >ؾ]Fnό+B~>(xxL.,ɯ6tIaAj.Op-"aS&-lSy,w:%kbyE֞=|"O7, &`җJj[I ~ I4*m07Zk'-qztDgFilk:MU-zTfl>.~OwjkzA(hCnJ?ͱcߖRJސeh.{z O߶%x- AfR%[R5Q$v~Ϊ̔0Kֿ cX=8he\1<^J~k[̐ǐI]CBr@B<+U[&\N"OugW|{>oKIbnS4 ^vQ`M ?{6:(3Y_́ϟ;;9\q~XmCW({%q?7W߆'K}?sǵ?97_}?ի/\w~{;l/w7ғ_3gOg+w7Ŀ W?7omƟ_Y?;߿{?_hw+K=W^-.Z?v+m\ޟ/o?{ou=S*HAFS0ɘaK eIDDiQ)ZlQ$!m(ʒ-?K=<}g̽{9ss?<N)ͳӝphsY#kÝ^s9s=eӋ<íA{NU|%u߹5Bw4tϿ|X&_l c]Z/ %#w`>vGF76.H'v̹E)"ԃJ;4U[6,Jy }'#GV(n7?X5:{ m+./zu !>uEMu O}f,}Z8:N=-Rj5mujFnF&C` +}li}>×}wNm{'϶7DU97nKda9wVw/o~72*mFyz*}?].IWs;ͤ.9+nTQm.4|x1t/DWvD6.meˎ$kN-ZpU0g iizcA*_|5iG?ꞷ2ZiJ6UG\ lM9uK S4+}ғ9Ա< /d^Ɉ6}}>þӼ(ЛC)p|>Ʊ䕡s{ZGrhrGwN1_M|:f_}{bWܡM&[8)W6Q_xqU<>wnRA\iD+E+fؓUtR+-Փђw\Q+&J^z 8Hj[04ة/u[wULztuK~pR蛥MYS5ׅ<_ qkyX%jUcwep^Cshv ވWs4_=uP7Qd wۺ7r={},urzU}wyxX݁6VS/,}cisK;ybA 型^S㿾!F!fwoRZLJLG+.eŚ^,ߺT`.olEjP΍-W .=ăEۼ+Sjo+.@EG#>5igg/F#`q қwcW4R 241o9JRLӗ"EYoGBgQj0)["޹]Xʧ۲q I?jV.plg߽ .3CE]k>Q:M޸"D p/h=޶d[ WXr!Z_&-O2{z+/̃nr\h-'dW$tм MO7:nw,zVJ7Q{l[-=sp} _OYW?z8Gʲ"N;h6͸=)~ KWֈm Zub/  nx&Vʘi[rpƱ'}k])|8،z#hv&3wn?WI +VzS!\e4Ȍ7n扰Ht~~ji:'_Z}Q*Gí"~^ `ǫ^wcA m')|K/C}^:Net~3o;Ԋ>h{ꖦMNKפ:~7z4IG/-|Vd uAT CMbb>Dt~nŪ7*ʩ/XoTym$Ϡ )/>`%5[6ǎ?=r5J u5׹9'\H5;d <15@R"9 dYmIKk !ֳ?\w0f {Ý%yʯ_"?vxdoQTn5W5i~.4OT@POnS,8[igluMfg"nڛXnhvmrXzR"RF GE מ(!1]kjj}4{q_ۇj/ı ]Si~~;pۄ,~~qJFrQz횰x rsZVVf\LByn1s;hr?pMԷ=XLLv,봋6hT<|HfMy~] Y@htR;|@2i5;MO'%'ώ=khMg?5~@ K<3Tw:8H1]8cm]';=yœNf_ I\ڹN2e-?)lC; ,Tٴ#m/1/Id$#//[inkyôp~@646[<~>_5kgIbgՍ-^Z',~靟BAWZ=Dr2zNI273PM#s~Y--s΂t7'^mYHġ 89QyQzq3manRœ'" kHc#NcˎEץ|I!=Q )_#M !K"Kw(Mn^j]geU4j\;$1Frk7W4Zv5O)uY7nO ;|LsM_sZǠ`!QͺjK j>R1gU~y坸=+b*Lcp|rӃYBo_"'$nwś]&pֵ;;H)l(tQ6]F!NJy~ݣ#frQ.tL<`9\iebs;Q- :eKZ朿RoYfצW]&5mJ͆rʧ4E>W-Yu+6i:f|JƵEofUUpcwNߖq-7ٮo*!O<~ဓbRe;ӊRۆ ZW*VywhMBHY>t6ZcA u䓋KSIe-όi;i?7FJR՝˳_`r%m 73g26~M&LvdTL{NjQӠ[ MWatۿ0$ _zYٽ"⪗vʊvx]7qě}w\ z;T4`f@\/%X5<ԮwĥzBYgyUpىJTfyI#mvy<g{FD!6FV߻5W5<-ھC@8IIJDDQ˾67?0`T>7*9Bp*GK nZ,l=WG0z5p~Wn,EwWzϝr=99VzJ|s'oN=[\0R}J4[΁-KPEk#\dIna=>!; ZP|ђ-~ԗ?=X[οɡf٩YFqUuu/E{B/wN0u42Ê9.yGYcE%/Ù|;u^P!5lEn!6۵ӦRq6Eq!՟SdZT4>Rt4}k(DޣEiKY+Շwf== }u &nZl|U9Qllګk?qiD/1vq^J#`ꊭK_PC$ejۚe / {F|[hmpKŞᶣ66o)y:9% N]Lm"bJn}7;lEIk _\1;)ohхw΄fhl<8|̻sG/SW-a`uo$oBÉ*tW2o9o(sVԉbՍsz(DJlOl_mW442>tG_>&JspHw*Jfxj6/kr}? |ߴC> ]6=r0#QmO,Ĺq%W'7qڗz60;=BIMϫ vU ϋ[cdof rھ罹,[B;#vU9E?֔ʳ&J 7px[ٱJ;ZDL7 vI_tSu#hLih[ u]_B+_4$f6ޝv7av 1U+)}}zVl꾛;.wxt;irv(G'{yU>}xd/>PaiԙMeu^2w}%EjN@ACCt[ssQa#'4w7)K~Koz?bc.EHCV+)n1Qm_^ij<Y|;X٥I^LZ^eYMvIϕmK WԝWV4mqwgdc˾W˫mNn\1y}&+:O<,wlyysCZWG_] 1W0jowEgWޙ?iW))*̰?aG yv8}֭S{8m=[=׭}MʖNlS\nE0bƚ{U+#U4e2qD/-[砖;?GXcE,w kxӃ>yRzuƼ'Gt 6W&(b6/-G6=d8xoS"::u{2J5O>Ў/=|[}qHkgMr|{fqW?O%m+\MG놢Gvl9i[ Ox=՝@#/Ɖ;/#'H ]|^׃̤DH>.bcz;ab%۶C<8=R?NK -xLۑ_6DQA9YhK죍Gfim|E7)1Tf [z|#֥aſzv_*TՄ_o,2w>ivylI #S 2>0_iy^e4N%;Eexb_&xZv׻[83g g@jmE%|6j׾<-C9WfS#9L?v +n%n 6efqښȰ|ܾp=-U9^$q{ 9w\(s&ndZ[`VK.~ί57pe/8Pr'wf-k^2Z>XGo_x}k c[VBlvJa{&گoS_#(y׎tP4ȋp_%g ߶k%5y'x)$iI~_eUtC}Eb%|ꕎpşvпj}jK"ogZGk\']_n%c8Ba_u[trM^e+/zqzKюu+ +fM߰uĖHZCm' >o{L9i; )sdxV{hW __#뽻^dT| 6d~N~+6aO_x=v MeK⣵ԼJ_TxGՄeQc.jǞ0ٱ`YFٴW\9pאڹtu9mj r^Llp6O;ȫO:kEK9lw7MRopr)̚e6\uwEˋdWgQJyԼYhl7^*N[q+EE9sw & |Mec;_q<> H/)շ-1Ik><1?[hŃ[[gH^,<|QĩC+z[oI{r EAKbq̚:KreK+;>@.ظldHA]vVK%ƪ/-Ts)2!jLԣe.7!m/7Ner|"bttaMN;*7fz5[m# aˋsߥ7SrX'P绻֠${l=pŃrJa+߸v}SOϕ[~O9E "vf>5}TϢt⊃fNrvF}k6˅ۇ;f׸4]-4sz ey7+o Y`o2$H#n p]-k?iG'Ñ"R]|3Out.(=¶:]6gd<:Y(P7ER۹>5/=߿?_/?SSḭivj\Kg?m[mp˂}vw,9<:|jC]+SxpR U)#[#28:qs#9糮~1ͩ4{xȾW`]ٽͻ3"GAѩ51lPƢ?e͈/߂aҍg,mᒫ̼}P]sҋ|WIzܼdȾK2 *k-/$q#mħʖVn&lA*KgFBj|P0۳z> ;YŶ12 bmfL{}?.7џW}2}A+@ޖGHPfOvx+y=Xx1KumHNҧm}ḫutţTx/?$ϑ}n bE܋0>jT_c%.?[~W_6~ښsmM9nm)z`"fՋM_-L~hqI>;\ϒjP1liHX4oݜm|?qHFN+3kk]}u\jK/U)"k,w\Y1׾Z>֙b3Kxiߺ]J0G\:쁻 [kR˥C#-k=vfc;(Q *j-yxmё%#IXܝ'-9$'gy 'sѶVI|Ca.d}?j^r7,*Eg/Q-W??XCOِVZG9tݯb²mkkҗh׿z?z8]yԎ7;ߕT+n)-]`j'枼p X|B,5{;^d{j |zߣcSLƙMF?},4}eki~T%Ej/^Q$ *'R`%M[V|Ԗ;o-g.9b*T39tb6ɼkkm-ơq6-%ǵǞi8dʪs>>1祪m3geozg0bfm!Q+w'hԲS1G;6*W4?anQvF >ORX(0wu=׏x!_=@yGQ(n׬TJ9Sͬi<D/<(H*ߟ/#,vZWN|Y`K_/DQI޶\Qu >+0׀mqJ\dv;ؕ돞px Ϫ.p9Wz>Xn-99ݾY-[8M^ hUX*KnwsTL̋Z 5YS xg۟;ً=ag2^^bU+h_}U˯TqvCkEÎ?|'pՀelK"o8v-ϾS' $\v?8xИbץdK({ّq,Տl.t)>]DRlVo"wLKcቫnuhmyWys1gYzRKw/X~(V檨XҨFF{uI֢MGaK:3~s޸"$9uQ.o{E }{Kr'.ob }'@}zBj(K/T}m"e\=3-)HUZ ̊̽~Wwu?(~}:sqKw"r_ιhHޗG>/ 99,MQ5;GirX:2<-Al[k_v=ۥIŻնnk3L5ݓJ<^ mtD%V_i#Sml6'(*qs\SUX@YGBەio]{V^\gG%ۓ{=o̪su~9a{ ޳ExvzsfJY 9~͘x`AFŢ9ԖV5/L]'{QC>%35:6h7 ̣^vD VA}Qf7~8zEns|1浇8zo;/m2lӢoَ9͎y¾8ݮ26uW 5joY=Kߢlc2K9nN^ sG%$BtѾˆUŇHҜvDe[}|rfuJ4Ʈ7M^/тc缂,M%ß=N4J.3*,̟J6܂>>b/sT,Xr~/_. '/4 9i^>v-gOhXo^85H5ݶPUc7ϳyuߕv,&S ?ےh(繻^gQmctE:#Tgs+|³(=\l ~4|6ńG  {4 4w:X?]{wp[\_O JʉL=Ŕ|K|lfw(UM_(/4-5$xcusT )/|8"v;3L]r+?_WEW.ؾ]n^%S1_}L zޯm|56f'OR罩q?jdyG쐲7n65Թ_gqtjM[T֨^`7|ᬵ>ߓC.Xd# Mfh}o9ovjxsZk{KwcT{-9E*jܳa;gP(,6?0 >`yb:W|{`'2 }?4>=f]dU:7f~} uG^EEu?gN?(X'3^&N3͋ۃ{F#+*tm cV{/;iآ׃/_.-y캼Wm^N.tF1#W>'vtҷw}vr  Y O /5;HEM()|t˛:}oϣ9[,7xG ߫]zJ$v;yB|Í{˖ wmN~'#X!1lg{‹Fr|]`:<}V:ku3iwcb;Ef=ѷbPb ,'W7dsј7\?x3˺9_m'EGThoQ *~$U͎SJ^+g=qiIිi^'x~3q2{G}5Ō%̑=/$rH'fl[sHaƸؿ] 7|<x""沝;qdz"m "_-[!tJ-_6;h}XIQ釋Iu@t* !H]B.oJE}"̐YMj صlN }|mq-W^oY-X.8KcYP?y9?[>>+q%3b,?f^Z}j N{wrFlɖ9``%ԪwwSCݩа){Aɔx;8#_&ǩ4.6~oP,cϚ͂V_n=/Y]X^qy-|J~l^d 9)4 KV?S*bZX*yQc"C ddW #sTn㹛1dژQePSû { wv]ϲml}IHu-߃C3 ݵiJ7'0wc]wuK8{ ~&]Rb镥# ߏm5x|/]o9<=YعGq,U7v٪͛P+Ee>^2P-PuL m$~v%DV,[x4];Λm+,XYvEۧGf-O\}vQvaoōs9L5Lw/ZVPX=W0LJ8Ŧօ+沯]ܜY: O+·uŎx_ {*?+&ea8Z{/$wiz$}nl]ϻ59f}n򈊎~3pY5l݁>럹e|G6lGB-]JprīiTYRCEH5:4 /=z s~hfFLКEd#u8Ւp]t!y$"߳SUӢCCcW4kXGg |Ygo y*~\,zT3Fg{71=eV>"r<\e9clT=)_w6xr-=Bp͸))Mj{~]oVAi:qvCtt\%6">y@T|1 uKYjPCE>$w ̺3p@[ܺe{JuFڴ>U"Hub]3\[x(=#g[Q7.wQOڝ>$}lрlKFޖ5[T7hPK Q#l|O<Ď~~ZD5hJ|FuP̮wČ/]VJ޴w#=6RnV(tQ!F gLOSoɺuK)ydewEt󫼉WaszNnU3odP?o+J[k|F.?+luil~l1q͹QC{;2wooz7r &>2eed?gEꪗFjzO!ޞLT>~iv8U,מ ўڮf&bMSJ-m.~0|[)ozh,srd.sYؐlsֹފr0NfF7BѢ.A5#}͸$<嚾Jޙ0zvhvMxpmwdM[bG4e+{$:SCMj@-{rUFdqeb S_(:PeЭ\]#cz!Z7/{!D:2㒰5_+() u7 Զ{KK%ZiO|K?{{1f>0Fo}-)[Oۓ2B~yГ6%ܫ(;a HZ>4wcdؼ/Ħy(ۿP COfݩλQf|Qѷ-Z5MrKzpСl꼿WKqhz)0)èzڥeC"#Z,WKY\iW2M%Ekio JzyS;Qi*}e 6' *5Wz/nujژvOבc^p11ټFJΨGM~m_J$*{ >ebJg.U(\i!i#q<k9+vvrxEW7IKo&yGT[$._שAR ?unBZ{gwb{&G*^l&pՄODy \IVK{r/;MתqUJzH*E:JZakHl^_DJmc&alak{M;Nmc.}U7 UztÁt6fkwΖ[#qUU2/rivޛOwmuR6nZQFSlC҆*bOgkklWԏ^z\{9m/_)l:^jTמCDZ'mo*ƌ%,Q*6+87; ,$ /V7炙e.v߸~~H:7SZo)Iaʧ_૧ KgiC=s=$,zMiԇTbKOg-s_t)bI} LBKAۺ\ˀLJz)[F׾yP;ҶMwԁyW{ڈ IFdqx &˞:K K܋~>Z$,8%YűY.; {NE$YӔ{_ * WuUO112shh\aOܜmmo \YDӍKEu<8me̩.՟vi}L1ظVV8uy"L,ΪZ^2q5Iu}oRP]rhS}k=u(xʟ'/r6IԬ{N߽i9df=צ[po)xSV_S{7 |GhҢ?c鴪VhG^n~ۑ92pmn9,ye8͢_~Gq/|ghi:,qhߠrRhgm&_,Of^~[>|arSufWfS2N5sMpje~ 3z#'שp遽WZX% I{E?.ߞ-iH|ZݮfJºN2R> ˜tsY^Sך$l2Ӷ1'~u/)e)>̷P<*SpZ7{yg{pTPJ̵ΥЌJrovwu @3xjɇ=qKW\&UtFVrpgZW,<;K8zږmђ9m7 ~ˣuӣQN%փOmqϞs*TlH# :c?H{Ev̛)ZhQcg[eؒ^K?s-qT@205HV-bklnd`}-6늨J1FgI{3ҲU?]k]d¾(1X-N*wu Y4n(K;rD=A Y06~Re)a9jk&>ܟ6n߲+f,OF]q]Wuk#Ӌ9/Z6X^.m8>I)%-Ioɼ!HjvJ:y6Ƶ.y3xs}MGڱkYk J _5jfO νgʾZ> <s0ĚUEtUJ3Pjϵ›{Qnq9F!#jI]7ߪyK߬N,1|QŽmxf|!}eM"[7 X囨g_/:".fDQts뭒_xs!UR3လN:>/QVo/\Ŀn9x=c7%_)WRU{ūWXX`PJgv'!{[ٶy T1&q2ӧ c+q G8 mI-ybscG}T K>,M03?NXL¿J~ʲIÆoPk ;hƋf]zD{öogݳv,F.::oNQVʎÆ 6!)=_~(.DZ!b`4[%៿t>c,[KUP^mm3_\Xpqq~NE*I+Lf+7t=Y p,r\0׆+ M*YRLH,xa^蝹c $(엯bNvкt WeyȸGGe:,KSs^ɝq bo ;({Z~"uGZ:qmV8qg:S+rJiGb]ij_l9Ȍ}xzBlvvӉ$O~/g7k,h $.x,̷_R7I=\765{INTzZIG =)mvuAWh <t^_,W,9o7@JmKY+'z粍}Xb!Y]KOڄK:xd0sζ|=0i1ײFh#ehplcȬWx r{ ,!4z٫J:υ xB8.]QP@gr;활b'Ѩ?OPRQP? 叡PpT?ϓo<#4Ϫ*>a!|pd DBʣхݴ4rznM@O0dH xҝJR<14Bxy@*x7zRݵx C3n_x z | D熠4In) *`m b:< FpZ p Jf덀wi'|M!bd WndꯅtoYr,c8?-SE"?Bzq%Exx F (.2Mk<1:4eY}7C50{? YITRU/'>r&.8zn.MH"րǡJ{4WEu 4SqZ_<K5@(4 S4,f:72F"odT$O{0.`lD{TlL1C 0qfPOYcu( 5IvBNO])k_!/u9U|*3̤Bʪ AU?1KLɻ]_ȏ JQT_6{% qT4 nnLEJƓ:4WWa8j<7c9EZQ84cs}?^GEniT<ms3TSqd̴*6ww=FvaS X⨀i9LQid"4 :gX$e3 1146D,?4268Me&e<Bi1`1Y' 3pH-44 )-rnP*q8K[s $/5r9ҕ*P[@4cAPp!($b=BN₈1 !P,))@߀u&cnK5?,., qtVbIĉ\"h41`O'W4@.QtQ]뙓M #KH* 痐uD#zI_ B=Jd5`P_Y'%J,JBo 5`@ki M%(@PA!y4h$0T=a:os1! ftcX$xT35E`C<{֪@KB Q 1 r737 L;׸@0fdB \$Ob@t@X&\ tRFGIq!Z@`\034}Idx Z0OS1f(7|X  YUx =x(?5c!V^NAd4BNMVX |  P Dbdn( 0/XhR0`P0?@8E^xM`#MBK`,X" 0c20)*ϊXǐ=@N*;e~@(VC3Ě5MP&0QŜ(V10gKt,Ĭ.kd<!Yg2;F*;E~[KX&DZO%Q1'$2յ3ʙeb`lD1zr Fd5h/!H+ n@).V<.I454e4 sT5%@āCL4A¦}B&tҠۚth sIixzLcK.-Y?J dS+W$ '"&&R^2TU-=lF(z\23Wp²PNjPxN`)NbC{9 t:,RxbUiA!N vN &ShH(yaMA܁ƤE8YFH4 ޖ=߀, D+Nj!zN"f~g<=rxfoh0;e0G<+c(uZB'FoФ ?54 3B rFwPQ# lO#3~``G5WF,fC`)ē- x܍IYq'-n$R D F8.vjD1 H g4s)2>@Ȁ̧dK8B+&3x"4rW1$HVM0RUځ6Cszʌզm lZSESfYC &s!Ihw-g8; K+hgo5ߌ̔BXGeHci.\E\$[%pȠ<4Ct 1IL5+p O;U,NʯO&jLLE/v~OŴx]z) # f<ǴIRR @fѣ)Ç~q$xzF25Ob1摠hzrHG8zfje1!i[L;LcJ0Ag&w?e^< NOap5Rmŝ UAYB>c x[~ JC-#]MT B( `>aoecbdYz̴cOΚ .Y/IUf,\sZbI h)'`rC0oօu=pj10 .MS򒿩3-l bDUT:b ITI,td|p?:C{hß~@ǃ@f]yC2:qL'8~1ge\[ 8"-'p)hU1,g~ըM`h7  ɡ\LK>So2P\@1qEWYx'.1>7fP1*c{X\͈Kub!}ցm'0 ޙ!@O$TJOy= .d/*n^`%7tX(c |BL|pin~T /zL>.82g8pu& Zr` '1DN0zԹm5!Y30'?qҿ?/ x҂?!e|Sx*@e7@G>.$2 Ґ_`4D Dݠ{*q'$8Ov]0]$g' E!<LR-Z$$88P ;[Җ aqL0Oq!'xa@$cH*"-N&xt~HwwP2Oj.r:|/)I䩽KrCo!0U?'h;g~7쿼? ʪ*O|` `^, {4CIIZm4 xLEAfy )PWS $7p(&Ι^xW:2 Z%;HՋ~Vb‚w?#xi , >3wΪ[iARP\O(U+soL?oX7' xrc<ɮ^ 5Ere'K#.edVCS2;|M    q Ljl# -X<:s{o 3ljBh&;8W e2_uWQ0Led2Et% r #u\8Brb8 ?HZgL:ƓL' wE4"; ٓ> 04Ay`n&x^_?[] @B F ^ʼzR-苎Q,(  Ag%+m3`bXr#; ;>M qe>44Le[X#Ͷ!--ͬi@7Oo„"k1d ^ 0շ5Zh[o fVVsK6b%bs+}4 Q8osJ,x&=ƾ 0ݒq.8xI|" zQ 0K$Q' _8 2UY= 'Np +ހ@"NNDMr r2uGXi@63G&9k?rӔ BhC/ 8sBq@1@lx#w`T@M``K0_Yɓ\@+?] 诔)dмFWx+ƛ'*IQkm_ >¿dO_C,3ic`Ap_c:%SJ hʂ#`q"bx'Mq$=i#c]D5SK3g" 4@JaJ"U%7fbf7dIYșbt{łtQ$D!'8LF9]/?,!)L@z5ސ~d64^Oo ׳#)ӴoLVQ? g ~J+q_tճa@o7ͤzXm@=Tw頓鍘t:9hjf!~F֕v(lց)АsN0 JMLD2C1`6 6̰ 0H(2FNNʉi_7[rִQMPh^k 5:$qQ.1 /ʓ~nX\lQK~YF]?L/LkD=xV< D3̜@9t\ArZѩq)@+ftv?,Qˡ,*3b9f,(3 Q°)lbʔo2=|Zauf8# 4L d,6)(>И*5 BM{pIe] ? 5&mEl5BO?_ TPp~5&13$=VtS(*s u_?z EѰ$'xRJW0*RK S[p0`~ڄ1-b N`6t1 , e,PVy΄@X7|]k h J)'>F?z).Np C _TTQPRzSE^0\hh :BNb.}^`\bLI3"hDbjuE(7R1-F?LʠU ~9:_2q>a^P3qGv@'P8 {kq@}>8?!ʀ]CŠ$.AaEOOajD<=qoIX8e=xuk"?x#T 7=ҁiz",io%x)eS1C~sJ/8`x H.uW<B:cdvklwrYV )  8b/)LA7<@,@wVR*Dή0ZiDh^AFZ;fydP8I8:|> >x؝\f/\{( Q x%<مFW] o%Cd814\ 0zf,=Gc(#8ӳQ_6е8)T=gpX^w~ueY.]҅ xU|s;Rs#L4ҢBbH t;<8-:b6QX3nL43!^sw@[g,"e ?3,10G5ǯ`$K̇`~=i*O_4znX$ DwP5;0c[RxY3 z:tG8JU갗3t7163s^0GH$=HՒE& = `-Q ^d5 float triLinearInterpolationNoEase( float v000, float v100, float v010, float v110, float v001, float v101, float v011, float v111, float x, float y, float z) { float u = biLinearInterpolationNoEase(v000, v100, v010, v110, x, y); float v = biLinearInterpolationNoEase(v001, v101, v011, v111, x, y); return linearInterpolation(u, v, z); } float noise2d_gradient(float x, float y, int seed, bool eased) { // Calculate the integer coordinates int x0 = myfloor(x); int y0 = myfloor(y); // Calculate the remaining part of the coordinates float xl = x - (float)x0; float yl = y - (float)y0; // Get values for corners of square float v00 = noise2d(x0, y0, seed); float v10 = noise2d(x0+1, y0, seed); float v01 = noise2d(x0, y0+1, seed); float v11 = noise2d(x0+1, y0+1, seed); // Interpolate if (eased) return biLinearInterpolation(v00, v10, v01, v11, xl, yl); else return biLinearInterpolationNoEase(v00, v10, v01, v11, xl, yl); } float noise3d_gradient(float x, float y, float z, int seed, bool eased) { // Calculate the integer coordinates int x0 = myfloor(x); int y0 = myfloor(y); int z0 = myfloor(z); // Calculate the remaining part of the coordinates float xl = x - (float)x0; float yl = y - (float)y0; float zl = z - (float)z0; // Get values for corners of cube float v000 = noise3d(x0, y0, z0, seed); float v100 = noise3d(x0 + 1, y0, z0, seed); float v010 = noise3d(x0, y0 + 1, z0, seed); float v110 = noise3d(x0 + 1, y0 + 1, z0, seed); float v001 = noise3d(x0, y0, z0 + 1, seed); float v101 = noise3d(x0 + 1, y0, z0 + 1, seed); float v011 = noise3d(x0, y0 + 1, z0 + 1, seed); float v111 = noise3d(x0 + 1, y0 + 1, z0 + 1, seed); // Interpolate if (eased) { return triLinearInterpolation( v000, v100, v010, v110, v001, v101, v011, v111, xl, yl, zl); } else { return triLinearInterpolationNoEase( v000, v100, v010, v110, v001, v101, v011, v111, xl, yl, zl); } } float noise2d_perlin(float x, float y, int seed, int octaves, float persistence, bool eased) { float a = 0; float f = 1.0; float g = 1.0; for (int i = 0; i < octaves; i++) { a += g * noise2d_gradient(x * f, y * f, seed + i, eased); f *= 2.0; g *= persistence; } return a; } float noise2d_perlin_abs(float x, float y, int seed, int octaves, float persistence, bool eased) { float a = 0; float f = 1.0; float g = 1.0; for (int i = 0; i < octaves; i++) { a += g * fabs(noise2d_gradient(x * f, y * f, seed + i, eased)); f *= 2.0; g *= persistence; } return a; } float noise3d_perlin(float x, float y, float z, int seed, int octaves, float persistence, bool eased) { float a = 0; float f = 1.0; float g = 1.0; for (int i = 0; i < octaves; i++) { a += g * noise3d_gradient(x * f, y * f, z * f, seed + i, eased); f *= 2.0; g *= persistence; } return a; } float noise3d_perlin_abs(float x, float y, float z, int seed, int octaves, float persistence, bool eased) { float a = 0; float f = 1.0; float g = 1.0; for (int i = 0; i < octaves; i++) { a += g * fabs(noise3d_gradient(x * f, y * f, z * f, seed + i, eased)); f *= 2.0; g *= persistence; } return a; } float contour(float v) { v = fabs(v); if (v >= 1.0) return 0.0; return (1.0 - v); } ///////////////////////// [ New noise ] //////////////////////////// float NoisePerlin2D(NoiseParams *np, float x, float y, int seed) { float a = 0; float f = 1.0; float g = 1.0; x /= np->spread.X; y /= np->spread.Y; seed += np->seed; for (size_t i = 0; i < np->octaves; i++) { float noiseval = noise2d_gradient(x * f, y * f, seed + i, np->flags & (NOISE_FLAG_DEFAULTS | NOISE_FLAG_EASED)); if (np->flags & NOISE_FLAG_ABSVALUE) noiseval = fabs(noiseval); a += g * noiseval; f *= np->lacunarity; g *= np->persist; } return np->offset + a * np->scale; } float NoisePerlin3D(NoiseParams *np, float x, float y, float z, int seed) { float a = 0; float f = 1.0; float g = 1.0; x /= np->spread.X; y /= np->spread.Y; z /= np->spread.Z; seed += np->seed; for (size_t i = 0; i < np->octaves; i++) { float noiseval = noise3d_gradient(x * f, y * f, z * f, seed + i, np->flags & NOISE_FLAG_EASED); if (np->flags & NOISE_FLAG_ABSVALUE) noiseval = fabs(noiseval); a += g * noiseval; f *= np->lacunarity; g *= np->persist; } return np->offset + a * np->scale; } Noise::Noise(NoiseParams *np_, int seed, u32 sx, u32 sy, u32 sz) { memcpy(&np, np_, sizeof(np)); this->seed = seed; this->sx = sx; this->sy = sy; this->sz = sz; this->persist_buf = NULL; this->gradient_buf = NULL; this->result = NULL; allocBuffers(); } Noise::~Noise() { delete[] gradient_buf; delete[] persist_buf; delete[] noise_buf; delete[] result; } void Noise::allocBuffers() { if (sx < 1) sx = 1; if (sy < 1) sy = 1; if (sz < 1) sz = 1; this->noise_buf = NULL; resizeNoiseBuf(sz > 1); delete[] gradient_buf; delete[] persist_buf; delete[] result; try { size_t bufsize = sx * sy * sz; this->persist_buf = NULL; this->gradient_buf = new float[bufsize]; this->result = new float[bufsize]; } catch (std::bad_alloc &e) { throw InvalidNoiseParamsException(); } } void Noise::setSize(u32 sx, u32 sy, u32 sz) { this->sx = sx; this->sy = sy; this->sz = sz; allocBuffers(); } void Noise::setSpreadFactor(v3f spread) { this->np.spread = spread; resizeNoiseBuf(sz > 1); } void Noise::setOctaves(int octaves) { this->np.octaves = octaves; resizeNoiseBuf(sz > 1); } void Noise::resizeNoiseBuf(bool is3d) { //maximum possible spread value factor float ofactor = (np.lacunarity > 1.0) ? pow(np.lacunarity, np.octaves - 1) : np.lacunarity; // noise lattice point count // (int)(sz * spread * ofactor) is # of lattice points crossed due to length float num_noise_points_x = sx * ofactor / np.spread.X; float num_noise_points_y = sy * ofactor / np.spread.Y; float num_noise_points_z = sz * ofactor / np.spread.Z; // protect against obviously invalid parameters if (num_noise_points_x > 1000000000.f || num_noise_points_y > 1000000000.f || num_noise_points_z > 1000000000.f) throw InvalidNoiseParamsException(); // + 2 for the two initial endpoints // + 1 for potentially crossing a boundary due to offset size_t nlx = (size_t)ceil(num_noise_points_x) + 3; size_t nly = (size_t)ceil(num_noise_points_y) + 3; size_t nlz = is3d ? (size_t)ceil(num_noise_points_z) + 3 : 1; delete[] noise_buf; try { noise_buf = new float[nlx * nly * nlz]; } catch (std::bad_alloc &e) { throw InvalidNoiseParamsException(); } } /* * NB: This algorithm is not optimal in terms of space complexity. The entire * integer lattice of noise points could be done as 2 lines instead, and for 3D, * 2 lines + 2 planes. * However, this would require the noise calls to be interposed with the * interpolation loops, which may trash the icache, leading to lower overall * performance. * Another optimization that could save half as many noise calls is to carry over * values from the previous noise lattice as midpoints in the new lattice for the * next octave. */ #define idx(x, y) ((y) * nlx + (x)) void Noise::gradientMap2D( float x, float y, float step_x, float step_y, int seed) { float v00, v01, v10, v11, u, v, orig_u; u32 index, i, j, noisex, noisey; u32 nlx, nly; s32 x0, y0; bool eased = np.flags & (NOISE_FLAG_DEFAULTS | NOISE_FLAG_EASED); Interp2dFxn interpolate = eased ? biLinearInterpolation : biLinearInterpolationNoEase; x0 = floor(x); y0 = floor(y); u = x - (float)x0; v = y - (float)y0; orig_u = u; //calculate noise point lattice nlx = (u32)(u + sx * step_x) + 2; nly = (u32)(v + sy * step_y) + 2; index = 0; for (j = 0; j != nly; j++) for (i = 0; i != nlx; i++) noise_buf[index++] = noise2d(x0 + i, y0 + j, seed); //calculate interpolations index = 0; noisey = 0; for (j = 0; j != sy; j++) { v00 = noise_buf[idx(0, noisey)]; v10 = noise_buf[idx(1, noisey)]; v01 = noise_buf[idx(0, noisey + 1)]; v11 = noise_buf[idx(1, noisey + 1)]; u = orig_u; noisex = 0; for (i = 0; i != sx; i++) { gradient_buf[index++] = interpolate(v00, v10, v01, v11, u, v); u += step_x; if (u >= 1.0) { u -= 1.0; noisex++; v00 = v10; v01 = v11; v10 = noise_buf[idx(noisex + 1, noisey)]; v11 = noise_buf[idx(noisex + 1, noisey + 1)]; } } v += step_y; if (v >= 1.0) { v -= 1.0; noisey++; } } } #undef idx #define idx(x, y, z) ((z) * nly * nlx + (y) * nlx + (x)) void Noise::gradientMap3D( float x, float y, float z, float step_x, float step_y, float step_z, int seed) { float v000, v010, v100, v110; float v001, v011, v101, v111; float u, v, w, orig_u, orig_v; u32 index, i, j, k, noisex, noisey, noisez; u32 nlx, nly, nlz; s32 x0, y0, z0; Interp3dFxn interpolate = (np.flags & NOISE_FLAG_EASED) ? triLinearInterpolation : triLinearInterpolationNoEase; x0 = floor(x); y0 = floor(y); z0 = floor(z); u = x - (float)x0; v = y - (float)y0; w = z - (float)z0; orig_u = u; orig_v = v; //calculate noise point lattice nlx = (u32)(u + sx * step_x) + 2; nly = (u32)(v + sy * step_y) + 2; nlz = (u32)(w + sz * step_z) + 2; index = 0; for (k = 0; k != nlz; k++) for (j = 0; j != nly; j++) for (i = 0; i != nlx; i++) noise_buf[index++] = noise3d(x0 + i, y0 + j, z0 + k, seed); //calculate interpolations index = 0; noisey = 0; noisez = 0; for (k = 0; k != sz; k++) { v = orig_v; noisey = 0; for (j = 0; j != sy; j++) { v000 = noise_buf[idx(0, noisey, noisez)]; v100 = noise_buf[idx(1, noisey, noisez)]; v010 = noise_buf[idx(0, noisey + 1, noisez)]; v110 = noise_buf[idx(1, noisey + 1, noisez)]; v001 = noise_buf[idx(0, noisey, noisez + 1)]; v101 = noise_buf[idx(1, noisey, noisez + 1)]; v011 = noise_buf[idx(0, noisey + 1, noisez + 1)]; v111 = noise_buf[idx(1, noisey + 1, noisez + 1)]; u = orig_u; noisex = 0; for (i = 0; i != sx; i++) { gradient_buf[index++] = interpolate( v000, v100, v010, v110, v001, v101, v011, v111, u, v, w); u += step_x; if (u >= 1.0) { u -= 1.0; noisex++; v000 = v100; v010 = v110; v100 = noise_buf[idx(noisex + 1, noisey, noisez)]; v110 = noise_buf[idx(noisex + 1, noisey + 1, noisez)]; v001 = v101; v011 = v111; v101 = noise_buf[idx(noisex + 1, noisey, noisez + 1)]; v111 = noise_buf[idx(noisex + 1, noisey + 1, noisez + 1)]; } } v += step_y; if (v >= 1.0) { v -= 1.0; noisey++; } } w += step_z; if (w >= 1.0) { w -= 1.0; noisez++; } } } #undef idx float *Noise::perlinMap2D(float x, float y, float *persistence_map) { float f = 1.0, g = 1.0; size_t bufsize = sx * sy; x /= np.spread.X; y /= np.spread.Y; memset(result, 0, sizeof(float) * bufsize); if (persistence_map) { if (!persist_buf) persist_buf = new float[bufsize]; for (size_t i = 0; i != bufsize; i++) persist_buf[i] = 1.0; } for (size_t oct = 0; oct < np.octaves; oct++) { gradientMap2D(x * f, y * f, f / np.spread.X, f / np.spread.Y, seed + np.seed + oct); updateResults(g, persist_buf, persistence_map, bufsize); f *= np.lacunarity; g *= np.persist; } if (fabs(np.offset - 0.f) > 0.00001 || fabs(np.scale - 1.f) > 0.00001) { for (size_t i = 0; i != bufsize; i++) result[i] = result[i] * np.scale + np.offset; } return result; } float *Noise::perlinMap3D(float x, float y, float z, float *persistence_map) { float f = 1.0, g = 1.0; size_t bufsize = sx * sy * sz; x /= np.spread.X; y /= np.spread.Y; z /= np.spread.Z; memset(result, 0, sizeof(float) * bufsize); if (persistence_map) { if (!persist_buf) persist_buf = new float[bufsize]; for (size_t i = 0; i != bufsize; i++) persist_buf[i] = 1.0; } for (size_t oct = 0; oct < np.octaves; oct++) { gradientMap3D(x * f, y * f, z * f, f / np.spread.X, f / np.spread.Y, f / np.spread.Z, seed + np.seed + oct); updateResults(g, persist_buf, persistence_map, bufsize); f *= np.lacunarity; g *= np.persist; } if (fabs(np.offset - 0.f) > 0.00001 || fabs(np.scale - 1.f) > 0.00001) { for (size_t i = 0; i != bufsize; i++) result[i] = result[i] * np.scale + np.offset; } return result; } void Noise::updateResults(float g, float *gmap, float *persistence_map, size_t bufsize) { // This looks very ugly, but it is 50-70% faster than having // conditional statements inside the loop if (np.flags & NOISE_FLAG_ABSVALUE) { if (persistence_map) { for (size_t i = 0; i != bufsize; i++) { result[i] += gmap[i] * fabs(gradient_buf[i]); gmap[i] *= persistence_map[i]; } } else { for (size_t i = 0; i != bufsize; i++) result[i] += g * fabs(gradient_buf[i]); } } else { if (persistence_map) { for (size_t i = 0; i != bufsize; i++) { result[i] += gmap[i] * gradient_buf[i]; gmap[i] *= persistence_map[i]; } } else { for (size_t i = 0; i != bufsize; i++) result[i] += g * gradient_buf[i]; } } } i֟j[[?jGs<š 0 cwgѵ0N.+h-d<_PeܐFPV=M6pA ar`9Ii9f[Y01iԀkH9n*C`Q]rVtrO4涜j}`Q➫ٿ.ghKrzOSDsrܬHsIV%uKI2;NVѹL< d|9Zg\dU ە펜% wy#‹)COCWwȶ-L^ͺ933HQU/a4LÉlEYD087lŜ&mUnvI`^]ŕ&{}}P퀰?pkYeo9u")Wŀ6d僬:= JX0^5:|NU腩nBmP9Ht%x$"->EZp Jj;?mX=A޺eyr+ߨwZ: xx )4+w^FKZzҕln%mBslcXUNp ž=RPk2.uTR%*>J+uL_3[[WY3$DL_1 9}N.?>s㾁~ȠJ,Ijsפoh(j8hLJ=a(+qzZZ/V3ynw,|ۻN<`(\8WYjGȝ8*ZkxxjIMy-+Od f7Uʹf: %ġ++AY(QTŁPʱ;ZbTAwB$ <;=4".@L뾆݈ I19͋%`t+4man%!/@FPdPG~/aZˀN?۩dͮ{޼(Vxxn9J٢Dpn eƐf2+Ny5E VfkT?@Ć+GlcÙNϔfFuHY!M[p.]vpq|Ƕ@8xVQq[pB÷!utzM29&pUCI-oءXny2ѫWG/Hwo}do{={ͫW?fO_;FWOd/}wOH Rx񲈘 ^yMWϟy#}cvR7$_'{7_{"{T?}7O_?&O^Wf̾?z^fGO|7aз?vSo߿tL:4|ѳ)7RtLyɑXZ/?y%7O=*#7/ ݑώ^u/_?#(xz3遍($+e{Yz2ϤyG/e0 Ɏd:Q֡NY-׈m2Lg/ֽg/_s=>zs' /nG~x%[ )CZlO_`p3?}8'sۣ~xk,REr y7lv^;=Nw2}1ѣ'RN^(WdFl_ѐ!LGz;#A6z߮W_DVd|v`_ASh qgY^i I;Bm~oO "Ny?_9<62]WΟbg[@l ?;gHΨhveG/#}0Ruh8HѱR\pY߆$֋?5SX^&-/in~YΜbp6hdtruta屁C%l -3 Eͅ? rh1aC<Ma&ʓOLtl0 _mŤr?Y!*[NXo=@S]MccHjK@J&ٵh%c)AU7vǶ?=;j-^v4'\d+bPxkxRJwc:C&nGrh%='U'1 /ncMrK3sX0Djlv L2DxG:VʨjƯWqhWp!p %*W >uHs%JX cY(F oRÜM7rsT ";G W 2jF4k9t_w{fhw:Ly@?f1dsfP-9O68foңfʯgIYSN`*9Sst:è0kXJN p#7@,o.y  Q2γRmyQs_K[8[iW{luKʗQ9* /' 7XmfClVШs 1al%^#g U ,:i5O,}IkS3sn]8u-IeJ W.z9@He W!:Egɛ+.z*%X굪Pi AG%ipB@cZ5i(k wʵ jl83(L "cE MH4Pf0y|*jOEHi>qK!c=O7Z0fM7莃\:>a|_==BU(?kD97ea~_G@-tVAJvvm<z > }|l5܊| tӂAjCRECL(e1q2`6OԆ4 BgLxrdfe\P).`mႹҋh1 B iz);Oy{ruEœsKK TmRf&a49j>bԄ~FGӬxq&5~Zj& +^vw`Tʓ4siø2qXvϺJco'H ;PkcñJ&Bl -Xyn2G{vN?*2$嶮62F 5PpDUV&u(*NF n= x? P3nв5mz9 s{qhJE;Y7phi} 4~tӫM0T\N| t! f 3  &kp6zH<'hb,! q6u YpJ7ҳb3N&m!8@/z]~=|sYMN)N8 H3OY[w<|Ж'z4V 3DNw_<|W>C4)rg| vN<ĝ1v$):[qY$Cj9؍MWwqk\:aëݯbٓ=%;pY~εR$5+}?VFR҄(u#NqB?@5`Ƒ GI=mh_iڋ4Z0?wW_/+aY/m&Ո{:|ck'Xؒ!>G(!9܍-ohrBZ*C'H߱GI;%\hwۿP^7GeϹKzVpt^U #03c/r"#k!ZF4McM XzV/B)C,{  &aaPvW;4g#A7 h$;$ٗ4{_4{n}7![UԸ-% ,i\jjE*V hovMo0lKpT5ږ+] SWDVt!N?L \TC}.Ui,*B˦2>~8_>F5P\|>O4bpb)I`gc 0{()_˫߻Ay+h)ғvbDa 5x-:R䳟}䬆'o?|ƴKD}ҡ $O).vddR]C*saCoY=')٤:#gp{] ȴ6X|tmyB~mhL5ȼ @4q T0]ߨ+*omZ_U0 <$CʔaRY?؀!!+N;"6$'n[nwPX6FE ] pxm纞kǁ3Rf ?oxj_ cvM8$TXd6`e[<7;;3#;o9x9ypR{2>X8uJwBӊN=d-w.Xչr_[bb%U)m _?1`,%_j\0̀Ri-XwŽ>\^Gjҿ>.ΆԊWf_@cMciEtHԸZx :n/H+6n ecDžBuU{vx(#ںSA(a֝VSWfB>Qg]: =߫S^48ǦD+2b: ,&PT4؋y"^WlںSㄎ Llvf *exiVX:\efDOjc1&`-ГycdS/ y͜LÈMQ !b a%N):#8;`A1t.{^,r<;lk.抔+%4T%HڞUu5]^6[W_G*103ԕF %f|r6#$ ߆TŽ>Vԡ5M&o|i& $ߜl" |;uT6k_l= үAֻ}Ib1OoW`Q3)hU#8*u> 3P"r`ߓ2r>,|NWD~$G_gi53ipWƩl S6a/Z@jEV5è.R] iDBbѣRR^'4^!5:mj ^u,@&.f) Ɓɒ8Lm>;猬νD*YI-ZCF=Q< JM7|*(w/ۂHt`uUS9gځjuh=t;F YŐ\ɿJ\./6yS!r>}vFͷY?5qw(zxy*3I&ҙeY۝B5EF,hp([MF XzQSYd@돸, 0t.͉}W'Kna3CCUvE_\P+kɘɆ9Vu[@Vj;H%muz*<,c" Ok앃b,?]0+ 'r&}EsM|8%-+Q/tL*ԃB"+DPH!lrF 5 %z1Ըrn?-r;!.?ۑ~Ɵ_hQ0(.|I8AKv83*%O:]N؜M1NokO9!CR]O΋'N8gҢ` 4Z^,uNaN_ۭˎ^u.DR/=Yއɸfg@2PYtXaɐ&He5:!r]/)cxh7+(<ȯvU=.K(Uj1 $?YNsDX?6O{FV7YS5γBim+˩izR ߜNQPD* "&?:r~,?ٖQr ); -^. HŌ;c;2 < O6W>ǐĥ= k:ZlF)7J8^o,"% {KĭYF}R_.*2B-$ +-R|>ێw2%/MjDc`c8{M~8{L~j CfsySMVW\kܴ?Z9ކ.z( ҠX!?~MgC)jVmRl'2h<`<ң6fvxNؚfݿE|ZćFP~|7Mʜ:a|nY<9AO|,9B+2,όs6 ˹]#Q'۽ z[ՋJ厃F"\m0<2S vLNȂK#vd]N<Є1RNAHs9y;w7jwKchQ BIi=Z@T|K!)1)mXvp(*Hьɹ߹_.o 3JD `[ur,jbK_m6& ^0< ~.Qԡ86.SjxwH_Ѷ>|ɤ=TC Wk .7KL=2XJ*mdz~g,O,mƐ](=1#MnZrzq`m :G=gS`F!AK6c'CcAd G&V|T<q0cYGUWRȋv⚹R_on.r]-TF9[$+ QӕIGъC~mElԛgkVG-А`Hqa}қw#q걈?OF07jQl/ElGŤ2o4wqCq?kArzZ˒ꥭ+="X[v1Q9\eq3? (-] BBB< V[EZpTjFr[Y G `X>AR{C"Oc<&CuU,LiNyR-h /8hf E1%|˟ھW\62dq|9>`!v%NWj$y>90,.@%2G0aН9u8՘ 0"USAɃg[2nLg mӗS N:`Qp_7JPs FһЈF\k57655XĺH 4fP-F,q2#Q,:,5o{n~eC9w ~+eCD6:+' "7t5p ]韟V"Dͮ˺^x<4`Gݩ+M|HF^;Ԉ^Hh:r^ լESAzn<,b1RU8*N;p^j؏;#Gq1)/JY^ N% r(gPR3Nk :xĥY-1м#Ԥ<)0W{J#"773>UN(6 Pqa*)Ģ8XB5`ʎAcB¨.tWj`b2 (rК~:L+)\ά>$37SF+Ojal0?صd[t6e)8|C$ӄ[R*U5zMf% v:ÏL7~"g8zJ8OquoEdL;T0 I {p$GQkN7RR%k|sYVaj\q~@F<#d3-vySBҋ>[c>- A2Ff#ZH<~N/ڔ )mY5 `;۷-=ByQHO &̠6d]~Ooȭٽ[7uIRYޤ-w A^J8i#}V='C\aK7F\{>V؏ZJ%S 㫕VZFqiG f@c,[ \9kf?á"jҲ̔hi'PJ]ָ2 TNaaBg^?iIJ HR|9qL4SpLV %_T,]!{m Ekd$ <1$)ן +F *nZHqZ+?Ԡ@?Rmv?XP[,;0Wu<շuՎϵ`8's\#R99 8 6ަ|{.Vx C ,/FqG (ugIꁷ#SojCu%Ed2.Aeǂ ܩ\,!SXeL=}}SgX` PZvhNjk?v4-'fZ8<Ϙ8[,;HeׄYic8F\6~nwZ(-S-Q)C}^U_5\-Xc]-[z2?#.0DSkn&2iJؒWVZT.S ǀW_"Ok0_Enط0ϚKS- V49o3 C2,4 '@ 2 1UOj,x9 C֩0 ;Dqy~y+:Lh+ov+H߱^M䣐ڙAf}!-䂶[XilNR5,D"&U2N{pgK'!9"֎e}G!:v芢B,BR}xt=) KG-וRCu6L[eaQpgS$bTvfɔmr[̮-j^)Gzvo%jӼVЮI/#5huhH=5r@*92/@6ri'݇| {mGgC0}\@@3nE!s@~9Kυn;ī͎ 3ڼwWBhcNF3 ##v pˋ,s=̝jm8dBݴX3NP)՗L]Fv,Z(N` esCHz*R|qfTtzJ ω2[Y BaVAnZ Kyzv;!A{bO aqU!\4g׬S%lz\yN1s'nI`\o"{rJQʊölm)(JweqC8aFKpY%Á}9ZTD'˅S4ȩ. j=5Oe Ί>[!\ZNΫV%b.Vp-R3s㼲w2 W+)QA RFY< ՂƷrsRQ0Fи=X5OṡWCx-E()Yuq T LIuf:9g Xs[R7^KB}߁Ld/ $c5v۽;aÝPQ9QxPNuzYz\T,zyvF3C@Qh,mkE%4]+y)u2hPx Z% I4uNi|.{!B{ T#-YWkR,@M +u= +ɘAe%n"ο~E/ KՁg&Z(N~Ӊ1ݬZ(#傑!t7@ë At一AM}y9R]Lj=PA7|؅Iyh"ocϢs?7S0Bza@RD26`ND pT \,w~{ҽSG[7FKwo?6 ,$[v+u9+(RO Lӯҥ:5OyQW^aؿl(`,mhpGۃlwgCvM))CvVVjaᘘ1PQsi' t53#Mim '|s4$H}ݲ6ƈ~S~17vXlbt"V蘚O%JYা>&N:~z8M JdbA-NB;?L )Bd&a\QA4x RhMFDŽmaت܂ %hrpw` DP@ r !d7D@(Ygobwp_j;+[|/Q>$$L6Ń\`10kJz~*! *M -`iлy)c!D@V4UdX^D7c݌tn! g [,b|3ʇߛ!& 7%G;^N39ؿm~[;xMX=G8o " uKpǢCx3k%޷qLp+ahRN 1¯|ٓRAU+:ۻ})Ae[Bm2c8녾"(߲|N8zH&XK%vs|Qs]߫qQM`)F` OaӚmdϣ,{tЛk;ͤ)r]qD³iAbv6YAs`Nx8O}2:zȠ- r# yTbp|I薴k( {03P*o0Q ^{mZtxeA o9aBN6آr{{eC|փ2(r͇w-MzF)wEoX¢RVJZCju6o^%i;k & O_O_O_][NH?_n;'1 ~q}iٻ_{;۽؋8{wƽGv/q/q?ڷV%24ڋwavk6 UuPnDF|NQEѵ`3D#QuMR֌pF렘^($ړ = 儍0EOpv EjJ!]l<.PKWl40Jo6Bdb```z~"w7׋^s[/SnSoX=-ow;Ҥf?1}O $[`_|_T\>" N}j_?N]?>q[koJ Y)=j\J}GѝFrHSuTݑӆ<ɝfFٸ<.voGm2V"o+!Z S k~c5<Nia boSwab_GI9nf+\ Y ?eHga,tڈ܉q Z3I'BCKw]WnEO֤o-ˡR mXW$9k/8XkQ !($Zi{b8Jj .uTʖvv).  ByYhO t-dH3Irқ;f+crl~5+bxdw$,֖D@ǴO0[,&Pba:mI4D:a]?$dW8KGн?np٣!(C3H'[;&tݵ]ЉUZ1S3E!lti aA.ǼNM$?.&:j@_ˊWÍ{$_В9d* O)ht!@p D:0݂F9uA`+{IN"B!]73WYGqY\"hT9zA\M PjRÈ8 t t?(] 2867m3M*9@7qGx0'#Z˭L"DQb}U 4mA˛V&tVL!+HG* -+GoZ+#'z'٥(cCSq|H{PNgKO\.(a<:)qwV5Е2bLkyuiCdc ʊ5%'GB 'ޒ/N]R+_(bgon2>2N!҂s{0 y۾^Jڭr 蛒J\;hʱi8Zlx7ыǞL|s 7_%Z *+5\&L349nD WS~!N9M@R C8YAdž`OWYZk;와Xކ7NdtaڤhpM'(ܫ>18) "%NA)&]ykX <դmX|(7ofQ%ߖbnmd775vS1}2ٮ<_6NN xi)Up!.\@~ ߍBXz{yqi Kj؃-"e"}@әFa9h⚩0d ԑ^&.bN?Qp+s}'c7X ?0>X-81kou&^AePU*_j+ ާ)?& U+o>w߿7j5u!xۚ- / !BP݈5PxVe3_H[]m,R'5Ǥ={ǭlŭ,gBʪ!W tȔ6Dq<)i[EU\ 3A6`Wՠ3^*)5Ki fEPjiɃ29h'SHi.UE1׉ ~RE\=(^횣)F'O."dT]*q|#)-,cDka 'rFq bl٦BvFKqYhq0[eI{Pۓ'L-RNlmɰPNjw5 \ltq1[\m57ea)vBJ ʀl=s[,7ʲfٻQ$Kn V2CB-ϖs QٙżaO,Wpvlo]эꏻ6$y'?z> Mz {/ywRl({:u0Zļ na!nO7IkaW7I*SvkE[l L r/[d-_(?* w':ʥ_&Uؿtre=oV8v>8U\B?jWrh.5(IqVgH뮜uKل K8T4g4v崕Sv.IKypvhSt EVe! ñ0fOe,)+q=,ŐܔGpԇۻ}gòSM:dijQow40;5E aRGI4Sɜ0 fz*ׄn?wvf|GzlՓV۰{G. G <+"vPBC1h0Y#4dI9 74CkΖC !hRڔ F\<.;FD@thcx4Y5=kWoINx^R$.[")G!iRȤl{C˥4ƜM{Ў@;`WQ1-:DC"4DIzh,AL>D}#N#SF=rF}1ؑvxg{;{}H}/A"vlSm~Bť_i^_wHgjJoO3n<Jd]=ۍ8LlWg%@|0@ e p:bвnb7XŢxgUlDYP$s^\ Yo0G[#[s5HbquF~hȟp7eJ#*Q3~;k_(ݬQ>`+dT rܯdB^E)Jq=)oJ ݂Mߔ*AOA?/,&V*^۔t{,P?n~äD^ZdDL\x7hƃ#X( 4:3%H BjkL[awP2"j_K{Q6,`Z DmWgOݛA&Fb&6㸒(x҃  2MDž:)3φU0 5&TPeà Mo~@]\G;Y(?i5%:h1Yr㐍a\0>@.7lp]~.1bG(%k'{}A]7Vq|Bb 5xFޡٝinA b!eaW(Fb$]>U¤⥈Ww׃qօ:hd/I 6zUbdQN.d ߗfk< lC7rr})$B2OCD'I l{; da$^[ D5o cnYxsZS`Pm:1Z *UTg*UFMG'j)Zlj^=d^Dal{[+;>+e y#<#QcFq!a{y.X?GI 北eу@". g j֐`hiȪ j)7SE?w):I-i1P:EMa\N:?ӠEIm3`hUNomSO ?itj9- ԑDȐ =zU'7J]h$`}{Σ\̚qOd53]vcQ &TLA柼6>E>m?c_' ɞ [[(My+]+⬘*ۣ`$2,/ ;8X tչslO4c8&J̅ : KVSb0!0X)grϊaRE[vD8?>~MhEc>1ݿ-eevgvT ܐ:hwĒɍÄ%u ڳ:u3+:V̧]3BzZ6LM Xzu5ۢM7n\qXǮZo]|OM=UGc/Z-QH^M6fC-D@p049ﱲ!1>iu>J. mmԀ5+NpJł n` F⹩Vщi_iVm6ފaueW2A$"r1Vcd$0RzR& \a'ґ @YZB )UݖGu896QV<.&~Cܸ2Jg) ^ΞmHfb9>R(j_yoF_w tkDCKm7b Nf0٥GYjW}C;܋{60?}M8[gǏ" o(^6":Hp?[[0׿f:y} f® Z*虎" | ߁,^yq&+P~*tw+z.NDUb5UPWLd^8XCUUeaa%t Wrޓ:&dɃ ~kV.(/4y&/,RhT7)355EW®x˓%ղcuMt|D|1R]$VC:3@qo}'#2I5z2=W) ׺F^G0|V7,PGcrXcOpI_5Skvײ!pzuG]ӇTv=]n+3vcZhT+-nj|n_}{f}?|E"g[ W4knU ( e1IL#.Yk㱺|*:ӹԠͣd3@ FX %쎩ܞLU%߿b-Pj hLa%F+0u[:P-qQѸm Y =ed%9 vwҡ0Jn΃0G dmӶiA>mH ݑRq;0 | q>d/y%-۰{}>zJ+Z!MZJ1GDzғV5 )S*?"E l1w#ZڄƸ #}}Z VEF0WޣVp8m|ТD#X:Qh 1DQ߬ƀ3b]lo^)ƸD>f'5A|6zӴ 2nKJ ˅wtx|ճX7kp&ՙ{֑I#H7v;ҭ_dcwۣ6`Nq4IA 5h/RH6]OVUn[ݲe5]~'Șy[\'ndA#6uS>ՅM. ~9. ]?7a0 AFmLhΰr9nA6MH֐u'+KM8aV6Z'C+ɣr8LJnw< QB =O60;  'Z tHyD8H!$4 !9Fm\(umy 7@^5tJp]2C/ɏG [C¼3`T C#-*m L} C.H o/M>]u*;ΧCp+BΞcfL<{vrFGj>m8QJ|/15*L|*`ǹF g DP&qDQ 4s2i9A5<7=UqfCv\@mbf@yH8dX{\z-煣Kochk}_ד㵦u#0<ĩUvǾJt8PtfW'ata#&S*)Ƨ2|LR&y[ yWΌٛ{Pʹ5늶g+aQK͜ OO62<[yZXY;cQ־S$Jhߖ /D&=ΏEקcZp|V\ x$hXVG;VsFGn(Illl#D}QkԐ3i6V.qL69Q[i<5|>ϯ,X:SbknUnIMl/'(x'U5ޣ^޼;`/ 5qF5~i |n(ʮI _~ Q)(*6>B˸? QMߨ5vIq[zVG%ĕ9M ݙ#v~:4?ĄJ@2~vp2|]*ʵZ㔸<$V% %>[gx=ͽoi#FV[c;A\#iP:2TYE`#G쌮*zs蝗BB;@'ơ $ # Z͗P}żJ߸?V{`ag5ˏ kڭy+vJ o>J`mҫχ=~ [c?^\ǺzZ Aٽ'xK)l Q!Eȹ&sg7o^Yz2:: ۵*lpbvd8œ1OYLUXO>^w45'i-]Z5m2f`YObM[4u8\3 a׭S Yep'6֬ uAu|zOGgթTk,RC>6Ƌ 4_$hrK6ZVضdB^v6 V %:u1c UI KC٩5m ~mr&[hE,αXT͉fu$%o 5(E\{@_~60>2A;nY_΅hY׷Ju+#v0Zo+XYTrL+;^h|)m {oTчߘ2v͕hj}J`vcZs- 5C4K$y*U23f;~4NWpޚH߇[Fo .挿]"bĩ-?XnfG~荗.NswTEVQ)@&Tjȏd,rl,Wlu 'U>2u߶|;\d" k36An[!e[/F-a,S+d3mmcICWIVOe Hj}1>%l3AveMIq0nؚ/4JԠP,m rf; 7PaOw`7"Z񭬗s-( UiSO70#r q7,4%DD4XM4VB^] ?Sd'"I4ϔލhfoeBhP7fz?k*>ya|Tsfx{UmmaBZCqnɦ  JӢ jnml}}x1jH>qN!UawȲ*58kAZ34`#Cbi}ȚD<]556c3_km|p]+|f%_<brCo!vֈumJIiMCYhIr3Jv.!I^ڢ$b47򴻻Ŵa#\{贌l6 +`o!m?)0WˍS*g B9j յ\1CEK+)#8uN6X'L%f% |BWW`j30껎tR2ÜtZxi×.HRZKsD/>jc, gd6z*mX+P<>a5܌^'QQ a)\ < n^33PR^]~j gFrI>P+<ߪ`-9$ݔ+ܖvY8 ~Vo-:y;{|KmQ1q5㪨 y2*j&^ty1~q"ԤW?&9:TzY@9]V)@1z!"4'wk|BMRȎ!E0f؏ LBZqRծy5/|n{UxQһc ! { KuEl+z>kR2:/ۓ6$/ ܂ik"y7)6%z"zÇH&$jInP>R"bHa(W*鯡AK\mrG=T3 _c/朖kw8ŽXϊb|{Ͽ 1$y 8%$ۣ IMTã`Ku4bBF8ŃLHEVH?g#ag87ëUclb@M룗۴yMj0&l=QqHvs[}Fқp_%֡(<[C䀶׼.qOT`Mћ6 򘢹4=@,ڹO2G~o|9]4}U-&겦 ] UؘZSw'\YդI#j$}d#@ӳW"/?'F맥h}Ż[ k8F#t~Dٹe;hD߻Chv(߽>f{wެ#_ޑJnJ,zaǥ \yw!L ^ *i,s2E@J׀ݥ":4 TW5̒}mQJ8n,9Jló B42b߆grQ.* 姏F'0>+kVb&"%W{vW+ 0<0M6%9M𾔻)>EZ\cuB9M8;#Bi `/&}GV~xs2 𕮫8SQi~V0>:wZ!*Td/TB~Nd^9|ݴβ4oU'KE2:|.tiTe<=mY旴&p,mLC#gaH{ƾ-DOK([{2 ;&'~6<2[#ri.5C_Wm=1 Eh-Y-?Uj,snil10ެh"(#Nuuκ3.G#VB^Q|'zg'f@Я!%j:^Vr{ gg%c6/ ? a.kBUϋ$f~n.WBk3ܰK~)܊P@h(@Y=<p$WɃ}ArHW6L¦&|ˀ%9~WFG2³J(q;r,a֬PBYB>:Q("ȁ&کOO ϸ/zpɍ ڹLt z2jko_ɝ}{;{z<)LjjUՄ ȿ^zr_~Ŭ_}Y17ʺVfttwd\@y׎O]qXP33$o[NM*-rKGY V&4]g{w.!%CLx( oR)ۊtA4ND1 I> i6 P 9M>J |`) T󪺀c}u:SVtJB>-tc7~MMFgK/kbiW酧Qd^ 8'j+m։ivFYvMxudΨ\j^ @; O.DAck`dUTg0|av_k咤RJx.1`Un GwWtɹt k\_B8f`i$G_&uGժhD#bLq"՞N`&R؏>X1Ve/fLnքm4URS( )Gۿ7ڢ{<c(eooFs®1I,-IhQ(?4z(̔ OoԄq t-vNHք ۪&ԪsaŲ'5kx`nfFe#+$-ȭ4XV\Q,sŬ㘄iSNkՖmgV%qٰU.݆d? 8B<{dКx{_`*j`5#Ccꪩ-y,c~{%jQkݶpbҗR``b|~Wsӊ2Xadt@NW'YZi22WFOwQ*´ a \6V)~Ũ"n\5 W0}jSXWYA'tόUdPDJ.=ls[d9 Qb?s\]9a@{іg9<7L+F5C2\џG4<ao߸M J#tmlX]k`ߚ4 k,?4ihtsP.Шc76RBmT|Z(*Ui~dieFYzv5{-Dlw|͋m9%[ ԭX 7fY5I ӱ#l!w|9}ᮉ/MO L5h"0ǐgYc9R"&zF"14 ,j%D09".c9!U7פGYa,5VXi1- ̸„^q;<9 6bfRAB@έ[&e& h}IH^, g^l{iXZ&B.nN ʔ&gLW"2n"#V'&71S̸Md@D(8](3FwZT@76˻8H9#) wb:;վd=;p0-.?>/Og84H 2rsخ wXvMK@S?8낱'x0FY-՟Tnt+ı1^"2Ezd4n8eK.'.O1nxi2xʔd@C1JĒM|;Li !^)O Js%n˵Q k>d] fFBYQJߢ֟-Ajae{2DgAV k5 .VĀWy_KEe.xmapc1(aXNs@>kKϼ΄"3"0>lEIԏ58!v' e O${^4Yn-블s0[fM&VVyV%Z<͡ +\Ёz_'wcØ\@/dEqv1%iJϪ\Hj 5F|y!oqux+C>N+e'0$)oH2f*~ dzH[vQs- UhKn6g!x+٦(٬nppRA(DZh,\Bq=<": Q g`4'Ĉ /C6To2+{dt7*ћG~!Ž8 ~JGgGI4!/\9j]q0WET/8Ģr=k\T]@Eܰ < DžBc|b6rִ2A666O! hr_Yu2)zU--v#b)d/(pLI'K'i,R}U#UvDR:h^r̴W@x{︬sgY~qaxDD/=b׫1jrmi LP4 (@x>]6A"' WE h'W@(]LemKjl&CD0`۪z WDƠɞquM^U ̨gۺH+7 _N4odEH.?j. ցr*/9+y'Q+ui%>.Vu\L߭'_9RÏiA_ḻIt?)r>z;ۻ;;[E-e:=*6ދ㋌ڪDqjaGF)e\jhH"2Md~sL wRzx-dʐ 7;'?iÞYgB< 1YFuSr,0167'E~M}__7=-!헚v_h5m ik?|:kT& ۫۔+۔rK)t>ܸr{skbFv#WtrzZ!Oz(4'H*,jP,$^F>/xX8!>R}b!Ҷ9oa)O'i?K>[)XZs]YK#-8 gSVN|ߓC5^Q}_svMۖ:i-Tu(psit %e];qU$ i76Qa:̚w\ AD.D` .@>^a#~eaf#ZrXƷwW_} ENWr(EQ˟}mBz^D]HAfBt97x.BVM!QRUחbI6=7.26"C qzB4q=tYN{E\@O7<dÚq B5tj >.'T}C ?bb8x0UQr.oB~\RCL4B0@"n.4)b% ؀g'&t1iOxZP*z_LW䦍9SZ6 ~Mei Iff(lXMr)xhJ ~̟<|Dz+R&K $CJ#x^Y8_bIb=O6Us( e Uy@ s5=omX*}rqz*\%})a=EQ Р!< 󓢛)v2G-u?k=?u&lڐuڟF{0\^'WWɮR89cqd2}=[;@Bhrݷ(0vڇS ӖKo2(vAx )dsMG1gEQLjr? waŀdpw0oīn{ԾYxTyC9# >^J'A;9y}c9sJC riE||_5萰 .weטC1gYyC2grEH[%W_5axwfS9NȈR_Zak5IƵʐ+O? ,o=jG t3Rv}| 0nui+y(|uM!;*rc*qk{)=G[9w$&X"z50KOM #ZX3{-b~*KwK"{, 7Ņ'W9!~(ո#(8Y@+FPѓ"^qR[ tk0Ob\tSܚI7Wp{MH"9dq42ǣ&7DxB t<(II(U$lo] $--4[Mk5<[,j# k6j G3&(yUfMWoz"3ms (: <pɬ˳Byr_("Liѷ Y-9oi;Zz>0o}QihJ B|NCQiɍHVal \`4ۭͅ|}/+E~=$ܮ'2?`hpR!TLUP3ؖlkҽ6S-"ĕQK;` W_@`h֙|2; 4`hzaU[i+Y)aqzrIAR9~1Ir,Н;-Z]%汉12?=w5񈞩I ^|ʎFAn& %TG@:ݙqB?6v=bDfPMv') Fk>'ʦC.= V7VS, oԳ*g5%%:O҂Ei.DT6qˊ$?[z|SB{MvuqܐL&@cK@QPfm!f#mduo;]thSwrJy(2Ǻz5uYPkխ/KN7WT֠dYAն %[/3{M*y@T]4ʘP&A+K16VPkR0,z=~ 1cP]OD~L,=yTjYD»ւdaWo_>,2 ql=Vf*ȵ0OC8rWNH/-(P$F]O f/k+mlp y~X]K}D)-ޤ >5vmjYkTSmnS蒥o,?t\(*_JJg3#.tk+~©,ƿLʮ~MK,/VdW-1hy6Pţ]IFBfyCӕdDT h ;jG-cvVºDAea'wЮ9+@'QۀHMH{^5 FO`aV%»2Dz}Fu| c+%š׉Ow55qKZRKFjtEijÍps8-O#|,B^Н9RiT[Zܴr)Y\MiMai-7kH%;.mKSaxCln㣴-a=S^;Hd|kWiXq6,][i`kg<[%~HaI98Wn\o>cS'D2hޑ\x/AnU.䧕oH.dLPJr/ۡ Lb#ZϭݬUUj=epbJLAizf.y-b6,uNߔ,=ɺCb5ݪ1cfS}nɗ1@N8v<5qUCil?IaUǃ})\ 9@=|"VyӴ%v UVfӤ0E"E%- ԁ&m^k9MP3Ua+ËEjA Ch!3WݡS{xTT/ƠpϿ3`eLGY?牚)FDq¿08N4;#bJDş?Q5Kd:\''_9Ӡrjԃ/m6)- V\,hFo^i}k9ilRju7X )h*_'LC$l;GYͬl]4 5d [ݟ5| N*oO?i]?JU' j@-RninZ'14tek>gyV\O\e̔Oϝ q* J-^,s٫F/쮟nw\]P1˟N6/1/I#~ sq ;-uHVhl<.74Aw;{/Bʰ:ku&G[>oSe1^)+.{R5fјM(|5<s@DAZ6%vc⨮n'Uv At%qst(GOɲ^e~R/oiqh/N qG SgXs=,8C{1( :S,ϢKE2:DM=jPw9؆J`_~Ɵ_(퇐7! eʾ׺;+Ԉ(eځAZlm}^@d4^^\m!ҋ+L] #qbʟ#lRWpd=ZAwU(-;+W19BEǔ7Rqת|ѾW^(V=h?ihZ#=1#o|<;p>3:hyطw#ZO5H-`g,$Pܠp иm<^d6Cj)Mya6[ h*_H&WRtSA8|ɼ.ˤp!I l;{*ۦ]I j{XʑzJ\R{5H/8l:ف[[D1ZǏ DI)| @XCSno27V i)Y#9}i20Yşb恞&#vh{}}]LsoƧ`pg&-dM~|ۅM S'ANX6\T]X|5Dݗʿ_LeI ߲PdCBnyJ:U- w3#~`@֤/NXϯ{Kaq)|}R]\p/HKz/ C`]ZO#avh4MKPy,S$"B{bUbvTVq,'ajه- J5=,mMR G)0'$4PQzh{T{nLKz%&UMU 4`(as %D̎H|3;}=<|p{<`'x+W6;LfෆBJbq8= Ηa> ϊ9sdtUb c<q)"LIg86m}jˏ-D Tai4 dԦVI$֒x-ʩs.uԉF{`/a@HƑ L5ks{X'K^  KO߸#{/Zn5ޮ<~~w il|ɷiBɽP/6^cd'޴T ~ku!Kő-D¾SW~(&uGt“IK Y5a*qSIYŤ24iYAس6ޘL-W XRb0+QSKVr5 ]ȥ:k= -H+BOdǚz;u9+A6 :4 uiN#THj kRߊi& JMB>ݪ )]#_\|y֖beec"-DXmgjQv zc\1TmD5ԄЋeD P'Tr*[e|*E9-;˹9X͇QSyNaZUǰtĹ, 2PCntm lmTX{)Qip(֓;~2wew$K)>B/A?W'O_w{_wOso; Kn[Ň'ؑݿ_vw{{_/;/KH󪺶'z&?t|2B {jPOBZPC'cwW!D%qj?@r`*`^= >sHB\\bK9,< (mN2L/t VJW gM 5$܀Rt\o 7wy.:!Y1}OgM=/0ʙt#}`)Y}05Q<5ː&d}xGg %a:KҘn76aDjauU|!Q24:&_<d R!<1s|w7Cb6!m"B _g;ڽ5K]jLǎŌa# uO׊'~ (Bx0(\t oz?syovZXkIr3$JG?Iu,li,?(]=CIaB}g2=Ca|ݎ^P&RV:ON'잤eCOdJٱhsF޻?Wɣݝ%cBGA˝{w|[L"a-Hq0@o έ%oD$n<~e~n~lO 9eFNSȾjCvݝBrv1dwۏy9ɾXI wdy1Vzrooe9D V^轝6U< L#je臔⢪+ټ^h n'YX+6[Av`6Q<9lwbMVbi~ ^nw `_8Ηum.)NG׈.*j- ǝuc/N^vG.T[iLx}E#*!juiKn]$$;; H536 7 {w̾c)낑 Һ7x"{74IkE䬧w`5f1!qb2 ߀| őwlS~t:J]ECbu+5IHZ.ΪvÄ{԰!~WCĬ=κ;].ߤՎ]&;ѫ'Godoy$iQ 3ʞxx)~x,G~ɏ0ʾy*^1T+ى w` 146 X43EtdU}/;w\m%̧[KIy%wRhhx~F elN^ , "sͼLSIQJa\ mЂwd;&qevR:cPi`lbwD6Y:ܡ['-SA{1Ko2-jh|p&3wb~A*QRJO)BrN2.OtJPyEKDA]GL*%t ppa$1P&Ā(f1ϧ5{аwB"h'jTg^ IJtp1ӓ$_$. "ҫ2|rWffы9c.Eۋ(WcOK9rqNERpJ%z#Jߖ82F翚k˃v1P8 <ӰLIۣc(<^xś?xIff(8R#,,΄$W `y|P]a\C!ΖϹGUG:9gg0`v!-JnT4 (m{СR- 8zc썟M/@+ܱXvڷ{v]{߽7`)0r7 OZVU.g)t]r~ NOҟzщ_R9w:H$﷟}??~'o`7?yPX@ۡ a'Hաtlp6ȡoY)Wr C+ٺ&P2 XUMoiјcG昳(sGǵgAȖm]~7ZNc< kIi \,u砚d<6O} aq-l5 5Y#nM^&=+_1ZHOQD 7W $L-g +9 }8}koklduzv&3I9n,:%o+؟-kAR=w:rC(7>l;GTx|b":o \/IYŻJii}=w^j2˅rh*Dv qK ) 5|ڑ74m t,ޕ2ʅ2`ϫ5b\\q+:;"{b`Px\:B79_h Z9M.jW^A/:IK[ [͇^V8۷fE7k[v!I|Defg0ܿwo&IuzyYM  A@V86$B ]U 72`mzAZ Aym!4H6rxrZ iYK:AŊrET!`'VCXFIL|wӡOjUfeDzB.q|yE\!ldvvwweD҃h2m;n,DKlUk>͕i4U5E*"rMUEAǴp~gx#y5U-C g  * 44 д+9&v |WJDo:A:00+&+ l=qqA1IG-\CT#+y5$y?'QF* L{YẌە(BOloPd42ֿJ`_h/T"0}В_"Eo"?aHX aE,|Q' P9!vfr "qO u`Nr2u))ט/x?H$9ov?PU* q (o$Fy!uUnVl6&)JHJ␒F#3cigmkwG\Ȇ;kL?ޟ P{"<<<<<<<<"zbΠ5\n7q%-IW#G|O$ݚrԛll;?i;-f'@;;g$~ -0*NɍYfA~ޛL #_n7Kla"mGBj;./Ѹ+ڞ@raO2s|IfV~1K rlL֪W{SYoUO^FƧ%0[/rie‡ÓfiIѓ#i;Vb)b ;֗\AcdNASSC!7Id欫<–X*}9 Ţ4q,H#(+[gARQ8EY9/{%ZN$N䈔lmh_$:6;G`FYI+ iA?N)xfFۈsԾ[TχFS=sϤ +L8e*NteSc{%CJ;@&xߍ'JLNp샺r%ի =S#3rmX* Df{;0H%yOULror[}c``B74&/]iw0BdܽgӇO%Yϓ˸-j$RpuRҠ>̛pD:j83AvZ%2+c ,VOˮtڨc\Mi\IϳCtJ7%;n쳑[*۹M,ل~Rr9̒5IIvN,DGqpxw #]Ww=kcC&vz"hv0K'{X7KVݪ Isp۩Bp*d-g'YlQR%+Wk._1\qVVʹI$;H85>8}GB/"X7byN/%%Zort3derV uRVyfLrҞ5A969;z NLːX 9 3?q_Yڸx^-7e^Y "*xXU@0d+hO(ۓ" ,tzG#NMLk /'=}}"UWv[ a M\@%gv{1LFV2KCFqDhԇz _ƆGh;"X(ִ?`‹\G4O$u;ܼi\$uzYG* %#m<ɣ~> F `ҥͽ$]"Ԯ\R@H|ҙZ+*Z" ;@bvHp_赠}B~eԍjH3p2KCTAH w:g׎S{voUۇ}ne'7edxsu< c.UAIWj҅|zɘYpeu0uַ Oj_HNEM5 :KEϯV,q$,3Y#[3N,FS`i-waiH{[4%́sL(H6LRe'e}1=ĭ4r:;G#iG4ie,BMM^*eރuE@m&SN4Vꐶn<]<ڎ%W*xRujtlE޻:lu^-;tyPp$ZIC'dŘ2tYZ\׳$(-6EjJ q鸬$OId: "_P`Dl0<:<'ە27JkdrjʭPpG GU|kꀺr5âBR*$ݠ%z>PXZ\E˚bKÛ2=|q݌ߧ|a>e4X߼?:OoGkоrboi͆u7l_)J'qdO W3ڬҚ#IaHp^urK; :ydsgVkȓ{NsXשǎ4xv=GO˚mױ#G}؉ûۻvگQM5{ٽ4ך4vPHɵWONX+W;*1>M;Tv뱾qkuΨ>4. ʵm}ML%^MtqVV 8)vֵMsׯ,uvuw ĵa\y&}d>'їQ^S ͸) C.ùTVzu\ye΄f)u_Zsi5փK]2g1}r ILe%K³ў~=Qg8lIYb8Vt6Q]>Ap3d&45.扖Iy攵z1N̚l+DDYN*]"4Az zHm|2%s={gPPUmϺ':NZ%J|i C9֮N6ڏ $ Þ&s"Iu+U*E7 u{ƴhHN(oz}]I渕oxƕEP]CMˣjnv{OT{. ;KeuFvFAޅI]K?AKj]vPߍ5'= 8ԞO޹nsJGSUapukGֻgz@)i}'K]zL˅ye"G3v LNOϴ6>RC#]O?vBNJzmuSdpq&GBԐTgx4,D=uu;{lֵko߾YW[g}iY?fO?:ƥt?w/Cf-u6-ew,:uϯ ~=oڟ9Pl ay+rc\Xob]jW"(}vJrs^J$89#r@Z0& I3cN,2WkwúbĮ_kOUTr'87ȹ{$*d!yt9W'+2㽉(QzNhyI.VJ/2- -wQlTcѥ,wgt؉n$"&;=aл.,J-YGnmݪ;8/,C4KBvbرY/iWEɒ>Lex493"\M%THMO 4|a(Vz^ݒrAQQIΕ7pLyeKe2-Wcא$\a,svip"@#`2lC7=mLR#~d/DK^."h=MЊD:Pº/m53)wNό ȕ/nM_| i =&9EձaӺe鱑~$GDuIm>1BCt(v'G̓! 6Bx2Z $rMd﹣_J,zqͱфIw:d(]Q:mZc>pJl19ƀYHGdc 2 J(Q9.G/M,'v=Qr1VIVdtaNkmE`GDTI]=Y>Il|$2 &\${#fi}NFсڤn7j܄rD#=ɾa5|b2'Nbk%mV/JS$獌zQ=qa߀|o-3muPvR!X nj H b~s{ױ#;ݳPívS3eM]BIBI$DߜH܀W'r*`kd cLԒ'ÿݐ$^2-lMDBtAwx-Q0},9QJQ 208{ (iDI#tɚʬNT=Ӊ>3*-1㚅9g.Q3hf?QA8CBӴ#W5-JL-~׃S%Vc& j\=79Bڡ'qX'NT7;xDrM$Srp}hzx-9YW[LP&R{W6,c{FTc󘞩-qt%6PBᴣDu)a !%'M;TnO:j'#Zu%o"}Cį.9qd$>jܧ@1:2ʹc &ctbg4:3ieCˌs^X a;݄e Cۑ޵Ib4=Z03>/`>Z6v+J~&A4/iIj(O y؞pz&gjױ+iUP_E SJ/"kE`-PԋWYI ɼbXUEfl+6XU潪Ɏ WSrrͧL$0SiGLu3KS;?Gu1.bjI4_R/u BV8б5.="OHO/ea߸MpKrBZғ|ε=,)Pz !i3͌ SWu23ːuJTI#"9)hKlo-:is;xE.gzU7NNÉ >*-bS-s>ps=&p5NV︜%N'gS= D2<ڵK19Ѣ3d51I] dEM+v؛]l!G#L#=TzԱr -1暉 Dpz61NE@)\/sEΙU4ikA5W,iVdxS(kMN=:Ϳt%s~م'#{DpWR0`$@s;6H[~H.M&S?%Øfz&2=n`FkrdB{KfCbkOv,P%zv2OA90cYG >gPO*UN|'xʎ[/wiqݓpuɞ E,gt:$B0ubgf<&e&UlZNf LVuz7=q,\c0Z/JXې;AlO>ʪ Z3Ӏdn#]bRbK뗱Ն*52?TmLn8& 0%{7``)`1)U q*9Cpt4Uj8 wTix`>96Q_Pk-{F&e5ăN+,sH"$%v9)rԆZ#dɸLRn{-f1 D"f uN9=qF SVMaD>EOu|2oW[wO8s9{'f5X1Gơ fD8ζ4VlHє3#I2奿gSw Ǻ:GD&u-_+6I6Ψ\4HfZiWXe\ߵ񩄝!XiIֆuWJyF:']M=a:Y鿻:nBes3[Z\"#N` d*;eV%0DY7)t===6=\B%ßVDDdGU&t{yRkY FeoL# rh 8mZu)fؑq9ډY1bc>+Q$:)U%حX&6䌤T;]3:eK.fK^̺XGds  M:][&l } 63&eψ{ 5uG5ő3Qx~2I5S]{||dq({;gk29нm*_ANRj^H@0ጒd-̮ _nb۴I b!p cO(K{l!"(tƃRuEʔjNP'I3OWZAU "~ɣ{EYsG?RYTs "G@o6]T|6)+K!릊F87$ c`:9ئ>淤C&?ճs&yUL>wLӓh.bSǟgY]Onk=H /o݇rJ4N(%A|M^&\kOϭoBWk?,KdT7 cayqU;L'!Dť};#vbYLڲo \VXIDRc얤Riحq95;u~>h7%فD 16yn]q?,aMb`le.e}nxj54hHz ^9<N:1)gku;+Qݯ+Aq[]Y 8X؅ ;)*/D(tnUEL;!5"1lXhLTw룩́ԘzD5qޝ*H;o'eFRd,j[VMLx0֎tlݣ?7D@,JMǺgܧ_a72 5`zZ¹1`m' HXkJN ~Q {a:(*AuBg蜂;-0N9G_/m*k'Tia]dDoO2tPJ.ZU+J+s̔uXT2/d*b@=zx6#ęaxv AN ]%Re&xo +N*H=8{#V; dUӕ[OszodEϮ^?̖U9/jgMos]n`Ilr:`u^㣣zE0JS;\Un+SaBzo\]*]ãՌ\\7uLL9 S 1Xc-pӑ 뷬c-fH՛edW.ۯ_s*[-M 7kS?2w~Q`ίr׎˺v{X?ơe|挹d2zQ]ӈMG\oF'x2k<ږfu+o2/ `A9ϐەSz#cIY+ci )Dr?Ȱ]8h#A׬_aAQ }X1\1a,O&HgwFo%Us9[f$|&Z+kO=ZDS;z!?%ΊFDBVUnݳ;ۛms3]TW)__MW0{x5]h``jV҆8QLEn3@8菎 *cI֨q9kks]?ԓ6tJ#{qÆ[uQc9yf-PgA94Ɍ);# ɬfB8C ;?eoEk65޶Hl$:;8DBSm2`<~Xu?]g` 6r]}[11U߆c&ĖV_B~.)Զ.<'7vYm:tWaܪ8,$ӑԡcɊ'{5ib2H<)'tRO6k5z p8 el*|:Vc)$⁾1s1p@ ܍8Z1}=.ٽ70:Un0=FWǭK @s$WsCOܝ9_~w0ȃnꉒOL /N-&½l+UaΤސ˰+hjCN>ٍF (BMm\Wm귴l'WȆ/UGaIݕpZZ>f2tk&RhorfS2&X7n^-gV"U4gS(`]QISl!RXʼ& 9Ԇ ¶*Tkz )gn90f]:ܡ:pu:#8Td%ڟB,U?!uϲrn!=:5dA#T]CUgj*ϺFdc=&-۩tA{vݾS9dcfLٿ xT1&a#sjy?PnQW zMZGzնEeNxaG5INV0&s]'+X=;[>nuY;ٌշ/׎j=WldI3:K4o ]KdL߰foֈD};ٮ3KTEMDf?dbؠ#~Icޏ2]Z=*9$Ő \m0̌ti9J'G$0majGJсmb~IDW}ԏ'qu .bOO{rftX.w%;'w!37[[*:qԱ]3mݝߴu% n#El&='yE$l䄧w>;P/#9~.;s 6K#ā}jqG2vxreT{7kH]fcGO8vء4Ys*hm#Xe2O?dYIlҩ!ɉe:IX'Zs nS靖!/?z:иzr"&٭7'wSfPknHD#1y ַvZz+O[;ĺK>ʁ\gJbm,zCErkr~V˞Ã#g&:۟JOM+^nO:vujucuwby>-o|2! 89sc@_i_} ^IZ,w&+VjQJHJ>̩Gc ;3嬼aӥ;tgF\AWrCN# Zݾ=iBDfsϸfà nRueIT֙䮷O$f|uW-'8 ?5Hu$轸}PT<%Yrȱ:Wz)ȮVznrf`ey[T˼>f'-ܪTr^ r89Yz3Sk{jP%rIjZNi,JjIsNZKڭI\Ly~++ۿ܎]N/UϨg=R XO5tg*%[7no2l\qȭHR ENFpr5UV9ޥRe%yH }3鰷 hBL:%' ֯P;.ҫbY4l;'nI7ЮlNhZq럿\K۟g|=Qyu=e-]g4c/O%:7 N쵚af3L ءzlTL2գ6\s|/e7 o?36gLWӃe4lXa6̺u78,?_,l߷{޿ovw8}]N>d3P(U<vpc'n_/J r{pG߭v-~ѿ}P i+C#wZᡇEp# ]=umtι? fɍɱ?*Ph?̿}~aٵў;/ֳpa'XP2>,*?m|_H巾~_uwKBwߝ!{6m2 _(ڀ?f/{tA_*-K%~JOM?,y~_/􅤬o E%b ^?_ ¸n~17/pQosaO0Th-v§?rP+l#&/q2 ~opt4қVhO98$iw οeJM~^&w0G?EkY?YN杝V7)[~^5uy \vB7i#E_҆Ÿ+ V2ʨ]쾧84j$̪=ϫB\gc:LHxBkV;/s1r-?a]O/D9*WG-~YFeۯޞ{( ZYOf#C|w9 %YɺwDx%#6%I.҅9,ub$ 9qxÓ,H呴px`-DoKoY[Kɺvuz4c̭[V q?y%?g҇Dwh;S2^ M,c6[isFc% [0WzBȿүWo {~ȅ 5]x`.3ese}aѭ~WAl_^-ir7[ hᵌ]lBwr_E4_`3N;\J3.4~.-36|VY6{\_jb4) qʀnMW/5S_:^~~qҔ ˗[]j4[z,uuD?y`=k8|4Y9mc{/.GT K+3dgKW2%.S!fϵ( F)zY];«[u< !rdK^[Hwx=7G3K]Z// z.W ~YzU G^Ƒ}ɕ5ڥ\Cyck 0 }bF, YIfyȏ{~pPz-?y9uSGr1\ݯ 'w:X-e?B;,ɗV+Λ;/Rץ9߲ՆY05oӚ׿g%%ƫ5.Bo)[Ž!M5W, kwȒ(M9Ay߳UɁ1:b8Kq˭_aUTp̛k<2h)Rg|]c> ߗ{Y7l4uV7+4es)oy-`LiEjF_bMc^ Bޗ)F&ۜQs1ȒAYtʪo^B ha7[K.|q塽kѻAɕ}kP62)N}?@oYJHs^^;) EJ=˔ĸ t6 k,?Y~fm_sϥ(Mk׿9*3հ:^ٿ=c~Àg?U1^΀ NǟX -v͊t =K\O~\'O{.!xiPע4ْQFfUoxЯV(MTtqM.nշm,[<>~hKmW|\4MKƥD-c6-/!S y:8G!WGL.^uK?)GOWrﰙRTf՜X'˟krl?f9]տQhϥ7J#gרh3<}+MܢsV򃏽r{}wS`#8>M=#2Jr#-|5Ge>e6,Z(6MQzo]{5JP{s?~Cf⧁oJrk>.(#.+^KJ('~>y=^ŜtkTw2 ? o4_ֱ~ʊxbNܬBF<>4myC?4+~}#Bm4v[/07o\̇8>+|bz6e^y=6XC\?Es3?'kߋL7˯4,lgҧikߖ‹ wXt߱3S|o4^q_/x/'Jr-#n˿0kzt4\h.)Kwa9csYe3q<8<]z-Na Q }\~=H-~x en7bcm*_ ̓y9ɲB@A^, >]8~Ys!GVė/f~<[ʳ6fk9vʝs^ sʨF|b7 ~܏b\)~t/|i,֓Q!$Sab=$K>πrx{uay`61$/5{aFOE~4uj*3(<./0(O )ʻdx8/-%Ώ8n➽.;x&K OTr~㱡5ynB_N= 3޽^ZK5J 4q^G\n1N~=#L1T`(]/AZ_xduE*uʋ<^@W˅qӷ??'tǙxf_Ln7|{l.0߬gjzo pZ(MOwU]9BFʳ_g 6 ֌x߆Ռ[~efÉaaz*.J=~iK惬yK۾\?V NY/+ǎؒ_>/M~܌f˃UX?}y}bn"}z}2χݯ!+@I:~6xGĶ-o2b(T7^IJ^Z~/8T |Ao$klC#'_?oYH.gZDFFtYytT^"82V2b{ClD|,p gYv8m>/ςJ[<֏=q\܆80ؾϙ~~7Y?o== k zU|17.5o:a}+1z?\yߊ~9'O^|˼ -N%Pd.e]ۧ|縝?bVF 2`g\#ۏɒYc?oÏ^6c\6|Y9`ݳ_;X _u*e+5ϲz>(˾k<^g0zdk^das8MV9x y/vϞ.hm[ŔßI$^7Eh\J.1?,0#h( Q3b=:59Hb_\L<{.Ѓ16'Շx|9YL8]6>#qߊr>gӇ,xXGk)=^~Dq q<z{o6Wn<Ɓ~Pve>F%'w.*>B?J0p.o%aĕqU}(+(=Fc?j/d잾튔s[Y\>H>;@bnk!R8˯ư"aJ>mc_A<|[ty ~|؏^'} v:xȣZmp+Zyd(7( ] 栟W[$6|YFǟro4W~Vi?cOKg?x. 9蜘sܱj.bx 8KӀ,[.f>ie/0XhqOcV.=[9,wVqs؇.ykYYshϕ9>լb|)kq߯#Tw]Cٳȣdr<=+} s4<oۏ^61ʀYlpz}M T8 B\aSf a8_)^4Y|yp|zb헾z{btq;B~Sz"J ~LXEa\]j'n˃g.]?aK(+r-0,@G-Ǵ~vǗܯ_Cw"@^PrQ!п cCN:YwL/dagqi<|,ޗe_eCsS8|ٜQ^5]F^e?RcyufY߬oY˗Yˈg|ifʮW_կEJ5L̹=_0A^m ʨd_Y`T"Yk:eս-ˢoՕ0#o,?bC+?qxk,kTv]|>Qڸ=-/ƭҠl/99uh49Kx91>`?Ҍ :c9ߖe=vo²HoK _B8 zz{~_>Wjmeܢ(k)^B5zoIW[rW2`g\u樓pȢErx$f?Cnߘjɀ}//ⵠ mD'\4Ww: s#*hk*Q<+?~q6[1#?tx U>u!Fm4-1/,SK%JXτ.פʮ حZB_jbP{Xʃ+nqr=K}xsAp}i'Q eIϪ~?mo[U<Rx?tIOBvh\ho>m\4I%w v/S}^¿ǚ>pitked [`E{{cH_d`y_K?wt)ϑ<O}ɯ44}b.?VAz(<]|z.Y_G㔞K{^}_#s{/Ͽ,Ϗ%"1lȫlxYnK"~4{,m.OKm5fV1^c{mɀi}pFr˟{lӊ+6,oo3]b%*Ǐﵨ ~QB_zPU枽%*Ϗើ i=}/rJ~lDOߣîiosg rcx˶8Q[螽k7qOV<^ P\y|y]vFyQx Bm+gsZF1bTN7듗']1kTff9F1'mǸ_ʀ# <y=>]'5,~j#}ÔE]b\f7W}_Fy=,5c4=-||VY!Y}[O{!d`Lג+3q,ѹ(yȃ-Y|Շ7\22 ͫ[ =|JF9,F6m}Žc߻6Ex?w6χ\}dPq0 e?gD0ƪgISVq4jJFyoގVx͚Ŵ#nc\?q1 j<睫0ײjqҴ+g絿oQymUfM/[Z216̢c\טּ8#Y2(OF4*Qn#~zl2U\2E>,^=cY޹d_}FB.p-eAzTg?z]Yt+f Oa,j$Od׹dIV}jFdG-# bGV8Y|lCoXJsTe6h|^X;l%.%.] kg6IޯjMǟ&ߖo ]z{ms};y{{BFf"+.(=6em Yv~- >C._+SXG9pNQ J 0*LC&‡}-J_Ggg.2LZ^W{$q ^! 2C9:32;B~[(]RWTR&a-V1}םk=1K_ʏ)?,lx4GoY-Ȁzkj/}Ō,D{]1?nۺoCVzbw\cZqݲuP_rʇfɖmtZ2`;<th?F2#-&ײSɀVWo[|MG'ݞ??oDY4_U,4E,W~Fo;ceB-jXGeFV1(~qo+RaEQ8kԠc]r0 6UqiaF;W|ث,#`#eJ]b y]v嗣wPloY.+|.q8>v\/ {1o}/~ ۧþl)E=>K6k-l:{=Dų<7) {^Ay0{$h(ݦq_1syXYRɁՆYee6+Th6>yedy;쵕,(ט&ǽ=n(moL<ʨdi*lѳӳ ꚕ/'F1]hsw#XqXkTvΣCFQ]|,KFdc.^㫸Y}d1 sd+]V讱Y4ȒK|yh>|;8Wv#6_A#Y|/E,|BVw^sOS\q*sɌFpe\߼90s6˯^.ym47yiqZoD\2Qh<̷o {7##a~?*7?5dʒ[牫yќ~ 8[aoP! m^Ō%v <^V̀WjxRviZr`:4>m=_U) (kDOs^xx|{8]qicE?w礫Fv,˼/_zLfDyq+ѻFiyʼ?S˖xyR65:Q̛1FWh6O(ˢZ35=_Wy"ۘ~(g(Ge`?Q-}=e{fk5~؟B<#׸X/+2d]$Ns0ُ sN])+\xǻ1~~]4ܨ*84v+#ͽޟ6]椛;}hsk;>+ ֱ9@U)ȟepnyvxw'] ulGެQx >km^iK9=^snI/Ԩn䝋b'~Pso6mӼq}(M1r",1^w{ovc uϾ^sͥog]ߖQn|ևOWt[\?!jiW|6D+;~:Ίgxܠ?$~ o1\HKۢ57Wb}+y xoR||mW~ ^mNXZe<ƿ JFDpxqjzR\/?kR=},u+M1J0f5 icAUF (J+Y|˧F離r z筘Yo%# .nYQq[\tR>ʔ_>Ϫc&~[\;7~!^ʋ(M^z  dĕs+'>qëFb?8-`WrKl,Y78pdWY}=\!![\Fb|a|j}>sf,-p"X/|󕨬ؖRrEWf,3<y{,W/ʏC]޷=5 })P>Xr x\ЀܪL}FmxGY֌wi??~UuiW\gr.V-J<3~B# Ns|_o|k) 7Q\Qq}Ap{D+d-m.;ﳕ蹖'-;/Oyſ}58_, O$Y:?9UNx#*/~ocq9|_h;Y|,gmQU5ֈcȓbb]L +y8ƼU<d y\b+G.ϟrwx)/o`>(]ydg/[ʯ#ؗ_f_W3)+)`oûoS++pwV|ޜ6rTV||1~Vr8)mc}Ev>GU {@X'G.vsRG2KbL!%:ys^7%-+˛y~-*g|qqsW3y^%uX'<~&Y{e/sϏeGrBv#^I_jB:,)E{?F6*3|q9fo/ƿNyGXž%w.|9>4EyQ7G|>)Jۈbnʀq=xYZ}X6zOwB)Gp gӘ֧|Yez^ⶍy>Oj{WhX\/1,)=nxzfөҠL_/O7[7y˚|~OP.o>ո~Z4ʍry/:8B<T|% /[2r-|پ}Ys<@|q_Ixz}/l*kcտ|ϱ\kVegíDp/Bq[@(K?c sxys?D88{Te {^dikI5qCh4_oYmE?w#߱77>ek-jPV1MEKYx'Qy(os5ye(ϱf4"bemǞES<ϣqDeX_X{&(Fed{>'={8}; f h(Ķ>=1Fc2ʜ NC>(/f_g3!/Mutcq=K7jx|o#gyekW7E)#M9^ɀu//a@˟q6 eކ|&P(Junsd{OA;>3ϊKJBox@_ۦo 7'&e͛jkvq>ous/ʀqCcRٸb^rrv+}sP_q$\ɍ._ˍXo~X^Q)Fyb^_pf~a,tuCfq&˦ b˳Me'!Ju #oyuoy֥$ UaA<=+Qߒc| Lqa/hP['d}fX7z}Bgycދ+Mj9a>~rBdM<)}pMoxN{_K(VK?cpޣQA؋0|?BB]4{oɕ%`T(mho]=Qh3ė|{ȥ|ރ d|齍/oLt,cY2) Ċ˛ei4>o'3޳BV d4o/xx\.Eq_rDpoʪEy=m 򠞠iɕޞjrUJcJi1Yʎ퉻9־^HW]?l/4~]%kl ϛ>:zZ> bnxNh'ǶP~5\Q̀y,#=Oġkiq=Ï!^kn}F?9M>mm yF8>hϋ6 5zyS ixol}N!}+e|o1nymUfAiǦ{,֩G?gb\><p/"tViM)B_D1m~6;.O+K)1R1#tz{&@Qŕml^:z;eqCXo>~gyB/n?^M>)Ŕ U]_8k.BG/Vmd"0|ŁX:i%9%;n|f1U)4kp^J܇9ĩYs"bNCHSc}+k};AӥE./Ӹ!WO=.}Ae+y6Mk<`n Px`d0ƌspC):, 融"a>iVYxBhF2vMz]<㰙4^9l尗˳Nrg/q8`{\fq!/[gKZmH^0n(Ð;aѺﵺoo;y!G,Jm3wÓwG3KB{oPߥ,!_4C` Η, .i{/ZE-Y= /s <?O]65->U79/yC;K7(3(ҿEAA.,wy2しI{?PW XsNA +Pmz)qx~4+.9);-n)g9\4pp:l埰tNZy',3z9GI?>bq#G :wI急gqHmeBlwi$~ѤBgp:f}ygλ r䴕gA|W9jyNJN}Ȟ[cVݾ ӏYYRW)Jde3z ۈ᜕s~R58]ېG1yR׭{]}AA+{S'XOz Vn=߳Cv<(=V]Vn 4',U;h4_4]VE!'rf}G a;dpX#txpgOnQSU>h"^4(g a  q[S!@} Yhsڞo8wW5<Y6E|`O8ا(v`Jݡ1k')/gXI dԋƔd#G?~ :~|XRgOSXN˿}MAED3o 0a,A2zK|rCgx-h2(pQ?yuk};Y,IaL}9nwqBE }eÈ߾pD"u +O#~/q#B[G;ECJV"^6xc 3ƇoR'W|)-3^߱4/R$x۫>hzK't {dg, E}}/yw)쳄-qõ kչٵn rdpm0} g,)((_/S 96Yzíbu;Ia/f 6(i FNK'̭f~w);`t?`2١=t{Mqǵ7l_~~)JuJEu 7|^y걜v77ogK׬mj.K. vE܃msk(\Y9Xަ ;'ǀ-Fa}ɯbmC .awqmM #͆uG?eu 7]/Js)Dօ%Ÿ0i6z[&}KoG]^_g? QzMWnoGm ptOP1E<_e}Nd1<x{)en4_n?gY].PPX?Mştvz^ &Q> dlX;G{ OdMJ)kcp1.eo琉(0Cv5W,y{Bo)VK~5>z\[Vnxz֛%,~ K)ؗa`|&-y[ˆ/p`:Ai{=KfkC~Bz+T 9d^#3lw$H}s&ĭsq,6{j_ nMWwRmȿ:a5I&35EQK3b:~;5ڟ~',K_/ _Z[ ^)N~8AZxHvؾ/c؄e,1X- s#Z15+npۣ4B=FS\ . =2\,9 =h }DA߅:Eڷj4j߯z/4gYe mgu 5k-K+7~:I 3d)  \~.)t)Z[06\MAQ0OpmmwȾ=Jaw`m@v^" ^ ju-=tnl+(3ѧ)r?Ks+<.bub\y–ey[-ëʂ_Xfx\7)6]=`4R͵ŐkbX>؇aI 3|ay-vaV/}"%|!d>E`zR9 f nG(蝐5)&xaMAG^ S!CZ oun[;Q_lV>-./l(؜)ؼ{\Y W\(R/!B]?tK i@A Z)ke<f:(+){y^*} t{ܥ]Dal)z)[7 y=D⠟z? ?/Mu>B3|1<ߧw\}W޷ ;z/vaj7o[ÛJ>G>b_bx Z,\E `fm. MS8(,!;l?ÖG^3) {y_3[Ƭ " _1KG%uB@=EA|!$NŸQ5-o+clge k3||H6W׌V}BB^<}Ft9)R%3ZaytAVW?/d·(BAo3[@ p􃍨B_Ha7,lbR G((H1oQ*} :i]0GNi?t3q ޢ1tH#[o^R:\4PI`lBI"E¾x I %K J&. uoY[(@S·d̾fS/~\n +o>U vme /P\>:V^7ha)^vk41?ڊ^_/7 |7۳|q^]z۷.5sXczҮ48lw^)V"KHXkq/Y}Dkqw=}gAQ|XIFE=/}~ƾW) V)SHzKO}OX3+)˅>(Kooi7(c6Ey+;wa1|ko ]P>#-Z묵|gJJaE2^ޢSs+8rbc=m \|E~wv(}Gdt?Cqkh;}˻,|ji}k(̥)ec4vL(2IߖExM >sO[ G(F [Pr$w1:BN`8Ri3˼ UY_GocRa#_w ƻn 1 /u>Na'4AA/bwgXBly :*7hdIA)ؗ^MJO)ÒO|[#p] :I8>|‡KaAܓ= ")N) 5ée qW#}Rxy]J뙇'¹&eR0.(>c1;bK+Laދz')ݏ{ `s ߣ0?x1([p¹<_7~@\9␵dYQyCgݥ?=c >mH_نo{=%JqX+oR} ])Ǻfi.@/ 2>OXӅy)gZv%XW|/b.ΏbsAaڥn|~۫A!J+c𽌥2wz1O[>nmb75Kߦڠ_){UXlX39 k+(e74RX;ط}]XCQSk- ~->TCɜgBr87x}6E_<H~=6}d>3X9MuXK,?WQڡId^ cay6PcW2<'0FO{y 杋( Nط r: ow &5 o1(3-\|i')WNQz*E{([,߫kdCg~ K3RJ8FaywB'88TGҮ}1_ L |zp^jo8}=V%GA=D2b/,0ZI[x ]Z&)MZݡC:AJ c;~ 1s?cFCξ-mڞ#zMوIz؎aSnGuKp6NS8}vQ8&@{(D[t2Phz`_`c¾WľI{#CFj8QX߱W,xpXLP>=y{bN?c {W_yASߡ!KҶ"E9p¾|YP,_YZui0O:Ba}f?{l1ߗ::}(yc?%lOZP  2c W'np&a8`m{scb?Ϸ c}uh>d0G,X谝|,hC)MNYH_>wu M곘o7-ʾbiۨ_я)>Ba.?oh_p&յL P5xл0x ip>+lB ]+WC_]vsW$#}_5 z1gqȷw~rG(=/,RW2{ M1A:х=,e-O3t |a ̧7 "c^ 96h+RX\HAO^@. {zPt"=#h"vPщC?v 붋E}+\}`{0wP]>8}~I#q' +8t!d.v1OR8Cc0o[^ +Ba7X#ElqAEA~ ?SFᜄ -l w_~g- SἀC΄dyD >kL+"q`6T[_6|^`23aoĹ_p&Exb;n2C'ڈǎP8030J6OP<vkWمOf.vΦޤ/Q8g}ȷSN>p1 ~(|S)R8Ylz3^p^ ‡;ƃ(R[cVlBЧvR8xwm`3>{9jmk=H/VGW-o:\>p.v:JLȜ(=npGg8}KΨ~pdj |qN9xw¹h)ooux:oogx0jy+/FW(Ȼo8Qxȵ q g  ]JߗsP'88?RrH-\R8Sd+dL,o'{, >hcIS58LY"pߡ8C;HNߣp&K-+c3iqO& }sOm7Q/} %W wx~nr%?·a} s>0&I5Z1 }rG`,p/꫆7A-W7([(%p*VI5dwX=w[B.}@7~4\KSa4|=]8ktX_% ~\ #%h IA$GlƒS{Ob"G:ڬ\ǹw Sd(2"4q&?jthpxy:޵8OU(B %lne Eu2EK>;/},=ZO+ig\A b%|yogIAaq=5k׋) IoP͛u[Ea _Dl^XQX}} >GH:g?J nM ~oRrqc?JƟ+~_"wBo>Bamn~|rFfX7!`7`䃽Gxx9g?/3[\ڋk𥳐gT5}BK,Z[ es%ѝFs|)^(?| 3vSjyW,ynB^؞% b>1( .0&ݢ0&n w kvX8|_xc15Oh9(s:E֙[_sqЃ . yX"߿AWMD.zb/.a$3.'_vi Q[`u?XQ /CO48s¾^K)}N~Jo JlcL3i)پDAgFn (̥!wPvQ8[XҾp 9{^oW~V>;V v='X{ y'Wc77Ę`7|k(ػ`{b (ؑRn kn*{)aoA;b |>M,[؍_`C{|Jsxa`;oOxپm0>L:DlXMIߗ_9dt;Dl+c5ZJ=\{{oSa~З-#$=Fx'/[}JOKLQF^#5 0/ ?a=0\6QeZ-N"6P;OA5CpN֜J;yg jmspI撕}8%nS[SC@i?PFSQ>D%u|IZ ('KD z:ε!iul9J'vFGR8I- g/ .S2Q8`2Q8sHEoPqj|hn"|,ſj-DݥN]1 DA (KE"}I B NᜩV.SY3/;XFpa9 :h /_}_h!ŪX ?ܦS;s"yu|-@S7(*Çϟ3%DV`Zdi ۘa1d!`W 7H5h3 r_ti[ xs0_7OQ8K 9[J@x#ǜB~ c&nos +lQ c~+eP+/>IAG)ZW>puD{7`-Q{g k5|I]etx{4] [_ >@{辜O=XuJ =?:`=_v$hc piSU w゙X?:\ji;Cɳ}u.s`i^jv>ϛ G> VqDc=k~ >(aDK/?Qh4Ia ~6\~|^'dmvi3\h[c Ͷ!lE! Rzex.S؋ObOo*peovG`7^ʀ-Q K/6QE/#*#2sG6Q87?/^+r뗍.X3Aa/"wZQ sBي,M|&6R1w:G9Da{Ⱦ]wuLߡz5 6 Xc>ٚs[Fǚ=(Gt e[ʻm sOGs;oP~{(K`1lK8kmʀ~}İZ`c.c[]v&5IaZA {qv_i sE([h3l)쩖2.},֩.8g >g}cKs7pqb̰y)+A^pR%>g){!0J|JI:`POqe/sPp{n{0 D(Y|p}lY~ {Ny2㓔֛XQBXr¹e'(u8x!}▕Qul:Xis )KuiOG=m_>%>b7撐,%|@a[hK\~v`a bs` r_pN:YWOK [H.KaTkRG^! |!o_|(&3bW'7zFh[4@Sf(εW(@C]D?sa){>$=Ġ't 8anRs]bqk# gY m;rY2>|)H6! |:h+i`_ksOPN4eN)vt< b)̭' f>j m @_AKa\nAƛ k{^p^;΄q~5gy?gk?CAS6? Ow .)Ltߦoc% ra/k?Qa췫Yk['w(#]:'B~5nA- gK_6eߤlܵ0a0)Ellw71g |'^vuRqoRLDoKm~@['la_γ4aeC)=-+]}|ٕ$ͧclHȥE>ء`i6Zq)S*s]C/Fq~<Ļ=lq> i[`+sV.|dSz< 8#Wm3XЫ|Gk.n¸8k`g ~=.Æ7ꊳL`^.rwP{QϋyѨ=Sh,w=@9v-~VQ໪+g#y oH?_BaCo +2nGo p1<W _L 6GI{p 8R5OKUƥ&U4 0?vVWX/9rmIQȈ6 rp튳h ?JfQ7]yG3n,JFx=O{Bmmu<은dO QQkW"-^| /0Fܠtc(֌Й\w!.tke|Y:k" va۩G6<~]<5QB>-w>?ġVv'Cc'\5Ηܽ F7d6N'S2.U(}vWhQޱ }-1^qkK=T']Z c>tۖrHtSG^~H/}=LAfA-p{:o@J?ׯP&\SW2},zȵ AtBۿKi~o5c̖4S9MYJJZϊ`5) ANceFUτmqe}`TťnJM R.uҺp͕r^OcX1|k3c"+%{D_\+M:-NlXk($o5׺vjiPgW^kߟ'a:;l ]|8 >c|jaXJa>"m4;-{9U}kKqVBˆ;'-.{ۡ/|&t]xX{' bC:u g~Q >c2Z,$kF;~fr:[ƃ;G)VIx+?!0>)CG ߤ? {-Q8' d}"{(σ6;-D5r{_am 1G砯aZ Ln"SX9i =>B鹟u.K SgX}Miq+liN3Ap5׶(R]gX{߉ޅFt{zp~m{~}t_f`ocJEC`/_(=ˋ5 Uk O}";W1׆hNY]A1 XW`maHy8m#Hwa= ][eзް]V34% wwA!f4=DamJ^8ǠjtJgp..oY)E+_8 c~`m5h)bm+uku+if ;>|-(;_rM w0Baz3(`||(93 q dMK=Q  ܳ"uG( ,87~8"kEv}SسI cdži ޥOlTƘoC.\tu8[@^ z,`")=I~GRW)zz\{¼V {@3V]RΏ(p>E-mi#2PrMEyܕ{w$_.؇*8'HJ?]y) Tp1 #Þ}]v> ^Jч3 P/8le. z({¹v~l(s:p:E# ~g(r(z!\i IAp>>f}w w=G 9vpo/G5x8ӟ|p!K#pΩ꼏8hO et8CqD>R87g%~L3TpV!Ŝ@Ebk{!^}=C0f Q~ A עceK 88|s񋵯w)pި% 'l[3ElG>+-JU}{ӂsqoQЅ{`a=ߠc`aמ;`y\ׅ7RNm>`~>B$|py[s׭Θ'R+~qǵ%.3.ߴz+ Qn |kJQ h|zt} ey8/æ6h9 g,ۊ5 )& +5*[uɏKDo-#|uhv0E,ȗV(?H8'{(}0^NدF)Y06\Q s60uV'AO#mhOa9nCF?[X8g%Sؗ-=je_r&w)Jw1ߠp> -Agߢp0;~nPe\}@hVq {-+Qt# t(7(m)zƵ{*9X% shs4d\7Ja/(~r{¹0w?gq+{7ތO(⾃Mt6%.6Cot-ɯص3@]]K-[>ɿl(ܣӕ˞% g6 =>k>g^4/R8Ez+ud.K`ui7]_p_ݎq2K;:D(ɾ6>ז83R >+C~؀R8ssDF˜C7CV)a셮9aqk8s zEi)6TX |~æa_)}&7@_`Hcv)~W-d=`_؄$1_'i0XXA$2 'mwtœo8yߣ0o꼓fCBǔ_η]IX?6"8C z~o[Y ~u31 0=#M$^"la{)M_-Q/9PkMw- QkjƘJFy9b_dăk2f/v0ʓg.oեvMԷ=(}X >k"ͶQHY }Ȩ |j# ?|p N%?tu3k+u~sIV_J`^8*&mFYCƷ$)̭17:?>G ߦO5 0K>my)@a癶_fB.{`rBCC6(bwx0ɷO)(}e`J(PYe?0}}]F(J^Rޤo:Ȅ.ޥnRKSs|)BkKa]7x7)[`]EXtC.L[ZB'Y*+vȧ)J}R3hƭ&wXhkK=A#ؒ&%e|/`}O3@4_`w_da,_y쾗(Q8t( }\: ƾc wy2ذK_-ỵ̄VS2wj3<6ڳIdƢ賠kyY |kkW @Gcҽniq)}R';V|F)@_3دQЉ`σ.*gX]“ Cy,}^Ɯ)+>eap&}qP ZkXrx,isΦ^,v4.Fy' _-Kp/)f Q'\JapN3 γ 7 (S8Jt`7i~)}v asc5Wg.Oѕ~>Ms)?G⋻ٕ4R^/Xa3OB_o4V&cVf̥o= ;V> #tn F5cmnGȷe͍H VP𡅞}NGg%i"`o{JWS8磭p]9j i+Wt-a|Tn}䲌XE=MQ\tRb_ T\Q ``;8oQ8hmG찥}@G<-pd;dc.O;/<^g\ zclZHfq8c}Vw)/ CA\] g-j`t7-偼Ҿe{~icz0&U-'%WƄ~{;ԧk_ۂic}+G2'N^b,ksf!?2<Sʓu¦ > jOYGE^E"*ORXoRPlv0%^dZkl Y awPn87/blҶ']9B?Y낞wO&(C3ֶk2L~K ?o]ale z7MVAV?(|o_/qw%\zw ?4 JS8SxppESpraAR- 'KpLRxϗ =PSs%)Kn )Ņ6Nw\(3*cVM--ƦR컅w 5NQ+|O3sZFp!e{/qM|/1\ʔb8&\!SMaY0Nr۵S/az5NvsT 8eֳ_zm,q9s!s[hb+q*C:骊9yۭB 8g>)n\\W w{~Q빰p W9r{4cqT;TΩz)n <4~]Rbn.SyNF8ݸenaL^f _x[Q^PS̩ r ݯpLLZJ\-NS4>KVop.2*MOr-{2*+l+qIK.'UxssIe.S{!HFWoq)rNw8߀~fJ.X tr/htu ݌J J+qOq0"S6+]UxCrlS==~?˥,ϸ3e _簏h3gؗnrqz߻_Vs1CZn._[`64Vz՘݌WrCXb9׹_H᷹u)\UL82c^-nǹ0 ?`N)2/"ӧ\T(eiJ*o9tqǂRb .fC 禮q"-0W\ղo# ocզX̵{k&؜gLϯ0ߜPv|]:)ZUɹDϻuVո ei!22&Etk4709aN$H-16Q2Ufs[7}<󈎂w5 @f3g9@"MP^&s_RqZe0}~vp{1\{,ƴ+͊,ſΐzw4|خ%}A" 3ؾ+0os}zY\ӑjiǥeҡWtXfFGK&ӹ8,Esj,~- o5Zm'URd &5Wn^&ܲ״}d9~NpkLqsUN_Z\`\AimCd ӾV_~sQW0"*KMM1fMKN03\ 6tpFSJeLGTי~唭ߧWb^'x˔Kd%2̰9N1z^~jS TFp>/Q\hˢ˟gӪnWi˻m6%fX_%̏.s_/3vu0,Ѵ/bNU{EGSJC[0zNqkzvk.ugksC=ƝGy.Ѥ9xTY?p)3EChUXԴcZq%v7Tf42W-C%:`>~ɵ­!>253^p9.Eƽx[As2YTXR9~.r "S2O C1J6->RMU(jx;ѹ޴b'e qikpEB}Ĵ}K_.f,V}!_zP8za"[s][t>18l\T^SWAT2ఐ9soUuD_б8iU~Xzѧcrj.q̋UӑZy|5}(Ն'6&{QR῏q{pKpz*Kstv#cYZFMkT9VꯃMK,Y)?^bxo,ҲrhΘq?yN2e3e} w)sE3^\%q|u+^Ej%:aUj9Ș> 2EEchLWMdҙe]:Qp%ԺnH8*nQSe3^=ei4ZH,/*Op늽!5"~Kr+WEc_f 9c^ҙӜciUpi7l' i>MsQvee*1vs [-Ӫ3 v2e:"')s[r2BrsANKG.蜩Ϣ,׸4/{I[8zMG#Hŋ:WԺqE?,%ۢZXUO~v3%5kok6ίZ._SpyRHb VcܬV:j>h2W<4XRDR8[gr?RC}\ ծt^pNmUYsAyLM枣J ԾT5r̍?fL!΀dE.0'>-|v]O2f~Rfk}NZ_Zتj;b|[w,y\Mwt޸0:ѧWDK*NͶD_ڢs2RXYX'0q/a?dn|uXW3Op.sUߓ >Òݬ#S3ujz׮5,rfSa-4+xb[yj,ilEekQI5*)mE>ϭN_˚v`/۹ kf /rXi60dzıϿ_q zy^%\q%n3M'7sLܫϩv9ޫ𸾟e%s:93[j'/b(|8ysty'繜m*k_fjZl:lTmJ6c>g1CY²BӣZ0^5Ndn'IxЪ:|?c:?-eGY+N!PVK3?yx3?RMxquGy?ֵ\B}\K}9j)cVS˘2s{Ф=G]J"com7s۪-z:YQQd/R)WLU Eg=% Em̕y'e+a z.7r??Ͽ>o6V3VNsaՇTV y4>m%4x(MVXe5OZڻYqⱅ)s͗1;u@GYOצ<. L3 7~Ld,ީk";D[\e.MQ=8W@eC=1u+s,+s`p{g-"SzbyL,˵/5vլ+[kS3mO揄G"eVpN%昍kmj;>|XkrB9.R;TomQ{%`ʏ&),ӹ{PרGNp-s}.IɊN˺|A.9ZIՕdOGSj;RuA>.SV j g~HgWK94fe.Ct(C;ֿK[J&[7)  6묠uHz~QGR(/QwTd:UuTZR+oB6AVf~Vݪl+#ʱ#\Vզ^U۴.#ZUjc ʵiNMBƇj۹t1eyv _!cݣЗ ~'K9QηKeηG[a*c&2jQ"8n7<__t\Rfl☝\7d/!{f[e~-ۢzhgkzTjzTvT6}PQ[ǸzU5z=bjL+r]^su1b90N̼ve:/ʱOrq-etJ Qg\?&4Td\Zl6wE7}V9LD'L㪪巇k*s}-_bᘣ6U弓F7+_\nn]RpN~ )sgTצ|ӄ"mhN;T2癏C3t66ݑ#ClOmY3r(Yzr`.u}"B޿ɱtG>[н37/N~]O+:~̲Qgυ~ӄ"tmC3idSd!m?|hӲIgDV;_ka߾%^S 6:E7 :#^w/6ڎkMI&MLxNHKt^zfK‹Cg`T!?_FSXoU2vSvl_eR_P"}Ǚى/ChR>{RJFg?-I-]5COnI!Vχ L8)B'4yŋϞ_ uBHz}!Ĩ"4CT mT0ͳ1N?W+$1Ag =AyK+{h9U蔡ԧ MP@gN&L+_6JoZ v}!WK|Cv?o5:[ Ypڇ5)}'P߽N^T Rmz2ˀ'&fkҙӄ~B' ?NB ']|]B[hşRF76c'( tsu"[oV{HK~7 nE?SOƾy?,ߊv  {wtO/wUW c_4],IA?G}!&^{#7r]+B{%>}=jГ|j~mC?D}z:zlz~z֬z&m{ %!u~)Sm섿MEgO3?ms;vd c/׺!uI0;xz8fO]I}_.j~'mB P~z7CIlIw` C]2;fNOw y]CMCϗ*~2Qڿxz-z.^}O_QҡےWK3w&|_%d1tǁ6<'B.G~&IQNɦ 9ٳdg"Ch۽Ft!:7ݳx^xg7:$tI"^xM9 ;8g,%縄%0Xi&u~ʙ=|dq>~ a42ֵc{k>W[s]owC?EWcAv -75Z/Wmnhv%S | $ '? \3OT +[;{GgW7 ąE9,oXê (sػa v0pѰa'3/_&|cO?~!QXĉ"%Kя~MA7RVL62[d\y#G,Y:rdȺ#?9>rb";rO#"OEy.Jțw"F>#]9ʑ7Gr(B9^;#r˙(gbt93̒3*gs,q9[$QEJ6*}TQ E*JTZQuF9ݨQG}5)ꛨ9Q[~Ε ĥ+Z\q]=}P2žӭO7?t OW=ܧ=ԧS~_>tqO?逧vijFO_}Z1jܙ?Nǝ;w"xܱq]:uk,Iq h\qE%KOv?'#|׷>r{owyoCnvݮ}oWr;E|oQo';4"ϥ:¹;\Ĺ$gg켳ϾuFg}lu:[g˝-{6tgӞ<̣3<8{g37\?s_g|ܙg9tfl=3?33ߜs39N<N?=cOqz鑧Gtz鮧۝wr˞p:IN'>uTSN9ާbO:TS]Osb֡{(ϡTzP!]y0q v(uā|rH 4^u_/s߼L}?O~_zCzcoQaaҰu }hرÎ'Ov"T )S Ob?Ά ;v!bإaW v#~B ˧DÓG' O\0k.l```t0O0o0_0@`PpHhXxD0&X2X*X:X&rl\|B```*jZׂuu |=FaQq```````[6] v v  cXipppH}28,ApxGG? ~<8&Eplp\p|pBpbU_Y]rpR7)oӢSg+v%838+8;8'878/8?}pApaۂۃ?w -;ǣ=?{GGǂǃ''//// ^ ^ ^ av?{Oca᱉b&M,cǦ}!6elԱib_})6mlb3f%6kl9bsF'6olb -[$hl%bcbKƖ-[&زbV}%b,;{smKU\V_4Lo8w*~~V<5_uT BY-R+;jڢS;@YqDUiuV UՇꊺFX~V;UTvYUqj6wρȄ]a ń=u ,sB1|,P},b|/'T`TkNa*^ǰIuN5݄ |V-A= Xބ ,qBx0|L*eR|@k}\PZI,>nP}_>#^4 wf qX!$TX/$TXф%(KPa2(YBTU*o'T 'DpY*^>>.я>DO*LV |.HxSVJ0Td#_Ri}~GEfGH09R|y*L#'T].Na|,PaY:X9>fB=nBȦ}i"?o#G%T8#i>“81“8-y]B?}~$T8"&T|"PvD8"'T|D.I0 ࣬E`DS?܎ȝ O㞄 Oい 㑄 㱄{Ʉ yq*g τ \BRBPaM䕄 {Մ r-B^L\N~_(nB|yP2!P+C>-#9gQFrTy /cd)L(ng(Pe|^ 7;9J%Tx9˫ >X1Uaǿ;}ϔchB}9>P}$]3QBÜI*%s nNsF&T9bBӜ*ܾ̙!͜Y*dΜ*wy*>Y0»P},P=|s6yO[*#+g[#}{)/بx$efiG2Q{S%TLDץM}>cdJ('+JGGJ؋QE*Q<Dtm?cWODtPϩP쬨 HhOS#U"G4}; F}P/jRB%r/&cԜJħ- ߣ~ND /Kghf$JlFh<{VIyY>Ky%Tb=űob{sbGK"WhR>L"hPLNжP $-Fb𼘬1b-v|->Z,..8⮍(K$$T=xɄqY Qr}8ū&׊WKqiU\EY}{$T8J_YQÄKqK s["/\J諄"xVlBEЄ̗p+&QBE ˘*Bb2$Toc;*Bb9_c &T[>N9)Pm|tssS/"/bH Accb6F1kbv^1Uc<DT!-sFф01<<97[zvH"0}N=UP&T4 m;TA? KMÒ =gԇ*~0 pHBuC*yᰄcW= zy('}/Nh;ay{}cgvCOy!݂4~x:CS<{=y~3aX>&0.vE, 81Nk^4~JX}>CSg<^Jo>IQo3Tw.*;T^. ZY8Pg7,MڨEu|EN K6̙ag۵E WJ"ᾖ$D?a$ 3I%q/IbD&½'FR#)e`&{s8<ǟy|^=;?o%Ir2ܳu ==S⼀ }){S/WJ{'SJx)}?S'Yj|S}=4iN>ny9/ڑ/zV/%<_SZ}'-=;N${-}gegp_7xfL]A ٞߙ;cY~5Yޒe=wvNYxtnNWQ)FyE\;~t- k4i̓j8yy\N^8y|A7~wᜟFs+4ʏO~92n=( 7Y`}ٱ Ușx\=[;(*b/PBO%yqA ܒ%a.Rt.Q*2SFeik[Y-˧WrJ9[y{oyTU08z{*ҫLTt_d*?W2h^}k*U竞^իΫ"U\W.UHU W3]5WzA95iRZ|5{54ͷ槎lEqfTWzK˺_יu\WR~=gfI}}ǩ>Oz^5 4Oz6[D|g|]Oyy)=4~ߐ72>ҵ!-Ҷ!O귡6FCiDF^odny7pw46;y؛4x4Oo_)oM&؇M&DMۄMBS}7wS_oM<75OMqnJfhFfk>\_w&oaWjoK3 Z髕 [|z}-Zlm ,gks[j̷z}ܼvvV;^g;v潝Q;׵C{_{{O{ޞNd:YG_#/;顓yd;Ӫtcgw }"3]ׅ~]׼w=zWܻ] ]y{ n2{,t]Ӳz~gIO)x/˿syo2AYŒuόIo{7~ۑ}:1}җ}^=kߙh:4@8t@dk u0?m:Я!tfatzP2\VΫvpg|(q懴! #9!?GhsGؽc\?1Ju>ߧZS;3g~]?~۱<_c8gy=h=knvtO s;G3='kg:͂5 c뚹v\>&{湏ϧ|ϗ ,uzX= H|\LŞ,e<,+dx=WvVvr*ڮj][޹fO4Yk.q|\z7Ǎ2q&ߜ2p@OD:A3qv{o=rȞ%z숯qQGcay̞:&e8N'hv'}ž9鼓xҙ'q8ES<>eXN4e4vΟ:c}pgeg֌Y޵{QK|t;/_U7p)7eݢm;oxwhpup{˟uw~}vC9zd?X?4xB'f2ν<= M_b5(LT}b-:JE S>&/(߾ {n vj{ ,y5;"r @XʒjW ,UC?ze ,~@XBj_Y~{)Kiwҽ\u`e/w3>S {LTcM>f-sLU;Y2(8Y`f~e;VuR=e}IᐵFjpVMuP0v끰xew}vVzUXvfwmpm思C/9\õ9]ӵ9]ӵ9'ʵ9](|-vQr].sUVz\^^MZ*}FgQ5TW5F9'd¯PUP9'<|ϛGy=߼ޟO*,h~~}䗅<ɯgm<(I QV<*)U>%W[>(\ z_Ag{E`Yx_j ((ߊXLnhdKUxC;L&\XJap/ER/27nJӠsiz9}Yz97iVW|^J^*^Jj6V1\ դqMS-kWv]R c.~:{ k=o\MYh*7-~[gampovxgѡM:tL\Q>:T2|,K]|vn[S=ˌ{|{{{aA$2C,zw92l,=Fc9e>罰O]|8_O22F'2Q<[.s!r Gӌ<[D5/\7 :@x!{ʊEXB x@x(g]JJm_f~ ܳDxY>ŹOˍ w^y:WHJ %+QeJWe*rPnUNѤz+k5U3K-Żp:uNHہe 6OC5W7)nMZs޶Ղ-ݒ-a*]kYk6n^驝\:m'uΰ; wqf8;8w5]vy7t7e3HxX=S>{-{]/j{<{e=s{fO|'SAA%mG7qhG>Ѹ6'hY,|j>5 ')?g63\?s?s.l~.sڌڌڌ{ cC1C1C/~},cqX>2;x{]e]ƹ_kqftgFǙqft{xa=xa>"|<'= xO{'= xO=Dig/#rWI|mM'{x2'}Ifksy>~~~p?~xz~~펃t?y籃Qݛ7ro:tȽ{!!{=p8da؇aa>a=,eQQQQQ:8p81p87q3y77qssjIR 9Ň2_K?/\U\U\U\5?W5s\3?xpxpxpxpxpypypq΃M_r+/?P~C<χx>,ȳ#GȾ{Gzvc;屝Nyls3>sTN)S9e*' s0' s0' s0QQeU_3Q4a `G;\s;\4E\4E\4-5mrwRf&mfrf&>C4Ѵ!Ѵu4iMljVզf)Mh&丙73#d6vosY͝՜n 9l!-B-܂-ق-䢅\gK_K_K_KZЊƭ܊ϭn+«^ogϷrOx z z h ZӠ5 ZۙiКmdLgՆ&mh҆&mh҆&myӖ7meL2Ֆ7myӖ7mжWOmM=m~8MvN@;3'ў^^A;z{wxu2ӑ~בViՑViQ;Ѫ;Ѫd's: 𰋼tUZu.B.CY^+SWj5]~.wavW7}uW7`v wmw|;HOsiwGz#=푞HOz8ġp^8¡c/^E/^{<=Gpxyyyy,H ͂4 ,;;H ͂4 /X/V_nIn޲ۛv-e7zӮ7zk߼o7o嫏=#/}䥏Gе]A9#}峯㾼۾ /쾰 /~Ovn?Ob?,Y?Y'cy֟gy֟gy֟gy֟g妿oO =`=`=@@+er @=x{ A0H 37 2C 34Ax{0ރ`=x{0ރ {C=!x{CP=x{(CP=aaaa{p2L(2L(ˇC2¼0/#2¼g>#dklg?#9>G}G#i2&#i2&#iq|c|4c(~(~(~(~(~<>O'f3 ~b?1 MMM<ڬhYԬ~jV?5OfSYf3L>>33=}>}}sxxcdbL121ch;ch;cz9bX=X=88s>s8989'p3;s3;s3;s@ t@ t&0 t:ND&08LD&0H/<>_K|I///;Ǔx<3>ʷ|ʏpy*ڱSة=u?Vvo|+;zV/e^e^ih9i8Nqpt8ݽa=<a<13h13ܷfp9!ߙwfš k&fL~4?ڕ?ڕ?ڕ?ٕ?DMMM7y7y7?g3 c;awy'wy'wy'>hh ]/wٗp݅.\w7~ߜݴ.mvŻvnػanػawؿ;~w{{{=+{if{if{iW^8{샳>>>^qp܇~8q?q܏~~`}`}y> <f >A}x9|ޙ;yg>3wfrg&wfrg%wVrg%wVrg%OC >v )*>Cj:ZRUT3[V3j[S8!%R+%R+STU9pLc*S T81uUBRS;;S;;5԰SÎ ;v$Hؑx;v$Hi`vi`vڦmڦm}i^׋5[W{ե@UUDVmUKfuP] $NP8!- H5U - @tϫjzjC::5Iof{_&j:gH蕁^A^2"/2+lf gSF=eSF=eSLVQdLyTk. Lf5p͌kf\3Kff5e53wN q\dS%YxY蚅Y蚅Y'gkVfmVfmVsՎJ׬f5p͆k6\ l8d!+6ar*r*rV![9e+s:?s:?sVNI4)96Jnd+ v(Q`G; v.ع`炝 v.ع`[.e?sٟ雛雛6ym?s?yǹh&N1Z<=y'ޓ{Iy&߼&ɧ|z˧|z˧|z˧|-----?-?. .z+f,`& o!9/$伐BSHv PB8ơ0q(Ca P8ơ0 P"8oo{P^(";Edߢ[T~oQP8ߢ[jJ=qt-fsP b8á䧘++8Ⰻ.8WCK.K.K.1c`;v 1c`]vI%a]vIإX)3Vʌ2cX)3VʌS):Si3Vڮ)=2VF[y+#oe䭌2(Ïe~̏L,/,/rYea]vYea]vYea]v9^rVNr9Y.'drrT^Qy9*/G<-Ӣ<ӹ<ӹ<+й+й+й+й+й+~+_ W`?_Tr~Q}@%lVJY|T2G%Q9ʧ+{e;*?_|սUWW*{U{U}UW}UWUYUY~TG~TW5~UW5~UW5_|:WTT~^nUj}5d,Ԑkkk® &우k®Qӽ&mkѶmkѶmkѶmkѶmkѶ<ג5y~ͽ5ھFhkϿ5ھFڴMڴM栶9mVjf6ڰ::÷: .캰® .캰® .캰g_ճWדz2QO&î>î>îx7 `7@zYo duY]_7l44 7ycoMZI7i&-ޤ<|Mmo|&6&2DpMhJhoS|Ң)-Ң)-Ң)-nfnf>nof棹hn>zkzk0l0[l-ۂ-ۂ-ے-ے-ے-iђ-iђ-iђ-i v+;ne[فVv`+3zLe2So[f-3zLe޲SZ8ơ5Z뫵]ڮl}^ж m迍k}mokFk}mA[:vo[{޶'6ofmCvxû9nw{|Ӟ\3ӸLt2:x_;^|:3g:ܑyё܉x^~::y_'u:{_g{Vgu:ۃ3oU].rEnM"]d,v.o︿ޡ;4zFwU]U]euaW{ޕw++ڑڑڑz߻nڍhލdvn櫛f(1뽻޻뽻vw_}멻az|zzM!7=욞vGO'z'zГ=ߓ=qI^e{^f{`/3ދeAjЬjFA=Vz{cX:7ֹgo~goް7k}|qnyyq#}]_ל5'}We_9+G}O~fg~g~zꯧzꯧzꯧzꯧzꯧzꯧz=xz z s ?s ?s ?@s7999< 2' m6nn?X^oo\#`3=L     P P =TC2TC7TCi7vh7vh7vh7vh7, sppppppp08 p p p}Hx0#n܍r7Œka>FG#{#||d>>2Gft$OGt$OGt$OGt)#H=tl?6a cǰ?6{(;hޣ{QG{ѴMѴMѴMzzO>5;h?gۛۇg|.2L~γ129F&xvc_c1k56chm//챰 {,챰 {,챰 {,q{8{q{<{<' fwٝ d{0^`/Ls&m"&m"&m"&mNى2;Qf'2~)_2~)_연/+|˯x/W_9_9_9_9Iv$'/Nr_8I'$ٟ{ }-C_2-_ײ-'_r|#'7 o`7{2ޓdؓaO=y0LN6)B)B))8La SpT08La*SqT0oqoq{{{YfVip9np9.aآ-ݢ-*+[ݧOmuڪ߭ݪ߭ݪ߭??omvswx<_x /<&B_x ̝III_+޿uW_vmvmvrK/<7res~s~sv9vn;gmsv9#v{ywwwwΟ;~?ggg}>g{`?`Yîîî?x{/{ދ^x5G{a}rO>>>>~~s_~/ev>49@49hCy8dCy8$W\CruXa~ؼvaa g>}3xlqV6,Y8+gel9s9sv9;眝s9g眳s<_<_弝s9o眷s9y '䁜<r@N9y('PNC9y('P#|G~G~1ǰ~ 1Ǵ~Ǽ|Ǽ| 1`gv3;f? - -yz"OOOOquh'q'q'q'Oe>-HHrr$a]I?S3ImTH%U@UVMT75\MS+.uF$IBEU}A Pc\; $;v#Vvu\$I(ܓRUo5ZPnuN=$IdKd+`' v2`'`?9~s`?9~󰟇|'5HWfuP] $IPT!UE5S=5Y-U;Iu'$E2MTU[G'RU{(*좆jڪ$UU$$S? , , , , , LZEyxQ^4*+9{iJvn IUU:$~'~'~'~'~'=*=*=*=*=*=*2; 3; | |;#쌰3;m2&m2&m2&m2&K>K>;,Ǘ||Ǘ|OOOOϗ+@E+ț)ț)ț)ț)țB)B ۃEZEZE^DE^DE^DE^TE^TE^TE^E^TE^Ԏ- b.b.bwqy/.彸{q{q)~3DbeJfY*aJ{ y/.2ƾ/cxc/1K 18++R={HIޖ_I_I_)_)ޖm)ޖ¡KPʎ+eǕW2PZJt(C2t(>V28 ep(r^/r)gr)O)O)O)[y]y+/w䮂}Ph_`W]v`W 2L"ӯWSѾh_W+Ju%}]ɌW2x%3^ɌWr/DJt̫ʼ̫I^Wi*-_|Uq9=UZ(UbUq~WgU~VgUy*U嵪VUYU_hVfhVfhVfpC5P xVdz:qCuP8TCf9aNk jР jР jР j®iմjkMyŋZŋZŋZ8k_͏͏-_嫶|ՖUGW9#Gu䨎|Ց:UGФב2^Wvn]3\ 5up]S5?uO=zףw=zףw=z^z_o |7G~4G~4ox}ox}o