latticeExtra/0000755000176200001440000000000013576700015012707 5ustar liggesuserslatticeExtra/NAMESPACE0000644000176200001440000000504513536121503014125 0ustar liggesusers import(grid) import(lattice) import(stats) import(grDevices) importFrom(utils, modifyList, head, tail, download.file) importFrom(RColorBrewer, brewer.pal) importFrom(png, readPNG) importFrom(jpeg, readJPEG) export(dendrogramGrob) ## FIXME: add some variant of heatmap export(rootogram, panel.rootogram, prepanel.rootogram) export(ecdfplot, panel.ecdfplot, prepanel.ecdfplot) export(mapplot, panel.mapplot, prepanel.mapplot) export(segplot, prepanel.segplot, panel.segplot) S3method(rootogram, formula) S3method(ecdfplot, formula) S3method(ecdfplot, numeric) S3method(segplot, formula) S3method(mapplot, formula) S3method(xyplot, stl) export(panel.3dbars, panel.3dpolygon, panel.3dtext) export(useOuterStrips, resizePanels, combineLimits) export(custom.theme) export(custom.theme.2) export(xscale.components.logpower) export(yscale.components.logpower) export(xscale.components.fractions) export(yscale.components.fractions) export(xscale.components.log10ticks) export(yscale.components.log10ticks) export(xscale.components.log) export(yscale.components.log) export(xscale.components.log10.3) export(yscale.components.log10.3) export(xscale.components.subticks) export(yscale.components.subticks) ## contributions from Felix Andrews export(mergedTrellisLegendGrob) export(panel.key) export(horizonplot) S3method(horizonplot, default) export(panel.horizonplot, prepanel.horizonplot) export(panel.smoother) export(panel.quantile) export(panel.tskernel) export(simpleSmoothTs) S3method(simpleSmoothTs, default) S3method(simpleSmoothTs, zoo) export(panel.2dsmoother) export(tileplot, panel.voronoi, panel.levelplot.points) export(panel.xblocks) S3method(panel.xblocks, default) S3method(panel.xblocks, ts) S3method(panel.xblocks, zoo) export(panel.xyarea) S3method(panel.xyarea, default) S3method(panel.xyarea, ts) S3method(panel.xyarea, zoo) export(panel.qqmath.xyarea) export(panel.qqmath.tails) ## Deprecated as of lattice 0.18-4 export(panel.lmlineq, panel.ablineq) export(panel.scaleArrow) export(marginal.plot) S3method(c, trellis) export(xyplot.list) ## Note: not just an S3 method export(layer, layer_, glayer, glayer_) export(drawLayer, flattenPanel) S3method("+", trellis) S3method("[", layer) S3method(print, layer) export(as.layer) S3method(as.layer, layer) S3method(as.layer, trellis) export(doubleYScale) export(ggplot2like) export(ggplot2like.opts) export(axis.grid) export(theEconomist.theme) export(theEconomist.opts) export(theEconomist.axis) export(asTheEconomist) export(panel.ellipse) export(panel.xyimage) ### Local variables: ### mode: R ### End: latticeExtra/data/0000755000176200001440000000000013077627550013630 5ustar liggesuserslatticeExtra/data/biocAccess.rda0000644000176200001440000003307013574414646016363 0ustar liggesusers7zXZi"6!X5])ThnRʠ3G\D4"3a7. ʒ^Ng}*pr랎^BN{t{ZQӏ&1jSzŋݟ;03=g'fïh~?V3j D׆}(j?x i+wĶPpgX kK08NMv۳0ԧ$;yNw¤$/#F?[Vux.^cU@N~Cebi7$BnAi#ʟz;%b60ήT"Prp[ӱHO4h9x|TM8.)z9WߵGQs@)oD ЄC'PadVY@wKE$\i(f<3)E`t7c9or r CSFӐc,u\N`ڌd4d9] \;<ɲ=*qH&- ž.`G48i^Y]Irˏǰ9Eyr28׹*8(ggi#>}"{Mz_) aտq[)hP͡N 1/ɒkf>2¤W}&0q)^t;ߍ7R' O-4Pbt[%}鹂vjLb 4ec#dX|YB+չHti0&>WHą> ׽vgi ?OF뇫\i\!1uuSu|yp=ՄMNOE7ar#О֘*Fghm#XZ6Ɠ3Rv/A3LRV`,LD{q iKh)Eo12W+rIeC0`>$gX_7 !z6 k9W6Ý\GvheGY#kl'ԩNB#x~S/@HQs^8j3N >,Qsr<)̗R>^ ((ZqeOKfJMmG0e&:(OCNWң_}k|>0^{[~i3RZBs#Eӝ6d![Yg|C+cK,ȃnLL.݆?igi!㮺-*7('S'l.&AkoX؀t긱JIw'nʬ?w@{| G^|$<ȃlƖ#gb(aF#o]ņºS"NsRedcsDQKaȏmc9d=kW`^esoH8NN- }R6xT)I`ZDpxj .byÄ&ۉL ﰍ$  %0=!6aAawQp(sڇ.{ˁ_:R8-PBkGAqc鱦:Wȧ$BT*NTK hҚhVA6lY qdB"5l}0w_݆Dk!+,'z|OLR`J24c͚Opxb@eQśԲ ~h8|W/pʟ^1WXr9+VrcOuyU) mנ- { gNU-/[W|.IO_t}df\0ׅRpDye?QL}4bHi*9-94Ud;pT 2f%͗ܽ QM/g[Tq9+׽"}q4)CH]fSYdЈ$:7jQ` T^M]s~xgqM /hL?yVg`׶ V54 αlyIn}dGe'\/4g`~c+ fͩ"?jFwdmUV+fFYqE'fՊ).'sB4Kazƕ{ꫯzk僸jaf' Hu#w]y\QfaN4.iEzQ魓r:`]VߛSQ6A5]+c#ANC]eDd9Qk쳰5}"O.[wӕf^yd;<50$#Wgp9]]O_<0#z46O`@7T0PV3PuT|iEpZX..ɲg;I,૔iUr}W3:nrف(3ETX|#,ns]y3=54TtPݏŃ^ 67d(@g f"nYԮD9RF\G4N+Wlй ;؊SAŞ{hu\1n#$hgkB<,GT?X&b1Ub)qmNo-6mw 4o0skB/=hQgL;CҲsQI˽&rQ |e)l9LJەrQLq;2'l`l ^([;6Ib m#'";cA"U"Qe/?F{G*p?QiAuA6!>3zQvj*F-R' vs049az'CYm9*h֔};QdS|El "~`f(-[L t xMȑLwLa!GvdzJMVyzkFҶ =:-)fI UR=L ROWȾ%GFr7egeusakMo5Sgo~7<̵'d&P I3Bw_;TѪ*!mp~<|cَCtDN -V1y q-208}3ЯH &TE\ܤ=w5GU+9h8! RY$VvTZi _R|ܢu.(KYM Lʂ͆!xb[cogn26c6$$Nwun5ngzVm2>E׽J6Ai鴷1MmzVJO[yLE1o\$?ZLYITup_C(H.cs)AlN(-[w9B0ȥ0 30)gIFL|Ug fsZթ|1i"L^qmh3WZzC䯥Ko̪~Orrxy\,q N>Jd>ٕ{ʩ4NP)ɟuMD= =~.X/pFBx'#V^'9 $;zc%1Cߢ;F^0RMR *$tļ@![\7ɰP7]VsV89\)-B:LkOY?ߡ V l8co%3R(x$sh?Gh>P NJv9b`ꘁHJ~VaKU~V?[Lhۥjph`4Ļ6~^2F2k;CsYT{6CsN!aàd= {[a[ZXfV(7aO|a8KY,ESzO\mؓ.ڣ Ji:'[81񙡰Ofmֱ#K"_e`,G`?M#A\pIcyVMվA(|e}Slݤd̘ (} kG@jO-'5F99T@sc|ZmÞCԠh*_dN;q4)MYYJm =nfxs&Exa77Tj>b%āפg!k4hyƔHcHͧ4svLM=MC] PC> $c^w$b\_.ql$^<毿=p+!*5<ٌw:+djq5N7w d:nwH'LYb~F ԃJUc;*'k账)FwͦD_mՎ"1"V\|fy?]GE٧CEv;_HXCAb*Lۇ@3lȆ&5 q[A'#9Jyu@~vc͍v)4bi^Y逸A:}"V(}ϲ1 DX`ٍxp3[HH CCP>(. )e;XLf6Xz'\TDblHN/a?cۿeTEWnZ5Ra]u1dMPPKm)M@F^ZQh" 'ӆ@;NZvJSa3 ¹2R&®eT'w7O6zqj>_I0\{lZp3vn?<1z<po vjVaߋoŭ%Sjmڧ˕2,>KT]\G}fALKo֏ "'V:~Ҁb^Qpd2/g/K&NPB/~MKNdfM=?d+cf&Z(ń%?k]Hl C!6I E-92ԈVt>uAn<8}.]nKT[j Kz$rnnKi*߷tP]µ 18f#JihiݯH @{!6d ,/ dN ,W>} a,83GH9`lWl,[.QZ;hFhD0Ԃsf'qa83sMKu2YAݢm/]+db,=IT}I=MhBw"Ŕ6-]&@L_"!WL4{,`;aN&;nYTMEYm ׎ڸHސ~x/G"@Gudի(^PAe.[; G!.ٛlV؄.rKM'x*6> " H,9s8KTv1,Y=5LZTOآ*M[pINma$wbI[J{ː4\N]9ؗAM b;lw3vOH< R$bE)gEG,R@ !y$-v,V3GG"!tOovH5q:z% M90>TԚHzN {NmzpmY֜#Ec7%]$#gVz ~'~owCݫ&A0,֔Ps=ՀiQ;Z!jbU\ Ee01|e'`9 JYݻ575PjYD@) <ֶxL+\V {O*&zHi AZGd*>elVEժ#$q]\ɲJoߣvbkKV/9j6TI>}<2|_a]vd!̧8g3NH\ 9)wEwΊ~Lmx;CO/iy}@Kt1 _1ag~<歁[}Ѧ-=͓m¥odl+Rf7uSu rCrN,L[jqzLnD!p&e6?ʙ䎺?RFzw nJ' i1z6Zŭ~n53> FҎ=dş$FJ|> E-87ȶN=#]Wz )%XTA~ƀASMTԠcdĐaz^ҕG2Qj*eP`=tncCqw|{nAZd b.QަI"݊Bѥ^&V|h}$rѷlge ԶgdIӥgl˔;jMir SW]p&΂b{Q"׽UQ.Mua7vkKo'\`Rñ =;A[bp%ű4^K߄ʋU| 3?Hp0VuJvp'~{z!QgvNLȥ޿-]ܠ!PN&pr=[P(F`+GePNC(ْ,Ɖqmh6t]+@B!k~gbst^!kf}4<(z}-]%B&/1-Tt i%\!|Kc+N l{_^d'}kfGСhuzjI*.j _}i17;fV'h{;5WOH{rNVEtmthh屪h (ɛCX,_0L=&ax&jQ yq f<]L{HhE';U挛f~Ց5`_q~eס;*N"??MF^/FbxTP@swLM]V8"{%%Ơr<ڴ6aE02liT NRP_ RVc%4Mqǂo1Ȼ9V͘୐لuӐ=hdl~ Df¾e+^AIIJ Zө)gYa;Uv I uwZ LvTlao+p \*(}Kg7K_U!Om$(muV?Jhӫ\83W F\.wMjLZS)XձKh8Ӌ麂~g=W~~,uÙdX'Y6'f\` bӽtE0FBf6F^”7lMؖQJ8͒D8P˓REҀ|CF$=ȋwy7I9XP.XsoQyTfq׀z[qY[h!r_MW?ȢՊ~&^YmF#UT^|MZ&^:ҴC`ץseqã2cJ@U^XL3I s .yk| 4f),s7?3HRM*tbE닋flڿwp>/h I!,53eXz咽*9ʞN3WF)nf1pbe6 {ִ@.r/ZA.PS\'|>rf5CO;pz^~am]'"1 bRF>5z|57i<|0e!H򣥜Q|fr3b!WKxvo@]p#kw20${A}4G (-s=+wb:h(♠c܉[a % UǙyÝ/" Aˆ]mǒTdřl%z&-P^7H@Jb)ZI@HWאgg2VśSEUj8`F8G}-@ڻaL7!Q%NLIRݟ q6%*mq"m&Z)ꉥh{:&Cз[$Y7ŕc);N񿾚y.#GZMȦ?P7ݹMgDl4'hkfs[uȵ !sA+9ek"@!)|P_4 .NcGU"N#]74=Y]ol U| #v z| Mu~HD_^8⤃{\E%]ye[%qmSfhw ;[HrIxٽaeWSn`IJE o^@I(FO nBSlUuid1֪CA3?:My*LAAlwu%:gg ԮK;o\%cW4 m5,8O'p ?F)Qu~͘5 /ZJu\v58FZ(^>= WCC(.m!-mx)>5tw .j/Һȅ7µbi8_N,5} >΃F-`K ?kYq(9uM9N5 r*>r.=vC8##`PJӖ֫+\ȁz&A>rgR>6EA ]݃WXWb)^EV4 %캀U Oѣ?sE *+ \ɔ\F)l5-edXLUd@rSyxF9}u*7āu'o&eL@Ph 5ɓXM_Ho, )Ȓ\<>>bEFM1:}sǴ~bq ;zK’}~4]CoJue҈juY}*ǖ\ +NMRl )@!m6 Q}!vu_Ar1w4J\߅?'{ :B^>l0׀71(~`ma%n­: gN D)bLG<І_P$WNJ$ TW'4 K2xzIsI^pfSp؇=j2f?uZ/MGvF.sOpOO]/T1 S'6Rއ xqrn|vkA-`|.O3ke$pjBrArN+DzHIPW4딯`*{{>Hm6߯MXlc9ĦL*o*bجc/mV}ը\'[nzǭOeCxa}rxNJ)kЧ'.? jٷy6+tvs.%q;+{{˱t`@ f94K>`D1ĭyjd4Tt>7m r8u:#zd∷"`us&u3JڄPl4%}x r+Gϯ,lf1֠ b_;XT/q _uo¡NuvtBtQs=a#m6kl['28dRოm0p>*ơoI4= Z{ՠDSOuoctʉO.ÝUNGȅ4 G\ܔM1 Ng#*6ǁe =m!^E1z40hF{9$OE7AztmW0MɑPɞPk5 j1l >0 YZlatticeExtra/data/USAge.table.rda0000644000176200001440000006462413574414651016364 0ustar liggesusers7zXZi"6!XჱiX])ThnRʠ3G\D4"3a7. ʒ^Nhv(tUͰR5GPS_CȎܠH"@!l?Ny~L&ra[6hէ#R'|ɹAt1>Ugѧ(dO9Ano ' V.бrxm01 [׾H㓸%OKiZZsϸB ѯVeh0x*]A@NwwH=Ym03̳8v:ZA7(qջdf/r{a|@cO) &qQAZr. 6|ciZ6msٌAiEvU XɎBzoOа r%)ؠ=_<25%~Vӌ@|rR_-xSˁQZz~*C oBΪE#AVc%sI&b罠>=̧/m(@ ͘Jp_Ols]lXp]JJ_9]LV.,Y~"ݜuQz`!겘"r VoxѮX S:k\WTPK7 WtoZ['>|V aZDo&"p֮{&_nK\{8P|EЙ g.~[Vc3TJ:YGX4ӫ0цO!f$r% FzfTmXxylmvJsBvȶhNM %~DpB 7SHPcR[~d Tʼh$F4ceʥ5kNj:8u kIB/1|m~9䄔eB ?s=:2#7`̻Vy}fXc AV̖|ʗ)6EմNPTgt$/Gs+&[bh5:;fM¸n8rea䓯fVEIB>=sy0yExس$yQ]b YzJC~ҏscSߓrޭJL+A1%-b4 =c@+F'8)ED;$E*-u%j#A JQgU<˭xb59 1|T%.S1a$lyVAHfW(We(cϢ`?Lsv2Db^ VZVް򘔧i~vx_{0ҋ)h(cB (CM H> j LI_@>-9q!TVƒʠh O.J2KR̩?qC2; d:vމ} A\EР1m.Ȕbf8,c1nq(D}E(Yɗ1I~ zJU`eYæb򪽄mC|JthP _YmxhRKqD|D ֘!cU-kv\,o0Mɸe R Fn7ӺyhݸLAtxsT4mݜ"OEoQ䄕p`1z;͓|wؿoޚIY(!_۝>/@D:M̓Os˧|<>oi` XϟF,0̾eä.ΈUw-a51CW @^J[ Ua<۝\;1.ًF1T2GD!3u"rC;L5\i&8)zbgScE[k LtCT 2Ɩ񩋓:k43л _vd (,X`nq ]rJ,Y(oͫJ}Ci@Y"k m Q@8H%˅t*7,nG9 iW7p9lwoT;qj$81&%妍j ػqg"Rj,ie289#q'3-`yce1qh=Gy9f 5BZHd{?,4n8'JtBn&s44[[!kzh159l`jXWbJ?eFis ګyT@Κ2 s'uN`Alz:+XW'qOYI N']1ٶ=3?/}ݟ'ǜ.C~X>qc%q/wOc`S |.ܭ]e`SB8|`% F:/*s )_R.Z5PxVE YJ  2gGXPyJw_4D$39{UlŒKI}Mw,^膸*&fZSxo,Wڳ.E_B y"o2>"JlKvPk(T ÅYOY[  ,{5H[*y3#VU_w75>y+9+S+jN6ҮD^ҲMRXiXQGcXYȵ2FB~.쏕N O~tb*rj=VVqX2$q $KwLiMn$RߍfVͿjQUr|DZJ_ebHZ1r<%ֺ+wE D0<"ꧼ0E^ "ћpj"CR.2BD\vXKD!P!淜#){)Pd*xa$v ~q%m\o~a)݁U_k(Fu[a=d(2F(&7ail~&LQEIbWQ{و θ+E@#wiJih+|jH ,I"0kFCe ^$J;J@b  -ևR<-@nd@>0hd~ѲƢEe5M~);2iߜ 3 d rICjdF0E.X(̏jЃThop}-ޑQXRJ!rZ=hDg34+Êl3.S#CBюqW @#^CPS;sJpz_Klk$FWsgQGg0Bx-uBtL6`ǐ('0roVJŸ)Œx\n|;vh99Hc y($®~oW3C84RTI4qg1I[ѳz.y@g$)Zz {>| / |45b81,{N 3lV>= EUT4x5HgRĆ:G_7pVǕIꏅtXz9ZVQd 3#L""b% `GH:Ln;F~XXU< %Ň!0!' ֫_)J\~NR/F/#[$ٰ,& (ȍw;3F˛_f#L?a8ЧD?R:@[8<}e:>{l!@]Z{g@ے+knb=q ^"c,jU iԫ>L:{KNk5Dɸ E x?&9*PZO\ ʭ7|F)p0&^9]zUjV/-ldY.ov,tҮӂQ R 68e4 C;;Se%uг*5\Tc˸ASX}cڨ|JO"TKdDzBo\IWKHUW{vz ]{ޓJ9qxtf?Ӭ7u> Yg AۭvofbwN#4[ԮlJ^<l=+<$@(q4;\o%%9Ӝʩ:gSYTzXҾ^#|;p5 /ͷgG]Jb cB7Ռ֑4o&9Ͱ 9T^*Ǐ@MԚV_.g,SH$S+!;WK \ zKQXiLq*(Y2bbxЊeK| Ȋ'N xx`i SX Vc8 ه@`Y*ٍ 2;uNn<݅- XqEBr\ԥޜv@1{B㤭֐{r`@ CDvM w'N!qJEh.Ŵ٫H&ܝF'O*g Tv \ӻ9z~N <rnjUEN_D&lL!q|N;m:;RH#s csEF(M9:_3@D]2am5[$/ŔSgn{ S^~ӪsV#@~SF3u뮴8%^X~X?N/ebfjN ]+(+/ ٜ![o<Zwt6]ć+D.JVtPº}nAf@ҥNr.S.} t(3ҏY߬. m_^<4$~8n+LJO"'5컨qƈf>4 PiҥߗCX1AG˱lm KDhe顜 ҙ.W{ofQ0 !:EΗDxT 'U,/w@T+=E?|QꙶERw yH#(C}v)w!~7*0A4$,}Y֏MuF- Nb" 0.ӊj-L3X掋a) w&:yɷ:dZ:;YyT(@U0\f{Ոv c \ẠM x0dd&&#K`6vc,L * `&Ńl~H]3q&g2d# +8Ż1 h4Xn ʤdb闘ئ(1[6p^i7 /)wY;,ol/}nT[ $omR;E.~gXt:.%K6w\)fQm{YxI(9؉Q"{gRy֧ثU-VR?LHl_Qޚ`+& }$;i)Nу+)Wcl(=zVc' i>y2(NgQ$hݽ5ZŀJ?V%wGpggLIң%S,/GhPAF`l$SY YvG;u,;O#+')"*hHЕ-ì=_[1cNbxE1E}>Y1eXw;EؼM\#(0k2@{-jM-xZ ՟Z%kْl~XbyKZ~_ Jk1Q97]Kb,'v1 {.(Ij`Cpq7 mfr/lkN&| +Wua ]<9@!8#XND2WZjIh!cB-'r)jp8+8p) BԳ)[řÁ(@~Ml_jT8DbwGJj*nFlܓ}A>'v"<:d @b)m ] i,jk穾Ii܉$c>#@I$^DQLԂ) Z0R\!#ٵx2d dZI3NN{Bp̙ ѠkN}~Qtqcjw_Sү-I>Db Agث:!p:Lb4;P ]hGN ;.$2l0>lLLpD098#b[V2d94* TD8fG<FexOl KSʚ!^%DVV#j[KJ@&R-/B7h6BhG%(EtD㝿 -}Y qJ^w&}i-N61wKŢ*`h7T}XURb桝.ǴJayǥă;<@.4OJߤ]7ٺ $Lmr}j2N!Ǡ5v^ˆpֽXʯ MC: 2~kvJn9 69>iWU՞'o>h׼Ziq@T^Y &d'w" ~OY*g/Sy:di ә;{ʶMQxU+L5(=ۊL!+u"T?tc!] ݟ/!^g✀lAkSbw&t wyҨ 6B]W[O#s$!b{lX6:G7?P+g{T8kU#Yz] =ݾbʵgT!֚#YB਺܀j-x 08HcoIlei@P.϶:͞z`=ٮLRAW,4XH$T;u!RU@лf2JG& <3YT+KAA.p^* 5^q\yU3&wbw 93Uk)Ũ)+&w#ݬ S{tq^%8# 4{D1ޠRUJΣKS^^X; UƝ7CU[v4RYǍNf荁ŤB`gta0F>IZ٩:򟢣]A!bO֌SM-.I&,$_ZZ7/?'r;zZ-G&z'`-wAD/Cy]K\o (^xL`( ]Cm<^q#jZw})ψI=$pJ°g\+8HUM69$vAYܿ[QYk"BXy[liWo~AF3favXvf~ps\B(8 LV}drH.>4O׶?ؑta" 21a"V9Daa.⎉ua?Ю^pG(=5.]iYJ6@}4? 䕈F]J8Kٮ`UyE(d9*'Xy0y8ϭ0;Ek$#?fW<|gJ~L-¬A7хlrɣA(5nUY H.\=_ğ>s Y?>E[F$5 ǍCTLL7sP Q7n/(Xk(Q2J5̀F%h_ܩ]Vb**ԨC<*)= i3 EiIF_tj [ OY_Fy+RCL](UH:Vi@Nf# .NQDk^RPE%9^.+X}[C k~Ғ5QN)6GC@>f9Ah*\3s-pztr|Y qGxKW͢$iqL[!GGL I4 > t3_uꤙKYI!?-35&}ƻ aLnQ lD : xTl I]JI%}.@_!N`n:i]^2YPxe_G*9]]ܥJ.B&I ]%%҇qLmnv@&~l: |#5*OF9j}9FsXTKVzpX(N2Q 7^cʑXEPԭ8{*5UrqM3w;p8^O@L-iX aLkgmROh#2R$ê/K S0fÎ`-䩝yycQsĈOiչYuE[I-=;d"36b=R}i/ [j Ģ*XWGSsqË/)?5w8U|lZQ^^|ȁE=TZ&Juw-`?v&UEJAnWx4YUN +]X3 $J /;P..K&!MӛP9) nqBYb!PU|V[ޟ‡R\Bhlʹ!#Q𮾾3lM1@be,W\h|&a zgX >NנŻ]nkXq{ԻvHH5dߥu5pQPHq27Wd^svy>Je*e?˛ϞMszõj@|X5jZRŞq}ΰ;k[cXv"ҷZ ;[zMzG)i f~ą_dt{믟ui <&P sx7MPvkȀ#춨| 1 C~9ig33!+2t$"E SA5Ll+-NsJD[f52M&Zw ,7n'I ?S8ݤ{G5~56[]2CÛ?YuHmnBG![(#ZUdqWj3>՟:L齴Oiڤ炫X Wˈ(`$oBhX@_B!)hPUN0\7sqMu3aLiTUT'-yly0|8%{&;8Y)ޗ^GrAo &^Ff9\4)Mpq~1bI^t8oz2`{r)"/OA'^i92 r. l;8]Kd .'*%b;W]4UW}JIcYXz I0ԙ/1foBP@Cd8d)u`24&!/]mA?j,l%?jqJO[( j$sݕ.9?`9LyF3{BʘW4$m8c"4c1+8YDĻ9pFT}~,7K>ѝoM# puF2K* B`Teb8ӅrO< +hpcyt&4'_'?¢_:itB'ڏJUCs߭Pmp࡭X.VH_oڐ܅ >Z^,[WK/+*Ĉۺv.V5)0JEqsns粑!%/VR#X6N\ &<\YcO-DiCByg#%]+@^cwYo9¬EAVxV|K/Ge銡jȅc GcQȅN Q09 :f\34D.]2q8(޴)4 q>4E)9KU>L{8Ctgww#08S#Kww[Uo.#6zg&F6rf|_v[ :B{<_n,x Y;YZ7. 3[%}^"@=U8pKOv*C ǀʥ Q z5`#\߱XWCūVzS{4WUN5c'$3Bashuk7O[~/tP=.nn4Z܄21k\>⊮O 1l<`~/y9{A n8daXlLV]0z{;}Z K˛:aSp貊}֤lxCUFj ,}>t)Ѱ"_Pv2{IGjN[ʳsxwo|_X*@LR$$Aw,GQd®&c;qurVQK/]cEr%@r*d߿-lSw}zB2p=\Ox;*=֋/s/[=EźaxBUeA%jQTII.IyT1aq5!`@M|?ivo? 1{]Hc^}Oܳb:}ՈAiBp>p:o?lzwŐw鉚w2{=2v{C@hN~n[&0OMmNtޛc~tk.۞`nFeG&Hzn׈Lk9c"¨B\úvsƐ=8NW;Sce{)XyY/ ˀX&`'4FeSsi9[5e3i,JAytT]k穙/Z8V1:\Kd1mr`gEP\QHH2V}/ j~B s |wtMn14C퇤AfCKXZQ2umnn:uG#R;8+"9If\O*N9:q]g&nuU@}':nDۧIۜiK8`VA\ft9!X\Q,P$z"]&_vp {>k Pn#PpqX4j3&/2&*a*Bh Q4وp@e=]R:}Z<|BF;&Ͷgؗ!bqΙ _ؼ/pGF )h_u xyp5nhODf=:4$67ҤRh02Oܢdx,-X8>\bz9D" 1&^wX>٦Pvbz?TutRu@π ٮS919/ /I*ْ XG[:c%Sa=sª< MzmTctJ$GXɯLs>t_ z\lCmlTR%g^D`,vW1>^jCM%_gD\^ Mx٪!^{؀^xu(2˞* JpٟM (, J -yiDHp=/*|p̆0K~zGY_8V\r.@2ÌYnB/% tzo$ 0x60yNWR:JX5foRИr#d,Va=1XdHye %g ;)Rd]?iwצm4^p .*[(,K8*Lj8WA8ѐ~@N,8[+ 蕁bYS 8tRPI<{bӱ~19,2_M Hpuưfutm\SBM>J`5-kOR͇O݇<.ϢӀHZ V=j1!ԩ WK=T4)1H6)Lg,qަOkm#<&T#YMr%(&%Eg~Iͳ4Σ@䀳/~5.( z0]m'eWk{+6Wꇭd UxZ#W)@NQ53p2g@is@S=p;+jkA4ŗ׼=9`?$10>]~8u<^EK~O-mZ(//(4?fY^YNN BF1aMB9<dkU$a\ )Dmgoxq#$hHmMeS~=-uj 2r*B&uBa '5_h8^4 :_Vl;A_q}8X=@r[ͮD眹PsL 7z2#V:ddRCjtP b۟:0.C:Rjjl! Ha|y0T~;mfHAs`a9e~J֍{ތ)*% -,d7App5XFK1!2 3q1gQpMdԱu@ϲ~w -cY]PjA;d8|ŲґB9 ]O-d@نv+8 h#jџY$ha}gNnTU9XKGL2$n,T ĨnQJx9p< njR:{Ikŵdn^gI 'a r}k^GO%B.X#70*%U`^U9Z˛SO-r_u-CIF[s9~ `X_euWf3+̰#`4~썯FcOTc"Z|smZggluScLIq~Pڡ~J]bxu+wQB:S>'ƴ'e ?B Y4k$-9\!Xx:rJpؚxG'.\<^wTDMOR5:"]֮ fe/jo̵8Lf~gV.?}F>pvtb`4𪝢e-:*,)qR0HyA GYQ6z"!SyogܗR Va_ 2GȌljs,AV\²|l@ 6&8ݖ WkdJۄ_y 35_̂\h{M#W{A$O?xN>TDbku&@yMDRx^Tjt_CǪ Ñ2;!L6(݀uevwl Fۜ"7FܸڌZ_}3媎Ū5c%I(iKq50cU`QM{@Sւ9csIm2] (Aۏ-nn5͐0H4(}m^c*pXXnOUHIbls^-N|w裇)uɄdo \^B^:DB9 ILj{V+<9et{H[ 9919R= *}) 3(ͺH+xDz=. 3 7kBjg\V1}Pm2bK7OP}6FqI1:&ƔxL`:nAʡaL(P~ 99ZCH*ȷ6)8АY޶fMػn"KxxN}[?n_TlB¨\mLZb5v*Ȑ96vyjoS0p̷TۏoB#c?r0+J6>)PS ]^Π-CiJ׃/fTdm83-%%# JCYy+-tഏIi62Xs3Pp ˺7Na*@.P,3O1xgh,鈐tzwHtsO"^|Nt cUpGY9<ش4Hۈvݟ N)k{>C*f.sӫKeK/4mEy֓VEiؽc#};znmU+\MbuٺX’ةH`2ԫ\`(WZ/]+ Ǥ$wldn;f 6?%b:3*,}2)+:wcwXHPINN b^V[e:tnU2g=[ c+;3+VLS@/{-6 rT% h|a%q8 cv=`βVEgB+ymXəPEqH6Kˠud*Q}]jqRrJ#HNGΥÄcL+SӮX'zj/#[q8ITJ"Z}B0jlf籏oPG$_k=DM]A1\OJH'-VKe%ag[&+h}#(kjV{BᾎVRGz\uQI@Vtd NvvEPjfӨSgL1x-D;v”iw\M,}#|Dbvb'.T% Mub>Cr>1ʯPޭ~#aeVQb:H NQX#UrTqG[6gs7oZ{4dhc(^[猜] ׺q {ᄦSu<[ZF׽PkACz[ P*:ZתyD;;zPhj9OOɗ te/ E:nCl6NkM) 6xtJa1lBɪKX9+hbhL.iLdP2s sOa:ŷ==zdcƐ^bkxj)ԯ:Oy~NN47ڱP"PerwCx^R1\**Sm!1H82mD1B QKzؑ,}U@\xB "qryj3% M*BzUF]w2heY"IE?xb.!TKh]D2!b7qMgDR4_I]טWѢʏ˳ .~3Na2a ޻^0d=d$Q׍1  8V~?$ vtx/S-8X͘["b]L TD#)GS3DCgoa-X%s.TX%gp(>x_󑍲 Ƴ"_h$-xu6ox͹3ˮ8ZH] ľ4j:SP7QxTl]Lrp/ѝZ{myBT3{JXlL%(*r%铑HzVE0}rs4**ޫb聺y>UsfAaN@ =JMhuBHmK!gq_d/&hWnt.s]ԱS:+؈/*91̵z,~ĕ2]L$i2V(JUK^TXaULM$v7#4(BNE"K3-Y듽B SEZ̑MZ> 2%eY`2Hh!* w,vbNr{ӵО4׌@D$m PJSts,104@u*; I8aeT%&+=4'\޺YT0kj՟JQC;D9y2/m0RVJt\N &}'c` Y|?B}8@h11vQSʃ+t6F:H(u *Jʣ='Fc`468)NK1=V9KrGjz1A&XˑhEF-eq"sT258|uX]9~xxuС1A *xu`2t]/'1 ^:|G nۤ5B,V׃k݀BŽ#QrlG` XEBIaju>:Li95_5حa$V|p x܇8TM%[&Ym<48U4v`G|M0켩(b@N~e[c3V) +}NzWҖ Vyz2qָg{TD0U}f_-D1[lC%=y9KR}%"%^^ 1ٸs1*a ><,Z7 -Exs7芫U'SѡVVs%eM<15Q7ZVwP/z3I]Yj:^`4!$v* fϝʥFbI\=q4 pnP歇848qwg&GuerѥHӆH㳥E#<ĻK L%/ *"8AJxņPJD6{M_9 N[}&y 0ר`091iS_Kp^޷[ /qԃ"_kO7J(|] ({5ƷUvns ~37OC;wlj6<їZ\[3-n~U<Ȱg^ oĔ$1CŠ^!E}1V>sis҈mQtQ`߲B[θ)j0һ%xT}WM &m6S(gQK>mH?8: Tl+,eP[/Zt?>o*i=dDՕt;d7}rA`£$TX %  Nb&c@ 3 L>F&JNӺ`a;=%yt-mOed.?|'^18WEu ;䍄/5Lނ?pWG0 YZlatticeExtra/data/USAge.df.rda0000644000176200001440000014227413574414651015664 0ustar liggesusers7zXZi"6!X!}])ThnRʠ3G\D4"3a7. ʒ^NfBse.P#\)Aރrb05#IWxҝ dP"A ?{%y_&7(yۿd"b0aY jGZ1-+kii6Cv.%ZXteEr(#r3/rj|ZeIE@N>e%sgk8 8leP6YMY/;܇҂@k3ޜPaXQs`r@vGL*XV1ò3[|,3\ ^6-8Sw1iF0&፮F@Š,=~=`2' QawPNnWG2nQk1RL9a*o B YZ96! PzzCrنKDK J87:[cKT;PN.yiR%OF [ufpSf+);~t|b@] _6EJc KvQlyZ{` 2ltر%ȿP&e?XxW:RDw7{0?Cs-Vf(s*x[WT߳s˧ ORVܢ cSQ2;[֭wھY'(xAB\6N&^eKpAVޛvDQ[6kg-_a@I2?<"cf K#(ad"͸m9誺ѵ~kk`ߧ ځrVה j'g裡j?Y`o v?A_~ޙ58F_p$G!}wSaw7ύqL㓝]YAsEzZF2 5cLA9d+1M. dI*Ww$W z ".|,H W?5nX }KŁh<<_(UHrp[vLZ\f'ʅ!:Cu`o7\t|fQFM_ӂpgv|9 L\)$"U8E͟=k:ØF. b)du%ZZ" :x/6;3w1}E;=,1'kQ TN0i02T>Ԭ+)3~+2 7-2ލ |&d{д1a)^1a9KH@,smp#k&Cd~Di"7yTFoxqԱRs CN(/Dʊ`ckSF&w+04,@DI'*OB$*QBHN J׃6DvČ9ng7;9, $kΓM)*{/OdN,ݲHVĝ+-)D/ '^y1#wO)eZ* ZAaG% Fs29^qÖT|pG[R7 1%XG>2diq;@DS4o{eaHyFKWpڼd+Tz:UC>(X,s~R)%XFD_(n/1dC&t6 ;?t镼E݋^1άɶ ̈;SPþeY=Y-O-N6~!-o,E9 x̟3;VIsٯ$U Ⱦ +?33Nٌ6Q4])nA,NvE7<u}%g #K'8fbu٢l*UX,Tt͈3%Z29y1sD+#N˞䬴F9?PfOe?WPI4Z;ۿ4AP/v?_x֓n%š9‰)V,m8&Mcۜ0D)4rL[.G[>ܩ㧶\GBkpc,ӐCY I.bařFsL_/V,lzkdKڛcʖ/ZT-1Xb4&< #m! !,:kK0-xӒuV.Eux+m/Nz- f g|hLx,dkGb0F1iXLGJo6 ѩ3mr .gKÌ^yzk1IB̿ƧƻhOct$ z+;7fѹ Į~)ʠk|p3rřT7tnC}D$#^h$ BaseMN3A&Pzh8ho}߭V} ÆF_cB'mLh)ya I16/G~_='51 I$Z,|DjTpS" ^l-]fT(Bq1_ۣ[OfC (mPy{b6R$QL 8N6y' !b}k~SCEmO@)h2Yp >37!+"Cj1b=R7 ^8o_3# OVxh`]vDlKLZL"84c-CeЃ˰a6`B7AU?b vLwƣaH9 x1$#/0QHhL:H#xХri+weK[C84 *QRXIS{lQϒ7PWL.֠IN*0rl9 PvKK R Lt;bbAE@L`PAP=¨}l̿|G,hh̖05 $")1>S$^Kb*rR("6_6n-hƫXӄ=c_IojT ^ռNӀvPfiO&/C96aXo5uE Sb#ZIփؚ`rC (l2!m髻yAnxZ~l@h}m()BA]x N1۠ʐHEaKQU>15ys|kt#`$kp|9Yk̨jw{|NZ Yv6=RZוK>!΂{0>kXUJDX@)ÝԬ%3&5ύӥGCK@0^fQ 3G 2E}֤Ҹ'*=4x(ӊrU.U*I^,JٝP_Q g__p1H?:aFK"LI&fVcW髋{MF+K@ w g 1<ۮ'qW~G7:)9oGddU6@n(g_`9a;EofyF'&ÝMώىΗJy_IC0 e^| L)ơiۂIfIx+;,#JʝeSˣXPDGU!jPָ~qo310?E22 |/|G~sbӲ&tO-='Ҙ6M s)kpF:g6S(W=Op'РuNv_tI{ 5g)L*]E~Y+a?i.[d{R2 '}@9I 2W(lbP$-:54?]AW1SrC0G3#$'ZX3*;咁G0uE:@/72轌 km3'LlpndxB2~߉=g/eU#R88 [o IR[-S2$JM:y ڟՈ*5Eh N3 -&%%J_oygeY W .AG!hz|} m! eXBR/ސfW,#N_c1uW3w0,)i\|_PųZ{-I#1;oZ .%OsXJct7QeOrnWuVVHMν%$L:˓e?5#cu6bvq;BNs͔hnr O(2>IBbWĵLWOPO}82daOTbbxRݞֽ\QeNR=4]h0s8 6v|flWӨ4 =2:W"NWW$SԚmƷe2jp2#ql ԰=CPz^y^^>_bU =V2_t-HA/K4xVڎ9B2ZGG-]&(ncWPqLBe$;&TLe1% 3ut/+Mx O {hºPtGpLNz?OHUO.AZ=nK~A#4qLȤmZk?|U~ބ 8c:ܦдM 1K/b" DLlLBQhP̙ޫXu' ~s.T@YkkgdE\ {W8$ u Kun;8' oj Iװ_%Co7I䝍nJ=-TNOpUg/Ы:ܕ_qY"j.BKqْZbQޢ`o `WK sdmnD,'Ww9s//%H+#cy}+nvMtN@K(W>xnuPWnTkܚK-2u l-kg5YTU/YU08>&\:hϞ?9ceQלMxe~KT=P# t?@tL]A;}OQvZ|q PH=ٯ ~YT$7_ M z56ĵ!Blwd1˩WƩD%Zd<ZWx!@;7I)$Q:Z9dz6yXj\VKiRH@(3\Lۃ^+D'NU|;ľQnKH(s2TǢ]/txaB(-`~Zgق5{ >WS:t$x'{ʘcĪf;Q`IMWyJ6w M?1y+n?C;a|X^+Mu-E«6,>QE #/E7q@Էc@YfĸMz)Yj.XbpI Iv~,:a ̺3ߗj6BR AE:H *a ֜~6o4;[?C|AJͶ[O :+kJ`."\ph%($t :@Zq]/ˏj4=:m}0OK*=J @ɺAKuG&kD1` JʹTKEdWFu|+P< Hg#Qvęւ!P3mR=B?Ш\ƧGI@,]^bN8=_zo)gxhpͩocJ/ cІxHSZb6>إS 9ɕ. VmNZ U,x)߿ۈ94745}C<֮rF,RfVWa39?ޏ>>Ag!RD9S Z(r r9pfܰĭc<- &fgAv2/PUw>W!B/iSYk ނzbs 5Ou%O_ M60A^ 9x9ptTOF{8}h`tR_&P鲫Kp|¹忐蒚-#$‡ ,t!bdK 3W$@Yf 6r_w{&gjB8 '%^n /ci@dZ?J?2XGB*+eI<'Cfk@0#4 Fbgl,-94ƌuި1u"k}ED*!詴q;¿YilCZOLu|pj(ƍ5&9[R>nTdıc)E>Ƭx#7vG;8&ъBbp)Pt=%׃M,d!VK`!+`qȃ*(-zn7[d̬E GN >U+:H%q10!wq,8*EaSY \y0M_=W:$S _ dmoA JQ CW^{xIzT2 ;NJ:LoT@Қ's7.A5-g|nɿ^cj'\agu|,mUkhe! M !t-|%ܛU*#^dU5j^U[zj&!&CaEoBBH^x}v?ꘟO57_p&ԶI3 _I q I]BhD R_alQŚ>X:v$k1b8m^l}CCsdlXU$/gC77*rrn44{Qju&gmwYF\& ~Yiu\*PfneXDt$Hћwq YYfMen:>$&7蚀nT͕K^Pv)M90b噲aO|±ItwG.V;I_~`l#\,^?{@vSaÄXG,ePGP Y9 *R_7;$!&% M1d-'{^MJZC|G8- t#zK{}EAXD! Q vPL\g]R̟ҵV9*>G"o,t dx71N6NG qf i2jȍR F={&{Rt.0ٛV s knJvrQ<}c]/ zɢˍx$9J)Iv>%C`Ioʪ-}²|oAQ(L..-SZ Pt'mw`%5ò,a@qIDq߷r)ql#儅^lr>d{!~}ؒWR7Xq8t-xE!~G+Ӛ)z=lb9>W"/|棥*r@w׹b=às&9T] &铢O8OFѬ1xS6d;$twg`0#iۗוȣOJ_FقWxoSS-t j2oA}i U 8^/,Em#0H2!5X:TW3Zp4drhL3{c}c|OO>Y\j}חc@J@)A\吅͵C# r/wqx"A JMܚ^nD%Wˇk1ZD6)xGқ_fqjRrG}[h).1c4b/ %ކ z1~7/ga.|mk\.yy{ۊA~x"(81ng $ēhLۼUO^H$x%"9%]l 64 ۨ=KQByv2נ~^R>}7Z;,ݨ4Fº qKНu? ˘[RH,Y[mx"K㣙0[\% ízAGZEϔnYk\zoV'M +.Um|=N~i6E.n-bφ{yRO)`[l8<$%^Uf[T7f3AɅ&nU?zXv?ŷd0]+UIeAjhgP]̜&B^M}yIPŪ\Ma"WVV&%\m0SiԊWw*nVUVΜp$m[n!&{DCeW|؁X֊ZKwGv Vd):!¾-Kwau`ާkXH<ˏ(+#'Ro,@T'G'x|4 HGTqľޭӻh38F^)dY}Uʼ!PgV΢qo gfK Xt XCEZkL#B/_{̯Hd3zXzT ~ XmXЄ pRoS|*o.w*Ce}!:z xmLLDB2j zclM Pc!9I־6q SsC_WZ!BPaJꌎʭEMQLJnVj5L`ʅ!g!ct- _)am'Y0-+PdyJ*'x,NJћ!dFwbS@HVnb[_L`%IqlH!#;u'Fe/'ϗ|zcuSbG<ݍ"dlP՟5f#gt-d[؉ɥWUچƚĀ L7XeG=vzHM;s̎lZQ T').yYە:h.H,ԞAwcNҬ qIP4[n҅!8=::B?TS'}6=~ j]GkxSYQs6g_U9;U% k1BF\Pp%X=F:ܨsᅮj;T%-raĴY*nG?_oKS b! `~`}Hm-xCTຑmeEGaS\Vpc=9cn |Ϥ֮S#"&Mo3;!{͂!W ĦސEzWq|KY20zRI\\RL6̗~7h? /rmVٴ9Rc@kbVB.b22(-;xE/_%!_~clcXOE +K\Y,ʗhIIiU&dMKl=RO#B||8NS$H0|GK&/>48I*Ɣ &=t $3=$Lia('&t.Ua}}|u)?CbƔ1QbU7S*(W_2*<$z[I߂N e nj熍s? Vތ@/&T*}3ɏ$+h= u>BqyǯKq2ƫ,,XθB@.'.p>OM)c\7$ߣ"Vԫ]9 궼uͲUUOԃ z %hTY(Xf7 8m_Nvm/gVJm*\&HaJg߶qBxPcm/:q!Lw0wP&.#?1XSm<S2da-Fx5f2 ]qߖA.ȆĦM{ 0O6Ta?MM n PsJ}~8}'|q&˰m+930YpP8halYtE`(\ۑ*|ISbNJH!Owrv]b 3b˼dbSmvGmo- nGF?L2]^rRip zIo=)PlVT*]W˚a b|xAkʐ+h&R/e~ +.BkB5CVC7fOX+P3k'$O+iJ3o-}@%s\򯰑+fwz |_!g#?/Ĭ$概sً`Ŀ~#*}ۯ_y^[8BLMxً$5=M}k Bak:&A6 gpzzJnTA\%ā{EUyE`w(W ]'U?hğqL1gFck5$ @FuON[l7'`LL:OkG1`÷f79>kqmY&'[6h^J ݰθB֖;,$ԤJ4Ctۇk+YTM.)p_8 _ORuC!0'x3-Γۣu*.s塳isp!]@-R)4׆yJZ&@T+r\Cu f~O>Uy_"bU:';SZTR,AWvM@]X_6S? Ǥ6 GiGa} Ǵ@W6v] lUmGUtD<-f'"7->wMϚ 6՚NL6-31R4% ^na-,mDR^>2t]}%UԻd.0 4لc*zV~%:`qq&S0FH) 'x줔A'PB!<ZSosd?c=bӂ).K2KS,LA;b*g$x;=Jc9AzϔB*027@>5HJbٮ :6rKAfD.C -1zHA}R p`nC 檮S+;K?-^"KIb(}ez;ͺ Cds/"3ɹ1B>c]ysCX һI=?)B%㳚~-?V3jk{fiT7mM[kPKzNQ̲U"u, _־E;!4RKU_ZU"(#?.MVHb֒p߷RƝ7%]yC&c{u\ኧwMDufKZ*qHz9΅&~3~vNR/|9$OBC,X j;Yj+Cj{t%mo'qfu gD|\(y!z8hk3"*b3O*toi խ# #E|/ܱe)Z}s1ܤOj[Q?=mcխ9~&WR::RQkr3gnxghT癩hc(NJSR$ 3$F]یUguAD(is &J\ 1-wtdUEҟ֞vZ|AV~\دS*SA" BnB< IM/>QlugDjuqAճv!00 )J$c]sqpu@+7yk~=0²†#6v OษRR + F\{PiT!aQ?41e{; xqf%;MTE Ҳ"ꅢ0L&ќe=x םi9 _$uZh/R+ ۷ : 1$5P9D}pNau g`UgV]* B;MHkܰI0@;҂ ҝ8^` 6)_NjIgd/h(H}Ef8R^ Ǭ(/LI9~?qRfMl ? #@[JNfE'%|UOXsNDy:+z G꯹4}$/E!=}&g]R-\J,Ҧ1hN$.Fy`P_oǘ.!@LW8'ذ0&&yQ%ȟs=td-8*LFe~\l .V; fy4d8:~ eKIT(P%8>.Zx a4y~~t}d̽rl3?+=_%wS( Q,VL(+]t :^8SgLdOW*1&3-2p~o[c nȤ\}1K/ E~gظl$csAq (k,;v% )|:py. ZUtCo4Z}"K?j8mfyanOE//o`ai>WBngdpJOe#}kܛBQ1j^ |3R)貾粗Ɣ)Tj6*C+)B9J"t; "͖qH;}aؔqIꞤ&f_szTʀDS㈻h2mZ"d %E~\ >i*5a0M (ϣF>]] {KcYu& gTVܻHЛRw$:pXPQwa\]-!hպ@ԍܣ7̐n@׵5np:8 ʿ=IR`o匿t bǪ~A|Q ת$;u @ +q\m6V]+ZcccMq)kxrX?;ғ|;G+>llb\oצ=Acև %y#h7ПSG>-|,23@DB=ALjK Dr}M[M6ˋ^fw4*tj jn݇MemwN3$)=v+VN ncJ+gb&{QY*IԭY{gG]An\i4&Uvo`}@h 6yJ~[th o}4D];hⱭE.tI8}r2D&7R`U@ȚIĩkk!ĽNb%t2۴fhUvFVp-ƀXbz'6\-#_qT ,st;?u`6cuߨtu4mo+vb*u_B3I>t - <Cϋ[j]@ ~ yU=i Xek2N Q]zvYCs ZMÉ~< Nn{:c3rD(E 3ppj B5glG򖬭Dz+!Kdk:AqL+Tzi]OT(`.6XҪ'UˊMPjLԺ_ٹs." Qh7?0lFK7qIލoS]PVFGN4U{RQM^ cH8Rfz|SJk7R#⤷Jn͑N{-& U>>k^`hQݢybˇƅЄ7sO. eĥTwM ȾIG~kջJ^%^AgF!b$uOj _Tҭw5a?ŖD,Ѓ^1φgq,C䔦xv\*C4g"[.>%8sAt4oJamoPrO۩OUU2S2{q_/}xGHo$A;LkXI /"K.I8m|r,y^ɦ1k{AqM5OK"Hw;C8#>1X?YoJ(%M+`?Ti,8Ș#5H+`MH4Yxe5gf< /Ce\, q0~NA~8m=}AJ KģpdjbZPi,qS+а52Y}PW~::~MJ=KP- sEPI?}c|AB+|L Zn8uaij's@̶4 KmTрy QT$&]up_ʪ ЪJ)t*6N>뗌Xۋ[v T1Te>lON\XjLvgDU ")W1mudԸ.j[ QK/ P!S5*ySdFWE#Qvvnݛ+L)-ɇ`\$;afӋ:aX8Ps5It{] JZ;llBLQPEв|#igIR7r'|U}Ȣ}Xڐ1ȍG=apɰХAKU|gK;W3NFILD?|~z?쉛xh!/Gea+~pApǵ6F+Ed%Ȋܔ(qAZ: J.kb?)6E47,%ȐLK ˆ_&)"; ''t6AgAzzJn7>M֞Q>uJͺ@YBX p7[ y'}*vl{fg `f5/82/f zI"pLێk0o6ɸM{IzySHS dCylRme7dO 5*lW!ρօ>|lD빨 ,_a $qbkز|w|J!0F]YDX[6τ<GF[H$dI,B ع؀O%dS3%$y.8nnHE}K)OUALA't`fteV W  k6[eT $ЯA\&@͡##|X4!(xQNO>QRSMwռڂ%O=Yu@cn r.3?:xtLq᰷S9ZWؓƘwL_aw:Q t (Ϗ%(UjG[οucW`l&~X_,oHQ54wyN'z,c/TwdI*bqrD_ 5?^ZRYfg+ZO! 0$̯)F@:[z~Dk3%F5c 9 6xyս]i';YXZ~IKp[]7M3c^dz~wӿf'Ѭ:C0K){{u1\(16V Ų21A&N}V4]r@ynm,Y:VsxgF44|oMyub#ӘÇ/L7s}ʼS}׾Ʊ]KFrӫ_!v|eGҋ4-Z+E2/*~fFex۩T.%ʹZ )2󥧠%L,sL0yYPhXdxLGgN UuWpL Xg^Q3'J'aB7ypɳQcLhGɫSJi<_Kq)1 HN _ q?ثzוGOv\w|ʏ|a'B㊶AR?h*s"JG*q:io fא)I^Arfvu-HJ JMRuR2/mp<壎eu9E(/"^h<swxž_KR:θGs[Z,V7Jv>Pt) <QknDEh-KC?U#R,$~5ʴv7K@_E*0MZ1a b;kJ("DcXZ>Ϗ|Rs7{tڬ߻ C޴ Zଁ&T/y9,s#cNVBQ=+ /KT kL5J@EL](":3n{Im[Y*.&/T0Jsie4jz=_ݹIR\ 4b&%'=,gX™,ћ\iP(jh/%}p,Y=n@;}S>r8N(Ҽ~$.1'O.LPVۂ3=;HeH,~-uiOzhUPࣕ ~#u54Vu;] 5Iy!^ K LU"8;,%bq`v:7ם `+dM=3vWX؄31 -Q#!ג$k)(Ȁ-=lPpF[;5oBH':/~܂8B-b|M$P_6;+ҜBOYYg0wb[,| ϯ,Y.Z4CWvpmk7΃#m\$'o"i(jTThޗUͶWpu#&98ܞ5E-gZy3OR'/Spc-ɔ0ŪKbU2t@ShJ"/8 L=$"h!,yijasZGzO96ˍݕDڥ ҢH$[>>\X+D Ui|]]Gi[>h\Y[4\$]/׷fz~L\o2|)1ᛃ.EJϥ 'Di#ȑ<.Ohy(-=,nr[;; W]{뀡7! ǵؚQe " ֛#@?me,5E;8ΐmuu6]_%^]U ?(XdB'1Y#2-3@TuJ{oOtf`-[N2E\e^!y1.BuM2Z+]m|#()ڒ%p D {Ήq *fP}&VwBr0aaE8-Lj'9,nA}Mj]ڰkbT{L+he[/s3x!u [9@#u3 Z͒ӥi0Ke%P:4X%.v6`ՇA! h=l`N$R~.jNR-5ֿ D4}i[;cA*mzOHYR~Mg,W4ԩhlje hyr[7Mӹ;h }U]j=PB`"c<AJa[|!3 VN1{ rfv_Z/go;Ċt*cTCƽ SʵpXƋ%;[kqɨug=15T &=dF0 ;VNTN1$@n ztrU`!Us/Jr0V#Sxd֢x7Uv vTo#9yYo_ZKY_bT҆^=]: 7&WB{[},P9tWş [ڽIm_}^]J/ er?ޗi{3dH(oU# BO u!ܾ(L&G4Bug݆spj:UHGd|3c1Q[rB[?`)1: y.zvyy( ̓u. V//c[E3Y/FOϖ92$_NrUʼWey1LHXfi㺪& JwStzuGELd SI2b!D(m) F裘5OlwZ~D 2IG4F酝*e$]=Bl6#9ln=|FsY{P/M"m)NAl/zSe? B}QQB@ it/L/{h(rK;W[` yfmϜ"{}> g ,rb-WXSk`#S >x(L "r&%Nؠ`>RŔ!Yqh1͒Sr?}8PE65az#!X{ֻ-O/ -G|_ vG:ljot2BuWMGE'az Ǘ?tj'6;އʝգk>O?zʠ !_/@{>˕͙I͆pQE ͬ_߫N%u?BXd{YbDao /㍇FT*eְE:۫S P <{X!76;{4vGŵH$?vTB$}+t$tSyђpjIvӾc R%_"TSP_+{`sL=m( v4lj12gzG[+<p$3ցBCAȽUE[1}/`mAH ]G4Vx>Y ]k [%Ge_~V ?Q=3tQӷ:x^A%G,%.IMm~bs3-WK'K?bKDؽ}Z#!ا=6zex)T 8y/M3M䞃+\^IĐߥSV@B.ܼ}/I(ٲbbl^$€[.v^:뺒YBG3G[lNV@ ko& ;R?e%%(<- ֞MZ*8/nVW)7q$PJ{2?w1Ps\Χ$ <(QC9G?ZtJi1kXҙ@ǽrGeq<85/s ; =By-/zG߻.8@9uX/[<]w=gߡvֲN| BTb IQ(1Ko5; }%qT)zbN5GNl8 I ^p:R50e.y|Dz=QHrDXv=R*!a:͂ @YrdХ쟈YXs.Zs.s׾t28 !" A@zO*uϧi0H!uAj[%2֜qn*Dۗ_Z-h4;4\o:\noKwNwiУ#ξPfϗ7whP\Do y U49ُ>QV_DbyB3h*c։{er/Z.H[AXtz:ͺwTf Azr[q˗ws V,1!Go= @m][!?2)DKk70oՅRTc.wj.(L?5!b]PPmwd6]ֹ&sޗgR-.]?-g^q(s캢]x񢂆zu\Yol$ދ7Be,+;#GYhd&>eAv"B{?d5wowL{[6h(uLs fM\ WKlFn}}TXSr݇%LwL梡X "PzȩE(Bp4"Orgys):/Xva9hHȇm2gL GՖ6dS c q]7 &Y6$*;;ģo-c1\`aŰ^{e.^5dG]J[eCf!fz?XcSPK}J9AH7႞;=1%x+m=a?*+_@4@D֠[r\t~W\=h]$4pU@'NJ5+Xk7 *%y l :O=_r‚ѕ_-Pi $ZsM[EU!u OmJLiyk RUԡ :3.3oZyu~(Ol< ׁe'uRhK{{`4u xs}T~&:ysInaʙ2 &Mzϋ7=mIJ^k#ӉA2h"4{AyzyЙbl%lbIrnh6B(Vbx倪q;h0'sBlJh:Wy6{*Hi9e <]/e5.V?YUwÓom[2ز !`!%7ϬtxTL'ŵ{Ax0 cvf#U[BHS"3boNQi&a84^7;*_@Msk5q!ʗ58&@O@fmθPKrunS'`f><ޙlj`ElfSQ,W:& 65+>%߮6̷<߄t.Ӥ0E Jz\QOzZa ~ЌLʘf쉝K{WkDg;c1-6ǃ>(6}dqzTO:qҜiMZ] 8lB-?]N8*;FoC7l!48J}$g (ˣ'qۆ8P& $Aa.C dto.U,fapvdE_&(ZO jN=KC!xyZR*J>-ʼnsݕM_4 PxTqG.yd8~ň(@`R ǤA6R.!f w_ ??'6֟72@wU~ZcJfh.I}F\PwEH`m*#&8z.//h.냌7_MP)/v^! m,_MXHٵp{Oc, }]$d (}: bq?,jn4>bА`m1$ DRJr\~@abR+?k\XgI{x4wj2nfH)p/jf }.-~x4Pg[$ICdSZ/A@u5Y K<6C(CwvO{qIsyAThU{`@yH J?=L.22H~n:ooژ61*'jrVrm,_1-0`9F|JC 28*f}LM}Ĥf ^W;IW~ǚdB+]mY$%+]P:R7? 31ח+j|$s`0=#vԖsZ0Քً=UpڠK"m#B"zJEdAnQ+o~@( -*EvBŴI:)gڑ;6U'Ճ&z 甮_񋧄.8\+p"ov291B ,-[_f8Pxp<:Vh͐C &&u SSUC'UN ]P.=K9nu%eV'X%}_ Vi;C:۹w25Rlb&Me>NP^Û}xiq`INsLs1`q E!yxqşP7;DPes-Uq]jsƏDBZ#u%Wڱ^T8oƄfb9qBz!M%pFsM`uc>̎_'fPY "+ix\  5ɀ70*?cj!\xno%.I#@Z0wbI8R&S hfۥ@uEG`ɲkBf`P96R4: o "0RoqBy`u2 X7(LXjzf=<߱k<}/ {ٍ7(P` az\5b;#LS!90, 6c>40Ѯ \HhİD<@#hT#_)x J bF8aWBu K=pi ,W0XRu{svd~6ܡIMX$Kn],-7ݚ;HщI@UICn6*ڡN~,,%XH'%,\^8ibT器yN%E/ׂV-Mqd&yUojsCǘvo?^,uX%r:2MnI\P7o} 荍FDFݾRkѼ+=v5Fr،^hUb~ $X:!¤)JqO8uJ.N+ _7WÛMEkGHOwଯ#2E{ݙ&_>8{iߐ!.K.*#Js0F#=>k_B2 V1(WE+ns9@|NzseT;,j2<\+^Hyx9vS70,@Y, ;Ǘf[1mNܩp'Ŵo= ]'H]"_ze`#pKtUX)hlbM)VxvD;PҞ<"iObiv$ "[]Ra Cw5'=R4[M#X?5mh]LRqRq2n7oj=a%xOۤSJjd4%ʐ"eשÐ`5p0ö?e`f6Mnlѣ*"Z/1e<8/CS( F\1egHӳ+3;(2hi߫rJ peBQ 1Wo3/8h_ìS lY6d\.iⁱ&զ: 3 BӨ+hX.tnpLuxY&./ A"7/}z>HڑMHm .=6d'5N$; E8~0Hghlbsy 芼erT 68sG͜wS \4E/!I@з/>vO4Db}+ 0b5;IVL WKoJ72[T78T 6rs)@m7 YY]s 9yʆ'$ BiN_Ɲv ۚ7c\̱NQ#yk_ef A*O%vI=GB܎S[o0jc-l{tirp iKZ+KwyH֙*˞/0 ` Kq^Ǿ]!oŸmj2k8u'_P%BdLCn,FJϝ.7krU=NjL%?rq9׍T\~İD{M{| Бb weKm<խ'ح'uժ R67ގnr[/]( ;a +!mvC>Mzg3ᬑ=PiQoM!G{Ad޺$|3ͽR2͠X!5}ߗ[_rXRnO|4CB?-.ڛ#P֛߰/2teN͏r]{ytOh9b1UD+ +~P m%RDA웕:lO(2(FAD#G%}j h[4%\Kl#5c.&Oz>;R U5^(, _ܲ׀],:Hljh` 4?{tTF6YKrbj[?].8/@6;8~b71Wkݒ̓vCJmbɰځJIZ'3ȋrch}~?6et1Re~VBЁ}CS0".V| XDMꪔڻ3kVoDz[ "n"px=HJ#bʛBФEi}G9Z-yv'JP -t4K2A6A1P=#2]O_ kGLCIix{B5\ߟJ> j;MI"(h].Qj}g7r" #°`1uм3gfD-lx k8 zɛ3BcA|W M -Ů_K<.O/B%Lh fk=IIQ U`+"G@ϦH[%4Fύ~'TA<B@VM;+0R?rv;sܩ\ܸSzUNNs`ˤG^"RJ_ 7/Vm(^Z} xo L;=VDE9ϴSXy-'(Ie= GF."`!l:S~ɫFҋ%^ _x}RK?(nXLbYQ< &Zh v ^3ǖWVTj@;sԺ61#M9aftd=QahB{| ac<*tFLG%TG5 B'99 %4 ý;@'nsҡQ=S3ʬB=NٖLO Q/Ȉg <eZ+/kxX ,.G`کywvL ?Z 0.m P aԜ0[ jұhVr&mƕ}*ɵJ'\Sw}ܜ2-uŊ{1vrֈAYµ]gw2z)/4yuwösƩc!ƴVs';*0>r+QU\CV&%BFʒzsT)2\B\i^&RmYɡ.ƶ l2F YrONM6bdZao$ean_*0d"x5mCoPE_fٝn;.j(~?T`R>A|KyٍTk[mː Pߜ]v $g!vG7X=Hp{=ZlA\ou Jf r9S8OIaa=Z_ u-2I2.]!5PZ}?yLN I|_-~Lӧ—XanLN*hݩ:OUanH2)Ų7ؠm}#C/81V]%0#M$;'+֟H# Mv=ra](Or{lK5.j,sv&$&2eW!g>4=OLSvg|^GWr)trC öc5h b }\hD QؖwjpwoQ4ï|mæMfS!ɞ]fA Ī `CS.r DvE}^; Uڮb0yz9v"oλ6 FzIU{RkIa˚pF2Vs:=MU8 0B_5[): >six?Ҟy'*VA2!~D_ Z_B.ЦK[-)+s|G`D 𚓏u4Y:nj^.7_-j {xyTggHuTJ;&mlA2GVy | d!P H!iuq@{zWKYdglJNv&ՑUYQ$}ol Z{i&w nەt.hEseds 5nu;u_(ѐ}.!< Hh}/c?rkF\#ET:0wa0x;jL_ޗ⣗'Y_H: U{O~m&$L 5Xu1ILwP&r.`98G gʛ?W~+lY7  :F~ɠV_&?n1#VWH< |(lOR'hcvxc- ߉̻AָPRW(ï;dtfoH^{2UCueόۺQ+ƻK_yY2\4y:ȏq Q{>z3KU jv'6o&*"}o @PU>2!tY.ie{~g$k$0wGPxv_b6߯I6SⴭcSX 1 6:{iuv'?̈Y"jaWB6gֆց'g4!bM`I)$XmX .psͪ0n vGGԳyƧ3$4H c)ʫC>myX@g)$aaF\(.cK3JtQx-?LOF׀쮆} M~&_\kU7U*jD"ZBh`"qE*?XM-j/PP\1! R ҈;NJYO8 r(woU5>F`R&~bJ>=@X凫{V"i Z&N@0:ݰ0u3B WKw|NAf2vҍ1 $8,K%_!Ӫ~+AG!0iQzFK1W \pN8F, |H˗Sڭ0I\L8UOaZ%psWH }ur*]ɩ|,?Іa0ۚl\>+aZ}n;h~ׅ*Ҩ?y %Y4zxhtauMf4y !b,17#H8,^˾R}W {(5CCYCpWi SW=tDnPS WyZ phX# p0k$wU{oǤˍMe )"Ǝ,gnY'KXi$nI;>ݖ`,vt`/1k[\JH/ &~O$~;ASo9@E+6ӿx63,$1ɮq꧒p  _bm"DP=(ӯw§E_Zfݕ+ zixPT߀e@!CcPB0&/B[*{q/:B59sQnklqR8fe-^7SFBG}Z*/kLP"&d@2g$n\OU.c,uov ;Rr/LЭ[!"F,HA'RVV4G 1dM)oGLme\*9mU{>5X&'qub dPFT]OLbp>{诽8^2 {&7+⣍&s]~,;=Op/!S$DY{4G t7rak YJm6'ͬ"e/t.C .SW ` J)οS󒍜4Ls8n3Mvh4d~b!րfyR K\HH/.`wr{TSNou!r /SG403Y,O|5&ؐøC(8X{PvιDD\uD0~2|`T:B.$uq 4ˆXO4{L(k"`EļӂUFaB{SNeLp/+O; w|.Y^3ԸK!tF5j\D N}:L d/=WMTJχu-cw_ SK nΤ[SS񑫀D͢0)~/4pE0wcX~Sydf"4bAŗ~58| PIVno.;jP_Z^(xxг4eAF KvfSe*j%#pFثӬK2AM/ [*lP0rur[Y]"byY?Ai02΂8&Z ?Rw4蒄PS $OO-߄ z.3T9p?NШ~),䒊A5/-øOc'u}Ia 2|QT_>Kьgl.;r+{Lŏ ? _hֹmÌcKéSDW+ިx:ԯnR./#Kl!Uc(d:)=֋L*ʁg(vww%UP?s|0*+ ]zeϱ'APq/Dz2yQ%=H\Jl챮4~F,y`A@v/tD$5lؤ#nGO拱!X6)5P>֠fy_j(iSP4DQ+YXTvN, 0pJpY8:Vz㵉E~R⻲́._L2-4Lb+ޤ&ג,\iga\pwD573#81:/"_qLנ]mcZԝsie{'Ef^伞,g@<5' f17+{tF6*pUk]Q2"k^9~tȌ>[L= ̺ xH$b 穡9K<F. ?< ԕ:Ъ*CmWk~lc4BM U(^j :yT8| C)9ԤjH' t'9I]DG'#3q_el,2St _xt0o:ԡ)uIu8kcJ e$s_n]r WuT?uͼm(Y"L);F4j v?VG RBc[ tʪb/XeO_cD ݳFsofn-p*+㹜Ivl7,fAr$ G39w`cqT0j&ʅ@6a"[vN&{sn0#kx?Ub{0>nm -q k꺭,}El"VAN;%z^OGi\Т>P4jSV~(4vb~(n\R’+5@x @ý0>=v9k]o 6C*<)✐}[=-чd$ E˸n g}lc'IsVF| # B5Fd&_{O4S^).a(L>zRBbmO="'=)QNE\[~yO.SS*&TY)69Rə"O1zMȗղ(9{!鶳FV`ʔ<-p1Ɵv=) ,^wQ#`]"G{> Ǩ3|C^!'VV*:8[Pqg S'N4QBc=#[fI.8JPMª:[>b•n0mѻY  t6= f5D$Zx{P$ !(>1})GoF"'a ZTi_'{7Tz7%bЩ2e^s7C4?zvtg!̷lT)Nr6#B87@SlYGt`:xj7~Ӡ&/kY\ife dv%=/S$>7끸mwjґE6;-*+neE/fQF; Vli$3CCmthʕ+-Ύs)ɲX7FR5a7gU65[CIiuZQ`#{26d;-R%mBWOIVވLh<%EMG@U t9}? v3T3c=!)d瀄` ̒Qxv=~(Ò\3  q i~2R];<0^|W8c4ez$顶z8Sɬk 89n H=/+MhU-Td@$jkv{~p2qm؉|9h?(}Zui?x7EXc9 `%R(Y15!Ad`a^΍hcM!_"}piL%ؙx.< #"^[)? xk`i^Z *:_*Aa9O$qڔ~Yl@yAJ |bng V <](5nk'UWIYp)=ul!cQ9(<3MMpL3IʂP0IGىQB+0Jh-rzf|P՚BfilG XS#n*x :qP? 2)#٫"غ<gbѫ/ Ie}Zoe-|Ƽ)}T„4_vydk8Vq*6G\pZ񜿉:p+Ez$O+f$%(O('5&()68lx!W7O bZJ9h|e9&AF] F%X\/`AcL )q`ES oTٚY4&*bE}ʈx.Utur#^9{h,?iqzk{l7 ғ+*|nUp:g6C|W?(!d'cPa80 D˳_PYW1\SpFd5 Sl>nXͿwwT't%͒ cӈT K%K 5Q))PS۸+&%%J?HnA 7y畾6eyeP%HFG n{ `iQ|秗)bײQ|bQn:/>%U"HHSaa꺂YÌWl(N_!b͐ڧjƤz#_R=u@/l ˡtF&ХF\L6SX?+ .u|DK?8X<鋘3H۞ituya JE[ $`S>Kpae|#W  ×}MQ-!!5>B`W,𸼸i0ϓ)*hv:5V[K?#ϭ΄5E3 UӡY]N氤#Xyމz;ϾtT6 aŏP\GYc%XcH7@ G D2!3E/r u x-xxƢ_bTDM$8<ҌEM(Bܚڗzm /k$z =Mv+$Er/(@t?"nS7RP@ EέV8{,g$]LbARBMER@%ڠϨLo #7VV]TAg8^=]HQOxWE{td]J瀜םD-P 8b*3lg^ɑcREl;2ip6r+Ɩ. C4.=n`v2UmkCzU5>~!o?LhFk*6% .e`adEdU5ӓort'cCgsU)F@_ R.%>M2iWr:)zH+&d9Kʊ;8,"G6~x.iw\ n65 I%QV%h?ӈ^+]Gz!"9dwUQl[H,ma86HPM 7npϪ@aY.m\Z#9fM𓾛V ͳEF5˲u2إ݌~rm~6؇ $˙ ɥwU+}QdGZy (/qE{n%F/ O|۔΀/p|^5ggq8KLf $`Ҕ$ǗFGƞu$fe>7Oa4Gv +FSz``Թ8Wp^h=ożyțԤ)Fncɀ^Ĺp!meօ^B2:6rxNnf㬒<9,rAdִC:'nkBb$0̙lbls@݆Ts:0v qZO+~+d;ajxdrcq~YAق+z9L#d=9 ik4y"t=/I7΍"kt <\FV 䞤ANV] ޮz!B.9(|$ !flMK(/}۩#ctFU.8cI G/6+7)fo0RYzZW\fI:!Z͂>Q:IPPn*Z)_~|V .{u+9?aYܯ g\ycV=o5G X8Q{IE_/~ V϶ud'm-LO-N@DY3UiKtXEíDٚ["53 SS^NǢ}L_4^o74ՏF|u 8OTJ (oήO2|ٕ"w{+ M wPW+l͇L2fC}?]P'o?yKy;8M)D鎃ogF{C#ك gl+5τ{T n9`d5NJZ';lBQ*hӖi ־>zU{ʔ2;Q:r;?`$Kw?X{w7pc>=2-g8-`ў?}BW(uC4j}FS*ߖ;>98eW0Orʦ$TT!2]|4ݟqt/ ,@3gFù& ==v}]W{w-5FAR"!lu]/NrOM,7-1݈Z"Gnjq33mzŕNcT^o{57iLtJYbRy5C11?PH\Cm6e/5}J퉳bnO}*K ׹ь1/w=ՌW`Dbco !0LC: x%ν {8E)5<λ{Ud:Bexx߿Bv>0 YZlatticeExtra/data/ancestry.rda0000644000176200001440000007465413574414646016172 0ustar liggesusers7zXZi"6!Xyo])ThnRʠ3G\D4"3a7. ʒ^NfHN?eҖJ DŽ/b=?" `x]ውDjf, KI) J{1Δ6˾QR=̊{XSeD)΂z܃x0ܴvi8 䑀h3Bt+;?Y-L$`h/ 1{LPBS ?$dhzֺ4^NYfٶZ {b9٧xRb5(%ٚƋ2x`Vů<\0Rp xsIZ=jXʍsaIǀ$~Pn pfe)4NXl~IL#JHWB}4\QzԄQ 𐞤ZQDGyf MG4bys V*#l(]WB\-"zm7'rʷ4b-UwGǍ_P:FھC p߉!ҕz.TƎG% (w wH~ZS!%x?7:R%O1/pCLߑT%"/3+AW#mà64ߗ Ed7I[&# 7$sQ~pcl 4w708԰GL"kQ1tMւIwA|̻#G>Q;Ղ`]iMG5w;NO ޶߃A%pb8ܟJC`˷|#k;AיmĚp~,1o^+\Ys'+O={}z%֔ni3L/I𹤋K 6f,ymGUhJ(ҭ(^ֶk:Vl+F̺aQh\vwUrZ:{\곇fClNu8g%h}etiOjayZ'zӑ.&'쵵x0.'zj&>դI]jػu9B%F) O*M˅B(BIXg Y@^;f]of.>I^f0s؆җJ8x}]5b@w:#U4v1_U} FCgSċ~{>`*9B83u[ /Hy:bRQ#^MTxASlBZf !kj.E~>"lJXy@eY XS c_t[g XgoMu R:!CGߛͨv@S{#^[Wj})@.g 0eM}g\g;<Ո`9܄N+AH9xo>8uyb76ނTK:}J{? 1E ]vbqTȓ́ u.@x\YJYfC6~``?Fǻ9af+?*JAqYnN$ CxƏ($vh.([E_wo7T y4DT#cDD[Wutm/4fëfY1tЭ^i1$:}uҗtWwD*C{2NgsEy\U)_Ɇ>]=F0q% +Ir=xOXph a}C[%:~Sp P78m郁4m۪xwmy+4'P93.>CL>'_ D\* aNb^qˠ#,ǛGDǀ~u :: I]؃ a3zJ[7Gk7@+^`X?r_v b한pY.]l<,ML俣GFIGsCsYFtazke2Ιp[`g=(7"|\̈O$ Ʀ0 R\;P>!'Պ|JPQꑶGGʖCmAE /SvG<1di[0@? ,z8OS$v0<AIG0?sbY gѺsU{`0?Xӻ|#^g#C +:jaˑVycڄ]צMH^}IO&r4H# أ+iBQ^4 r3 *8vt . 8"~n`_yVcSE +SҠנTO$myNf{%:7,0ǿ u N$ʪO'"3 L\%`OmApHf$K5M^` ɋ{Am#g(ɟs$T^4.$tjekpw߇rVQ'VpbBs~b>L<6JA$xx:)Bӽ'^nj|x~ Ф$4K ]8A Q#ZfHMCk=S&I'"8C` 4hRmeSc I1Tɤ\HX`!P$dXH|k),7_?&66 Y 6P1.{M *ٽRIGQyii?j/2N835܂˿[*Ý@,G 5- mouT`7ZJPp=+(WV}j( Hm=%1TYANr8qs+xk"c Y6}㳽XU΁s \o4\^Lsp$ Ch9)V|P}jx,N e4 hPijmFt̢C5E,\!5n ˤNQbU~P+WGp?2Y{<̢|zGfS6 S0%_K?,z ƘCY0UB!t|BVs)_wܚwtN{Ee h 8gOXq4N}{=Xc)* u= .0sj|KAFar]3߰4?n#c?HŻ") xX@kx|CVbB%/t岰bP Gl^*p#hG,qdv*Q*n\Ѵ6 L7I 19tU6XOZ`z!OATYyUCw0nX'7i_@=J0+s>+^hd;e_o~(x+F?ybt J$5J]t5} dxJ؄JFB1LBa lҷ]&=х s(~!<^˼pӾᔁXB~O7aC_Xkn3u[K﫨9#|lexf>ݖH&0Z4Kk;'l8y'.ߦXMʓ>iT;d)b溏@|X/EɯoEu AA邩bK)p@W7Dߪ`0&YٴbYk 2H2g> =w竖cO\~:&R/bnGW7&"`O=SKv5N|W.fs8D0 5]&/^q Sqqbp>\yѼ1] '#.c*)r*6RN7㗬ʻB;OnFfShWivm?J#!2 4M =ѻ a(&H~͑PDH/BV7S32# }Ac} `q@Al^e/8Iv.نQL>S-RSw(V?9 t/B`=l`1oծ= E cIh}@FeD,o+3'5ٿxhyDlF2Ȏe(Șw~D1lL+l@%b)azZRQg18I OCd=2)Rp!m7=V2,<:ۆu%"a>;Ҍ4c{+<0fl?A\ 7PݡTbRN, YN+ȞK/@#C2+tCΏ..D;RQ <{0Ξ~` #0Ucz1fN(D+L3a~w4ʚ>i+PܐtTOaQ8$p${u[<[IYe,4'vo7s*A<8ёH@k֊k(g}/zt$Վ 6X|'6vG4;Pڰatp*OemMrF 7$M,dE&yy:*娇O;MvU'GjZS4N'[$#TxӼ1:[7ZI~ H?;#Z5NO^M6y.Ӄg67 'ڽ>&Oz\\&.&ߘi佰2j DI ر3rrv@ksk-p6&mB+%"u^J.\Br_$T>y ״f>E 1 DaM+ tXGOv&Q>&;s%)Pߤ(V+MUwqAôCmri4 wJH#豿wV]?DY^AB!I`/x)H 0Jzu}T{s|c)W˚bΈd <纅%˜#ܨ6:~4@Ӓyp`LL mᷦF#qp2nPp4)VJI{inI[Niz \Yx@t,`~q U @ߚzTLZ[2TYZ2IJ:$(ϱ'xe붂x*VGq11j QSywpxhRRbF<{5)dݑ_&RD/㣤#Qږ˰H5(ZIo׵K^qQϮ=IÁ g-V95O3 qQ𒅟%1dcm_[_n#Uuba.$6^ %5 /lHx鞰JiP0@IG`9&见~Ruc{~cRu\7l '/ǭ0nAk,sIOf$E/q'zvnZgf{/Eٵ"O #SREI>Ix?wHLa8* ́+i'ⷋ ~kcI8tpnMͩRXu8p;7`ȅȽO_^Mk%%TՍO Ud Le$PQ:Ss }!d`&/n1jTLALJ9Ne\úaPM/a5Rx<{h,%J N\G)K۞D0=s=qvjƌ$=QkŸK oCF7tZMyrsp9twac]( rK%$:WR[_Wr wO=*yU0 攒%]GIz!2TS:yP=HXZ[;^nrb|R,l Kƻ"mZ~GPܛcc) I#p*O5԰Ǜ]Cʞh"vŎ:Jzk;c`ܠa[:Bm ' %abA'RE'[~M# 2YRq} `4}R7A20 &py}ZANLR .} |=%TM&J$gO7ᷰ9U<2}N?po,Òr( ' $u4Fz6x z~ 4( TU .Z6Ė]]αI7郐MmoE;dj ng(<¯2a9DiaV$&Rb՛x*|[v)tio:P&wMp}c{ n8.Z[ q~iLWVycO`2a`kt jtFDz_ADHT"W&n3^49<@n?m7$<)Il܁7V\S9ob$氌!#TʞɦkG\W0)tKwSzD<E _:F~4g\?W9-bBێ]q.y_pM[y+ W+;[wA;zU˹Glezo?>%`3M.Bcw~]\g<R>aW,g\yQ`tW?"8PFXhUvEChYp{S0gB.̕]ʜmkOlyWf)C6;r(v,Z0ۓmDds˿-Nt^3DžRc%mDTJ2YTUMN^&W_rbzcFE6{;~e3&YhK Ё50u}5HA@`U:;%2)iȆ?;AqRH+ut ven`Bpd4{coX6mkt*L@#7KvoAF7T6Jޞ3`64K͏^\ N3Ms>=wўpX!@Cx%\B6=o¶Gc^"u,SpiΈn6ʋ*.oVu3 ߽eQhzq"B\ehfUс@ %$9FVy! #]%5}~X47v{ #-pvlƨhmDe*)R:+'Ѵ#W[zSGQ \O?1TFT͐ed rڷaK":[Y5kr|PxBcM!'B = 9QL iƈh\?LKDDӨ5GHl#KKEh߫3mt 'J(?&ƣ LH: 遚^)X.YK+4F)qnFN-v=\Ojbyئ;&/>VObW\d!u AUGCaJE^CFZ8o)~xHl4 SVGd,^ئJ p+oӀuNnIJ}-ԕ-'UFyt0MMcC=#ZF:0=WM$/8`)Rq'00׫&A3K,TkV3gi1#өp%7i)E%%Fc)jroa)9=i1k1Xv]ߢ$9Ra;Sdi߃ePmfI!@%lPTj11UEVZ(?Ѷ+o MOOtCۤ 'eX XDTꏈU^u`ZwEօvp?hS2 =]#t)Sq quaw r Sg.MZKk?moxu|>m (AζGGm>Dr$B1t&d!aptDKGq OkNKW?T#QuI)fG@K:$@퍀 N L-1\<}=XdZ+TWnf<;_͡c+2eXL_A|=,vwCN?7g;N[u3TV!5Yl_mVw{'!~Vv4͍$N%_Kz: >h8RMgQKvB}b7JuDGe,gWMd2^%'8hߤrq*&gɂrH"= ]GkB8V]w"ґLR$9h׀h*iPXrcvAz&V&Ƒt$QWpIpLO~Kd!gT`FX!͆ϙ-*P8@%3IGN]&eፏȤzJT~=YG*=S,@c8+qc0v$RkA?>HERE υ(= 4Mv$@k̫ۤMY` [Pe&fe^z9ʧn3Yx6H9ֲ#'_u~5wGK+^uS]˔ͽG<;T2e4~O>t/$3g>W ڐ"!t|p-%\ >/>A^EQf+CV8 e4:7v@wvhٷhh;r2/T Ov+:{ @aG5k'u,-Geg_KesO30Cbeeyv\z^3+hlղ5P4U/wIV'j$K=dAT1K1 TΏPJr`\L2Pq?.FCPM!L7!3(%fV5ބu O>X ߱SKd#ITMLEam60(kPK6q%.QPό}cqmȭ3J$]*nJ{BT2g5vq_?×V巒)nS;]BpbcEhȣ27/nO61]j=\F;Q)2ʭv Rj `P@P9t+/O"93Kr\ bmߌ5nܜ[ORV/(F1|RU+9^\ﹳhP+ W 0QãLUɀ,cJB G rI+Cs}h"Pjxm#g'yCs:̰ÉW=/e4{wQ SSJ?bPy"BOFAJ.n.=^K RΰQ3;lSpn>& [ J!(Ib#CG.a{\iłaX-(L,YjН&4_89~lLs>\ɳ[}͐vhu#y j_Dx4nXD믜)Hm'юԯ)\3nl1ɣ$DXw*\揀9 w>j[qVdHhKET)Dá{za/ m. f7}QRJR,FLVWhvS|5{Md8>.@X8MX'wG T2@iTUVY`g9 +>;sAK/I G]a` Ф5(S+#"RQr82u/@m WN rTC&vq.Ǭnzk@=q17e#!"tʇ dQx: /JELY46;z9́[ƤƬ|-߱ڝQ45@nB C@T($5:A=&_DUJ i?4d^}%#_Y.嫨8|m@$ lEz@G,e<<ݗ<AUC`jO`(w].XRUqx &n>a 6B[ӻȦP(Z7r'lUYpf!ö0 IrVQž]#Wa+1f.}6{%EAeJj6}K?w,51bd;#_`^Xy&usa)B>T>:-e-%U&Rk :f]?5ȯj%'}znA?)mXwDz'4S*Vv1}$V]G,R7uWLnyJJ|lQ;39`+2=wl3w:Reз<>]MҒgCI"EӎE[e`n*,][Y"ipGz}(LoKBj ʅ;6¹A"#ДJvetn +p /p8rzsVD֩9֢xVP}Naa}ve NJaĽ8x@޻IPOƁov/.6gp3nKU|_\&jszI/Fp1Y!? 8"&|a%r23q{d8ЎΛ~xؾęYV(] #3k3X2DT8fpsZw(D8:Kk/|h!G A \뱆_2lʫíyB+ vP 滋5KxRRGBEA !3ŢeLxur*>T!)T[2E&;w|r}@ bl^Q㉧ܛ<PB"i|"BJf.ypb)Xؒѝsx *<~'rRbic-3+Oq mC`CǢuE<ĬW;0b}Vcq_n1nShwppa=e.<&OEM@i+j}wޘkS&b2OT1JDĴ6I^ aG$Z kр6K L?l yk3fKhOI_ӑ/8|X yS{åW;C|APC 'G&C u߮!Sl gHeۓ4bknթk I[ xJ>YўO+S?,GVJ ik j7.sB;D==YBVص,OzU927Јv,1IE|1,^WQB90Rq(rRN.10wB$@gbevYp'r*ݶk^X.؁8 2Q ṇ\2k-4WuЫ>'@x!J%ضÎϹ_|] [Sw {·:Z$8˄7wʷ%P'b܄b-}i3y~}q >guK:\{d.=I}>V e;c@،u#VǾ/)m]nn yUqF,yvq =ot Yn+Ǡ l85HA^F]ux 4|$!ܞN1X0w! &_)bLh8m<ִ'},Ge(Rh(,$4 r;%F!fԱM~P qAI1s3N'3&Ne,d=$*I3JcL RXeA Mn΀o2(tLj/4P4@D|4K2k.VKl[{7 Mܗo֏w8_qA~?Aqn皸(K \%hAwGPB3łALu906&^V@-U8'Qp:/!pIcQEpXL]`"0.4;]1KIԿct^$ȇ3OMPa.=OnTdiA]P*Dd%;Ѫ EOXʆ"uXޑJI] ()8[j)ZڙTBYFx5MlˌCyZń+fu0}zUD?Vcg(;-ǽ"G[Hg`5=AcqӀQ_B@go MSᤰEslAL1s2) Skq?2{>Eh -)$\LbnvAS˲"Big<nyBnTQA.,cJ)V- >>%2ƌM05ag__m(&cDȼXpc!"n/ȸ8J_:p>aR\ kmcR$H~Ť욺 fG)/ <(S^%25x ]@xHzF%&g 7}#+`>Y2Oݼe\雯U!߷/[01\J \F(3<:hݸYMfY7s! [];:)״] ~S܍敜dqYB`DӐ{M 19<r>xbLϾ<1VTP |JQ95f `C9uH)ך)%C7 .J9?EBL#%"|cc6@X~wTeX ]%&k$xb J}<$B@zBW*Ca(tƽ9\ Z8tK{ϡiF~6r˫p#*;F?ͷ^'ⒻZ&>? -ˬP k//ɢe9^{@X%rvdvU-GBG5}.Rv*%-}H+ǩ8JQ?Ơ%Z޽QC:}*z̑ "9ou#@-8,X-=RbN}i3p8R-}ƚ+M+}{}D&_ !֜'OW M-^@ w݉ֈ .J'Us6Fŕ\E:M{VY>ij6F&ե= A$.([P'd HSj)(|Ok\Hv^}+~?SN ҦMw8XZ{YBKO֒J3KI [n>Z'E8G8F>.f3hِrUF]~+\._o*y5 Ɨ4Y{͌!0}|w{WGkf8j*a#>4tm,Pq>)x1,8iZ9~wĥJ\ɯ.$!wgQnRJg!zy0LTP- /G e XN%~Yc&${p;ФQu 3]6R6v!8еQ?WU?% gk;&{0 paBLgG\ 5)J.=yndQP IZC':b"ʚ׵l4BCHgUdIBܲ+UX[DSP`;#!: ЏݛAΗϚ& ?Z;M.iԶٶ)+-o.q8YgTtaŏga,m}GK(j{E*eC9 ?BP1.h]a3HKYͯLͩ=YeHuj4vX-ja۹d3 (G.9(38<̗i- 8#Q)|)ҶKh =,\R}j੘ u qSIR!M 6 ;f#DG OXvP0W Va6UuEÖƞA *;Xxc4Л3kG!4P=L*r(IuCbU\*$NC} K uSjʅq٤6 3k59b>EMjN&?b_eengKxSӑ Wv!K38<|/B.S6&R$j\6O&Qf^E+;A׫w{rminu+"H1rbm;/3>g=aeƵXjhO? .nmwXSJw{5}:cxKT/D[b|em>dϨ+>f 1.&你Dѷ-%̄֡.}\Y)=1s~dfLbx,!>d&Y̅$ !_m۩O7C{8+hj|6^c3{\f]e%ieN0_ydh*L~9Le^6`LA/bi l7_{.ׇAf[BԵgyvʫ3z5G{PhF?2 2'W}j:Xl{_M[uDZy/!cn߇_Q _߾[ &Xeٖk.ugZln#AC \IJJAcCٞz^ԺrJB`8ޖQSj8uo2炦 kCY>8I[0hr% OeAr}Ó _ Qs. 썾ҏQe&ϳ x/_ATzhϊGJ+G%)Q#Eѫag60~3Ux=XCI4p?e_iXJoJr, l035"5OW}ƥTn'l%OD4eyqF L4L =-ykVp; W/?:5FcN*$:l~`3g^U5  yCz:]bh),)!u([HC1oU&>kut@CLv &zmf`,f "[Ol# "#.)ȣ:+ c~T1G8LӑT 8`!2cguX9%nqR{D,S1ȡ׳s yVUj݉(~p`g2]9I(5-ahbh.@D;$:)[ gy0Vbg4,OR5a!-߂8 uWњ-iK=6 Bӝ >P{262Ss?M  yDz1[*zsKBWu*xA`F,l\ ׆_s0WZ˙#hju4=^&@LJuPdbu`5j1{&NEO!QMζK;HC46<6DՙQf|)#\6/ uLb7mH5hl2%=mh0엽c[U]=@ /V= S=^ 6n'5OXfsʜZJZ]3"X='o4ff}JPvon&|4ٗծdUtGtcGtW wp(m+% =6*>&P-.hL{qf/;!x Ny5{ILCG-FkhBzQ.EQ Or$,1oZ_+ʷZ pň/a8g,Ig^ fF$W;w_黢'AGǡ/舖 <ˮ 8saFn^$b!*}E8S{18:MK\EJwJ?Em{Ifj.FN0"% ɂ.%<:" !⦓RҢLTSTEԥPsIfm%E NC?R?CNwŚ qE%};TVP ϚuF~ky!̔s0L/v"/;1):p-|Eg{Sx~{}-Gv5(R"UeyϢ I}+P@񸪮D?:vMѳ]7Q%y:&N;Vt 5=rHlBYED%}"JҩQ/IrGp:?c %։s/)|i|gatFy .Lw9o0䁫JNn8̈=( ~#9*4؆Q"RyH4w:*޸׸S>s MbWI:Etrjr:,[ n\51|lc3 N0LIr=}pN&`PBY@ j̰c5]PL@;DmC򢌍idł%%%iWW4S=bc)W9{p64IU]ݼ+\k5Z!++0u,L/l_=ړ3 σNI[ֶ ÁD4BtW Ft*k5ݏN_Lߘp+} e# a sK=3*JEM2KHZ]l! BY4L- a%to| !(QÃX.h {,ܯC;49{qY{x/Im)lRIW|-D ' :ʗTQ ~;YGۙ>լh,U榋CB7hs6SHFo;m3e]m;'K+ 7ҭ\H.sh YLk0U5~n*qY P0rPyM n\Nf {4nxJJgt F߷3Iub^Etu7YM=jṴ6#3R(Y>,s$kHt|II"@d!ˈ -Xʍ[b6.5vz<-t9њ`_E\(kO6W&L J |QV8@-F.^L_|7Uidͳo*3kX?hڬV51ӍWLiԵFg/CTn^=06K8X/.UGRcgh\+<> ~o{JkܾjQ|;퓘ަl$>3l#T݊c<8*I0/qZZÏwt쭎vӹOڀfC%%Hx9Zssޢk@P:QCs!YL$x:YgtM; L0l7"vHta}VK햳^z~vunD[*ݣ%빇CC3 IT]{Y"뛿^Ab>ǀEaN3>S ,8.gQGJ5)L $fw2 G7R9m[9SGo‹EgN: jdgP42'nMjP7AeN&nu&#~Btn8ވSw+v^J Wf=FV C,g0Cxm6u*58+ FrY2v,3ZWs}q;ӽSOb}?4c[.IZɧRRVg$ql#lFt\ Ju ;: S-)ߣݔ=+߸8kyYQc Ar6{}ol=\e]_1d^IO?ػa b M&vZͮ%@o8Clٙ8ܛC@*9:4 E*P!YktdOHpr_CR_nkfJBw pF'ycǯ]CJ؅L_mlh(ק VM;5&0@,:]Hr*p,iw{\$q)2J.2)#F=XoA#ʚIbnQiu߅!aH?0:/OBqVM;Za- d;RMu%2:Gzv8ь^-KT(4fE"8T׻q,#kW'sWqq D[-Rq@qG:eNW6 f.^O՛@YiaT798zo(, JPq̕t73|q/e)-I:D]WJA'DJ-"46Cb죇E<<^v}iz7_dϤqQrWɍddF(6n6vz~ !={ɢjX}E6 D_GR(o(#5R;,͇--(l (CggU/% ֬{hD%3̤Wtw y6 O@]P4ߐ6D QpxXX0կ/j4:*^]c9bâI_@9Y9fnr#ZޯBH~LGG(gIO\EF]VDQ}n3^ rRiLxLaZl@= C"m&UC-| Wͧvf6w°Tl›йb(,xP63bUI6y,~܉?.z]?0(ӨE@:N6 6kk(0QMo&N9˱ S) w>fzeHa{;یe 񼳟vmQ V3 t)Gy d3y$#~han-U$x,{Pr{ЬC??t >r>_eܺ85?2Sa(h*^=pY҄R8yt|iz*OHt?l@g}˰IH-xyJ*4) \z5o\ Ebe}y dvnP"es[k{ՔRAl8:eސvV)? nVZ7JqnKڪ=օ4U9s}DEa>?rƹn.dtN3eq̲Z\XaVۃb R0x Kd '/jmVdLC >4N @ c^ bW&C-\XAv, &T*L|^} %R>K^T*^|ju .gտ`֤5R.()e)هI=>z*fyLyK<= ^%5.K'] ']a OH< 0 d;2I.^OPűn=0WA[+3/FLI﹣ĩR9V|A0>1~I7t9F,8ttvg;$aҢc"yc k,BT.nc'@<-"} :v+#`u=﯏gZ{PK,E^V::K T7<:Eޮهz-nvZbjiDEEPlӎƙ)z^uHˌjŪƵ'Bfn7ݽ!ةPǬvnBz%#RZb3~wE~"6c0Peއqn`R^_lQkͰ4oj0$gt5-v1P@.HJ Ao;{y8^]p2vޘC\s \6?p1 n\/'A*P˿h7]SYёq|>:\+zH s0F N7 be3&2drlۨK&aCl YP 9iPW]c&Ny &s۬/E(OLQsb%gpîLd96۽ 6-:́׋?K'3H{ب_PH<)ub):j\u*'2MàYJYVnd:p!8oVSUHU)#ԏ5IJ&@p` ֍R ua:k Q3`&fsn+5Nhgmij8B `*<c SyXk :&s@SmHQGzɧZHt5l}hǀsIw`:?H[$kehD7YYRY7-Z6ih+؂#=i ms=/ni͝Q>0 YZlatticeExtra/data/EastAuClimate.txt0000644000176200001440000000320613077627550017053 0ustar liggesusers"SummerMaxTemp" "SummerMinTemp" "WinterMaxTemp" "WinterMinTemp" "SummerRain" "WinterRain" "MeanAnnRain" "RainDays" "ClearDays" "CloudyDays" "ID" "Latitude" "Longitude" "Elevation" "State" "Hobart" 22 12.7 12.2 4.7 28.1 44.1 576.4 90.8 41.1 177.1 94029 -42.89 147.33 51 "TAS" "Eddystone Point" 20.9 14.4 13 7 30.8 78.4 756.8 103.2 46 139.6 92045 -40.99 148.35 82 "TAS" "Cape Otway" 21.5 14.3 12.9 7.7 32 107.3 952.5 141 25.3 220.9 90015 -38.86 143.51 82 "VIC" "Melbourne" 26.5 15.8 13.9 6.8 32.3 46.8 654.4 99.2 48.9 178 86071 -37.81 144.97 31 "VIC" "Wilsons Promontory" 20.7 15.3 12.3 8.8 33.8 125.2 1109.4 137.1 22.3 218.4 85096 -39.13 146.42 95 "VIC" "Lakes Entrance" 24 14.8 14.7 5.8 34.6 43.5 727.1 96.5 64.9 157.1 84083 -37.87 148 43 "VIC" "Narooma" 23.4 16.4 16.1 6.6 56.9 23 991 71.5 81.1 126.3 69022 -36.21 150.14 25 "NSW" "Sydney" 26.7 19.3 17 7.4 80.6 54.5 1129.2 95.8 104.1 126.3 66037 -33.94 151.17 6 "NSW" "Port Macquarie" 26.2 19.2 18.2 7.9 160 70.4 1508.9 113.6 117.9 110 60026 -31.44 152.91 20 "NSW" "Byron Bay" 27.4 20.6 19.4 11.7 169.8 96.8 1819.1 128.4 98.3 110.8 58009 -28.64 153.64 95 "NSW" "Brisbane" 28.8 20.9 20.6 9.5 107.5 40 1192.1 89.4 123.5 105.9 40223 -27.42 153.11 4 "QLD" "Bundaberg" 29.9 21.5 22.2 10.8 118.1 25.6 1029.7 73.8 123.1 89.1 39128 -24.89 152.32 27 "QLD" "St Lawrence" 31.6 22.6 23.9 11 142 21.4 1032 65.7 91.6 95.3 33065 -22.35 149.54 18 "QLD" "Townsville" 31.3 24.4 25.1 13.7 201.6 4.6 1122.7 66.3 118.5 99.8 32040 -19.25 146.77 4 "QLD" "Cairns" 31 23.7 25.8 16.9 415.3 20.6 2112.1 121.6 95.6 134.3 31011 -16.87 145.75 2 "QLD" "Lockhart River" 31.3 23.6 27.1 19.5 383.4 40.3 2216.6 144 48.9 122.3 28008 -12.79 143.3 19 "QLD" latticeExtra/data/postdoc.rda0000644000176200001440000000074013574414651015772 0ustar liggesusersmn1lE (B.  BRVwA9Aels;ʮ}Z%O*GTt<ēP@.b=?^U"RFX(z{RsHϜ)@k8$BEW'<(B;FLjO_1D8_q3֠-{wXSa}>KC,=|zw5R^)BVXd+va)+bcE059Pk@!qȝ`-b ;ek@i-?1.%ܳUuy3)FM1?=VA~VY +LTApF1$V616~dZOg',05h`,LQ,geÑ,b ~=5Mk 뜁T2μ𬂃cs3ecȣz2?p>-\Z7ǧus'|yKSx^e |w{ x&)w꧿ ˜H|,s{Bwc$y8p h9NZg wj? 5"tC|BH9s4r}Bpw#pea_>>NrnN+]s'3ߍw~:'ź~s>{q%OYk\Wϱ:ٿ_'Ku g׭Zd^[̷hsn`'_4c*Wg:ufv\t'4um~`}Mw}8-;Ĺ%7Sכoqi߶[L|ԫ.&_ uV'c w2>mM/S_1þbNk>:s,YYe;/)w ؟m3NI{{/uyZΉrNWKJ{e=k=E mF֖9ŜwaF6~0F֝vۋ=u}|"w#kЧg!K "<䵝|/n_0Wwu|w|H2_]n/<#w3O|S멧5ԣqMо2ο|M}6R}Yjo[098KY0섿 y0z y.#*sg ௌw+[Xl#+{v#׳˗>m&ogT3jdy3cU0.g\_(6rۗ#vM5jQ/ߤ[uYwt3YUJ_M̸1y[  `6o_K φF.i ;;E줿Գr`pGm6/q?(%e V凢.k# ESc؊R$ 4)UŷYUiJ*GPS@R*6c,@X{!)κn&ܲC+c2QŬ6latticeExtra/data/gvhd10.rda0000644000176200001440000367155413574414651015434 0ustar liggesusers7zXZi"6!Xj])ThnRʠ3G\D4"3a7. ʒ^Ndm]㩪w_ġ (hԉRJ~A[]3zM.'vJ|Rzˀ5~.T'/g)dw}~cwqJ~B_,/p@Ⱦ(#-(!O^Qڮ<lK"n.\#K>CDNA~&1`@e=n / &hOTF+Dw| ʅ!nR~g|"׹CP aR#ZQa0(:Lk 6_e[lyLCBOWTBq{ c@@U?̗<Ӫ, 7mק k)@Kx>ed|-8xXzls=&!!b[d$ 5m.(f"F "n+ukij q 8zցGz@ۇˡS^^MЂzq J/xBC-30+ieo8 tu=m*2E&: ,b=TFdQݬlMă> ɋ<%_rH6G4rNTE!jp% 5{#^5qMgw"MǕ̥}AAe? kTwsyݥbIុXZM8 jl=5/H5#"ߺݜB )xnx(IaD2U!>F@Ǐ{%e ADضdmJ{!ТN@w~V0/;Ѻ=9[R0f| {֮ ⠫sgJ[ngGץ:K,!({zzdٖ3l)m _DjL-lh|-ڇ+UC< Rsڷ Y%E@:%_Hp2~$I?2# ;U Qz1HenӍ'P:?sHU :@jOHtR/b\1Cp,fud?`4쀧t3-mvk3-S[SY_iT4{Y %XP!aZ^%^k ^rS^٭>y:.Qyġ0;#b|c)Av?,+:nyPdF<(N3E0bQ~|ɶ3OELA} ;qyil75Q`:.I !Ba6bӐӠM3DfZ_`ߴPS4&^8x%6~ Y4ȁnkBfe3del=G'Vn KB& Ta`H)}W~HSCmG跥[d!.zʋ^E'M~X*F`v~]P/ ИSabu{` ;ߟژU.dSu_BpcGԽW!*ȫp*NsE ݋kvn-FhueYr}**lLR3`"y 9%ng|a2*]]b#̍L~p\dkd<iدÃ62DWa rsY)K[*N^|!UE+)1Yk !7CN>՘'Vm WluvE=$4VхlM*,xYysK3 K3GFf?*L+{U%[H ,"!VG vo%FjɡRNӝmA~ Da=|OVݫnHĿJΪ^X#smF^-ƏkVcːY}6:-W8"4u.h* TY(%Cb- , }_&ڕ>.fR>KJMAK45:{beʙlǃ]y;ەǼ*_%Cr?kʧDٖ;WE7gҹd;S Vxo-* IbR^V/ DjAf?n˘shm$c,ŻTTN ^b[|~803Ia'Hly$U8˻ޚ؎Ȁ4E%BYl* GWUŷ fV|_fJy{p yi)z1tLa_`|'a5'b@^{Yl),É4 أWaWSAqWoxo&{ԧj&6"T^Ih AVEs/"Ddѭliɴa֔Ǹp < u]BS"D(`M%~~ܴ%Ix6HR!f:ɥhV]# OTج}ƀ~'gri 7dtׇLQK T90jG%jmOW/b>rn|n6xԏA>4=)[p^3t3[?b-l,C(=*遡: r J]{5iP>/p0jOPd270q2 M)AD)2P`e,~y~ ^J$F=3b;ƚ4P6nWA^gkiFV~VBbuSʏ}TVՒҳz=6[3^҆5%nv] ,^,[*OhX A %[bp(Ny$=XCMm Ï4:)+P6bj8x<%ΜSOo{6n.B&UJ"Ɏ'GM] -~b#/ժ)G(\r֯fARշQB4JI+d3ɋmIZNA[d\$V?os 6S}M֒W> #A{'囔 j.V*.3-qGQPI, v$b#X|/XߐQŋ%|m ,h9b1d`B!;B(RЩV ܲ+Zf׶%J$`;h/Jl'Vx `MJF)p; 0DĠ, L7,k?%27:C:q4Y-k݂aPdz`_KIg?EӮ9F<\ZҮKFMܮ CKNg 9li.¿sjW(% 웎Xy5W]_l$纄--$#12Yx+zsq-y+2xU~N ^x  @aļ39'sV\)ayANל,Sb,v"o3b"voq?JzPr%mVpLK2Τ&A>y:Jxiux˃Ln)=wSo׻W|cGPZ-z}`X$bw}4p?}qeǙ"|-bY|35WM9Ve\?#,wLܺ¦7R5љ$B=?uQbJ?5q"pQi/q8S$Уl5^*orkjC_kڦn\wwB.u@iSGVPL*uD4 e&)%LpáX_OBe޽¤~Rxx+b"܂}AɅ/npד8dHC^EFM[^hq>) nIօl_b:hkc $h_Ik° o^@Bi j3ՇЏ-yu PI{IZ|>QztčodWsCZRC+!%-ߐ7*Ïk?.ksABTlCOͣ*c'qOߎcQ݂#)A,$i548o䅼F#Hc7Ώ\N,2c;ba8:aW)~OG=88$k<04Yw>x~ ݻ!D6I# wUv*e q |(2 a3qB8wMUA>RYEOPM*.gPdBIkD߽pwZ*iJT0nf^_::eYz̻QM7{,#*OOfn!fle2ŖP OWU_ SAz,vkG 2Wgk:qzPJ"f{jK7/-ףCT'jeُ^׆mAu$yvz=R>)V(!C )9#ylۍ*޳ӄ7ǻcXou(>#8A;^{x6[ Jo<;F["~sZIlkHTqi!ddV)X) a9]>voH]5qc$-U:nb{l.cGO]M= o0h5LT ՑAKIm+\^KmZ 1&%ڀ+ĝ>ޙ5}P> JTˤΨv',!'ٗ$K?gO#C=U2WlU'U^~$ YPiܝ1rd-N[]u@_リUN4ݍyw9|^/}xH7e^o}*]0`b'|ֶ~Jr>y5gbߊ3/Ff2?{0m`LuA)z,=];d륧?@.Yz"E!E,\8z_8ϊ a[=s>pp3 -(LrH9??_h'=,0OwDl$o[cԊ; r2x9+8~l_Q9gHIх&a*ͿJcR_iWG%Ȥzzl" n5p \YDЇ-spJZ?Z]Mf*iC:<!OAY^9yljpħ5v& -[M^̰/o'U6fZ簍qR.K_u ; حB \_N$a\O~Y ,(M Ԗ3z#rr$߫`4Q3܎Ic5\)Yq*ّc2'`R&2LjTU$pWl7;ȓs1i{^M4;,SqvKwBrnV0-h65"TB!J (CYԌ ͣ%aq2lbNp }jF~1]L/XfI'RhJ5 ;4gccSj_H"Ż ?ץMZq":P둀>'#\T9-cz_Xw\x@'(dx 'ˤLjo(/g),J{QQoq.Iќ& HAbUу.O G/.'V7pT*8SYA#:PnPk=`!~zN6h4؜<5OSW& vb=^`|`v˪?e6 >ʒ>30ި~ao]hRr/ގ/pX{_#=IbLVr1A 5qAN_?< 0 ނ֘~6s9ef,5(24{, ʟQS/.!/cy%B.,j˝R!vVFD X3ȨB)Q$EZDT8E&lI;sxͿpG;wlcrB"sF)_jX1V8^z7~ðjJ{)rt@.ȕCvʸ̏"Yiޞ|-@[lmMoAemB$ d?G%IoG3[^%Z?EkȤ57^ ԐaZjI/Pa6 pO=_Xjt\2- 'A<4M\t=zmڤKp~֐Cw嬛'oK8=T8pW&Z7/%:Klَ_0bޖdhְJ"j.-}AIiG/{f"cڲic`rm}8Dho!<Ȣ<& 7j :I2mV҆#x`46#@Z>0 2'0bc=i%^=` l;Ƌ?n:2/=7 koO'B7bfڧMD92b̓[ˡ#{6i_ޣ͢D #"/5EF$h]9;&eZ>[(+kZA$f4.0!>bDÌ>Px^Lxæ>Gƨ#/. 7R|ީv"|;9zՏTkQ m٧C"=şK3;ϝj5CнCtgY. 㱭pӵ%@=Ύ}8d]A'IǍILSGq!xCpbXCӼ̻%j` +bÃPJK>/Mπ?p|UMR5pD><%T2a*Hu?VA%gztLH]RR톃(_B۵/3dZb 3D#,`)j}p^:r<Q-՞iRuU+mxB2(*_&*dT~;hT!,_d%b)6*vQ$Oxΐko˾}rpd /.닔W7!NodW-p£f¾RgCer&|0;`5]qYCxx`SY "%P?g]KRONl0蘞^b(DRp`ӼSZhR`k-޼e0ewQ0=k7Y'aR^-mCjr%;,*+9%>ٸ鼋2?Wc%&- I{t# Yqu6.]J+P xt|rkAuu6Uᗷ':&dn:ハXH5XJ`/c7l@=خZ߃+L͓<7;W?6+ܐ- *)K]C殑8p&6,GF1qF1`W*c{Lfl̽yŴ.ȴlq0\Êh9;޾t]%~yb6TVթ4` "Iֵؖ J`zcYFwqZcsoDɹOf5yI@lCsCgެǡ mQ3" *B)So;^0۰N!kH52/vD1>HN]kS!Fݱ^W{2s~fH,k뗓ݝ­*:b {ÅQ w_{&`2Q4 o?t<3}~ 6)ap\3ʷw55F;sJUԣ}nV2HpIpLvs:ȌzTR`pvH PhsNFΌ?-8UAT_],Af &*^ouP=[<]&]ß*R? ܺp,@cDGΥ`~O=R(j2R1S{T2mUlNX/Oߟ/||shI!VzGF0Sgܝ{S\Nv{u ð@J*[Dz!3;ebz/BUSȐ.BڂnhehR8otIJ`CLGت ZάIʱLb?Pk8xڑ{;O/F[;Y")p _,l靅Py.?M bLXE4<wl[hँ@C7m,ku5zX/Y]6]T tpɺ bl ̞N RS!o^6@n#UygLϗE+}mEWGh3q|ōV%.qN%TOv4 {OLlϺ![%"hKkD{٦wtro>|ޝN19zb{rUJiM4{I}$Y 1l̬^sk6[ S7AQ:2fJx1 ܎Oit(sJ'_1e?q^nFX5ҿb8  s]Ma ( h8WUg`&9QX4Cxzٯ}J7QmjGc"}iY4Fa)Guu^5f/2ı{ OU:2ݢ #/W_ +Gj'-R4r/ nb+U ïL_\c}(L:bj2]OsvbHcJUa6^w{=_keͥ|$D?n/H) O*1Nt9 |^S|>C'Qڍ }Z 3bwKü}t(rApiv?7ZY #L`?c b$VPOo3 _V\^pewgx~ .CPf1p>w]`¸p>a'̐q^&(Bg ha2²q*| ZY<]rX.`NYSǑfeϾYӪ͹'nh5<c+'SFY|ߞ3r,sjʾ;KPF'j&z)&(704UMt+tN2^-KȔ #M 1zc!ҏupSMGG ho71=5]GMh,b`^4 v=6440 qtcGzi JDLܐ=\wMaiÂu=֝H"3|Ke7J%-kK0FRj "1)i >tʱTY2o6Ǎ)3tΧ5 yt]h0 Fry[b#p4--AjW>'̻&D|$H.cv\04дڦӏ=g\2 }fF;.t֊t(;_M23A8* i&poLm V-EѻE0|="Jnݓ*3c9={w)$)sʧwNq@kuq?" +K;d$Q<2BVv 0:AG)vM2jiA E\Q2hbwTĒɂ7|*C!#'zMzL.̏F`S"J'v'š3n!SrRSn?+Q{8ٯ`zGKɳ4‹jLj" o&8|0̓,79EyۮcVi.=T4 VGz1Ep猪d@g22L֓I Vӭԁĸ2P3ޚJYMh9ty1nG.TzZ|䯫[Iҩ{ \d5F-*deO a5=yקђI8rm_$C/x7sG~ a oXRݸC)' pfοy[d8ń/(GߪBV~pstZtGcs7n3D2qoC {BXrbs32vؘIw Aݬ'jmZ&c%inNnyqv8af$"sn8 +PJ9}^bͩ_8엠}C~d:[M|͸G^yޕ_2 _l3>r"9-ƕ SL^6ay|0x1%;iޚ9S\#7{w,Q=*rΈIE= Znt,<# 5BQtnk^^ \&00;-h1ZdPn\'Ua㯒M=lǍ ^Y&|e[JC<[-N",`zY9~sRH p| Qo65)ϧ |dЉ 'LOƢ=Vlp3Bo/u3^ia⦋QLh}A)0QK7@BmBo UVԱj/OS3*3N+ {ɕraY9HP {E[+XUaס2+ +Q5Á.35Mh`"O!1sgh{5D| xrWDͻ‰M"n8H H޻Tb# !&@8͈VD8.Y# bTLZy6\{C}߄8{}ntpq[bYm7%ަy$Zh"EAiz~AEq:xztIgm_z,{⦶ɳuh8NuحLUSաd~:旞T>Qtx*j]@;撳:X#y{O}QVb#řQ+x ZeR ܧl&86 Ȯn60v6l! :viDN:>q d]L(#u#L'$"KdtY>QTCIλ7f`mobE=h9Nx(!gIn駣 )P34$))0q;߶%2Vl/" ˷ya0Q#ExLmúu9x?Rs_C<.gDc͗4O oe,Z3B, KX0f Ct`w4_h`c,P_|U1xT= u3户#|u G׋7/kH.GJJ>/)0a})٫F!p2W~yglMI}ui3ߗ镙cco N>Un=eWvY3m(DiYh:p6y**PV8v#:ZncO'7ZLrae7o>h u͹2?d#EjZn)&OAHZuώZi2M?[C} FnE̢X>ߑ }J: Q ! /zЪ UβVKMM{_^5Ef)N\Y+l܇l7m [A ROtv ㇤ 藸xg0:+],owPXpID)B Tr2 ?Q@YS^QP#iJFF7וxeKlK?*42 >5U/Ս@@cKCY@+"JZ &nrn$ccE۫U7VD10iF{]֝y7qeSq谘dz@sS.WE9+]g2_YF}/k#zlgw,>£NuE<̭ƈYy:櫅 ؍/NgJr,?mvJh7>~50N.NLv4A M,eV^UB_~ңD-%4= QvJ{蛬M!^N=}( [qdB/#bڷcꝫ8 yT%gBS3N L-P&#ꎄ5 Hػz`N7U6gyIf#ҵu! {E%q3Z`dwA;tU+lUPp(y>$ۯ0A8 (&wz?hYT[Vq.M39BFy7yYgWo?O}eJ?q`SmwcJq:ñmyhehWπ ebHYJ; x4Y(8tLo4M7ll ƄځOl-IVh)4S[| W>iAyÈǢd251ToY>7Z3C1?:^goS`Gv:Uj0uBmDЂpA EO 3h`nt)&!6Xo2m0(xi։\|2XIf?rX ˟u6'њ!|  ?$&\i (T~ 龕7ϳ,Mq4 ~/i3) G(M)9g0U@+Sw>)Pɉ ikIqjyZ;uq FӼr}h0N<`H^7LJ664nau$zȖ6'뗇l5-7R⊯^:]gb0Y9a1 uo8]e ǡ]':O#tI}b1dvPx<N,ܖ:q." )=_JF9^4;=yY(`oUsKzK0ݻ`mEUA(K3d韞I@Im]M~TOI)n\iPWF_2mVG^niwdI@=ڦ1CG J@7$m}hoB>걬7aC~5`3I5XVO'ޖjjȄ[e8pJyH9G^P\+AA|d f0LxBxصr,~?1mkMsb Y 99]80MUU7J3_y2HREUZ4ry+(U% vc2=JlzpcM^! t"Kǚ/ʚD<BT2ijKwOJfLـ/hh,{{:x#Q1HwdDJS56NʿssB©|Di'"}o4:`w$RGh>kt`ҁ4Kt}9LK?\.A HFu]< 9<)U* uAΧ?曕A_J7 ~8EKד5t33K9MqndsQJ/;uMI4lkd7w B3Wي-0r6,ZebyF}}7Jd ܅7[lVUZ\b+/RTCdL|zպ$dYC0Pʠ$n@w{H_TVxNYnwӛs3r n؍K+kҔ<^T3Rr;Su㊥lZ}Zt#\Q2'&JJt.X38_Eލv|{f܌e ٧ُ t(:pHa [4+@gb! VˣRlj3L@eױڼ nXK=Mi}{c Itϖj&8d"|DYE',ҙ~djdq( =;E?6֤Ϊy'#Ũ=c_>yI h&e( 6)0U=r׮py0 .Ò -_ TT Yb$ixҢKƝ83?ޘ(YƕIֆC%-2xU/2 UQ :ᾤC9g%hHLmlO+0y|=dm3$yJYqahFX--L751zx u3_y*Efєd>7+dĒEF4n'-R!;,J]߭ I#X$V]5yI;Rɫ X\=a(V~Ոs.Y 1jA4͌f8ӄY6֔P&st7?^dJ_0,T`:v7GpM] V=5XďIqҶN ЊHkdiU! #״5EVT0f򂸡gdyfB}-QȆv\?gǠ jފyv!K@*0e:dgs#~oUЁ|yyp ?(M-!`lJS`/eevICG636#5L=%;|s͹6s^;[旘ׯ̞t:5'6_ɵNgJ[N/_X1I=+,x8~1@Psny`ڨT~PtZDY]GhO 䅆Y37*g-ۨg\;EԘ4j9,!bEB7Eh]ѻb|03bӧ *y׺k 4[ =v2R`5RօtVRd^`d$10^D,ڒlJ h tOO+jyc~DRԏԲFg})8HԪq@_)b hKf IJ,vvۦI2zk@CEv*aDBXno[& eVFt7ҷ:мIe*WuHwV[FϦ Ӕ:+J'-+@&>Y-2F($#_]moD3L1[p&/7@HnauW 2X*=+#' |iX\ J8\VzHZ1#9"n<[&'yS[zn\HMLpwh'Fگ4qP8!f>X~W"]Z~Kq.u~݇Ӭ=Z '&([V$ Z@:QP5ɑ5ށPSD3U-ADp\`b5NkR`$VqsMZ,4+H=9m< 'l2f 2P'*UU m.lŐ>MVw+beRQ;FlIj^ *C Z'=!,Ic n(}X_=`TcKzgyV-Yc{x;6>/-$5;L$Y[{$XFlg賲{)vbt!o~1.7Z\aJ>Xt yQ2MmCW.l=lȋ~R ҅w̅R1&Icm<#v$5~Gn[<&u-PN.~0᳷L^#XLpy1{9ŀ\vZ6{'#wÍ&D6EUkJT+-705ûXtxyyMn涋{8H}u[KO2R ^ix:&'iI(]G P ߠD< h\'-pUW`&#yݱ0.m٫RO4lx>B0K('7yzjщ_Ed![6>,fLAdߩnd&BLo =$P<8ʌ@ݺ -$EFXS`T9xTqi^V}l8lg%0e^[vJ^vRyQV<Hm&ob9\d24NUˊEn:խF;tu#ޢLjn%Iu '4c Ura^>4U4#Nbh97S>QrVWT5CCei4>pmgfW /jLJYgCELS.&i%>3t%o.2*&]teoOduGfvA7lߝgeفhGK%kW N[A&WhNfӢ>>)3dza]M=ŸqKd `~Nog{ho$r2l Bld'(ux~*7DZd `U59$ #Q).M2yJtN_vϠrf|ox̕A\<}F Yt.ɕ*iTPt3mזDU=h=KS0к2j0*#PIy/m;1kQ3̮:VþwI9~ ?OM!csTI(='(IQ$t CdQKëI&XN $a$>Rz3%-M:.Ѭaɻ z W^$1bHB9挥ةnN[s*UyxH=s\ЛOxf}t(h~c ڦg288rj'C=_-=V{IQL'jY?:0194N'!<握k=Im2SXBC:̽ ^J!6|J1{P)"(BD\%5I~InCnm-8'LTVhjTjmJ)lK]Ax*U SF')"'Y`br|e%E_$chn٢jۗp2:| L Y+g*9ol?'_~{J7K}~ogV9Η5ª{6Y qƌxvn 1ύ^Z|o4RH±ikfYrdlKaHZ\MCtM+vBM+t_Ӯ[Hos=94`Gׅђh~SļZMAʩ p5WôspURQ8K:Z)}[G0(`sOAGX;az=a($fjA/WBT8B+]+/g/fxM,6ؘPEOr'<((n;UG5܈&58לWK1RQ&OܥBv!-QL8uǫCʹ#Qiƒ [ Xlj|:?FQeաU>/ Uk~jz$O*JF*mPf9y3 ة yn ~\U@MBTo QNV1a#X6u"y[x(.DS{b;&Ҷk$Ty( 3LV /Sd4M rڄZ. !u l{5尉# ;7YN#6z ԇh% 7sBZdE_/F6;r(P nGII[H+mmkv%'>s 1MKN. ?t_m8H/DB%D,NJ`,2"zZ>It=_1!lq*: |*+@oȢC+w 6O%RJb@W>cnɄg^;4I4,UyI5ǻlʼn'!(*CgTK7=O tmDkT~--Ab;|5"Vjbˏ$LDVi;bR娕I[go;m#3$ςsfսy=©OuMO*m3I2!on{*vj8f26${ʈمюb;,"o3't,~p aBr24$ЄˆHmUE&y$$9 mAjw_r(0O'{@WFMRT{D`><@EL&FJ-MӃZ{>SW8>·2`fFjAT^GQ(n" NVwtMRL T0c-݅T)рNţ}A{'9<oW @h\hE}TM@"BTFԚڥq3i"$.Sݫ񨶬qrݭa[ ,fQࠒOVrƁ" ,݃it~T}FN`P+FmR.a ?:ħÿuU iA):X>)i*-Gtllo9vŝ98·\/AΏ}w"ojs "^naeh-Ϲ eR#Iؓr}Ap> `ڕLSvoft]*1@I ) U 0 dvL Ҕa8c ;".at nꗰ!kړןnJE' #qO&+IK\<[: Q`gؽ_t r~$M hd1u=V(D$F)kĨ U'%EKEwfʲɂ"F r;M`2 >ZI7Fr79E}UYhTg:r*SDn!3q_J> v7ڬX9)0F8^ٚs(;`nqMdz 1!C|w]6->uۥrnggQ7]bkgo5hW_Q;ʄ(7s#vB+"Fꇩ[I5Ȓ#v O[`˜oQ>s+ʼnbR减%"1ơR^ZЃXd԰Er7c,O ^+-t=,7&8aպǬK\P F:l7&vgnF>(` tgGRoUhG`r㧃 ; /O>GyF7Q ,Vsjީgm@lR-`{D8 huږg&C$:z!y,ۗ5R>'z=K[~&)M=fsx~noR^G>Gyf_%,nvSAor>L  7VskF @e5ytVvݟ [7@'imh.{%皈IpЪFR./kԾxD=y:*D`.pXtYKY JvRw(.!G@IB#(,D MfɾykH*O4 Ev/`%UuIctbBl/ 0At)S+Aa#1cxy< }HM@l 8!,=A?J4zhӛ0 ~ty>,7DYJ%?(6&,:@AWU|eRT׵ "wd+>~Tв P-Kul@Sh8AT:ŁFq,4/}#vOGM"K_]ư{_|ׅLD4痬cҞa6z0 /~<-xz$*Jx| ㍰ ~q66O.?~~Xy t2TgSջG{#шw/ًgQ%bBy)W+ӛ&6>aχ3\44n/#9Dռ˕Dvt@KJYޚ_ͧੂdUVloX={^П^Jm5|li{q.N$H|1wH˷魚6Je9<1%lg2Oq lfZH|a U7Εc[4r0`9tv,Yˠ' -m9.b\Jok6n7g%7#Zk켄7L/@\(4R$5NrGTC2 sΧɆ' {)]vCKl T=[/tmRiK53=@iY[ |g쩫O!ta(.-L!8ܮN7!&Q+n .+ Β5L?­y09LMo>* h+'lg%;BQ*E  /?ˈX~f\2 JKOixƿkΜU]z*it4:#0%EP|o[qa<yJrIхcdz?aR[!jO~WtZI;z^זoa9vPxcHqLC\De?tVTM'd@>L֤.Mٰ5C&XطfkL"5 0(R}[ aCOFO5M|PS gj/PvnaD*R8ƂX`"q5~XN1%VY{r@8Ytbժ*[OC6-# o:{XO1]C9m9A}"ͣ==Gm F1 cH0fRm[gt1}:ZOw8XbAoIߎ;lT"[_ۛI$qRV8-NQQI'v$b^_* pE\n,1W˻YU''^hck@R|'іs.F8Ț)ɬŎObu:T3E^.5@^)?*tҮsJYZ+WPLQ@BK/n1 E2Ս^W1*IlU:7dab q¨ڼaBŜ{ H w+@' iP>F-9cdBZO⬩+c4* MQ5vݹd->怡y q.0NݐdKX0@[pp.eDΔ~ GH6oPbL%9{=,: ׭XԻL%1"Q+t9> q31PISYB}Ë@;19` ?9bx׉> ZYVLsEMO5kY?cCrN>yJRA:r0Ls`?`=aA>BDw HEDqv ck9y@Ü䀶IJ]5fTs_D (0Kᄋ`$W8*I D ^J0τyOXeP^ i`vR~JI-g (dFw!vXE^.u]%7˴Ё-Dg܉ k{jkδ Fz$l7Z֢aӋ }z(FN?hJH.ށaP V53;:#R.:#~$H"=F|Pb?/a3kzXB2I؄kP"NPĺbBhdU(l];+"O])U:H-v:Bk hozt MPraG MUav}>C^Mdc5iw*3˺G1F $Cv}ؼ-ԻKj1"wm-I=K5~>=;# r9kX(z7#M"5g<2}2~nk}nN 3@  z7y "GAGO>*JfYJ3 [ 'Ɩ7ݹJlTRBkQ5~n]d!r[ݠ)iW5Y\GbB Lxk.YW{H VlKoQ@V )6$XWɷރⰟ%ã ;$4s+*v8j @1l[ܷ!G<חJ༷o+QXՍ8Ō.;rɛGr8Wxn%^tjˇTQ 3ʣ:UyFv3ھ:9?^iQfk\V2HH9Lp.'ɈX"B,< QϬi{dG#\3E~JX@fY0uWxiykֽh`GbNj#|?w+_(g}JƪYP`ꚣAv<)I b!6^ɶmTR amOmk >v+mAya [(T0'IH=}˂[/ƏjPHT.*d`~b .YGXp(]|Ӷ~VeAmA'men(߄:gǬֱCa+_DH+ F$^).)wJ>n}[b8Ji4\_Wki/M*\(NcOo}NRҲ<'B`"F&󞦕iƋTMe ftfi[tEX .黵,o岌BN1CU?/ bdb[rUܬþE^Ez 8Y x'0T >TU@3^ \{fvVM>zXDJbr!vOxUCp4a^%$yQcАC lDP桅;_xR-|&֔m/#Uك/N=uE!,K.wWC cq7g[6wjǶ2j0X2qfd K_={{3Gӊ’dk)>_wk-R_Zzb@X5kV :!끦TFs$PiYnm@ʮ1]:OAKOKm wnba"dx qC¡b_MT2FX 1)nűQ #i)2.En0Ì@·GWI'jFҠ$v[nɻ.vgB㦘vgwP|]5(Qb&IO 84~0/?Y"G歠K5ZI6x*)Ehho3 _JqW/ @Gf{?l%#H^ظ &\zmT?( RR~vy%{P`ϥ³uz.P%ĢUDu׺IĹW^;:[9U=a:!NbXBH6u 2<a} q>{oPHÎm6b 1zKJW!uB+Vęn@{O!#q J/݈{^ƓWԉ5_BҌͳ҂\:o 5=Jed915\%"JnԠWot4}Ǟ0hE|9}v32t{ ązvNW*0=Nqˆ^zu .d;6g'o}#2S@5heģK̖-yQȘ^siϫY#}K 6Mkuϟq_UfO!!` gq:BU@ذ#&b%[ts#1u-ۥL=c'I bszD4`eQ56I=snyUͧxYT9 C93_ٹrjYߨ*L{?xpH3Ii"뎎Ap;#Y e4g( dtA9M tOcodY~hמ03IIf /Odtk4Kh'ឿ VIHD䭁.rEf묩48Q-(շ sWHR f\!BTi^'¾ iwk:IwfY.ᑮr4ÏČ/p,c=h)sz^I5‘-sɵd;cbF3ׄSv1}`rÓr" teC2-ꨆ>6 OhZ߱!Dgp):]G_ow#nkkhؚ'yX\7g4i&BPJc0}-n\ho((\^8Į*rfTFVA]:RG?@Z,ZH>J2 TCsQx6-k@ BN Գộ)xmVnOC}]@ ֯]g~< _3(6v\mA&j)doL{>'fķrZdNXy@'rͻ)UOZʳjʂ)K!Y ;-'lZˮz:A~>Eʃ!IdC*X s2{_ZힰLx=O(ݝףG¢I xr9KB.N}M+#y2BdWb] g4eZgu%jN MIщ\2#+v,.zAk.%c! &j>/KP{ҁ$NPs:w}'dnHͭj+rp-9٫am7k u>H|]~Lka-DpӅfX\-x\BM v^HG^qү`r%.먠?œE4:b&Jgqhq;ۉ+F TܺN9xy|Vn)|o @ +szl?津 ,3$]d&^ Jw%oBȈz:b 6ǹ)1^K'*͚wsQuUHJIP498S@5ELJsPl0 :'pi s@ #I zNR뫀BmRV[&oqk.X^:ݭ>@D%q>("+ҹǬe^fa>}UxN@DƞS:I+< yхM_Ʌ)*kD!jJ-aE@[B7hF!〠 <*X=DT4j5Q 4!5Ce^54;Öݧ%g^vc+zЂY0ptF{{[9D6Cq:"1R%9TGz͑0%głra{Nj'9>LHh +U\iߟh/-o6 ?VZ*1jї9)1zO˩ޟf{Gc Ar'']V(!@hPB,jsEۑ)'1{YРVPxX\wb#Q/6kQ~h.L>ORJn4͒Řx.e9hd'h~%7ɟwD< OL=r07$*ee¥=FS7Hq S]=3 Ѳ%~@Nf0繘 ]+w1/(2j.x9h+_S_BfրgӟD5> qIn{%diC1lKNؗ:z$l9ptT+F^c(o/)\Yl=sj,'M1:[=cIN`vKk[ug9Lpnh7QUș}be `T1Fx!+- 5ƬKJsn`7NךS YH Ғte!Į*S=N+"QT\rU_M|t2y4:8|Qj&_RO[[jDa㖵69$G0I cݗFJ}NLפY;egfe0V" 5 #=| ../ KйeR }IQvHgA}8g't>%! KR+}#g`(W*wSs! 4 ^?j*L؃nL cQφ֝ !QC2+.pUR]>L[~F@1Jlsdo#S $:AOh!{v,m{$7fCe9a}v[eY{jb7v> Epz9A*cY6ͺPs3/)#{) =V3[>v$Yi',]P5DP@Q{ڕИ۸z:o)Iae9Dսy*[L:D\8t͞fFgl jǻMz"ɠsV%Et:C3vѢ}0,W8i~ad =< Ƚٲi̻b>QO#t{D)OpȤD$}עm:-bݻzA,}'?QTk#a^?71[d<]\6K ~m Nˤf ROz)da[+v_]AN?:x$,bv_eAt/T{'aW4ͬ79eGv\qR-X_ٖ;[ WTc]Ž)gg S@ZtO:++Sك!yqk6t!I [na@h}xNea Y`;8;PB元,ןB(jŠlS0l5[角Z M_I,LuEGc,dChʱtC*z K sc0 fTJWΖ˵H9h`qZ@ϞKRYgpvy ⛍a&$+"J)^ CؙjW')!󊗏=4}hX2].Df f狒";g}tE7qFv eS%165*W: ݞ"Uhk Ky}F⺦,gָ 4apkNr7tmb&9G6mHYB1efܬ 1 CX@9aېI٧@ru jK:z3EdŦk>236%$3RBek,-8/ۀjI~9F<:NC~ i(ThMԯ\T;sxL,D >eP~Hg`T-l-RtLO!ĭgw_bvXCHàέDЕi~l)XJbB|,D>;@NFvq 'vv[P"1ŧ65h憐7R}V9h֐EMHǹitݴiBR ")2 b9URS) J #)#ԛUM_ә ]L+7\h4JYiWJ\*:}Gic1-A9I}N&jZ}!a P(7 _uiz]A0(6] ;FߒCNt)Q)qB hY3LYlŭ n-m6g`?e`dίwHh|x8!bu̪jdhVKs(ӡ)h~OZsҘM/|_V j|0(P0 REpKe<OŹ_&I_D^.h򟷳kLߝG^x\Gdhbb5P50䄑9w %(p%>>zힴ5:jYŬԺ~"-FЅ]v:3ENUly,*1QE]n:/+~Prl 4ESK5Լf50 `OKDi(vPuSXH>(3T$qךV>gΛo7o Gԣ,mv~0T1[?&-qF o W% [uSlۉҿ7" "k PwM*f5wGu;#Tm `9 m)R<^q")Ph~+|b;[KR D/NbcցXgfsKd2|cO}8$J U|Wr7c7,Id̃RL5^; b#Ƕ&w^ 2@ãa?/8Ppt]9J(%*֖xޗBz̬n #j eJ`Khf*dIĕF>#@;]ݛ+a߃^ }+14v ?cN1_/J:!jfA IׂCWe8BVOO|C ΎKE c'xJ.x#žb(t/K3 w>oR mP\ Ki%t7U],&rKIyx ?toi0 -h9t'q b%W"msWx-eqA!G8}v~>t<=*r1 kz.e%‘ sI $Ml ѻEMPwv$3>v>5΍8'C OGKK\\"[]s莙?NrB)0MD nwop҄dKeͼ@Pp\IG)*@YREz2hBRҜ;g;]X(75"KT P2~ @?[nʽ5ՙ3qy2ϥ\n߻p{"_: i]I >@I](p<4 z6@K/eK,'etۇnF72P\/(I-M!{6qZn0}WDC]vX i` tT$G|3M[0;=ygPQ^#:IjK[dOkZjՈ,v؀˴_]cpأ³ap( !h\@)m>6޼'̝2)7]f4?,'n81Tth̀U`8'B^`mEMxsl #m'E &%ϊjrA,(y=_;1}r^E.a6ʚ) V k=F!O’u@ @sU[NNKQv[J{9+r26V\( XEr*/aVҏ@{d!zl J|MeBxOTjY+DyVUq(KAhC~a*ɟY>g*։0D*o7VgqY|1jnyc^#˿2;xnKylz*U~ȷZ/t6gq?ije3-,2Qo:ybTfGY&9:OUN8z +M-{Xs}w.*myw&j9K9E)/]Q6^0C4ǁYpI{Dhqsmw8 )P6$V]ϯ!G74 M*dzoTa#{"qvg:V l֎ &&hUYܸ{klIR/{TwJ.־)BP.{Un;ZvA#cgJ Y؃ %azX'q3]QKW0ec;V=eK^CBZ4&=O5s qXUpsgujhN7 (xna,&qaQC=$ab1:fg&}]֤:;4je龻FЛ~ ҾϪ?5-WvJ #+ĸx̉\6%~9u%ti,i.()OV Wh@]6Leqzr[;"p"mn^+*T4Z: \bjhnn9â?;t/ R+Awqly7NU^P <4+֍2Fc76I[~-jB+jͤJQEYzw].MvI"0l2<}}@-yXZ#'lhuk;]Gc2GBXn^W%l#pkwnΒJ?xޥggeS/W>kR|E {ݽs^ ,YiڗL=Bz5']-8΍v詗Ex\Ĭ=ߦ\St&;%Z2؏('Ękhޓ!6ceۨAKL>`EBq_ =!xxxnwk:$~m)qaHToj}"Scل 4zp/ob-)1U=\|~}킊WL0^蓤~lpTa(mpƵeJ{hހN] iG.CPEz= |^+eyڣl6-?g;;-(DYhQt;CvƧAC0_sZw%cj F @(&+ &cuFe40>tqP{|0Dy+v1 g@1T4|HGIdZs[[ӈwA *j3]@<*6`CWJr noѤE02h0_M\ .H&sНC ݤ:!]z? |~տr{& $j޴y$IɚhŔ|mN/*Od܅ĵpOԐAn94flCy:l [L7je*}^e;@W; vG^iZk{gleNH"4/tkRzQ8b'Y]k|eC+|? 0\A8bޢvUDWQtaGPcI@,9%-tOk@zj}9bg|VlRaXZ F&+Cj9:!}P)A+Њ+"͌c" v!>PVǣd B@fn][ G e~1AurkcVj҂22-#XE'̛6|L픨PěGAl5-)"ةˋa2"|AL*Sga7 ddV>IlG7X%k>6X`9YdZgOIiKӀpk,JoOeT"ɤX5 6&+I={ov:d&>s?(:LGzMèNQdF[["HJ4,'ҹU% iVY5n e͖Y~}&6jz L6Ӿ⹁BBR eR@!b&65?^J,\n7f(NHDVJ|8?F9N9gnS3zjOD{E@d*S44ri+k};r z#Se\o.͟Xj5b,l w㏵C%\=Qd/sTѪ!*I rl )-yܽ v߅ 0 I)ƫ,-k`,-B+gAZ ʖĿ 1}ICW#gޟ~etbUA+uJBI[*%:)X= M$ $0?D㸠gR hMǖiIpڈX@?_1ꩻ4|y1,=쩤eg+ 4k5k aErwl?h̰\=-ɬmQmg2;َBplkݒiӠn-VT_4z~sr+ ښ9$7w`S&d"{۷-SZQB{^HIQXa|+En|:I)P*cMQmYK9'ƙL"c}ESV0K:^4zVy$ߔ^JЛf ̀pԇtݑ o4C') ^ _\lʻPY}{ٻ>E x dP,njRhl|(&{T*$!L8!ȉ s,;y!=0| e=o 0JGP`+@g&%orxg& kL<\m҆D'r,!R: `t qa-7ID+' sMao d WEHL gvaE cҶ@vU l轘"nd'ƞ&72}ͶN2d43N8<Ռ&уbh%') UR']Q6wm^j4*d8(wZY4M2j-M{3BH,_88ۧe\lFeԧeEe ϝC4e&״KyeÒ֐ Kk%h'StW"'#YPNf(k<{ʰI>ZWd[(%eh *d3xc e,06zp<}vf>}U3;М8O֓Z'WZѷ;Ølv9G3.P5pH*{s927a4!AC[I˦1凉o͜O8jU99cx`cuŦUDOa@BcVeQmM cnԐ9ϩ:j}b7o~1.^8B4]QWFZ(c,yƟʎM_'.`d?DQDx6l A;Ǣ$2)uݺ>HrQ(d<\0L#MHT8~ʍHe;h>|iې_!: zE{~7JԨ^&̨Y"v='Q]^!(j+1/ZO>5yjm)RwJTby=x{". wGeb^z[,xF8X~khfY7Cyg.J=X"A{2AFBߴqZg顋 cqV]S8qOi ].i'm6rUV\skYIo=&9\ыdA!eyRU׽OĴ40<*UGa@rwc0Zo)/@xJjvB9A"CL9Di0_:ϯ0'xC= Qw:1G f(#elh ^ ,KƷv%T2CAMR_Y>'/sg͘Iu(tR (i||sP> Rw_Qo@nRHvU =v ŗ]APK"^Ownu#7|z%6>)"1mgϮ)Tn,^%`tBqTM! .9QrȱPN֢ ݘ3>6(k`V?JyRQނsm:3ۊv$)[7Bz. 1QVx^{VF_ Aq?&kKRɠ噿7^䎥o*pP #>iWB/6^ !8~FĈ( 1|&z&]Q蛎Cᕲ%@wr3Oc?~ ꮢ2'M masPEsc-@j>62f=kLUL?7+pB<%RCQU¡/]8 8{oλY82QB:OU|Qc碝ə0Uؔ}8+0ImvNd#hjI.d0\Mw)>})mS L!F1J ,1q 3>9gyMi~$Pyn0rМv5'XIKwHhVi;LN-*d58&umם 5 ovO1{3a&Xg sv\QںAaD\n,>vuwRVŘDUq4=F9|u_tQ!T簙Ics󘶿2Wk1c_jة"R *wޙrdgLAޥuYGif9>Ln^-g67WT8awt߰RKCs`OQ6U q_A5W2㒑pbǫ ^AeB"nݜ7U\wẕ;q/^05Kj)~](~>%Ѥ"-b [:T״~5'3 6Tb5iglv&ehwDTYzh+-W*uӅp~]M6%'Wm59as^I{}rm\P16ՏD =ʍ">`=*.\_#i:.,OP6a%R| * `zuPXX%ǨHY\2h۶M2k``򧠜%>"reh6퀋?Y^憬1BIFOշF֡Z%wD%>ȕ n0WU0TZ k_n6$Q; `Q#W 4Zʋ)cB`}[H15$PǬxNqԜUiJ̻@ᲧELg!L7o^|Lع1I,i%{(RCK|>/S$Ϯ}@?I_ISh0]-CH m&ebJ]@yg"֘|}.Z1LApB.}[\A#YyW2UYaҀi@OC:x%U%[X]{UAuX\r?lqeTMՖ'ٮnu z_|O:&.P0)‹1oϺV9ŬUWx*R1؄Z".eSh-K( '(B:o6 [_҃l ]P XxA o0⡲}Vp1YU<65OCo9l2C/j- 0>c J *юb/cG D>`q0\r5^CCH~wۜ)+aQ[)?lA ސua*/t̻8_tvG1 .{f2'OL|،9uoJ-p{A`"l6agм䨙,R},ǵ^]W:E$9&4 B/rb@jY$Io_ޔvnK6~?/yQړʃinvy=M 8d&q6Hh0q"6N*x+=^t5.([09/E;%o`yGc|. f8H >y kҽYKTD(Oj?Հ;Tۥ4Oy vxy(_E?u}Tö?78}|@&檐-U{>U7]bpnxOf|6 `zDh m|yKsNK936"U,36\ߘkü9bܙ$OZ%,)6W_c5a,F6i}kZ4QҩVwY˟ j :e+Dzq2C/?*TY0'}<"5n4Fxc(C@T[N@xXr`^U^{xSPuZDA~c^qsI]0 )%ڹ<8I20p%ˮ]=ۀbІ(D'ދq8p?Wq16MCY^yjEpr}w盘nm/|,*kδ +jLZr:mk D$8Cԑ,}"O]USb%6!$ktwXQ/JE[)h>#~oCm_K%Њ!X)/cUiIrar%EN,[ܗR-aYSlٵ-< kG!Ю*]PIJ)wP5(i`J5AE0~NwxZt->8_ U3^FP v˧t_C8Yoy gOII\yOQ귭_YԾ[R۩k,ftP`m$L;RM{ؕq3[=+uhBcif+{nnS0Q9^%21BxE3,FßaSRmu"1_j1igw2VO* hڄ@'/a] ӥr:6e ZχNͧ#Y̤,{5&{d4 74 倽vJ'" Ý\QYy?$&PvC:NESNɰ0np"*VpR#`$[Ivb&𻍄`";Gh@ =GPEY>%NF9X|ܕ*ymD+|6 +fG͖P y}GB2.ʣe!36dA?\#ذ-1TuM&k{1\i@y^#R֤Գe˰uWK)ZDÒ95(Q; )Uվ"@aE6qBEV`I}hU) (FcϤI RXn>^"e/}e,&@K@9AI`uLזFLW~xmZ9[R=k|݂߬(fUvUh luq'z'8t)}4ܓ?!:RiDL2$7p{-͊ ƞ IQ[36VvkoU { ?aJ](_}mIhe[f]r&nҹTWKSߛ#0K;ZkLYЩj.z~X+W6*4^(O!tehemq7\F.O.b[7qCM7+: 8pKւʒZar `bv[rf&[,t`,IxTfFA[V!2bJDB%7pr> Kև8Z=2FLŌ+s}gvaVdݷEx6e'y>!>&W)F-D3hάJd$,)B\>vO, \ok0Z\74~ckYJCifdVNeRbi7CɄ@lcF[Gŷſ>񹳉T6nj'ib{ol_- ~Z ;;F32tT  p*Ϥg3کq#$΁`Ĉ|V*toQZ<6y E.Q:e2w(w$P vU\͞r6pa)14pUeޘDw bJ+<u3a!}\(.K\%U'nŔWx?$vəҏ<z1Z(?,<-7=,c]ǒ"*ܶyQ‘_ Z3J!2P+g HabhTn4;ee<:B @;E7aDPn'Qhj͆vhkqX/3wI a϶ew4%%x㝃F"!`CRFyu[Ҏ}8m` m&7e'3VSl>mkhdPy}H %-35bO.:̘(-1dȻ!AoV* B+S"7~\WeG%wR#DZexK%R6rwQhW&-\fD)GQV)Sў *(7 I=1cU@?;fjz;f{uɷZnLdKm+["M#>y.\5*vͦ9<\ӈYV,10(Zy+:ʕ3` ijOSۭ0]u/PɁ2jẄ́Zӽgqz}K_|?MD^\wߚXMh.= k/a竣X(#z,yiԽ0YC2Qb5{o+</6̥I>j!$KW#4F hSO~JHGz2Fڦb꾭Zh,Y9sV%T{4&-mn?1Yc{ڑ[z74OQ\w8dzI"ֲbA^)a701K"~rir io?+c@w/Tygmx| $WMf/#R09NI03zt{c ~VFMP |UA&aq[ ϸ_iuECH\`ӳtn(tyiCKh ZMV6\9^K ROfn\x`OʻewΟ\^R:m[8B`Ud~:3G # QsJ\E"~$jGR2ְ9?mo{~G~,5{1 lbr+O_^d}լB}4Oz7ckZ`6>,fnYm]aKY|O)2Y#ÚFE?q`ąib )B/S%5C䴝^iLPtI?gJ߭e'иk\_l#\w5+CҷjSc~!ȫ;l[pfTJn:KZ+ Y%K/!z]3aɾfsj!5$,ҀСSRPŋ;iޣ-V~i3\5O/oN^$*_)ׇf;J{P R.ZGEeq!k]A?ؽоgM#TSOO4Z͐p\,\Ow 7 9HLO2|sD8US?|iSn%C5= x( < Ljeⲟ;ܧb`7ؘ`{97BpƪجOQC{#qd7﵌` CIq%ý *WӾkzauN=]Ew|wkoHgʧmᙦ5; BqhL<ǃ N- 1pT3&RX_bPa}|#{sP-=/D2_۟z%S .YިNClH,4ZDG ]WĖRh֒MI,#ʦb6*3wJh@nu1rB>`̩B}7v!V'i)ˠ:HܰȟRK$^#e-Bs(I,?\PT ۝y/Ё.SrSv}Yiݺ5:1Z<7O( @xj!:6~%U9ڋl-3@>M$-;#w3986})  1?# y|9[TB w/'Ƌ"7V \5"}IY8ӚYv&F&S(_\׾ #pGS2܀R>- kɖRІwV?БFE\JnDe`f"&ij50VXV?#lu%LOM>j(S_X9ۙ>JWnbwQobu?=~FŞ eDc84rsvs5&[IklQ|GH2iasDPE?˙ߺzp><Ŷ+طpc?ذ* ޔ`ZpyΧZA2A;A; 3Hf!^^3CMGVF4rKI=^^.INNKx3zB u##rB EP 4|S89W][4>@;cd~IH[8>ґ0PrFR`k hӔ[ODAg,9pƂe1G{g 3E.fDOxLQLѥo93g&),(k>ڿ_;K)('?TT#Isǜ;;},ph {*Eyֻي*Fmyh١q7k-VMҞ#_nׅbԑh4Jfa&s8*,&&DŎ!x5˳ Ud )˺R󺯙J6~M;9`n#o+\/t%6fy# c xb*K Z~&f%gUH6bY3 r&N6Uދ7qXVRWrA⨎fzs(|<}#&i䳏3)('ZwՓyBh.?DVIx<ˮ/6#!!UU)dǼZwbZB=s,X7]=Y$Jy4L /L :5Rԧ/}NNr Fj:NQ;ӚW:$Ҁ O?!МVL I߀ˢ!W9eSuWk`}E [8ρ]jI ֯֞ c@A+}:K&E_\Wݒ3 4m~YcqA +3qz(Sт\=䃩rcAӶ]l<6>L|0ӴGMVƤKB#z\%B>Қ)JܯTȽsǮ{!w77ƌm]9s .ri_'ZE6X;Hr9 D~\E\bGﰀuQ1`*+981.o~Q[rL*8 ϶}8Y# Wk?C~ޱk%/w z1t˞j T ַv:Ͼ„Ջ0k*$c0Þ>zx5- rK|nuʸEOrq`:v,Ck!6C?:Kd_] D')&r琊nk2U6ձ4|V>'`/ر6CO(v{r~tV@jnPmi_d.2ҰVfLe%lxL!1cClܗ57n(/!I[JT͂<xV-IPV[ڴ-~w,O58kUp?3'1%D[i$'Sth#;K;*< ܷNJ7E֚7^gF =Nݲ\.K ~|Vc Fn"(n 'T+n:нMd$EђDZvQl*";BX-,oߓ_]kA$G5'n6NT1K~һX2:Ǣ kվ+,R-XϪ^sJKNΫeU2MXO8tk[x>Ό*&a?K" 'I5vB;9fL]NɚZU||@{<TQ'iӸbF Us^yP> s?-5n^Y(Цhlbzڀ:>m3e1W a,=K,]W̸L CL܈_eA_|=Vtl=#.|`{QEʦ$3.8_)9<H=x8%o6 :udvjHLI`) C¶&&m{-ܱwn3їE{M`%SAZӻ܄0sA 0EAӨBL|S 7| k_ Wҕ]V^8[EM\S^:(TR)E 3t(@+dv,ۆ `8[0Flj&NPUaG"-wёL}8zf`K;>3tIz-Woow XT+=@ 2+8VL5 T*UDn2؝5B)=z>^ }*C71O#zx 18_&~$783گ?88C2pQ{U|#3`tVwaa_G#;/YӀ݀q6C+yuF:㺜}x(#pT SG2̫Ɣ&),w tHCJRuߢ3,E+˲?z$`+;~f Un̺Qnb l ӽZ +}}LX}#a!ʪ_EBFa_)zI.{߰Q уThZ:4,r!b訇TCG'{P1rk!m8 JeO@QB"粽xeVO*z15ȾzFL 7'C@5&i 5|51y]Ei0S:s]f뽸O u ak;Zɷ/}JZ98`׿&))bl)F=ɁA#;#|n7 mX`O%] eHȲWreuFaҲY)aKK@nS~L2ߓ9?ZvLC"Xp êFB[!eˊ|_pjk7\*WD9eǸw[W `Nds[W79QTڛoñ,8"VE5:AA|iv"ӑB{Z,"]?vưSH9b&Ⱥu&a:ݍ|,ᦲئ 5PشBjz4q$HB|;}:m(R6_>]5^jvi^H:$+)(0{et#ue $Hˉ"P~1@TO:_/&>x՘A.fXHu.yk]͵#E)4(^Wʨ c+%e֫ʯN~ k66r*T]4S޴ AӇOzC\tY88y:oW؀!ɹqna 3]ib.:müO=8j3M1uR(w)8$5_F,Bݳ"@X{)I2~p2p׺pHO]vGgw{'.1APbԿ?(=hEhIhRNVuk7 Ͽ<B >_}vvA&@v6'*W>J!NiEt03pfy2B:6H NI*3Ldt׭lx!chڂك6эVj>KdnZ ~2G9B)ȪbA.$!oJV6K$<$ʞxϏ?e UaTV]P6t 3AN24(( :f4*O=LC6PI3ɰ4,,1K[˜.7)72Qs׆{ 3eYp`־!K=cް6Yˎt->6* šyoDbX'R]u~\<ڲη^CP|rJ@K@Zf~8=hl+oF‚SdB )BC [Crܲ44y9VU!|^ⷬ+ ݅%X^C1\oLXxVj`;Îڜ#hywCЏz{,Lp Am11gYfCV03mD.a4G@(+R,qY6wa6`HRA|ҍ>rrw{V cW5taH5j:h[`|-ઘam!:5έ>tr T!uH<7BY51aw= -B5G Ps=YXXxq*]ˡ8)2wo[5,k? Thr5u4!A_kZHS1crUQWFPO7?Ml`6]Zl-Qs,zZMc   Ą5jq⫌po mhX[Z;U\h}k{ MGa~s#嫚l#m뭾/ypjr=nO:K~F=Qܑ[i!c⥵g(= 4v#\u%|^c5-pO8٤2Ǎ59s闹ێ"V@_fٞQ\I]-m^jZ]kwB@Kwtz*(4 k|;-Jߎrd+&4\-AK;0WU;b2ygZ_|4yh9oDBC6&G(pwEO'%*/W0L;\'tk:9h;/p)h iCueĆT‚!onaw i)^O#Ɇ7PJ4EWRVa }"}Kl$C8?9E='\!Fj2>UkF2`\wdZ+gqRKb+r;͉-Gجg$+I(shd`r87B{Ʈb%J6oQJk7Zn+v꒱) b߹>.q.2 oH}-v̅+ԓ>l.xaHl[t̡/˨zF%`~,pkK9&7#2EE6Bt,\@v=3):|ci;ۺB477m%.)pZ[m +;)H.Hf7tCa|4vQk^K$UZ321dm77_u̴2'eZY*ʷ́ƒ#[rSɶ\~B U MM/lS,+sƃ3 ,izU&^5Im.L+NJ1?m  B%[R[.6ލZZ9/Kj{~ K^-5P/~7B-|13c.8 :%r{Za4͍TO ~! 8<,x$&B#CkpOfm@1 EQppt8õi&p;m/!\ t~4bkb(k Oy/2uۂF4p^{ss!dkdb^|z^TQ{/sЅp1||MԄu#uD'`J Rɐ%>E.=mjh S3 L5&}])A+2xj yQc'E~wcWD~\CV7˾>L.A`!tɯdҵ+_\1m2a>ƅrL#Zy B'؏`v\>)/3_*n` d)q ;_צ8x[o {ZO꬟ɪW8q[%B)6Y{,G`7vaR+F=VyNNN!sAz@VQ[MUA/f![ k,=!h}whVyK#BNn>w,n%U[zVH_t6EL9 /Yb0}30}¯&C Zz݄>XX\%Es V1ZIV5oGɐ DE |<wWHcۄ7RB4!U$T w3Z. D nPdttdj`ٲ?P|cflm?[ ˨;RhF̴֬6{u%m['> J8.D,JP<ږ:Ya Ó~.^?&jvL% Zl'vk*%+cgK)= V=׃>t ]]6V򦊢UJ]֫ f~D3&;b<72B^ ~_)!2y(EW!wiW]b>*y16'kTDL@;W͆72JeOЦw}C-b>@@ֲ.eZ'{BZQ+$` n@OkS"9lrZKt¢ቄGMTٌ5ob02N &y~[!ftc "qB=WT.ܵc`J;"e޼nbWKƼo#dpa6*oʂa &urpFd Ӆ4GVv[ GY3>䰷Ϩ73 ,3YskBL_ U{)++xryb7Q$-\wa_1L!>$7P5խ=+T}&ƸКLґF]PGUF'͟AhᢊFW'AmOMAOX `Yt#)`yO<:jp9@#փ4p4+pC2f^LAdu@ڝ2,S_5n`˿ʪ gq,%d ΀\2z{g-SLȲ[/ؠi8XnVJ>߸=)[*V%_Il*bbK1H'dYkf,O<~ЀkW<\z,&N`8o"D]]컉+K.nFױ q]+\ B&ԥXIsUXL^jHv7IkmN.yse'"<ٓ4UL742 ^ *t;ur`8&͈`,enPDGVLr*'0I>-\[Eu#&P ^TnSq^]eA ӿc0hΤMuM`un*_ ) &E5F5<. Dǔ,b=gPF=qIdΞ6Fap>̰:dUh|5^u^eF*pv8|wxbC<"BvoO Ir9?#zcUp/$beӴ4^DDY÷tJ>suƎ9ST{`$a߈9>K.7`źԈ<Ѻr7-=cAM!rP&T< G,Z=Ѧj(?|7Paj(ݸMNy/4;2L<,DZFcmrIwA7lGNZRBR*J!iE"c3b̕I$LÅ|>g7+9#ݡgFVJB '|7l4ZNYB;%bppo˂Q"I+D|a $u\syPW4q?U-|!蛉_K1ַ_Ky&5.ޚGÅƕZJj23US˜\ OWtٰx@lo Η;@$Pj=+}?^ČB+կSdUtbr\+r\,2ᓍ uzFBac >V?k%7D.b37q9) fgPi d!^8tr\k?hu.zEm$G$1l&!)Ď \e./#~&͓<ŠJ{uf)=GEM4hLCS$:( @ )fkX~HIdMM1 nD1JF\r9x~P:#rerd>#jؑgxK%`yǝ|"crtXiP$їg[qGco`zcm葥v771Mfd_'L T"04%35ݿAc܎–qiýf7VRX{Ң{^5b>K9@IAr1%!`+_U"dS46^A) Q!Px[UƣJ)HK5}VFGj0#$AQ/#cUVzJRAd^;ZE?‘$^d|>ngϽ:ztq`}-K)Z!(Rf-X cwAcG[hAu)m 4:{@FOA@űڳ2Sz׾0^If-!l3p 79"ifso%Zɐ?M=[TU :$swm"]1]b@ )m M8Dlǯ̣&:,g2Prbxoisق#y;W= B?w^+<%W[n?RjI~IvpE|uU ZXv㕁B:)S--g* [ʈ뺗o>fr5љT.{F7%XܕĀPNݐTxJp*noנ:R_wAYnHL.x[T6n_ֶao۹9гh?ϪyOCT5> вդQp gFHe-;a$8~)tD.3Z<(z%+f؝j~셺"0ї3cKRpM*S6\np(2*J]5N6~z<>ygmT$~7zG6M#pfg閶 "&>1naT<-绻=iDbUMHZGzvX(GZM縟!]_gxM!8i&yטL*e ~F3PUK϶[*cM,W4(< Dnfpaxi)8dmF^P dohUbk-{'8TW=/XȗCm6n, D λʫv][f(}Pr^w+Z@+ D!@%W7lm=ezIJQ񵻯_.&0IݸA<05V8 8gR+F\zHE>erE MHE-VɤNqB. 8t&Ɗ'kоMD"0~gޔkMRB"( 加WC}VJ-EmEu&4[I05&` !lzW6Ω(1E8 `k0@z͵[XsaY$tܡCdWlL;5\ jC  Zk+՚U)a 1^ktV^]`bџ]nq^7ATF f]pv'O4m f`[6ڠY~zV-æi|-6uH4:~}qaxN߇SurE˴g|b2Emq zf$`EZ\bf zյ[nu5KjG{&p/$4~??= ++WBi+Gn( `(=ܡc1=o\`F;kXQ:E GivmE4*>6g/0Dz$ PA@kR2uO]^Q꒗fEFcG tܬWW aVR/wXMmqPᢴ>C*r܊"r` ÷GSӹ$-8)JY^:vUt,-T<%}^bcodD>"y1-6d(&c\㞿05#V@ Økrvs?fl|_M4y~K7n +T=tQf  `))qƘu+SUنe) Y_VX{ Zneq0ޛd!PJ %OJ( Q+ W͐+iHzё9(9`ᨰA tλBbeob۞dI뎂۶7?tj!Lc_(@ mj諰 p[V{H [815m &mzcݴvCx|A !H˩g"KAOW`6+P@Z8@Լxn-G[>6m3hvQf *W 2w l?)9&gb90QwHV>UeHNǼcp턛D6 q:Ui;޹A^`+l XlBsrQHg'Tv{׍԰[9bxV= {gA=H`z 9}2 TB^ !n;NbG'Aڭ̀Z8vЇJ xֿޤ1 yS?\*t^+oln`[cy̭S䘩(J`3ꂛq /EA0Fy#H8b /[tH/Z91fr:@θuB f92\hmNm[fD&+8Z&o2[e6T.59i,yTMd)p>dTer64vetSZɧ  3LNy@QSh}V,ܑb4Ήg36QCL1+3mRyc9~5qя+Zћ|0 7$< pCF{@ͧ?4hT6{>|65̀lYE9>vBFm~ӬF'9t[q|&z{!΂ iHj;)X~g.ʠxbD=(^e byDRr v6ͳ/=`O?Z{N +hWlȠ6*fӵK|c&V]B:d-Vg|ŀpBG)/\({}me6_5,K8~I VGɰ$^BF,܉ om,ΰRƶ;rYn}GXZ^'lF\]M(ZPv;W7un j D_Y,u0u< ؁*5&[]z)@G#3l$ ds#xJG01Q oS#(>Oۘi 5yϽD ބpɴ)hB]VSFC gfd #6nع0[ӬcZٌ lGE@ -ށOSəJtTFrCYDy-b3? !pr~8Tdd{TC~gnThRtN{JFsbшݮl.>f+7z`Z ߀}T`+o<; (dBRZ(/A@cZ3J~ΩÂ1vc}V3bzEV({^xz~\lnu*ig;}ZB 3q^‰$)'_KGq)R2f>U9&F€TBG1@# +5=CjN9hL;/ Ӈ_CXQ^lyKAߎO /5_-cl>n>D9{{45~̰Wiqz 8SŽ7>MPV=kJlQ|LtE^p3#jqdO$'TŔ*4&z_]mSHcex}&\;ٜU`*)F^LA3C&R5Quug5Q?{8Kb<|T~F&+A+G=v!q[@+U].2cV`ÿ/)hv@<kA=pHxoP S% Vr7MsygV7`z|WI)E"% ٻ:Atrg+iyRoqHY Q"d3泬SX{| E#N$He"}rM<#Cnr ^)}n[rM T''@?U1FN#^+"~*%mh-m]F7Sa ӮdV5̀Ү;iyÉ˨F -/?Vs^ Zo'-/_C ("`{lƾ m7e=ju/k|pcӪG+Xl*BSgBe]>x}]aS\0Flk1^QivogHfF|vA##a@~Riq˼3bCG4~^-r=qU=y"LF~&~M; gf6Swl%ugI%ވ'ebhF?qq!'~IJ-{Ʋe2|cDNpVF:rwٳt#Blwsq8J#mjh}] GF|@#;9`竰ז]OE i\#jq_FnۃR) ؗFNY;daA"euċ Gsb`gD+GkLTA{z}MN.2Le =S@a0%o=xR,;#1Yk#cpoeΉ^@k0>DUdmMN-lf(FF~+Tא*uSQXx'oA_>W!' )"+`ԃszcEy2q̸jWa6qmvVF2tb,)֢.%״Ә1ˈe'~޳,Ѱ'3hۆ!D>'.W\MJmjߢe}@݅ ? l ?;vjpX%A 6:Ue rmc"QcU7=Nd) X&ϔ~xf): ,=%1Xۥ`bs`oE~ ` <ɱ㱿|bϦ􇵈ٞԘd.6|0IP{Ҟ B+~iQi*EyRUB6j ZP zbVXgrɇ>U߄".]0suGj}Q=^<~(άfp,m+PMT3\EWa2XGZ/+g-=fW,o> n|ء[\ .e'& o}G+T y`mKQEH|GՊs>ߍ,O{Nٶ&8sq2qwD<x3_zעƛ:s.g-kz"d7-7 \tpѾ6iuWϨ@^Ng2X RreFYhqfHw-~,bvL>w4YC0Ij}bRc:;`<,DPpÄUjܧU:㐛S6t2$[h\tF֙IGY?#.} #\},oQ0x9SxQ4KnDl8("x2(7|3F?(QG1BrMކ (;ͫ2Mk7ڃr!Ŝ]7޸0 TȲ8fQ1~ׯRV.{o@mQVp7(Ʃ3o֕߇[> WCVimYe3y|=GS&RioS5XǥlVq҅.]@?FۘDJ񅧂hK}|.Mcdht'YbӶzcO<'# JT"$W+'LZ1I~mU9SLa X 簻vmv}NδpEFиoS/`Iə,Tm-(3{ $FAy7"6Pۢ!Y2'~Mɠ^H0hpi S|%IFSMr?cæ$ ˙B=OƜY_]@*kwLr DO;H",uN&Ք:K#UP6|9׳m LKFbD^#tWb5ۀWE o lmo'"::tq|r5 K?o[㊒E\xG`y&-Vyǃ a)uT f6BKh1˲g)ہKx5y"`v`jua u-\ul8v Sݍx_rNA ; AC&6 :U]7& 8.FOs5 $Q7AESYk+)X("ƕ9<";LĚ~O_gU9G._{RFt:*(1:Q~)S^A{EL9-dg,=ria|fopQeCdXg n-[ 5˯$.l;BRtWcK7]PBqZJM`%55..H }6iQay O_fGgn T-/D{:Vi8E f6X_6>1ƒ/VʅzBh"uA_v97ɂAdۚ^ --Q3ZL82>zarS [} rp: QQWIzQ?Z`adFo?Fc* _ _ o8ђH )K9 3@'ퟹ$qUEPWsLp`XAqj>U^,:`8{@6Fsb ,_fRO^S` &']Ra)u*׍o 3yJa$]lOO J {;=6bsC7(UcPoQ_fĽ$FD_/E -)M!On)tR^˦J Yld゛Ǝ㢔i(~->UDʲ*G^sf0/z? š`TVuWיwyiDPa*1PײĒKm\MZFNEM/0q̆JsZiy%A[EpP .q\0p\{}i.4kfr#s;Ri ;jRPn[S.eJp)KȰ-u:,RvBf&\\6|O3Xj=f\Kϵ(( sS z)7_7^3]tJ^B3f"@d*Q7Y;<VD_ F].}W+o3bHu^{#'挧U[(`*45e˒5syXr7OwH(t$#E~-ވ"lʸͧ Ξ L0ϥo lݐ?$0M搨B2e!d6{/8/ }H"ŭwP-*Q \2{+uеto[=!so0yO/o-Gfn:lx-|w,nt}ϬO\y` g! `1d 4fIyR9w 0p7ryv&2[(bAu<")hMʀG` 'Y5wΨ Qx.lHѰFV$ozCfZwL,MrjcDaGo._O:?j]`y.1+9 8(/ AЪꟺ&Ĝ]E(7}6`ywbR|* q03v8 'xʡw@ |ojT]y|`ӬbU$/+HI gwE9Y?E-D ! .˙cwKS !qϨ0˗Jm*G06yY {l](䚱R)<{J{LE{juEnKag'cWiy$da]CY`@%9ݵsI^w^н $w/xx:=-?Ƒ5+S~ѿTwI PjZ[%TYp G_Og d :eCLzotȽKkKSB0+J'XO") y z6Я1/!,*z>/IjO-σ%EѨdGvҢϊ[TgkZmh(4 ?٭yF4оOP; 䛕rU'\GGk͐ t* E7쯮5$ڈUCVңSPLK U|90摨;AEA .7N\/S:../._:~εiQgQNOco Sq&5#W?mYθ!3Y‡aIZU5E.u (El?aݫg]? ڥ젉s) B!3! t@V"+ =&d`A2*y`B XbC9wMf"!W>ޣ#ߒ)5; h/*NvvrHyMC 61,|9w.j5Y{9˖#u*1&NxQqm1;e$v?wlҖ) |T|$:9y,ʖG<]^ Z";4zc9ͣ<}si5j GGGfAձlse)L@U#嘔Ek ҏp*y?5!OȯJ}fh,%=%'2(\Bj?kUA+Ȯٖ ??]i !>W碹7Z_SM u u=Gu!@j``+ev]p7T,7>^=_K;C`"k78EFQDы HC;5j0Ԝ6y؉zjbljFׂ/(vJ%zGE.qRQWr]Ŷ ^ |/.qe0d*en dT24#68΢\cECn&K/0@_?t|Թ \~ 9*RҟU'i1.@;+D.'߀@IԀ{D5׷>M ť_+Y;Ƈ= :"{t}Hg`1QqE%WQ([ȠAX#L'ֿ -6q-Cv}״S`uJ0ݹ7yvIשnd$\1!|Z)Cٍ 1>(5>Jy-N<tiz$缼4x{˸V o!At*]mpgl_*aȞs E~ hI$ XYo?jw M]L?V9.Dlb*DͥB 9WyPe̤O{E?bDX<$d4n¢3oT~~ AGݑ\JQw|RxY4 'Oĺ :&'ɔY?v1n\_T^͜Nɘ;OdHq9v4<=Tw/*> ORVZ)|+mщ!E0d~"Roy 8/ \jۮx;1~ӎ }sP|q鎐Óz|- -ǯ4ƚ61\&*urQq<|ef ќ@?#ɓV_^"sZ{D ,IIM X&;[~1\!*2D "+fK埞NCNQ$rHC]z֐NGf{{pb.(sT2iUrI_i;` 4Qds+l@98;N%:Z1}`r8,!ֵ=7la>^E-"RdC'l$~qchL .Ƅ,$6l%ie`pԉ;4G*y}~Y| 3{vV+CٿO]/R]5 L%/h9;'Pگ)o&:f#axCoهM:HCm@%$1_Εq9>.~ ۞S7.D^rs`iÒmf*AONaiafk>@Bo{1`с`3=2 g&<75.bNh/D1j!dZf2 :gZE8̝3$TXjFt?iz1[dnH@) -F\jy8ܮE^, rd4/8{LLIqjiFC\%UOv.ИP.X%3xj&I63=^tgv> RT@wKTf%q̓ }N_g~?ΐ7zU˥G54z1hGX]$MP/IjK vsjeBi 5ZئOb+_[1b9 M7EˤfUf^l&!7gBsk!X- 6D,hƢp)OǩO0(7ݬЮ{dZP,m{\tgMٔvB/>&fV}uw83(2'iY.~iV'qW8 欱8yN(ʶ_+M,3-y,o;tO =A :0>`pVUwe?1t@@tZǥ fhqՐzwt?,=iVI%n^i-&q`(" MN\z/՗  $48^u7Sکg !Jd'{j%#a(--iɷ8 dh`t ".M 3oQ4R1ۮbDW qc=mMxSnGR hi00RYhĥiqeo 98-#^D條[#E)ͨ$Nˠ1-P;kjx`6 erI9wk@f#ʉ . ,Fλ~ȣQ@NmD,^˳2nM F)ן^oKASSe:.zb *UF!lp[t$OdQG)nLC,_&U1RGrd)6I)|b9y9|JW?iƣFAa$b#[u0dbB;ȮKg_)8Al랗TY`8G| ʝ8oQtnޭ&q *2Eې]B½U1:eh}ZhN;BFArW̹)y1f>o(B"*8~t|C`БaSv9P{h@j^=z1v8!Q4f(6oWɣ]5OgT4}D3:Um{A$ ^jZ+tPo;D 9V ?a <.\d#^ =|%~(#ЅR_!VǃvJOx;AྻaYrV0A5 Co?P-]oR=464!ٳsk6:Ww.Q}]zya_}oyVBZ3ԩN[zvn'U~ty(7w-w;4 gwNw9jw4]XmT\zo'=PrXE'/," .=X%94r %sSXJ[&ϫ_teBJ(xL<zhZWD^f OE:k1Rȑl}̉E7=إp^*)*w5~>!PJD)El2{#lqfcC? )h& P9=Ԛ^\VW,w<*WZoigMnn*p.cTN0*,_:bLm%@~VXi.ekMߧ<= تwtPJ WZb/[>}i4U V쫞$sh='_6ydbtZAP<;5\o`K[n÷!`Lɲ^/׉/e.-@Oj'"-h2D֑5fǐTpLk:c)^g[*Ƿ6ḹ/`Z;Qⲛ|dc{`3s3d#8WmNi=6YJlP5PUnrgzMt@\[%7>ҒX̫J5='c3Xttq7 \T+\ŒE_[qB i%h̃h!j.$~I5|5p.ԞsD$_&h7t5aEGpx1j-= M006^Bg(^W0Ë́NiѮޱw7X 3R c[Cd ytU/={ PPqO]#`j+":d\=sEN :}BGЏ"]Q3`HAȢ Y@sX:ʣHvi4K2-F+EZ& % I*l:}Jbw LQwH:?ev52j f*Oӑ7%/a! .SC!VپNdG26Ѓ +8y%fħmU##[ai(q8 k>ۨl wihg+KNq3~xv Vz1Յ[K*/pu;X*Y`6H]f~WT?ëw~^Rki"M}RʸY%aԅ=jRDS]1{%NjwP'Z7$<:PĒ*)BsSçqh,-lpۺ;,`/GI[:O_ lh6Q bqiGm#}PNbs<-vn| 9_OgRM։^2jāKĭ VɞrbB`-S`kf牯#1r1(&)m\IO[4cr~Th'K..Ձ5miiY?" $Kbrx6KM&[ؔ~b9C sй+E1\XJ GI.6h IUP*^@7ο f\QV ]:[h$N#Lx`/Ԁ^]NE0ϵlk 6ڌ `QRsӆ=M5Vtbx 25C1`ԬSe2 ^ǟ|/ BeK#A<ɨ:g fD |Y XKT>r7J@WH?|'SR_^Lʿ}1pɶ~Z.M8ILpoujl[<RYwQ7Ku59 G+o":&ȕ,^WiӈbZ?(&} m2fhY}݃_=/K~gs|.S UNP LޙmZV=hb),\Rj` B&ZI:Woz_i˕.$~/g)ᠼF^_z U ;G``5b,':BR(6|Ę7鶡C+|fHò7,y(Ы`w?`$9.4XX}cY<.u5npHgSrLQ[lq=1>xEQ-*[C-Ky6,9sAp^r$;Ru`1RYգZMA=!hCD $Oa*oay<<:eǍUm&%o> _2GI ~j0h/4rT!qշCgY:6hRM bip_T w!;HD0׉7N"Bp};r8vtWZrbaӏ%)g:h#I5?nbN'pq{jJt؋]6q =ckI#yKWos2w^ۤS&w: +9} GD?kM:-ɞ xYmT|yr)7!cP1li)4&;l5Œ}ґ#e&z.\|y?0 I\4Μ֚<Ι:`’45h)BS$Ȇoq]x)2;DaGj9KWJA:˅?%m\ Ǖ1w\<.V[15·o% zՀ=ݴ-T+؀f$i"fW2%ޱ[KP]ĵ;AP5; Z.O˳{]FӋÀO9[FuDF]4X 4OV߬z)!z3}TYlCT d/~Jz^yN'Gꢄ; nrY30 <7 $ F@Ms~<愻[=h5:I䒪ѐ֖#biU^YHTqWInMS00ɮ.J@oael &{o'MTCPFndta.o~f?4iI*+uZj;d,g7n.(Oʮ/j%2Md<X L -zD15iM]n͸ p2i3aagAb ~e вMYkQǃD88;"a=!J΂wMsڱ:?!E.otPU]߃"443~Sr0E#}tWѫotbQ޸g@D~}z@dh/:wflgw?I(6=p0[m0yp(bEXL/j08C؃[|;Uk8"щytN'>lBޜ̜. T9| /8j* @X"QH$Tm d^j=XŦY9x/`:4v4VT帬aK5]RgS^Y&>!_YFp)cf(r8C*rd ;n;Hoķ 6aX;Ɲʼn5co?_tW`Pczr)dx+0C8Fm375J]O=ֳۻ}nx S(xWddR5D&341ވMœE']5UyrA.51p,ToƏ&OT>d;> =k?򣥐n.4}WDCq<{?Wq\?"~^nt|Ͱ|oZ(,r J$'"SNRܾM& gcs!\ oM>ǝ]>yߧ f@UrS1Hec/:8n-6jt78NI vZ]5^Tu0IJlaD1h DhR$GahߗcB:2aaiv:Y3D]!^MF:SY Gz\Gm?ϸ>JൈZw톝ׂH:r}8jZ{c /hQIc{3~gLLZ- 讅Q N_Aya4W hvZ =\j &Q"՛Klbi1#b;be8K|Ȇ9HeU'qU!9fɞg}B{6ƔMeGk%tdH(Z)Wgo=NdJ|Mcu:ʉ𽔞Rmklsm|){[bk"Ҍ|rϩ_xlۮYo]k`W9lu\+7 /Rq: 9V,Vu3͉jStXͦyеM)I?ex1fEbm@S~> k_-YH퇯_9sffR0v SEU|J3j \#z&mE1hQ[J_Lln_iWt7NH,$7)Er.Z]D*AZL֏`*vA>?щI@P`~RҶ̭ }iUJm!#p5cRXIw{$CX|O^^dV/(PU\_Ӑ lZHS-y񘯣%彃7˃;0D]DWHm?bXOÄ(gq#>cF &\g# w4W2 SSt4b5Y}tfK;Te^p;洗s'F;$]No} Nit nlBdeMKDW^7d0AZցܮVr)3ڽs_Wƒc'xlrGvLq+U,ppǾh['Ԛ:v2CCa{7(گlip8FFfb"v@D)zʑ8Y\`عFpR\k62|zV_@ЭjRטv \r3i4?oIxcyweKV%}KAÁ NtyVYP_)FU1FK$y@H S(o{#U/%`r 5\}hk$ 9+"ب_z)/ +9Kd^Eޏ0[?_ڷ c)˅:?5Lnr?j a׈hvұ$ ?LZE"/&E8*XvY _2M>?.^mи8ŝfB)NdmY>3u Z"2iPJH_&E#"hKỬFm3Fx檞F;T0gy$ɖ5^[L41X`Fot+fbvYǐVMuQг<$2oCGar̷./DF{&xrdKP\Z@XNH#Q?a[lن A3\ ،[?oGDiޝ/Ǔ$!ǡ{Q3p댏V?!Off~c¯;'$4jx"/x ̒&^V1t0M ;Xf$ȡ冖G-ΰ9d)];rq `I]L/Q@{\w bkCLJ[G|6N.fUNe$QaZC\kd#T0݌J5 kՎA4w )'fՍK4ݐc"hwX Xѝ2ԪK6M^q?=%) 91] d*M.v;x~&2 . j,}_ZWo2)Y"p*5@3X` xUH|cK0JO(‘ǟw_+kWc {ORARtwS+d4p7 Gd+'Ù?h-~sxDvo\ٌ+q" B,-2 _k+' S8+n8A'ᦸՖsY58wZ$ eL*gt=E~>8Gj;UV ? n1rYo-PqfIN]t:Ho<#CG􅻥s3Lbvx4㸭JͱCzdb%h {Xҙ1I)nMzt`DmipTCP| z{e TăV$шقI`z¸J҄0\<2/x-./I.`qiW9kHJϔ\b׶~{\O-YA7<>MpŊ>.6PMT\)9me@`i Fx>Ǝw8)$0TOI@1 '8! >" "tK>pk ef:d{b$ep8q(x@Ox`02Tϴ 3\nQSpTiCU94/%"S*([ v4ǏtREJ;^Q^\}Fb)aO:|aotE7C6%?~D{Ƣ (E`@|ۿ[z ^ݥL~mܷD`}RTL{j8uo~Y5n%lY =GEFag[@s\8O:'>(k^sth0قSVnRXHwPJvfjB >:N)r'$M%f gZ.[sC%0?{oJoi5F$BF, D'G{f> cK[,6x -? ^ X-M4 KC&V<:'OOVܓ&2k[zpP>s[/EZ0Ϟo!ӓvـ x\J:/]N5|S"Eݔ''X+_V%&]6,2f~.Vv&e==4驽k7(x *oM7OHw~Z+˦ WkYԡJ!*\˪WIƯSGjS4(P\`jHw(HgI1*`>.;T o4dgM蔡65qK~LgN F|\AcZ Pd)_SogkYR 5%9ɍu0Ի){i 5#[F$g>4ii3EN#C :TeN-nK9><>"+6 F%_(hg[IȊ=,@ HCH$.vs< ,t*ZurGn EW2DnKiqkaܺܚ&MaG i&.C cl-AMRIZi~P(Ϩqԗ UB衏]S%8^WG~")|#tGMl>} o[S> ȍ:e Mo]iA4CC!*4va>AG8)+k8k^]9@^RE%i:/ow;WHD8}LOzX<~y،# L_I3`ckj:z]6o7 OzY(;:GRq^W0z=㙺<{+* E,2[,$'M|O=cr/J97#.S՝7ɻF š5^k\%/>Z qгçD=u˯{Mn.We& *v(x>7+6s:}\ ũ%=?D 1!Xy8PTM9\ Z2ב,yFJ,͗I ˀG 0o1đD u 0t-u_Ce].,I#~옊<$7 6I28Vb`=v)s=py޳m'H u GHUbopkJBS&_D2OdIsbf>m\#Qc^>5x F y v0t k&<&jW7i,4[&M}7;BpG͹~ F-)XU+^?VMlT30>z /]Zzgy\%>>h{͎_":]j6 4ơ oiT%rhr3Yn[Ԡ#'r(rTJ@N)b kUj\@/kbhœ]_ h8Z T_暛EqS$ş`x~ &)X+"`U†CBX6]q5(Csr+W&, (nD˯-X} h)]-h?Xql;Myb5j'?i>t7Y= >Nl#C->{3| G1%H 6exT/2+JtdAxJ(Mi~,A<^Nưiv( $]P⚃r<Ti;m-c]$pےs ^H9腊 0Ӵ0F@6ux#ō/F5e}C*l''|aЪy1$ @IMO1oRQ 峹"VlX ȓ|7Hju$V1(6*>C]43 ir:V<7{d:\ Or-ؾx$} q^ e͖E0ϥ4L>Ogܫ H8&F$*Rv=Gc%df5Uv$TiȃV:(fjra/3Ai6tRZ9/UPPdV;)n ]v~Z5fa~wP?T?uYwbl~GW8d QԵ-:3Bq5HW=s#@*sde1#[u cཌྷiڤ`RX^~a$#OGXO4QM \yު2($̔Nd*O-_xDTd1+H/rn~^h>/ Ŭh"g+і Aw M]SMғpRÔ$qss-ÔGi98d\bK5U7*!h|9ٌi^ >.2B/݃$d& {Gp2ՠj)ָw(W.iL ]^Pa $6/.׸E1FVliThE y{)e:ٔ"C򂪿lGSL Tb){o B⺱dF =D@YI*ݛ jDp! g?jfTKT ,hc#7RY,.n93J 8A:@[ ye}j" (Y1PN/I9@҄ssWϦꑰ] 9'ȧ[>S+NF0&Zr 0pxi3̳g |臩4,!y-gE;>%'S N?C୊]j )GVߍtKpaR8ڪāfWG_j^1?@RCX*H[U0J JA2?ʧ_{߄* nfFTۛBE09Ws56 EhA+5{upj,ipc~O#=ػSw8@ȅgZ8(Wכ%q *G6{ → Qf7P8|nGx5r]jOVRȠؘ#͚]Lb ]S^r5-8=E @ G}Fxnk.™a֐@Tu'Pr^$M xBݧ>%CQ' bQ(Q8> :Z> :ڋ>Sph/)kLHXL 㺇* JU'r+ ټnE(ݞ2zh)x؃&k, ggt+⟟$EOqHFR 09PcWK_&d!F q&2/ӈ?hsC5DU&d{6Vt,[ϡOhRd$Ƶ8c&y%0P; N:B rM'#f?>\=D9B$P s5~Т `ii嗿֢On;:'Ω`ipQ=Bxu#9Q΁pHEDJ^|75,RhS)-#s *B9f`7m|X$$ג%RR}fEi2[ .P*崧q۶4Mp'yRLPg oisNf22(S4Z*BHn#m[[DJ*m"a4,@9lx]#?(^*q3(ǎcd;!Ur/u3 }#>YԮ7ɰ[ `HtVp L /Z#!&ַI!MY&gg$f w3eYVP73T-ډ*~ }WI_82;,,&$ON XTxKh!'B!)5j +lKgT*&Џp+3q%lR}xy_Hj߱HI =I=Ѿ=͂yԺj?֝(ͽ,i  엚&8먩tF\MڜHT}4K-IWHg34:vKB=&oċͼN%GI:y蛏'ۧoL #vr|" ʭ?EGڌn'kRAP*U#dvKBq!O[UKa{"z0)M_8<7+ߖh(otN@OlU(KVeʹB_28H U:-Ly9?¡`T&ojz_"B.KwDK50C-!<:~슂ws_` l`cYg">DO.Q24׻0 VSF9b_=rvj%< aTSM;0FX ryl_C=/?lE: bo#F"k#nVLI^QOs#/,Y ?&ŸCun179)Xf+ j/}8ht8 !pFM[Ҭ,Bypv&3~<x@w-ws{30*Jvwۯn͵7(qvA‚t:-PbO9ezRc>>k:kXuT?%|I];qJ ]<¾VA6Nh 8OQ,DتMd:JF^'-H`F CxC3rtk2|,EXWXa=LP92)@[2/*~EpR>=d4hTg"fr|YPBVPmoTQEà2^+X3K9g\(I;2pnx^:29gVL0bWu#Ƶks8e8(b~Ͱ›C;?x:h",.L _:EoH äcTpwdP π ŽNk5A`L|L,H_M&'p\cKBtŏLLjȈqd|]b =떘 C4KyOI@`e3yAgHMs$gى銂avkn7{KE֋vLޞS <mI|̢v_xB%rl ? {$]2@SLvm/m)7:g5uOac0B9ZmP|<|)GrL09RqV,:ERN@jJW]8TF[tJD J=z b,öĞ63`qr>`h"('qK2ѭ$Z0l6^ "ǚjF;gҽDN[U2*bMHR<8Nbqv20ᆧr/kbfCl4?u&(~KW8fOXmf7̳s"EW0 y뽟n;*$YH{遁jGW lxتdipe)6h'.qG7H `|\9Ֆa X\{0 k8hnfD`3.|K̹0T`>_N%S?A]ybia ykQABИ{, n1|rx.Dž{I1v6m$xLɣcaurV"n5Vx+үSN}ah` ]'f$Dk Ht^aB9sƒpc',.0qȷ9FeTiM?C@dOUq|)ΙաYm#iS{AނWGԸz\OHJlDYV5Ux5yoeq<;Dr=|vs% tML(hYq^bB^6rޕïc%gۗG44AeB)(qw#{P/DqC܈?i0yYDz/5 :Hz_w 92#JW1#J!4_"$>buMUx!19:0* nl ү2儒o2=2}iD K#=IThu*蚌\*W5M;8Sm)}W`E ОzׄP q{R4 }AoਝbF?3@4;4JоhGrPk -ݍ>%f`jogں?2 JS d!kQiIx/k_p9Yiw1qD:!X&z`}cccO@AZJql|%!QǺK4t :߈ZT =U~Iۉr L֚R5ƧH{Um#zg%X7aw ()M\ 볭!D6/HvReOA|͊'rT.jsmlyWP)r R,u:+(!<{}1JTtxwSPt@wR ,Aȳf"p$ʈ]of_LLBo#.Gb]!=R RctlrT#irwMy0̰|Fݽ-3ϳYHz,dl"G(Cn;'#XIU+APsL ֍F7|w01Dշ QH 3 `Uڂ, g/܅]:'h>G_7{4L{i'N-G뼿I <12 kPUGڣv5r>}TI:7b ԰G G!--Y-)ڊWG}%fۅzS0fAjY|P.);V/[9 Py0c|}Vgލ_%J1"&>͕AWPSXwk_6)c-УQlZAKb(Q:#)(4ۇK_YKTjdeǚp!/[(~E,= _iWف^#BSt*ʸor#ݫNEP@n}p.=swHKR%ވgU(k 7f/6T"8Pߺ43!{)pD̵8+Vؕ[gh&"?'v(CL#7]EܬǿCjJ7ha݃u+x;2 I/½+HCa:&?u+7v:eѡ@#n! um;'bUU&Koh$yK@׋I;{:|'ĥ'Qi< Yśjd Gz@\w ;a W՝ۮl?:ۃضc6_rd{$xk4[ȉ2KjoRiP NnLsF*̤Z`@MF#` 3W9cr>Q%#+'ܚ{CGJ=Q'C{1Xk!6o` "xKSHg6wW=k9}W?whsϩP64{'mYslWpx"M~$Oc+Ҳv$ȀnZ gp&PĎ;.Ђ޵$Igz%A>}IaрEEO W?ft IL-!#ۃb]6g੷_NKfFс>YȵB>-s١ʈy9 y9& 5u ̳5^8ō@r#:Eo vZkdT60ɇœ5,3[^{5o0tSSe._{ٷ8.x%n4zrL !ŋ~=A^G_vfXʺ m./#Kv\RbGuN4PLIҤf0S/4Rw`^kN.f2f!>+ *=x";ŴHVhT;^|_b5'ٽ֚&:ʳPƝqoڵax@D&4VpMZXG鰪_`Njil$.Pt +?h~,|#2#BKax)S+ f)P4q"L&$e/[яEjl501i>Jrb ʫ@9?d|baYgj UGV-tPqGQ)j3jyX6P1=V4σ Rw{p/X{tj. Gy#rϰ3!9:Њ1Go ZRJ6S*;ay @iw)(!bbq ?T:UC8'9q*4)9c,%H>>!Ͳ)/8o-M4fQQ 358宔Ùd+@:.y=)|R5]nsjWA= <8*kV3Ie ֧xN.Y :TaF>řzZx,YD0P5@3)>9'}GGnk^ZI>pe)b_k/{A5DuX'0+ڠu+F G 6̇_|u6[YRN,-pstƾ0"gі_;qUϱ}̶P kP 7Ft\NjhJVm a㑤rSv>΢_"]c+#*˙0XIp&Տ#vMK2u.M3mM^w+)vʜwRti0*n"Jш?2aЁ .[|cʷ%;}M8T}r`.祷&˧WXs҄#)$/i! (cTf1#4n ,+YsQ@<%oҡU]\=5 wLþ |r%i YS\X뮰qi{%Q$m^ w5zToTuˑĂJ^a窵CN;@-e^O?[:'fVYO/Ur,<'zmL?9<L8"C*EEDvVVh ^xvIbELnwol9s2zM\dY;2fAwu#N{"ArB7YduGhB9 Gym-2?Đnf:']GN25 {Ttr:fKf1I_+3Z;#JB N(z32)ƒ&{^vVz ߯|+EJxe7WD{֖WmfIʀy`7Pp`{1YmRg|}<7FnZ"in% x(Q(_lD1I9Kln#BEJ̵7JUf?֯ S%mGui 3:8GF'/w?BԔÞB@$ӵD^w:MnT j@\~{us` o=\CR&➍ѹKi:Lmdi$J[_@mFW3k'yQwbz)'gl@A^Lh"7 c5Z sizD= TGe9hKA䐈0]Cg?kļwgC$Z`+H߃m_M N[GoJۿ~ 45ȳo > ;I ib%-}LR ӳVR1 IU\άZ$wOI#)Ob a_}hs˩[#K0h8U gQ 0؇ᬲhҊ_ol!"Q q B5"~Ҹо &,j`qb0N?z!d2uEcԾ{ĕ`MOzEVL@+,HI3Fd~oO^=ߩ+l;#7."i $qI>#W/^Qd5ai0ܙ~ìEj\Ed/кX^"M ኜݡ;4TN"8i}a@7X[C4QNJ{b8᪴=R>, ii79Nd"{dH5t% jQ00<_tT.Md̤l[=/{">,BbPM7x4q<'l ܟHYj)/Yf5g>%ryd]^ A6Vpsh,v 5o$\u ݹR!#p/Wpc^Öw%fPmU~EdbےڷtTM0`D{H${xë,=^-|9 :71p،X3gKUv,R7LP|sW} k=̯v6_]=> KqA 랅@ ]uiB?{fQkX `JzYUf<$1\L7Oj!\6Ș̉gڹD "vӣ]+ bwWň~6mTf oMds}O><2}t@*PƪAmoRΡt 5 |iW:/F ,=0ts3m*O6Nq?U~ it$<+p G٬7E83YfEHr"JRn/XR}Nt27勫ڶ Ȧ)w5lsHWqt'NQ'sU>,;@%'Pe޳iR퀬ӒBoY.`gkMpGwcTHrܑ͗P!_«D&2kML:}.Ȕ,grc|wvPDyԼH`B['NWta~/Af Ѭ-h%)Iŷ/z)~p *DA {#"4dCm@[0n/A7k7^ ),&D r*DBbW$QIqe)B\0v G.z UY>ˌHQ Zz60nCտhw=Ko oBUen4tj8-f νz ؟ ,8~moˆG:„7W6gWg/!!֕wצKg!(*ZUʑG睢vG"BٹkJ4L:dY4$y+\e+lx?1lӸ[ {@4JOj8DLDk `;|m2.bI]OG憍V'AXʬ1ß^Ku,'&.dCpfV:+|$YZkC (yU)NrQPq!hnPT(Ԍ2qrNEdLQgX.o$ MKx z F1IK(J]~j]w(˔kr 464Q2jmxEaޛ"|F}21Lv$iY+64ӻ[Ka'J{N Dk  }=S}yfIBHXJG΀o {{.:K6N?9,L/Dh5LLd\SĮ0ԂH^v!P;XsM$2O?4Gi5Ĵ+c ]g7UDYobFaĝ(nySaH^ώt{YSJN\UӛNwj!~fp>YI<+ìiR9Ի|=aIT_bwen!r_(33<#=!Oh$RMZ2>YT9 Wt\G,DI#ŅExCIwTի7^RVU&?'QNL}l - fjQaw4l߆ҥ02^_6>Ϸ'ju%bh1ɟjOgN2QSJxț6i"K–>v`YOpU%`*@CQ.f*-m{214Dj*{v"GFrBu2|ցN4 O%C㎾1FG,?R*H4g;*E Br5!i.jݯVTM^jߵq:G HEYt53`fwZ p"`GA<|a>vhSs<ﳕ3#X[R6<5NAoÐx/m\$_ܠɖV`(&vkI#*<qiV c,/nQ$Rs i?Yb59)zKŮR ~Z "IFU3"~ ?Bp1@\M]R](j̟Yvth}.q?:$y7~h/XHK$Ǎ=Rv3N992&!ыh2U8ghC!AZftЭ]h,/0m$2SɒdܸG=d'#Їb9(L+me2A{_\53>oJVUUse\u~<1#: *5B ?Yɒǟn;/Ee䂘($lS'oE:c)a3F '*J-I'%j+n@i.ݲ!ۦHM Za'ɫ+5 ۟7Mވ#)TrqI90e> ͊;^_ftbڨ9uD!񗋩:/UlA}Y5Pd5ӘRk" hsj—eLR"DҴa{ƥ׳w%'!4K|!&~<>*r6YU>krEP*OYku.|pbəcѨl=MϘ@-U-IД9Fw?@ʹ396ee^Rw}x1OSމk+^>jeRR' r 2r\]uG/W5h^%I'v+k|־ .=g"%ʕVD4]wF֗(3[=Sx5ngeBꌩl{Zc1cZ<3[o @]eHPڵ^-lyIHF΅x E]Ct',a'T+!o=^ cMAiA(q_&QSgtڑ ˃r74645\C"]HW`&Aˌί]Z }$2So8/꧌(!7S)Gㅞ_j|7ZP^ +Wg1`RYLtrb8p VtI6˲C.$E1+/pcTf͐y-Y;6ux.ogԀwUvy/d$ܒBd0DXf|cꆴE#m`胛^flf-C3)4Gpzu=`%mU]hOorpc;&~=I<\ yegH԰!2`WX)hD= @Üb\Ln[3ӺZs 2plkb K!,я0RSvfyt'89gܧOҖ3to7;[o eb:Ƃ:B݊'}32l!A :5+Pf7ʳm"QV9#b9'ۆsC]:jUx#{$IT-T(|3 ?$] nFsvkwU9 t}AB>Z|!Q !*x$' 8jإ.Ca?UvGkv_/TNNW=&Tq*W(2Q-fX: /luQS d3$יL=xa p+j敋ϕrdȃX˒EEIE%08?j#d5W~Z<2s.t«7 ZBlbڿ*&GEϊkM $) ;z(茑GWQn Dҫ=92^ޣnoND.u3꽺&λ.lkhoKv8=D*چAW}ǐӮ&#yųj6f 1)ҷ!xݎ.1<j.9YǨԭkmq {pVK +LǤUcX L3EQ&MkhaQ9遟;B{,ҀPs(8r%?"8,^I27*;T?~8\Bw0=W[ǻ/}K%޽W BЫg SV!tC"Д,SYWL_wYqR8'"K"tKD<b*>ϝ^wfd+^t?$;CrcwGUDtZ/g TKY=dpXaR^oN/`0X̶޹W sPȳ8 `߻"NJrT2ibL{FT}8zV~ޗt g>YJK/ltYdըhujҜXmr  tP)@b> Uc=Ӌ|E R`6H7+MVgh#<4$ 9 1 FXv̖H&д' w /Z|.$Ob.q.62yP d4G3mXJS>~J-U!_]f ?+. ]G5`&X]+~DAR}j|.@ ̺'hW,_u29G~yƷ(B_d^}1ogUv4mua#tXSpruţ,K{0HV>.:ierkaz6uV0޶W[%]^ֻa_?f-w'nAm\:Ϧ4CJvMil?FJM[)ppIk*xVj7a+=:aL\>J^.TgQ 8-*y]o:b(#i@cqФχ:;LMIj9!JD ꬾFa+M*XLEuƾ2hƀ$%O%y C٘s22/ `8=<>f&b)M:$H?I#S&pH5*H\#dUy/Pf80mܙLeFgx?ɉ :ܭ "59ٵF%nab۫PU5C|#@WyOܩ.mΛzފRG$/Y mRsR:'݉Y2T1#NSBvptSD,_Ӆ> X"z:/TtR6Sy#4)2_(ۈ90lgfy&Kj_Ȍ/TIGO f*%ZSYp} |&zR"g<vkmZFT@-VIHօ|`NΩse@DǺ"A'c<5ώB*ʶW8SJkZ8qs2"5N!];~ *+ |4aVY@&Ђoe?96~luP6Wq9ُB Rܿ?@qsmf!vdLs5[{} R ўDL fH-vQǀLϲd^j-oWa=8 ;"n98fNE5l&ыi^t +[E)g?hBС "cS$ѣN Fj$ݾ0 5Gϟ.%[1+:n4))R|}p93Hy;73L1+M)󢃄XKÎFKU A%ȕ{@GCɖ1kSO~)j|p8@p=9AIa iTzȚ"%-ԇ \-!]i*V|d=xCjkx}PV]'>l'umRZqlWRQHNCr1-IIcb6NEh:, 0~xX""kJ,wPEJD@!K #:8MW:B :Nko~Dx>*m~:WP15\U$} \:xx7^Qqi"*P&l_(c0 p( ,]!zW{]),p &rŐY|T:spiޥI E󾬇+= >[7;)?B<RJyW368ڇK RoOr͑4'LYcpIGNI5KEתns5DAV-c8tX٪1籍p3:eh&謝sMjNoxD$wZ|55d±V>w@&^MyrĐu^f4 s^ׁ(aEOA}AiA#[1 q^2@BSJ(N^}P~< @3-I{\%89l%g84i/#[z-HA>!#OIp $z,KmBpUTi%gx4], uK DIp3oHi0[Eny5(۾@u0 r߫Uhi)~mC0Ff&{qX(ʃfȫ:wF?-1c0@KK %>=ԔPm9Oxdtj$S'x!?+2*nK#jxx[/{r JO]%ksY.WH! ʛtG78BFGkk)[hι>'p062NH䍞%&v-'zJޮ~f] Pri*o|@_۴h#vTiǚ'iGf*ͧD"p]?YIGSUoQB1QӐs}m B;0xyA1;<@`;8@6fwMy빙թvO>Bj@]^U /;p6QILr=D~PF S{PpNmc)h&GTrěp#(1)?g|B@\8+4RRN G gyJ#4v1"CYcn|A'Mw1"-·"HsdOܓJ/3߇bèE31YYtG1|G"]^BP8DJykAI%%LE/^%[,2|EvlŎuS ↻J>?ͯbٌ4#ȫ=2 myY(:"sݝ"1=C N%G h2 ȸ²MiXrKOqRXZ޿&jd|hIrO3h)-VD@WQGc/cY~9$v*A?m>ѩs0 N,J vSEg$P)ҵUKݫ$QEs;Y sr5: с3 '`֚Y&vд[Ka <&iqRܬgxdiT>*Jdrk=`Q uJ}>k7 ?w]w`*$^v!t-KUS;Q%יKCSϭmՇ%~.,213uLz9Wd~TD- $ӟ[z1 iFPn:L7f|#.t!lq/C8adtT"d_Љ+%jJXHʷ^~bKkqa0g sgN2q}<5F˽ Z:b-w?)OH;>EC'YN+pv,@+o8*B*$g1mzcu1- ?)mI[BRe7 ­8Pye0qdh@Ph,k2ïB 7M 7\XSGL=Lh hbXЪLvG5niI<VSk(=-yg@Bj-9\b  C%%Ec|ݤ'*N=Y.q8kُio4SyIS`1_l]O50!s7Wȍp5٭YB޸sJ"yUn#p`q9@Rf>k \-f9Dos4f[/O$Ɋ?iŋӨWnI(- `Vy8L8eFatv(TE ﵖB-%ϻA~]sEC UQxXQ:`pUA5][ę :~w|Gq rLRh=;\w %וA JDw&RFmYdF)%D,A_~eTs ܰ!k :m;_3V}PJIN@$Ȱ]} J ? dZZ7ں;>j,CљH=)l,k,˗t5[V?7k?{O$e]W G_%I>8 X 5soh0[yYha&wQvڿA?^^nn6z` )mABUaD&(< Y{pH+Gvr)|}F䑔6j-~H:'a4[ՄX!t%@1ؔȲa/B&YA' *o51jdY)c9#{\}vXm4I+.*6 ]HD8aҥ#bDZj?͟KjC05!=(;5%%ׁ]eb.8Urtu$ vGF6CU#> SϽc咅=o k6huFx3c"g^ݦXտ4xFghٟ#[y4l}Xy Ce+\kBh<4E3£N[ }l&_h/;XvennnUe/!{7Ds)rcw y&!u<>Jiqtʃ2 , lv .Y)F r+h0o$(y;O2=a7wgc/ξE U\KZA_ ĜqzO{֛,n {ĵk<9ͦH[;@G i&ղ%'7[֍;V3i]VnW{st;.cGxP dl6ǚ~48We俁)q&{ߏ2!"V$/<=V6HoN NY)ɀC 9Jj,k=t#VۛYgj(&Ӥ3t֓Oa 0uTg_Yfa Da5kƍ 1.ayLգ7izͭEde#QAeR ȯM3|-ڊj7JҦ|72"\2O¦TjZp&W ϋmd˷ $H-q:h4𙢌8|c~iwI1 ~v׮P-eVc$"LiM$F6Mr^ {g櫌 j3fA@ѫ~ ~gvCa&UZˏ0pt-M/L8{\; dn]#sNgMT76ȓ"ży0qGQF~1!,5yflmpe[T` {D^Qh"Z\  n㨍S!jSLfJ<0(R~-,1xt-$jn XHqcjC<#"_DOeEQGg\ Wr"o/e#;љ#/f[l!_X 2c661'dK*mE;$:;s:%.~ZI>QS-t\=DN#hdU1̡ߣ\ 't\ pI4>ލZ'uhJQщjV&:'nrgQ6G{ dJ,T$fʪ&^ :=Uz7+V<޹+$܅ 1j:wMH y4}]ak#\2pQ77nSİuY(ۘ(9u~r[r u:*  EidN8K{[GVsҬp 5 Y׃ SDtbgJ5 uO_z7.zYy.@d8IaiKM8_C-P(J|$5oӠδt}T~cB}Bk[G[*򻘻(z^O> ]hߔNH[,~ҴyYgs cfbfyiDkmy~lo _, 3DN2 }fr$-iPuM=̮ZP֯YLbI83T#ϦB)D<AL)/16yjjn2k]%6u9 ߤ/UV4_t߃wکVcZ҆UN~^}'w!\?& \!0۲ze[T994.yV6߫l-Z~jϼL֚B 5N+R+T|\$\2ʍ$4,~Mo"oH wt-zX)x;o韀 aKgdBVwy^S@( Wu_{b%t\n|H*eM墐W[2~ xk0d(џN3\:9B }@H7"bnyG,u#]j%܆oJ_It 9ky沃u :[^CX3oYg! D7-EJc$?\Nvͻvi0F>Fڻ\z(E4nEplNiGUsN.Oc*;İBSbS܍]DOw\ʆbϗa9m7TG:?9f[7&> 8$Gu t2d_UF|jRL\׃I/g~7ȆOKS϶)vs-ӐM/ʃ#6?U׌  dQLhe 0cfk`v ڼ UgjU>%Gt Z}dQ=xjLbuϬ$iH7Ske]pREiHM&l\k 0LҵQuyS"0 ;%KGDuڽ"塵7ʛJ wTdkZt%/{6DY;7?0^9hnh8 ^]$Yd80ܑ`*@|uz:ɪ DfLuyw705è]@'$ʏZҎ:vbOrv̌S!D.޴8[!Kv &Di/ĠЙѭ`ԽDY֗-䑯):.AwkmcbN 0 =8|,y{?2vMq%__y4ewn9"9qS_W7f oCᪿLJ+>p>Lq'a{_^m6rܙ׫H'@-^6Nٓ@1V9ev/njE5sQ,;cE&)qG7#/ۯ 3[_a6uR& 3}ql*<65FՁeWo q:Giu8luV#O-(pcsT`bf9׹@Fh?)ULt^꧇Km@)9k={N,7Tt84G2Ҝ-D'c\*SP6iC[\ڍH ;W䢾Mr,a2SHR;:g}Mn~HQn{u8¼:o#+^oM+ f'[գ!SUZK -}10\:x͑Rb7ujBnXd)a OiM3mE]`={ن|x*SL 8WaZhZ* LtE1ىjKfH`ZtA Bα3k#x5a[2XI JTvhbb|lRč :A/}rJj jЛ|Ud>L^Ǝh@Go@h5t%W3l JW'o ^g3fо_j415[6{K-w0g(羒Og}۩S0^oz޶M\O+_( W{֧.w&!99axh*nLuyYQX–:h֥ĽAbzV Sz*1ܥF}WpiZZ=7_Е3{:ق6Ϥ<%. riG]ȢXPFv0wd|3@$ ̇KM_M 9xM[omb`7thfYKPڽyRQ9Ф:>[uK4d>wm2C9׭IB928yo0h 9?T;c,7݊^-<eK95yf̂P^d듞FP "y-rWnAq !w{<XgجXs) j Dd 2ڃ iRm \Js=ax:Sˊ@au)T'l0"ozelz)D Amnx3ߺ/.gaY]#o+%iS a7"}?R*b+N-ôɐ_g[Pƨ. x[?끟_\6ͤ]c P'T22>-f&6P4(b5o]] HU~I^ll-2^BѲRq8A_ Y,~+G w Ba16tXF(}Z89,f2k2_frޞ]ՌtGK\m>R ̊i=~{$X|cBL=V '9fxmL _:gSeMH3xst9Vu议w¢sBg##E Ywg2$˜Z zdM]ey}uJR II8J]ٟ":%Fݸh8@~Wcg-<h߹+%gnQY}co-+#uF ;[@|k[9>|-va"޽]w5rPPҘxvaW~G.E,*fTW4"G%->UL#xcbS>[w`+>Mi9`ܹk袭!,n /fB\S`0^eQ}'Ԧ>o|qiEw..v]ΆYo1FblW`auX+Z"We4˦8q6AO\4k% *~a!kG>듼!% ƺ؜0<ߍ wHiYew L:KKoUP`RFs9OI"7+x%!hU fw>BIFt"! p&1[Bu9 )dKn˳5i@^rN.T&7 (Tu5b:ƏFcwvL0~iaVajP}'|q2.jH|VgGj&I[ )9ؼG |k==(u!kd^ c,k?/&3]©UT ?^goʮ-}R 8cȣ7?w kj4I *uCMY:aZ&N+a ԙ+S\UUK%T.s7ť"By}m2Wpd<'Hd("$y11ErJv\?E~l˔ǹ)v]?:xյ-x+"݊sw Xܓm5 A鄮 ]3-|}/}0Iމw9XUPKɯ)\jtʯ|ߎr}.f sg݈RTSHL)mQ~s6|}*2ϭ RhdҸg Q@mt`fUM%~g-Mpx`jho=߄'?t'ۆWUy~5Uf!!|43U:`'6Pg7|[_JM<`5 eQ vHKm}jnnkʎ?pYAl  n$pB[^Kיv3A* {G"~(yQs+W[ڐ/6xDQSĖ棃"*Cg"ϚӖ@!B#" e~{9> }m.Q+C,%I3pr| Uxa}W"?:NN9Ƕnwޢ*̵x٨]]dv1̭YOӾ^FtE_MziGJiNZ]^V蚤B/b=N'E ;]^A< 8SGGn`uSy25 "`b附BRp&f'U gaMC/ϏD@zSA2k_P "sGDF J=8^gGb3:.#rm%<-J O,ኅ+EaefO.}zp=;c}` TCsD3 g?DzbN4 %yLj:H!D:ɛ 7_rX=Z sy0WysFn4۲}Rt\1/exz[yZM1ߣ2n <"V"^zcǿ+ҵJ0 /^u B3IQ(rq?Ou30u6 fm' \V^VҞZQ{E5fTG.tĤ\cnbENIސK'41l0JY9OvjaLK3rӾ <棰* a 3ӺK)q,oFnZTtMcW?=[< ,oؠ#WM(e5XWX!1.)hh?)1Hֆxvwy(R$EC@]BbS,G"5 2 _41h03?$åi2 Ĩ2WJ;Nn溃ff*K0B6u.\Z³9hn]u"u[ _TD+g(:s-,ROf 91Ѝ Hq]:͚֩Ij,f/zJ2w4;*qNCfI"H3^CE p[AUϸ5~eLKy-׌)m#aPUNyb!υS4 CMYs B$c`* bWԬy-DbjV -j#=S=c'=qT>aɑ$ 183Y]AMz-?275awE0R6ˡe0x,Mß|V:OWg^y^'f+UB ^:G(֋zH_k5Z=2B%B` } x4ݎfgR~XG -Z(8N3YI3a\fdQ 330$ |uxwMYz@KWdjlOjr lل+dR%a ܚ3^4̵~cOpg\{rsNêo+U<)&1~Fg{+D0N9-TDz9F DHdJbMyM"; ܅\}/+#aIrF|= YzEo7+c'Rܳ7%P!ID? W]!ZȔ]WVi}lRGy )0#9 I!4'^.!cNߜ HY8kt\r'ȕA#}0T&Y'\ A tfزayLZ]^0v-%4g{҄<Nۊ>9%kVZ5]N~}a$UVzaf0ìW2={Wm,G-D^ ѧ]}8z6J_А[j{1և`(}7d3T M\#xT" LK}T8kZI SNmgXnU]}u *JɉPK j8rGN!ujGXï vn,NJ5Vz' XA@̉.\n+RZ P7l=@s{yگ- NBj$m2H&HyϑI>%ŒݫO5! bL 'i8FA,İf#k jP1 470ˊge.vZP$Tcl gÃ1 -C/~8B858Z#Q@dnAf`:CtGYc!w~Δ,*g Kb&!+uQ{'lؔY/@4蟥HuCP/YI1\ʽ<X@T]|լoX*Ʌ07:} 'U2^8-weWl)^t˶,(ND]2KV*C#MEۆFzHZ#=7$p۞@); mx}x }pl ;&kxl'P5_ڷ{4e\X o "7mڑ]Wƌ#eҎ./bJ@ϬdXvC&&j'GϘ"qhgդ[nfGt'j8'e5uyܽī5&!8ӯs'} {*zdzy&,fُX&3\L(9ʨ-ͧ5#Ot@9萭l:[E VO> cV3 .)$74r\UdLXVĎn&' KфfXggN?3T`<賰LWR|i&@1Kxm|reS`x; O8ǰVb?Yk{:ģ㯐v8wO'H";KTʆj֓!1Uq>T\\l}p_=|DnffX,H?r/D_icw/ІRB7 OZ; . Ǯ^nxM-4,٧^;&qn@Ti1SfM82 P1)-." o?y%i?D➼@.z}=$!l~+Ġ &s^\V_: 8LGYS;gDD~p@s-JY_(R kEsgCCsv?gvx'c E`b05nY6{Z2-&?*@e [s5#/}AD1|C>ocyQ,QHc>ߜTe=)P}$vl]ebZ0}r u#$ Q0yRΪ蟴= `/W4txo!<|/-}OvWti\=QISgq /Rvh'JL5{D(6gÙ}Uk* .<6x!UIIx/l"HFmhFo)NiۚQA~/mڜJLL&wmΞ쉧v b Mb>Bw? gM5C.pL[G(v]sGa1~ ,S.bgűGP[xa^ꒃ[siٴ5;#'[}C#&Ɋ? a@2z`[]2=OD:xld˵ {M&aﺽP8 lxt1"i!$GI빞W67enZ֦~嵜@ w=B}U.Ag;6|mXЄyk WϣEǘ_NR1&%Ӷpof?o.}rn %#z1)W;b0 B'1N@D oZ$H+{ 2J~Mfd:kO C%/:5H>`8|z7/r3?6jm"͖^2@߃AXQC4U+lh&4&K8:fYz;] ~OIXɇ9'mTwg`"E>aE|j:o3[N6Gуjvq7J6 4uT_$qq̵^ &A²a)ij`\i~z*ʗLV؃1X }?)DxPV'uOVE,g|% *䦮" J D>['菑= &?Rdo)+:"ga扬x^ ӂtopX5`ц[1A U|?\䡽lF `ey PX-6c Qu]Zk 'sukQk%.5Zݸ8Ec׊E\ *MAiT-m^âUR UBʵg]Zug0!eT)NM(1c[4 ծ6ѐ 1oF>F 6=G;] 9p)z>q}FNJ)~jHfžMbw ?ҷ| ê:F|6)[j,~W&D>{G,b^8Fvb^oS_Pmmʚ$/c"P!UVnCђvR%~5xfV$߰g#,b0: VN@^|H<a re./k?S8Sx7^N[>]V wNΨPcSƢ(ࢀ1z0kEuJ*e9tw+xrVUH}ڡJ'NSN~4qIi xzjAkJ"J9?`Q\,E&`-B6CiݏK7 WkO@Y9Ҟ,&a?K@;Zl=A$eKq;zp{r[硇BIH? N<խmȗ)!K5NEҌW(RCDe~b&I({DCe+*[~QZK|Dd u߀|ֲ<(Boo>"*Ȫ 1,XUInmrʱ@A 8?Ld$c'zaHWl631n1Sԃq 8Y¯lHy3 `ztU#WHY39AYրV>L!`_B1Ҋyȁcq9&܅gaDQjio抓ms)~UyŮҤX ^#2Tq"8j?+ɩKGNb''T# B!J3J|!(ɼ5}n\د+ {|jUM%H4zw*$>gW c<q[b$ w1U=f3OGCdQ/ZSv<3NHQhU& LA2DGopabWr`f FA6>/-j΃+ALUq˗oC:YԅdOfID}QF}'=wf9q; S u (4 c[Y;30wJm†j-ߙ$e9+cR:*'vD+A+3ބ4uZ Kb"5F SZn/8,rFR-)^qe`Ru;R,tdH9QC&A 1[Rg<ίG [tgI\P΃ϙ5{ڛxhֵCs=Zp6>Gv"j5*!R *r&~x})*8 8H1ki s0^a O X]K&9 |/Ne`8s7Ꮪ491;L* aJ ^Y(%F;`JaX#Rscitbok@C'~[ oG鰇uel@S۾U?G\,!Y0!_m\-zj^ig(?[$w#1!4eydpdADUUOlLsh {7Ά=z|qB7e:aoAA7i\C՞ ;FUNz4eęM*# #V Ɣ&!$If$,uu]\Å lD߄}xn lk0 UB+_4xx6VC9%YUèU @I.k1nyQ2Xʥ]zׇgֽ]lY(@u=Jp@A?WPrڍοANŞOyp*pӺ 'KHzb$ $sS =rU5b;hŎ7"׼$R$ϲ(\yoCu{Xe*H(FoLt=ViMAYbQRآhqeMЃO ~ ͩ-O\s46g{LM; hUl2 \$˳oJ R41 9 ?ג+2Iѐ" NO+&~):5x֤ ⵽3#v?8@uSkbT;%.:E#j,-iEz;s ! .j݌Mo\SmߢwQOi'۫ Eh=J<}6!]k s"xW0z ܮ.TݓyQ$Pѫ:%+Bv%Vx冐ĘBY_ٴVgYf҉lC2JpQu]\_Q#͋ bo l+lJ*L+P /gіAudv#|uu} Wn79s|HZO+˙{8`'3ol'aO`SӪ%'=z&4> XNR|=_§'?d,smjNUTmaz`EjɬQdWl PBѯՐX3:V/XX@YZtkbr bS>`{eǁGX߇II 8lDq$4ٶH{Gtmq]Ƀ.Mq&C '3)¶;~/'dgZXL(K 6d}"6SXq4hdjwcy XUxVDq`\2=7%Dv%CE Ve@κԈ,Jay#(ge}K!ktu9_fmdK89w[vFj2 נrCjp3! ~5!ci*]ۅԳ%rQ+|&,U|:p s91~J Sb,*ـUA|+.52%^HCaL1>>Uca+$8Z1!s q$W7]nLmd&|vB#^vdn81F";*#ImgZ0>;NBt6 bh 58 #V,&xp䉇J ɼHc^{|u\5?1A`&&OBh!CWB1 ɇXS> P?74 R4L(:)ᦆԇC-7-BmmǭRHX풲pѵ qL2FOSݙwJAU"=.72ͅ.AZs Bʲ;.?&u{v;ozaeY; nx4- E:5=mD35cs mj:u=>W$JJ;$$du+d6UP-LInدmiȇ鑫֢ B`Qva!1b>}ɾK2$ %PCx9`'3îڹ{')R* P"WYn @Aq#TbԔݰ#q-pNyT²{ur'Hd?'mX;GsmL\A-c'+vvmC@&|k|ֈ49IFf7te sO6;ݸq\1ZcM$G),V,pc=ik!mofyaq6I3C- ?_ջbV;S,vxtyc:XHy>ǗQ!/,F-Q(s!yp*~CD7,>dMJhgߧ#D]͋Ga |qӇnEso!Hy?:+։ܢxyQSd +\1(aC/*"e×wyGVֵ)$C"4.2|| ߀:thYdN;.KC¾IEAj;qI^'wU^%U%U=CKeQ KPyZfQ6U[̵Bk5݇pm%+>ޡju>@X7ەmaW$(”u-,:džHtU] n#=7BG\ Lyzٳ7B;V;;P#}>%c EU:"A~&Q)(VYU?f8 ǡ"iV^OīQfn з&]vhN[43'pTI8/XHS^=\ZN/Յ(k@`FA%| ʘ 7Ɔ+{aa{bbJjK4[ \D*^ԓ:0Qx/DTO&CW#b)˘b=yuWQ,ܩLz_׎f5lBQZiJv.m&iWr;@NFU@ia&ƈ׳mDw %^,`wԦ(aq *)}?zBd#MC]З eڈ!%?JSg}[6)ST)N9މR# vĠ= \ZEn]ͤA 9)ӫ; &{*(P=AA[I+t2W׽{1 p7Ito\uI6<ͽj5dJfl&Rs_$V-Co֙:_v>2 f_qqT1' êNuD|8[ >c9BtݬL{!QcH1V4`y&Q9|P?Dl /b:~q87 WRn6DnE,7Rn+P|Y>?8!oeOEλ 0iW ֐Fn +g(!l'ˀO'AJQӃ%$ i33i 8H}mi}7a1})`-}Zn{wج0+ps 5kɯ(bNAI~ER-kMɲ0c:j7A%}6~H3S`Cv$X e/V3T1P8GIbWj ̆U&:Uɭ[F1ӱFĄ`_?"șo\#%Nv(>Uo"VZA8b*!@X(DӅWoRwI^%m?|%U?a:xް;#IiNIrre9pn\-Jɥ=byWv|338b-.yE4Ω?FjP= ^|) G+e}*rB.kh0H'}F@PQonEo_S7 Y\kL<&h7Ԡ)MV']$3O֭)H ʎ:O`9 GUP0 q򴰓}_~*{wz7r3@kE|k6.d){R/O3b g3 KZ _K&X"1TBS@ozaRҥhovQO1%")O͂C`cwR;8-ve $}=Q©.0-Uszyueό|ɭn/7EV,LrϠCqխSٕE"Ŵl[j5䠖U J;e%c>m.5aM4Pȃ=9&.㜾^ln%~)=,VIXݟgn;h> gs}KxJ tGwx@00h~pzTM9FdhVW/4Y7 >K51{+ihSzنx%dOĺuhI֞b!)vkqݶ} Ho+mߜ6ihG1 ɂrbɽ=ɱ`?K{)׆ tqU1GlαrPZP&Eɻx`P"Y$v|`/:槴d=FTȟ,R>TY:;1L׀hoU mo9Xvܙnt@fn^m`s0/x3DlL1ש_xQM-Bأ֥%e(|Do^4y1`حZ{eVyތAze3,:@@$I ]YP\yc8 h֟s51ckvşZ4c\bU.ϦwT-{ 8{Nn K,0;!n׽4{| xi7LrΛQZs r "3%m웇[M;WZ7FX>i߫1W>DRK'$djY:/4tж*,g;yVK@ƒ H >egR&^JY0.ط7hcXF7E Gk t{UH XO6Xg2Yqj4hT;]rl,h{~廬#J 3&+6ѱU[\@SA 5xe` !y 8>rl뷾 U<&XUf,!VjxV9~+M=`\L D&'*sUaJÆGN8jv9|6aI{ Jm<F֋#*ЈYncm/{@~©Ґt>zH|I!JgyvѼի(L Ol;Ns [bn^I]9\0 f|p5=̲X_Ku6TM‘M@+WҽcӒCW^4JV 2r:6wgUMY;0p^wP3eTAj<i= 3\;DEO%Dʊؠ% !z՞!d9,xIV׵(;sK6BAݹOg*UfTn/.v"ZcYwMlSwYs4@Sn1"~F>*G9sq4Hdq nώ% xO κ°S̆iR _9Y;{09#Pf_;!IO+0ٟ[+-`S.\6cϡG sҐv]ΧeVEiZ粴2;g,3cZWǓniĒW O~i䷽xx8'P^VMpN$N==wqz]ģwoS `!궓Ճ,eh>te9Nw>VhB@(3O*+,bH;LM}Sy3ؿQq+rRJFVu440$ "7'YU+@/#C|/Fg'c4+ T2!ZlP؇S~ɼ6RK!]V/Lr2򚈶/[,+_ ڞZlԙah ex,ICaXia#̿HQ;<%-پ.̃oU %:;-VuNIUDsŕllG@?-PEϺ(5Gt tkdʯ 3Q9RFɮ={~A,YRFmU%U1K^zQlﵑߐek=BMEyXbr+[M`'ܰU T4YNtUpN_kЇIF%bC3 f5~C򮉟}֋8tvׇh=YJT5P,^*=J軝ΤGtĤ%ED?c_"j}a `Ԧ,DLh]n _,gwnblAhGbL3Ry%7y7^z $7 Xĥe&ȵՠWdZQ'_GWL֘M[nsP3Bo afHr]Ÿmޅ-h. "|Oq B~&}Hx3(DfXf;kaa<-B hlVtl',-x)Y6Ul\Yƣ6O;`_NK.?i.V??پ K]f׆4i 3MҀ pD9@2ߥu v-SAJW'f#^2W'M?)wҁG f0U~Y_ۺ~,wmF[O@ltGEJ 8!ק !s)( ~y GtF9#^^:2S+t a'#J!tco^, Ęiu/] \w}Gm1p/牅_g'B1k9\RTZj%=TٲM}%J0< :Hѭ8#*|Ef, ڽ)y9"tit1U iaU{rl Nߐljlg}Aa%q~<veB,Jڌm FԬG"-1:Ly|eqR燉*Gb+fPBnc&aD/TX 嫧0K{y#yusW ح O4k υ@IG"i?QSB-~¹|oXROU1s};פ. ZEnHWo|fv{;hȻ5)%GLkn8{xn`lYPE3\r8Tg=%P=i/މ 2h5zħj(#-~ ?k!(>㈻VaNPZ3?=WLGr,5EzTجM8՝Kk`*G4ZEKfޣJ!_+&7RVQmUx)+t1K (1;cnjڼVQͬڎcχES`ؑ)=hGsgѬ5|clhM} q-&[5yyEiSwhVE!ĮNgkRHl( %Ӂ zU{%A]3"d#D*W//qrC+=lth I.Em6G]!.!RV R`u4d܇#jlN TGV^ %pRkE-,.-[p&vNŵChaUHfjC?`j$,oB;+^PkpQK6=X%(JΙ02;7Y$VrdrӉځ~yRNa70IUĈ̖l7w~#CM9 9={ljR8(SH_4÷x#9jp$\pWj*&>OHsAֽv}|1O&g.^xCHy8$f]v)s{w*kͮMISsr[[nc#W,XjvfApӂJ\#nA/?W48Soݽ;" Adop/8.|8 {PН =ŷߞ3sJV}>Kc#!(Dkκ=KMJR,DBɂjsu@$-L| rUm;NcD98?9Cn6T_6dAAޤQ@؂IuIȆ /)õYJ?/Ŕ[B .I,cٯ&|I.z睥H*xh&ҔN5 ~)ޮsIS/M>B&VPUgӠTE+ψ?x,\L㸐0|,HN}F"- ۬m^H?Hnz.$F2H-p(f=: ש#@X†KF,VLDEQ?($]8"j &qoah/7'rpȌKԋ;LO O\A&B.ߴH9JRE;8g Z^ (~.gDlзjz2>?1CrZ2O王't!(}\䭭 tb:R蘮_cB`>P=fI.?~!&(qQg, I^OVvc.Ts++"v\g*OV ဉosϵl4&!IGl!'4s& k6:RA<9oݞq1)Lk*TP(b0=^fds͔Ԗ._ٵz)4.wDQYX<z >`*dbJ,1"y vLHہ !&Te\z.n2X?KhM(*'QRֆOoY1Wa.$俜9*lv'd)tl5L6#9 Ms.gP|d[dz|ٱDhZ A΢:/l $xgS^hrWɏdhWv\V[Ry`x}|UշueQTJH#7s߶wp^"w() m58¹v"HԾ7 ]G:caezt1{]  sU93)*(8')WbGcb5i-wޘ@ F4d64/W fz?sois@Yq/ƪf^XAzMT(YHU5:Y!Ԥ8JYI%,QŢjX{j!^keCL,Ӛ[T*w/:ZW'lc _#1y$Όf|oc 6Nd`,$GK|,Ub۩|/JdڑIA\',)|Ab]\М(2o5  MCV…`j91C jlIh^wW- v#@ZN%*B|t;4) c^ L 2ZBFyGarHD녭6.dgahbξa@JFdN PÞEӷ6VP` 3cpDwűaum&Rzn:D_[jDoo9E.eAN|&^[tQ<=w\ UoM}-db5FhDuU]UgnaXWVѦDPhUmkRQ{d@[H0U-1xz.VS)V9> ˫^+7M[35)\Rgd.w3L.4A4R nY+rKzns('۔H2`dt]YtTx@`4DiE VTId77Yc{ǁ^yguhk$2󒝟ЩtB!d'L6̲#~P5^_\=!lB!J;V~Tu=[B? @b CMy=*.@Nus1]k&k$";|)!X-n`E@4/|G? L{#v@Hj´^.^B1["; u0dRk~(0ѿϵςUa5Ymr(;;Ch$Kw;2 Ne#0!+uU?K+o'=LEefE&>hصu4O Mh>Quߩu5?/Ბ; ">XB8^uwJ >2ƴqAi| T^{LiĐ3A2#w 2-fռ6-32)УprY}\ȊEH_~OprCJ.VsOw>}FR9%$ﴄkۣX)c".$Iȴ (_ .H+oߣ}Kx]pcU]ugyGl9Xg扲_G⟁ha)+nϽF4²\S">B XxoրSbbg؋K6] XݨH"d#ɢ3H*A^d |׌:f̿&hD_ 9v,aTa `8֭瑁%n Z<;,|2nޓaN̪ڭTZGѧݢ($Ghǻ:Jr{2kԴ'q!{ikXd}P Ll쌱Tn}xDӍWcqF?\HE/ۍiP+e_}ؑNRz_n0FC>諳ق)EsQfUי9:`oTB3`a'㖕-5@dzQ{C+qqSD4D Ը\ROY}Uq}:g||/PoqK-{fMe jnpP_wy%6lqA ()Tq>b}S ){oD$G?w{{#^!?TcMv!aeDLN~/X(0}9jFWfӯԖ Z gjJ ߴQ6̇4ENh}Hג)/A}RGGA3c*%]cMu7 8&}&Kr/H=v3g̨ ~/H&EN{1C.F6sA9L e3#-X>0sO5 g'"D*\e;Ƈr|Cy%X'w]↳:yegߓX nHk<7"Fwƅ}VҨzB^i?-KCJhRV&# )A!jri7꽚gޟ"Hls8Ъ[>={vA3IaW11&e@rߙ^ m^H *eFCSsz?kjO3Q_P{:2GwTzLt VY;P1CtEUU *K fuZ[FS̗̔ۃRQrϾYFk)v i I/S_dfDXH'0Pj̀ gHa5 @:hhiYf@L!2~J9h|.UTN].PUҖR0Sd鳉KD4k:WdS !0=6Vم:_4Z |HXN ̴ QbTm[K~]5J3el^, yk_o0g])hfZX{=e/8uT@ ΁wC`GXY[iuB/I+VjtǕP\(@v߽bIyKoK32C1"Y${oZͫu(};v4Ý҈Vni"LV , vU&yENH0UPb)Tb6ZB-)Lka: ҥc}]lHWp#_B'[n(nQy\3sl~SH(9,T6e,ሚzZ2l&e]3r?7ę4zX -ۅx4\G>jXV7LиXQkU: ]Z_WjbnRjKCQ gf{OxB=9-# -A,rr{D@5\%b\Gddo_^gH" mӕۂXDH/[`iU% R1`4Z6΅  +=)Oj/k~U&FK+miCuBG$hI`Ү8 %⟁an\Oa3($ѳ.u~N_e.\ɨ?̅Y'1mhw`/yf O/%uV:p]m޻XSSe8'_n+3lx mEףWS/xP8b'`|T!23FUzˆ I3(T9B;a(WNpK7d%sڡ_EdLn*v")e<(˩SF/c ֤'@3r8nw\W.{jVԚIokH=SOϜ\Y+1QÑO(SȁRU*h9 % =&@g`['sPeՊ(pB~MXF|Up<LGpcRQtUP03}pE5/-Fs"5ΚUsGb!f'jJ)cY br *&v} Ǵ5}3SjC+))9T#\LaAQMR$**@(w/"hR !rj 8M?}ùϥSk"SX, ^r`̀5Qe!pŖ.^0 %n=Oȃ[վEh n$\/ER`rk},ƫc>|VL.ẊXf iÄ4!5b(朏Bt;j`Z:G0|L[A&#8klh{/@+, `9ךc`K\똒* c =_9K5\agvL݉= H1<l3U6tMigw'fq@F|iS!3E9KԨMaIEDJ;E[ӓ&UdeނE+ Ai D" f&bP&#ql-/7Q3_~Wnk\)}T}ҐUizoj?7Ȯ p^KJ*RR_,7!j8Ж4|.MYD|ӵk]*Mxq5XbQH0Т]S[w|࿈_.Q'u;ɔu=*uki+K tv~%eQr7s{_nOחד;{$69Cc4mSov68* ,Mݥ_W3y穯%Zپt,' p[WY2B'+9Hu  R_U&֛RaDRDw|a]|QVk!leiv;1Ru`z9Q ƀ U1tV>gX"Dm+20K.jbqE'N:U)Ц1d~g=FۃGBZY!Br4eb+ATAWz4IZ6Snվی@=`J(mzb=NklTwFv Ux1#.͹7d68 5`oeUA$VmQI.Կx??\15'ElJ,g;lО:N[P}pyBP!XGhL_-L$!dA'6PB ԘаtcKEv3cZBϼf+H gtrBaYB [xL2)Ŗ?};V8S0/bDR4z܂Дmn|s6 '-tf49+-t6l{ 39&Iicc|V1ؠh$~u}:FcY622>n%A0WN'u|_hq`CNsj -œkn퇛qzA`\x=}[1!^w7Q@Ư$M liLr輐K˪~C rºoy.\1:`7WWpDgUR6z @eRP'zzkb_L7,Ȃ!ZrzU2%yGbcŊرYKC0oz3ruޟ$"&KK~?g$7cMHz&l21NU%,+ .\ɣOǠLwT TБ^'5k@Y+ӎ6V1j)8 #asW%fkE HZnVN,5'>W4z옰WS)w#<e|zx&@ Rj'UkC:"bl>n^LMS6&eT+{#GIڡ7V_m[m4>-0ORݣ*dPMDyl+N*;0lG0Q$,kyo %w^+bliIzE"7^`s0N"|π5G'Fp;![;S`5LCf'`c~&Pk cۇ%qK6We!Q V6lJ3^JIMAEp[g Z #!*}U TN/QC,B%CNHBk@S\qDil^{COuOYg~ن{ c~Mz2 =;93WTŴµiWy\4ZwOҫh#hB[V$_Jv?6uHCZppY6nÝ,wT9=F m>5 U:Z19.OGquSIٝjz#=_8^a9Hr0僓(IT3.Ұ8~$Ke1>lm ̼uy胧GMCy }+r 5_̛y?c}4 z!̚`pFhk X,rmddum>AHl2%wv>$Z^3&5poޟ64_u4 WO/)p 8㦍l☖bnUq {H}XOM:rc &qe)i7jOI\ !e']GD;qQx"/hEy7I7IcIܔ:"9 uת$K$s]׮WzımG dΚ49ޥ! @+}-\Mw1J`0blQe=?wU&‹[U!iQ,_uR S'޵8΄{|u>FLݑ*'[<byL-<0'7kBkȖ87BɬWڇ"y=%?_ܗ|h)-Jfv;V 52-:+=y*vɐajrnҮp~I 1JfO@+8*8=LW,B~O !l$^6XPUU`Et!rq-dT=p"_\5G}/}<"9q -~BnPӘXo+REqٚ!Z)iP%kUz @"_FcyA:_\ QTKRmk "Usޒ'aLz % `֤LOSK8!zk=aB*xnbn`8|{7qbjEU8{xtTAHۃ,AgE(dZu%o I6M o!5|o^]ꈧ*\®s|h)W@#UØ ) t+oȲ߾z !L_Bje߁uiqq2eP %0 ep#oZބ1)Ls\Ͽ 8[A05Jϣ'90ך*)v WKt7U*Oiʟ^~kͻiGTb؍9$&Qݸ ^mU+*^0-5bE߬ZRTS.IVјv؏`(,^U jY ן!Re8C{EK!>pǯݳ7-ܲK_0#l.a~0H&[bͅm +bs. Y{21( l P5<M,i?;1U63n>gW!.HTT9֜pכX6Zv1K vqgrv-s'{q qۑ19&ҟrl*4e_N2yŕogT>W0[PuʧJ +^o-ey=zR)B#⾿^ueA׽_1h0 uAF<t'x3֡ҦUǪq0!No`n3aWÉVߢpOQ`,}E0~b@SW X1 w< ǧ.Nb}­g‘N +Xž@:JJ(Ƶ(p#p7X$o `t^~NdDr κ`,$0\MQ]w{B/9{ʰxĢ@`>Bk%! V:8qlq;$` o. %,ub\Q!dA $ oBRp`+oz_cpEf6bwQ)&QTX !kS+<:Ɓ>vh䦯iXĊks@G3 ز9C"+oc "z~ĶŐJG\\9\:X[Oc_"C| 'k͢I4 9} (w ˮttSy?4'^B9iuBvDe5#ՠr^m'Ä D>3LgwΆWW/tP$zFO߰4y.NpH[z Rv!\ms2_$räv;ݍ5"&K+#(մw89WJ4+JP&%F#.ߋ$x!t|>,QLK(9Ɩ\'|~eQGrft|7,D}8ajoIɬQ`N#H\[n.5ZPM->ݑjm;ob&@jt %g ߃ ӵfl*D{55{6+.^qp`$)`+W}5fH8 G3*BdËL$fns7S{鎺*}]uJgQȿwM %39lh-n<|0c? xuҶC߭~K, [z!'?n֡ 9v?w"Y>@al $k[5'j2aNY=pՎhSi)6մ?Ї:wA3=#2uc5lX WZr4[{C |O(wg{imB݁} 9Sf}OQ D{rGrr4+!O#Dpc;_94;h`#S$8r~:YMXCH:qbdR?v5Bs!LXG9|~SR]{Bi!L(ڂӺZ0gbϴtxBK-ʜ?«&y0^חZ:MϨ;1g`<~5devò&jqH-O2jb|NfCb^m]6To*݄z6Vj% `X<< ^K2`_ü>:r[w03 PJwlREbIƢA8B6«DI϶НyYB0#Rnv g&&zնiY!QM lvS.|O`Oy.MnI*n m̈LgGᦲũ2bz8Dmz+OhߒwMh@M =UZMw`\꘡\:F1VΖ ywͥ+Ҿn bn2$%.,d{*aPDPaG)F"kl>v,љc[*)ǁ2`:~.qƙo) ޤ8ƄQ? ;Y͏E V?3 Our-s3:6)ÚMxT6\Q Cj1JAb*0}ܸxh>ڐ`Ϳ3b]u~/ajIAg,| ob>вSj0^<#AzBI?t6 (>fkDNnƲ~,3($6 RE^Gö qzI!hMfm1=)ޓ 9GoE T9A!2+Y)/5gj_,YPECDvlD=m g8q~$"!{2쵾Fۍ3wRYޭ\E])CCԐ`vJ`3&;~WH] ORE@ޭ/%!aA(:ʙE q(a1Y{}fR c1*ѯ]ҚKS$=BX 7!pf60h{w?+>Nm*@8ANjwzֿEG[M G\B S}ZZ<Ń9eu|tdAt'0~C(,mʝxv9 }+ɀjYK)iՑ "AƖ(sЄ1hlZ-N lk;_Lnzt&ߜ9=1R)ZR%1gm6jj>] Ø ,/ /%A'fVzmI}5\$iL^:Cy%:i{er/*OUCX+[^⑫Nv2\Nz}u{XDS)xyJnXvC7Ϲ@8%~@q].iЊ|U{ӈf>4:Tr 瀞BX2PdoM7l!{YÇ 1ow/~X\̿McX)5 p^0ܘ8O2mv7!<,F{|>d2, J~F#$w~Bs"h2tgm0MV8M{2O6鳨lJso8g)YjnՂ8t_Sכ?/?.!@M77| vNLM - yBwQ\ ORj\V?,%+d{c) #gCw(ȓn%]+iyG:d"ئ|ՋӪi ⿴h@UNz ¼Y؈s`!(+]b'v8^P+< C`rb0zzoTqFѣ裯+*M̂K7,Zc [˧|_d t), 82lz|x{& \-HaB,A(I0RVvI'xMu۹KzK8YͿ\Wau}:+;.먪燂Kf]=V;/I^QLҽ˯($VwFVq\!x-avah)Z]S~Wg2U&9;z:@?H" ð~~ZRw0{ޱRij4P~zbf:=PE Sjţu@6LxOժ)FCsb0}fW:2+B7x4U{ WZ/ʼbe9ߒQu&k m8ܭ g{R1;) +heI!e(ɧ5tǐk|c\=L6J;*|y[Z9bn{j5A_i\uo:O^ju2ͯ:mA [;KώV|fi0. @H\Yq' w~ 5V2ll2s]3˳u~ml()d;b8o?6kޠj3mP|E-xg]1$Hr>|&Q0xojM]τX"6pqo7s?@Lb者ϗMMrc|G"u#$+6y<~Z˾Xx)%}BwCfT.|CԀH18s.;0آt+vE`؏S|հ^ Tb"}xH)bԻX#,Z~j1Ջ`r(yTS0(ׯpG9+AG]YFbL]vuX/"lc0Zk}[5b, YBRW+0i>;YFOa^GNκՄ'x[-Gb)Wq`7HCF.W,_-L7X,SNn/f3xA=4 m8)oGR[H#aN[< Ux{$'z/܊ze82$v) q,hY[މ֑B?oxDIhNI CYVF/fFQiT8飉i>r7 LsB[aX,_j=+"sk`yז*۝pWnk` "K}au[97nO-ye  4=7jȩ>c GIt~`!eG2-ij cM~{I>Z}vݺ!NB=d309cX5{oLό(̈"?+Lޡ-Iq͑XX%GB?.Ž.krooBgax pk(P' E^_VRAtʪ2_砺yB(ٵsOlש>*AYB43y N}-}QJ@ <+rW/` $MPuFO"ъOTފa)*r3~$2ےӔδ0,Yjr54 "XZYPPЧWfp=VVKS\dožGI73xz 4U<[Sv*,q1T#9Hw>#M\zQ;,#Q0e-e.P5s#˸0yK[\9ZLˋ_$:<-mc8xu!/EcSJ'(|/*p@e?TaE5ixqr#gH\L+`_NHL L+udyg~ӭLya7)G\/_ ~c"3,o:GWA@`rC>d~.-ٔFȗD`4TfovBc{ġ,f т䓎ȜpuƴSNn+l_OetC-{P7R_OO0OQmٺAoSq"I|= )gLr;H9D6U`V|N@'MsPn*I2 *R[$I#uY@sJFG{wN!L>Hnv1i_\xae=En %3#ݢ{5}CFq.¤~vރc9)<¼-:SOb< J"t eEwSi1QgYo7TMp.+aƕ}]h ڃp%*QqKa) mGU-r^NG={R>E}{_Θea(Rm <ǡ4D Obľb S0F3@ǣͯS=V{,[VoN|OkU+k(9kc,uuvcmW,S-nH3{j)QM8X=]X*֒(0yIWcA~%:L?TUWq!-`FxYc+fJ@55b\V=@ ,,-7 Gc>8*i׿o(lb7JO2,i"m-$Ka[u-Ʋ lILMS2ȸBqw0r DN6Nx@2CCRw,gڱQn֑tF)hŬ> oXyEkVY%1Ց"k7xH]jI!#{mCUWF$ z~:Iz>;r{ƽAM)Z68*8N/؏{p!ϒ9X]%2KH/쓱1¸';TgA!o\?xALӺ3~Ѱ_Uq 3im:\AvhʼK8Zjixu |)*v=YIw!Q)^9|5nDf{[!qq%v h6<܌뻧o-謻yFh'4ՖGb<@{.M:-wxJHSB橾6&=@*jw@ s3ڂ2d:/۽C[]8Y=8DIIj ( 9ZBP-[\5YsK6P8@vsߡ[ux Ad7r`#5 \GGIÅaOpRq~X =攼&3{9\ygz>iRhi Ja,0ac'dzx9kh=2yF c^wN>|} /!\ ʫUIjEpn ߶Q 8>`/+Yߩ݂370r}`+:J硞 UD|h| wCwMؔ0ug[k&UWE!]0(8ecIΖ^䴆wj9.kaf6)\IZ3?G!| E<{RPd9)ɊB+\H;%V?x 23y:Kjh2%/BB7YA0Q_nV,if,`r2ldO8/,]h-WTEzz}r긂v` 8[up)YD¶DRZU# f'WA ٓ<},`\Q&P&*uu)r1ʪsucI3(.R#pJ"M3絏&X4L0AFt[7azg}0 = poODxJoo:90#u.`}1#^I~'Wam6dTo>gFFRj6[M[7cA´\,|vO\7 d_n7ľ\o=if5+.F.)k&󡫵1Q hBMi ]jgAiqɫ Z!z%lr&k j"n Ţ@SaL[Hb0zH_< sIGFpf[ T .`bO2/`l2^0;zJ<Po c#o 5H6 [إW'd/e CIf4rE.P"ְ,*!:ᗽP0S6HV%ajne.|W!=ZP~4ʭ4~5P\"B"O_#HLmv:A4tˍy}@500fs06UVMq %%ާף7:.0L+ԩNa9Ϫ*I;Ll~sׁA6> ds&2}dPwJ{N)u )uR)*C*!_bK"f%G,C>Ю#o5h=t ֦!f_,5_`GŔB?VZ*qϋ|> \B":8#2Ad<*.E bmQ,@}^k0 :_[gHT|G]6"5jP4벃hbNQ@Yp18$T$ ءϢđI*EJS0Wś&A-[(G`"ۨK y K/vTZ jk"B; v`-X f& o e^ODU3_rɊ3un |ILHT^K]2DOoS3)iVrƐUzOliHBnz#'_pPptW{ tg(Y4`Gu O{,C)A{:m[E,8[^H=h9 1&F7~Y@Chm?-PI+JZuj9`},ԤγquG#׃p{ ][zb_/,U,ZVu,uyx*hYuUC?_6 n*G;8=~y 2 !U}y2\P]SUC6 IS0/!4wfo#^Jvv=-,;;g$7].-<٩GV>ڣ.} \ UT(,"gl*3ӦT, X9Z9gz]E/K?NY&WU(Uc:@"L ΟdKfH])Igh&(`N,/v_`>ԯN3e7[2iwS=Js3ܫa%iVjDͳG]g3o,$4^``׸v=b‚]rueQ#HqE1\  1iD5bO7]Rc~8a@@f; s?Cy/X]-3gߒhvUTKۗ.2s\HN]w5.EfeMإ^Iw2HB {X\W~kdjʿG{ܣ1n8یc^ JVD)s\[ 8SpHl.^琑On˃1:D({2gn/^ KĥKdS<)O=eʓm~h^P#1.!v)z\0 JqnDJuZpV4GfJO~^a]ʹ•rVU?A*\ch! ӗ?3cZebm6!JSzlsTvj)B-1S\]vemQJQJKm#7*`-rʲwg#^95,ݳ G˝bAZ<&C}pl[/ՀPɥnPH~A2s]1 KLku *O0uБU`4x+k8{B. JVĕ%`R' "̾.ٞS }}#@T;&g2b˧v4 V"H> HX{AC8aO&<7D+>lɤх7`EmTNDL@oPDэ4kU0+F?[ y3u[F F=(7R]<]l{|m[?~x%'~/JrF/{ #mH)fi o*J9buz8ƜK} py15@tƣu1{XÐ?( Sе凓]TA t.sڅ#4z8sYAEH!-BmБe?fU,h"Jcy~b{z:Co wuSPwVκ>NQ(N({GˈzqpŊr]5R--0&FLLWNr=~Q9Yo8X4'cϿˏ'>L%ewMXoWƌϊԂ*1zC)^9+HS~@uŭKp&{yЫ8ž1 eㅯ~ kuC$xVyAA+`Nց= Ff; 츜f cN*&?x<]!Hc.Gju s9&Fkq'/.xЈ8AEtJ~1X"$F(_6ilTFZs+tIx S N\QսN=An QP6]3^C v}?gm:)-Q F$e^QH8s"}}V6`HqisnI} sxؔ1[3x,\2SD8' sJݽm.UjtwZ T@hdwKcXzPmS|ݪKw7YŌвVbz[Q7ߊNfIbT*BZ&^~|R $ t1>4RJV9:8 G<ݶ)V-_q7o)ГL'Qib9Y %_iCKYݤaOԍZic"A<g4%A,Id^.]k%Pnfd 0zٔ~* c`q}!/Yx"ÖNNNi| G?rkӻ9RP9ΖyE<C+ kubflܜ8(<q8:V(qr} Rg5I ey ҫU 6E4TQ`]l;iJQnc2C"Em+0#jO)u d,\Ig9_*>}'܉>ZH ބ?IDt$*G=ЄP_nP$2WA;O15ict5CSIh+)?;( )"|osjMXΛmhWp»jPF2+Fzt~MٯKٖrgu,s+|yVCVPuAv%|>u<$ XXQ"_+XD龾o! Y1+ ݑ 4NnT-U0Ls&` J^{s^TY1twl0U.\d1)"xAŰs!&cmfV5yStɡJ8M[Al{zhu2_۞,h;)o5XzŠ["Piݜ eƼC 訁 :5H L`ٵ˔$:MA5 W7)h% `_;lR! Åos vnRyzkZy%$X5\$FBV|bwF{Js#^5)Я(G re*Y.< 8{ΐL[]ݢ\l-pRW@ ﴵbUe;l^Vȇ[SS?›o>4P>(Ȑ)t!eTF{%OĤDT[Y7 nS褵y]'t7}GҪ+-U,NB]SI?Q'n>:^arEM嘇g`_vM6~Oҽ7F}GQiB0GJރCAjű@14!KPe\ɗ2+LdSy*K2^йA R̜ɽTM+MyG}dp5G |F&iG7y '!Tas^Xu}3㜞eZGPj[i \<r[.R6?|XH릂,7M>FaS;%^ n"ueQ\::4I!GW"AѸB6xH/V |-RS>;+*梈mѰW4%xOc"1@ (0"POL3<c~ͨ~MeOH+g`\g6K|&)k4`!7Y;a+n^o?l*s. ȒFSs쭎ۈf@~t#xL۰,(3 gqX̶qO]klbXP\x8u?12j;h[rz [%O@˸'6H)5v s]3X}ILX:w)#YZ I``:mZ 8vW,Cl z<{=mJ,kzCX71lZlW(}k:%.Lkxےb6dĺ죴\rBg\teϟx뫛zȢ&Q\ tKKLM([i4V˽ 6cYdg!:j@&NlC籨|4 Ⲙyu=u@ȉc_lۀ}w)b^ )Af'@݌b~ 00@w $5 ֵT,guK%**n~s!VD+zž; jgk:(D&`kwF֔%T+UX8{gaWD?X5l!A[y-ky}?05#M׆33D=9]ٶΟIȧ7;-X V& 8>%%~3ܦ?:Ą5zO/v.RC.~3 ޻|ҕ[h×Wqk!)BxIbF{ICm̀]1O45;ʭ-ӻi}r[w,$3Y(49.mh!(@a.!爼g)C_z/z0~-핲eq Y-b63n?$j[焛Z5`H'4Ou:Za4?[{MnaoLDT_SK$ot` $V`!WqZBh }?w.p Z6һUz4X"qƫ#Nf(2zaF+~2 ¦7Q|Mloߌb螔atKo(lZ8GAFϵ=uqԘiVbتն/SA7ds`LxlÂH(%[!Nyu}Ѡ >hrvHI'dWsONΣV3L?$)Y?3_̡rhֲLe ~g\bXO-n'S>dzR??h.*\cVkZF1f^jޯ5P)b6O *a.0~fJ9]2C}*z*n逖C]+Wb0ƇP .QEM\!N<i6lͰ(,&xZTw3 b8PI+m2Ҁ50NPM)Q9IYCdbtl{JiwW77Za _ Y5k)i58 喂K 2@y? !!}iK@1<~AAlУ(婡 Y<hn*/Xr:|j_nV]d(j}ozԁNȒy: ]D)(iv. ,gW c@S7Х:mr@0nn8P Ý 8-LG'aRD M\o*zx0qQ3eo<,l ;AX<'[rN{ؐ=x,zrK&KY)cЀg&qF uR% ppdA6Ϡ!Ɖ;;yE/K)͓qֳL+ni5Ad?/ƃ^u< ?;վQu@r 3M=jcAS$u0At?LAʗ!K3",Xxﭱ|F06$!+ϗJi0לXpZ<EjƬFiRY&/L~ St< TBȩ6)bVs;T >pƧ¥z@=c@]mlƏ`Â/8PPtEVa:`*7W˜`䯩&UPq'_D3Z,|? a'6lj&ucz==~̧f*O!q4k-^$Xt]%PF~be/99Zy9Zpǜ.g@oAH7YZ E$ޓ ! #+ݘjҔ@q,;dQ̧M9cE Bl:j$=|*> aRJm35^`ݮ!˾w=J[$u̐y2w<ΜU3/5q+ 9/b>L@KZzY_ٙK̄΍$1$iH:!R0F+m遗ڙ,{tGrpO;4\Xtln{f KW 3X1t9K' N;!mmRj:U6Ǧe;[.9lJ!&Nɕ? )5݌i"kD!z3۾wĺ:d;D<4'whǤ&rqqnh&Ta_2 u& ݑCO3M%hrq,Og!k!. 6&pS$~#&JVg6@+E&$w,Z̷X"@/F!|eNsš~du8ea0yn2m=_/qե'V~ςq}CdϠT?x\b9AYa8 j2 6Rjhaxi2`|H=Rȋ ApIbFyZ=J8Iu.Knꥣs6--i~Q:$G>QQ PǦsxe)ſ x>x7onF@sT^%|İ`xUW6nNwb4$+ e^5A| L]IMR62EJhlx kPGh>/>r \z_f'8N&ޒG'z1)NVsMd4h _Tq=wC]2ԍA`wmPD9Py=c>W mi֥|;EAK?6n2άf̤,Lgiz2jNZtkġZ,ߊC2߶&^ĪͻE-hSR`;@%tCcF֠(Z,k..:?QCdցj5!wym29XeW7h^x+rA! a܈ j_Qb#(wHkF «NՏцrxp+kBWadߗ X}7ޔ,$S&E|s|[n 1|׎<MHs}T65x`KZY aY, ŘލJjSdIC2TWZR6Y⸼8W[-PD`|MO@lvr\$ (X sŚS}$((2Z $Y`a_7ޭMqNm(s\Z lE`-_6Ng\8R=w_wD-O*]R2ێ|+m!FCؾ~yP:&/3qaxVòi+L8x SL:n>ua9:|(^Z pcD5Fy=gZq}2u`R]WDx=9wqXls/)/!TyQUA.jBJv\LW{ùsqis6>$V=0Kiɉ1E:pU'G Xˑ>L5\Q{$H>yϙ0Mc:&jK*$YJlMq%/o߀&AR!C$/soeoWܻ[G`8U폑m X MzUh֋C6g ]Q/r!$& j} ~U6?1zI=C<'[3XEٺ0wiF@Z7mePk=Hn")ͦQ1JQJZMUcCBI'ղ^|"D'PM؎yޮRy):,]^L?X~H.RqNaoNnwX~@} jMkaKC^>4a8"-Θ<`K %S eF\ AJĝW#PNsH0̲l\:O2Y^ɣ@a Σbl+{ 3"wn~cNYD3`8}iӕ 0Z# (Ӂ1)~(Neo3"q,&kSIa<ߥ@&X&j_7.< t˙WO-#@5κ.pi,iqlr\h ][u sp,i3 IǙWQ RY;xZ2!tK| ?GSZy4||IC1$*y-+{)Vpۂ~Ro( = ]1NM6UVh^@f},M*fFT~#ڦ)e[ӞTbg FD&Β"zvC^(Va}R$kƂyVjiSbⲣ^(fuBd  . \V y/2|3eNrcRՊ6)(_ +[GF ;11Q;& ]u U\o-]XbMm,QS,̓=kozܗg VGj Ih+t9<ݔ8GC쨣!\#6*fb){flҍ] h_Ni2;D2aK6]c ƯkoZt<_3z33?F @ZM9@n'Smǧ^G SV׮[ī>OYq(E1L+i"e`:0>߆B_ ܒDqbLttc>+(7Aq\E8á/8;m-U"bRx2G:c#o|qxq554gGKn*΢ C9y VUw %KCi8F@+fF"8LSj }kOS^ ; |mpaSr:uYU{ȼ:,dY8HBKȱ8m7\m[Pwߊ*ebΏj}-f$٥ GlW.d!*5,nQt4 "ɜ/_USD $'*<^K\q^"ew.-|g: ($7Zz< FH4NgazԳ&ap;E(Ζi$t/B"翟e>ڛN"!ŗWe~+ U'&/O~b(. 0xpA<+{a%)cd&@K{~r7Nd́aOЏS8f{ Xr ݀})/><>*P<U_ΌKekz8~ͫs㞪z.3TFaVDݥoLo6dE̽QTqggT4!\MGV_Cz;9H{qgN-֦!yVT.FBopÄU ӛ1 fFVrG4֑viOs]k3D!,li0>t ٭6I:[z$ۣBAA_>m+jlHsd [l$}0 ;s+Ka}*4ߴF+rpNTS*O_Vqk\.M5?ЋzPKTx`}Ga~F/&CKg-|r ImJ TY!^H|iz|xsz19p'XM&Y=V>xҗeFs'$.o.I#<e+3ձwȈ~Ks`*};Z>_Հm=I_P J"Ajлb7W ^ח3xլlǀԼ(54=O`3REJPs~#zymfIS$?Qkx-(N^dzdYxY4+2%|ՔLLn+^خd 0'ExƓ\WZ]REc @zm=$WiY@In37D5cB-_0'ҽ xtk3g4hG?;J? q:Kitu-S4z^K0>C\ Saus/ܯϴœj3]u5 )Xa)ScMkl=;jCPrJ*҂㫳2DN'<@hK3 Yi+ShT/j90uPHDHПśDJzw@v=R9F?*m I&u|XoG+3zQ K9⟕ .euAtb(vTޝ~iF::X館|p3q^JnYEjdݾmK:~*-$1hbPK%W5E(JLӋ1 0&]L;{҆ldS2xK>+$]|@zxdg?d4xNOuh#írV>C"g!D{Df|Y-9QߣAfp%dRcPCvRK. \D=C4mhoj4m7keq<0Nr*&2dlKܽDuW.rWݣ ^t; ծ<ѶO"Nf."Kػ({Vx c YGSӋ2\oђ]GFdi_^\52جsUuf=Lp HGO^E8~UjL$kcaK1xD+ܖ\g h;͕*HpP6q)=Kkp%ɵ>ÂnÅL:cvI;alo2!(Pڟ!0"E=Kie6X&nPMJCYSngi/X }ln,yY)jҖ8u]CD2 >HmqcEcFYG{4? j2fZn$VG*BAZ+|mSI۠pX8vNsh .HӍvT:eNKn01鄹ŃW;UV5wAG\,IS-bG $t.qVvf:""iM4e:Ehs ^đ$ HwY2܍kr3H{U]3:F[B svfrMq$S{ZpC+UTc>YTAz1="ԋ{ER&YH0$90!RT0蔕ۓBgSR`C2]4T\H?nQmm֕^C]@Jqx7H"s_2h E0WIHITO]QfZVU1 .!1)1JfhAϝPy>CwF(L/[QD}Vq)8ƭ7ol鋥* Fg83vx,.#TZ ڨ$BNQ/>ŀA6> 3~~m<:?M0SeLK:{ѬRI/g$SbWt}߈X)~UJ̫@oH^)$耥kEOE$3]U~,Ͷ`VKR TKcs 5@z&tq MvEجa/]'gÛJ}V~9./Y bcqqIe_OkjXsV4s܈sO.7ߥ l`DV٘[jXWnKWesH[Wj }<^{7֖l7!םT%@'޻Rbm;I|]<<$ږ/GoDA!I4 <; ytq&몆I C2N|nԦgdX't`*y7m& D":Nn\I jtdSé5GRMP˼P̧R\:u94|x;V"[E!l+ѷl~Qn7uH\EV9>493k'|!%ϟfB00wI7|ɌZ?q&ҦVw­CGZň0BKH+ )a9$sҭ|4kQZ ^F97eR4d%`i^_/Cd`%-A5Z[i}^%!bFHP2Tрp.+{u*:Q.6X7@pB)j "&dV~4ِ0@|.(Qʅ~}lfqF ⃔$m%QwV_fɵYF4t!^GϲvQURnنi!6,C##Lg_UV9$yt~rF\dpz%PLpD(†|A62UT'1*.!rQ]'OxCqTgb`[ 6bۡgC.@Ox6Ocqf]9P~Hsd>UΤȢ=~!-cJ4*ez߷@J`Is13G= ~C8Gwj3&gں[+,=-k@ȕa\3ȋ2Xn8ԫzO/raTm A ; l.@Dh/(b udRN9(c3er%9:&j@&l?yP-׏:*g_Kt9m8iHcvY(}P%H^?fROml.Cu"> J8 ,EOұ[-W2ti}c W"q:LZ}:mqZb!Z"Hދ#Q^l'5cQi8,Xɷ*-ӌ3sW+,39i]8:Qsx7'0'cG_d"|_ b L_>q,tJۢi%/)hcJB0==NsZڹ3X͎s*f%U7zڱHpb\CꤩSq)$i<,+WY%ϲG01,[??0s65d'=!(³ŋĒ=z ]U^HhV<6! E`{JmR0*Y5Ms]JmE%I:y(  :kSo)eI[pmǼI}ayXvvrQ(w" Oc1XdCM1`cX$zOl|~3AY#hv83ԋO%69{ v[bIwˠj ;W6^^:=^.r]m[ L: fyO Kv1vŨsV&!œS])iZgF oeళ^;Bpu>4pT43un𤥰e6ժc;0;S}ae<6X/[.N2A ZN7ų ^0h!u2nޯtC"iP]U'_ 3ePVk0[S`70"2%\v f IHYl(F TX&7ӷ uni*9xF>Ց;Rގ2@lbmh,hf:WI o}Z GAw}Yt}WpWM_OxHDpK[I`F~d:%̂߄^{<745;кhQ_ 'al_j2Y# F+(>/f \]wy4*) jmբK7Οar,QFfkq0kAW+ V 1W<(}4 x=?̟{Z}l;|$aձ!͑ 9y3xS -?,e4MT48S>J gL,L3f,d{oL!}&+gBkâ2Y+TX"v$,Ic4qf.Ќ"f 'Eݘx*lޞf5yDuA^&/O\U:w&ȃR=X3v0dرS-Kà_|#O%ߪ߂{v!Kuv Ż%G?_G=Lo<_u&H_gUq'˒3⡋Т>8XAq%{\ ϛ1=.J wZF.,kd:}8 W\Tx V#*gB}s7qU[I2]玲.|Qz5TiF BehWp2\o]SY}jFŬɈ3t̾kbs<毘 & iBY"JNO<NV,'Ǯc oEL4>&}Vۉҩdly _2OtiʋkŢnVYJo_B1:L 5O]t44FJa #+ql^,׍<.A؈6#V>k^$$Ywx*)N1EAwɯGj *Fٖ?stvLWFNu}̪DZ3wd J;{tbR+t朮[L Z.࣓|nxn\:sko5Knnvʇ99KR_unGp w5AG4M,o*p񉭑 A &̜sC<_dՑ!KJ"nBSS#@x:T5~CXRvkCU,h4^sd9{1J M?_ |& )WJ/YO.ې4\7)z˅MNeŊ5?&ph&1|Yz[-3BL*THGO5d|.85` ?=vݮ.^|mSRvY#,mb1r3@$+vw Ԡ2s?bkaA 6~FBoXGm'4t#4ҝiZĤ$RLT *aBh*$!8;hZ \^LF$*bva\98!8t-ڗ9 k>CMշ*.*XXC*Rxp6m3vq<~ ,F &:gN_H/M膳me} Šջ"P]]%~/nVg:B%_pJߥ|ɯ% rNCqnMćϗuJmo(͊-Ý'Z +|c+j"a ]6 EMkPz(;C{y4Q$B-P.V 'Я ^l6szwԁS|ޣ {=Facג'7x_ha,ermSZw^ڽi4eqЬD;A4PBjzyJ 8Mw5I*tjN>Pו5fWq68S}]*ځv}wكg;қFIPrz][6j5SҸ#o17*$kfL-bmēL|GXC y7,(_5>CHc?Ff3P:SB+JwD:]WԵK kcaGSXiӟ>ɥ:YMf0I=io-Կ VWUn)^bHr 0p\G?``RĔ6:RroXpB^•V@ ^;⣰t2x׮j.62BC{}DXNy>i]A,>r}ݹk@5WraJm?i>3*:f gڊ9YɬMh=u϶ & c͕n(ED7ׂ{H 5E*s!IL9q?8 gņ^efD9duhn.[G\֤y<,īT^j܈\8#Vqb=S;ojg %]}NʘV;35s~$ cݶnmCN r|b.}{m,LB&Ek6k1etNOO@}>!4׷f}r9G.-PЃp$Yst30^>vwg"MV07%rr%ߔ>/#tw mYͤKԲ֨ ZAcũKyg $}NKFExg"˽]%<:U:MkJ=I슂ulŊ .Nci,eqyF6I u=ʫh_zV)lr7nuH n t38mT-r"ˊi@&B|=pjQ2gu!S楱M[{FV>7y.N BEq+ЈHKeCIJoaKMhru)cYA { y|VBۛ&^@m Ulh{W@OBmIZU]/>]mfC=S S02 =\~#_-DTaXfmZkO@5 >GQB.C/2̟ R,LߨT,-et0iX} >ՊU[.dgqˣxzSd{;Y./W9JabegG%O/bQ-mXcebC+N HVuA)cL:]?DD9?.ܛ b']`#Xq)IEq*4d$8фyx><|iv!sY2^&4lT-wG1y2߱4>̉]W(=&=^әE ? ϑpC!f[ECOnW1v>9~sT>tp'5š)ֆD ъcȷ_Ia_J(22kf(#户j Po.i\X6&fc_O4nH$>LǺob4 L9xSEAu/S_I'n9\ɯsˀ r L*| -r Wsڹglza5Iz2t%*.Ծlk₈3iթ."3`tz 6nt=۪'dSsPGA7vKl/ xYޛԱ䞈׫>׽24SBDaƔ/\J\i}E5RU֘pD ؔ@ BUmGe}W6tdHc=N Rl4=?H/v"͝|m5NnNJ& "!i2в"|N3('jѓؙygE8`aYv/"}Z@߽e5z퓃PvRq]=“JJ1?qk0>HK۷ Ity'#3]\[M9yhaQcV 1"Oƕv &9e2cEݪ'4zGSL+),BM 2ټ`hF U:#S AtECT)(O̧^|/֯jBs)3ف 8Gq,*y?+4 ?}m;6P/\p~ihύbɰSO0ީ4"}GzvPD\7گOy|1e:τhT/Gc0k]g r 1/4s²0oPeVC(`9|(9?sH ͟b'I^qA̚!ZM k&2'[)y-LnS:*qd˾\@3ܭ1=q׊#T ů\lFUk]n 0G${fMg`YI'ֶqM ;\²c[˳_.1}>u@}\og6ۥ b^ȼaj9 zRCL9"T(3?Loe_1SΞ:xI]ABcxK)DҜzǚ/{$,}SmNw1-j蠰<-0pܨr~Syqx87)iw7.*.bh g @O*[.1+oQ=7%EȀǷ"{WF)_ʓI# $`]萲#?KtCI>gEOS!DK9?X>ǗN ȵN̊[Lr-Ҽo_>ߧ%.ؾXKRƋP߿\CWpB@u/OiZwe9?)$y`$w#k0J\G& Ds\ZUt[WX82DLL~|5 A6)<CFLE4UbWP ]p[8c~T6@Q)K#U$$TÛSC yߞ>M]%Ko4a-&(\ ZY[0G_ SƔ6j̎S 샢:7u 8D܎qt9䈻ނ=xav֐Ssۙ1$*0oK=<%30p05&>BXjpL~ݲ;"Ɔt" $7N:#̑dg8±LϔфcE>_ɾ`_QRŽ*p켐,MkhdE)=kS[ 9N.MpB`Jk PInZ_J@GL^/X3wi>"ZH7 f,~]>{u#xz`K _i6o*4-^c Y{'TaGS͢MM\gʗ? #Req@9Ԅ1  G nGr] b|՘_nv2\]GY,?qJ-D9gi]ӳzf.xH^Z:-VғeO.,ȾU7_pJCpA~OW ͂[ʕ@ w*?:E|ov;b4FL=do۬AT.^pm`>)d-P풔Q֮1 di*Lnх۾cT8;ž6ٮmGʸi1S)ŵb)Rm|Qn|}ӝ/Î爙ɚ> dbHv@}H;G=G?U(CG- '97Y 0~7Y&y\u累݂=+\~ahU,h&Qδ5M(Wja'˲dF~9CU8Gf-z<1=LmRJv22Og!=q@kk§[ {%)w*R5Lw,(0{PJ uaI¸20п?\濇_ro,uFX,\ActpҟM%s*jiP\e?28xvzΙ&0z(].R< KkgC#)X>Ůqgn󒯟"n#kM8oP[g,|VGA /#9",- ;Rv$׆ߣAz#oܶ ;:2|0{L| ?!g.a_A.U1emKSZjrWeV$ݳ W.wrsqtxCʭrFTTMhx?v>30_|Se+Ѯ6iօ,,E)OAL=|%z(@_6vB5z[#zLer2͕oIuQ]sXze0<:COZ8'zdr $\ʚ]m AضkEbMXЪ4}]l| }aNnCrIP$xxVy2zhO吟kNLK -u1WP!VBq2}{,mc:$xpZ@LrơnݸLXKafGԲ+d M' AC8Wu}\$Fgs61ܲ~ ࣗTE쪘#8Eob[leB"@0@:|`SWL۶_C=H&fZaQ(r2:u.ܛIm\럳^])4Q|p<.qi@ޠ`'p[851I;LU2Nc֚prVӻ{HF'BOvPsVgB0{5V”\9f W\ Qj]4Ut3!`n7ytjbXLbL`AܶҴ]d?,NbMn"}D4az 3uh;'rCQzϮQ(Yz;R/Tt7-I@*l:L50 _T4}<(1$ŗ\5맃,۝m©4P~_M]ld=RɖEO|K!Ɏ\މ=FpjsOa(}&rr,#uQEDM~kc C%rgI>yjWVHaP|ҡn_pO4Ο&.TnM)·N^?=|q|eʄZ y GS*N6v|TgBwi>>3t7<+]z} f3@ﰿh lOoіwEj'Jk^!-dc pXT?Qi(1B% G hJ%.Ȣ޸/FΗaYB:|=wTn7@1Ÿ>O%hG8Jf\-;ۦlq0cPUhxPd ~`;kBFAmwOi-v]\D{ 5,D~h"}|-TW&&tRݻ$ D.̰(V*MQWXAwG9i){]`oSczWQt{]{T18ܛ+[5 &WV|QT醔:V}j֣v[r] ^ҿcX4XJf_&NqK1L]膯|U7>)lBh~/Mh.`loB -w!zFYr71jKba}^xU R(0j蒮v^{" Xu4֎gmł19%!ўg1s1@*C4SU *A>o 9NQm2?ˏoeڑSH32,}]g zjw3p* ]=7URUHiB Ra[ |֔gRw!SZk@"ڬFgmrK_Tl)Υ*}UoTݾ0&?+A|?I77X8NB W)w_**h֐=s dsTUh 4Ky{8?uQAWUJduId VԪ|B k6#10#ʅ)avԌP8βOWU0*t=N|(ςrdvAcD (I7taJ S1y2Yd`trF8葁6* vCN%@y4± <"+|~ SDFB` ;e/S~-۠$+== G&$E/vyf&Yd6`jQ%$CRwIMJ́̊"`0 QJ}a]1Zh$pHBV6wGNK|}^z<*DzFQ“зrCȬa6EQk{B]* L1+%ɳ (,Pa3Ƞ5N<ϛ\%4;nVt\'[?饘y=@I/[d?Nw_Tl9֫,eSy6ͷ̝~C]3o:`#!Ӧ4RmRAt5F9Ӏ2+w-Pq&Q폔41Hӥ3;&DN&5R Sh=\F \b#.|?)BAΜubQE'DZ!})mT#+P4N繓DJ au츢>q[-Oyʁn1eU 'Ljx:f1Dan ꒿ЪuZX 'ň0"18;nX5CNjl;eeL-<XzuY"s-E8.D_J0 5C2F&АB#|Zɳz~"/vA-!Vd=* }b\Dġ\놑rz*t֢"GIFȉszt [6-fM֚Fi#?\e+e[#F>/RTl0,V2ќ9pz Aڋ?$,a^+:p[*GUWpq>SպlfajGg"!r,ϱYQЌ\DHQW4@L7TUj(` Fy@WkxL>G]HF[1J%O\:;TdO<<inu1+"=6sD5@5>m3h/ ܲPձC3F0tF؇OK-ga4-Zױ=:Wg( k ׆F:9qҪiW_)HZ5=[=DY'g!lSˁxMtj Z,l3L.5{i>U=:Jb+F?R";ِPH x[D`mi^v+'&QFc~ofN"VV&=sE ;#6|yL?&:spNT-<7P;d`@D \=K" 3Qc~LL P2Iiynej3rHPMR!t5A5vGP0SdPh*f"4F`Z:XKQ/lkC1H/W?kM u;o;r+%k=jKD`cWpKj -FOu|(7N dȆ"4KfRv?愾cv[\l My0bVlH:7Sh%`Xj #՗㸛 ZKSH:ݵy*#k :مvSd8=e98Bu0oɛzK"`bG&9ȤQoN팶6py4'KMӡ+Stf2$輫4Ji$ y^fy$`u^>'bgBxWڬcJ4a!@hu+`U<ԑ756@׺޽Hm"Tv^XiOHs6Bb*X Ȣ3†NŲoݬӆ_֦͡#[YNTLSvDA nwxFe4:ΟmGieN({NFlwnp{?=Aj9[z:aK5/#y'G"}K75} )s*PX,5ge3ǚ]Lu'Flpwb4|٣ӆ#9hLQ@#)OU>E5wM +{71%z W={ ڇ)Yxsk;D:6ޡ|6HYjwp\"&YKE([T$d E]F{gJltr2xqT5묆T7o{XyO v>x8owE>ZXmay;˽Ko7TqW3w=y/>&A$99GضUЕoXeØڣG^S?WsԖxtķaouG"_{2{Vre 5sg".7:D]lmnGÀw ppRJm I¼[S EzmY[Ȝڛ$o.ђ%-ߵ-UUj;,"2!A؟DƥEh^fv R_&G&173d(c 2k[uӜC~2vfC.^@`>ﮄX<웁.Ay^¬*vM?Mp'ϕ?&{8(4>Z @֤CdmM2R1lQCɻq|J++B&-=O(5)妐1wҊuj}sgVwm? 2U&2gNx(I#I>OW|{kj`VDi9?Vvߢň* / ZLloPj.-=EC2m Y:l)0$JI QiAnosCN$q1m{C |yc j9'sy?]8S6 x{+lV@wjOE@rD=m O BI", b,:A(vl?ۀNh[Gz|ևK++'Ze<|jJGfX 1``v Js=) F̕6'K7@ź˝q!:WځF#Q'$7 쏈P \N~Xl0bdm)%_d ] b'rːs='kOwDS4*$8K< ѓ}$)<)D6`N--Y*X&[<<)Qe'JZ8Qc-/Y MFw&Xo?RbzlU/3= a~vc54Sa%}h>ïF]RJ$n{x8RP87qު'Epu9|Ha54,4]M. 5pĖƍss=,c_ɟKMnfa[&1_I'eYI5Z0Bc/:h~tVI-[|~7$ӋBB"]9pe^D sd{b2hy ShNHoU*'0 QY9xEq)4$Rgg⒙F\3s],` }Lh+LdWAvW /ZSYҒfx챴j*$P*u7\ec_kӶ5s/ᛟ%MP⤤V&+O&åApA4vZD:(f4/+E ;[?)7T L G#5C$Ǖb3=$eAa2ViS϶%T -mNpi|G3@҄+$mQpu\Z?[՝-UP?bvb=fƕNftQ1SdJEo4浩]C3nLvm΀",prE|Ҍ V@cёk133,5=1tfx!SuK(_Ȝς(TŵBs Tuˆ'&\.`ȄN 8]?bw3?oKC§Ԣz_U[[8E 'g!e` 2|S>Fa2]Х|Ԃ?q%3 "0:Qn#_i\m-CM v`cilvFxj%1YmE $WET*Rh~,$98 d·ƴjlP>T =@O4hDtH7bw*ib0 y|-?:OX!a4\F~j9{m5rzd Cᰊ_ ϊo֠z&+ޒ&~[j}ZJ"@̀2$L3fdFq瑁mT'FX$L,?/)>@6{S-k4 [ $qLɴs Lma$M |+LWb̔t%KZ#7/_l0uFZ[rdžF8.k3^\΂:V&D\]bg&ۭRx>{qxg:0!psօT\dvh&eQpU3m1x3z5ڪHl[|r$ kOHIp1RLD_aHs:gvn*sd"8LWEMcm^~gf4@+ܸQxnmnMl+fQ"q`QqF]ǃ_U75}4_0=c=8`J f =Tba$:jNlÒ݅L(N?mOKGk$Ӯ"!lLGMP/3EÆ{^ D" zODt)XDhl`<TcFP!HϴJV({~̬R 1_'9-υk_ӵoO2h.D+[x88I@6b+ECN5NU B‘r刵ddumy. Sƿ .obaUKc4 In1~Lt }Mvl-TojSxqVY, ^3G fA4 g1"o;i]k$޷0fЯK7uM7 ߤ!LZ\GK̉qy;|uϿwISث2&P L,(ʌL =X p4U3JXZ0b~i-)T\d8pj7Zyq8t;]||!GL!]܃+W"['y+qAgǪcfY2~2:]uo%G:z)0΢OqD󏣹 E 2ŨG"ֿ=ƜDt2z4&-#y#|@nQ z9V,Tܻ2\F|K|,guX^*1h0U6BA*b|¹,E$AB:Ԙ#wrא j7hdBh%i|"D&擰p[-A_^kr?Ù$&3 vQpleL і1t䶱!Twms&@u0IB㴠<0w GqT TANGPI #C ǍH S%2o[E/R᏾{˧ٚh?&0f]ff$$ )_PKsض SLI&֦bێkY?/bϼ V 1f|κl?W\~ uPAܣNDiw&&(̲@8.z9oRhL`D5dnd+<` 1P죻,ƴ_]a\J^q<7WeTI5Q9Rl࣓Qʙ|j}Y܏RO Υ(rxa>M]tV'3nxV~h}L\m|)8"lP%6N`v5?jlgtɍZr *TtmucE~tCp_.RWk:a';4E@lG&KjçWݠnfD2_d@[[x1f:| GT1lY(JֵCv'f)*mb 1 m0 e%u&A t%|\{˶|إPoϒd98!o/TzIx8G44T,vƤ ZHVedcH^*4gK BJ"|_%ӆ4ә jvUao3vk}.-#&Qۏ7z{[nz-k0C~ B?N/XmX&JQа >R0`8.I Nïʱu>mV>´b}F.|j٬8hO(O^ -NE'[]mEb9ȟB"谏_GW:rg qdŨ| 8y.i.ԑL[cXbyM_˽fy+I"lUd,>#_Јhe3r۲U^], '1RK~דx({x) eq03#<>#EEmP#̫/{181s(ř?uM̗qO${q%xN+aM&:lNQЇIx ՐdTgQ5|Q) hb.Ez3cƲ1Io4*G@y8=[K:( ٌI2.4,ku 3>fMv`uXomΟ_@7{P:Nv:˘۫}I)`+\U?M@eLf;P/m'^D ,ՑLB=2(}ҁv#zZŧS^+2x:Ϟef~䓅;T1IkpFZ<@t%[ʅH㩂'O.%/p\&_o G7Ơ28wtӨ؅JS G \g^};1B3gI1t(&$h:Ieޙlшt0-b."N\!+tL+EPB2\A6M̺7_9jtJK Rzǰ` f99uH鴷9` ?#_TA_6Ug/tgUzeQJI.K(`KIA\8x&ϖ>h(Ik#^*Ǭ~Y#TQCh@ŘU%v [y=Ŗq!nIܳB SǐU"i+GT|*0i3 b`1 6x2&ʞca[ݪFiyQl !@*?6b_?f(xiym}ֵE+A&΂1[WOURkJA~#)d>tt~/J4t??o?$ BB|{ @I\ޝ%4&TB~`_qM0!0}B?q %P)]?w=V/%Dh;͜zXtՈF. s+eew_mozaӣHo"!ΆBTԗamKN% LcUܙZA>>eA=";#iq░J I=,=Bg`"1乹 {|!wfUw'dh<-@+,tWXl]Ph$K"wC^M*0SDI>y7 ]m}䒼" 07bާT= c::θ]?ej*zCnR} Z ΰie1U[-mjKYBiX^|2B?q6[UC \jt _Wׯdkz 9()R|SHdCbx=#Iz!ɽ{sx-$HxLS,X}5L,jK_')=el&uSƲa`hli{׻$7twy뫐3Ն80TxVg닙&KO Qw{cִsґfk.qMipH_ 8a$|5ANH%  $ǑRhwU.TUNTf 7ˊ%eu fO&xY^e#Ԋhrxmw_ WcCz~d@EC||Ԑv-1JYܶDc]Y /T+IttEzpB]9"'z:| )a2S0[/Tq^8s{?5A̚4psLEqEV^$iymHSLCg.fB腮_[u{ =[KLTͷH?dpHhѸ^ҴnŠQ'< z}d7-3 /"v\uH|QWddtM=0(8 Lss&M0aLű4RK8o[8s-"Œ vh(M2~|o7D4 5T %lV&n%tDG/i?:6p8yi&zE5=wl(~dy_)m%pn+ՅѪMQ[n_z\`v& *&N2I Y%HEI{K7rBx(Ws(| 2] |)dr]\U<$&YE֩G9"֘tij-7UjLXx~?i ?<uaKDKh>P,8SSXG| y},HM$C0bdnnp8\ͬ%(.GcRdljVYD(@Ҡ{ >?(84 Ӧx`⢺J ?0p ,s#!38zRuGRz꜂ߤ?urqdCAJc4̂0G+huQʒ>?ӞkHsFZg#gT&> JrJkƫm'"н B0 KߝĦ$N:bl8=2^GOl\zDq5ngGpԉY| 20\Ֆ*]/Fv솤=) D:ؽL#50J`/Gqm#>r>ݵĽshx_zE,SvK,zmCCOTx)N_7hS3o{7}DI2#l 73E,_||=?f܄oŨυD"w$bgt*gYG.za&+&ޣ-ӗUs+N P~XoEc*RkA- QyfjGE;n.KYdmZKVIC̃<+:lz> zЃ! wvR*>ꙦV쬺 (EZ㝆sČXw5$8F›yuȋW[hERiՠ;!2ۊNwZi0K>ڡ"xnaO:lEfJ0>'nɊ;T.ߟ|!g%}FRU"?\x/w賸(zv\{v*cb0}AmqT\R|۝n3&+;R4c; mjf5״7_Ը.:Nei$|9X|p엁/gIb3rebTΐRY<1<ug"U;z*a]FnׇpnəpsK^}HqmEg'ٹJt[rSP}?4** s"Δe|vZ>cbUoS_ ހW[6bJ,D//q>N<'KaEPW[b)\ePQ!Eas6q-/ vYPă2 =qhrEҋjtb1F8z-95CmK dГJE6VCX4S:ݜzchqlg*5 cGN>RSܪjoM(릊͛'ygb8/V#;:룶cfsm'ۏPR2Fzx Q xv57CO,>]ϿvS1LBAÉetKy@ !k#އ:t0a!^w7rN$̚Y9'+c*Zoٴ3  hc YXO[F_RoyV Մi4h+ABb".9Tt؎>yMPƪP\>ܑ\ܕBO}9 Կg6.! %O-gzɺ3Mghr"iLrqm ɓ?̚0Tcټ$t=gr[?Hyqw^Ga, *АɛhLu}h*Z9|gskjϮ=4ݐf )*yY :w{p|G6v LZpfwIQ8[GL݁߭ {-/%L%B}Z&vZr l[mr&/I]X(fjU&Q*? h}VryT ,yuNdK*,ןU"=L.3HqT`͉VgSp&PEgA&CPG)'8K|cN/8[t/oHNꁇC'BW N?Dx@t,mx .&Ί r[9LV*os$ 4Ks`PsM @a_k];wOi6QP!d Q)RIo$[ cDworC9Rw%4$rt/GE8i6N\ZP64BmH D$>jKa ub{,hDmǿJo\; 3 VꁀkO"|#k> goɸ_SYa8k{]]?3h6E_ |0|GE_}Wx)Y:.d0A2DJZ2:j ƱЍl|J\$}$'$E g鶔ب~HN7υ@9ߎ}bE 8b "˝+\y*Bb#^PCmkA8Y+, i8Ǽc y%>f3-EA**~3ʪe=y@d2Cҙ<_!OQ Bkw`;o޳d´}9sbWn9-IB%m 6l4ŝd7u<y -AexS|7D:@4d;adxѴ nq)&=e0O֤{F[V\x RGn<4*բ5_`Bׅ ϭ2˴?hUm͇QXwE }Fӟ,v(c>@rk *ܻLYn:CGΏdRcba;~a/UAP["S/ T 4%lXG\D v JS]Izd*ru..i? p)QnN[0Ssy' Ygqq-!sSS=%R<&fZ5sf6L&J32Lr6G5%]aY -=-Ṷ01VEe_pjfX_TuO.kX9)߮R"_p*9bvH( $ ܸ_K<%k< cԮCs5JizfI`MtG98{~>[髶yIR3!zsN T#2uާ(,Uɯ~;zs@t[焿ᤨ1]AqzB?yIn=ϡ}Zk55#sw||2;ɋ9b.N${@Y WgVbҭ u7!\!Qq.bLk@2kw8jfF)sċxTɨƍwlA ^q %|}SN~`PlA# .m,i_-RØ[5V ؃w??!-y#qv'Ho+,w~}vET"0j,'jJ]:P5+lt7C>g2JfpBgmH)2w%awઞ,0>%ꟚUf:<˂zJ695\ ߛD'~rG@ofS+6훕Z㎻GR9iU]e :TZHIp g]Rc` :tgŠ1-؈S+(u i,yT-[T`.]ƧU_2"qt<]OMG\rOܵ]j(e+_;FpoHԊ'k{W$B%A@fD37Lt!'Rd('4Ѐ]gt7d]ǑU|s\Z [H!0ƜaU!3 jrvsMy4+\p`F nG9%QOSa4(qK gk7O&q^]Z𑟟6n%+DO 8{ٮFq+cPl"S#N@|Z6zќoݟ_iM,'aa~8[5M.h+_vqQ~+ͰX@٬s3F.3[HԞfeęL"&R3TW(==I:pJ}DRr~! &z:"MQnFO0ce[R,.h9UϜ7Jݙ8:z)#>Бҡ$srWExI,kaV1sN#Jإ[1vLΨ%U| Oqt4\8iLx5lӊpmߧ$Ȝ 6zZ+~_6*$xc>t}6,-#J ی Ceg% "1Q1CmowT/\$y NѠM n&iDEFJ= v%Z|\)^pkcL|y顛 ư Sj 9U?L%O[T`״"Ɣ ]7x6r[z;(|.%ȍЪO<' =~"` 嵝@tjBW ;w45yEP9UjL#Z(v 9<$A0gVԺ2"`aybU"Jkn/|#GukO}5YH1ֽ =aIjn8䮆+/ؗ2AE|j_J'1uZ Xڱmל?9>}_>XA/Q%+ 1#}<}O3 P!P^_.MCl!}Mq Iyq>/lqB?_ZE"@9n(g@-G<^Ettc>U<1..77NkkF\$J:B#%3J%%z@ J?2? ෞdE2S&圼w4Qm\%b{RP45P%5dxyU/["Q p-㮋=2I(Ƀ]c3r/liÆR_7Qa.dBf H/kJ~â1×#z;s|Y )p5J#(G4f|%)ZMD$_̧T+7|MO{S A)l "+ӄ]iϰ"͛ċ3Ń{zp{'v#^;#{|UUbYμ`1gB<{ɑQxm>s޽z1WhN|S7T A )>nD7W(PVN>YO2R(S-sJƍS9H()SR:5}T߅cznȚ#>Rwgh-@Sb-tƠt3P :W!Pڣܩnd"N.#)1Нfze1`Ww7*j I,]pp*1T|{u>pMW$ث402zP/s=aܟM6}}OFg gLaD_YjyH/veV>.5 =\nxjm32ă*oz&l!C}ID{4vq`Кjߝp~z/]NHax#k:C] L!$2tF< _#?a>*_;kԢg&inRFkVAUfmk0D_L͆4ڳ SUм! =!Ixt]-c4YdGx0ӒM+3!gSIh?)ZGT 2[W:sZ#UlXa!2~:LM а$#XecaNNbDyꎶFOfjr -8+mmiEݫb<\ \%vT ñ(mQ[a%JǸbӊ$xtzURüF' ^(9ʅ'j(CϦP{^$ m0>ZNZ{YOK&\7V O~Zk#O6~k-Z,X--?zX728Z)ʴ ]{'>BO3w~Lp 7i?# (UvQEf&3a3TUTFNʄJy vyn``k$yq#Yذo,MsKpi>9H7^nT=5eTuڝ,ZevJ ۡλ-EmE,fEJ ZV@i`BKBz]1FfzoEcNHgA2«ǿ>͏?!=7{S~{s(3+)߹Zʠ@x j {]R$ J,VmoT7Y^Y AIJNZXma_ 74G "^j[8-="6HB;a1 Q<;o@2LPVԯ2 K^%Dd,mt_Q4{lzI7h qkDrf E Wxj[~[at1l>w #: ؓ͡wD_"s\;>\GJn~(}B{=v`!p+|Up<]%M8X\G9لCҁd~4KKXb@ osüEqٛi}OCGer'BhS|!(1A `}ЫAHJJY,"{ Suo^㐺Y/ =~e_|֢PAV\3NytD?apn2^!fV 2=,]w*ʕMGJbS'l؜XBPEiz5;֥@|7 -f-fWZr&6- m,ye2bOF \ W_S%/'QN4! tW} N<>t_\7D;E4Qqh/DB>P0ёBBH 藺Ie^Hԁ] X6t_-l >R:\+tY@/k%J6^5!e%CCc#_ u2ea& nL 7[VܗUҠ9I|KO',-QI#/`Ǣ+IfEH:Ϻ  +4Q :HߓƜM6-~#̒n(uh}F㴘ymZTj$97%NdŽ{LD_PVF&O&>.Vר9iA SlCWl W:µ[;el{^"f}>s#F7x2o EiWH<qSz=sFS0 7vx%b!I3 ^v YPڎx|snԋ_\HSPE.~4(| 7?B>u/WkNMPw|Νf)%x -f578̒A.YTJ\zF{GVoi6JOWD̢;%퐀a]WHqS4żכT.zwN<&J"U#`Eohz^TZr'ek=Z-SBCeq }rQ_T/":\o&V\Ɩ߭Ԉ&wr$\YŠŝ0`آ`3\?.~G9:SeupF{&,M:TxVPKJkP)|))Fy,\&TT||}*K=tr.j\d?KiFxyY8WYTmK.K4zTE{F>Kg6 ~ #'˺v18BRđv߉AA^ Iz1ݵ|+!cE)b *v=_✈/-m~}&3.SLw3U@ί 8xҗHbCCs䘐Ҷ 8J]:x;> .{|h:vjjWy2aG^?mUsd{g7Lh5_1ʭ9 hy[vx`$)[a ]]5.K&v 6?}'v&U,#Z4O)X660a=[Ѹ+nk*Tӯ}qoY1ί=>_汔wc?FYS)Sx,¥Wg?9.&S'G4A![t^X?Dch]|1 yܤvzWl"԰D(ԷMwT %~2ȥO4OioW%Xa,WbMd)V̖`S2d$N/pEl-c ovw=0=(m^mqB8~ }iXbW;E[w-pU"g:;x e]oF!Y]>'(0qGMx+GVPJ]ezz)87d6֥ HGgJGb]p? U'5x2.b[Ny#m~(}ܫ b\DbBK~JP/~.;zv*}e6RVb *!戫vY Vve:/dHNEQ/(qy;ew7 d O/-u;CN۸({c )}*.ΰ?p9fY~D^jկ|A 0&n]0-I 8XCZ0 M[(jlu2]_b,H& ȭpKMxu; HQׅ9Kcq/3|kFnF>)B^\ &;]\y1vs|GC˚jsO,w;jV/R3iWsV۽j F̈C\U<r W8u5-! C%g]ք@#ovA9}v𧯂(.P{V4OY=bti=@b3'Qpp[7eoXS"cylWiL,?\"@cyƒ *m*D Єd[J/rg&hŬx ̓\$s|pu,C΃W]f!O@ 7}*8°%c°mNǴyP6 4?{2 pv^rckޮ, Lmʜ!@dw:Zu']荬 GS4K.on4Y`!S'&"!aV[I+\1 ޳tb {,rPW?HbQeX*auWAYo*#p u9(B.xaޤ15,G $m `ai8C0 a:r/nG|Q-K_  @}7諄1}wdddz\{Lʉ@z9܇.fjYbk,9"ST*@`s]UJ8=O 82_aw]#Wق!{yz$ܩh&.d \>)G›B1+#23ibeKɆd!Fe ;jue(?N1Dz+"^<;*torla}-v/^?cIɕ L#C0MLH u9$ V3\VV4'/-xyU_8B}$N3|Z!Č;V f)GogĤ -"7E/ oɮ|*zz*+ŌS&AkſVb,"`׻r28Aʗg&ck_'\M7iٿ]3O6'($u 3O*nGA*'ݡu:ykmyuc-0;?+lziҘ 솹v@^~Js\/x'ZEbV@T \P!w7OIl S/!JhDSC3L;ڤ'ꝹDOX{ġl zoS5ce(㖨_V3,BgYN9M>l{}X*'MB2𭜵WWL%)>\{۲sTn ܄t4 WƥZY=дf͘KxψPbJGo Jmo|vypm WSo>EH0\' 1tQ7#2G|k#>֞*:gI-_vEV*m1. k({kv]h}Mɇvbd"0` f6%!--P9f9KۧW[<)]gKe\)4QkSH s*PP]Cg"' n% e7$߆e.'U~ꡲĄb%].`^3o(Y\m8V>Qm^?w&BoQ1<}O#\Fb\XA֪>iO67GJ S|ZÛza)9wniV#2MdPK =Y\oÿlb#s_usg>YB˭v9ʿ~W_oz)̑iQu°\J{K],g$ F%0|c@ r {^kcg"{Ź}?AƖd/}JVܞ-x"й6q.qQӢu+|:IS#Dŋ2w0Ui@`\o*O "-;\Ko|[g9;Q+l?vKKwILR1I?j#J ZVA>:߱|%Anx^=́QKt*x@'$[Z"f~bܮ a 4 2Jokjja[Rd7DHB%vs F%T [塙1O s7S"eV"wUl'`=*~ڃF6!MS0UVs1elEy!ZRoƴxϰFm:+*K1_#pABJ1/ Oߝue8AMFuOË`4U\磻:aN进!cxbO ) abhrmC8L  #{AkV"(zXޕNd8C›5iR8-vuk?'{;ԃ%ITc iHċ}M$ ބx᧥Kjڊ"V1g-{<2JV\CU4}7,"\T\yF+:`k ؼ!"ޔD '4qRa`ݎ\ګv%]],XOE!/ ) Υzu C_5̥A,Ha/,'{S׌7TYQy]?;Wd_Liw_혷[̨˺U"z4 'Ѿ;2G {CCTC|:UV>hn oIe֞܅FӻF1 :Ƹ{NrY3aW|1/+10MFL0#ύPR:*dAS0G+ _s[rAAr'剡wobbF ?rfv84}ܙ]@3FI [71G6pMgP@@Ng-D?*6gFfb?4`*9]uxX)ʹn\>b=B0EyIWn8KU~Tݒĕm w=f.D%xq%'_ c4 !KsoS.I"ܪ#}ÍDzK4_QuH;M_(kTp +Fm<0U$4Ա܇MqHc4^`3؇~9ʫOmjQC u?v[gX΄/% _-@R/C(zm{,+Q !FҺ0xHxmVB'Yx ф g'Efhs,6DMbtMN^#!XVXazќd#b#qUIShh? 7LI@GbÊFڊ9"Z/"v1fBotje`1:&K,cPd}I ,h9zEF -Sx#4r<ݻKQ<D nX/^9!;J\7苝PePCѾ|'lYxgN#1Ma3лGiI+| [\y'#Wr]{;\AyүX_IfYKtDؕ:*tX FaS3 +feZ"79ir wra\H5`ۻ_󯒑%xJ%'mJUgcA}Bd?ģlК(L{OA"~B.@RF[=)}rT2n#\Vz>UpCBhur pr*B/@5$ wdž6ug Wo y 9o !IC*I̬ՌUWekd,~M+82N] n"uI9ǓB9wFPX̵Rr]x.F C >Ylzg'w?,iW!(3QeHݴofSs=Doj %h@f+d({U`jrhg74WG YI\lngOmӌ`Q%'lhج2~ȴ+c OSZ=k-Q9\۵X&we$_l@ 7=KC&ϪAwOV#{+VyCsmӿ\NA#'#㎒ >r#K߿Xp}{{jtK; ?O bHdd 2{nn%LFbR¼';RRx*ݛAH1Zm%,X39w2jyd#;!ocv8?6 P-mTkC4ؽ%ľse߈dce=;8] ֮dX`:S8-9uL/cYrc&n19WҲQ,=sn;ð kY^?#=Fі.7x_iZŢr6v7(2alz̷ j;=I|I>D It?F<;0Jl,1k5tC.L%,}?wnPo>V;YwFɖ@*WssMqߊw60?>jR(2zȁg5Jeq+F>Wg{9%_Opr-5,;|ؕСo7?q.E,U:+o:(& {]8'F)m"e2ڶ': ١7`mfwA_E_a0 'c3FoМeKQ9rmޱBd\uV8Q{߼ (/lND/&*W]j𓀗mtaxU,k@7?qϦS /^hIxENH2߬O p$aq ,$b[:^m&l3d' "g+ːz,N WQqJ*҅{3 ^w,6ԇr]=I "5&RkYF%% {Fj5t '$TF$s6zOu.yuVe kgVͿĴv`cTdc o- qIW^!b|6'h!|e~'#$eFvD T`2nBnTTQn']Qlj:론ZRgY !Ll,/im2vM[qrr[õ@~b mYG&Cubfz-'=9&A4Bx^1uKU :Xig1Kȭz)?bQ.@6x_ <6qd+王:U z>VSwn(=k$6 k:Tږ/_L)pZg^C7680BJKWs/g" BL '=VhԻw'X;iĐ|穭DD3ә7V'NEn=Te2I~ hڧ)!uXaϯ4X)1ؙRI\̽ƥs+MIk 8ꕻYX 2J? h㨒aA!` u:|QXOtw_*6I>f5_;%Hawi1ɹ Kkkc/Q~KVcm^*93#qH"&>14~q<+aߣ@|yNORWBUӋ OQ1 kf 07XgڅN6-T뛋yDF/"D$ Flf^R?{ ^8~PTB[;8oD\T0ÞI< wM\PEVقIT#bs~S ,Th/%Dbކxo _10"a;. 'GA$zZyȺa j-IVە Ew~K KF e;\+b~|DB[b{mBJbOfW\)^?<4Kw졫2W闃`D^ #^zeKZ {0P^dg6 ]܀T;I;[)ބc; Ni" 8Чpۅ?S4l훛s iNȌ;/^75kΆt8VGh' ?$8m =EҦ^>`mN-I`o^tE8VӋPWےzԀՕ椥Mv0Rg>LLC"!$*jӭ3OΕIt V &^\yɀ|_ c#CU#{߷Luf_+PQ3+;A,D`|߇(K8$0k)Y;@0%0]=m`ɦ#ݍk&H&vh3 qiOi|Y2x+fDSGVBUƅDtBӤ#|m@ pɫ:frAO. qq XaL_-2&9qHCiqU?-2n% VEH!pM!1k !H] 4FxbL A o^haRmV^Ε<R#`/xȌ0wQcLq ~]\$U,SkgrK}(p m>[My%S]v* @ݥ ܸWlGf)rh"ʠ9_?`kW U2بT"WT2g6!=+vZo pr=g:i*exg颲4`:ioߴx"UFgzr;s7]e:"aWBYcߛ1C t_LCwL~(= 6YW]wJnF^_hV 8rIHGA.%sv50QPCO1\:jtaud ʻfd+Wne>^m&n~7^mEihY`߄=N)Fs||bQdSkeUA=ˊUI+Qɏ貅=E\6pT+Ǝ  ֗0ÄC8at8 # l[TiY@v21¼ݒŕ y bp3,*():\]D&{דik_mLCTD#4l[DOtY>ҧ>QD.0X73r7T5zf ˿ yzocv_˿<$?,e ޖdB/z1H-UdŹ(@m(.$,!::?:ޔA;glc0oiJcs5.E%%E8D;]R5Rdڬ_,RdNb?Qcxc%%/g'!sM ϸ#ڟ0UżS<$t+-\Ux8xBwSMy< > 2SIzcB5?%]ٜo>`йRݾ>LJ=Za#Q"Iu{ӋڣG&I#Ul7֦Uc ܳl,(czS/3x3d֧~;z-#H}З6*JasJS2SHj|h(&j*۠L ^ST!ҧ1+OgqYfV d4;?{dM=B{Dc "d\XwI]\)u5<NJ$ω>&OqKq; mö^`y;i^p?d7ymo7J(zD DN^ᙕp9xGLcu\x\hzdI/e:;}PD%P*RNԏn_{ <2+XCyN- JCc~= 6rJ.#o\51tR"X!!/4RlHR/@1XOH۟X9zGֆ& lc\&ѵ A` g 'Ä H('Z`~=\Ljϕn&UA읻bl(ZΌhSDUyehPlOh륆`5 1t\zA$iߦFSb|d+Pe)$z)"fcr@1(6THU`IvQ1zkmLw˰Stw8Q T7nC_S+g &Fwob508^0!Z*oL"҅n)q)C lǔhE&JpAUkHRnbg\0!kqUbq~!xVWAL .qﭤR->K>Q3U q]x,A0|P':F;ٳ`w&'ChN`+ Us3ZZ 4SHsۖ&$Q12>Kǝ+sԘ(2iBIӈ@ ۡkЛ+Rb-bHRJT fWa?SU9خ TVN0ڞhB3_#pbpM8N쁶[i{.&SF̀Z" OM:J)5 e\ݲSA68B3&J]۬Y^7xt'cg-q+U:$3iVPI\M RxC@-{ՠ#-hMo3ѲsQ ?H`MkbTR~9ji'hD0XD r x!7Dz&׏7e(uWUCН0܀ךTj=j9bkjF(Az_ܽD!WuG\9)M"Ҟ(哝LLdkgQ9[LZjz /".{m6`z-t ;fL Ϣʽ ڤx,?!mS=.9vABz'0_Bzo/* ʄ=3vvIwo FAđ_¦5ʬ!*qlx/fQܶ&O6"'f]r4wc-I1C):{u2|0|+֜=Ap7h` | N--uK0.Bf.&?AZcS,aj ۑ 4(7+f:˓r) x?p|nHWBnBX)٢'m~OgLљ/d*8%OwJ+@e N'I<jE$%sK7Que;nӒNɪX:Rʞ^(µ“AS5>.S)/9]-HeIZ 0y<".bFn٬5Wg2ӹLo-$PRagS +s=&Xqrxqn~Va#J?Q5\qb>~v`X2Umvåƾ$T-pְ3!~`&_~~h]ΏofA0s}8xmZU$7 W1i(#NWahݐ/Zv.AEݠ:}U؇p#`g ߷"ic'u0H H ѧ:|a4^$].g)B|īFXӍzt#{guM494g@>`PcTt_B|GK՜=vbW& 9_Wu54ʙ{ɸ㮬M=.fZ~#"F(fCg@#9d/*0Q_=G9_36V!;,C#x5iR6F@[24]%[[MV6jwdg!/Ekk f~йt!ȪNQtq:G7/~ÚL.IKk]+Y]ۯ}#ig-޲+-RVwxENM&?ET- 1⹗1&͡P>qCI]rO!O9x`z3;?\}9w'LuV13DrZ,G6mTNw.no)a?OI*M(Ff]k30c#'^Фvx1'hR9ugiOc-kHj(E__SV6H &]$}haCwV@a +~Ǥz}7תY /Jԕ*Cdԁ67@'* H2 A 7cr$.U(7k˿/M5J¸¨TVƾk 9JQ;߱|<|`8Zɦ 륃"jx =DGD JOp) %  (uw^=RQGy+u84g='0FBL%1˯ZjyllB J5Ʌ`:`1LE%*i"$/8bD.PY7+ph+ &85Zg}7mR<`}1UuY ?'}L$!=)MUc$>\L5&t4Tq՜ꔅߟm)P# 9TISwdيPvu2 BE*hB6a\f3SZeE`,30 c>4'BPF̂cO"v -`mV|=દJҥZe߿nhnDo4fZ6 C2-5>y`Q0^ґÓBچrGX>~k1{EPXFbslB!' BТÞ:insz64XD Xs*[ "V]X3- y\K!Ua2ܨVRVCnZ!kyH1Z~]hճſ_L3DOE!1˔- XR<@CH5Dl= ,vu~BiY"K¹.r2p?MFظ.4Li0F#{drVMJ$c!yjBw! AƜ4cCoy]$9~G_f/N;#QO˩/ސgG8W]f^hǐoR>?p=V:9{'Er w7FpƢs"ͳᚸ͙C*@{ы_blE%^x)mwQLY*@̩yn꡵+'+_WSzt8^"4+~ꚲ@{U'Q'B[ZNZߙѰolk{z ɽq#˪[LJyOl_]`܆i,kMb33J6D`|-7HՇ2) [Zߴax$ܔtд_q_,֣#|,_d B|O wâ1> O8ߞѩ!ĀcMBwImª\PJrÆ2e`Fky]'L,^H3W񰱪Ż݆MwXSzQEᗠ@@ 6u<+OQ4\0=H<c5*'ZZ 9B НD%rLu9o[Ԥ 5=Mt8F9C:J+5e@U8`ھ7rHd饃MqgvY+੶Īp\*i.M18ț [gNdYꟶз24 r(ܚ,`եv1W1*PFO>D~]6v_샯/[ ρ%¤ @kDgX5QTS嶧X(6EZuOzAb+Յ(;Id7@ION vBZ Ri۫J@܄GK4'q;5ۇ!75$􇌙ɍiP/NXl{ ֻ?; Se oU;lsĦ ,ACKx!6AKK+(\eWg hLj+ƬtɑWV^ Lޘ2=LprA 2-LQ6HJCgiEH'E52%2 A;5ke?N b.$_>DLiz͢T^dt88:N|r$]o۹*GNc.D:: 1w+Ar>BÿR bL>iS 0op|t4ux Q{2Nh_o5 {RȑQ& YtGtdd;^??hч'^'O@/.#oN>}D/AwkaA*zqta:ymDQ>UkB boLkb6L%HXc>g|StDsr8~.iQ"'Đn~FO[H2{y`{$(omzQ3ȟ Ax } f[WΣ1ò#%,]{9JŃI -"OPhKe<=:υ9[ ౓-JanB7!kPB#oBbɞ˩Cq%'h͕Fu0HR@̙TTm6"۷&]5Iva(,j, O ĊGB8&ҙP %#TAyM,4:k/wu[Fr]w_UF{gA~;g"3xip;x}cjJt D>{Bzens[ǑW$ sŵ2Oi xZW ]K/1P w`:üTW̆î GY_Ja6z[ΈKe<8k c,QKpL 1B!V)խ_8sEs7V?;F/6u -lfCVt7v{q¿cǯjn}sX=56d$*⍁h*T蚐J Nyh>WRvpMmWipVF"@'I %05yl}{i _oO 8={OHSrfEH]8P;aQ¶Rq dPU5'3Ոusǻki3C^l6>y i}e8Ɲ0 _ߓd"r7Q0~]Z K2vQ .XJhz.dK!L:Pʿ\%[΍hYUV6p)" F*1:q0ND7ޅ< T 2-{R'I9gYgK"<}} bv{ݕ119X`Qחӗ&\OM^ipfR?.f>:Qˀ wURwEs:#fG 'yHodōߜw3өٹc^|XEb f9E cYuF(_Nhܟ#~efRҨ^:S (4sHre{y#LoHN52QA\+0^>M4^)Ҏ|AU&uBPqmRd $DO}'d I/޶C(x7AnKqfZg*FQD̛WINLDF썆Q.V<㤞#?ٗEw8:J58;\Ai ;RCo\ ~mHZ3o"P!|*e0ڂ/CYOY&2VADґ0,隉A&NW 4}u YNA^;gOu3#0P7Cob WZp8+#\ɿoשM@^NI«YS !*35xT HAgZO Ed,D:(*G 'c,w[|$Z !Eb'Ob)[ EЙ{dl"<;f_ƆyV;-v a=~PunoɯŹ71vtV%bgsI>e՟yhFi{4ka? 'qw9r=;49@)С$߱X?>,>*$Ňc snLrR/TllN 8}44O'ac1B'e)zh?f=}=$A^apaO*6G P%#ם@9\P;5F2~So=ߧF^3oPQKW6ePjjmu:%?#8}վIS.qXftR Ρ3m+mFI>)Bd(+% d2c>_!M%w2X;fD6q ,;^r0юxNDBK* UPC`xph<tx̕Zw7q([ʣ]>9;Hjr1Han(X,׭o4nr{[=Nw bI}# ̇{`N6_wJYW35h?[q<>Oh 0[[%mz2')B2BcBC`WdEW͠H{fp5e+dEm|tIb'__`yK<Kt+ }CZy5}f$3zj L:fcG0t8.Lwa ,01RbS4ZpoMaVU4vb^'@ w/:?@ Ӓ >8 .ISVKW<4Gd%p:*p=pu?|oZĬx/2#wb{I9`(`qYM?[\KوBKhPg4=ke*7CIdF:O()HGω'X$QAF#J-h &j_'n.Zeݎ9(%. R^ #0f "Fl>ufk\oRq_ӣیΖ6:Jx;d8$ RKs8Bj{ >BTLîCk\7]?ɓyȽ{0ąŗ Dx~~#yksϝ%iȣ@"Vj*xa|AW`%۱pxd9V|KLL2A!m5gߴ3v/GZcW_w*ٶlo飺i͹|%Ԑx+G;*#k1!ȑG7j{^1; {I^yKtϏwH=X <9:i˧Rh3_2߿qnحx"&FHLΆΊz~7bjY]+.lkZCXKҝ=4?~PƅKER/\.,j }~H([ǹ˓x覎[.nD?[}E3# P;(&Lv+lJZuN_4R3@:1,W0zm 6R8\`ؖb90*K'K6t6tp1'z@0OO*au;SM{}ه+ ғJ@ՊfN]Z.\ڽ3\=H_\+DQ9]՝gR Ljc`B;LTW;~ji5 :h娮4/wzYuvZ%m@}g0f5N/]hW2>(f _@zaV#"@{?`ǖ]l٪!&%E`~7塖h2c.847~]5)Q٩O%z,Z G:Njt3D7,eFG1;Gp-xո :C4^İu\K]!wG`gK,ӭ( ]iǧ;o|x-/J$bܾB,@а$Ifh.-=f,|CvO=ՀTuf^mA8*Sձn]İvišWDG* Eiw}+҆U|gQ~qEFAHSLqJ!/>_'H vqrA/>赚@Y…9mB[$RU5ZtHW YF:UbbRrP|?XM瞫ՐY bGWen6a5#tˎ{ MvW+@$ȟFDczx] Ml /T3Ʊ.Hݺ~t.|]#6tyɿ 3Oxd%4>WTGh#UFFW+LoƤetJP6հJx3}w}y.o^%eGMpE90|. y.ZDp:[ ~Ι)3Tմu;_N+ yO0 sXo{ľ hm3>Bյ5i (y(#~9#/`߬.y󫼷43}De~ A/9Ӯ:^Lz$U!ĢqgemŸJ;E'36 ӹS5 FG-4=FɇՓ-;N0/i_D鮁tfʿwd sfp_| F̌J/RU91 m&C'!jٴDU'Y2{ H\\NOOElvxjQ!U4/#r9[@:0;CvP/yb2z<1D! pn|_ 5յj:??XcG5ڵeG?9 1/H;c^@߻%XH,\9TSXR򣏐w΄j=%$:{K#s ? [GXyͯGzC9}n[6fLI*Xlu82~I9Or $?gs2Ll(gV᤽_S;V8t+x(U2qhd٨ݿ9Мʭ~5O[7q@5_}.c5bK+# (zdU ZL]:?/eAZ:B!ގT]p !JVл|(;4 D`;ϼB@R҅>@n"|D/GMj:j_"?59o{V A; wJ.&׬V{l]`jh0CI9JmHfSvoyX"=J=P?C 4|*v ?!0e&!2BV](\fhW 7-zXP[(ޞf{[x6y<N"欓.p1|pVu*OB_pfRg宫gtg}?xsShe^^5a( ]}Izץ}4g2!)e y," k.SGJٟf͎$)lgzV)U2q6dYuU dL ݐCqSf!ؔ-ՓS 'r_*_4 1[nx"`싔aYBhF?v'{?uMzq 4!,S:'O\̵kTm)HU>Fu.ؠJe`5L0u x${XŸdJMP%Xiyw~%D`Mބ܍UK}Bݹ(~tfpB5mf̨^:ďrqy<"K]%ĔIw{ha VJFCnZ&TSÂU$ݲ +ƩVɔclj#m;7X CBq%Yl@xf8k}s/nCcXъnL+~ny ᫹ Pg3NryO43,n #XQ9~\Σr25_št~59K ,./#<vEd!lj5 WK*oHʸ< _AR褀QI.JQHGt?c?َW*tFӉ"2caQkb1.lvc>eP6e__?iQ ݻ } f _`毑_p÷u>a.KM.7,~mzugqy+7E)HTA H ?=YufwriM; A9}x-ief]3yX^*&6u*S`Mv0 xqDǁ%^Uy{ʧ4s “4s NMpTyH UC|]Nkօ89~ :\X6^򴨌H?| 7v0cou!WlυmHL&Wl)9*J--lXᶸqP?:2|Ao@[GJ2a,:Rvh[9`u݌r+ocC'vΥY1 d)Y.5삥K$X>@,Н$Uԫhn"a2c}L`7()L|wP7&ϐjꞮz>\* (DѬcꕯ2јUro ԋc&S֬A7H^r"$;bڨE2 !c[Q yD^0MCM8Yao`|ԚWYC=mL~dD9''M3p`tx\8Qz5 ?P0oPa!ŠatxH\7K$/*.?LV@hd'/ZR[)Y%4Yceykɞ!fYz?{C:y:c 8+3edn䪿l j}_" ߧ+SyDfY<EX$R7Ѥж+OE2 ^Y i -4 ` T;IjB6ǡzOӹ=Lڴv|0S/I66^AduGZ]K Nuy-X\WRh\GmȰAGX!TOԜ9F*,9b3qO!s,5F#o0LC:1xwAŏha΁#y Hd/r_j~T@L'|v53A|>X9.o=7IvOTnRW!? w` ǣF r 5sVO K1W2H,Pd\ cU>T BF 2$oBqIZƐH^}\M;B*[$[d j#55ghL23& bv-1m ͽJ$mqL2"?JFٝup&H^:eQݼ>w^E,S/z_Hӻ/bV(.q-X(WS~+./sE A* hfh1jP/[)e[ZG$*>zFg1fvҴ.@)T!4iK"A4&AS%獬F!VEYAYCL^Hh簘'Du>lUtGOreWHڊګ {E*;`3;8kK{2VN X`D[P%` f7v|2f߬:4hDHPH $Stƈ`<ԕC'Λo~Pɵ1Mr]VєAcn0ܝ.L_Q蚾4m:R0h!֑2x /1Ht(gC&|/̛iӓ܏ڛܠoܽDN~/+EBԪ%l+@TOxvU8i[$+Ʉ{m!|%䡼1ϝWS{|N7k߾vABV19Yۭa<,} } -l2#jf4@f >wSk%Yڤ5"U{\ Ui8lB/ƛZSaja8, )k-OvcY-]RE`0`$Z,gWNGtʾz(@Mo[RH¥4x19"K_"N*[yNX~^6w X{lSr0/]q^t-U{g4GήSi]-4ɑdab`~>wqkG7 f}/-;eIzZ91`zˉsD)^As}Fy4)`Hu%=m`o4=}+tDoLoXC.prSG;rGWV9xB_Ds_㟈p:q+L~`uur)YY/Y,yYE1{<fY4j]9w22A:2nN 3}Q0 oIGrG#7I)Aqs\ɾ8yK/C >kP fJmXh/ Tba-HlM`U( ju%wI)cUTu15F3~09A]qgYbJĐFۛ/!pΤ*9%>U`Ol@o;ZW ;gxک5CQm} G1Qđ(WM@Q4ԗG7OP'Hك @m-;nHm$0p4mb݄]rk񫚕?$wS\ *n-q^SZ`\du+ѲJ1",3V ^9B)wmZA2얶ub{їe!m\V@4_7];p=dixh6S-M1 :=$rgMb˿vڞDsJ! Oʝqh[)NrT0rQ2|[tBEb}]t?%dɠ! c9:P0 .2G+<sꋽ*{=:# *i5]iFJKbp~0Kk24R(BAc(Mg~koIU|\%%7Ǟ]HwBR^Ӗ{ó.PkhBj+͞謟x#\dPP)Nn = >s uȺ^'=Hm3_+Rϝ Fږ8P|+r3B履D}i,@sJsUs"bucJG:*4"Ѐ#TET`=/MOdYWL鋃W Һص}#ZIz䛦0c:`ްGFz%1X9&_*W̿[o߯#@{S7lJip+ƨn=_D>YS^%ïw{0$S:Muf#W8xoc~~8%R!ZCЭͶQ?PvԨB/210re`߀npIHFICLژXםvȘr_2%-? \Fdfs8>('$e3-NLRMmL;׈Tust#W*&[&K1+.P-[pkl6{PGkB U]\w qo 9t'ץl4g.)(94Nկ.lgi^zcߞ\%'τ!d\LLH4]DJځ>k [LVUQ{{ۭV3ӸFGqFP7Cp1U۟ [ h /2q8-腄|k R=ea uCZ0gYʔްqwn৹ <|xï>:)2GZ^rKSO@ڂ|DUZ?`'[=ʽMQ `A{zşEŽ*wh*L"&"a?ay9=% ւvc*5`Fs M[vƜ@,Te5[r\J(`(:&+ F9r$*a}Zfw]f;k!i\%la}҉'h>9H1)XwXAKh8`-ٳU+. d ) =C,| ~=XE{oټN}[$$k%[P!}Uy0uy{ XFT2u1> #.ď#9piԝI(6= ʀ)t$H01KwZlNRghUvLq;K@H&xNۀuvBPýf#ȉ3x;ASUuŃ'x],!ctWnc 2-~ dh(#ڑ`\'KD\>Eͅ|-3^}> f "T vbz)MVx,Ri T|mz,:铼4)> z>hbS#|@Wj i ­ 8la]f! Ly\Bd{0t q4'q>Dfؒ"刍9N|ZWpZ&F_QKA(umɦ"^, SDWh{k Gs;f40OhXO)!>Ĵ5`9<e1__i|@|U%?aѹqqt (F1wT;;n0?9Ojj+ -mQ]1%-34'΁JhU ߮ذ7EMP+}!J#t6+2-_%E ] ]*ELl)kGI:S=պʑK7C2lzJ]Ⱥj8 Gf64 EM<4{{m]ۮIQN 椨1f@e>Zz (!(AY~o^q{U[ #~ԲY@PݶYâ!-f?3M_DODrT{m_ٔMsd4c'pf6uђSTa "MEP%؈@*JG[c.ޣ4}›vvHh󏰤|g"E݄l :MIO.ֵWONa!r(WX&UX0iʞJJA^,:.c_:=`䮅h_)WB4prD ebFgik9M6&)$+=>΍C/#3Eh4Euar-;=G6!LjRç}+P2Z߹ 7:l 3dRm9Vp+PrU1:^e_޻I tqy_t>j7|.H5aoaO ph|jq)RX9u\EV-cP%?[/|3K1|MB*̓HkwCI!p?Ɍ$y +(Ybˋ-dw]FqyfrvAj[Q;YŜS ˊǵmZ0BD0f^nt=?<ǥn﫨t>XNJdV;qaS|ZHs=#"Ld&pgp$0o *GqpTNjo :dM-\X~Bsh #&RAM*iӰzrۡY$,pڍuKA\koN-1Hbn \omaBy'J UĀx`D`W㑎Ç⺈#rɤu6)ijo%NFkz& A7\1%$ 2;{ ~g(MY7l|1rx-g`ˑ_=qb$a{ $;ݧWU(@Rs)TgOfݑd|͵Ul@9*2sh+$mӓ_sEyO,_޸)HKf=Z&q^ʝ&-NsJ&L^;zd\]hR]Wq%Nk5V~Ց 9d<%IWuUf<pd>FV  ╟9o_ ˡ `==&Yݮ/Z:ILl]=M Dd㙗e&kr]:53YkF `g%e?#udz6}O+6Q >I(@bV>686\ Qh= |Jc UNV{muq*+&Ew}y  ?ZrHL]gfmOS;Lp]agsz46 DrZ[op0|8X~\@pVX,.޳fQqS|rp:lPiQ(kLҽ7hKn "tv2 mPk{tWyuxe&]ҽ3L4>sl\Qf B#9 HӅȹ2\i,*DJxvs^hٴG,T#B Kphތ\8w+d;7ǁ{WK̠ bKpW.UBB/IY,I.(@q kDN擡 (棧 0J[+l4!TIe-aUู{ \al ۊrrrWrևT+l08a_sO/(Cy[֒gk69;ܣZŬ}@5tEnp-ز$y]bd\{<N*yV hzIK !)ZAMvc\2 W``}o稨?t,],| RFG/MOJW-=OAb&Q<+;Cv. SCSOapddyCͧ#޻U8(+ձ x,2f]=ap(]Жc;O!lT{7uHW&nm4#tvd6TFcPQHͺ_3ŝUШ &€DM Km @2YdKKf\˞kN隹?%v|쩋Ws6eC۵$7FސO^Ԇ"ez2 )\QO1Hϓ^&bA;is-m4Bծ:}L~-ZrV*d@kt@V cd ]N NS.&ʳW6xպK%!JM0t}N,x5<<sj9A3˝)o\(GI@ӥ 8!j/ijɨZ}|.i\>j\J) yŇ @EaÃz4埧b QTw@Rp`-eHwX˫@[c.|f}aU(x%k2 >Q䭣[ -F~7|*WDO>] 2k$ApBEXЮ!2Կ#B& dEwN 2}䌤9t  R)Xa!zd˭̣i"T1zVvtS7aL+ufv"uBT?, 8M%5noJy85T L6ς' Epͽɜ0yT`֣T3A{47%jJޭLbJ}LG3s.&lϹJҀ[>y@@ wաT byDhBd!T78bb  d%lSWӻM5̥I(,tR9K'rjøEghI@]Y^l+߬-78DǑOIYSP0! q R1GO>5_zUY<Ÿ&+7mw,Jbp@*G}3Ҧ>I h[4eRRh9 dO5.b{HR@-Gd20n$+w0)F;O]@xNwX!CHwfwv%mSQ僜"P?ΕZêՊBCv ?<@x+7,$eTV)׫gQ^)Y I?ٴ]ڬ4H* }x0ZmJz b& (@BzǷ0HƄ͓} Ah&--4}^7Et)Ǽ3f|.5MUIKw|(N"eKK &%\P)PoNt(kˉE8p^HHx,~21c/RP lHMlD';,B+0yLcf 2m]7nT  =8_D҆sQCXOEȬ'bheѵ*)3FLEGBfM +#G]WGas0pfzFeP+1^vLbŋ7Q恵aNrk;IK\=9Pֱ@7.y"b=lp/]ʲD%!yqxԓ\Ҍ+Ǧ"Xo%גy+p.RԴ?hr\&δ)iq28G8xZbE [:XPefKC臗.ƐFXhsд4lqgjZ7WHq n5Wn Co Rr";1dDJ\2_f'.qnzzFxJ@Kkؿ"V]~xB }Be.TGVC9]튭2f>R C*Wΰfˉ ߜ A\c;.Xp~J?HyּրJq|--_h9̰;%؇@)4K}ӡ0rH&t_/ž`dkcя@vl!,dgVo]_"-Nf4^Vutm~$O*%USDĔ ec5:gstܺbٛ~OC%{XnyJdӑB`܌5M=@J%VHOK6 p@-R4sMg'p4^*bM b:Ns@}0BdlX r]\]hYY!c?ӧah*P42؈FC4o:7}d,R~vzɇxЫ[W)TI1s3ϋ3R <q퍐Y3,{ɡԑ?xs_ qoAĢ ow)$w0|KNFfvMh͗Y&$$J@vt:?wp Ym=~ȁu;˃B<|wٖ-۰${|y~ʀM%8{98Xv-!%,ߑko2a KF3,Ϭ],s"yܡ 26!"~I O?'>y96>@3ۅK͠'0lkqM=I@Z$ {Xf)vsMϚ +iO(Tـ'=DXcy)?<9xݣ5Y:_6l2qX=fΠG6E.ԁKޑ՗to~?BCMs4v[1O2*uA ^YXm‰$H2't޹wM`6Wr QUpw\+0XR\"peY饖:@X\ã6-Jz5; FAMyo{+*[ңWn3jEӋ*Ce*1ӌ@a 4IxW^${rw{өD~]K4LD_ј>s̅oPLe1I)yrt /%C+G{U4,shTOz7_k!Vn xWڃ0paEEJ~+O`KǸA%9YFp*#j>L,/^Z[On*^<7-zT1A\G=PWdj`9J! arC>ھג4-@0p#NIzp\!8Dl3޷B 9s +1A&F:Quxb|f<>2.Fa-GRj{#4I749p6 l[ȝl!A պޚ$9vZ8c`bћh`jBdG=Cű/AGnޮ&^m73ؑF1LNMǠ-.G*p 'F__[XkK+zAF83($zL RF>=x:/x(ΘX XΟ/Et!+hD3Ud,̐/iZ9i"4 OJ旇H ^J讹'ʂdet;cWh3rTU[sɖe9dy*E{CW~+T8`sLb^3fv[ ÅwB$N^o7R'y|jU٠z lЕ/ veٶٴ0C|IeTQA(iPd1E)q.F9ipC1cI3UT{ao1D:t԰}4uƫ[O\1uq1,b{e,t]KFY=$%;+,'\J g&n0+i?G5d6Y(䘋rv)pM䔘 s>LzUi^ԅ^mb':ũffEz O]b;Ti?Rp^N mɗm!,Ǎ#G+t<GWԤ~O;:0TUW8Ƅ .v ME8k rl}o/qR\ RW!‚Ůohpz.j !J{ZOˆSjzтX6C& Ө4&ee\$i"bI5qmtx=V/7!Q؎b%dgY']DaeT@5-Vވu*xG??/g7%b>-3S)%WEfTOIQI.Y>Z}#9b/ۺpO[!@l&ۊ@y< !uZBlv)jOHDž E+^P"ɛOK@. k~$3rCSc%#ǞLDO4~b&V#80E噔g`i27N\Q"$cu~B\H܁c{7J`leW#d8. [<S ]d37!lv`.#~w#5փmf>WihjP%8f )1 nŔ2_%/>Ed3#qvN|G[F# "S00"N^A[ kdfaPοm@ G) c)\PU4EJ]J#FzrHVK$q RTY?{u?_FҲ7CS)BC-=ڦA] AS<@=Q9 Л/k)]7ݧp{F"]s-ڄ`ᑣHCILXEj\%;z?^cSvN%9qa4Z&3geT^8*TV-bz8iwȺ 7{1mO| 8r2a$嚺RUICޙo8B/}/8~cYHUaUʎV݂VbGs~Kf)Л2f|WmcGMevgާj科sb 3Ʀ^H\" YZq(̬C|x>ªC>,-TP8Bm@  VQIɬ o\Q>[ (ȸ8ݥRR,jOz ) DkO OP(!9TUT@V%&?LG4:߲F?RU+ȍ 3.$'o &^hXEy (x oTmP:Ixn~k-C-b:E8`BDAt^%Q剤9|a?sxi(Vr˦" 3@XÙ*n5O[Q 2t0{>?'Ōu_aRi`UdOã.9k_WUo/$tE]HX]ǚ#_/xNw:T5Gg[Z["Hr̸ˌ#[\u;ЁU;H$'vr>,ыڙ:X?=o} 0фP7O${Eo؋9U]RbSGT2;R5@wcCjYl{whxEvM}E6 _'މ"EO]WWZ Ȃ& kxx/omڎI QIz&IJe˵Ә SN7gqLgnv: ]E)ROtbWsŋV"I~90`aQɎcwH T*dWmj1 _e+Z;p&ޛKJA<Ȑ[ھ_607l!<Ɠg1Hc2}z!"fe3NDޏDi@ed!x;cv3y6HEAϮ_6k Q )lGĻﵳ"_yF9]*ܭE/)^'A:.XHX{vfgF~3CN*-[خC0d&?u!,yzߝ9p Ŵ^J=-N~cȡQ/XPu` ` PNU2P|q.-9}@TS=>"g֨g>'".GvU %\>hq`h}K ]% d :f0Xªm8$b! jT>ad@:aSK6=.4NS=U ifo%=-q>q$8q:u33[;AfbZS#nj0Φ:kB n4EyF.*H Fzjy+H-Oءh#s3lDNnq! Rt[ nxC57Ifx$3 鏨h5ji5$Qo޾49Z߷V|LLA0ӛ)5f%idtqX!pd~R\aCJI2ֳEɟ+q&>b:3F7*ac&-} )(fxP10N/?u-qe,s잇c;ccNN |I<{WɶB78GƋ"(,-' WƻI(fssupi6a1U5x J(tXr12'_Q0]ợg^t[SѫR`zΌrz17+m"F@NLik!zzZ1Yvѓ0ΐf<-E=fW_aIeb Ռ%aSHBݜ IP ]# `K񦲠1'8 h3)bݗcQĿp _E ĮZEMLC(4Ʃe:Z*><"e 0;GA`H[0@6ᳬg\E#0=<9dC%oYsĿ2#ik6Z3eY0kr/RC:ɻ+)fU1QȒ PM ' dy䘭 v*yAmMR.{+(o&Ǖ.a< U.0Ĭ+8ï9lzf}CdHQ7rԵ[D6&]?L7* |*j0ξ0^QVyhu#0y;. [G\@1H0\ׂۘ@LpAt"2fLUagXyV3lIdGNc*ϔZק;R"eJJᄵ)pQY#Dq.6֬ 4gG?hJ,~ g}LL] ##dWnMmkJрN]w#Q u v! oC2,ߖm4=ܸޱ1߬@#E }ow?Q2LoVĵ+Al^{E^=#" 9~+glSq; ڷ Lh -J_HW' u͝TI}Ll1S*޿h=%E:u[J}QCtV6Cveb3|3[oN䵲 SC5VY`+90U yĹ#sU/ ҆ic4E`@.|N3ًCn@YG0CCU@l ѫTϯ\D@Ĵ`h^{UD>f1č^pL VXT1_[9{|(?uO.8(h/h3"ofM!y)(rde\A/S t:VY"ڋU`K^4>v`L >H>2~< IurNbu?C3 e ^u~N.`Zi B ԢPMeNa2*}E1h9 Wm"% Wk,}kI(=Meu!X¢[vS?5ST?ʪ^sr<€[bZ^yk1&]ΨOsnj'H ho}vI+.akbLcN* m̿jr=D>|\厧V[`O2 "溳wэhiE([f)̵/[&DxsOvfWE `q*!FXO탮H/pv5` RyMx!i;  8~k `u@uܐ̝W13{nVl0\%4ޗ1'2sn{ ͹X"nƻ-dTOG.sB毦+ **0Nuwzqfcr.f" Pk.:7% qߔ/aʻhRO3m*ɅF_=Z4ƍ-ǰ@KTfSA;(P.Ȯ'L\dBT=PM ?"J4Yh)^ qYbY"Uؑs3JpA5ɘXMZrfl*4c %O0̈%}6/5.Υ=Bn_o3O$2DA=UolBiu}kXewC#DJ5J=S6QVmkl?x 9sTw{%2w19T4ItQ.4{ԡ$1Q8ŐD^(;F9#@5COvGR4DuI)W@Q;XX Æ|B-\K:=n98 ͅ|;`>;ЦS6L&bOdy7hIXtzW)@ c eܖOU4k-q2,1yvqf{뎟lGh˱7] `0"fVQu(n_+l":^xxd4>: fdjݍTu _QSmm.!j}Q 0z9`7"+*uwE]n.Ƚ#.a7QOKn;?c+J%0j%1D0-@g?8Ԩ|Igy;Lۈ;J+n&FIMl2y)>gzTJbs-ϭޞe|fXRO}oY{U{oko[L_6ꊔi͟53 )cWa7Pb1# ;;0W>Qs[s}t!ƫ9U ZƋ>!?n0 N:9~UY.>+ÁTD}) !ƒfNUA"xՋ,g^kZ"<,,`/T̩+Oɚv}šD\XLBtiX-+TU7Fg' a90'{yMI]*ےd4 gNU{̦vI tS$%W1=P9HH28¶| ](ZVֺT| gs!1jԵMTg:nY F\}Xc6оuWӿ4ܦ4+gۜ[[y?ە#<Z 1[Q]NJ\Ѧt 5oWdk9{Y8WWV 'LEukU)js“e0Y,5i|tar&̃ b뻇Ͱj1;P}zeb MddIwJG!Dh-ERG1܊\q6h]?V}kΊX"As~TgZ1GE-SQw}ciT"6;*܋[10qtEGj݅s@NjCxOu;`F?eiy-XO :[4dYw-isU$t.?+8p*g6  twpdo Yc,o줻 ʩvA߬_xy֠ j#X9 @ C+lDjc~]*Xon&:{m` 9Im!g@r]o y cQwzNT81/~]qŀZlPe8֯iAX{*g.$M+`" O=CC(kz:$g BH;!r*'퀀fjQî:Vfø(s3 vtp:'Z so,8F HUx`jOJ* v-fN%pjF&%0Wʑ.m]]}U9'n^0ǛܻD#.(hr\祷!mzO >jIC_I up~@0a(NFn;\.!M?ͳ=ICigVn̻=" ' yՂl'Ixx8趌R`H9..1Q (1OV,01&?;0AE6CkC1?0u]VݤV99_b4\(8^PXˁz~{}W =[\Rk:3iPoChܿgu I~Ha"ϛhps`\XSi㝏dw7d58U-an~?zQĢ2,YQgwNq3Hf|SY᳁R=S0wx"m}nKK7Mg=BRF,P|4֯\L?Kw&KjIrZ&FRRX:^ v/. `N[yt4T .'^ԉd@Ա5`/&GXt_RyJ2'+돸I&؄a03 ?R]&lƗSlr=Ugt~Fnz|k=ҟyiɋ!U:m&%$Д#N=_S"|M&oS:IQ eLD|{gFՈR8@Ԣyܬ+X+DŚJOk b@lD4oou+SD p0G-P lZA PI`lr"DkEWBuzcGO ,S*>NV39#z^6ml!i+f'TcQj,7n%{ "uRFQ?oJ})&` Y7{'nn,R f#K6C2z]paxB\Oh˾ez]RUUE`NõmFJix33[.LzKؗRq@:ܧ* dR¤%sɉ|GS2P֛D׈4јM^a} r'P,̑T'SonOg{v$;bhkWo@>pTؑ4v=3qr\8*}dQ_cE#Y ީWeQ4Ssͦ{2 QZva )fL7{V- Ldbj{qV,52/|u%[GJ͊.Mt[vSl3tܵ=\j87@ gFG)%=>V -xV_ 0 M( ςL#&dK~dYr֘t] M ~U{լ9 /|&\pGhSwh!^/!đE3] [GAV&hW\FQ/MUh5 d,p뽼g J(RλG5q!Z :`@]p;Xw]%*m&P^AO" \?8M?((ulx ?Lĥ1Ҁu`<}}eH ޯM|%@"ͧS_TY6/!0_"_?_RCEpa!m(e-H`߾l{Wвp{$$/ineG#'pǘxH/7}>:ytJBw]09w;&C7_vZRGOϢ~I?yiZ7].vE7[2 ru,Y\w~)V 8UΘ\)4cKՂ[)S/EHnaEaZZx$RBr,vلOPN_i-#KkQ'K hu ܁Ik(S]ܡ>N)n2(yϑ.h.C"4 㮅 9ABy#cm{BǬJ?_[B\Eţlآe<l9vԪ۞+ N 3f6F%jɑėeH4wd@_>IH5a)V0}aT*8|X+oC#*_3 #ld`PiKW}@)m~?(0(}7(s {?ձԽUPPY*,0q)<5U˜4,x-V[ <]@\4TUSƴ'\lӿ6Wf(`GVkpaz  m5numT5"{~,diU2SePzBIҔjVx=O!"+t2E Ϣ-3߳:q5= Ժ=\z^mYi@@`_fbMܷ5V`lX=BpoP=MN$W!\lSD`vpHi` QFcl#P$6N‹#'&b\!",q5** r+ QeU"Ktl,N7j!Up~Cpq~E7nB q@*< }uw=]}Ca5,5gĩ3v=OsY9tiHڈmSC$r!>U<%gXMj; -Z0R1ZNs)@&|#ؕzĮ2d LfuM,a(h0'įԯ{oȑ+i_esUc o4eW :3 dEڴRp)[ťϫ(ƫ%yanHut,Ԗ3r5qUx!syp?FNE,$Q Չ#ͪj|n‰(.lMĽP4|"~VRp}8Zz (ec1YH3ἈQ qA'ŽXqEqcT,&܅չfѴ˿h1VYJ<ޔ53=*,_ۅF  ̂t0d1]󵐥nmx[P&yG6B:R%"9y?<x2$]{"L.dFzmmYgu_(EW3oq}349 mJú4 UfnC?)5YfQ$d#6":2Dw ZsBl}N$խ8Y̮rs{{JAqܾmC<嶞8 fq+tμ} acnfD"z:)=u>)b2z%BSEP)sLItELc^1.0foCL_+`o@;s2+`\`Q%J,=T#/(G+-RL9*f@v2rrهؓZ"6 ,X 10kqeweżE;"唽ceU31A*eeē!X+<ttWp{D7Z'աa[+dK{(p/F~ni3.lX L>ω&+mGC;bI!9݁8gCmv|ϱl,Yu]q,g'xdh4K1н{ 7=tuNvkttH16:yծq>b`W5f?y3\`>9-夡$o"'8[G !DڱԙWkF.EN[sK\ւ-*d$E$PxeV^nw,o&Gu!U܅iQs{/Wj+$jT^+AaMO>8? *+'eJs},)YZwJ5teb2n E>t_Ex{B^C\2 vfS }m |OJg|x4SPҿk07]UaO#7 hz`4 Vx¥aE~8@v/t626VdIR9E Jx=SG{Ep6Q5Q4&|ۇZs M6?'eҨl۳.?N6ƃK] ,\TIs ~bW)=ԑ,h//j̆;[{W-y裷9}vEΉP}ac4LM;Ɖ 襄갡3E9h,giecwa$R9?↤t_Be9"JVEief jw)9P ,F)p4QQ,[C Gu2'pOһ.Ip`7,YV\  W؄[׀B;Qԙsc]$@,nh@ZZqӯVI&t[Z42MN,OC5iko>5Mnsg 1SnFA5ZnYeyAcKrRe<3 37iniX"+$ȡE@:c5\yX0("hP˻HNrH{t(4@ ns*2$emxW~*,!YrII9LE_ky2G>ZD;ĸrf70ZTLbf;N3Z xFY};׻io!JTQ{DV`DhFu#ޝ6UiO1(915*%)D<0+[d}uz2zdDCH%@'cr18d74k*tg}4YE||lJ.IΙ: ӊ~h^5\zIc5DHF78ٯO?C }Xnjy?LC3svۓjf9blT6V\lqS >  ?&lW~D*E[7cr`ց }XYPCr>+`*I'HᙏCtlUm}-TB EK{HUo2.gwCӽ g3 ³e(u<<+D9pΈGt=3%#~Gf#\qK}н*_{bO܏ >JaS=I=X[, 6HpEOW.@S{ CJ>@uC6#-[g"K$9ec)b`-(\]sbʺ'ϷI*B(3.y(XΔYP3Qy}^=>ԭu0f67S o-9cXuEˮ^JodS)SXo;!*~^fԅ.J8(",6N,tKoB=a~wبn(_w;aPqHHB)2EtX@-|f^VެR.(ՌLoG@z kk?F`& ݐщP|u{FExaRbZYEe$LbBJNSƔV~NXN2v^6krgҠP-}RNK3Y;?/ekR9̃ƔtZa/&h5މZȴA_juJؿIAe2j[3 hO@`!E/ze{:38IpG)JXN&~V9`z;]T&,l&e{E'P'.-CaYrgԘC 2SR> p>;gFm9ܶni6*`倃dv nDHC4=,$g%&Ϡգuw0"t(}ZoXG}սq<ŘLҧLL _5<9l,2L=~@ mJZ62a6e] F<"m YҬR,U aJ&wV{hڢ"V0%L|P)n + i?/p \9ruJ !HVD Cu؎0c[!#68\kCpi$Ma5vʐtWPOEwEt";.CˊjL®D;ypW- jʌV:9p>SUt@@)FQ y@/lib:| ,1mջ|]'@~vk4GȄw}uPeFei}ӭm3!+MM:sqZI2\>QwP B2eu/M˩*G]`()L]dfCk t*!}Z[N%,I}guSM$9RFJSn]HE} } eIK;7x2ct,bAiB֤k _i w}' _g0sC\Aϭ,abOбyϔԶSd֬Z;k&B/w=Yg4((fW$퟊;{^\3^z 3>7ޥ3xSA`4hqbVi) ֳ C `lJf;ѳ=$\[MW88A,PH%e*"ʿ lL`DJĞ棷?*PDlWd-8gѶ 8Lr{bW4'|(NdHwhglv:LރSG1] kCV$Jb>"݃d^\aMڔIԝޮ?,,9 ^dD1дe8g=DQETu'Ln#٥-^2e"Ყ͔ PM(dL *5pVU}Q4=tvi^[xCGu8gu1 x,d:K眩o*7T3ǹTQ?h $b?:M+ÒEml*F )&QՔ#mH. &?r膫j 'wfr&oXXWַ[P'1ya-73Fxm˂p}αʹBĸLw ]fmQm?ExZSpS0vѣSu#ٮGdp4А94 ^6*'4EM@~\Ui pivFUy~[dKk|ƨEWzrcE" ,O[$}ojx946p]n}Y{Θ Ygejktv-N`;k<++~are 4ဴEQzo# I# 3^XFX&gZ"E,@KG2shbٗvzHu,EA),1zr@s$Dߛu<{K|jlu61ZtSL'qE YR,FhHK03]Sv}!ԶxRZmfr-K):Tz<Y)aKOY*З%&.5INĤ)''Qfo_- cu^6FF7tL#DTu!8ς<̩NaKQ˜~ "7E̯Fy; AC$z9 >#]vCJT'[ЌJ=@["LvQTMHDc9qoD3N{K/04 !`2$h#PNs J ِOF&B66,''1S&ld;pL*7 3-wso4L<tuTSڣayDÇ 8+d.A&etH7XU-PNu<^8xmז2|2(0Miח}HOQܱC5 ZD w/}/UOcQpqt.U6(Ig 4.3sb딉'@Ֆ#JD1$cօ$DUh^V5wa7vT緡J**j5t\l}e7U_?ndئ/C% 'o%hsvfB;걹*Zd e'\2/e%]]STÖOF -mȂNW At_׺] ۂ"%!=Z %93ԓ:dc'k:/̡zQu3T*6*JZ x!{O٭s~ξxX\ˡ2cꎖ'G#?\^TECre+ ˉ!7F+GnOOsV|\Shlz.6ot3+U T+ ZR(@;<qH?0 $ۋ"xΚ(LCvQɔO7S a:Q>^8Fykg֤Z͕iSRU@&10!ia 5qgMl8 ם,g_JS|iB hje> 8f3 u,:Zq^-IM`y3IqNHAw1{{|\`Mr# ǹAܮ yE. F`fRUw6D^"iq;8n0z.1?d|>&ԏ̩R&y^L%aS>۷1L*V)Ha-{^Z3p.vE/2n8ztݪf8\eSDm.ّ[E5p@̒ygھ[(ėln?xKD O&u#Kk:\Coɯrc~URXg )S=NTe޹c[";Y5y:FB/h(T&lǣpU:hTVTHW6hg'*դ۷a/@`V$?OlEE#9te~,K ց.R*U:GÔ`W 郢~oLl"^3:ߕ=ώP)-e:p %xkJ>ƀG\1;'=HۧHu&j`_TU$T 6nLT,+o}'U. @#lL$:jz]X19ω P KR}-efӋ*GijqfbDB?LVW.3yJCoȯ4`)WNLZmk뒍âom 41ON]J8׬6sZ"i#JtAd|</6 fɎJAőyqf ч}. Wȟȡ7)L|hXRP^ChxB$FcONE֋(7_9j|(}Gßސ9:#|p{Khb@s!HX˽4@gMࣺ-PMTĔ:P y2ז̼-|Gs3Pu1Xh͙D L1θOHeg%5)x*vN@1)E b HPnX;a8@N~tb&4h"o/f`}]_Qcr~*8RwLכ".K-,Fi󒭖0R XJslghǍb4wBq,xRjfyr#n6ͤDuQQLHOVJ`^3D1(M/XJSafY;?u13Z fK轓R`he)Y:p&246W-07vMg⾛.ɹؘ)*T\$?ס N}>vf*äTYXn,T=J=~Ь*U_$.PoIcE"W.Ѝ]Hw^Y?7!˜0?<:k]j\dg'\i^ހւjzRroݚ=x *Sn!>(513#gPs^gFe]0挵߸h2׸7j5ٍ9"؄mnsb2E*p|zǃ`gZJϒz %zܟZC{+pcg, ،l)zEkɣŎPvro}Rqǜ9͝|`McWL4з#Y"(WA犝m鰀TC1d :}ݩCf<;i{IUBn8ŦwY\\ƞA^r;7NTX|~ ŲRbuťn\d]>{pճȣYhR7ehiЦac1,N԰c&v#[bvx /|2% I93q[w6'3WMg{ؒځ69;hn2'Zcj.~(bב$ޱNxoIXO($7Ž{b4bD7>\ML&1ըŰ%M-@q۬3 9w P|BnUK8,n V4RXϒ-yWmJŞ+$V?fp-|N` b:k8>H]nAgE@X3l&sL3o p 4KFKz< G `B| 8;+Ι˄2?C}h?ZiN.[6*$vMi(z +AKECETAlci< ewDTzFbEIm3'mEro?(LdmN&GhsN6j0|eISy!Hu'~j?9 Uf>8-Ũhb'Kn-tu'܎)FߘmB&A0b yjf{:a|@Q ŇTR9U8<Ř(}7(VLo 4beJ<$NGcSWtNQ!<_JWR~ɤ,YuRjG`]z$E[d D[CLn}EV&Y :3wm2hG[cG"Tn`ô1lM&*d.~- `/G31nDRHk$,g3ɷV5^?UGQ]0W=ŜkuqbU0y2rF޺cnz g&*r)XF.O0 b549 _n^5"]jQ;\C㹒[<', =a/zs~2q J=?7d&drr˥⿵lg,͔빢{J;#D:$VI rRgSط0럕6;=Fdf6 Ra7( ^JW?.kǵ#AB#x|=H/UDebLaGPLv}qV^"]R7"~[am0?!F#tH[,hj/ q_V&famLx 5ԏCJ(cșntɑcԶ9qp60Q#ȵ9-+1Q#^,A¤y(1bc [tXAL$ `7n[Ι.|Sb= :: 7$+Np-VE f%dr0ty$N.gU:񞆋jfMGءP . Ck)+A܎,ײ"yc6S;n xÓl=o/BwL$$':.RH(քdu?^'B~7.09صJ뎟d$cjn?ݱ[QɼqۢGxBcjA[٣0 zʿXTI# G072n1:eFÇ~?XF|}(.| Ȳvh\;?+xqT4k4={1)A[QZF Kۃmp/ei6b^DRC/%y9՛Ujn2Ƃ2vCdRNܑ54{HbȋK8L٤b[\=\]sC5Sp! x~㭋'fѳk3R9s |p W)A{s; =챼[ u?rdmGPMdjTք#wn%]mRˆa%ZIA8\DpS.혨GBrYW;3Ja0> o~'́e:+_";)*(v:~eu8w{3SQBܫ,~2bVW/ͱQ<,̗ ¿y^+ m;?r[ !LȀJ}uW-#:)nh/VȌxgCیŠͶt%a~`&gzzO/ Iq0Pŝg!bx^&5\;QF.[f bGi|a=A[4JYD3G.ɻma7[ BYI܀q\Pg0gd=nq5F .4ހM:%'ppG/2 k--NX=B uҭ@WJ-q ^36kV%&Fx='pv]w^ie8wE'aXg~/䣭Ctе9ls|D9$]JtDŽF:GQJP( Nq0-I9ÇZ^]|7(Nf=-pv,)dev qrmrNp%&> v@%[dی*}7[ğÚs^Ɵ'5zף_N[p4Bo"riBݵ>Fzvח-;Mحcu;Fz"O6[hc٤||iP4%WD^A﬈}n_]bF CvFW)X|[*8]M+nu>"!od|8axU+2}q*JF=҅5>C'zTĽ6E#ZK,anLb#/z~^+u &l ӵdI8!D%Ez5ⶌlk?8\h߾H]׶s4:S q~_X6yClyJepϥݓ ԥi^!CzHW+GywƧsNDR&x_\v6ҥ@Wڹ_[ؿ,6XSu .;r·rع (􂬵ڭ/j:\'b 0X!ӯU8 ۉ4\x_X7SJ Gj;|f+X]4) %a++^ƙ&e6=zЩA :L֮ɏW,'?1}Z'g$zBЎ!H9e%TL>/mj|@IC]9KfюޤJ֑AM6 oT/ëeY_cc5"oDހuIA%|6{t39?ZmBtӭ`ܔL':5}+–TwkE򶋼UFBۺ+ Åݿ_hv+_įN f5?})kJ( ɉ%\~("U׍6(ѡ\YLԚQ<7쵕aOo؅_:jŴݞM:ysmN/4N' Hۇ化npGÙv^ IknJH|h⹭jgZ!K+  }&םt|> |gyim Re}LY>/MSWx8 XI$u$~#vvmF׾ 2͆l ;r8H]ɾ}zf6 HF}]G$+Γ-x@6yJCenI+,47wP#R9z"ѝgfxY0gO)h wѳK#UaL=_yJIzXI[_&ąĽF2buR JRkQ0FbX>j_:H'͒ G w,YN*r箓yUH 7ₐG $ƨ98KK+ 2&T4h)Kwk^|_]Y%;Y|Yo)ċfg-+>H&Uynm4!x~P Tױ jum,%x,@d-]h!328~|g.7AHH2M*27RF Lw.hL)1[SSig*r2v>ܣ*_ϣG?pIAIվ aٕx0;a:vBAY< g}AOm=}uzch}ze!7gn${I4Ja`n|R$ =-4S+hd01WKr"x2, DRxK!DJ:kj8zzL"l" ew0>*il3"d~ʧ7U'3XODU>FNŋ*2^h׫|*~¡iE4۲S/ϛYo&OxOnO`Q͑# p^$ߍv n_$ڒR0M c7k=J7.ﳬo$)7C=lGZ~A?etᴞuzX+(Ә<]^q`5 3^≍_Ek={rf _ KT(;RRsc!xXO'5 YNns(+9]^Gsvi(=9~_k _ e(wU2>='>m}zIFGZeN!%E$ GAPQoAh൓c}69К#7*N3g{*סReݡHyDCTմH|T (D w}j+. ir9 %U 咦 Z aP5nML!S!Ov"Vj!zpA]?Ur=l]2@#g;h`՜〗fꀖ(ǣ" K2&ϸFpv>] 194hAE/Kpޗ؈JVhȖN4:`8 zlD.cȓ $[M] ڻ)oo-@![q(!9[GTvι=@qӋB? $SGR-DQ!坅'V?킪GXm} Z4(;H>'[k5A:F$d2bZڀJW MmhJQaH@8E)s&;Ly\2ENƃ[;\ߥe!Pg|LFszZb)RStcTk1ؗ=Y5iA\iq~$3F,65g F>;, {: aiE]7tSGم$YwNzJ`Twgd c|%|, <3X&S \AO9{UxAxpč0X.yϬă)OOv ul 'ht`&k ^rA\&k96B L1iTx2pwxw:ַ&{ %pə7 [ jkN\Oj(%r"l½uSQmh-4&:gwBŌN8NJ-XH ҥMLt4/ձ^B3מ! <%M87Y?Q)Oq/TFpX!KVaԞ3U ($z Gا =OSHI] Glu46w+Ho):# k!/`S=0YqpJi*4^~=#Z>~7% 䳉Qt;7\t@YD!2"%,{ka$Y>;Qe{'yv#gw h*O iΧ ^#.lykehti;=#vE\g7f{ b?ٚZXWϐ@}%] i"AѦ+bm_mj.j34ixJ eٳdg`39Sg+FWEEwm׉HMtjH6nllÔN=FNT<ߴն)"}cRzc:K*AO^YD Ĉ_}dfF٨`P()…޹Wp=FՊ+x>_+Gٟ%2KH|iwkE!Xsřy"֎ fjyC).y^  i@fP:- |=/~@)\d'=|7>̴*DӶf:ۮzE\{tLNً82SC#] p#wٳtN^g{5im%[XRz=/0RSoݝU"\!cCJǐj<?g"al&յ ;*U\KF +~SJNM5ٴE~Rn%ŕ=?P>pCϻtk5 -[ũM$r  ^Zx<Jf}'¤ x|sev}gIjS'odpy5R? =,ٯ$XetL}{VG"F-Z{3'TO 0%VcT3w4Uz2 1I XC ֠Nl\tm3DRdL~P6PuG#SQua=P㆘b Ήk}y_G(d nWE[WE [h~t%J-1sSS=0J-ZB}Ъ:ڧnvަ@n $ OB#Nh #[?^pC"9֢ju*{Y*1<P*g4zh&=3lڗzPk8&c~PFeGlg]ǵ! xo8q]Dsˣ|,&Esuv'!]I0i 5֌Vg}`{=:E>\9dpM/u7*5tw !Yal0I) !kQwf;BO%~ JpTCay.4E2ms$r3RFxL;D8:_}-{eDyAzleq̞J;^RƸY-3:M+Vc'wإau?,]D|iCo^&g733/Ϻ?ҵL54m0gpQ^Bux"5#ǿV@3{X"5qWSg\ &dѣEyȵ7&hq#o?<0U K*2F.OXB[3U[yMli.-#2繈F\h,G^I3m  e$H{ah$\iuv~M5Xԩk\B4*}.Dfغ p:K;J)ݢs(l*T`\ U,Z\* =%pb6X?ekȒVNŋ=L ޒ۽_wCzenLByY@OO^|6Ċpҁ z:^gAZU' ƹ+z ypYм8Ӯ6#iyZ9d]zUǁ`u ZAh+ Xoe DXaMQJuۘhӘ1(@V5+DC&ܴۨmwQR^Fr\c`bH,\cH+ U9Bsw0g{&g15ǎ*'h{ȫءc#r]&^;t 튓npp(ף/=X=A!9Z lM.@iZ6*AA8,|_ [~v?NWAmZY0X CH`B U=#n<7aZeiij XnAj SaMVO5gùNڤX~9Ut;%hoxT D޲:S,Ccy[Y,k6ſ \cW%+Wp{hyB>w&)p) u6n عy ܮ]B6ӊ{iL`sU|ކ0RjT-R4eu3@J',?aHr*Ф_=`WD^z%߾LmHHRm>eLJBZq֪v9A#S ߐ[{w ȔT!!j}mkھھt96r( 4vWY8E'r@!cpm#de4$O w[x%]9֎ߺ.+[/6>͈(>q*_-y5JC#C"!<4 XǺehm`b ˡuT!? B7hAR 'Hd릥Pn̫pUlq@3棆E/x-U+޵C1{+m|YOf={]5TX% :19;U*MRO* C0A6iN^ bU<"^%fvO$#d21#}J ƒ o5AYT븹Nf2q0Ӷ%U0uQv+?>c؏?"T F0MIL2m>+et{c5?jjw}}nM<*`058^$Op).2I/ېZնI_Ȁ:1iH#u`K-lq0P \qUp0 Yh@R' ȳt*u\mZ'?%bO_`9UML-=-7Pka-{rT'P6FsWF>ۻ+bs70)ix3R7w5+Yʺq%qS`V Az6Ծ~`J!()X$r>P*͸.u3$&JILy0xhy?}OgAqz[fjMLQ#Rg͋xcd&鳝2<\;z{`` 4D,4N;PShfsYw*j9 8mM*j ]9mG?jvD]DjQYl`:,ub[y.'W:kÂ&aF)Q4y?)ة{ *ЩTN,w?>ZTr<:NGφ0/F^$wɐM['ɽcƉI7QxWE429FKAA B)EI/#MSp:eA#4z֔7Q&k#/ ]@0rWԩl )Ժ|k* K%DFOQ]?JN-|Q`LAxid7*N _ab-2wp\IĜt_m )kYݶ943ΨU0Lt~ v^ .3bOH櫈~EFŨij6ږ}O[S٢d2̽+4c1zu0'%vdhڃPw0f9z pPȨeܐϸK)u<Ŏ×, ȅ`eZ$~`SCتX_V|~j||Hb+͖ ]]c. /+ jLk#Lz!& k~㪰:)?GW]6J*frr ($ݵv=@OtI~fut풁‰L+mtu߷`2+sk le[u[OѲ$y]ϐ'.w, HK Mi"W &^t`s5` F.ZbcF>&SU䯿rL*B.44Oush;gWI~:> f9!MPD g뗽Pp7pul oC㜐dGu6!uh'z`߉sKԹ}>|ڃu$c>jPwFo+k&>!C nQx55Yq p4k$51@1 _[3d+L5Q @fc}<OJ ,FX qע C7IpbTs !2?"PHo (H~3)S2c!x/n{-}::Fy# k@~9?{]In 7+.=ނ{^_cN0!;ivC1:Ϫ[ΡY0~MZ1jnचz0w$ =@LЗjf [3e?')M+>r庾ې) EXGg YU|ɢ_VJ4 XFNFLd;O?rJ/Z,c[N_ݯޗT-˓).,[NB؞- mzb&`_ bH zwh0m.D;nYSj5 k^s,D0Eth:hotwǢ#?+cEz9IAXۯ%q7WD e&ZY%f`8&Ud"$P~VD(uRZz@ZPt~\_}81 Tpsg3ȗ]yLӓs {nX!}wr( o䬈tQ =[]K$ԳI^62ϕ;L| BthTiL,P˲#IәCtS3bZ'#m42fB_K̋AF|H O6Cz65h߇(x% ̹i [[BJ0y+g?Ƭc` sa~d]mP*;޶=is,D1Gիq!=~c"[ܧG(Etmv^)N7,:F$\mo–ўn6P<:hR[oH 6tcg; 4Jh:P;{?f\!-|t|S[F|[,{N8ch>O#RF@q"{@Df*CĞ_GF ڥi_b?J 0K ;re= k4r6< Hk/qe,%Cml+T<\ ~\ KwX+ڋTږI۵InXXA !d%Vջ"460bϢ m1sӥVa XiTl$j|*TFf<(KW&FkT{1Lѩzm.j&[J&QJyEѭD(sRÿ!˫ 'Ȏ×=Gg.p1Z+@}, UP`[o'*G ΢zyj"\(-wLjЛޟN1x1NiaUu`TjY] ~('h@ob݁2tqw#;ʿD$QYgw.K'N|fm'<;H'H \C#85wL+.֨3[~Ne=! y|n^'B75G|2{LmUjMJa=EHsos-J^ ]NV%'q9:|i%Y eJ²ig rѬ陑"@b:* /U'ɤTGs#JbSҘHLlI(hLFcT/= Fɪ(֬}@WKߜ!Gc /R(L ^Yzj;^52$ ! YId>ƍ!̩Z|)؃"2idۛ=oY JiȊQBu$ <'*}G}AE9*J"TsuP)#$ $ȡc=( Z2WC3~zxPT(VCdiw3 (]oM"܀#]d-i>?4?WdvɄ̖ @=I w+䅉׋C>$:f hYV;.slqYZ;_I%\"8QJc, a8܉AW+~A:/c _f{ؐ?heCh6޼>lݶ)Vɥ쬿jtu+ʄM??|4ym#Ȕ=)q,qmt\|,.fek+ iךX`EĢ= T]SZ >I@Q#@6O',2PskU؊&cbÐby+l,qA*(\04pΰFs>_zi٘%R^yMlPpG _D}fۡ2O#ckboHh^76f,5׾1pוx,~b'~%4<X9u[b;WFS-32 ۣRwP(CiB"mU|,^(JpU$L 7D#Eg.ƲX>+ apPTRТx1@wuNQ"EGO )$:߽TdHy\c~2Q'WBme(- E~u3)>ߩ%+`ʭZcpmfäD_vw Mف4vι.տ,Mh-)be>0Ag,MC|ru~> n<n7۔KZHDz>TQ@|azN .-At%Qk>kfoN_p0Fwai-;#6)yӓ^ʷsBZGgK=q}_le,ФRp>lj?? f\կ{7Zwd$60jżCs>C,̐u ˱@Hk:tunr9 )| `Q32uKQ$CUapB[x!V1}{MSSGtdQ@>8|܈^rZ_2BkV 2M{,c{g{k"H =OHp=o~K~UPa w y(D|UQ}J A/z ,F@H"銜(%"; 4< nEͺR\!ELu:#9 2&6]犸d`xSRx \TZww/9tD?y6o՘jA*vF$롃 ٙM5nu:h@ιWa]@QF"3ʛ6]BOLN˫?g>6A^6B,CedꊀO\-O$בA[]KɄPIsפ˜'{/&]]rLVh&hIUD[l0;z&:60e CɳX7D íZi cd % t5gm줳qL}KmGߙؤ5 bϠhwR~L;|N"5h㭨hmIHtMS%pf^Y *]RcBV- CI4pq-^甮A:GUΛM#gg}Ny,FG)fS?YZݖ{O>lmVP'gߝu$?ENUC.Q 鮂 FaOn_"(F*ӡ {ց Njbmβ5쿞Bt@͆Ke) a@S{?%.Ks,\6`s>w颲]I# <^{FP֪MBA𛋏ӳ+|:8يͨ"FcՌiLK=|m9OM8!F*Z &G^edc7u $C(:hFxsͩ_[O%;o|͕!rp*C+\bhWQmݵ_8Quk[_Boݖ0 GS{M@9ݚ$I2߳0 3m:*h~WYp'A9B:yf.jS֗F5V֥Z;\c ztO6񶽶R+)-ʙ #&R)o";c֗syoؘU~%E1U"PI 7F^?BC6ҫ~aMB0<<+m FՄ#k'K[ 5Uv`pjN`_j@:K0uWɴߍtGwTD:[c!(ʤ0]&i_fIOXʏAePFhr ]aEWwKh-=Newdݒ50RX [c^#tZ8|[ZuEX{i4U+bd"^Q?7]e]Cc69;CNRfTz昝nRgP[,W-Dhw&-oCc$s3.umYu$ dF=T*w >|ubu5F:ïs35&q^O2HR:4Gl3K_oQؒien1vxikj`m9xƩC\wK#0V^RlElm/_濟Y_"+"F=XZj8 G2KWXS")c4ʰzPb%ACDrG;?!6e^uGQb!;nYh2jNL^$^cH# ŇSv`Þ nŻ1V;%S3y Wڋp_4\aE%NF΋AP[b jl5 {s oÝ}"ԹUn'o`8ٔ+5ڛ`R. P2*Zu5ipyGR{K#EiDo.մIj`1T 4knf0C f)9N-yu'!>|(M4m+2#\sde.B'+>;JvԤ'uv1VJ|f|Wa@<* MY $6Dɭhs4x=t(Iγ^4RYl]a

/\?by©swAG?8~٬rBF՜J~@ywϨ&yCT :H qbU a/vSƾn@ gpt% Ov?݃t}U4X Zi_1eCq;fți\@DN@Nqo>"1nO6#8JRuv7$ɻ]t&7eZ ?Wo71!y9R]jSO6W/]ggυ..kRUQZRAX*(h 9`c-*jB$3Q(8{$_HzP K'T\ `ו 6k^.͕Ƶ'>OC~Lf+Gi̔掶+ zPr*~j5_^(D0Mn5CQ5ȡA'J~aOgi3W@֖]h2U[tDEK/T5{E¦`&8Y$ĵQgVŜ\tYqgBԹtIZ܇Y UT#i |7ijI/';fp%N+~29򤍸*H˭}]ϊat6H:4L[q~Kwaʉfxvpe="vfåi0`FaëQЁNܶ~7gwխ+(zpuZ*5OZc Z)j /2Y(AfאiǏW`q=6ƼDuߕroCدK:LB1T}:" KAHT̀ːG LtuPFIDȼBϗgH%"*-Nۅϸ QMв`INz箒? tJ* mփ^znwTNHFxxx n4VOy!*fDcvv:2rQHU[Q8˳0kT۵n_v}\O Z='\M"TtS*5=I\0iEd seFE;{%RƧ8ϦB!5ys2[omYYN%Nx/AXhAJu.|>(1w{;Psf- +XX߼O bi*EA -&AG3|7 %^2ҫz Sy𺋃8U,ޤh0N>p,_YSSs|\.IŝQO VGrz$rgn 1y;A؊/p(EMQK ]]-Ii21e(ncFGuճWJ\#h%.;~d>ckS_[d'!GpԺ~ߍ_aDT$2gՁҫ~mh{}tԛLQ|?)Fq'&N+tLa/0V-dQ$H3Y%I_}ycA #D@$+C,.sCV/LJ QBiLCFXl.?m]4[9І o4?yί.rKgyk`gsX~1*"-e ƣV2\&2KFGKɀ=g¹SX$ ҥU8XCa("w-ͻ-/J֒5z3,?h %A` H/{66h~eA-N F=UI]W1HV=] doSπBl.n ?asT(9aЁsRFwrOcNPWb,E;9aIHqp!NW̷8#QlAE %)&xh^"[0am _rؤXaԗ޼ f+l-%7YUXq64+îDwOO33::]~wMU|ƍ*~fH@6-g /Ok`Luɷg)M9=['RǸ1V @C88:p7ryr%}wUistx2\JR(tC'Uju`uo༼NCj !.\pwm^=rd?1{p@v":E<8ɾ,LPr)潽f PEsܤ~۵ɻ fvn4;@H-+ _3yN/ֹs1 V.hW۟wGSv$Ä0o ٌPJKfY?vUzྴPb^/uߑZVoW\0dzpv<͗`u}NYS=k ToYA&7' 0ZOo9l7ppVm}Zbʕ)iu@"B!ؤTA-1uh?ȥkLvA ̐V-) zu6#[j1G|?7'|~E6gF+ 4+q,/#9#0<8U\{-7>nPIS1B)ft tt-m.OK0V ݜ3$颬4 bLz4Bn.2ڍ R ("u$Zu)@UF~t;a)>JQ9UE~yOJg:b} (XЛ{)]fv< D iJg+X=rc=oY eH'& g^L^[PwYcRTmjEP JL',6Rnq~LD ;)0j_BfT?_RvPl),|w:L Kϲ-@%nT(xX [)2ޣYnL>; jS:y= k/*Fi=Q>I]h˨m(E؎IǶ'u *`<8?Hgz]M97k٨5&-DSۇo :hZkđ[$`[z,]'땻=t8Fmcf7Yi'ZT ,䛮cPjT0' ]{Q $S#C7Az5%Do[a.4猾5\k͚ >yp^V؜tԣ FQ+hqfCn%¤]`@F3_==LWJw)`U{8Ar:Hќj4x2v6¤dTP`e.'VĚ4Vٺ.u6)z5hCu;Ҁ N푒[!6l#\x&f&zRGDćnjn(5WXוJ_-"ީ)9 tgҁ i.!~C*Q4 ^ nFㆫqìT]ZHn#4[T׋qAbVmRx[^4Qƽ"=) z>7yRg["*~AkXePPg~**4W HЖW_^)#ll (oS9b*& o.`p{\}mFxVe4:i=@}5~(*gͅEn]I:Oϥj">g*@5φTUr|Rm+kiM*ٵ%npOp1J->u%[gSڎDV:P, pdvʒdpWȶ^,] {I@@\E7|15^ վ Q.'M~\N\N+RG%'zLGn~X>t!` (Bpu}oѣ ̳)v09$v+Aoe;JetzoD" |ú:n|*P}ƘCD5[h0~:sjfgxYu:#(W-,j(]~[+cx$=mĻECjRaQal Iyt1:z2Ha=8XIndӪ(%'uOV*Ug2nb"/(nBbY[cCX\c#6wfkC҉>O w"[Ҵ{h H'iK bҍZ @x78nntMܻۜ%B`tyUG,Ozj [ҧ\Iζb3gqU:NetƖB@֟w/ُqh8A&ć@ɢG|#O9 $c2yفX\ QԼ$CWJPY\.d圾Z)I^fYHT^TP"*ZНgZj|3"$CIDQ3%eKu]FI ٍܺN %/+Z(I/xr;ث+'2TVE|SN `罆^9:ɿ(B Ե0 X>NDֲD|?PzY\ [!*a1X-R;aZ19)?;gsg47WCraߒ:kbϊ p}T(Nl\+wdILIP%5Ev__(maqiZwM}4>ȡo!.dth˺A+d[|# 5ed!Dt@tN|e<1#fzN۞R (i[>ڌq7dRsJɣXYUebH&?κ*@{"|oyDjB` ٴݦfHHr^ p@:ҌgZ\l`blOM [e7ZNN~|U?77*s1fR(ʣDܼ>[ge*lڅk}L?aO-<`PsƎhPv'^[Dp \W!TE1YOJ2P;G ibf8OhAْV|~ ̸:5/,ǟ ړL>2ѵ $'4-!.=z%KS1L`9 /ʆzs`iE7gGdF|q.pG(yh۔}`#SUqUQkFt38뷱:Ve x88p^ܼD:.c*vۥM+$uPM;qᅧdsqW'M0mԺ/D Ew\}rmՏOXE#])1"JFWLƸt&'r@c`O{.S"u9tӴW8a.6 ׾A>D_`{92F !63iM7j<ߢzD6\T _?%97]c$臽rghrLjhI[eӲfOؘSl5m59,!U2,@r@Z{Kp5FQ6!rk @ z@>8*ؗ܍x)n+=rϓpw<٣\:K0"6eg8ɦ/gh- H0&+ 'ܱr32Z}]HpRyftUJ}[Z7+#FKgتE9,|Px ;lTtkcn-,.,Y-)QqGpDC,zsvKO1[z n 4'K ebcZ)w1_wc/MXOx#!&9]]*Hn6"̪v9TS0 G4ThxsOvs RQg%L.]=<uлV[Ga6?곏;3gP$&n5ėy=KL ;ۑ`l4H/=?ށ:8e$6invBcR^Mn_0#79>mE?.L.{WPݧ)vZ`%Q!ž̐^]3wH%Pmp,r!|"b_|HL_ Vx.3sQN:z0ש `ts]Ƴ"SoEZD]HʄCOFe}'߮i&`zxBWlh5A)-GU%}|P09;N1}SUbkf>uR&CU,$<'0VaYUs:(Ά$#"/BHF*Q9MMqR|w5GPi>PW`EVqϮxr'n+x}3Nd%4Q٦G}]MtoUb78v+F,b{E$HZ\IP7GџsJ x{ X*ԶF]Q| MISg,M$'ρWH \Xw³x@A+ R- vrn>mp 0񔎃SA"Y]7Γۑ~k2NhK<脞S|[V13!AE"6STr]ޖ3+{UO'4rOv4d>#"·@'X$}M_@0p󹱧P,X͉1>-[403T|˭;] v_m_"g:Q,ZkIƔߚ`&gl= Sv"ryXoR:$ܲշp-g妯%x*sBuPEo?李Pb;c?5;Enor5u))L`U.?9YP@gS絻KB}OH k!FyDE|P8fk` ,%xUi %;)~:We rP% #jt(h@eTI;5#,QÏ?EyG;w4ZFq5{Ħ |6/nNU!~蚄 4̀koFv??ȾASF;Ϯ3}wC>F̞}&Ĥg}AH2҆U9EG \扙H|m<2ϵ G~ C*ϷFe3q7&A&_@ODRîU0 `J,i*tZ e 0EΞTˣysͅWތGӼ}+^Qh;82͐b+G>X1Ղ@ki辢:!,nhsX9c 6Ηc=Bg{yOͮbqQS.2jz AV3aw#.C2a([oZQLNXty0N(P9/Q۸oR"Bj&-]VBrk;77Fze:z{+"֓E\ξΝWT.BլLŽn9߂:^$e&iZK_k~ZXAM3 Н,ǯi+(()zګXf1 Ϩj ӄ` gVIQb_9>h \r `Xo'6NT۰Ҏ.i-RG6y>/'_,;Ѝ P^̃{jCX%2ى Z{)۶| /Dҧ .lX-C V1.{oPE{7o_dm98޳ԍ•BTЏF _zQ7Lo33~0@gw9|[=qSUthqPQ&BT>x~,Ն"@}+G>ػ$/T:ɉ}!.wN=>Dzui,y7n6uI9.u}a\op`tf4wi49A.qBp0 vEgPfҪQq}Gq, |R"\4bظ,&+[;5YL7O#I;{2DSxvv. oX<ГEjxSGBʙw{EmһwxY_[|\c)̅ Ie5ϩԜɋmˊYT=b@CcМr |UPL \O,N%#DZY9IpOfɃC@Afo+R5zܐ#Ra¼84CfGNݷDp+ gM@g԰pp]Qq/O!b%P$v,z\F^PDϺ&c=}LY 3۵*EDoKPT]Dz%98œ;M*TKHʆ:1Bc`)Qz'yw@m~J$DxĤ~vXFEHuel6)Qbp@ɯg)1".ی;48J-`ֱ0$; )v't#QmΌ@䯾dk?QMGkC-|lTZK'c}qV9L"|!a֓l,{jl|bGk1RxD>x0yOqPK@6<6Ɛbon.^G_pUI5bф0|,Æ娟#PV3464yj&RCk^PܖrhxVbJ@WxߗuPZhkU"2?H<|+J{ #HIh@QoF\\j[@ӵ9^N2P&2/k-߯f ܖO;䵹Q_Q;8gчEܹ%Cڛuᾖ8 V9-}h@s#Bl@rR0\>jg,ܨAfAnveQG࿕.5puDm:5Ui=*vuCgPg_ '4Ju01N_cq lJB TC./OÌ+[!bztƒ3]2tk3#fj{70dӧJqagwD G([?ar_UAN p=L$}6rx\J%z+-po(1'ϥ}‡M)ΟAG[O]}q7nXs0f%I4UPEukъyWlN72RiW-7gUӝ HiĦ):ڱGY gk!dPp̒:N1&g2i5ex-ؒz#O.!op1iH*JA9p-=߱!Z}GGPJ_8B*Aqj)f#ygYm5^ZRBJƺ~dkwzp)b]}F]}DTaV]ʛZr $-ڲZg&xamm2ZhVPQWӟjX=![o+eMbKd91d)AW{f8>55i37.]ݱ qn_ ')_؂LCr"'qV 77ٲjҮKP)-5Y}Hprȗ'EQ'=ATmXkwV8 ,Sd_ds3 G3OK﯂X|qo9]g~'џ3MB)ߛX1)"H*>w̤Re͘pc,dM9zjQ@.^@*FzB2Sgz2+SP֗#b }yCWU,%lF~wPӅU7ċHhoMS;K^%iUGX􍈰 hmbNjPy4?Uyi3 Moq(5rD69HJ@WCu7RdPzJd#Ziqdl`˅V܀S7 _[>!|Wy!~`h6 b~ gZjb2 F 4$p9^.A(xdW%mQ<+jõRQps !l'?? *4n PwE2sqln\ڢڝMI(Z@4>W.]|j'UZ;:(6|YFBErb",x8V".!J{( A&eԷ\ CψNgo{ͻM~E HTtVF'.-=(y\AC˽)Xܸ,بE?57n8Ny;^ K4Q=f/$ӪS8Ѻw(Ge`Nh 8"Rˑ,i"DNypC~eLq 7x8=/Ξ fvNjF@uH(ߕи~-|kp"ZB2OnI[S 6=N=ۑ406$?_qd&rq9Z/q-t>[} RǾn^;lDNOA8c@I"uջY47CJNKJm9xJ0|ϱssW22nIȕ}ڟ@ |7_oNY^jqWVJ]1(8&tfX4>\p7C` $wdJǕOp(wNJτwaah*M,wjii5H8n믔5db𥈳w]pkqR97$;ݪV,"Rzcze g}h٤ڠ8ˀn/ht:J?6H($ ?4B>I.v9 ;a'`qhQ xaTݠ<[fK E\٠7aA˪l0`;=}F>!^^g(C#7ɱ"~g0Bb.Ic'I250t)" >4k%!Yh36e&&P)dbu;gҜViMsYi2od =Z<ƞeHZFyI7 +J4RΩe>B"3>3;|)QSc> }zGN&[-Z ŠQFdڧ7Da=~ E/=D 7{.gЎgz"熲H1dN iϲ;zeN4y)PVoxqB 4sj#9QuNy)W+fu''g$=qZ9pvBo.|h+nY L1δqR|O|M+鹏k4Yqy'V ink&M(޼9D"]BOr#Ӗ"qL8EĦ 駱Hru|DZ~Sə,"/DtBrVUX[TqB tF%ֽ}׽QDmw9R5DS'.~MaS +xj+PWFK-tkzC5j!1+Ըx@U*I}񟮁tپ ׵ř8& ;Y Ĵud$n eSd1ܓ|5v)?J< t?@@j/c-uG@iLF`S!B^{hK4t-)DמD@r4!<{yp/뷏sw {3Iµ3*n-9@ׄK[@!F7 ǢRN zˢ UwPʉ5vP<Zu&I1XSuGQS+y635<;(aTr;DZM^R2.ME/C:>:uC #H ]w0;DJkZM Li:Wxޮ| F4zhP.'ɒ2f(&ȷX;foĀVg uڝLl) c>(ԽuipZ=f㤜Ey /Jn}F>⧊KeJ_ؤPJej @ӓpfPs^vp&/7`bGEYR]ӽM6 -:iT~nyw9W̢Ys*9vnR" mr!!Lqꏭwp !y$m^3ZL\PvMj0P/K)ࢎHx+^S9bu!VW_\a3+˝oWojFu83o.zCHk]?"CK1>#uJqTQ!ņm3g>IɖeٜEJ IگZϧ!r m\ZߋZ+ V^k` n@_$%LN@8O_"w VY6 Y,X;|t$;˓|l60@7,#SXCOu1wt|)mXBD9UG%}aox9SNnI> zX6ls?/Xzf Z0O6Z_WAb4geM.'!V c@%R%b-Er I;Ə-ERv%f]cl/bf\Lzb㸰.F6ƯGm8HrԘ歂 |Azb9 3Z^4}47%{|=gY:pC+nR;Fb$D}{Uq5o㦰斋9D|pnuiaF0Ӣ>9h3u3~m?kA(#/[|*3]EPV>F,jiUmjy] ;e5 .twSWc=>#C9oz+N,'f rjs>1WC+N;oWj ?JsZ}JaH`g\~#0J#DxTqH(◇89.̚sq`ˣnyPU̪M%Sy 14[0A^W.g+HvSt=oS 8>N5ȑ cٹ.uAkAxArPJ( dTf/#Ho SF [ݧcZNI;XB{5{uu(JEj21& S;>N WnVNj2J]KcړwAl<#?5'}7͂BTUѥv2akkAD 50I.'(٠mW7LZpJAژrɃ',!esR/te耨@jϏ@E5r "pVC)"^v0pݸ|ii)9y}G)lR+:J[?n-c7ēw4Nt.9;"?ܣ"\/\'v]OjnetһgvE5g8ɪ S4V 9S̈Æ$͆kY9mNfC}Ɋ 6m})Uh^ðb䋧 Ƚ#j J6qB׶V;ZLSpѺdF5 v^ `?D]|Ζ4D c!x[o8-?#t ት4pI'cE*C󫀇8!f1ZOU'*c"V?ɢ>W`jK4xqKu K}l'[?΄i3Rks#>{}ǶyyK}˅Ht{Wdjfy6Q c!4Mr铺˾Nzfh]/cWy3 eSJA]%i>VFx,D\&F[qz:XGą8_́W\T288UXVBk!q1@MS\]E5(Ѓ k=@+ӽ:; mbu2=7ajAA#(a@@jNZTqpf/$WXU[p,baUNKGЏ @عh5!,T4Kaw>|h$ӓs{ x_`:8漮TcoaDBܸh/5_<"&#(x}Yrf!|MPstOl'VLY7 Z 6q? p%zz V猨1r6 EX \fj+#D&V0PgxURE5V\%ZLloU;cjEVTa}Bץ 4VD1J$~4&[eAVr<32I;2e\%˞xFsR;!}8-kj{Vϡ_"J}E^n\=y&̣ؔJeo8\uT q-lasφ{w$mZNh߬Jq=k~d.ۭ6!nӠƂH: n$렷I0aB>CAdvZ߱? ڊ}O*ɻ~d  #A4$6@б9:*B1;pPٌ-Mܑ1q)+~y 5UO`I`mi@Ϥ)'TW9 sr47U}oOרI,;!M5mHgI;@B>> X\?}(|>'qȸ9K;2ΗV EOdNmUvPԭ8@XṐɘ$q0*0,- NK'w} }cޝVRׇ&Ǡ9# ;vT$A{"+v؈v vuc; @RZWxs]&@T`y-40 $ø8QE¸3 [hm `#kU7Zʪt%oB@;3c&4G˱G@ bCxw㲕GU햯9,m湮ʓL@ #c[{²&RVu#G ChU*$8(OUď@%TĒ"EfTbب6p \ER \[G(k!~8S$Үx(BbI}l$Q+5q 63.nfp١]XH-e0z/^|B ^^GRer:jd[1۲-[E:+8J5}~Jç3q C!իiI-(|J&Hmir*ѵ\~L.{rV)"w ׃Ce2t%Vr̪ X["8ZVJxb2@hI!cA 3 >IW0Q.mkPMa }oX^lbl*{ՍϹ"ⰋPEqvKT_Ac"ٱxnAQ߭4!+zNIӟtF ã3/=TJir'}HFǭP۰IL(͋bh9:r{t@-jN\‘6ohn^$rG2U%[ 죫\2W%P wWWn[Nd4_ΗwȐ`n̓~r<2Qµxh E KUv?~Bz 5Y*twޗ}m2Ms6[ vNWE7y)@ixo#KtGKIŪy9QAA¸L6@*}p4ޛm3 >D/?M@Eqo+as5 CW\w')_Q֋gZ0=1hQj C4nG>8e6"6'WQ">bmQ0Z5`o!J(Uw-g%_{0x]Z*yQfu( Ͽ- OSlWJ<uЋ`IT>Q..Fɸ84'+ͻY?w6a4GnpX?uHZINlz8Pcށ.Jr>0y˻ݸEmv*7AL#.j#ñVyutڳ*.)@4U?N~@S9f_(7#+V&^ؾ-=:eҠ\a&ō3݄zbίW{넄B@ɧCNc1%9 UG19 y8'/,>zY:ʹ~2~nԦ}xȝ#AQ{t-8Iޥ fHV,m$.Bh*dn-!FNoT wtޖ6H.,Xv?#8i*(,y$ q؊)œy_I:B~(O`Og _{6UƆ-#q(c%ItX7<ǭո&a%t;WӤ2 [H#(yn/P-\ Fiv(g-chOGˏtIVp'JB7<yXȬ,2VwMTJ\ JvqP},!QVIv$Ñ[C e~00$M[ l?5#3FΚ%]:gV6i Gce^X%W˒ÏgwTA [aY Tm}.z|*VZF:v?%~9; 'cPGۅ߫BpPv * tC ©OBymYU](em[6ӽaX xOtc"y'=ڀW]PM_F?twVT$]=- e>% p{W[G4BkedݓS$zքA$¿ LTyv^EE$-15ٍ`\݋+\[^A 'fgA O>B hdi}rv{}չ0dd3AlJ_m\j5*ϱ"-e~؆ox4J6/eQ$$Klýt*,ߓP/%5eJ2!7ܱ>S%1ejεmh\H ^}c޺7}/F (uY/E?XhHe0[;ӝJ\\Zկcbf\T,b۞]|c}#&Y1`!h:S# UCHFv~LsŎ/vVl9u.u&?!,K/f(€b{2;߄ 0,VtF8I>KTkO&O/.Ѓe:Zca׉V5vc\1dd KYXPAb ܏?BR7h WZs8alK&(e9b`ӣ%9j;ߘ_yj0y:5e)$h trAn;[şN9Jˣ/e_gi~~U}( TxjDzy,=Cs,cI/ 5H?vA hZgЌ:B#FmH0AbD+4$$kB: 3qzaK9^iTne_9=VpN"t3kJ]QgrXSlM /@R*{% E_:Ni4tQc`Ƌ ]v;s @2SNE.'#3l* wi)%œZ*4}èpN6AnΚ Q1giM$5}q)p:るA&pD@ZnjdJ/${]گgvQX{TD8aMWW}s%,*='hlL]FiN\2;tlw`԰BZxP5!Om֫ GPɻڥSskVpEuP|ѐšb/2<傮E0@>'֡y o];a;%;(e4WJ5o+eq2y=Ed6 Y5qd5QM5Km6 |x? Sdq`)FpfMw6,fPs[m6;<&YYQ91di PvR w>➽4JZL|=Իk3^תҹ9J!붪*YhfoNDDG4O_N?^Hj]u >vdhv,,sKÀ`O%H?|%[sU:lGPsYVLY&,u 1=C?FS:犖r_]3L+QXf|PoD`@KI)e AjE^tR[fDv Fi.tp&a4ApCP)8i!sIR'݋|q&wp0{DULq3%~:VyMCMuDsS[a@fS_P&_)V*l露aVgYHK'[S0ۧ!)@lhRMkn;~ "<{~:WaP{˺~KC0@b, J,SFq~dkO2 D,K=ӓ+Q8֬+01H:S2pIމKmW0Up!8xٻߏ)~(if Sl <$^~ؓ8@XޥK./9Q,{ds >"j+ g?4;*H#Y NeA4]v!;;m8cA44<g\@ǀ7zWi]di>b`bm>oH>AtRkb:}r2ښT(f}<7^o,%vYgȍ,רӸhV p__GDp-_Qh?v.Q}SN:s[ RyKƝ Ff@oMCNpfyz}Xu?`D؈8wG>OM缂Y$T.?n괭uU%mi~ , k?z9^Jw3M!(~n钗.Sj<}2g+2b/)o&Bzlw%fWf!A$̀TYumjNoJa03Y$bv,0*APuJnmǽy꒑U_V&u.-iϛ~(w- IU_ 4N#o +CiP+$~mq՗gBFzN3M {z@XKto z"InB$I6Ñ"n LPFɃ*J!8O=j l~F8:>H"rF>U\D C+οQZЉmw^T[C6;B4D6}.$<3Y[ΒCUx¥qcA饔SSl>6/O'4^2W ̼cY/^%+ W<ҝ#>'s!0EhA}p`d!=v|sW~"x61ޠ.1LL(N۵9Ec Xdt4ڭuC$ߏsq(tcb5T tSYnn L[yRV%HRTs!vӉ-%>꯰أ?Q6ۿ<K$,(}4{  Bܧm @eTWkY{S"œ&ἷZUjWza-~h!S;bDqpmD/yҋ,gԬCp_]E="d¯Y{Ϝ2h *#7Y'Z2C_F1:C /r #>Ժ0()ädNNKޓc}V A6}i7}9\rL0 ) IX[`t ;o;:.]@*"kh)ފ.#He8I pdTlLT%EĒ٬72| g h9/|YUnA`6Ӕbʛw4 fz"jL )JSTvݯ]0=kjzG:cfIoj#VT& v:m0ŇЗNv8S:@Fhw+eޅS(p3V AW}~tdo>>~Kv)3 ‡詟O_!S;IzA//j\yŸ$j fe,9ZJ zY?\kK|)!7JK?25)rXRWҽ1v]QP }xX < @NGYLd3ވ<h~HN [&\ &G(,P`ӽ.juSؿ"'N9_,S'XqF즣KgF˓Ŵ &1b@ĊV, z G.Le!J.DJ}p3`eV7_rE0+Nն #̹Ћ)Pz: C&yjNL!K6spM*突gאv}x y{k{ p'R:eXUlJ39־e'pj ",k6Xx*-Jl{zջZ!Ny9l \b(}ϬRWxڃ g<7o?3[7BŲa}қDCzn~riB%)a%HzJ<|ǢeID³}.!^!ܝ9h1I@ Feq>}l\m0$TᯆJ^$!财ux+rtB-\؊_3,mVRSpy ª #?@)D9('$ lN L;8]C-q"a-)*ۗބ*&7J ߍ[D2{L}^@.]`phB>$U6,]5VHQD|P-ԷS׈Z}l %$Q)6R2еV]KbɎMyUo?N#pMD΍xBx]šfEAVv>+j; ]|a/X6yVb%#&d^!t7f-Vx@}#ڊaVg}~-ϫ^mḿ?D3X}Pԥ,@p,ޔ#-?= ?$k6 &{BWE:[F0/N/_dnk[r8]`@LKxo2)3y^< $Ƞe ^)Ah.OnМ`/gAVA-R-rw h=$kPMDr;xn%mR$$WbP0u˼!-ΈUὁd+ BbU< v7-H#mecQn O=kF卋MS*p{.Xe:)L+);']7T ]j]oF͌ Qie9ü.!P$1>`m3ǝ>u;6îs7̢A^`Oܥ׉lu\7fɿogv{Wf.\lG_klP"bd桨{*XZBHH?S$#S.y_{Q _;;j͹:N鳅s=ef\Ք8ᇘeU$ 댾Qe JSy)NM:otbBT}cyE~nE(pg7.d٣%y:&s]}k|fdθQaq!Xas,FSHwN䩟mB&ʅ;;ެy|֔4y{ϲpÆB;0Jbs3Y Zjm\L9J4`FIkbj-ɔ(:8@ֈr I+{٭*VFǫڹ8T:B.. .JEc"{٘r[otn̎벺Nr>6K'A_IpxZ1#3TMƝq*Б/FAaX"zV5dlIGlIOt'Bd%wg2LBVb&exyFF߱ zo}2tKU34 E>0]T!Q4ocS'EIBhs eu}C9Q _*} yb|?kВ})~*iI]IԃĈ]! :]B_L:@6L{7\ZT^0/@S;H{` a",t ztcxu7SP1!]""΃A^2le;1:s5jxn١rCd?9OH@Hno( j;?)tPqoK\ Ax6V6=MtVY_fPf4FHGXTB!@KnsNX(kX )PK4m1'Ѧ6@>3zҀYA(\1B c7 V}:w>}ŦOraRك\@P|.$L0gx`}x.GahF呃[tF鯛@|ާ5W̘'p`0*MejN l٬V]}323 SDwO|iu}xJβSUKb޼9wn?796,6 =s.2KgRNǜزmݹEl()!]/s˹NzɦIUy"j.ƊF# T(&7!=<z"lz ;8q-hX[쯍hwibmOHDY/,ɒ z$$m5N >=>1i^nRp]DH4[Y?uu-*{QO,sAjux="Ei갎<(Jpi81pD3y8(hm??O&Xi ZSc74eVZ-YY4 /?;ķi9YX9Q"^;{ˊc M*|-TC\^9~bI"NRœ@m0fb w`~w:ܩƪnKJμEr86\ 畂,-St9{=^sNߦ }u+ F hw̗g2Þ-[ TU@>4hV!/SsBKn4!zK\Jz[W :-I:#d`&mJjHO6 AVZInpS2 uF5ul9tH5nbD D5az[a$L{Lp՚_~#G;(t`y:-7q {Uk~q8G EFeb y%t{ILni%g~f9 *iƠ|8(猬k+ ʦkLT-w_VUHPڽmq*vi_o4aaow\{jjm   DkaMPWs)."Q`9;!d&ya ;YκLnqz%nYr{Dm&"o]JqG&!ҴBFveIűj;3T+pm' ތNLQՠL"a&e5]5\ jPKzR42 OIJ n^rMbFʺe$Q*Uz HӸ+b1c5(Ji n12v|}o43X`Ѡ%ïw2lz)hKd+ei,O(:8(>>P%wx}&BfHp &Z[iX^戲8L#րBVJ &  w `k1U@BLhQjH}oWA-ݦ;dGVbf7^7fw!bntj&{D^e:]4#wtY$_,loo'PRM4},Oj Bwe`v_G;ZkT$&jnaQ>o8KȈfkL:҅:ƒawme'Ylx`.%P8`M,PUy@Sh4)yŠ)"V$(jwbZGa@"8R8GZ1Yoİ'8CO5`{GUvXmS 1roq4;y(*2F*Maeh@={ˣ15smaùVxe22iښЁ<K#%d+e} .OC97 Hdw ė=ֹ Z]3B%nI01) ɒwר(-AV$[Rؠa!\Ej^pB 1ɥ%aiHcuU#] oOW+pSpO*rPfo?q]o*#X%Per?HtbNۤ_~ A<*J: m,&, ܋CJʫuf#n wCQLJ)֨( 8F'T7_Dwe-#VMùݸk{8z0U!q SzYiO'aĊ`O~x, SʖޚkI)J=RΎ;8}Гj=k1n u;wAOai™r,h`O4'oW&45xD|XҭKQ<1-khB)(ld,)xsV|#HM;a֡$M9y>JFs;s\"}a-GvF0۷< `Cl eD4am/L$1+V= 6`(>sk t2#\yV{( >wez|3̉xM2< d<0=(Է6ؕx_}d)bL{da]774s3;p2oqu%o۸6ެJfmd bnl `OY m7AK7_BЫ!V-m /,xpßK OAKE)ChlnBgT{(*K>2օOjn=mfʋ@UۗsR@N`޹=Z/b>z&T.f.C_,㋲7/BH Y}Q]&⧄Q([5Z =F (I5fd Or;;iښ6|_D֠ |*vz!8m{Vu6 ejV^1>ZlRz<H߭&Si˩' Cg⌤H=Ǎ ߂ҶӚW g鼇J,޴xt$c&#g ]>}o,0z@`*^v$ Te9Bpg7:̎†X)#djTlWCVr cDVۀmoץu` n^켕Wi ۭ}%UDu,jOelb%8Ak0!%6ڶmCb2: x;nͧy;GZ?ro3`LޣP&F+9lA-;kĥ l^PccoM{OPQTlmq+qìFBnƃi%z|w\p4MpsL^t 5P26| xhܣ8*.KB# )vɳO[UW9AJFH,cy럀Feb-H.?y @j^dmu۵N"5hy/yotb7 SՈ+ lOy!™p8Qnrw8!nxϬv_ЍA<:@sd#zV& zPs@]"5{7> Κ'1Q=蒈̪9an[b[eU#7V/n&rXU@`Al]&&XK*O$(ߌ;^2jw[]!W<U'7_ By N{ l>ȗ?S:ڦ WTnk{_BmU] tp 5{Dl_=]O uX;Atv 9SCnXaL? Ru3ꮍ9O$>M.Bm܉Md辛&yi-*TTw=^kŽJ*ӳ@$Okt ;Ksq\AI~tos*ʀ`m}p~Dqf@vk_ϖgGXA0C"٢/AT1H\Rk>{e$&B]EUfeU7DJz?, KrczJRyu<0捤ajvnƇoP`@cv($*zf |- X) /a9yEPoh6MovN Q_k=$q05=Y(;=<Rb[+ ^س(zloc;}o:5`<qilCɝv!٥|`F,PHjy1eDk2npKʊO"T`YiʲmHv nr 묄N慑S!^xauܤƄn_EC"S ?Md{v `TG&3R$ 2 xc/*g |I!_p]8^lӾ덝&ޅ"0&lIq\$NeDƥ/E⃆t@h2 VK=+XOUBЊTE[uKvf:?bpJF~K5UTZj_,: __P~`xІE'`64/}W%rQxF!")tUcᚹuC 1znfC2$$G4n}0\8Z-E˸Ug]QrR W~g֭>H  ֦UHf!n 9H@Z mC[t^q2 *P#tAm>Kha@ js߀L @/@U)>iC- to^s R1V֘\i?Pk,Vo0ы twТN3o醹߽('2 It7XR'wWM`lhfSr&d)?']78E"oZ?Rں{c Jaڰ]\P.•>0QuQ^"NGnvTa؃f<7F+=l_ۻ8`Szɫ~e8g!H%e_P7>??excjc%mĤ({$ jS7Ӎ1*+/\uNDܣ3['ittDyF5_Zeq'mLwӨg(Koy4ܗ `hU@VLct@fIy,fO>cR*;[V`c\8?f + _ Q +hH"qNx Pg䵐zxkl.zsҔ\+ V 3/4s3FwN/hz-W!SU )ܛ~UD0,Ǒf1ՂZs T',AQ6$ ك:^lVҌA%UeO=C>r? h%LIT9R_ķ s: gU-WN^pl=߶Bn[0}հ)zd[}\v^/4uJ 8S?fQ[Q:-f\SLL:%n\l[8k?)l%ј7ݕw||ewS\Pv<0 pS2M'FĭO#[%'J]'IFJu[)S%8fcf ANhy,bw[`>iW p#bJ㭬{(\$tÑ=?enJkN" mǡ 2pĀ[%HzH.&|`B fJϦ%N4 DņIs߳!|\  4NHෑmVx^~gرdoxO ȶ?`o# ( %Bte'vmJGvS"Qul?4X!6(VJz.+s9mANҢ@Yk$V1}OVr_"|Y\x84[vasҸDrA@ cЏxm/!]7C ȁn1U͍غ6ԐiDήfqOƊؘn-Zg5z֙: Z3` hznrPW 312&"ga5鮂D9>u-hŘ;$A(nB*;OU%8HPҴ+)8ogMt' y]2/imQPtϤvQ%f47 ɮMWҌ1<8o\:Q,41WoH;-lN2"9C([[10=G;Ti ( W#OAZ&O4[0 B{]lڂC1 "VlQ@Ą¹uv~Q0,zN"iͥt;d:3}S&4Bn^`^~=ͮ(@N*ע6RW? = eƏMX RBd%0uBfGµ c{=NЬ`o&^!e u u^ce3Q ,4mI V[427J,_ =S]Ɔ9Qg2 Þ1@ŝ.N.zB#8"'u-嘊+h;}jRڍ>~MF,0RDt8&Z]u;891lf]2HrPnYüK,Qp\TmP&4D* ET`9`)wy*LDtY:7~Cnv=D%Lh`7+*7s?E IRZl)PLjz=@x/tN}N)օ8 xM/̈́Vg˚T@`9dZdF+ar&˞ɰ}G+znl!|kpGo@l3%9NÈ1IPf(kmHm4,!_TsƗBܕTxc幌W*3"ª+9Nm>V H >)Cb-;. E.*=Ms.&gMZ Z']܊ ~ 2o epA8IcEfC bGA Bʻ"]sb7.ŋx۰'QX,p&ތص-hhM|02nVerzIOʩlB*1@(8Rɽ6h!ALwrXڻNfc}<խ6HFOolrrZ$V,NU p.'2*[kN*Q IOPJ>xV+%dacSP/-kbbO&еW¦Gm"=.,F8.j=.<oaG֦.2Q^rjdeON99Lsnw< DpX]g5 =So"ģV#z5cބ(j/kb[cDwX* (Ib?IʿTͳ+~4R~DpP_|s5PQhmҀ1b> qt?6Zb(+-@rE~*v]VzY(z9}߿%af+ 8snͯMڂZv!_ԙLd8ɀ\ l"5ց< I!Gk~Lsu}~Vzoś"8ߏ$Go`rf(I[h/~l*=ŗymqavV{165-PZV_yP ZV5od3WM- LC/Ѡyi׶|{R_DU3@qr7]_Rc*ð9e,~an9]&!ܕ@_rbW3̨WkqVISgd̉^tߒ<3/KC~:yK=yɥFBȜTtioڕnx Vǜ'/j&,Q_ h(P3%(PAjj_N&>4^GaS)L0x{ _mtܼp$J.VɗQ"pcM_$ S֨컢;,VQS, 51x .) D,<(c]`D'@7˾I=_ݝL 7 u#gg=3,7d{L>W1j: ±xP5I(kz9R+Ei@u(\~#X}8֙O~J[[|9)q2xkJZζdWY79P5$^%%#o7;hΚ͍+W , v%G̿oe3^t؃ykx̲Go$N'xx0hbEe~"8hBLR:Py K'{q\{o+,RiA/#a{y%FQHe4 ,ܢ_/Aٟ.Vt!hkOg *w}rI9;(>vo6/m*u7G\%Y8h Df<ljZfˎ1'8Udi4fI+P"o%]9dl\ W frG9%{>}(׷&̀\Nڔ qVfwe9H:QK1 GC|Aժ+ B1UcQT_N +&L7v ydShLrGwr[-"QQ|lxfޙ;syhhQL*¥HU˳@k1ADVe'C1#vi9qV n,YB"?&&ؑVk`a.Ǹ #&7uy#]}~vi ^ꖳ?) #6{tkϛV8oy_%Y'0tDyU K>0xGLNKv;J]Trަƪ"VXk(We3j(O*1Qk<艂r,45`2B7u?T,DN;1U€`9,5-#$kπ9&{poF>5O$9d+p J^-~'!Q7VaIChQZPV\\wM_ ml_f hd|/A,{s0XI73KbX u lMH o|]B"(5IVXow>e}DfzU 1<9WLvX9'9(F2Cb115УB]o$Jl?q!zRک՟ X|fsdAfj^SOƓ^gt9U`)(9τ?j[7-*yn8ߞM/[ZoPN>5.lkyֈjVG n%9 8XlL1 n_ưt~1x$=];Vkha(r9=gO(:W 뉎bXPW,}(_w+l::/LX_mFxK!0p+2@G~L&YWEQLv_FΡ%^@5*C,]hILb(w)F$|Uu~4Գez\iPTKYQ2"b ͩyz^fYy@Ոvr^1B.lP8NmWЏ ¼ruA^Q7$8,@ߒ;e*:)0pCm+= #gQtj Tqaox8x\;D>7ȄFsAd[ZP:娇JcvJpbO duPҪ \lOs_l91볡YZuJ- ٩9ɉ%zek4r47`1?!Z'Ěw6uQ$c5qN,c-',"XV[Jܣ3ȵK4HRXeYği@@ڢcq :N$(Ѻ:$Ex[Lz+q 22C?I3ew0}]0ai3zMtdPYW@Nky2bÏE QØ-c!' [Crm,H_1f!`깕0涓Oy Z? do=pS(aZ1(7"cr{|5~'&Ypys_=N8CAз:J=ճ |7ŌzţK1}6*i=]GQ'2MvTrK^T!8Jja۳/tj=1VH+!J}[Zf݁!׋w"?hd|[܀Xay,uXY+p,+* 7wLzz*t d53 Rv4Ւ1!Vx"ٹ#L~o_,D^!!bgνfѠ~Q"`hI\$Ϗp}XCT2)eedBПuO¤rJ aTor=g|G.dtCGR|#Dtu@!]sDKhoT?*=ɩ0Hߘǹ-ډO,mũ:-x{_j-d]o;?)]D',f)شGI/ \3]DY%,!nTwi"dg'I5Єsm K7d[eD  =OtpԖ}! ]1ݑ3PE1햂?KޛKSUpEU|Vq76LDݥЧ#m +J: '|nLV`ߴ]aFo1 L+yhvИ=Kߵǣ&4wq)#*GOuB|hRo62ؾ4OyG' Ć8s[ޅD/WjuU?@<x' wb7!$/H#2@ahI8^Q&Vl=G/ݙlܯ>,R_B*zíC\E(p9 [YEO~OoB~[i.) nj1Ie uRΓ Ȅ,JQ39'lD:_+єO[>b"G=qZ~) V#c]\)xmq4=|keʈ '6+8Z>xPMy878s7F"|x@ҘJ%rIR8M%lOI5pt)a|H158;{wr`yjR9TmhmύF0FL!j\0 Bd׹Rދb\3+4:I.FiNi^eRG-!֗ă#cYysCb wJN[7(cQ&yMX'`Jaes 清P'ڗJ·BZo-܀uPw4G=X/5ɥ ;HzB;xmR6Ogw3}O1zwNc\-`.L$bz =E6S;7ل(׷9%&Hbp;q0c\Z8?U.j# (?RjaN~Xpg?-0lzOqSQy9?@}V9Gɭn xAz46lys1}sӕ r=pkÁYY͎IyM$'}zq5Rhfu$/-CbH[O7l$!BC ^trq{/M$;E@4nHCy,HuXi 8zx0slЫ!fܬ1:%?O?iAxƩD;/7 ȬGuZ\M7ԎVY@y"CJzRX+2QMûxR!t@!,JʃG߫K/_zR ؘաć). .U@cFP-,3˙^ߥ̀ (6:UN9u ~jǍN;JTqQm n,>IEX*qcuC9NO2. r*nU:533&X~jpͰ_jI~DTlĭ[3yLnPm}H%o{&عެR6:EsNsR⥇J*M| 0&t^k:<"NSev"k]]TÂ/, ^ifdϐXE2qCCX2 1&ryPtKSOtN1%W~WEqisÔʯԫx̶=r'w@0  S)!IJ5_g>U/ X}Byq4CfO8^ޣ&M`(+9&"J4 b ~(r:yŐckf"СW; #a;錰 Ksq`{r)U2lWߑG{"#b f^U )sاL2/YLIR^j;i_APqsm߆=B0sGNĺ~9"j{A]`~9XDAV[E~fcL._a =kK%>?JJEh#"AV8#}HEU* pc:7GM^ݶ阦R-2Y_.DW B2LܙXf7]-u"ln-)Pc-D&IiG¼" .D\wd[9X,2ւcCX>J/1 !ujh ~X+&*zPJ^7עp|kq.7C;&xw۵cl ;ضqru \75+@0~(96r'3ƻϱȔBgۯh2<䶶ib6#N_Ee(sFEM.㳒%l8rdx3fOI.!aR,C~M5Hz1BMZ(F5q\'+G.^m]z*,eZQmr K[c0`JSøDqk`|N[v(K) ߯' R,iEO2H>ZֺKR̄=UOC%1* 9Jks)|v? re.?X*?PQSM QԕhC/P`{v~f2\jw@osV{]އZYv己img_В]Pk1 nN.bvLci{Qt8ՉʔYdR9:vs@u{#\yl&idUWECecѵ$5`0iHQc+0-Sq½_CSd •8m^tZr x/[\අM\J)a6HufB H^\[L4'.:Xd']`xo6{V"O"ddH%nk.wNq|҅Eeylz<JϜp$np<Я-gHzG֫v#}0Wtl{JVԓi5-r@Q 4G_'H^rJ9)Q%C(RXX=C锂TX]ΰxV=VB,(.ꎱ_MdBW"OBBK]K7Q;F4L3˧uW,ʍ)NcHG wMyY vhVb9af;ت#;{ADԚ2iLH[sS.P~J?rd9/ j-ڋ .cmmWA\c KvozFjF}QwN:wrX\ kCQW[ tl}!Nr( FYew6 0Z^\=WyVUKlHꐸzb#}8`TwRUCf׆^ Sh6@NQ$|k,jEoI?t5ecGV+()8=-`!gsu᫲h\N$]to{:r@ǮFXᢙB!1-dh|7i6K^IBD\[uMi\},ZUym~~{4.#4 oDfWϮ(ϴX#j+Qd%{ΉRGKLB fn|03]4}ɉv$LqMou>SyUe/]ϑ,Čd1 YovX E͵J U3 , ) H4P(P[Bxw? H/"<16]xTixl7!@äkZfzHGmcd"wq`*H kW/^˩"UӰWo ako0Ae;%=s$_]/SE# ǘl S@@UFTH^(Ό^YEe|E>.=16JVsIm:&~75=0ƄPu\`&H;] dorWP5eف2DuewAcnz-%B -΋`h*&r P6`ءTǽ~^C?US-J vS,:"BOsML6<:ݳ?bhW{ߚ ZY3DqJG7T#f^F 6=^-_WǢ0H2N%+US m笜9L:p 1LVX1CPFvYΒhR*/-/qgk.QVbrEkzr@i5k֛;"(^Ǧ)]ŁؑRX[ӵ,^Xo M;UPw)ʫQĭ11;Փv#m-Z1Bw=tHpfUZƊR_Xxy{c|j5X@Z%_Ix*~v[wka1^*|p._Pp790"%wg’ 2.+7!ށ+0{)! (pL43PŠ؃`gc2Ӱ)QX׍SCTBr n Cp+$+o,G*;=(}YC@BȟKy]HWJV ,M(:ǹ)q+Qȭ 0e -D.Ja) 10768mރ;W]poRKӨ @\5xsj\DBa#ƺ]G#B_!hz@Iqa{ [H2SD~L1Nd?E*`E8ׁ9йߊĔl΀Z?eJ47V?\w@MNk٥֩7"G|Z; [0uÇI(\٧*)WdǠ7yhH&R.>y^C!ʠE!Pal$+|[lPHWK`F>Mz3Bw@K,~k&xzS)!a [ω $IJ?)M';WÊAgV*/Vy\XZ~}]UhMc,VF 2x"ز xĭah!.ٝ+¸7%6ܖfrͬ} PKw͜QV_GGlMq`0Б ;9VXynb$Q#UNu-j7/)iC bڻ |ۡՁP ehDV駢)b6&>_)„rox .չG$l R&HiRH޶ f7RP)Q?Tg*WquپnW/5Ƽc339&|)=ejo"uGK Kaifکʘ1FR.,FE)Dġ-zRQ6MC# $zE,R5H$8X~_lf X^Ok}V䴓Dl0e`A_mQqZF(2딈kFjI G e~6RuW:}7m*:>J|y_f2c :x;,Mk렴ﶙƴ$1-n SEzc pNytՐȲrm͓xAI ;(1"J0}= >G4]m{̖ຑȋMW᪉%?ճ(0bwҀ|aYJˤdw wyJ= 3l-T3 ĻVՍ3Ű@TS\%Kxggۚ_\ v$gFn-,b9R8(t ̏{z8Cs|%;gRL-Ї1T @@a>&Hە/P rwg&]M05vL3 n`wCvq̒C\ iM4gSΥ͈%ܠ_rF*B.x%([<=Pf2&ۓ̍EBE./= {2Û)mYR%sP>)aHCgj\=bCuzxm:bðj˾=){H_YhvZBxd7ҏQ6{ IbrRr;'A~1qD|ybli,y. 6Sey\r{Xa_]¨5Nv d1Hn9㥻_phb_[cz MHoL2u!F 5N s2`Vqk+ :[B,bljQ5FP@lj = HX_b_gܹ5;.#C߉VfmI;왷SxܲnTR]pw]ju_O:A!kIFM& #[MAPH=ǐʪ+HXG#RkUgfv9vH6ܱD΂u# r@~%M,nl65ciZ*zit% ZiˉiT pntcHc5sטEFӇ٬Nv/'@jP5ZB去nzq8axw{W O5'}դOk)5LŽ.v):}w>थ2gjs5Z:Ih.BzySJ"x1Y@( ؀*:}fh;hK9|ul']6 HvgOh"ROg@gMlGMPK./D axhդtMT RFBk8mFISϫ-)egQ%nt #ԿL#R0LCA"]l@M,x@ݰuxx]fNc{>tkC$LW0WÅ$ E_OJDkr~Sf:%FrVXNdΪ8Ko -9XqZ~HEZ&o*. -]}rRL?۝7̌X{MGu<T.i/֢7S9@JVpSMǏY:Nx(aJV(9d-U|\LC0U6f, '1Iі` DnsEfQT5AWh 0Xo :IJ i~p#a!In;F_|fWpjXc0c5ª2-}C_ UJA#4_G'!CԝiE17?v1rk2BV 1BJ ITv0z?zȡen6)XG~Sg`NR(s-I"5r093)*u&8EKq,eC>KiRӊߠ^^_!Y' 1Ox9Pe4A .Je{鳈cSEϮ[4L{s_wW~x mU{5~iL sj$ 3魒r%geSII^V~I=_H xm]j;/n](Al@ob E7tv75؊!UC`ߍ?*h֕XwL 6&t83 ۾T ] ^>2(`IwENaZ"!#rx9c3C V0ny-brvP1^z{S^Av%~jkAJsI"'d_l{9Bh YņRݯWTyb}b:gvJ_ȅNa<= LNFHmr(x?W栔V9M`,*ѮWXuke{ɴ+;5A&bvs.##UW122H:85`\MݞFH]S& _ Ԑl,W>%4 L$#_wX{g06{p nI^Sgp-7PYb={H,*KR%  a?'(+־e?A9`+G."᷁A䷑s"7#Z aکe&6ߏV[!]jBq~}{.˄ȟ6NS}vfY8p<}`G0ԧCyg-iMrqU2HxńQqcjE="E}03gXJ]Dot!M| !n.I2A z} GŠ84 % qh$94aKŇ1p1C - Wƙ9^w B"oT.w: rd _;K恜3- ˜.gYBIc1Iͷ #g=ȸ[Mf 0xS0Q 8?XOQX@N:8\۬*7\  x& #ZF|>I\۹ i'\U`mmBnC}-XP|ti `>6da9('NҌ7y8oWIۧ䊴g|V|aftZ^#3Z0an#dљ)G6lH|bpr7޲ [tv@}֡*Ok&qsb(ϑFH.᭶O??`O1Vy{^4 >{\#Ի^%qzL#reɈ;1Tu@4/JBfsz5c+,z[b4`S+%dUi_VUwImw|q8{ʾ2<;=Ki%L}>h,tGs-e##'_2cH~~u|l&iCIg棱G)FDȤNJ' tEs\-"iw:mV=" 3VSUF*:-@> s& MX*f{Q.kvWߛ]z2UiӍfG*¾L14PEDX $x~Y4q~_a weonQSx{{:$ ҃oZ}Ed:,N|HTRMWz.84Rc}2NV!<2U9TKEc8kPwP\ŵzm;tE7@ Zci[^ߨgGUvEop`_)`&Z@fD QgVhqJlِ95+JQ[~pE4(ȴe3eGÞM1:ĢrSP򰯊DGv4WHZ&]@A}F.=gp_6kSXT__Y6ۅHf<ηkW|7;/AStmh۞T"Di%E<9~d|!a wvk|\Gv4T 1NӏaX܄k"Naw@/@ :]zoր;"Q~S_NbMU!)לzEH,S.IrpOPv{TW5R^VbZa">01=59c8v["* |sϝhvN qfө'&P+ShPBr~nkRwK݁ۍY؀lB'*&VrR#{.XaƭG[ A c$W1}>+['S>Z0+ 1Qx_*Hyc{\|KXС CҠҹ@ӷlӤ'1\SSFlo _Q]W}V23XLA]rFӫo6toP&-:\ jsC.[s@Y6u?dX Ha}r,[%|HeӧoVo}̼l9Dxn}#^U\@|aP󞟫XΦ#cm&aR}^w;IEr ,^yYMrͰ=Kl%:T/õF܏qLA_Pו>Vj-}tNk ygk,yl+0Q=CZ1+j$?-?-i% akeN*bb}z=w)dr Uwu$rfČ,\Eb;R#C2iտ"}ʐO#7PSd4aȋsn X%ECMaFd>,qeZm[3uF*;ho1X{X*ʆ0f58o|\c los S 5;G})<ݠc$&}q[tg~wgbw$Nq: ަNXF)X? m#(SNFUmu[?ɗV+ft Mnnf$/@}2)`NVSi|cN<at{})c}\Nvmvը#""z&.dO6e6n/SNF':rs`AʇӈmOD:=59$+;2*sdPrTj F)#@r.\sErUA~jliSJZ W&ηX'@!$S#ҩzT֩hcpv.2c Nk&G=PkBDq*m;#3LpETT< ш,&TuȿfPV([M^z͝Yj6@D6v$U9HcgBkyMg]vz7itFO~SsI h9FTxʺᆲzR]dO{@LCmj^ NLq`p?@1ba4rl V%@C.AڳQy*'SB}ZzfD%Wi Z)~Ϡ!ߡ$ [z)k91}9PdڮdRU0S"S{7;\$jeG$aRhG !HLYvF&UKVnCq%>5>#ўS7&7hy-c0!D 4(Qmm3O&rEmp ߛ _~J7'72Z&9㨧K.% gBSe00ѿ@?O?i1 7s)Yq"xLL6Sly09C&BqP(AK@.ޘ鲪{p˧7ޡ$6_{qW򏯬W5NeblEnC&cQBoZboIc1e)1&*ɼ)SLb彮ЈLfO!e?qBQN XZ/E0n1f4fkrYxſ~{`׌u*B/N'b5څygLmu-9ġKC!f# 7#=x8eP#R| Ę%z֦2Ҁ;rJ^HZ Ĵ*V8cBO.6}2WR@:޶Ȃjz^F03Q -3Kq:y2dI:q(yQ`EU>w2M8 ֞ ^W~aDa=sx֎ׅ홚AޟwN:dg~C3RQtMP̫IXkvLoޔH)dV?W*g⊠B#GdQRRiFh,vX+{ųUƁEC&)5gL![u_*5 !e-(ac yXja >0&P1>-fsbԏxM^W >ЉA4d[+FqΨDw~uOș@evT~D7 ~$qo\VNxVxWJ;ߔ;^P([|yFJ~@ D2\@5| 2Xv*Vx`?9Mۇj`ԞF쥄v|i8{놧qYgy `;쉒n*UiN8m-k#B}G`nBΑx{Kˤ!äO#wQX<?7GSWBUq#+GuK+z\PD7> _qa/E2f>&RpGb,& ~;g$$opxq}FVU <_}5C<ֱ=* ZtQ WmcU}s78L,(z*@Eulĥ@c OgdJMzr>EyP4eL‚)~!XI4&eJ;عɷ S\zwXih#WI'hV)/8[6.ůwƃF&@&uNqQo96c;fmwTUFI%sVRCh&]HÁ(Vl\!elXdJ mbg `K٫PVUm;CQ׿(Ot#w1}7h4#.x<BEхFحn<[6e9=ΐ1$zQ2}\75nˢ^obQ%Orh~(m%rՀ=%Y~ *-~$id$ >3Ja"n0QbLԎIM菤orc>hSW-NAluԟxե36ի~Q\O J;0gj&B~tzߟb" vFU*&6v?8oJ4ZT RrCs"ijC>3^ACa;_ e~dn0.`$~I#YjD u[DOPL(_Gۚqxg+%q_ uym1SPU!>_cӘ-dglo=yzvir zgǕ)\;?[1[sY{u6oyyt]'d|@I; TP?Dgͅψ$GHl0YgπԳ_fgh]` bB !@͟gYlʇPH\6T7ֻS_T*ag鐊#PDTb<LmGhzeAIf!3BտLtSѳzI k=IfxwV`=KY2HoPnA7̻&(r)kf+Nbj*W^a8Y.6\'z2QCA2.h0cCr^#$5cV6nDVVy&a"G .θjr+mzsvs{(`UpݔI5%a4,[pC S@<;o$XPE';(4m 쪔 FF3":W?Jg=m>.~1MrPj#/ce?7Orns\$ [ckd\j=*׏wD+m {IBlpm6m(ֹ^wW J; TqKcC&K"O|3I U; "ЌpT6uy" _uUm: X +r~p=]a32 -O~i$]zMP:pe]`zik"LQΗ:c\-W-4m=Q"37<ØOӅ@}@C.$F ,}S/0XMh2o h1Mǩ_53$g,huyUISQ Dٛ_ZljVع1k(hP&k)qՙa/~5o(݄0͕i%̅U0j3ۏǃONa=cm_˰?n Ƒ"P8AW=@DqQ `lbG^!|;j eb =7'dv9=cxB}$7ʨr' W1mrx |$XUhw3-/_(\1'nY$HP/oh0^ 8j[JnvDD'ϒs|C؇i8݆L\?EJ.oC% L5@Xz3|Hl&L;PpTл!Evz &.O V3l+EveKd)CT ņ 0#Pa.4I%4ȟ-My*ޫj#6<ÎSEŰG&"Y \NZ-j )Z?9ǴtN~ygf6_-`^i*0衘f#5<^Ku̱ϻǏzBw.4rSnζNu3͓0rmm ֲ²oSۘIw!Zy SS{<{j'l7>s[k/Uٳ{+JQ >x-͐&|Z+.݄nߩIʹ7@C߭AFzrكxz˲4@H,/{<:;PI}>ɸ['%&YQ7h<)Crwv}]置b*{M[>Sop,Z@ԚR]FH_Ľg!D[\et `'*LzU. (RjSl&lݾ[ONjEʄh8=ڇlKHу8K`J&l&ʦW8=}MwZ>b۩urĖ`*r K r葦=^&۽ծ.nH{؀zR&8 ] 1*5["I* vI綹%8lEHyHL b-ʎĹ)I2-pwp?nw*5=[ei.Eq <ia`{tW֥JLv񜳩r&[N)Ӽ ngJn=N(8cEe`P|QP=Pm!>|fF'$f曚ǕkM̏$>, f3'Z1ƐE_fg7rFoLN|H}\%\]3 d@ ںCw[C@+yN+UHZ}zKI5yk.kS}3 ZɐI kJs-1" o͛Y_^|]ኛ|eG_\\Q^%HdcNF^ rDN%:@Er?'H 'Rhj~('\3/ThEG|owQ4rE:fcWj%HsxMRy/TPM7qWޢBqC5OCcJ*._נ*t`NBSb6kOI>x GR4X'ho i(fnGD>6^K+qV3UZjHܫ],NwVzk}2&VsO춠ǘvZ΢*QScvDi,{o63l󞷞hŵt.gdK]s GVlCnZLʔz@E1WQZW( s/|W<0ۦLIbgD Ғ(5W(i=$NiְE1#`h ,ݮn KΥY:;^~d~q|{spe_X>%YɉK)V$@& s1=bAoM"oM"sZ NxnR K:K>M Q({r!f)Kvik?O? 4􇝃(+ ] n2F:k EnT.H+Z?!`DIػĊ)!i88#Y-}7=B>nkxy3' 0v^`[$)h122Ows@Wꔹ/a4v 0]7XZ GªgT)heȘY򤘃Et~_*NbE/ ,r:["1Rݘ_]> מ31^5ɝν!G42=(GCKNɮVCf8ܷڮʭqǢ'*7nޢ{C%1lI^V&Xdquӷt,|`- ?䎦 T|/ @I{WBϩʓПv:/[?To9` iM8 m@ B.]|$|/ڇo@4ƕt?2HRž`%ȃ#xO9 Ejbnއg }Zl /@jU}͚F44Ie\X=m#WZ/:`K±#GXMo ]: {dUG[ty{$}F,6>K9E%.!.1f3qm|N)ax2?1p >SÍe *~؀L6*>pO+/6dSdr/Ah`4.A&|ň=έSj B#a֯>i즧}|şs0_ p$nW qx;4ˇh?Zt`sĬms0++v'*NBT:2b3;} 2؃2G6UDcߗbMOרI H$H*BU<nõko%_hNEPmn35fuK|v!Z>DNrr E쁠c$R]EC:OϛmH&! Ѐ 1) WQtuK\9z#H@3"{MfUG'/rcf]43K۷%teTœHoz3a[ ͺ4( 8hczERzbnOZW љEB| Z'LjB1N ި-ngx4ʳmJé:݌qWԿJ Y~`$lvEޖU([VsC](JŷE[+jg"^.Wi%?1S[?mN!LH4E;,JJ4g}m459QɫBfŤ+7d yK #NEg|bfrݩؘ(Gj&ftȽ*OBQ ur~ Q(/l"?qF3~A"T|jg^;G8ZgteEX_[ġ*?/g1$7kj9M/v97!Ux{P ⱶ01 U]u~u?UZ4BP7:66b[d۸JEsDA,VVoK}(Xۖ^iӴYT011zG|e]šۙ8 ؾ sUQz۩_b8R3TXYuxa\'5椃ed]y Ugгfc *+PKaӈB[?5ݷg6r:7#3մ; .7`d۳3~'2{pژ*p;( eA2cUDyMH=PsFVNmK%U&C,.<;pޚ4u7s`|ާGzɖKP+9I|o 75Յ Ql!g]Um,4؏YLG6nuɉFw (pm<@ngMD@40q҉dג;<eXMnCju?p}\ˉMa|g 6I:t_'=LTFt(NO)f4:?z E:D +Y?!FJiV7\G>˟nx'=>"pIhheBG~{#{ToiLfv g)jƾe2xNkᷟ|9ׂ|n=\`|ukk7ޖzMai8cDw}i5fR8W벀S;Nd3*.jǕѻn?/Uq  b1KqS$~!q.gc(()ODB4ŏmls7O Zv.6:DZ w*(Ù[sGwj3Zmj i^Wx9ju;_ fyQ?rECɷ ëOHпxO\kN){EC`#i~QO'i̮Z~<VO~t^9J; DR5ᙵ,'QE!'(tg-9P]#C[=1OGL2"Kde#F1<&9@6H^D;HIchNW.c{\颬ʄdw$>Çb\ IZ4>$ʺAe3$6LeͦZ X]y7߇F]n߻(^; 9v\X*9Sc0a@U-HQsڋ1N;Gxv/PXk,xB^hF^A1 㒜aPkI輩zh(h*5ABr32pusv 0tNuTJhpf3^A,Y9&.w(Q eBsX>k6щ^Hk`\>&uͻMua>3ifoG#佐K9H˻R3(fLNK+وY=ڷwRa6V >ӊΎ-[prpV|v0ꤲ׍'sds>\E] Ap|u0?tk _ }v\~.T\ 2K^Q".ڋ :u-adSRy}beE!0L? <#wO"4`?À0;^" 7=9&eM#ׂ_BZg+T"c%!Qĸ[1^ieg;l?*o vX -y;cqLGm|lW.Ѝt^}L{h:Y;SwhR1D?d^fE8pY~HqaX չm$رGVh26i1F%rv,,v^j8O팼d%8?$?t@kZig_c Q˩C`ӘkW= 3~KȌIóڤDKl6Gl!O*kWY3VRP[㏪/F7\7EZT滋½=!our^{%imQCw|',I0 cK3\=}( Xe4Z7<<(޵RdšfH [$es7_G=d\!1B`tXo-F:A<KFR-eXp̋ELdf9C3RVq2L:ZILAeH:xPOSG,Ziu7S5@(pD%>wX hqd, %9c,-8 kK``510O,m5 ytXV R.3"D= G%/IB?[iC36c+~"qdUF 6׉l:M^k ,}u#P>_ J N}pQe1s] U.eQWGJz!\oǰLF^p-2dx?z!"dއv)H\Lt${<0H!mbsOBQi:numJ-e*SY^\_;"nEDKdɊ& # Fa$ ڬc,wS,ǵ%=N(`?E=K wSp9I8C̈t4 o!;iͺk, :k .LzNO%9KQ}MWn pl~) J=d|ٛRk6¡pKG3.o;4st =`U8gi p%âUÄi[hv>=_g:ȴq"dSX VCp% 8l>O]gI'5^'S4ע0XP;C#`A9a 4f\t 2m<}lzZVĭhr^-; ) . 29Lȯu*au2 6jnEδYjrAC,̚ j2SKgL.OB`A^u`6 R=7͠b{CL)cK e"k Zӓ%^QMGkWLٔ}0PȐD*1ˆIZj\yvJOm\=O~/(Xυ!ke'vwR$oD xiF9WS+2OTG^P%ENo*ug3RMs䀶}Z^diPcX9Cm/Gw/n)J]jHf~eFpBcX3' 5oS`81 ^9M,B16}SlIzPB'W}m1F_)JA9Y uMiKbG}L?GoBibS~ͫΩbްڍ3`䧐1MjTc"j[ ZB٤Ñk޲{Z[xAZ`|a{}t삿մ nך(QQ"/Xg[b܈P,OZ$stpE(׳#?9B7 ʚ|eY˯$h ]EgY_f/U%L+X(UW i+@!LOr53㵫\hLuIu-MxˠLMh^<3krlſCز܋ozȉ?pc"'b>AOb̰X~]sMg="\07i~zD"+? OS%q3m ճ  C)TI!ej{1ͧkE'N`Ld*!_Ha1vqY@J^?Lm"]Tq9ZBU}%*$M ٹ3=0`{Ad(Xz@ .E]3\Zx8ɫc/kD՛AFdӼ?-UN4Y//e(07'@,5!GfS͛)]mp͈s04ԐĿ$?ެ^%ց /f@)o?\^ Q!GvrtS1vd$jI?N3GRnToH#ڎ̌ڷܚEndy1ԷjMض_E,YY3Uk (6eKvfv~oMa-.dj=?/45\@Q @SHTIxi]Ku 9,dg9XhI9N_Yu 5=9IgKU:ӤGyQ2.ncV"t{~<͢7`cd8ɝC=VqMn#'X !VeVc"Wbõ>'gMY#R֊ֿXx)\bQo:Kp`5cg~PN o*;Vw p柩l*=s\! `ؔ>{-vWuu; LH]X5ңQ^Lf=!h #ܒ kT㸠,[F҃aS֨!x]7 CJ+3𾘬jɉ-R +;HOXTzZ--D֏氼EI Ej,xi<FJK"%6EEo뵰 4T7%HY'_cEplahޥ]*"┳3 [͂O=l$v V r1 6W(qY>tas}9k cĠ(މӗ2s+ *mKR`0':\ Q(&ۛ$'H/ybM%$xpQzRv}Msvm^S}Ke ҅HwNh緛'RBO!  0HNj(Tؚݪ?h'p?r/=M]\HT]?)0P@丶@kptj.[I*wRr޴ ʋ5;כx ъin?Jݪm v~]$*cNF]k"sRth-$+#q`gz^}C2)@˴DأScY{~.'cӻ5φ4̞4 Oi0'wь8ArN*ް&@<,g,ȘdmCkOXQ\CQ0 vrGv0!Tn96C߁ v?&RQ.tA֢|խ0o3He`O.? *- <)QoQ^ {ͤFŞ *-fiԃu%uH`,85/c[֬j6})e`LD9;ncSSa[l;zͻ~(E9|{tEIKBRV^OL,0){2> 6Ã/v6gJ)1YX|$1I6+(Wp{TA8:z%w`#eV+K0qOf9.q^۹hpyN? ';~kk;؅VFrLA K4rUSLOa 5b"pO֠U&q ]J=Gtkn/}'X{$޿; . H ) Һ_W}: T>fX=]ݕW{Z͕ ^N ~~4T7xR.c5f(jtK?:O'qH?rXll3 fOA!l{y,#h9ss{h.`LlsZ/vґpʃzV` 6 ujlA,(xL&dYP 8X։nx TH)ݩ?ZΡ?;%7s*[ĽZ\Q҈%!$}D"m"wpv9;5!yTw*段_((ظ>ȯXu[ƌAH58@! yfu#asLh0< ġ0U\\V&iFB?A7˫lF t.Y]2_{fYGɪʌ)ddV-<"w2:9p&U:W,X^+J|_|6I7@T<{4cKKgM0˙˘c{*f,3 .5IN"EW$ D_SOtbYAOJ_g<-NTVk&eDJV?pl.%4WZ@.Փ?]GVAFIaPY\GmCzW&oQ܇=oz/ ׳+zk[p^]T7?)"L 4 wW"R w_|uE'u=xȅªu-FeGPzܕ_--b>m7@F@Pw/ I兪Q$:^:,mV(bS{ zQZW/ ( _TT\t~M$IL0lIVלU(} uӳf9ͦjM!Ղ=8b?y|/03/r:X5ƧLכEq'k-7ӗSƍHj;+p=jGq ]N#)j1Ǹ,&f ăA '\?*K_J3 =SߕG2@*:cywk< =C@:#>hui{ww%Opǩ|g?0WUK|م BƔyb>7] жo=_8@&; 91ؚ鑫)[DkEَGYxHqAR^l)'[De'5 ΋c %T%wWIpCոZ~~`dy'Ai9p7p|=&RXAg 5 &f"L &QLOa",VeRo!wy/M%B{sŬI&b]8bC N-׬{z;sP5b?h︁XL7dlM{T޹é ÁMq"A5pJ+_6Ok*'P.O1p'yMz\;s{G)m΁ZC󳙷Hͭec!F 0ܼ4)[dssHĄ!`uӇ'"Kaҩ]2$0Duir i`\1.N,OJ/+I'j.l߽ 9lB٤ֱn&2ĩ?>ȭ?[ٻXҬMIiPs1#4,~~(35@fK7E8=8umC@Sr/eIϕ+o1p 3s# g%OIr좚QA :u2b :{R;P $,ik5*EB 9J‡Z sʗvDĿ y2]ʣ(My=P)xyތvM5M}XC2jK\&ܭNX'\\HN)G3+{P 4_~GXV;#W'>tEe}EdJ?s.]B>ý*Óo.{ZWYy:32M`P֘fT%4&&NVc{&u?ړiW]3y- r2(X҉Ձ5eƎ\ܢPT3A0dEC=PiA@܂uvHSį?H.(.yS}w=\M)%GZ7|7)q2MI*U޽=Dm=́Es=YŖUa]|aRwoNYjϛHVGVP3;P. i81U~b[ׂktR:zbqfz5Y- /?$to}TBvY1+{Y!EA0݃r~LGfxF762aY DTv \n4eHZit4@xbrK|! y90J3>}| ^i<֚%ܹ)d@H z1q#GP.)P5oP#Y3|by/yg40'XeeŜ7Ba6NWy|>YZPpѬO^d}ݷANVtw;KږB:xM|]Ggg#A~3`Rb~.K!?4bsk m7V@E2Y`c3 /W pJ1P PzA-|¸ |wK2PJ0hzkstgmM%/fFT̉Wəkv'YplG.'uW \vSԢr(j\{5U겠g9+`6th,&VK0GK>zB3jaGWH;Y_!0Y;J"徘vqFQsIdE_wB{[#Ĉ3钿 y)V΋@Ux;,{ZDzQMAF(u~5k1zڈ4e&Yk<>]ibaJHkaFT_se NHA LYD.Yot}(:[8\0 #R}|[tsD 0|$sIBJ\ M2( )U؊jiu_;11OY9I!u3\uqJcs[i_"%V4U( gh*.s=$Jz.Y}M,A;9 QYɘ؄Zh ?O1 שET$'۵rӚ<#Ĺ2gifl__.'\l x*aBikCzr Ch(tp&F ;I]u&:B-g:D۫`jo?f%ZH,|@<|/6\M?$Osc>G\2YLRoeB.QFPD?GД_]X~,"Cy3<?>}SO酩ԧf^Tu͊h%:@s:U0jե[`t$egsK os06yYO?Б羓Nwfn}lQdށ8rۣDgk=1D"RX zN͋t /LMs#uF+Yo S2>D!IXM zN1W6c16sf1R~$NZOn@"-WUg;ܑmjbm4/f,N>la3oka~HC6#tS=J {'5az`GB+#NS)Er7r~W$)yB6s-( ~_[2mDeߚ4ك=xxe4J1Uצ'\ C~LD< 21ζ}9GՋ"-nF]k"gı}Zk߃+"0܉u/W}DRL2蘭 YLp`M~#O-Bzq@nx[ Ri٨X&1qWr63' B^ ȊFIƖdY`h9ifKs͇!)\L9=. V%:5.0$f(pR8< Y^gpuåE:NJqN1 %xj ͠V4=01Eܝ9|5@x8ÐSg]; h[#I w{}$=H-|BgrkQ:K&U@9@|ɦIe#@2ֿ@1Ժk&l>FNFɱ_a灗 s98CtU ܙbEo\U PIy~ҏLܧ@u8DOkmaD[usL=´\3-ИiJ/۩o}U@9"m #BpIhdE#<$49ۇFu6I+;9>*\{ *i筇D*/_ 7驜cTm:=ְCe׾ӸX*CxY 4$4N=2.aڱXB3DnN=g=jűiv<{:}SKvidYd ޓ"Oc}veDQ;;@i[4SJE-afO 6ܮ5۩# ~8z)0sA2 IYP޹gU8o{L+ jL?#L)=8|AN5)tȞjpm=G?eծ`Z$ >1۸l7,А(alv~P Q wwȨm4{-1 JmoN \ =y_?TRdyp" Nk~Hn>kv.q@{s[1jTԿ{Ad睚sjUI3~g b{ttWIbi ^Z&:C0Z*=l{3orZ^܂AM5Rz"i0dOVIc[Z: ' ,]Ē [ooD fOST kd6;\ycÃtY6 zi2$6lOWS}jK2]jA3^5<-?BKo`syMe0?]__B ˦tR,#( h08"3 +(k>nFQE|37>2D+ϘǏh3teP| 4z1\HN&˥\ TҔg6R5Q<-hQ&Q0S} |/&1<=w?X, x(+/O:0H=οop5(7nʝD8Υܑlk? Y~[snH89{/z:\@@OȺ?y35uh'[,2 #>r~@g>Z4yIK&=@7}P͟÷a~Tl jDw||Fw[5gsk?dq؛4RHTxX"TzBsͮ)ygbHCLQ+[r m<̦H~JM&њr`^$ij4zz"xUM]7K .?#Bz"VDۛ+RκՕ(ݛ%8 8a%?K5l6eMTt~ZT}I8GiTRagig84$?%z$uD4nY7XbX>Ao`3AMG ddR鰁:8Sjsw8dcy.$w e 6vTyfoVF<3iy/v9f^5hj%{);#cZ} `0tdTmulQ6ex8kEYت-lq.3 Oe*85bOS? %_=u2 UbX֭\+8Mim>K2|CWJ"hQ^ O@9F5-WXLqc1Yz KbE0n`B}˕ND(S`{ظvgvcmVkV,?Q4#ׅkNLoM5 y*َCKdK ,\۫{G<\ 8ٮz3aaV.\c4ɩ2ɌUM0V^NȕTܧR]l4Ca^vv|x T"St=jup Ua@)]7'K[^bƦ>n7.U#r5k~CRf\%I,|H:T_ըP ܷ\"y~/U!'+qFa87r_e fɟz;Y]P~B@VndIY]OO W&Rg-Jkba})^vL(5q ?0)2+|7팵n}cETf!5_(|@y97N 30a (dWt;9G1wMO,_~!AC|lLo8+$b / Y1 GOor3d/x{1>ne8E MpJx\K{QPPN UI,q1e'߼@dQ`L"ǶRntQt`2D] U_.=. g 7T]_L y3^ `Ϲ?)'wL˷CZ۫PMǪn3,%sلnי=~kFDDNS\vuCFmUV8E"(D2cg3+Lg4ISiwEB>J*+Ւ҉^Nesw^{!&@&l_$y:BY׻Tu0$`3("3SC.nhs=*vں7!kS{Մqbp$7 \ﴢ+7kʣ2zI2nggQ# t|l3QrI;VUz z@`RԲ]=3e=<9|yfڝ1?3_ U !8]|+ȹǢ*BX!frH[SԀIK* B4lL .xӬg^"}b @5R~>G, nu(3j [!?+T2*a:EĹޱO?@)""^{,Jk$[0]I~Q$P? AF PyӱB RxĢĢk@sM0R h =']]Y]:EZ3%OpQy;,{zEO7k#poh5BKt^9ʜWWG(L0w˃OgЫɉxR|G&Buq73"@X(Y&Q9D7XVqߐ+5ѹա.@Q!HxmQ}6eubx YRx;% ("| fTT* <"zЍOTMkr i/24086jGvX5œ{ngW9 +/.W8Ls8;~MƔˆ7P А5պT.5=2 k/OPעF/bJ{NCD/xo,cٖdp%iHǞcK0Ft4xQ8kh]Q@bF# 0=Y~7x]2{)M} %Y+||`vNFT[0Y5aZCM\h+᝷hK rA-gc UQ#HzUR} &!T39*=?%BE2Yj |bShs {j3MM.`N4R2y{)HCritܷ繽Nn2#P7-~H0tCNhk;jB/9;vAVҒ6gP/e6! @ceR{ ڀ(s~vmkՀ^K1_3kU0hnxR.m':@q$Gu2J}[\ԏ{ukXH]09aA$tHv ;t'^P}31HT^ZEUDN2#|<қLu!&nob]FBK( .sFC1Ių鼫_d_  ~(JA?EaL4i[\3 a\X7>>,i`\u1<}67nHb%7maA: /Nwm̀%:]wRIbq%*z/iNh1rk cPxMQcPy̏47봘4l|uc>:E>xRàQsLd:z\?pNhZ9!Mk//д$%9sv̒=\5,ԶdkFngT:1JTykl\P;NMs5)5xDb[I ]Y#40"[`J}߆mUph ls%5~>"KAI=[*JI)ƂO N̡ CճEx11U%`Ի{:ipPu$}"mn!+.4I=˜3,OauZQr+K/\)`: 9t~s,Z_0[" ?cqpw_A}qn,03*Su;͟ i/n~*"i? W$)4[2^gt Gw!7aEY1&C{FLO`d6L+]E}Q/vjNFN`g>Ynj0|~SzB0V~\y0"AZ4z$NVqʭL.E{N:E"bMMFo9Ȝ$ 6~ 'qu"B{՞!>ɹ@|UIͪCώ1gN'lYRp<\<M@$K483O~˩3|DHΌ}G~ģUaH.!k@MXDBEChRcYWd8OB 0B(Z{t8{a+jBN" j3 zŜA44;%|\E¼NhDKd}.TjʨW_j_Q\}e 7x Ƣ8TpgڵbD$m`r3Ѩ{aFUBU<'u4}1΀46fS$.8 X% Be$N(q3zX=O E+k.u$̒Pw-K6qh;/VנYKmZ$]Mȴ)XҚs. %t~M6_g?RkXI8 F ',e0eEww=|:+dn%ּS2[N.a;̓͑LK!`?EC5'Cl*3#CE=2|3vձR:'Q^Hc:rx&01rI Jӓ~C{x83n! Vn9j(P{d-䂣ifwR#NA]ii?c]|lkz7? q6pXݓ몎s g1hK)=@eлrW%Bu,?y)ZDAZ&Vr+rp zR#ǁpi-ɫLF[Dr>(V{͔jf.>2[ PizzVc:z]46 w8L y |Ҳ`E!,7)wf5YU'SVx8?V%#SY^|帀syYhhfI I ڢ/?xHUT58ž ) }0Qwp5{ݤPnC`un]Ϻr+Z4aW.w.sΰ{_NK;^ؾ?S2`i~ ďL*]Aeqx'ZϱZo5&եXѭb*pɡɞsTa?G$Ҁh|#5#U<y^Qgϙa e 㙤i/{M t)@#P{.b 40+$IJn|rOZ̰eB JgA W|4?0f8"1Ό@dTuS{lV}Hp(-;@K fj^ֿ»,}/ڋ!^'ݦ̗7_aXy5|8$TS2tԌHT[uH[c)zZ{aA; S4XQy6{Vtd_ʲz Pn^B{n8 OOc 4 CxJ]Z̘ ճD )uWG.&JWL@ R\}%@l]hȫP4CuC]݆F*)ԗUZ*;^ 1g@9N@pnhauځ _o[ i[}ڑM`S]u|aZ>'Px 9Pt toQrO| oyz&W;PmʍGѯT^FezY|+K/Ȟ -efi\ڲv(7Av㙥#NId]VPLA?byU^dT!@[4oggO%mNFOL&TT8A;_Wi09 9Upsr4=S]Rjg>\̢`em16 b PÎ{lyW<@>I4x Qt&wO+D3OUUDDc"u ,' ~MM,J+8$x."_ayohO{*Ȧ Kc-S8{T2'S˱ۀl [)LJRp'MB}fa+. V* f3!M \*IנI2uqf)zdS^Va]k\}[>&[(Wi3xqZ}t! 7~#G-Q[tx 06b4)SUUuܞ*Rȼ bϷpAozSn )G볼( ]¼왘 A2,Ĩ)-y]׊)7? nQ<94!ov"M=4>ByS؊5坴1#N0yKT)a]pV7.[jQSGbH,7N^eB\{b{SRO>\ƵYcp {uk븈-ɶ%I7^_ġ Z\ULwhA:zNo.ۏQbґ6oN2qӽc@yP?RD:P@]$($v=:s`et#T,}s0#E ETjnyȮB^r Ka/ @@MȧϗN;h4ef@Q*r#SG9M#D6i2Ňήލ*gVZ_b%wJG0$`tӢ6؊={HcfCo ^ )|0/86p8g8lGN X!#P|! ¶e9p +\#F}xar_w-h:zqq\[]*0Z'RU!Z!v<$*R{xatY=>5[a"~ +d"F@o3ՕyÏ7y,p=[ǝMHj$V"M[Qe 63 c$,Z˒. )0CA;۵IqG('VcZ큇GM~ \/ek'LYM^Nl>TI!u s߯C:ey^Y!kVϦiK\0XO319m٦VBm_9+Oi9 it#9Xr 3yfة1nmŏ}^37OB# ?oJT40J7eGb MĈ7>4x ,PMQ:f_}|~w}W!=Ǹ+rL?Nag.w=_R|#6 D諦@`Q_i´7ʭA6ٕF"LظĨ=*9EF=8RlY[&.Z\<ٸ4 1˜f Y3u5ۨ,y;ZpF?M1 UWiI:|hfVUAhi5t̳/{ӥ5ޯz 3gUJ{LPc#:.*N׀ rԒRNP/[?~_Zм\e2Hz=}[[VagCVwǂ m=:]EUSnw- 3#sa$@u 4@Y*`-2.@i v&mH\kQO@W{=AXUqĶz$So@mio?sʳ W Owz&e<ű[eVڜ\ބ ='#G/};m_=s-ڞ82;71|U[?\՜Xw3 ]Ga ŌcEwNHʤ&HDd\Ϩb͹wSضkҺ!R*j6,uGz DOC˾9=:4C  yHI2# q?L;[WG7#ΔƸc1LedhyocO`$m/S}hQ5P}>zFEc2PZrJNV:b 'joz1[M4J(Ϛ0.yg|O~Mnf&"xbJEoJ n|vQv={R&)Zҙ-90X 8O›z.s lw`4Gٵyf^#o3 W]'35AÜ?Cp)^n x5^U8u*kh~^[lAml3.<䚛3ʯ>2ХT2XHMQ^{cL'1bb_X\[ĠeL.;$i6 GYRWl%[igT>/+GAϝ3Dg:[_u4}Qv&q`'R쏪;EEi#ߕv͖4e x|6:phctďiFٚ`755^Ǝwb$Zuh7fOu`I,c3/ijR. k94ď`LDn kQmRp q]uUOB(ѩر>6}TP%U7jRS>X^zg.yI ?@NÅŒ}**4 Ԑ#{f|g':  j0mlb C[|̀fC%ti8zdXVa+7 ]\Hb[ J*E߈P_Sgoi )GY$(, (bZ<x'Z9Ce[pnO`9/ OPiq Jcv縊.vޫHʂ˯#Ÿb:wwH?؛{ S lW"AL`U6n`I=\3E GCFzEh\o0#؊SQԻ+qxZo׬D71Q uCg"DY"L˘9Q έZpAOY/?*1Fx'FNzڐ֒0ؿWr8&>^0ezPyzaimh݈ov2YV=I7!%5{޹*-ӮW'Vq@6uj tOщB^ ǒs3dRIFxT_IǶw 1t]"`!j Wri_،JN7.m~s?J2T0^M_o ek0+8XQ3?UOa52kb,@2 y4z ~Ϳ> jiZ#F4&aҌ";K`yE8n"=Ar*Xs<@H@<ī;G'Eԫ~?Z0V ]Y@01^]`3 21AqHFy6i]՛uxPՊb.Ozg;B(Cz&sljcy]Zp7U$r Zׇs}޴B"mk±rs􂟳mcxj˭BPθZ!䛂.j>@DǍ *89jfB  nTrzؠ;yDЂMYxrOgd3w,41ؕch]\SH\ȐX|>Ӹ=C1 ֊%dGmyV7/`9t20Y=ǶJ#M&ݹ/#}L]$63k)/ϗ8$luvIOoB[z&ɯ]wt)#Z4?A,'U[`2P<-W.qY X'v*XBSx7mҤ~b7 b3 L~~v?J`866p&; @RB rN$g/d{Ԇb&=Pם4=q2C79&ger1_3clpE5=mgL| DV7C3b[NT1K,9ay"`NƪLjowBpQ4 ̉5@Ы17A4 '}qx&;_>c3vz~# I1+çЯMF? Ƃ:;QAO`'DuYAxj;w8tADe6׻^x^>0Ms"XmK1j MHFqk=1A&3/rin7)Xw[h=@u̖;x8WZ*s8 ܩ ^3[\hSNeK7M?ddGl3jIdes4EPzr1K|2;L6O7/H+%56Of6HG! p'\^irthz\ߞm a??#?!9DWF0DD"||o_ <8ygEK|Iċ:JPHxL }{M\#LЦ3_6zc[ 3gf!?z{H]A[ E?A, !7UjFpP!_Ȳ#󿖗&}}J+ a]sraLjq?m=c_ `L8 JCTseSuҕP-+WmU yZϊshe5n/Fs _*rxջ30|Dqe!u.ڥ"4z6QH[~*t-%pQ{!3 ᆼ~:]NaReHc[%F釓AQ6%րpP#4M }p;hL=2vOu9ؖ-ơX%ܬV,Оb#H'^oV`@I U]WT2?>>5&DX!]L ,*> 2s|oD|EןU黳1}g"wyߧU lU(bx$>JKy EvI_Ft'*\s²YΟn\ԢHo|@l,*jp_2"DA̎}sYe;7B+ZfyzcҮR} PIh~R5v@49>nA[lqӼ1 0>:8cS/@$f=T1A%pFU`QCG! "i ke%Q!J>6SZ0&rSQ;,3OZXC+* 5~7 tiZN$о+;2}JT 1:'S;vXatn?֙t8ĴY _DOGw2rJKPWπt2:>RP,̳ÃQbؒ$JEQ?2-OLqE*tS$ F%$<;C"EJFh"!_RP HVޤ Z蓛95@_kq[Yqi 26]WF.h(ؖƌގG=9u3`~Ez/N,D/Ri+d8Sg" :e+Lbt4iʫx^a&䛂WH<_A};fP^C OSFߘ/@ PΗ_W[xV?!'Gl+D/ ^|2PZdHY'Tʭ2g8&|€y:3wڂNdVXMm?/Xl>Xr{J=yJ@ƨe.W($Í5*k'výLzj >ZNݏ{iU^; EZxhdˀgy d!818\Aû^b63(B/ܱca,7MEg/fxg 器>v.ZD]:o`|T::JtlQ+ET͋ç`̊9z E]Ys6n+s&q~ܮ5,$TO:&oBC.lSL4'wjZ% wȲ{'_Q6']ua+xܜ!ݟ$??!q vyM ܅;#(~Їj| iѬ5q>bBe&SM[2,b\Fz#M'TmSzYo6'ٿ?4X[皙W1ֿX>']𲠞T5В X[PcѺ>Ose]s?EhK@F\S=S6=xH+F/{a)!OR1m"l'I;SS&ub\+jI#K7 bILr*r OQ%yjx3Z?!øP~0ܱ˱IχVoZQ۷5eBҨrgj]n?ǷTZbaث A BʴǢ%m9޾$.v`zsÃBzfPqRjj qY~|w =x3<%* h^scT)YtfbKXZXy=,Wt@l"ǡ5VVڹWYoYIW|1-1d]5ik BF|J}bq,H;k[0y@?ei'9;fy[@E gfLӆ7!hx9Z[&TTxL[&b@rD፻QwSe/z,^4`~Hb1V?R]-hm ʕy1ߋ7"ꠅ\f6QzbnGi*RqPy'ne1 5=CSga<Y>#tYZ, %k1)NIvdK%)FvG%Hȴ+ yc'U$q%xq7TBx=@/Y0Fz~X u]ި;|X8 T4t_xH&9nP]?,03P;su`7|Ed >z&cP2Q&'Υh3=LțgA~äkkX&<ٶ1f޴JP jrU:ƈqe#R{g0J|]=]# dݗ}DT5\n]^lʞokI1@;ut < TUd*-]hn"~ߢ |hxϸc bc!76AcK[hf|v:y'G]Nc)Ц6/#6`ŕطgQDݯm8M!Zu+"ݵPy9GVܷ5nAS B+߬к|"A?#u}D;Iۖef7vOP|qJε3g,hcf@‡˝Z[ ]<@/"Zu=F2n0[2לǸA>mpIfXh5n*/eAW}$pxz7f૆w26 7wL;'#*7+yಝ 6 ܦ+}lוY]3Gwg㛒w&#<aݰ{i |c0۝:=WX>Sl1o'&313l1w` <0j4b?kêty% Dl6nȉ~Pɧ|%~RH>kŕyf]'w}B+[.f漃`o|>j*,Zwp7nn,G«\pǘB@GƅnN2xd y̧Ud& f6=7zd6˻FFzk-+΢R{ʒ63zomUw=#]OhQmC z:P_f;_$]E*6NrDC7K|lk`!v>58̠tkHR " μe7(W*MWa9`3_]Z*FмaUgvL!g)WA3&B`>\f9A٭ـ&50r1箼МctMNLOڍT#-?<ڨ8:\K*2+zwax*&D>J![7pg nΥ`t ,2 kb_(27Or@ A!0pDyL<~g,|79$K+{!uW N2ߕ[lgz;L o"$r/M(|mB5|"vtX)%ƺ `٬hԨS:]Ҹj_2Z r=v֕|;B8~bm/Qn[`5R u2[VEӱ k2#^ꄇ+(sSCj<[iH2mvAW Soct.oTj{5F<L HPs, |rayrK%1/ۡa4/@,KQ"/6!^ m~tl -z'< ʴ)QZudC;G\hо1x'*-b6V#"?ģI;g" E 9({$.iqDg0G(Y/Lg)Wn͓o1}кʎ:` =ћ07@۾*E9nqa޻fo h5ض^^z@' 4#1ּnsvv"F@J'+jЈn/H=30xPHe/6)$6vݳ'?]Ag|gh"fG nKr$|jO1e?~1,I9&F꠹KS_*v&:ojh낽>] i2|g~=ŋC纐r"Ո08y*{fclw>Md hh ^P^X"dL!BaiI ʮI/:IEg0]X"N+*kkNT;d^zKN"yрcnz+ LX)%=nU+`]j,'ء]<􅰰x9lN 7ߙ鳖sEsVI[FH 1 \$׀0R}`0#+Bh3DKC0@IlkᙱRJ 6ߓ8t/R.пdQm ((*167s|GC5sҚ?|cCʚ x=`6<| ?$tߖҧZ7`raZ5*E8[W.}W·3] ?Fsb*LomvE" "1!ڿl]]y9gQK!{󶺫ga(Ũ02~w[9cZdw&ٷf\?z7coFPҨJ/)LͻCV M,nj|3L'Pb뿤5ZK'ՒHPꕽt)BW^L4s u?H\7wCl@X) !^[`!;`\rc+5uJ?q$Ew%;j-dW&?U/=)64#Ʋ<@G?S0DOc[ #]gYP!eLzxLn4W0T݃2om,C^U,VW,yϔHM^gL'8]T* 6pxݻ! z, #Q` ;&5u"Bq VGdZ!qcf3d=v6Y:ȈX&ڠ\F+i^]!z;p\$2 7aDFnVlnNLl.\Jޏ_=!70s'=,N4Ԏ| l/m#?SDڐ^ܗ dKѰBe-l elS01yB6(?Эkl172iLˁ %om#z/wهݞO? 8Ue TyݰבYOݜӖ NWr‹e[ʸ@cCƧtv.8/6c5 %J[hz4kj9@D `bP:o5c[$~$ ?V`iuRG;hࢭo(WنمVaRfZo?~,5D^D?+VLiYȹ50|qdOڃK}LbnFԳ*#"/3 sx-&Pv bRu@p{,-E*D";n G/UFBƸ6›f#j F_XA`~[؆TƷmVW0̾B9EFlb*fX~-dT@qX^'I5R.ک=ya-VX]+iq{hW,4L(|E]\aՔH92>(+!y3% iS*K+ [@+(4%|7?Us_\^z)b/ݧqo.oZWGiqPS]˃h*ǸA]StrM$M*OɎd6*7"h`_Aۇ=ܭi4a|q9j9Ô-`3Q,P3Bܰ]\Xםޣ6=ՅzPbf|o 9ɀ x0"aT;TA],*fBە֍("4G|_A]EUA.&Q'FĮtI*_8Wm~UQ.k,}mm-vK+z}xn@}p[VU)oŨuY3Ǩ\zPځRmi{3hTꚵ/w| X0b%M*m 6|"H2#go]لtɬf NzAᇗ`+S}D\ kT´ Pɇ|ϣ`Z:D`ÿ|ujhݪcN*WEd+]aYpÉ1d7Z܊ @o?ung+Nt;E8-tG iMs"|/q< S*7sU+F+_(d΍N_;.<=]wUz>OUQV4FW,2uDG%Bns03dX0L&-ܾ $$ٸ?.! n0x='$6ǾhT[PKD+:jl6b-Yꏷ(eȣ̬)RU ]}k7nS?ʙkǝn#Jo]4vs6N&B~<8j9Yҝ˲ùF Lf }X!j93U m {TUnw_h/} P*`ϔzJSm5H&֣'nAoˏ 坠0Br6\CФwE h{8VQş7vj00l̥Jrx9! +nm4ərKt@c$z2KJN&)5H|zO1x:9.GĦj&gn{$L(ѳ(yl0TŚM|;nB?>^ga3H%Q1渼Ow9m$=SnMn#Gg brN[F^K?1Ԝm%H;5DG6Jrn2(.7Zx>h瓉aᙞMoksy0 ?\t][.?! rjwаT%@8\na3"$ٶB,*#<[9g6RjBN9n9Lwn A p$}4r,nʮ{,4dz: #6}B^5ݩZ$HU~2x8v6w4թL8bn--O'$qOT@s%`r<7|UL[~..P\:@4"kb]-j3W !we*&5Gnv+jgf BgȪ;J:urnzunygZ1 \Qr 7xAQm^:xD)?`>P;AmkhZзDL "PӌZQلα=8վ޳ iV +gAuqWb ?tE)T3gjHT}ne }l9hE;hGjBRiZӁ>J&+O* fX~ܑ7@ct(a~:.jgnk9:w ]f3'`!y)!w-\h>v@ MiOG$ۆaNal^/)V!Ei371OcDDg+=Pkr\$C ϠV)1),7fQ:+i߉wBi~,sHᩏ#A?"kIJp']Y6KecyS%<JŴ׎b1r܋xX=3U|?6f<tf.%w WYvkկDp7&NW3;`ʨpʻW>1m]~G#C{9u5%0j8˫ʬ^uZр$x-ua8%7Y5Bql;F3ekx@ӑAI\h"$ eRt׻`{b};$LH]NgG8=tNgH} *<]5VҲչdK* o0-KW\U4.졍YнtRaJsxm#2KJIwy jh$g>ᦑ!apOU]&B zï\xK0|=e%\iL|@eE0ҹ5ݸ:%;ljf0ৰd=PB9U׭|r™XQS:ݩ=xj@(D=B0tеrk5Ya#E>)i 8D~v9\n `hNU> 7r"S:ETonnE_C)i#z?^$R)KV_m1ځ._al0Lͳz@rhUݷe!NVr%\# kqԬS v8pmT@0Yy#̽lMTz)r?%dݒ'vW.#,") 1-/c~$RC VP9)qZHyXh__Dk0  .8V Cw0-AΟ)]V;{'00_UCiK}G4BBd@X#J} rLz`K_@ӊ2DR[ԂSQj) EIWn?HZ9<*yGmܡ)Mx/}ĺg*z ٭m7C1kF`7&BO)̇{R_"wAD'l:kWEgQq&zn Hu#ҌYyC 6@/.L٤Z {ܡWn;)dW'1oQl1^R \쟳F}iPJuJ7_vxD `$*~ݥlaX_eV REj5HiQ n[.gSօ/pcW :*BL} 9_#H18y_)a#3I+7l`'Hֹ1zrHsc98 'κ4<,%+-:(i+hx!6Ɔ1s@ZIsqV`v9蜄YIo7w-Ѩ鷍+A{5(Ȟg5\QCʝ 2{%=d>@KI)TgjGj ])+- ma :h6pooұFKi]m:`4un&$XÎT%7 L 400i0Z;S- 3^Β.a{`K=cш $+W5t N9zQd7?V/UYEə&-zڑ+J}s_A`mh|3]!g1tTZ'^lTwݾnz W+^I^I)tVg—!~t~ͨ`20Ny|0u$ˆ6w] rā'_osu i7I28Ӵw\C(d%D2>bSJ ROB}2?$m+)8׹ĕJBZ{oĘ \uhTed5.Gww= q\8u~4y"@ .xE5܇ I fefn)<q& giW:h*?e9i4zXpl{ߥYF~C(!$7<_TV m4` ,VNdSYQ_$v^lqM~9_N>#GUMA쿹# .#|i̓svM ub7BmњxVgH `@m/$ˉ LXA&x })xVGmvTH?Q=x-GEӦbqp.2VC[ژ<:N`ZXV^8uA9GI&zNaY)sx[,,ծ<Ƥ[nU/4 '`ǻsƲȵveyAmk\ YjlJhf0oxэMh?CY!$$n!IH')1xH.paJDDJE [}NmNks'ϾȷvOQm?> iQyK;<@^MNMTz{K[bK& - /WAnಕ#8ZO"{+#\A۲lUb;+h-II4]IJC)kQc)*paaQE弴x7ߣL5ܼt wcrfD M '$1/X!.:y #M(;F3zCI$o;sG_>1S\uey5ˡ0(&b"\(lc1rm\hn ,+.j*#4ۭ+ &E"hbM/#} 5,Vq4ֲ-T2:tmBsG>PP75qqH:f4[˛K4&. C~ɕ>-}PZmm_XB~ƓΠi9xkTA:OwFR1XvoA@."1P9S4&:ۋwpFniU:1ClR!na AXwQ8}sG'XB8ީ;&$:QMΈݲwbw)sv#uVԒ!e}?`\Rbm;Z;- *09:Lpn;0$ \n2և\sr#&w&vUrnO.H AMkZ{Uܰ흀20 ۂɎsR?xN˂/ky̯"ZYMC} ]P[ Zp$ ̧!ajWP|jaE3 ;`4B`yꑉwS"8|1WrGU0[42f'&i݋XYsۓ@:IhKt'+ OR]ӖzHۥ$y=kN&I,ƿ'7XJW{B;c]LCewˣ^Yd@T\lS'rXdž3%\ Qё{a2#mtPv8T f(JĻ1>9wi ؕiT+eNGo!jn؏6'8 rS { I`W0QBa2F$k}FkQܳ2Y`I8vòlVÊ23u,BTs0Nj)!>`=aZ@s+hRJ08z\+XAF('t|Wao9 7Jm:CTU][oI0}\? L99+ $Jal濝!\MF .loDI1pr*9M^}_ ԱbgS9b UkU:m&鿓vIGiH͓ȲM8nr=CYAIބsY+pCc͎kT_oʹBo'CE:K$(xmGX6}Wzn67 5eyUŘEwY4Y2Bhb+*AK>~ Mz@fԍ)an^M 8RE S :{@zS̬ i h. |F̣hxڵAK̀?T:Vu[oTDARDnIxvP}UҎS=ͼ8~4@k-27SM:}y7=%YCG(AUE r`PFjI*Hǯ""|_6IK 3߸b5@{1imc(0.G>@AiX90NJ:/ 7 W#6+NzJTou~wWi 22 m5r1kK&X2.Wt J Eǥ2Ng'V%s{mV0S-ӧ"+Łr,%  o^ 2DSC &VTAEMhf+!uߙ"ߪ7?6ʿv"cэDw1&t~-<ϝ\#mI#}Xbx|b*ʪX[ x!l[x|RTh߿Uuw+ ztXܶ@ 7NO7e{iEK _*5^*@ȳNf vrW}=wQ5L5ٻ#[>{~[(ai;[aKN0VC%s;h M(ߖDH.u4@-ŒrI) Vlr$?|LwbU_u#< 䱴Z%bN[ܴ-76+ХtQQ#:ջUC_4Y8-/Rg_IW fLz5^ZW94՗* 2_zKṬb@ǽAA  Ƙ_#Ѧ Ӆ8nhxSr|*?p(vl: .\I)ѶQ@R/5i`~W+ #`&*!qsC k\ u2%6`d[,͆ (pgpb0J #E*YP]v-; wi& kLE[UBH,i\@Ym!lp؃ZC-)1liOu%VmI Ʌ3oqDy'В>/$]$&)W֣m$2|dxѶf!I}|dcK2J}*;Dy{"#žx>NˎU9$}hĠ"C0Q e7j[ϩSWĺGgaOI"\`=x \q"?&Q[z5C!9*g'xJ5H流\.<5[tsu,6KQ8&fV1xbK_49+[*0|L:Ԇ.P"f%~ʯvs}8-L:`PqY j@-4RebzIPF2x ˰QXa|\6 g<$0#3|h.r^ d?yu=¤q`ٕ_BDK[6JX2,@r B?c ڶP}]-P~^|`RkZw>XGt`16+U=u:J]]y_z6OHPWcv0\?8?r/°Xŏr^df'W/dX6ߩ3բQt*wZ7;g+_M5j R.C#Ka E(/4jG^ \#Ǹܛ)ϳP<2LKNpr-93bų{Bz"$iZpbF3a U}JvnZw( C>^5;OKJxx''hiл&R5K ~+ρS͇2}N V*14wa/>N#vS5@Q="MiQ8 cl$0u8OE|w*4"Q1a)v9=gSkśK(eʌx]U R2y{ T(&Ą+~R5/iX k|iRg΋Z6!~dL Һ":xbUiti 2 )=~!̡ev+ VLW1nEFrx)iCE",p1m?UI 0y(|KX Pv#VMIUu)\A 4(z'|ܡm>= Ca)vK/ <2w[Q"Gֱ |91):xc<Bd pS[Fk/)-lzG˦,2[?b$I%rNg&y S1R-jҟu%?T?{jw.SJ_m[ BmG:>ɪ .ܘV)rY@*nk:Yt=:i1^@N `7~VC&0D!,YoT6.]XzXf|`2?fVqzHXm^-b9B7)"d@WV|m6koB@Y=ᔮGa9^ZoL9(m>lW~!ƘЕY9.b3d8m˂^w7>V H`-Q7"H{#|c,'m5\dT v2`|dog\>}&#A|`PGNpA&l-ciz_ۯMm2X71~>֞}QbCI|+hb>3'X1%blOCfzp\* ȷnoaǙLh-(ZiWiN89tJP' dIo"圎5 Cz[5eFL,zbBz,l>?)Rqʲү+Q _c *)SrYi?e~(,ePf"pFB:w3neFrlQ^EQ6b,U{{Y,vV Nξ"F6sAbm ,h,ߨ ;ePWz07;_`$d5(*(*h􄫄nH!+-Q''jBiqpU#c}0&AFj+gYP>+x3wMfrB#Dg˹($b nCaC CeA6~R!b`I|Y͵ӈ&5vu:7B[.Xn@$T xq<#L=|FTXv>3I4V?a_yĶO k_C_O5N8c 0DERG x^~s$PvtzhH/&Mμ 7dѭWґ[wSr< ^[ɞ^E8>~ZF]WIF$.Q?68h g>ASA:uNhV ;Nrh4gveyx+t1}nV S 'c≯1`-耷V1dawꕀNc{>IT޸1 1eC;'D/r,G)0nv%CWthdos+4ztwG~ĈY<:C2#/w||e^g]Bi{p/N9nG>+ )a Lj O`8X8(J"Ҵ\}Ȉ=3EJrBrMu%]D4Kb]s0ԷGNo$A8kD ғ7OO!xμ}8P]t2GjG E)g+S}"UۺQg,}]CZ-jCvgp&L "~+ic*2h^7卩gwEPZѶ * s IꥋLYKQ1aZ!RGZ&lL(pSV5耡} Jb#^ް+foXbk^ g`W)# e@mחxC zQ-1ٝQ%$EQuі!#Qi_1iꎞ&(9W+9 h%B,'qC>m4%!glͳz)1LUL0>wc9[C,643oLSۈ)Pfo- SH*H=QznZٴQp@#9Ng@\=}xbGE3gS冺-%tY0ܩ# !\M[p9 [\Y9ςQJj0 we@Of}Lw<_thlΰS3du-yun ;$Lca*jj bb,/E{^Ӂ#Y9f.mAoyQ i{MykKA;mxSPA̳S~ 7䫯 Yth J3"(0~8U^śVcy΍6#Y_0adx(TwbUvmQc-P8T*V2$I/Xy "@n!*w0H;`gWZw #lwTE'w}y pE90w&6"Ҵ axh:w삂BwN#0%LJ>c:ڀ&XO>h ȯ4},f}ldRF[7O⢨>)g_`Iר e™;UcDLJ]p GāEjU#+5V[]ȶz$,$'|N"( 7*1M"G^iiyZdB #>{D0 UT=yTȴqT֓!ʊ] }lC [*),G|Sz֙yvj]W״ݻTB;Xx[4 ς#Wkuiʂ98i"o *x82 3#E¸w!}*iN,d6kgI)vnaHS_z[D43'&i2$=%V"uZGrˤxC ۑ\nj8n_YGN9r=j!ϭC4+OV*ҦIZlwF]o% g%RO>P.2p{P K3!V)VG6((E/$(es Nw b8lY2np0;)DsC[@aDw]֥@ `]|-lQfV'nxu#> >G+_&"<3$7` Lhjus:V>i*fzO0薺_c}ʃ-xI A`yd'n=ɷ1& B=ҹ CEyIߧ-VOs?vΉقHu1 !Tb YJe4f2MXz#DpM ̞ ݩlzO [z<0 nηWPQdGsܔ׻x^T)~]DG;wrղ>r5Q u:<3=%0Kһ@~IbN vr9rDM[Hz,^nlo8 !uxnt(@s(26/'~tAƣSL,<06YߪEi30Ƴʭ Q>˛u- bj\BV^>[(roh&IkEHvhrLfZhO ʼnViX)t de8Й~(R\rbl#. oΌ!6R]VL_K;5&Njr2&S~XM\2[ov lx/;RWh6{=?Ѫ)K Q! jIcPaygb8< \Ů_}"|&)$ %xގ2ݺ0mGFtIzvO9seMO8$\L;F0]t߅ -h &oOfhxe299{Z2: si 'PXƿiez-(MwmSXGPG&[?fa&T/ԆTT86f|?( 98"w55"TN R/qݞJ( I90xpQ{.;c U UaZS+\\}'fLJ5*Ń}?A N[TO18f 4؏J0;YCE ƃGꘝ R̃N=S4 O-J?s8+'1Ua$*3I؋H*%לZ Jtw:(""\`_e@; We|ʞMĺ0 24jʇRf1ٹD=Gq(婯hLw6EKҽyO5H UNح0e3eg Xb=G4wy 8.$^rC}GtR`rռN֕uixO3 깙ڱGqa\<$U:&VD1 Ix{D]qy ϲQg5Fb;{eIց]<М sڦU& '$K?,ChJ=3OV1_/&6S8TZvU#Zݪ{]Wm8C{ǂ4boxY JQsApx0XN]r;HULGVZ. Y]I "pOQ(cDfńX rz+9SF~z +-+3pg'm:><1Ө4@'\c`oyeRJ[E:r9#$Y ބ '?3ae XQ*G{=M[Gp_nMrx] + H70hi<1׎vP9$РI3Mhi7s]c :UFvXՁ"yAƌ9z({EAYW9%re |ؘdU-ۖ\1.ޙ!ܳ=OÓdڴ.\f@jpc#7' w2^fp6XQKf\`]2ࣝ  ԜN/5.k{`ՄHM Ig A)_9>mWג¶_},Lk/FZBƄ'Of]O>Q 1@T}O@ G; xvQ`C[,I8i}ɼUC|xE%ˁ-C&,9?3ڏfB%mac0>)Slٸ)4d'J|e5ݕ5`_IJM, 3i6u;Adg}311h"Y +q;eIE_kN]#5ǯI4,V1:$jNgM< K0AnPÖ4ƻl˦t(y: ՁabYXZvE"u8j֖mYdd69Ü[X9@ >ܐ\ڋOLV0)nӧEIndJj/Bo=(Hskoؕ'Vʸs6yu}>7 e0Π51_4zѧ+wB6ҭd} 0sʖ3lo \e;8q3Yhah:)noпOy(4u>(LRjPm𦸂$dtՙ0G몥OŔ%L1RfߖBw= =7dIˈt"_u,6[s\]"5d#Ekja$9QzB.liO9Y+;3߶j!86ŮyJrYWy?8 1<*WV * p}d Z&h|^Z$C)fdY 4S s{&{scKm 1~aR<¦#uZJhv "%f0m' $ `ܜ#;*9ۡD9l-ocdSʅ,qd<|vXQAäzЁ+)lb!/j ydѲ|ԿiMsü $[^mq=s4mtb>\$iEO9G8c_4ca6u_u73}yrZM|evS'x&8fH@X'5#q(BX]?ju c|Toc2Y TM`3"OBv$'j[8߰"Ⱦ }|MrS'*s;֧'e򏶪7I!^<{ X}^+8)Yl6QƳ&O?Wv @@gҊW*<@FYMs;O%Y%D\vHr, N |f'cvy-pI5Y`1(NAL%18EwO`:`a *`Q'M:r}N{~ )wо.ӫ-Eg}Q|EwzU$U_ lMt uK.BTNZdGϩLS{\}eYQԲ/[Oרtlջ08vkkg6W&h(ݟFDn$]SZM\ĔXkCzw@9h㸎Rv~!J1 }a#KP͡Dʋ:O.ܙ{F<-VNMgz)/?W8d9"Í6$hx&/_}zD[^Eo<~1o~ 'DfΊopP(iEr1z;I<lk@Ep&FZ&C2' t2Q4\% 9+Iؼ5*:EM?_md6h:gaQhrcs-/P;)weLhPVӰ#zB,_:4j8 x#&q;]揩kQŝÑ.5>yڻS̜,SuiuR=Ol7DdGh7`,3tbH lx.%u`iwKZ+5b\FoEt?>΍K$}"ZUHW_U_QXCFyk&/j -Ƙ6dB%6z'-clh>>iրi1aׁ类BN:Ȅvꄝxwnm }'G"{Cᐈ:N\haNQMk$T d e-)4ݻS )⩻NS !l;:\w2IYY[(S)+ ۰JxV2qkxkÎ1΄JCdhR0G[#n0^=[C2Bt␠"X#yhPU@A=I²-U%MƱ,hNh̦5s#@}BDq7$s@ M,|pCudo|1 SG/ϏSIO*%0Wt`d9&4-rE$5x^+_n}0cixj}wksE!4veP>1NkA kms7B^?iU.m1D:]K&.fY=zkrҊf{bRq>O3B/j((EؕD.*͠ 16jTeo?< zbR{#dJG.g=jopW#5fJNg'0}H-n:dM[91ˑ|',9 ėYցᾥ܃,.ƫ;)>fU,̃ FM'켮eo gU-.412ͰAZ\Sw *SA捡?k]7&1t˪"߮ cUڈ ~  .d nxe.slC3hxAr2џ+>`g{bD8vz t ^¨8}NS=췺-vz6 |4J[c9pn6+vY.@̈́m8SZWqٖ rUPv4'5 a-;w 5] jg) 0I9ߓ=0R(]u'Y3Oat!*EruA-Kp>H 7[Bv/s9#(m'ӭَs+I$à /c2f;X[7}*ce8*M !P;n`u$Ơ2M͚ޜcILiyrWGt:{=zwQܬ@ӿ-7)$N:,ի $_,!kWpnN 5HWZ$AV -!ED 1 4٭>AW<?\>d;_@7&\L/2п:BwCȘy+-LxemaPD'<=z͎>WhД~}:tTw8e -6E`/s1dm&\FKƘQ{&idVx؍ذ]!*Hә4pH֤ކu#`߹_@[-BYK<Sv*Mʾd7d"ݮ)(BZ?pgu޳"'9z x6Ϊ: K^ɸdyaՔ/>pIi9Czذ$OfޓK_l6`>A R[ `fj a< j$:w[@ʸd3&\Tia-s_3څqGuG{亐FnѶ'L/[esPcmqUpeyk+\0Ldeָ O W/} ےU; K!xѐQ: NU&AQKsY˧@i [arF:"SSO7:iaG8"6Uجl.(eO73+ڞL[4AVwq{ cd f̈́YcJIm.:5{,+"GIdjgNx𐃢>l[F9gWuIYye;do&2NPW9i NwB/M-FVe7_pJҀJ|V-W4Í&-!3G2#Hc*RM4xۆCtҹ4: }y8 |s)9@b1eVy=Y¬;Ez/}CPfx3%Zӡt WDwxnuf[5G;v%΍`r+Ɯ>֨& a#y&tx/iHSP Y1Qn<*iۈ>hkyA,韌][w3 -FJH=neD5#ƫ&1FE0y48ϴOsl>sBJ*,L !1C`9gD ` ّiOmǮ3ۤ'=y4꿰4\ge:E#2avc{c `N o󈷙 =b-vg_p ޼a@&JeRl"";tΥx;y3k3JlYt M&Rzs!! 3Pc0asr |p}1B)̹eZ(&_[,2#~x8q.~R Ju>ch.v׹U9BnbRS֧DZ7`'ŇMOdkc&0\#1 T7;Id;] Lp0fU&[FX)Dg@~oJl.9w= dZh`?;[ \Os9uQ|dhC$ H~e&Nv GLP1P4!'\+LJxw̄MW/4.@?X-PV* *ֈyz2L/ߓo6c ֹW)r"VZ 4M~JLoL=u/*X?_L,c>#)QN(\ Y C"HI.C_1~waωSm:Qx%_:ZJc)]|Hd+eS{LLY!Y,}!iKl4n{2\'Y]G2y 5WP0BTxv !8JͶj!ǶY ,M bb2/ *vZWx(+!)h,r66j0mX,M-ÌRsÍ85=GxWxQ$25RX|hWj3LXЦ'ڰ)P5{tKz.ޚЩ2 W|i}_/zBf+h"Ul3P# + xW5_Cxtn8B37(+&k1g&G8áov7mң_J !>+Ġ-ސB$ثҋ``k`m0ޢ0f;GzR]Y1;RX>C]3{|U=[x봜#I{-[pO$-6΀yQ)jO5~dۃL#r%Ti ٣،g$`1qJE#⪘StRE}P+:RX 4TUqG|NS];~#J`Ttf3>1ДtVVF_mfZ7t8Q޷hH\QbVth" QP,g7%x뚧x j&냦c_%{m:NG~ TI+Q3:b]N 3R"/xժ LñO*U&)qߒOvݷhè%#'NW_p遱:x$#f:n݅OYlMs;-# .'Q \+0u?keZo1P½ճ:ˏm #E`hfz9k+GLU4=u 5R,>ꨛb1_#FBB3KI$^؜gxG@U"#9 x'ސ2kl`f*t+S,O[Alի%h6npO?E#&PtrBa݇1O Pw ?e.?7[pX-k R$Ay_( H,"+ xzG+`5f@󿬠&oZH8"l-6-ܭYl( Ċ7(W7P#po,a%QJ%M}7+·v٩_[f4iB.VEhB`{m hy3~.}QRb.W~!Y.w9mNZ`x/%kPp!M4ߛ? X֙JI;ŋt8Noӗw) kJU/KDE@Rߜz < FSr߽ Pg i.~Y>&r,fKDye8EH6no$Q ApMdogF;",U @`I}wL"E k+Cikr鑜ŚPBv^ s7l\TL,pT Ryc)=dfg^c=^ͷ-`ެ&<9kMPG.*p?׸/E M5e`p 0TCcur) XA]& ! vf*5ur<&S3rȰ+sHseY=41D߅ xv֩e<3_1 ᙭tBY3 u@C+qfՂ( kۓꝯFeq2>(,e/7Mvy6&Vޢ?._D72%- yY ;YDO ՝P}{s)f-ͪXdb3G{S?N'ym,٪nGñ_; lDFCB0<"M_u69RrT$Wub/e1Q/:L=@Y17p `5}AIP"~5kyJ[dD;hot\*H[+/X)_F]i07\im plnvCEZ#)l 2%5Ʊ0֞, ¡nVK:lQ;2RHKX;?r?}f'LJG3 5i<,`l3['*H_ Pm{܈!z=oKJl,*o^Y $T`Wf;z|E?{l!Nv p(裪TgJ'Ljúw1o;-!.t'Ijc˰Tכ!紛!@wcI2C% s"PYRɲ9:'gN{mn͎ Yr.\MWtFLo6T +L9 {JckC+ ZJъ4 #Sͷ|*տUPObEm֜lBM'8 m7~%vC܄Rx&HggS(cp=Q X xMQDp+]$lء3ຈ_$Q@ @(giI|T˵wOxF}AGr^hIvi~4iI(؁c D$WǮc( r|=KݣO6LٴJ"./{|@i iuk=mw*G$/6?طsmoJ`%AU!Gn\]PuG'& G 9˭=-V_k\H;<ypoSS[z.D+Т:. ,Bi s?sQII%t\5F¡ʊ/vo,)|EԻb2px^Rk]>H ?>?-#b.7gүM|DT>҈揇M qثfZT n+-]/X*2A[Oy+9}oy@or\FLDsxT@y;.3>SK3YNQ({}&pw9N: uġ`hT~#S,>e+;d#=9J#!](v[soFW Ew j_p>xxN:xJH #$ܖd u21\{2U:[Oլg_d *\xwL1& _`.K;U6q.)61K1 捒kDM5p(PjlM d*a}k]eOǀ(8-=H+$ @s^SMsu0y$RDY^;vsի2qޥO/9gLNH=%ͫ4@޹$れ]s3tڰ?$pO<".x8G1p}ŃC]rj{o/& gfr& "zs`8} ,qWqGpeTF7:p[q b Y b+N;wҼs 6]-<ےV6$Z+z!G _'%35FP;@RI9C6ԽAP2 /CF "od\xa uwfiҏ:"Uᄗ ƓoLge~WC% 7]?%b!#l?Ь(]ٛm䛃vMujX4ׇ94ƅ[@wG_YEA'n 7pq`N%8Aj?BV%"8UaN:3ʒtմmcMY.wO#w-6l“~iå洛*#֠5&8ִ.Y@ `;\8_\TH4ʣ.=U5@/lϷzJ1TbNL4 ,>_]t.ffJ[E"x}5Ûf=k tx4O8H;Q:9ׂtY2a eQ\ xq]9r#\XgH߯H 'PhlĻRrÇ- ZƠfH^B,l!o/=UF>?{deIROP`Na0 d`d$SClg o؀oJbf 5-SwV-]CAt&aziG쎇&>$R6 l+|iz\d(Ulr} FְW$wqټWQ'fC/&9j@BS8ɞAYF\Arn.#p!P=k1K%*&R#t>!;؅~vj ?/v.CdBvG w"xP֐hJQ]{$yY5M֒D7:t9S=P7]?o *+;ؚ.YU![9{*ąw)Ȣ21Cf^c%W;[ |,I'm'SBZf=&o1109;_"Q:zC'Y %`{8dۯFIαvz/w?q,yʞJˢtPQ>ƌa[qs\P Hf- "=!&Q~/;+"JOcKU;>P Af2Lr-yT+;P~xU'"=0 &Դ"L[C4զe졨zw4C%FʳBȪ?kR` ݑa = 0M$ބTWx[[AB䱟s ~_$0Q S2Q`5':AѲ˥qЎ6їq Qp%L?JWdx/EZQ|\}FP|Sm70Jk/d04dY={۴m՗S2UbH>JM;UZr)H.yHTeTD:pz@{edYYC+EVf)-z'x4.ve݊MħZ}!4"^Af(|#ۭ<ȁv@ +frIYͽ!3P.(m.W'Ж:G3uVafr5HѕMxS:Zg(@~/c`-fɱn3.23g1E?-]#v&6I +9"S5s<;eJռzѴz;wAfX"ώ}BdUwNF/5C,>ߧ9 J;?b L<-mwU;\GWK~w>~PHms30\kjw3 scd%9)NWl+PҲe$` .pQAW'z7Jxm 6U o#Mzw+{O%6$qzX VI =np؜ҧ0,8 NG!dL??[,GH`©)XYĎ" wG$̚$}wnE- fhZm8:9 x겥c+uB7`f2)=W>ҰvI׼S5igj@tBssL#o@:g3RrwwK)lwl;֦MH10ݫ1Mo/ws;okbW?^N1] ԧ> Wx &K@=l,HVX튀|P֪LJ.? u-hSR`gC)L)SZ)AiR-ɂ Zte~;ddPAotIV[my؝Ӧj|,A E5MdmpijSO:F)gd)8fUg&b!f]TYn3ӑpp{*4? Z}"w,EL V=Gז'fyO; Ym)*࿄a Kj 4*^,`*in_i(+hKؔ-S wGmݿvZ6簔+gt"*ȫ<2E,@p+tsp . o\uT.Bi1΅Oo _!;m,2#q{VDិ2إ>S:ԵŮQFyz& ;*m Dӂ͑d'-"6*5G@ 6n×|~(Tg܈wSyH.l(kZgE Qk}yBYW @tj5e57E]$cȊG` l{=|d>g36$8ɒ+}y҉`>$YX*.|֙ 9V"G:W˽w]\] O]oRQu jF{CK^+m(#aD)Cпl,Jvh-XyZ"j\!fG:ɦ"Cuu;CE)L"~&lv]g2=z>IEDZu`n$ՆfTDA.. DAReoj{&a;~Kr[jUR`Ш23)6I 7g{0qhO%X⶟.e{^ h"0k OI(`ڣťC&}597w(i\y@"}~ڦ$t:aFlY̾.H9w?5Ts`E:.ZRs 'dhP}~95q enH8bi X})7;rPtDl>_:C.~RN7Z HnN؀:\npLg˦m7PH-}]db1xd5K6//+`C5ՒjV$)>'$4IV:lNȌg`4|q2*԰ہ°-Jo5+g.\.R@5Z7"qPߝRߏtuh}wz2N\Z4W=!'Hq۬hj >iXMz<&ոf ~*fٴ;0pua@YOb,05CylVöۡF )#(A1 j >(1 0+qmܶBXƳ ~릚PwdTUG/EvC&yhd;KVzjuVe:4FcNqjL;Q:=j@LV0L$@+Jg$U `s헂:}Zz !4 ]!|7WWk-']tIJs 07iv1Ց[{X?0qHЂ%D z1L4&2B3TI/6*LCXGtz;Dxs_dh_W t\J;0y|K@o~Jx̿z5ǜ^208$sz~ >T ٢NcfRpX&O~{G f3f@>k sш#K͛fxMiT~9j”|+jg'F\13"If_4р{!V1߂;]0DǷ`gkNƓuEO9)7ݚX^m Ӊoϗ9{MwoumBT9R80Ԉ_˷[MN2Qj 9BoLebs/^ҽzfW+zGO_ !Zg/e&mu^fz[L%lA22)'L5pu܏Bpː,YRGoCݰ pۨM ?:e8M%4@zѫefT دbp\KYcTФ[++!W /!؈ Bzqc:T'(jΐєC"`R2^bYkLڽ : ]B&&}WƆB 6"aI9kXF>-.|9˩K^h+{La1 ӐUw"o#LB2V`eS;TCKug%ʎ@!fbRi.ON>6av:)}b|gGQ)hMx }USY{K$Ji`R]s]V>LǨ˱{T7'Gٌ\R^jmuPu+@pPj:ٍ^w)&c1GZwB,/9|$7"7_--2TszS49exo ʂ#JCtYmQ=3_cu9;t@߭N\ &no࢛q9(jgKK%Wp壘x9Tu -片/;Y,CTc#)h%HI(J)^pTĊFiu7"g٪.ϕX<;v">E~ws 62BfS@C,&)!oc˭.x0>q%xQHf"_ Bသt{XO j4ˊBAٻw?/~!2;iJqKaDLݶ\?UlL7U8ꇗt '{WiJ*odgR+MDhzEK,$,DUnږ z?sfόd<+X'QQ::y凡4^z@N0Kjh+ec 7N >4i>|*D15I͌,۱߱dmNlC0LYvV&rIB5Lhu 3,*x/wS!26,DAIu՛/v/VxH%Yg\ڶ˽M3رw=ajmYln蘊X%s#gNw.fG2E'<$O4^@|F) tANBfۮצ7Iu(b(@ў,"[MV%1/6 A-oӛ!+E Zo eO/r8P՗XMX$124꒓zӻJ쐯S&Dx^rEJ"0MQnOijȰSLn osҤgJhl(V^oܜ%D\ `cOC{]g~\ 459bK<ZU8͆x׌[ f~kSH~S2i R?K=F~dKZ(_ 셀h kϫoF |ٸP;q/B2 =^ WOL֎es? #M$1_ة%g p="ϸ[yJg8%,}etܾ张` bgiVidUϮdQ1&KܧOB8?x+JZO1/uJe9dl(J̰rh9Aڪp9d8ӡ0#|[ZrsBً~a9慬I.0^^>]784< X̘چ1aCspc-<.;c Ж/גTܥdp6A5l7M(t2Ե} KVIYt[s-9|fu218g0᱘.Mq^q`QW(OCW?yq Hf5֒L#"z*ޝʊ! 4U桤k 2BQ,65P'G+ɎiI#"EH80ol >3> :=-V:&yΠp&(|`p.=D)8}K/OJׇǦw/TYRRw WčxEC8~q^?tI5HE[~zi$X7<9ÒB\Oc84F+$0Pj%.ic9Y"6&IcOs-RmvgXW}+c;=PP='r`dka]m0Zp n/Ks"EmF;;4UD-T$dAXȫ*ȜVVJU>@=MÙC=7~6v۵*%}B̗ƼîA /@$~t3+#I]zfLlj;gha4'J_^ [&A;0jf|9^w."s\-RNrpA1d?j˱\d| S|dc5{q64̒2E g Y=*KmAyKMN6 !^2˔ŝ:D#Fdžbayv#ɮ udUVfn= YSiqTZvO嬧s8+a&ZJ:k(5LU{0};MWp3库rt[UDKxi"~\ErA?Ѻ 3S1PdtߣNT Bs>Ux|//#^\\?Aݗ'_ɥl;Q)3zRCw i#z{g#Jߒ̸e!9g.ESY=HQzX<T˷ ¹iízxy W?hK J5WQluFNtXZXXҳ0~D~ œ 4H [ ,thȮ4 -f`qC!kmRP٠$] xbI/߭QukZr/sg;5.+VQgX Ped:BC4xڒqFh^-0曅,GaJ)aA@zsq7ď*R}e6hy3~U(}W#H%+ #x:bN4|u%ǃaP\?H\׼{S'əx[1F7>.Y&CUqW(=FovNQ 0{]rykoݰ%P1EϩS=1ZC#O_0EDg]A2-I 6"r uA@( wa.H96b{ Xd>|:-QIn|aj9Olb`;nJYe/4r4zq^ۚnVe\y5&6\5 -x4< 5Z4q(L=j&d̆=OM', mۀ濍Xe3ERס.+>Ha.Z$MOAxRɱN\`}.P9gmx 7_#U'8-ʫ܊ Frѫd[X  %SDe~O ŕT> i|,m|n/Q`*TbT$kiK˽fU)~Նww Ԑ^TAc- kFA;|EՎԆj.ja,D G'wZ?[+X1|ֱi6lzslWYrvاt9dj\Ҁ_ B4kmWW. ,n KM-DIږULƝy3 G/ |t> 禎d`_lwu}stq=Ş 4+DtRW-Y.6= 34Y~GϯT ԔC |%X-fA}R m@eJ4oQjG -D'2]3šNuqWv_YOuN/ (tlGjZE5hhLDk= )!Dltܟ_Ƿ;+2" `-+/~9nրȒ""\ۃ#KבdyXC5t <$γugV1PZ-cx8D7yW{d^,"hRL= r9հ36NCr}6* VZ{4g5Rjga~7`Dn=aH@"Cf<5"Yޏ#;]6!19^~ۥu=b]V:hAP յFk,)~rz}V3J{ Bр2؄UJk|& OXS9 wXhjt~k1x;VXe0EGQFCŗ0 35(sfOPQֆ:D?]6 oVDh z?rų۩6CTR:R?&X{m2O+J/SSk<-/-sc;He7=W)lJ0Zq!t4?+g_?!GxWGF?K^Xu6 (P[zx5yF/:cwc \(c`QKϾCj\y@7F nSD: ܤn=7&bTshFF/r>4aug)w Nץ(Vlum!B[]Uŏ<__dHw, gDwez~c!Lz*=͹7O2?ͧZbP2 aukN\C|.gvnVM?S&  CL2F NH'%r)1u*f?RO맯20GX6ʀݩ e<?Yb$/1U oT(˗_DNcTxՅuYKH#0ӳ\`%B/~ٲl8}-E(Mboalj*֤87!sK"r 4$|;B 62X_˹5lg=˥fUzu5OϷ>n5/bۢªʖ"$BH}-Ʒ7О|,aLo!0jgY4Z~숢z?Tȣ6Qwl xFSڃ-6\1|VvAS{oPEP?H4SH< BLZ}yIp0+t~5OMz$RV\ .iL|dZ=J^q\b[χ T2 -Eh<%5{)[cEm;$AP?/Z7B| PfgS)n` Jzf|\b?^刯skS*&jEm4pMi~_wT'gnKzi8  U@87\? q|n[O˱Vye oG4{8SI-r߶6\:xn$n5O閥_<VæuiH3`Jc9 BL鵹#|=Op3wa {N2 j V\Ftt{uR: vg T1`&8Oy]#Q*)}N5al2 8k.gk&@' eUMcKh $`!╴N]o,[μf<;{fk-cM3 dRFi!0GdUB+K6+R_VV+V9)6Tj /yyК.‹9~">Ë"mpbxyxWo`APXg#Ծ!3g:;sm ^OYN=E8EqػaF1{Z)C* (s} It)wk͛MܦǴpn:sQ/sR i"2B.y9^ qeMJ\euݨQkԶdžN? ۻM;L@!̓Zc@&'=IV:Nw dهQj*^uڹ V%JF8AH>x/Mi0SqNLIr.H ~",81ܲjB" ӿW]U1E(#  fQa"EbZ/6ν [78^ 3RɅMxWQ|e ej9zj<\g&4^Cu;vjzǩ3 A02h$"uWS_ufѾ2^v9 352BW2K7;uR9˻0 i;HL^x̿~C"x81`naforeaŞtn0a(B-eB>=T|:Γyk[M7"J 񂍃/VNGJ"-.B1My9dUk1hOik}p C|m+r4 3.O+9s^&LV}`{+%)X%_V!nM98vƁQd GdӞXrPی2\ ،L %i1w mJ6%;ͅ TnۨF_E=\mjdD}>/gr*:>:'=(~&kBN/l_40ut.`|I열Ѵ[E\n`GS}`ꋇ.c+ ="bN嚩)4X;"g g0yMU6je.mDՒJ_ !8&Ky!sٍߪ"R\[A|nQ+]nفBZX3%I棇r ,e 3ݶbaNU7t%7KQhFI{3Nؼ~][)X3XWh@I }~:&}}l DBW)Wg?1A)!W]2Êڶ3ʫH %WGDlpe5!tf LkrkpR)du6Auet?Nt 0̧[?NFM>Q@1$\(Tן"JkSL~S\б[ʮ,[†Ky>cxW1N硎d f~cc Xr糰N_|Iʹhw>8Nz>4+m `xYB)j;P)+PHC_ɕDo`*人[*"zbWC fqlHOtEĝ|rgs{ ^H;s#75 TvO?@<v7.v=Ŵ0[Fs>p#U /G%79hh0ӣ =s?aBèٽ [Z)!%O?&bD[gaR ;4w<</ȊS$lFwg kVϬ T' ᚼVBq|f Ŵ{%hǗ)hG[e-֢S+Pc-h7PY`m9T2?>b-aj#D'ѭ&AӲ TI1bWX!@v엇je rd kR%!.D " [cr5x̭joZBbW1 TR\մ?aw75,kJ)JCP@׀* M> rk*@ח)/4\;hαŐ_yWo A:rȡXsv/e;5K)S=`R{a⓶/_Y^e2]-tJ2 F\C#NKa2M}Nd\6pSDv=,60f]=9۲"Նؼ$ޜիJ^x@[dȆ SPc w<웜:ۆT q4QDzn3?v y=ޥbj3Ȋ1W |O2A<,#EWlc{Nzۆ@ז\'790 7y-gs׈3 8ɧmYx>"".u̫(E?򩴢NmYv iG;h3Ny xC8&{~NVx \=H\%AT~,{dYk a!šM,~2O]_"Z4? EGH|䦰Mˌ<4\CM~19K{,7'$'˃E(\0@l4d57uG<[/2 Q=gǼ.fB)i ʤy8W+HpPx`g]p'D: 8*H}=X28VJ/ Qˣ_a D}E43?]O T]c Bpt4]$)L*&&xGL蛑l(3ZiiYc.tmA48꩟q`>XvcCG͵AF)<3aCh{|MN)`ҏ2^(-f RrP4kN_Oܴ~s4~{D9( W4GBUQm!iXּt7q!aP#\MJvNoEFr5>"rGIфR sxև>L~;16:Uzׂ`58i~z0:=1\t֍+Y/2n!7B]&̲nX5dmxeu, D]Cϓai}MSc`W >!5bbCN )-M#"sW ײ CW/}@Ug0E/GlՇD.^ЫhSfH('GAL-XwYnrzgd:nwKmh!8iL2`)K^I j wݤձJ@A2b'Ғ,<HĽ^}Yly} rs^4<>u-ӋUá)9tW܋w SV x?Jڧa [(t#K/A=b B?*z{=~#@7UoͯB';43Hb6mT0cĹh%vhϤt?d#;:p{)SQa5- ZYW7ST!$GbfsYš]y,x&,>`uQXutssޕ!`kW?;]X ﲶ1$g gB9jFZ>k:rr6fE6)g)3t_!3.im%'hnC'`!|3B0`\K9$ovV[J͟H@Ij{th X} ωl{H;0ݽso<`.LQJJ~ eNz&h,(y' ɿ >,L%TzUY+Ժj%=V%tǗ  >Y8Ӗk'oNoT_f$7"eҖ0|Q1+/TgVG+YǥUPhb Q .y:]hN/Edl{86w՜'I]qRj^7 T_G$KWITԣuP X|jd j۩I}Rq*,<ģV5XT_hq3)uKyM`Rf _}1?^CzM6829-lv:2 jj \nEy%Y>] xmt 'K./g9n Z QT#IPU2uoYf*K͉9Fo9RRb% yE5g9*~wyz9 N M~k*٧D ڨGv2S58y!c[\@m}C 8H+͑E ϺTf>(dݙHX3PJ/\~E>'NOh yt[S'kdaqmcTD<8@' %+R?,ίܨ{ ͎n)r2f4U{ܐX-7H(WU^yFk t̑t8yLLAPHY9_ks{aԃ1i4|T^'5',.0 6ݗh)g@Z]4}W"N5p\i7Ւ-j\~#W^0) |d @fGx ^CŵIa:\C](x(^f6~B^% 朝s YVby6 qTG&>%ȑyA[ZJGe\w;>3Fސ]; W*˫1 !ّ[6EFK"Fi+zG'OkɺSn 4z>!2:Yޛ{kMcɂ#c.Bcz?lv/?Mδ&dfO #Gnʃ_3dU;j0NuGQJ ;u]W <^v94 ;*hZ:@-|D]@iK^S\G9sdTִʟhgLo]dkw қtj'Ϝ،DR?wI(+^Cڇ]vXΓG H،(ΗR>-ccP߿Ż_~V:`mRg.MА$麝vcۄlʛ#qQPMЁ֫ \7-W$6L3m"ql}7mݽÄCyj5dюH;p,H=vNH]*TB b^!J~۝@l9aQjOg "Xs&^_C #TوC%uYjݎ_E/4|pI,a#d~g SRҥxgfRkeUCZ^IH唺: /B¯{5F>?n.\ ZTLd1߼L>ٌe84 pWLHm0}a%`Z eu0Li=t QXprmcPlf Cp5|(b٘3fQċ׾L0bY?m'T 8$ZSu. @)׶vl)\y !RtW8c8\ N(mK@%cQwA>?! \r?d5fiRGo oL_-&jS4*ȃ7N'j/ϷtQ2ٺ=?Zm2'7h6憞?U)]|a)dGXHGج[+!݆Tq IlOY*i ꣛bp5 a@ޟכpE/&BqEMa`$.@6:;Hx45=Q,tK;}=VȞֺUD c 79WU4 ZS~#j6sPrSixaG9f͡@m/p7[ҫ* m͠O=k=ObC*@^zhL9xYD{~^ `%B ЈB.Fڅ`>:ǃ["/'?*#$팃M>g0I+`L\F VY&!l)zw ~#8 #?0&]W /%(M5"lذJC> J"Š Y2HNZ l#kٶUJ@BlIx?R$3SC@GPµe3KK:dFȥ J 3EO~/bFj϶>-.9-/U % Yw>%K㷎,IZ_=!^6a?LU)9ϋbT9w9zLK E86ЭJ|}L#؁, ChUBZEkpUp/w*q@LER{_^?}O)aQ4~܏@|ŌIaPVӺ|Q L1E]P#}\8Dw&Ruḃ赘Ey1DmhR{Hj?zͲ>*8!o>SfS2%h%vq(@!twu^gb2&؞+n\WjKsZ-YU)-Jka@1Y4+<$kޡSP*Z\ۘzv+8XyCMΈF]׌na^|S~oqHDU϶=,lƗJw$HԸunn}H9hd~H)D,pbn [p(r ! N[ItpRhC6#A xd,^Jҩe ~:_@S.&"o껖6P l_EQ-Af_–*:zA#%MC{BUOaTu&V.ltO{C .N=):Rหyhj# PH"Foι6sKu(g0 BgqbJξ̄do֡ҋ5  q{xN3P AlT.''=ۨ02xk/H:'TG?FXhN݀n~JG 04 T[;'[qUYeƸHMP̕ Bh1\ʊvmݪbfl+V~*{ hs=S.J%@& &[gT|V}.)v.z̥t/=4p.43 5d>M`9ì&!hBh-͍vDz(NNfj b|7a0m7EEy]E#6#Hj*CBW2pxiqgvψyBRwAVk6Cx 2JSumP"q ; m?mo$ӚDʩ $rP fg*Q (\uZTq^'DóI)XPRl4QFK*hUt8ip!BTY.+ y2'{Q`-+ OE[y  _o8u0yf|^ULuCʍf9MB|! eB'9(Ep1U% k&z&oR cL$ (X v̙p˜K}M 5G}7X$$xaY&[r7P-PѬ\UoO3htiPr,F wnI oNNjwK LEĨ5NyC8QX_ /[Hje``l8NCͯk]ϜQa; Vbi`ޭQRhig* M?v*SG#ek/HAa|2}҂ -{?s?Q%ڇk](BON@}~~Ez/-}w҅&IP~ >*/,A&Vf>D+2:&m X` ۽6K׹*?d]BV4yx[ mM=6C0$D& *FcRaFEIe b!p +C4x,h5iqe%*Kf\0vnG sZyot)lTa*H*XÖj?*W`yeh[%~c}l|IkjkCIOEld D&rP2^q cOҋ S SD_bTgM CT%S_4\M3˞{B >G6nЀ^f[zqPk $աN*q@9R?REJIVazjP41Tc?ZW GEw]P+nkE^&iE:kI`I.]$])S2x,'깉HQ7 H`P3w()KqRbHJΧo h.]/@98P:~m0A~78h  ;6HCzd;.nh-`+0qMݘf~䛍W !am>@RD>o.&b(`Gٔ#ΧVK(2 Gc*֡'33*7=Q3)I$ct(웣cc;oo"PY]X%; { *b 8cj1`}|KyA ?CI*[F9A1\(ON!}Ȩ;M`mFT3".)`kj_ЇnNCŠ`qAGC\(^(sv(3*KD.0`^M!;*4(ӟb=3Y{ngpVI@xoPACNWwo"2=&u6Y!FN嘹.ąmoS27GhЧ$q=s* Ix3ҷ?x^:(/|Y5Exq l.n!,kEY#)y+et}.+"e'Mv gf,8} ̓ w&dvdƠ'mظq3& ZYp2L[6`m e| ېt?P7Õܦ3R ȸS[HX'BGTEjr(^K( Ѷl21֒SbED>`1_s^{]sե <Lخ.%6lt7(CTl{hRb>ӥзʽao, ZcpJC6gNk ge{Dj~W[n{6϶j#uO} <<ڵ~mшs!t&M 5?7As7"k\e7x:7ӁQl1hM|i.A'IooRXpO,%łCo %`Siul)E )vzTQ=)4ܼNXwF 6%~2ٹshwsE/7Xg+-얇5D3V1 C uFk͂ٹ vCc\nC Ba嬗%o<ˈ5WPss4-a*/m$8Q▒3[ ŕJL;MW{p#U-lYϤ.Z>7kdG]='##-ݥgV"CKk>8", Sq:nm  d2{fw11HQf Qށ)X]ZB&f;GHawPB}Eat M)(W"㜑t0UئuK%$clI1 8ǧB 4KapP/oq$KsjS}+oZΤ>Ҳ Y$SK䔏T'?JM\ۑ[Ylre@){'~,4MzZsӴɹDNi} s*xr}^xЁyMRx@0(m4yaFSؤ9_EPHp j,s]#NZuD SUHhB7LA60֘_9Yٙ H2(!A6 bVP (.\[\Oօ{n_JMw=M;}.ŻN 8J8lsd å_T{RET UCyMy3bxiO)Iㅧ[˚SCQ8eȎ V AOߞ|R@{% f]nα ޱYEx,Y6]6({uC2Er- jRBƄq+nDm@ Ď@qC.eI; {Mgߍue>S(T陟v$EDXALpzDkM{*aa{>Zs l8l^C^Gm¾gMl[arp " ̛q ءpE/]&X;+z^B}1rnD>ryp<`SX$G[bFp]^~UVȿc~#Qe 镧t?WkJt (=Un9zZ0sWݬLax`k%bw;W{z@$uR tCbFQTr<ߴXATCbe ոg#u"26$ ߦse$!L'`>7›ّHXxvn`Ïsd˽ > OQT'Hu,8 PPW'c헚HLȀuPOl(ݖZ…;ئGj*Z9BJ,|^ Fj)HgnǐSϥdt,L{u4VO~ /*ٮRЋcӸSwLmv&>>o }‡tad9ѠN/r8fv/GQK}avL!VlyqH:{i" ©iv'!D`UX,9l5=N琧J[)Ep{~Iuӣ^,44sUw''ͣ8h<:Ѽn0KԬpoUNLU6ޅ@fHR^R?pMȉ6z)+5lZǤOOBg`~!yrvNCʼnu;#G6wTkFEƄ]G, $_᫭P)j/Qܴ1W~XO߲-5?Rlo*E|xHn ԡG .t[#0,1$q!^sɾ^ [}oncHi mr>$ Ŷ> :Qiw?`. CIǧ-Dy7yVGȐhvu;%\?͏?vEYZMmaS}/Gm8ɏvhe&f<;_ao!~=y@.`KaqnZdi Y//l/aB(D14-)+lhI[s{A7dA?)A=, ե@+{KȂ%F[n&9d*ćb\KfA$#u4}P1 ̒,NO4"|ƻ77Y r"b{O{{y 7[r Na$dKee~%RA޽47Γ6dc6}v3Db{S ֺT<>8;2(@]T*l]z\[Y/ ,MZ+O,ceuQ]:A+/j^^AM ( %8xt`y8#CB-jrvc}Z?wQ]܆ Zd_btIv߮f(J/!XUvM2ʍ{q~P$*of@o}{,*LfIk 5__%In~UGXqv/LYտ> E- :tC_j 'sɓ 8)i1$i1|J-oǤr>%VRYJi/@JInE)/<8`!z(Гerk@qjMPjz'A~:HJ|1e: BEb(a#`s/`nE8H&ծ,hg+`zBMYC.+ P 4ZU| \,AG῕Dx]X_ vE}pqw{oL, ~h,Jj8M=qeԍ˗sKAJ1~}oBAfJ1KlIkK? MpՈrHe_.lH1"P~8A@D^HQ'CF3tg<`ê"NZmYp•)*w c$H|*Тv( q?iW6\R?K.A2*Ѐ#Fp=W+tzk;?\ɾ^A;bF$U} <w*{D3AhGdmRkQ;Y!Ipt&]T/Pb _-8JX\kC2=6 4Mco.UX֔&Q6&r@h=LΗj6qCŪ3BBRJ+C9~SdP+Kي[x k> N$uY7e*{v[>mB@fkq0M77(ylAV孷۫A~Cj|7Q~q6' sܻ5 h6 D~S w1&%M@f(b hNZQp,O6;k{7FՎnB~<Z2%y:Xc,HA;['ٮ1Vې/ ~"lqo j%,vVf[&Db'ÄĿr갦^+%*DHp|Ѫrw.j]Ɔ8dGVA]P2?h#!pj: 5$q%y@~SX<\` 4%&]qlGS?g*B0cE&uo'6`G؅BOo1[o+Eg4 N!kwR%ZƝB2Ֆc0sʇf yS,nA}p,R/pvWF+ h/Y1C%?$.DGLNHG}[Ro\}/-m59H&=WȉCCݙgʛla#Ky[V|-:e՗P 63ܔuqdM\E,)eY2[b8b "×$T[)̽󶋓ϝuWnUhATiCo($S-y;?x&_Ąv3`efhDŽ=m#諊?3tn$_&=OǃBHgE,DӰ?g;;mtf]Xr2 z.v"T&od4=c!V:wX{%z}L~w?˓yuuTXVNenɤSUXnucgD{?ʯiy=]U՘<ے+n}Ď Ud-ў{ڋ4Kl\Gk7K AyJWYa7-'En _hm iSƘf$!ԾϽ?ZBv[wx 0xUy:ov򛰯` CCr4J 5a{-0K=l3Q<lQvx7',l +?< ğsD*Zh9Z΂3UAXh#Đ瘢@ cһ 5n5%* jVL/ t|MN"o -n@+2h%f} [ӡc}G5qX>=JÉ̌8L4UYAɗy'˽+m*褠}[)VQh=Q3uh9M`eZ< ɗmR-) DO, ^@ 1WsC*$Dbd гLC.'d9 ?4ѱIioT{LY~yEf؆s.ATjr]nv0dO6\7ٗ:|N_7#z-N6oM_Ljl[EVHÜv&5orFvbZC9ݨ=iȇj }a41h31ï2;k bp;s F.U=L^%_^ZCn M O޿$lVqgˌ5&'<,uM~U92I7/=(.gO2>dR9 BMﳋdvJqZr/2Yݘ{?$O6w/Uԥ^4o0RbGw,F^m}G eWx`,-8Jn0YEp4[Gl `$q9@O>\3LUȎ[kۙv8e˥*w Jv@5r7z~rQyQ$:]kɺMR}S3qS`J궘Y4hVIYs=ϒ.ZEK<˶H V c)|q!W6hxү x:p)}#bPn$TVz - zLjirgjUChlOs䗶 5 ,Qɇ"}e$ͦpԐ`yd΂H/g:L>Ge+gէ\S8 T޶#7;N ccЙ^jۏbm ̰8_?p;QEcQb,:F1=sN!÷gnѰCJ-ÐK2(F`=X` 0*Sp8q<,*9x~SLyөҲ8u"ꖷ82XVmI䔠 I*y0ǝƵYbsbsI4ɓ,N#%,T9px_>B#BʺoM@jVde}ޝO> piWX~QsKyp Y]G[FPeBi3,z36`ƫIDi]{N+nz*ӈx Vҏh>-T،-'o]^?r)pJUR)-AlbՀ3 w~r ((E6A윉JA_+ IFpŚtޠOxjS`nwyb(_kG$VfzH{ @4Hu˃jSt械++WB^@Sl`m_|Hw4r%@hP$d{%NVL (hpQҢ`9n#Le]kӺ^}V*/LOP-^VT `, w)gtr]FU֬vS1mt~ <̾>Y0 GzT )gGLQ-H>N[ق\F+BTűe#Yumhku2{WdJT c>=o %s"(ʘ?í` Χkyk`5['`@(ڪafgh[1L- XZ;*nlpZEPw=pn,--D' E_7ijB`#PTAVH!deV [+X$ h3489MrsphTV,P-xoiɊu 8֞![%: ];9fxGc ieXzΖ1/_9qԐi^&X(TRJjT HϷޥ 'Ed T/0.8Chme-bIɻ>Y43@!A[E&YfjSu!2w嫄oҏ翦P;Lg-r ~S45<A#Q_,QM9ִ8ƕ=z|Si"c1K:k TaCy 5$J;^?[/Zk)xǦ\0qp脔pT={Mdj+nс… ~=.17<ŝo#g3xq'.Jyo|ۙ=uw8_!q8:moSIlS{:3J/)q:uv8Dz;9{ُI5ns 87S255ySM]27B\OfD-T{v9` SH}Xߚ]zv>ioxX F7,SWԬ98V@7<=3nVgI\eݛ@.0Ž$}>Q{ʿ /#HLH U/~[UGEɢ,8|,=eW^*;2@tz" NY`w`%g?~i!Ey0m pS $q/*goeMK v-іk`;NLO0?R$DRd)r.nEĹc1H#|$[[!?ʗ}GcUe;ZjA(xqUF̨!_qʻ~2y!s.L/>dWuٖ`3CCxNCD՝s<K٢cU(s QAV7p@'?&d۷*ʻ+\+4yTB_ӓ@=?=? iYݖ0Wd"Z.3tcMgSuN?^xV:m1?kM笂ddR_ޢ@!crs.c;9$Q$FD+z NFaYm1z5Q ̮P=ԫHA:b`1na$bx?UM/ΪwfN4Si pBZf<í(˙C#h%J離-ag^e Ȕ$sg5@g}1p;Ӏb+r+6(hA[#=Gn.ޠ#qIM4n6nX?ZaVCK-NHyҌJc]7nxFbhӳgݻyIXR:DQy5֠lqBDY2mؓ{YS@I+!c=,>0>xZ*oB1DzEjaBc&UaP@&Ñ_,+'E"R -2P~^xGJwm(o'*,}@Ij6vU - _  $ 1QfޏUHfQ,$Rc\SNt}uCb% Phcީ*|@)^R TTm<18V2K6#F09],(ƹtmW Ǘf 9Yae;b+l/zg+/ʱҒ8ViR$`Av(fNu@7]U_iD3Pw(w& ގhQN <9h- n``](SAG:kߡvY[1{MA} "oItwg s-hE=*02r99JHzI5a,0đKI k!3<>&:qvjrT,ip@u?'Z%fq %w3tl$ E>a,_DI'o Fx"A9_86k( A]=m@sW&i/p sa lj0re&6@d)2 ;JNi5!C(2H dqmBq $kSoɆ< EC٥L'z01 oalpvj)aol 8["Y:okNɯ궿 1s:A,M&ՙi%KcSK`#7 >_4Z(3XN[VB(uf8tV-†zD|Jڸăi Ե!_9]g`Ɲ3'_͇rzpeVAԙa=Ac=.HAt%mtR]8)Jj=@F>p˓sLT U䚚`ihʝO0&g `x$"E@z!W Uܣ?Bm3/Vs?\ UbxrYzXT6\pUjR-D}JK+-:@s-%S. GԸ9u/|NDžZ"L%fc'%w.Qse!4 fxpq!!$vEܴ%-D '$ֳEOσ 6&ʼn5JhT!syx)2clx^iC2=)\Ӻ kX\gZ>nݢ,sUӾqpx 9w'g5Ӟi:-;Gkuܶ jS uA-'Vwߞ~} $-0(ҷ!mEu͡pb})Y;V;tȎ6_hx'yFrnh+eXVSDtoއΝ給$e|,tiN<{gA0j;GZNv d=5c4Bogr@ ]8K 2o .L۷?sMϙ\iK̏9԰ຫ-yahIU'Ll5N3Mj9VdxOhU\ a'-So\O2 TjY3"Ps˕FS`74hu?+Z~(/d 6eb9IWe7p˭쟣ܬֶwu0xAg\* @h :7bU&Qd8;llp%Z"ջegbYx:Jg_d;A뽞c5LVK\ִXpcwx;-D?gz[c_z8i ~%YFG9jp&EL5e&\kclmV a.7QWs(Ӊ*/@$ ]DoG~ve1f1]4d TwD@u2hJnP40o{Ԏ:ʇIU*q%o:Z`4oqYўV?MGh,ʛչpe҅ Ěe,dSLuN|}9EO҉%3w5Ouy>:4"I;d>BξRfT 4 cztdC У,B^Uy‚NPDҌAi.q@EǼO܉Ð{F<*e&{$.LaSN$رP͵' e [Ժm5w5kt|O_Z(Qe,ȎA߻"/<`zSY ְ惻Kl-xRkGŬ N6*06z;eO,:Ø8HD6u"/JVr,zT8n 553`PZ=gshagX%a;HjF|1>Naן_7SʒﴊmBdEae>x|pfo(JD0g**O%HMW] KW?1h,fhTBۺSm5@ 9qBk1tb~!=ē&:ȶI'%ЉSrNf=Ͻ?KT'`&Dэ4i3GՅ;}ĥhXo:-E32ͅYgU2=liՐp)up.ÓM[|=9k[V,/!\"xD:^SKsFt y>[o55b @#~umd^'"Z nKۿ.c^(t|A(`7Bs-FxUstơL!y|X[{Jn ϡSS&C4#i d\{!yxDQ;Aì̔# WY+,ۮyX[:1g>Mō W^0kN Dnȁ[+KhNmyVWb2)hRFrȈ|*PK4Y=)*1v@\Uu4_LTrbM^/Xqx2]۵;*elo HV6u̓(.z8蒢22ůKƊIsaٺE9X%F… <);?S6Kl^#3ᮿ}oPW "۾(.6* n V&*4g1&6(:|tֶ&[i( FL>',fښ9v6i M?Ezv_uK2 8xh?0E-g3u\Gz )Py5C =L X ]YOG`O$ٓ1S*÷u)|5v; eQjTl` &$EEC~J2s'9`\ߖ3j!jzq5ƫҹ C7I8%{[E@cV.GRj)s; LGAAOVX%ȞN]AhPB2V= 1wL^b@0푑KmS6#Uk)T/Ҁ*: ~ MIe[2ɻI"N#8߅)Fv|a.~`9ʋV}5u"FhƑW`eVD\S x ֫JQ}Vv*/`g=M솮I<@Ia? 8a66zp)NN yyRT͛0:*2D*]%:]5KT\ CAFy5#rqs{[:Y*$(MxME-8T`q.05]Δ@YUoHzw6G.z69d,RdeW/#u2ݫͷh|6|nhSM= 6|v$Svz> kiQV`+&#Ikf:jft>-W^Uӏ[!@i>pZ^Eҧ<1~ V[c tmNo{] %/@/ʋx@峀rw/w،1 lPo{Zy-w3HXYS-m*vn?rG!rQ|~ft(.LDLE[Ouy cyAm> OKԺW5|>my>zxk(BEOæHIB#X]׏_#_A.&(l4~"ɨ EY$LGp=ڮ`SZLx⫰  \P|UoZ1f[)S(ƚ 2rW<9b Lw4J?f6&-DL`rs@?C5 jt,텷"?ijsD(Z˾t?ޱ!z*E3~ BEi^c[N:C<աn =%N7+NOIU; o2RĶm$T0]A_&F2CPM^r1\VbPQvU|#N1," !Dmp7ѰQ@ܟфGzs!?7Z\E{fvfżmlAgh͓=z@5CQ\*1,g/YPkTG̈=VkՍ.2>eq%D\Wqs(Tt:onX6c;5G\@P>g7Z`2#?*[nQ  baӢnj,*A%m&{dVT_]LT% {wH,zOiEJt'RG,L!dCR t |{!YxsлKl` s;{ [R(4s񷗰C056٠q{gQYgȔb/ x7'3_",oWiSEYjPVBܱ# sDJ-絺̐N죸2UI%~٬bX̊tp7>'d`&RTLʡ/*?KNxݜxbҫwY['b KWo?1AJ:6suP8fH;|&&1VI:GN ?\ B 18*0כ|]Koqx"S ZLLן|\>r!L$\`4q=@tQ2YX 51/\Ĭw}"9B8?E)]AjVv4 gx\H{^u\<67_`cFG߼yKTbXziw"3dݚG7hr$oydӜ讝eG)3~oM8%eJz!]N:!i;sAa-"60U='θOF@6Vrp42hLKx'_B'Ggo^Nd궕#(3JgF%yn;|0)ǣJG=#[<Q[rȜ}cGXc>Mh0\dIWZ;7NuJ[x}xr3f:HWrWVDx! BG]FAO~NIJ]w/Lw+ُƚeDG-in#IdhUy[5r_:ӝWajrOMY3c!/B*x53]hkɋV9_4Z ӽNv>r 9=E?St ¶F0oΫr 9Qpk?{_d&WݕJM)=mW f<ePB ĩja`?@'*!]6AoVЏɱ(R_ba:<~KB`@NF1,\AfbA<bO7n5GϥjpݩR 7%,y7[JMi=.˳A->}ܒخ&o> Jϔ@obb[.Q*?ɶ*+msxef,LKי)MiqEpp9Ʒ=ҟ0{vQ%2U(oc1 kMBX ֶ'i)3T{{ #Bd5&B4sK c{nBs*4S$3B#BZNE^M'!x7fTߚMyCB2ʿ$}pKԗeIK,uks'd_Km6|̆kݨ&]124Yi5]?N#F:yoS"xX!}$LwcYj Y-WhCf#L阍8i]K s8G/ 2zr OK\;l~@w-`~ǻeV̬Z{6_ ˆ^6@1Mؽeqfz"СF -|" ~],mt?["xϙIʼn˖Y'ab.Ax}CT?8]^.P&_/`^K71xjʒXg"R -k03qq}?pOZTnÿ ]wl\0:2 n J4f?V@AX#;daImN+|.7_/J'^_mxUcbΝxtWT1*(b Ɖ* Ȏ)zȜ%\fH0'R-(ID Ų lr{-CH{Tpzد}Wt ւIwc^LhPsRRQ^lIJ68Tݻ)$2}gNoo^bVWA N `3&}wg 7< 1ƿOOO^tM s̻w h "_r5Lq m7AQAwr tZ2sd.@M,4Nyq/e@PanaLK<'Ngۭ Iș(n1%ζO ե ǜsjKPly,E;fX4ݱ#4"ħʕ>"џ$vwxcy6M$,Z6`zSٌe(L÷8kk#\ ElS)w,0i H:0$^ey@hr8By2Z<3M"\~Zw\#U9;UFvlYT!`*)_*ud{jm`U-[طO!̮K,~'gJ{nX^1r4ūAe@*4Sⶲ̲KTxcI^n6.[}/D-RJq${fA *n@L&X^~|n~' gw-"|8HzӢz򷁃鶣Z`D x3'DM\]Ia툜@V;u5ߩ[=Jb"ۣCbi.zm<KwuzXu6$_4Sq4#Jv*Y=0>i9Ri0KbV見]*[,b$*_ ˂2iL<<)ud\9 ~f*WsUS3?Ή?pu T7fΏzte55V)J 5|զn2gW}E^1KTI>]hSʮ.po*Yr)P w Ó8_Rp>'nx'P#V}Ovs Iq-:. e"(@dHRQ^/Rd3|Sx,VL"^'çVxG`fL ( :*HGyj@W.Sxj@UXxe8o^%{n^P:"fhNPgyNɠ6mg{ZіLP +}jz`?D-D3sN%;}^.@Mq!t|OcoYBIiOT bt4/B94|Β]@G޵GaM?2R=U8-}$S _DPZoI7d hW偁+-xjYׄ-JD%Vi%\uClO)3`S<慯qy^V}fW s>( 덄 Bqwz{idjiasͅZhP WqC`57P ֶ-(b]I_zXBNځT&eˋ[5+=ӡAb0Θ}}kFU^*T]7rY~V$>7w$~_ Ld>'Aܙ xt(@{ٱ, @]N yB2njyM\c)E!kA+]:[u&V$~s6s*/jRѿeNr n *Q̅؉k\2Ԙ;}x=Z\oJKڛhˇK;q4312Q\U"wS2SѵȰ@@si\(`xJ`>hK9A kmzzw 2 l<оPP$ྸbT6Fzfu^y{>,KlrsU_-?g)[T#k0$St6meBܨA:6n8B{$8[ Ǫ"Rʌa'Z3R[ R>.A>2v + |KN0Rv+Y&ǯɾ9* ї+͟މ@xU!#4|j2ȕ] :b hWdpS>%jYϿ%(Io}OIJi.21ƣ\M>Fޟ~E38Jimj!dmB Lx\=2>H'rjk1vL8$Qz˥]'6^-n{Y:b\Itu< [9ҕPޜb_FZ@Lӡ!IeB'ش,`{_3(45KHuoVu(E% 0/ڳhbJkەP'`lŝMU儵tv.7ۿP܉bE$/$bKmoGZ \gvܯjg~B46o $˹9XÉ\ hi̺qFrAĀgF#OjEAtIIɜ]̜i\ٲ Bh:>H61e'8ZYcZ-vhnoja2 ?\j l 4w7:nݽK8M12S 5$IYht{=ua}1 AK0$ۨڕCjtKĘ@ 'bBmY]`Dj=,sLICYCTi`rv8/UV=Z9 #DLoNp:D}fa?Z2QzNi/aޓ(HJBXaZE4tX?vIDI}nP!_DrR7َy9NkpPZ%վwWgTEWɷw[ 6R*`_iy=gt-yYJvuf:#(Y?XO*VW9!* vڻ|PgV|ݩ&ݮc9ņQp'cYbHd5L C)3if R1ﭖ ?@8P AD(\A HGўW|No}0\Z};`F'GguŔh\h6ZyC.$Q8P5"gi, ,%yG_> H: M/oHDփ#K^#aup'qP;&n̄_dhgOYpسQ ƱK7H aB6iؑÚG:C£@2q3^csʎm`ǩlӓ.yKDVޛY&4V jT =k i#;Ic^>iq|.!!Gpe$6aSj_@ %^RHAM::)itoIb zm̡$)d΢KEZ#ݑFweՠv7 #3ٱu9N:eƇ(JYd 1TLx[xHq"}·ou*OXF]6-_ق<5!2v& CU/0ޖBWY|r9Qc=%sW|@GڧK1/pQ)ه:)c@& g5Z "z.smEo=ZWepvO-!Gx&z^.Ⅹ?1-$Flbْdzm2P%4-PYEW!YS"pb,tR^skcjc(bgjwKό͞g3qtMQMq5:}1 t$Z/MI-1}u)4>Y5CA/v-ElM*ȪfLq(>AE0RcgU O@Y.Nb{u.cWŹguN1ߢ칩lsHH,AZl[XEGn/᲌bwl)NM)6Sy|X3KivQ>n['#Mf4jݹ]j;4=>EKK/IM K7WBH_2_ >k)Do7OT-|x^eWgOIK^?=btw(-cQ8qt S,!]0u'nz9w/5D"a Sq'rYH}[_5(?ĉ߰!Y 59ߟ& 3S@[2,[*෿0xWUJo嫛p8ޫ ;rvBTHβi=*;+;p?0tC}bUEI=&ϜOԃ%AtE;]"66fH-X,1;, bۢ{A3ո '`"K?{نVl"[Ḥ#fXc/BO  -Δr2nt{$=8|K7[!}pI` s-T@+xԦ#>D9mCrXzc?TjG7UW.xUt,a;{KrJb$ȼ?HŒ*,9"Mt} .6Q]T{&CG͛ f<泹Z:`6$U2hdNL)VGNPWiQ #1Ƹ+l*싒-.wEI#V.hKkqF^uixGO1_-ϑ-q&ˎfVMf޾\2lbCAZ[D@ͼXױgVW7q YsdPB` kTCʬ8܆ =Uc-ާey)dЦcQz^`ņAqi]Dpn˛ȵsr(tWOptbf! wh2|\hzLbOQFz;`ꐜ酟@?ILܡN>BZD,mp' _^g}xrn&6u~ˠqunAa!ې0a$8Pa[#q~pmeݙ8d/*.N<'F'ɀ.}\ͤM᳾m$멇`k _5c8s%]zI;CD (}(_=Y7~~ID 23Y/7-[e iha]+3 j,d IZtit1 v~pJL"~=MI=h}X`=e= N>a"Ov.5#\g ˦L RUG?ʷ2^}mYGmҋb]C| `j_% G!ea㼀I-]gcmS䣍m N^Prܮ~$4wv2u>51EH=DEo6[d@Π ]=\Mpr!de|G0P#nɕ"S ovd9 -]x/L3@P7g^7뮜)g3<ŠD߂4< ^@"_@WLJ݌2HLf! v`׬f{۱&O0vۇ*:,u@}\OFKI`6QOd!|#+䦜[: %Eb%'¢$VuPu4J\l_\XJTS!Oeհ(CRl.M|t~0c~#rve(m 2 wz:q0hn `|MpwQwj[h$/_'.d|qd;_Qn+ / kq/DUa%)zz 2"%M`mdQď ky#4L:U x DKjWq7c'nh<[Ayu"݇?3 Ĝ너VOddoMxFAU L"JZum&B!Q`&3KEGyzNd~kwDkɐ҃y& 5] H?%+7$l@0QyP<,{vk%.+>=Hfl+%KF6H#% \<`6F P IRQC5MX#/rXTSÇXARmxE q?OJPi2}ɚ< v"Z jVSLwrβ=O?S~lFg 2V=tFsO zLC1O2)ǮlX:59gt2.I$*mB^ &G?uqV눿@*i'o'rsE~ZUlZGmJUӬΊdy%Rc]_1CP)HĐ`Y7UUR橶}QSBBLP3CZQ jj؟0OL S#МlC kiCP%GF.mYÏ_^.+Z]q3i/>U-봼ftzIPݪPQeME/Na,[*c/[{pЁkh]H ^_O͜ UexDTȵ0CD殽m7Ylcuvh1Ϻv ܥj(ƫ0?̫#V!d Yj픥Qlqzփ N𼣷% >)"]x?]ћD\ީ ʜӶvlF 쌙qYF3Ve35!@lZǚDzt2n0:α_TM}xrv#=)nwPZP4J%m9/RgwmV6\X'9M*#S%1= FC*%l44b/um96+.jIlJ3=>6!"*Ńzp+ݣ ?Pi wnG,XA9Ur_})k[GR;@z~YfIuTɋΖ9*$>0:dE4@ۿl5E 9OAQ!ˢC<*4MBZCA?Gsn&i>X뱂k[&8a,yV]g  yTJJDvCBQYG2G]!>kW9;—|+@o+]`alT~N'EwOOxBQ)?Qe|SgK]f?(wq^>P2O-s)]'&O b[43G(֝+!H)ѰܹF)̵B@TyxeB(<шז:OpSvfQ \ $|ȣ )WAz73> (c?DSym ]0Z8jKd<g&NB 9PkyQiV ašn~)#{%6܋7 sM =~ } R5*!<'z/rcTڻ2*O"BiI;kТ :A "y߽ۛ-c?ONjFOTF(|?$ٿmޕ,EaنNnনxneRXiy&AGexQp)3&qZ>.WG0}ď'!^N"6EJ I ,Z/9slroК`*ϵs"+`Uo2*x%lFL50]4qM̡̬#ǫLcFQ~Msr$Q#nZQ)&VAU 5_d~ң)Sau΋??]ȥ$@Q|KJ"biSm~L6/~@Tbt$9 %qLL݅ę7̒(y=&_q؎[\ Gw,IصŸ8oHr6WGTX:BlG Xb)^k Q6Xm|v>V^K2] ]y- AӸyho(BWPO%E0 aw CSḬad?vEqk09~<~e'L~~{{_9؎%r4j`K-M'V yHc?m -jhNSS@q͞Gq[ڼ9ґ hz&5RN;1 AfuM*sA?*(H !;oBۅ w^ta}ݫ"BՉ*e_(;NLy\aͶ{0= 8;\yO4# NL@vxA8ڻj ^@8~PS6v}@T:|4H7Cbl/\uB K @>>Z`EYFFmfW ķ.B{qf9DAC)l@Jy蹹m >,6 .QsJ8lm=)6oN} 6aip. k&E)ߜ1F&vese9@V8|wuhQN0kv:i<3KǼ(Rc&^2pڤwt{;2$\UtX%՟[=o&FUiٷ B;|v{-%` 1 =@*5xTtWg{¥7glabрi_'MID1HYH[bO_WtzzT ¢.7e m[OA3s kG_}&8F*W2 KˎKOl#}`5bS 9ƺ=H[7?4OGI=` [~>Qeš5+TH5 Wvsc\ƢǬ?)Ef*"6w+rczvQn gٲzΛ;5EM1t'P::`9YIp $?E}j4z?j{?Y5"pt!KByhd˙Ma| ~DV(xvSQ[j_ǿtԔ4(CrTiZEh`'||.kN}=H\ zv}hIp4' f,p+{LjS NM`zqzrCawϔZ.6n8R>:wS hkILl 0u)iř :Hʼ]ᾼ}hREڎ*: T(_%\12/ uzKѭy[m_/U0.sXxt@xXN\}>0U$I޹Nlr`x3KB?RYغ{;u<"Ym,4C0мrW퉿'C%MLŧẓڎUTIjDhhOG3)Wy$v gr[g ʩ1򷂨Cx$,QQ\ 4<>ڃu 0B633~iťb9RX_ º(lFT?9HW1Qe>*dmθ} ?lkKŊ 7%oOi*Z%ѷ> 1&d^\Yv%^ u (< Q 㟷z5l,diCI•Er=oe[e#>FqEĜR/NgGr6K)qVol)-idڒPW$ZU|[b_+R1_ ?SAc;X(]O=d ,yr9Sak s8aT;@ a8{Ps3@OBo60pt۫❱!ڏq؞SB o2ƷЌ" ./&!8P3M7Q,wnXCUn6'vw x И:G:.<;k+. Oh#D2jܖT y%h*;%w I}#4, nFGy[s_s1~j{A~J4ssu@(S/S|J$VU%чJ }ms {:ZNG*qҝM)r4mpo`"f7"h._8vY/I4P+w!Tx1({µuOt v~z x\-A `o=7͊.DOl0Vh0 ԧ](8Q5N*;bU~'Ӫ>9/pTrtXO dLQl9)LTAJ|̧EmG`; YJD65O4ƙVK qr&bq,lc6PG_oVpajqn™^%٬cЖk o|6iuXC icEKDS7rf#\xQ/ NѺM,[s{a`p0ƞY|JEA"m o@}_)Vn1b`|'KD>@˷otsA>&'Z>b 3 {V}X7% 7L?o Yiosh@o O ~MEQ5/Y Wn>ڿ+WdiєLә1Vyd<*  vo3XbG#6_S{ UB m?9]^>Qk1~%ZJZ#t¢PX*l{o/b(O_l7ϭfbc|Bt}'TrmnJ &y3Z5w' &Y4{sOm]uTЁѓ-|+_G% eNs}}0Fy,SZx:+Ab`.m1lw>[udyfZRT?"(z 9+ P:5?וh 6p'-7+J#IZ8.7KU EefRaEp$ /s_w=8Wq9b=%3q?"D!hhFБNu绢'=e'J?9N jWy*04?VٌNA7KZXǓ|G+2-kc=5hĩ(𱃋Ljze-wVHWT7* ~wfU7*8)pVT+`:<)-sL5--v'7ޫ\&z9#]Q_$CBXuemq`U|%#Eǣ.iH'P#$"7I lndUL#WwrTaRϫv5PG$lxPAT6p珝BB/0ȣۭս?0ER4 %\y3h -T`I+"kӇ#DKe}t֍ZHvu%@ v!O^-H+OUD %2 >$Y2>{~: ; 39LT"͊tߺgkM#֒15W(t %*ᄄŽ'J&y% u>~Swo& y!)iwh VT?F?xjJpm{SPL=[ fcݵslm*x\VO ܸeIXM%*F4Xfʅ3sz/ny`~RXr80MoM mEߢWh<+bѽ# 9IQWڧGvM&E[oi'kh(DOkuo wIs99 Rq7a b4K,©;iK:Y{4S `4do IMVs=~3#/ᧅ `iNy}N|>lKg(#פּ9}N]yJa a9z3$bYwmhm] 'W;$ YT7#;w?QG{d_C?.ўg3,w;0LvRIVSY 3DpоND!E_}ùx"#i u8W$c2ʂYQqIK%L篴j-#@X<&$ƒINA߁ܙdo8Pe4/ܖ>{I'DoN"Nvk,VjUpLd"=L<ߴ @纫(z2CXy?Ɉ|b)0sMͮ>O|}k!U{7(OyLdpWV^`w7 3be=J!}y la('cc\|H}o)@ ([%+1g!Ov\ь9x]RA٧klBՇ%fcSy'/PNɤ`9X4k;6s֯: Z*jE?d \&:k)vXʢE?ŝ.~I|A'X QytA <`;1:@x1K{v}-V * ӻ8hC0"͕t 9ЁN;FZ6äkM@GU땿gkgKyNtOV<ΫguZ(0v7s5᫵`-T֌9s~Nv޷21+Z@-mٶO$hH]f~ zZku*,2}z*) 6hj>!HJ!Ѣ /ҝ5TDK[s&Kx\!كUWmQ]()&/ 0w{/g-BM3y96e|kܣ3я|2<`ݥ^$ޅJB t q=G|E XwO4Gd2ȴz:?y@➶'FuZcKа}Jf\Ɠ2%!Vhv;J z4EYY'wby^e{|SQe&"Fq3eJj}ϷAeF4!Y_䬗bd nso-y6:in% ޚɦ襘-zM>8+0ȍ=VIz;u0$RUT`_ɿ,QrC)BԭSZiƍyB{Is`Lls]JAQrcڄ&ljl,j^2%E:d_ XyY-ҐրN'PAAKMM]X/KKһU C9| 0LW@6gX V扩%פ}-@H 啚:o?/SmL9ܵbݺGsG'Ƴ_Zװuh=e5Jp6XK:%:k@R ۚv7+>?N):.X[HRLKx $'=IJ7__%#pWV>ޓ'0SR2~+wu5𫖭- R!CYgC}mGVq\ח,y(F6fL%X$׈*)t/`b۾9]41mwkkca^ 6T?:!oHA&p>e<&YGV0|nY6GiٔZ4_:U5˗\z٭:7e`'Ko( :`EJnA_zv5ڥ9c<<_æjhn;<8ԠkS x2,58j:,hɞ} jbklo/kݖ!1tQ&s{2Lv[w"T}8zzqr26ήg Dj~c]_tJSѽthQJwtRU2ݐ~rLQ8u`REt@C+g>ZEh/WrKe￉0 ̤38 y-.daM]eDGOhY 3Lk`0FǛ4 VشM'^A}jq@fbժk*@d]ypX3|fEy#}!*Z<ү<5yo[^`p%yK=-$f{˸dK[ r)ŋaWe0 |F%ёxô.:lMFQV*MQ&$.{Rr (۰ Wê00$/'$ǯ=fTS$xSB2[T ^tp%V$ ?H`h{ށTߐ՞!dؓ ^mP;|@Z8|=nk]̶P"WRt f XJBkn yB"Ņy1bHm`ͩYлךs5<`iJ"*֩Ԑ..+"x ]Bp+|[C[s}AF?<ǿ~?nuŏ5;&,Op*Jmf̅4AJ5MIpޝHHql "[QBWɟm*FAJ'jcfAzJ¤6&g]׬% :&Wu2* _D. _Aqo ɈX]ܤܡXgq³^J^'u8~ZCl)z צ3MAAz;> >GMs47 4Ԍ;Ķ GpLc VMƙqbmrAVS?yB:AdLA҄[swSeinoma)rjj8n-tB 4YCt•ә`bH[zފj8O:;xgO?'Y(xνé0mNbQ w]oL?Hl]_ .uOb';%֌anfgOb)Q@A"6A d6uJ\Heog@ hQ o͢G3J9 q$C5>Rgk-ns,8CC'AA݂89!~βfG|(uVsմ_ z(6| !#P; |0 r QpD.laMOWǃMUJqQC]LSO]$u-@-C?XIF-TV홾Y&`T݂YU5mGwW F{E)O=EvF.RFgK28djpZ#RrUSp:f%lM{ٮFw%u h2% kˉU>O?pbtkdRϏ9 \/`J臠:oHw_ꬄ.#;"l<:b$xe.fk> ~3xB.'}[!5bD3&K0U,{4'i+M]* 7q@1])}ݲie[RYl7K2ߵ+<4k'5C[foɽՀRu>LI =ӹzj9 rP}~WxP1oh5X54F`o$PIVrVdߪ0zS4TfY _pr.^1pp5L&wE8 6) E]X;щpcZ ǟvSu;Sw[P~M8hB4js?_ʅŖ`٢ 1cyi27]sM w.KP[Xf WE9بS՚ۻ Y 1:2N{7 oz F0bxPXWQ7R6 ybAC@9Y٫fCԁc=E:-xbzT $b;M㈏̾b!l\ +Wk:]zw ZZЇWG3U;ֵdݫF5?>f'M+$"wO3;b~zٷʟL@s淟y:G,<( kkҞ.n˕A}}O9lY \OAM^\~귾ӵf TaZWki.ud nϩkJ6V{_T>Z6!W} Ne`#MČ ᤉhS}^ YV4xٻMDsOmO$EmƀBj6] ~7%wחw~lJlYpBb!=kj"]/-u.]6",_ؔ.PnؔE˸)?(,Hp=Ƕ(nQC<>4/@r8dܻ?)S+1P6om*#0d9WyF^q:M3.)!OMm`(FZOF9}/j ȶ3+"(ǺUxu;,'K?4|sPvCpY]Ou1+C61pv{Sj%pE" t=4h@#6ju. dW^`ҙJqH@kq`_ K:B<{ч*jnsZ능AͮmJ> \dZx 'CއR cR*d H%#qlZl _K) ?'m+D6\j a3U)6cKx@/ȕ{#0|r[Yv|e{Jԗ*Q(mwsUKjù` rL31/>_W uM'?ᤍz{$0 =3K"&tb_Zq/Gvo WNQ<~ N+1g@tTICB v,32tY ?I<-*V` @[j3ÌwJz&̠%eni"0E(J ^zL>O=*5|0LxNA.켧H`?bO4R`];sv$0-tZتVfBpK͑tYJbݵ{na5BC1 cGdU8+X}ᎸMRS4# q!3aaޕ4͹$4ůk)+t/}Cbp)8DD(`| l.@`}V97ybA:gTHq".j|~$n莡?If5~B_ uVKblbd5#oDݽ)f4VmWe TITezӔ&6zzC(•/ ^}ݻ0y21LM"y7]$+Aj; yMSomX/Y0V{AG7+e5O=AHt-1"[Q6)TwhNT/!XH˲ ej^6 p(m:ء3k1)Qʶ1.lU/fE>X- TZXy=ͦcIr4&4C/[9Nȱ:L~BUv?U |ݴ#xR]Pr3W('r o+B.I'OT7G.;@4 %-d`elovSpLˈfg(NV_Dv=M*h8w7NPb+`BZl,$q~;9}4)y.!FŶ&MjUyaQSpJ|bJnD~ Xb2E?;&څ IգLZj[dҸta!tq2>X٦%{aAdU7tN/8xVŐJY:b%::=U9 sNeu)\#ҜƠoټpH2ŬH& ;puضV2Yo_pA$-mf1\ʃp0KL7 C0?7Swx~1u*2;)@ N(-*!AyZlиmS@RB1QAYayv3S?*&fLd%rJ  I씖 %NdIPԊya& a0oA_9);4rFMQ> [M7% %>'h4WӇ~'͔Y9)4#x@說>&о`;#z0!ѫ[ʫYw%/y .npU.bD/OW>R-*m {y&i6e ؒ srʉ-?m7 4lX^0{Dnc0/n#qR8ғ$,FSV*ؖ`y1od`n uYηK >Jy'Hԝ:k_Lo+\^LnVSzНy^T3i׻w`:gǘf ΓMt =q]}tt{/5T]|doL@/09wq%\ڏ0Oq]<{ց `G@Z( ̣bC\ rCZq{lss2^^v\ruFs-`ӘY`}z0Kue}<#4ucc:W0&/{ۨM|^ɩ2$ W p^._Ng0MMu2ӪҌc&ʯfm :=ђQ!Ig'Ƶ8K(RlkJYprK_Mđ$qABSqsCc@ɀ bi ;; IMy!,UX"ؓ8+̇gTU$EVQ4R_A0R/t6mwwIh`r!Hv]z&a .p]:A *0qycSPQv ~H(m $vML4M'( @ ivw&fEI]ylSyX7ф@J.2YaMK-Bi´P" )OYnz.Opn~P 1K[ x!n4GsR}#7Q$i?WED-OjΚZؠHG.'{Snsvio{ḡ֢ʃlY]30rdWfutXea BC>ilXjHvBBP-ނGFQfށp  j>-,nDጎڍ9J0Ǹf̹|o<&jlI.8%q `TeMlm۰E4&8H־WSp9QT /7ߏxBmZaOKm|"iנz3UEb嬼2s8a){MDM |&aGuHbW%nV*=ԷZ-]/ws_ur>ij1f(:<]!XCijw4u(>B+}Y0$] $cu ^VY59׾\XX/O!0wwUʨ9N娠j'l.e s,ߡg~Zxܺ&o2/Ǖ+Xn|TOpSM;qbb9"Wq`q|f0b _f8Q99OkҶBAxP#6&gmlrP'@'БB Yc7V~cl^\yfBf~gUT)!4cwt'R$V#3Tn=h'^T I.ў}[P )ó/$>+tpW2r &^?u&͌U*nP&#) AƂZ ^ =%#9B{~O YqHޞ"ۻ Pǘ0v{s"u,?|x^JI;E# Lẽ/ _,)tP,"izl"P:ڌ4鮣 K9 er{U29  vo.U)&~=(c,ou}c3$ޓdkXwhxc-{ sJn2r @c'Ev q31k̊Wc f#jZDne8BE#>,öt k<˅D3>Hwb oѠ5zc(zlLw{X6KӜr~k$<|ii?k c'Q\U][#fI_[cؤ>Pڒ_Oza:'T JRp"qtt\7:0J'Qpu0T1pod2H2ֱBc^S6ebrP:]{ lJds 4c ~_US-N}x>w[4d`*[ i<4ւ_5-. CfļoZ % }/   |2]kr~Za 20dIq:EZLH(/6KZ$ggYfK`1$Py-Tq/wANRvbk-6l;J{r?_$W,.sG&it}JޛT7NzT %P11@np=UKlRi 3?7*byDRF>TY3A@5阈3(ol^q*[eVy0HV+c ;eyAP.ckSdtb>SeVaՃT\̭u=څlp͹ 7$k}ajVA zA^ܗ,oDDAt~g*gjEQ@v/03j^:wBq E7"軜p6RLnPzpη>NxU6w7[#x4{HK`\※_7 ^#8s R <{ eSðw"N䃼<ƊZc̀.r~1К2bj]]Cj5xQvZACnԹƦ狹*nN&PEP(q-b:9/CDdG?9 .#yz`ȡj␢ڮ! .Dg8ѹn@sXvu>4靡Z;wf}G|4ȁYz_Z=zjHht&WPiK2EH#[XyvPƉ%/H44<: ROjw6VIF*+<.@ xqw 2'lg D/\fh{޿EN:F:zݘ SωZ +ٮU舃Ie ޓ$w[JU#9j/k]y#V}Hы k-算6J8Vw!%- øG/8ѲnŻLOMF.Dg6hL;D6{qS k8\GyP*ȷys>\p0ɧQ^6;)D%rѻfn\DF^YN Er8cY 0XP#&1I +ίwF]=JNUiBLNـCD*:/g/OkY5c["UGQ.tJm;PEkei[/t~P'qe No6=" Ge gɐue`{}7*E]o*8L;U ʼnn.[64?T )_\ZFv?'Y4wWFE`:*Mފ;Ѝ!K>m Z7{dMZІ7| ȬPw>cvb C!cEd.wI^PGuIO*^vīk$]~&- UN0/H&H) dqlfHu+B_|DCZ3:\wQ|/a)MizƯ NXM=ꗤ-  7ho~zv;a͕g=;zZ8-o1EC:od0VC}ɶmx\ V-)DU]X]e,U!.򖄞i(QQ|‰ښCffͨm.>SVs{HKtk웉U^k 3گA|HVI)\0Qj%Bnr\95-׌ 4TF2߲D/5?Sy@Gy̽[ O}̚y] !j4xV2i ;@Tk)gP%RPXHVE/ 8U(| jS`;E_A"0snße q ^+; 17 hF]u?C ¦۩8$"St͸u3׉F9;Ys@ՄԵCR3$ ?A!XP 0EɠBe A+~Ẉ%'H@}L (+TDTm"8tcNL[Pv%4J9s2ODF" nUEV0V+Կg(rf6X[CpjJ`M(l<~gnLغ (ԓ38' -tR,~p5ݟ{B'} NP3sHc;qNd2ɂ$zdk`A@@~? ;ؒ$# 9f{B*9$pxL$9M2ZmN`g [BMNOM}$i3ß6’&f}gS먇O]b!?Y(7:3xmD98qz3HjDؠI=\2]?O3szb{nKQ[-j?ضr6`}ҸKfUq<4Ou -ߎ *.Adb`Uþh~\MFxKL 21K`#SpYD7{Ol ĺ;n|m$*pK3_u ۞С:t|?* lF͏5f->Wo"~E|rgX?P>ocZr)~ qL ^l(3prH:~1yȒu>]pg"*7楿f3E`*ܶQ! •[t7Fg 8,+=9;jy]/%c^DaR@ )3bݤ{;̰~putSE,;I9N j̥(םcIc_&%3 3V̐x+֛wp*#l>)ZR03HoT~]vᄈM}y+dorF-lNf"ؓFz.JN㩓 q j|EWOQizzpTzێ L8:-*1VLO@l UDw!a-NU?D*Iu>KMݗp3LaWg>&m_ *~e&2׏nIIM8t=?)kl.L[%rk4sxb@?}-XvwÄ[ǒcjXASzC;W,'>LWhÌt#ʰ׼sҎwAԓ眆ݷ. WD5t1_ 2I@%mOHtc6F, H0ZYCX%4amop MBfVf̙LI^WZV[+1W0~se|f#Qifn@{:~9ҼaO6-.a{/!4ȚXǂvL{HyK`,805bjkx]"\|ZN.|1+LR! 3*]FT49Ck.]bClo_oS ).ְ9k/7LY7Xn;aZԊذ8@ j6QC3i੝\^i#儸 /Zx.{7ίXeՉ}4zfo`D}ZZsa^ssK*LLӢHjFf6{xMna(%W`$'țGWU,++p XcTqdͽ[@)B+72~v]jċǗ^w%4ξ>e_vK%Hi40/: tZMEA,]CQY#n+{dq,>@b`vխ#-Mw0AXK? V= *emb`0X14iSEygQY!+"Br0x,֦OWψ5@0H !ާ`ySaM̮/`V93F]Ƕb_F^"DkG]AV5Oo.p+vC6jl:]s>2eZAxJ!!€y)?;]O XryFcRfKJMC`<66,]񯡵)&-?RNR8Otm@@`X0ޮ"b1!8j]<*L+˹Vi~f Vܤuj埬[-y' -(=TONVn&GmYSJCe6:rhH| 3#@+EZSYMs#ӷ&7~rTDV9؅bA7P*ӧ3~d`HHt Z*$Ś"SRj8e :OIP*2arȃOޱݩH0T*+n;[sǝCMY'8_K a[T1|wn pގݢ `qј"/Ti̽򓒆 PSf {VbZvA7{W}Ijx+`@daaO`FܘPlϧ7 2ׅJN&ܭB^ODuzvʨ-_ig?mNauGaGxSmqmd#J{N ٌ \.AoW?wj"&d[%&H;AGvSrP4NSЊ80Gڔ;W@[1癪Bleq8;D|ܲCj+7vq3JH]UFucޟr=(ԋE*7tBXzW6Fa5ֱ[>KmMhEz_r BG#?sN?#nRVNgf?mukF%D) %w(Ѻ`an3cOYͤ fӑ[G"oC:8@n&¿D1TM< do~WWB=.(>]dZ@0nkNg{$:uSOFsQd21 |YPk~^݈T7(Tl /eZE&sNY%׳6/#l%WԘ&8\,ye)V 畲T.LngQÑU)9|2a"߳]u.\Fxd*i'#p)pODڿ!ū ո~_*t Wצ{)Qi^ϾbX?u$ >i~qdcu'"{z1h/)@& OFxɈ \cN`|K+S^&dm Kjyq gHCkCrs-TIZPBl!1ת,o1 ;ye'2R$H!j 'z~RXIa(j} 㖦\# j|r%W)Ѱ}Ɩw<l *Dla(2CddݝE%xE` O"%b2}DPY3@؋VLFP7v_G%!u򭶘0fzz di/Wl&|^(< n2BDUtm_~JU4?Y]c9 6hоSOVZ=%@DQgP}#H{b PB䭌?Ad-P ^AhvX& $yw̙\յa@W_, jtK~oƅNL䯻`9uU@+sDhUisݽu4Moۗ%;/W5ETf i=6#[S`Wet!绨gC@8HOoX+ ?Od]$E}^'벾{uy, %X#D7X-+DL.{{\RZ tY::QKlU℆}TD[k{&Bf;W?䴰o=$l7: XDwN-k:;{Ѻ; } Sj]. Gx=L@PoPdcT9OkGxt7s eM;!̻[U9&-#Q#)~x6qR_F,Wn*#oO}8fWT],%Y}6P j`hcPǫ=ThBpҌޑ9Jԑ"rKo մ!,WCCD2q Pvnbx=k7J[4,s3,4ͳCB4ǿ\s:ނNV!㹪#:uܼRY?m= *F̋WA4-wc4>cU;u-b UfXG)kʻv;J-sXʥOoj #S'lo `VKr@}Bt,p$йE؏pj=ʎ:@&9V:>6>W5 Hһ_h$zz̀U2RY>ntz/,-]]w>Fƫ]3ozzzriXm#z+bpE-H2 \Ok":O~' I r~/ճU;/ۮ x# X莘SdūsS}/ %3~~VfmL[U>?!z= `@ෙFg E]0jn[̩n]}Xl]eH\ȺK(igT}s[߅gd_W!F~M+w:~غ J.v]<|QfQ0~4annPrC*O)42G4\۟Z5bHf2m$NXqe4Y>isA$jOCZʞ_!S^e_-(AnȵUSP#?˵bL4GFfnSIll;iɠ\ ڟ:d(v$Wmy H`L9r_9wVMZ}hP)\f47ݽB-~-gzek9sq0(fߞ>ƌ\" ?ųZɳs 2 3"mI5UC̐hoѴ@"W=ۿ-xLJφc X8j>Dpeb5L g:-v]DMs|WةMAZCcp@z޶5 ǕN}^g7tt2&+rO~0<$i ɮGAƔNaXPUr2z&Hs'IS fzbrpf'RGZ`%? ^C u 1J۔i3o`N?},' PhT)0 :0D)3P8]E0ov@? PֲlANn6aK9jL. d gJvP٣7 uFo^T1 =-W2Dk e-dId(CN./ǧ?VAiA&d.7gm>yKȡCV#Tk!23I?xhrw4:lTٮ4Ґ#}ƚuBӝ|Y ^ΆiJ\Ю@t![T#w!g b&LB (~>ȉFaxL6ݲ̓Rd-P?OYA@BܜQ.^Kh{}4 ٛ0r\QUK'CkjA>6WD9JKgF|ˋ Z3Z~L[fwE6|>-iܴk'bh{˄Z&BQ&ƂRߍfSREY`t U~K`-9E*Bck᦭t4`mc,5i-Nug2<ªɫehu3Ts֏̲߬?g}Ko&6wu_Zkȝ>z# 02,`:Fҹݠi57 ߚR+TG&HX7&Pű& S{wtson:/9a0zӞ4VZjX$셨 {r8w{)_#˫}I%xomӏh.=Ϯ百1I ?yϮ"%cEDYѶgš)rn !\s0ed} 9v'5[j51BX-6ߤσ0OS:7+_gs'Y&i-}p̅ٶ.mQbxljN)Һ?9/8#6mS\Z}`L[*El}`Pb6w;!p< m 4rݯSӾ<|{~Er!ɸo}q>`Ukx-#|D.@yZ-|7%{^pJ*LgqΩ(F3A{8 ETnD;[^f9  PTyd,؏;:erP('T T!J<Ө]ԧ3+o},z*zC(ө҃t(6$y~*~-d SI#Y|O@sO;@ݭ u%';ES%% -))s98?~9gͣ*y,Es:Evjap(op/_DzpQi%v'/Yx2cQbGei"O}" $!qP?Fh 6.%α9E.y֗r{ %ٟBJ t~VW@>&Q,WԚyL2 ~a=K&ȊXNXiC}I1 XW$'E!/90Kj1x6ݓ1\d0 S5"7P*BFl5k!HƉ[O^zЅ&i߀hC4da6kf3N37޷eL{_9i^ gFvV0*6bO^SUJ8ycZvAՖ&#i-V@[X#LV@-EɄ/#R) v0;۱l0?MKGsh]|NO .Wm'O{qୁAnc-{lwZgE+cVۉ"wC&ϔ7-~;=͙ąNK2}QҚT""ݧ˕6zlSt|檫Lhw5(|Wj agPX[! Bs+IՠwE cТQX,Oߞ.qn *%Dm| ]{ŻsY{/d?iee6۳$a5u,Ȳi.6֘h}/LR k5:DN{yOك.Zn:L^JVa#-b4F cSduAΰlm|z=jԟH5+O~מ(!)Z&Дf`c("jinݷQA b!- ^PHJnpo+CG!x89* i h+ tג7=K ` f%?SKRP-q64 ?=z:ԐyOgL\󆈶ul#X etK8/Ae@H"U$+g4VͼP_3vMӧZ\- IVW~s# ǿmR[zʘ_e'Kud ZLz٫y { qzY_ښGi_JC%6/F>klw a@Id*j?|5 dj5Fc->HH׽0SjHA$~Zϥ6cG8x% 4?ײSOE@~оAb@ qԜŢeHۘcp'v j'X[=幋Fh?wmjXA8zC^®4ep <~QOupW__K~<<a>eKJ[1]2g 2?оu׊=c5LIvi< uD<ӽw}C1VQn- >h1*?ZHJ8wʽط/oeZokք6ƐKN.| m{ fE)njp=L!&)ZN~75kKf7':@֙a+cp#+|EVM:5rʾDUs!} -Fnԙ15mό j8^q{",mdx+J ~I4ѱIO9ظTDnMGO(|Soc*\VJ!0U)h73'uøi`XAEe0js=rDHj0 <{"=rgê*ČiB#x}֑mKm.+b)ӌ4#rWXlyF/^?Frp%3^MEXMҷj]hLn{c@!`.tu>:пbtKAO|ou(lDtVMyB06?:hqYYj(WE 8`i% w 90\+%q.ST+XD'\ Z 4˜*˻WV`Gݮn58-H׮Ӫ.r먯Znh>\k]ӶNm͵]8b4G?jz8U]ppZځ<iA 2M]"=j`uyB!c5[_RgſdK|3&<>UF=ȱ{{n| %J_``; ^uf V#{h88 RG\ck8鄸|JŰϓ2(Bl_gkf_ʈ"'2tAJg<&*yJ6Q.b*ycI'iGewBu\qcKbmW(4c )Ԩ sQǍ_"oēZJzlSUo9aj]B{J_|25A@4Wlo+l/Ita qe뵁L>ea,-L*=#Eb΄;pַ/\:+Z3v"g-*&Gh?-AHXV>]4KLFP} Hyo\" l'RgJneohKwA!ibH)9 lbg>gRPDEޟ?gm M>qɂV.vHt b\˔ݳ~V! p-=ga P ;a2Es@ֹɮ{lo rk_|(0F1ؓ*J(Qݥ(PTZ va ͦ)JwP254ҨҖf'O$G/_;7'?/S06&R,t~|AQ3X2nF+49T%'$y筲z3 C8-45hz;y̰Sr{ڰ }O"C}IyUfyz$9+F:Š) Ω5*'' G|.#[|'wZ J^5:k DR|1B^8rUt<WR VB|1s;!pDDyg$$3)~H!ţ̇B!F_:89ue J%{J`\SҚ@!AXL6RlUqvǺx=HPwi6Xa,A +rJ!#/@2ܩ8ɜR{t4#9\';.D:o|lɲJP%+&yj.˽WҬH2{X&%&Ļ.G Q< Ewhy[?m8v^-Yk.Duyg0_tϢ L~W!Ml> s3@ɤ{K? :Jl1]| W00'S ;88Ƒa#*+Ol?n<YϰR4H*ĿIWߢGp̮ ǺxNxx׺џX'BffGpu @vц9 附ZXw8 \*]tBE"xit{pæ<)5S#XD,Ì#={:%NsfuӁ-'&ݫ9z=v/PE;`!07+ɃV /\A yLX,H1 ~_]\D91\t.@A &tԡ1<V~Ѡhade(7QdjCL{Wː] Ⴏ 6P|)e$Ӯd;^e;Їy?RL!1PDr :{ m;_bㅔIv7mXxpx9y>IK^ʿhTqE B(DhZ! KChIp8}pY $Lq>iw%5z %!#dz$a: & ]Py% fȞ헴)Jѫh?Z@@hD&gb)Zp .-Om=nXiGŒ[u;Z>eƕ1뎳 9jU >m上Fco(5rGdوc@]KQX)Y X+O0J ʢi7ͫÝ(go[Ox \Y]$w0kQ$z֘oĵTQJ!R`ڽMf^۴y#\*/cS6@r oFŭ':ዊϤWlyjqe Z \ y!! 3-kfNpD>./ 4 qCUa|8fPq(ʴ۟-fYN'l @|_=bSf1IϮtcSl~PvE=zȿH%;-\ iQh{"K >D VcxTWra ) Ǒ'r|[5B=ˏhG*缷 iक़2K)z y,X.k=7k4@>jur(oTUPmbP@U2Vew5y ХE+/k+EAr@h'VyU,K`R׫Y"W֬:\gMe,~鴸a^ G'DK+¥XA)/Q&к1`YgF;uDHTiB/'YpV^唄αxb,_ue:P^R5#]5 \Aؼqx#씅;-?pfC~TYz?r9;#gBS` fJE~|y rE,L3'#6Yl|3=7.7%j E0(|q1#%\I(sg0 ~o@a1hM8<בzbgtи{_OZ+eGTDo ~Ds,Ӽ;k0l%D\j4n D}/,s:IZ'Ya!4L!M}4x"I^`|KRrguGo5mI1Q:sji idGib&,hE2t$nB-'~}O 9|[H;?4~9T}]Nvmm/`jg*-}NZLxA͛*98<#t+p8#O{櫑- l?.+OT.u~EB$Kb ʇ ~fS@"՟*o!hj^Kfb.0x AHv@eN'DFZHN>[2gM BVŤ#3k8t4t?(vX7'Kmm"IX*|7o4g5]фbCqf²k_; {쫳as@[%IxHAOjQZb:LC{WA*f7"~(%sh@i\>mq/FB!'L.oP[ZQ-nk|X-ɞId"'ˉ(!㗎]h5jk}l.iNYxX"}ЃœijnSǍEӌ1jȯDSjM\V)+M*Vj~}+^!3ҶϨd*ixwݑj׸fRM$=p h؆BG+ C,A"{+^2Rj=Q""zE 'j8 ƅFdD J#m{9$sP ,Ҫ 8Ey28D-b/5T6,8MpNGEfj)yb~FxU[ڨ[m SN0<#I -Ա0|r>Y3_?|:xU\njNgGCݻ*=tcyYֲȅ94ů1rmb I|7J_-1,񶡮Dv3C+JhѤ5r J2,#r+\B)×J48oe_\8>&ԷVv `xгJ9Ay:Ri*l~Ǖ⻢Pɓ0#yh؎b'(1ej寳" (1!!|e} Kt C8*QgQ4Ԕ6R5޳nS4cO#p9Ay ;_Cˇ֑ ˙ʮІV%]\38HqMlʎ7+j ,9*IÇAd㟱醭6efUO2)5T}.ǯIIO#z5ԬߛG7\K3F0'($'4_ i^G/5a%>A,G]O5Z;5|E8AyiWKTy0< }26®M}1E <G5ÆT1a)78U*;g΃<$1h2 gddudy8`&ϋ@IZR[} 4&fO 5)VXHg nHH]d߻5>~WS%0ء8H "b&a=w.K`ob+y'kHmzb^?zFТLWMC sZ3G6D@ %~-Z{8R:dj冾ȼ:w~Az]Engxy> =UАUymMV댔7h|/%hTW=ȟgDHD]`+AiKnT+( mOEZK96GO#P6je I~+DɫU ~^ 0IwfrltWߟɁzr27N;8`l~o\)cSJwXK{ ?]+} :\X:4q+PBF7"|ǔ 1B67DDA3^ mVs{> Ԛ#/:&{cV_vyoWţ,W*߂b7^ry~gktEKfyO>g{q3@~nN0?a[HB/=%o`0i /VhFnrtFߢCcJi"s"y²u,s hkQh{b|(>]KUauzR$Λ9(q9Xdp_Ƥ1[1e-CtrYO ej`Դkث7doU 0ڈnXIW3VZ9PXߜX _a~/nM!}{`QH~;,hŀZp4CKnzwa8]&NwZK|3T3Q}kd?(76<┫4bɓܨΕr*t&Fqps=]Xt=y[{}|97QGϿajD {Ƴ i!I֞^jsj ZD|,d8A{KZdɇ63r( bFŘhh[` 9Pa)". A, NI7q:!lE}|bvJ]Ɋ`W`xԯ X{J}ӗtlճqlHQF]3PdfР·V$ w<ۼCyT5مLT nhW,Q0N Uq#ik ʷӾ>9 =J  F΍p.2-i*?@QSJ^zbAOYi=~,@:žvJvS vL?I#U yy fR7df w+<L+ֹ-BD\6gnxgyʹ'ljY,EKu[uNO $O=e|{s? xI\#V7d=Ʋݪ7Au;Dт@8v:r}eom8#/@^aNv*,{\J ;,CQ }A.uS}~)bW$"cH触n% H 'f/@ qΏ[1j*vGrq$K-i ^ZKߦiḱ9t"*[5TO`{# g6kpKiri t!5%#$˃Q ݅%YǑGEZ'Kc^\ IК8nzJ\1tl&.b3\b.>|MX0Qg̷i9G~1Hݪg^s3A@cWip䶼s*ˏ jK0 =Ύͷkk!T#-=ևp_ }PO{d kc73!G[IMiyt75{(S-)Чs^"91Md{bwl(…{&\}cCAi HaUݪ5MCpfվb!FmI jXjX{8Q= Z1Q?@W(h_M d(=)&TMr)ҭH.R^3δ2 _» Tݩ2Uԣ#P1ϝ[m hf|$=>=|pP{6(d!R]u`WH&w_|g0H.Y&Ȩ\Uy]/Ȏצ۽RkQ+1,Q8pn M剏'+5p&~u|{^*arJ=KA^rs NO -BdP}+UםVŵk)aN1]RV/O#M5(<.ʽXɠX'Ґ_Hgi-JBOǁ ?.S-й\n_B0lmfY6Ix"1yTo-޾$ɻx0`mtj UF9Jg#KXXsq+e+J2^mn(lK:!d\rd ׅ&-۫9eG[оA}] ;j|ny]_4 =KCXjP^0W]}zL $2@0N+^ӎՎ44O볨kߴSwP£csYmy .փRBm|y #h(̳: 9B:Ց}%r#W!8O@1ϲgpNiӿikI A2T:+5s}%p5:LA!r]H#H#Ȼ~;Q's\KO+{-wgFxw y0pp3J58! sqP}s 계s97;қe}wYSxqJA׮9YoKm2R:W9H @+&Ҟ`e92qGb!l*PWXN"-PIә 9(y e=c 1MxhD.fb!\9ɳ\ i9NWdwY$ c6&a/O~.9KP%0œoi"X6h< 6bPR/ׯ*Ssۃh%Ι;JTeaVBQZ.kAPĘh^SQ ذaէCZ|I(3lTNܘ/K-雁 0b9vEtk; knl>`7*,ЀCY,/|!4ndi~O,D:TxQN_zC=_{8;\cburʆ9DfBRP4WzK%k' bw<6k#)Z!"V_M!JI/^;fm$QۦEVQGyP¹ yT =/g||k I&aYҾLI4"ul9|<|pU,AR]8M-AE*/:\I6M㖿Z"h.(/RJ)B3+4i;93a@(Փcj0맗A(X5tRR)V(ck7FDJ7}X׃̚$Bb 5ДYʶ=ו26kpwf 'tJ=+-¥LF߬$PKۆ7ܥx4.gٮ?L+1Iw%3s"ahBkg`hx)-ǒP:"I`}?'Z >+DZ4 }_g~LkpH1a-EXߐGL٪aO-<´-?:(-ޑ'W 뇨Uv.'gtφ;8oMYf<}l6bӌ8k$<d:t7^hOŃ>ʼth9.)=́ERW~ Lp_Wr̈J.1*hT HFn6P&Sx*{F¿ ;yK^&ȿ'>s3ϥE0̞~ĭ6Iav)oDF&|6;dļ,ι10`G&0O`ގ=-euȨ1mOLW? Q}ǼS )S 0SPL uvfeT;Rқg<1PՉA1Ҧ%x7r̽+uA>(A/ܢ؉Òq)VJ⠱Ь#icxr8kv'ȼPܚ[2+uÅae M?A߳A8~6账ИWds#54J/0ih|[GgLHQqL昨.`'K4uM̽Zpj B= _|@U-[Χh>j6`f+8RV6d$,:02EnAPDÕ}zZ:Bn^JbsS5ALmՃ}5q 2aҩ% ]ȠmLئKyB``!vBϚ *O{uWo9 DH)d]'Au%b.˄4*m[nCt1h]EH)0sܵ_köE, S&`87 ¢SH(20ܕsp A0xCxYTYIO.=5x' ECؖ(_N,~-}e'1q8iODʶ . N?*fw6C.5(u婤s*Bz9@1ĵ|4M.E> k~:<}sBxGVQ2{=!B"sɵ7Gifm9>DB|5Ey\Ȳz-R^&ES ib:xP̄PIpQ>l«-Z `(PR|oAaU\޺<[je}/ (p[3>J $b/>@x 8p5if:uv&0a"9oO9(^A]and0i<纋//7.d53C@#G]["xgG=tN@=)u٦XZpcR4b엔r]r2YRȣ9U3oZMcvmYD}<',5e?wyϤw}ra2#Wfa7?b{URޥhZNN[R(R@t%Fr0- !w-y~M2%Bs=FԖ[_rgiaQi- am7| mo{uh iS>v C O~^u1?R{OWMzXMDͳˊN-SMh#F^#@i[BoERS\/1t8>*1t?ma30ӟ1:pt~\D+굯ʭ玚MߵjiS@<|LQ.Ubw71K"ٙa=A.I.@ uS HY ;;sz .ROpÑ!ΓͪapE}`К&?#; CaκFH9 ADl9Gѓ1LcZGHw8`-?\8XOMC.rUiUWQ;UI X~[w1m5TCBöڮ7?ơ.o2! h.WVw3v3:#0nC.(]:w]Jܫ IJ|sJ]GPrB Nyt1yns7`Z.^K7c߬m~ *f1~72 ;~(,b9)O礖XtSolr-8e wY=WcY܏%"RB >.!98a4ܖ4ISX^dNr`Cg蘏jׄ`Nު4Cs0KR@9N_J#OWU7F[D|tFf.QXIg۳*a`$I0yfC8 EA5oK NOCLW..9bF4߳OT.T ,s1 _vB~?ޗpǮ B s%޼\Z"1e2 h_AeL,gAM%t{^|95#SMɠJ!C9.q*<$4ΟKPW~ H y'g3J㤱7{GlEctg? BaC2}JKq)v>ηDWW_XD mYKo:"Y_y9 )BYU8*)s16DggڍirӅeR5܉㨋ő.5*SKQKzwu>P:+nt?.&"g=~T)S>fQ|;v}^El TbO^ЩX8uR}WnT\ox}xwO&.y_(]^߬mxp m oF}C§Zi."6P-f/#'4G(_滀.xVF68ʏ UH(8dO4KL6!EZuаUM^L] [=G)!i4KR{@J]%5t#A8{oYȑxZv('͝V"`x|ں*I YgMJ{hx]0QEّbN|R׏mOw,NI_[wl$%'Ry9mmu٫8 .m(BFYetBi\ +fC2YBy` Fe/JV+ ]IteIV^cγ+42-*lQU2תp^Fki8L\/+P2լVy('$1`E@%}E)6)!)s bqP= qjAܚx #>x c0st w jD}'MTzf<8 Ke;,p&qkYSȩ2Љf=^Wn OjH"ĵT,AQ˅c(P~^_k?Q4dd*+vʅKj)D8h4?cƥea⦵X&_ޯ)& xg7i IoE,fbu3Є!$Q3 ᣞ0m-kJXq˅S^FӥgIp$aM顖iBWmdUJd+mNzbgPJ4[R|gQ-_;q1~A S6{=IO~atz>~6[."(DJ[X)qp^a,%[6n z8 ?`gK>9BwQk[X'J1 !Wˆf5[S(47Oq eT,FFcU}K. -0= ǭ1q%u"%xGJ.C l3%)+W?0x&h`Zhv7#)IοMdprtm͗nv]m)ĕOHT9xt%( PY 6d ¬?H ˝@iR8b3mRJXGS$hNbsuuHS*  p<W>bMГD : ҢɍrQz3C+IRHwIN3S@xXqȟŸ]5!W[`L^"sa:s .:Ǣ M!xwKt"7CJ ` [sIGɕ> <| >pv. N lSnjETtx̫=k3$#mb0f-ur-(Gj1h.\I/7#f;1%~pGh2QLxEE)C[H?~X .OԨ?'p&,bm_jўM,@W&_jAӑ:_JB~C3OEٓbbDEINp7%R>z\[& -"hP]Ţh͌D7!7 l?P|h-^vgcLSjY2(CDqovW @UA&BW WVu,~)ntDk]q,p~٬F6d0? 2{k}.y!4ZK_p}b-U%2 cHœGHh:ԛVUe.NdvR}%ZdGoo!'qlx}BmaOcMT8,Do- _6` 3<9c-~@0HKww\~ၝc^6Ȼ J1_a}FII1ƭ GMܿbъ]H ӧ]y];|t#BvI|*vSdRj03y8 6>?vʓyIq9Օ'Y1tθB&Ak!רB;K4Vh Jf]ן۫`^{F{,^0;DB}NzrkO%pI 0ȫJe=7yKEBc8uN5,FO< PHuG|apИRf%S-y.DVFA$h2@@pfiŨg2Ru-Q5Vag HR.ʣD_!yՀ#O- 3hȼ`r#;vsRwjs"mJėBYqjpc(Ngh>qt}>{SE(& o*bF"H"_Ph2FS-]JH{&[Br-˄gb5dVclAR6wUa|D2^b/$%xXݓbg"6&A6fLOo^.ā3^3Ѳ,˕_!r(-™M WIMQzkiscNcXܪLUJJfs6Y2[o/*= P@\hz^> '>}"6ШyS@N%%VUgwj Qb@n{Z?; EOց6DOK;C4Aa_@ɿl=C~X^6LÁeMGm RWIPH,$Y@*`++`-#c[4UFly+nyIA Ӓ!3$/5;́h V#<0(aaCQdu܊ vzt(;56Lsܐoa!;(Iu,m|8 =^a* }܈zD%L1XƭM ⷭaDvd8{oٚlj<6}V[ɓ`)~$fFn}Ow 6?=:"z=AK WRWJMkZ¾껇bw8QSm#h`P`xMz*8@dT1T* ~,m<(JQN3OX&+U잀XGsyǑ|ùlhZ(Lg'cl]^хU/Cagu^(#wx$rT{`jEJG|m)}/[ax9ZE[,a~6,a |ӮOC.Y~~J N<εe 5UމNLYLR!{c!(>d\ (O4J5g2' 坦ҹ mvH_0 Q^b-XPzŭ[f'(atr<&룉odY'彠g]* XCz_qV|#GrѩcnGD3S1 yJP)ϋ"|5cWo4æaiO6 Z@.f"G_R$mg LXIJ2K|UvQ0Ty!֢JFH3ПV>ke(>7 vu"t"9{Syijo7 _vϨX R؟Ra^̷2%AH ޻E{K]8n@GZlHyK pad涚k5"(d$j@eY]]8mK"cT }֮xՉW-%PU Hl4BhWSCUR8WUͦX;y v=AtGzEIyζmTMP-|CҘp \j!]Jk<dEHy :K\jLto1VR̬3#Ӑ4gqysKǚ'_ſh%BBY5* eˢLQ'cLY0e*JrXԑn5+ o\@kޙ4@SIgو>xؖ!F`!5"BTW:֠v3J/$L{Js T9~8L/Gh㯹VQ&j`ȮR-opy4 U }KDsu[oPCtre ( טN*  Q+7}߫3|e)[k?2ʒ &-7Øޖ*=y@*41 k˨hwǽ*Qs(P\ȑ5n@?rkB_Bu΅=ܷCkꂛLW6CzⲞ݅ 6K`#*%{{rpY/R58s-9v0 6BFa2`26`U'>,-}MQBUL\ˉMS5]70!س*!XٰLqؒn=(uYOcdZHoxFyXvL^ L۪ŝ^ e{a?zE:QGG&A–JFE}$'N?ΌC(O.\ 0RN-{!Vgٷs$]+g`X]fM,gg`LQ Z5vbEDq.-(W !qR˚ji=|5};ZYԺQMrlnK̅׫w׈#eGl0ڈ ^~popgYsIe7dj8Мk,/ o!/E{8hbǺJ͙ˑ{z̮)1,W&(F*SXqtH>,R=G|U[8yB}F8~Vw%3 f'! +Kl(U[Dk/o ,Ưh4&4燾ΔT'& @ɼ, hFR57NeV'CIqׄcHњ!̵/ȱF)#DیzbNOQPHIt36e1;I݂^I7r 3U݈YSwKQ62ߝ'G?g+,RF2缴l$7}ҁZplVmTCe8bNkSA O ;N)i- N=@,o<y߯C9Vrr&ry^F+|MB+U4DJΟHFgފ@rc N7ժr܋dgDṃ*>q,0LD-MYg\\fr A]9a s2gb#GZ㪼?>O4Ĝ؊=9ʺpHDֵYQ>)1hT+[9[Cv.Y]9R;Ҝ7'[y!9D͆*3q :+3 ץ,BǑ^zՇSxʻ;w,~0u|S}2X$)EyT͆")jfh]bj1Yk  g%91ޟPu!a$ym{CC!Bl`ܘ\'z")׵+Hc_VFw?p(cͅ'^rlNj"]U-2q_.ӷ6+xK0Wjz=~v a<٦bWX Nc)kPI0 N[ jR@G}x/A!n8v֣@ $ 2K#[!lO[NJPC=I/8Cx/f㩆d]ӂ Qf_,%i&~"S\\#x%- = H^&)0 c4 W/Ai}_ "6}o__s¡1˳M]!$H! C TM5-䡁#6]Vj!-=?kRX`GTCްCe: Q 6<ʲ r#wM22M=PKTew ϯ.CO1s`'E~{1vщPEY> 6N 2/ňj~ J [̦I"$&fEV*~ ڋ)Utab!|xk>)28,L=FIJ܁ypSjlP!{h:\$ZN ŴڻgRD$RU :dl@ MeҿJA23 >R%/=ӄCHs)DP="U~*}ncI Ct(OV(df-[;a*g|H@f%LڜҰjo E#,wZr<աGȻ1Yemjw"&th su3GWĿ&L 4AIV~ qEqK wbȹ`/Ci '>1 0ȑ^ǎL5zX Y7&%_E9VA{XptկrW%|J ˗=3xߥ,< /~J=L K'?6l V{-W" KPn8BCW|#jE) vQ]Mη}NGG\@ЖP< وm:be8 "5xqT6i|9FyU즲 _$뽈M*ȥ·+ەR>" :pЇQuk $B{4 0(W#^sGa⪲󨾩šӰBRٴXP8-N9WG^Y]l)%"#o5"$8Oz|>V VGІxFq(+Z[tٚ^p6x`jD ~!\Yo_تQr3>@FbVw{3a)'V 9i$'jM(,BdO쎔דU ⦌/ZQȥ#@Do)?D%;qR['3-1]E{ydr3<0&Z˓W,= CL ӚsMt\U ms7JmY廙e㶤ϙ9+ ${xȮ+)=~,²W#JDc@+q?sLr6W{:-C3%1+kAvyB •/O)Yot[%ĺkm%ۑWXZOH0ID"a3ye D,-i'sFߧG}af}tQ+89i*e(jIw: k9\jr:o*-@O'z7OVVlYFg2^c7ñ\-$i&[F>Ȝ|RH) _6+Jf*l4~۔'P[ 8MG4#8T;#t>֢/` ņj|ڤ#VVBdDex%;Z,KakD"u:"m\)id:H)"l8\ -e7F[hp)}ioe74MQBR ewXWHUNƅ3lԠ" ҭ ݳ @ocl|Y'SM r0Z`ZǏe6my>{Yͦ hv<Ӛ͎$uFRTk<{E׎2ݯ|(_W?,˻Az/6 `NҊA0^Ձ=[vځe:_1XZf);d:/cbK@zPr|y&a3û&IH}Q:zPR?mT@-_(A; U w'Hgvld.)r5}9_Λ*PHNUWÿo},\j4>he0W/|@ N _inP\mnPξu}kqd!36]l%NG<O3 -xBt;yǘ$F*Ykf^ajJ8\!.ȦH58 Y&; uFC5wT3F݆QF1ߍ$Ygd~0Ƚ cJ^`$AAjOLWf}A-g=_MB0m$}AxY_ΜlPѻ=7jOaFsKxhC 6qxTa}I0tSj7~ƍ6)B4L.PF͏- /* bA1FU hkMZ|xȂk,@2i96braiYpz*yFp*|}L "1N, bXTǺ3?"h0/jw<暴Ur'd$ $6xd(5=8EàR 3.=nf 87b츶hk|N'9$nlx'/Rb>.̱+q-L I~IurSқLy$̮[苊'*1B<,>pdcͻ cN;Fh ]vTY.py4_TfFΝnuPF29ܺ̂y(vLtR%ZPh Ε/T8/_႓zDPΒvKlCwUA\_gh/H_@WPCuT_:f<mrYI6i|z6V:N׉u MzQEn|ɑoWpI{G${.]P ݗYxo]lR%J_)H燭bgT`85S |&r]2 ]!0oOA¡oQk[ys7_Ls_2W/ cۦB(JGxjTJIgղ #m6@ ߼k*-hM՟*g q+rS6-h@L|^RSk׶!& PK?v;M6+pb@\>Y>7Y$KA,!ųd+jq",ą%<[l:uOdaIK>)e>6K i$>qfEfDU7PJn,V(5륢 y`?h- n\vzOT~c>ZܗB GqH~#V$|*I>R&u䚖M.g+x(0^-c&ᖤY ]z&}R꘱ WVxt [qUCy&?K^VZc)5%.rfDV!Zp]υvBw,S-dB8-~(?0kTQv ,msHǦ6i*|Eӹ#S%4xw6g֌@֘q{^aVɤ5? qKezA4nf8?I%be7Zkjd \Hܪ()!@{ DcvZEզ\aGGQ_a}_8anmnsFl\Nk8[{vI?֝jQOR GeM 8F}<6GW e/ `^zA+;\~<7BeV-F 3{Ul"_wʦ4{i"t7L.pcx-(ax,>cۢ|NM :7&|hvA%~gq٤2+Ly+LT޼V#(vAConjnR{e\UN]ZtTU/?f;C3imǩQD{8_ FA5`;rNH]NkPwiFhN,o1R?,|en*!A =*>>!41na݃VMޮ1p+&d0gԋ k8,vzT$!UieJH^Hla_a"λ$Ȱg2dڧ[_; Nk:q6fX uaY-_)l }5 VE7lmhCt 3%&A͵O J}'6 >dL&5q>iDwς-X}d8ýjNZ1ڙ !cx0;{qÊ*x!׃x 2O"p&] 쨒֙ Hއ^SqURpB­a|&Ԗ s90K=K)L%I0#U0/-ki&3I6l2{Sz[.֌7g^=Mcsoy@T.)PS|pM}׶ȭU3khBLuiKvPYѕqPsvގk[ Qk_ G u@EYEf*Z9_;%0q+;6(m5=i'2Y @꺗~E ׹̏4H5I.k'v{ &= + .|!h!^hR:HY7($ҁٲHp0gKKPwZf8|sǖLi v,l|.si^2g5h|X#4ơ*4LM}1?޷{$98 .V^_I5߀z ŭ۸nʈ(X]Z끝,U&*KJ2 x6l 5#\]M ) ?N@W q$+3u7™>3cN[jm a9 Vb`X^lI4|+HXy!ޡjk>Ai"].ɓ>&߰9f8)<}nܒѰ\n,QR/S4 J#Z5 ~imr(hS AZ-1v[a2l(f*%]E4)}$0U3T*bouՅK4say[9/Wo{pEVj[4#Kr"M_FjŵAW"}V!N8ꧦ:qNtДE.}Ao3v"(I40P&E1oAlt>F ܒ T)*ߍ!)(pnB*=$Dc,+z#0 y=\I 9?4jW:ȋ@a} FպID DFW:7jU0$U:7~l_beз H8`!}OfۋЄgXgÇjZ"Bt#o>Puѝ Eݷtgy4|RЋ(3EZl#Pﴭv adMkW̞|^{Bt|uDt95hO4V\qJ=]C)dL u6p/DsWmT#q\ywJݗ/8%X/mYd}FB5L5A+4Q}8 ;}:_XӒZ}S&b4(a5w{^uEiCĭvoUXZ.xbWMY8QC.#.w-Pw.ǸL!_c'GBC;b7C^: $6e/t] om{7D(>qu] he0|k/.uWX85ǐ|kE66 <@9iQmnŋ;w #h-K',t@g9;~ ]@=1U0ݯj}q2.._)&B73? 8<}FӰ,$"vN`rD@i`8[o M>/d"8W8Z'ʄ~\#Wp`cteJsWt7D/B`(DAT}}F#^@È&#?3C`Ʌ8m"_60V=6{lNo|&Sg`Ӕ"t,b^p^yI/HQst<.LZ@ݴ4 -zlTRxj_P F!I> }ZEbZ_GRrVp~bKqr4k2"@&#aF-ԐJ4i<4!$q6[HW ;]-ʔ[`?_I]9u;&ݓ D ռ\Ba^ maS*U"Ic2dZ4rKyP7/"h#}%.>?>aN{c g(AKz1&¼Q_dr$i w!{`oSo03+W[Z]=R,dm>Yy* 9xL s@U>>`m9,PwH!ͳ!bk&ǠBkEʒ,5Aa|8Nta Vԝjeώ.ؚ%\E, ?6!#P@;~J'lr|H3zn0]ns{0dߏ635!r,/;/\W9ǚ4BBYK z.BL=rl{V]2nAbG+JQ(b0g^b8#pdy]F0a~.xMrc@#v8o)xRVO(2eR'LM"'Z z_H{YY~@>=!?K&bl$7=.-*S %z/>uM@8~.&CH)zk0ր!Wul{O3 Z$T x=f^#0v81`WD,el+O6~ ȸZuu.V^'VoLf1+u"HnzLz-@CZw#Ji`twF[Oo-e֜PgDE{t4ZHk;[&Su9-aXQ"aЈBL4IM]V3|aL#\?7ԡ*L~\2rY.c$-~ZTƔF(W+2=J_nbyZ$m2%|U'2`׫K*rmaY><giB ~ XNFqn)xrE}##&śTnA²cYm !(S8kI(nl7J1jKGEkF=fܿAD6D on˞FҢQBMB]f׏~Y9ԓo)$H}LwS '޵[' ! ΪM40[㤶YaE߹-^.~$xV0w= @Y9RL2u JO읉:^[u=><Ӽ&<Ӄb?(?"Uii^44!4_zno#/C|ow %+ȦI8iL:f ]5'[tŷxߗXհOin(ӻ2LcO^3ԗ^"R[뤮N3O CvXbZzH~D6ZqrS4` T1ޖg>tmq`ʩ2 zhFl$2~B#sQ_ 9ػYn3fL}vȘ<)RtPuo֠x瀒tR Xt|I<;GRX_ 4qY//!x"Os= 8H]d)m3#5[}U*:K<Ų'z_Noګ[CyՁo}FaLE/zeae&dSݻԣaڵ7%/UFJ:E2,Dg*MͺJA@v.LJ8;CW`͛RrNvx"?њ oٴ#{MdbL*;u2NW/ "^.⋸ Agܹ|2$e6;L"&,@X_R":.9\!F k1T7=RiuF{F@;VB&WQRD(-h=;jd&д'STvv4B!neDUɈ5TT0K*ܧz3OreReklIE b> lx3-o(Jg.vލtBkaJK$(l=Pd _ils>D_}Ju%|e 3T]=R UjG{V[񜿱b:ԅZ)hQcBHnćBQf+B's'n*fii;GZP)ckKeA.>]8nErv o"HX `$ |PA;ӰA *:{_S˳t1XLod $[Y,낛#>7 Oi19BcW`,MYW?"j A80@ǥƾYb pݑ:"CS~!Piʐ&̄n 4{q.g.-FMqՈ' @8HV8'ռ .b$}Bo/d 倂anGەK[(3ݨ/kvPܔDN&F[_0!B]ɱS~xm-ƛ*iC]-/*k_3LvNϦjUf_XXY o&=L ~#^?!%H8\Dl$'ǪX(RY9h tRzU%u]p:e#b e[Zh+~18r97R;vR0IGB%e4M'c8%ψedkx{Cx@hWԪm-J,0Y5Uˬvdv_Py Q\,53Rʟb`1)=B71A^hABV6 ޢt}HyVLBB29iѤ/Ta}uS_LVl~t$ݓY&7Ђd:0!hy3Ĝa<ZYDzJ8Bw*\9Sܣk D~S  SYZ*r>Jp֮3}ׅGۍ)k)8UX'_rf ^< Zl=B;hL%`~  {净hl SbP"- 'z6#_uorB $1iW{z]+RIm&R®Nw_zF ! n>#> `YT8 */@# ʦxb+uطW=Fȼxc $m&vQ!b5x;.#'n&bNTQTxɫbĂQ/̀o_"l*NSJYm@"vJ&QLnlJ3֔WsnJد?7u(6|/QtAqD8/S?k-Լ-LoH`Sd_)dੀNy8n20h[ktzLkYB N@QQ`~n8;,F6cѧ*RzI#)i8wRk}YVy@+!$vVg[CP%ylyfDt_I4Ԅ27 7wf=jJ!3n9?}SԸ+$ƍM#fdΨ)'gMltCǭ(Bj˂a]E\XNA|q5ʴ_9rQ_]in5!SM^˜mC|X{{8TV⧞` /f7r:HP=Ͷ" c$Զ([$)`S+ڧ_HǔZ$~kFPX\|CєGQە 9Z b6%eԀ]xb8>zL4,,,ɛbv60×1Ѕ>\.XA/8oV[9A%zh x﫾/v:GO(x9W?1tHBPЏzI)dQW]% VN95 m c7/+r;͌psH߂6K2ж]H~-WK q}DijN;+ܷJJzq59B:4RWQvS!-#󴙌E<0Z.3sٳ8H͌/;a׷6wtT02"Pܾst>8ϼ )+DYexV dzr:k%lI8(XLJ4v4ȒN:BYHo *`{AE,–cS|8^㚀MT rfSC X&a-?5W@RJR,x{I`#YDgDm B\.6wQS*Db, 6-y,y%4VVVS%N](guDruDfG}yX3 \:=Pc.Z* 1ˮV.R~zՀm[^qh˄cfdE:D|zײ驍[g]j .˯F(*NwC.y!gaxk̨77 2}"#q[ +GrL̤&bb'+if\uOYr6G+qHIo'Bq4k/ť&#Wh/;؉5^]c]֨mty`A0;AYrєA2&YLۻ YSg&vevy?ڒe5?S`+.|):wkjV42Z.2vXM d r~vA'{uj25vVGhpLUg1$^.d2 Ai릆FTWWm=.!e060̸RdDR.,2#: xsuH {Yv!ӮTB{Wތ9pٚgz5fb|˜^ٸ /}|yj;eLȎ";IBu|nL !?~&G3x}-v~Y~T3MnY-Z[U[~x /BF߀Dum o0˜(mH㻣K1Q"%t<58^iE+#m`Q?*=,oXCy .2[&R ԃׁ!xGPy%YxQ-4q}[TUŅD{P"UYخsQ%Gك~K1ƪ ם*f/t,IϏ+$e8H)mV 0b67Lh1MU$/X}K nK.KU5j.#n` î6}/ZO2ؑ7|3s.b1P|Uj=yl"_~(BgQ)>^C_]럒3}l9ϏT{9<`Ȧ:za3t޲.Q\unSSpa5/S}A_%2$3KUSʸ^5u;lv2e3|7r1̶H$YW#0&pgcɪ ?tM`EvJH{oCλs) Fv=UQm̪$AmH)ře9 ‵V#I׫(-9vlVBЙ_|h+18A9|B7{Eѭ9i0$><*2:jtK~Dy_"-M]*fFՒ/xe-= 8u(i޲¹CツDLTJpCg gV +.²<"|J3MnozPP%S'OH&HPU?)R]x\M eE yMjBo>f;@z][p9bmTxIIZȯr@*cJ͉St'9"%4XJtp~]4}=bFj$ ֎;R<Ϳ`X+m~GS'2A!gYN:zs-TyHn;mH˼&!Ii2cs)-u"&X;HWJ8=.Uhe;m%$Kh#dZ`pLt{6Cym|ߘy۬R LM0Mj/xeO^ܐ%Yf0Gr1v $/"F@7=6b!OdEZҭnf=umF9 N1(J  @Q%xa볯\a4d\2{Q^%(ƫ%qwPH#sPeP#rE̴ܵh1,M;ydYr =, 8OŠtwŢFlP/ͺ,B{Qd 1g&3rC]X:uף#2p"|L&g~RZޛY9UZ\P//G M1<$m˧#"o|pd#|D;'Z}ɪܬAoa:TaMY$wK:{Qk*>17ݹ?{e9^|У (0Z-W;,nFϮs2qTkQwL N`?n"t\_Dt 擿U9_K[fw-7*4WCF~ޅwjsp)* {87 $pSߴ0`!YHL9fYN5pz¥6ف;"1;׷u\592hXW5J+"HmnL68$j2UOhRLP 룢haN&ska7]VCQOI9[(F`xW&p#җ9{=c XtH%ዻ be[ d)#qkŞ*rhRbN毗p\^3K;J5з"dnj],*fIJf@>\w%wΦZ#y;g.}0i(cZY"K{x- `Azԃ~XNj GlqbU 4}$1aZN:ҹp%uG O+I + ZߒOWShÝ5H]G3wb'침ЩYp(/[ j4B_4uWՅ2fm|Vڐy[cR1Z7fP?@%'- 9ƒkwκ0>@@T]ܝ~3o`ٗ<k%3w 1M=Aa^c?"ߙZsZZ7\- j?^ ywyi3)*>ZXWʼ;{!¤M$/PYY0'd/|Qb|%v$t1NPhSyZ{tY3r9 q)'\ 囟/Un$ Cbxd 6B*RB" ^"T^Q}'.PJrupԡnsahjԘ#tۡkug˨9G3Jwc+' ,W?uzV)3k)FwPMz[ݴ^()#rtfṫEE]QXb>*.I,IPvYmtst%<0W6t7h}{ȖanȣǠ${eQʼnզv흮{ŤZY˫[K /J )P{gE,JkRASD gxМa2/[aInTbKDQ2(s[kJ7!:Unk> `q}Ilu>3ªU:0.#EXVmʘ'Nd3mr9D*2Ot)cR:3Gx:?=OSA7o7T zOAe_{-PD?aWM!/y_;$:F&Z^"C`/׈A𲽔s& :>+J@SZ 5|Y~뀋{RzHlT )o|LГRLbgz[)0rnӄ̻OHL(d1 ml]`SM3e ,A3ދފ 2}P5꣥L;Iiժ̺ B?\01J[)eЌl  z9,)HRQ;zD)2н bm3b?rSC՚f>iKg Tʹx$2S+ڴnN9&$9fhm~i2|Ps1Y0!Jv~BN Liw<%;تˀvM6"S<ߡFtnRg^ \}}aVBڃҋ֠ȵ0-F@\Y^WTj#&"'Oԧ3ꅤ`Lʀf]gq^LVrcg`JGU#^Tgm{?4tw,Ɗ( ݁:yXrw [mmKW#J7|5ti2اyN1D].""nCroi¶=>GJB.ie>y*Ɲ51Qٱܱv3f̣pm/:tI"@ҊPYq`q>_6c9Yjj ka+֌3N)s`FDgjߓuc6A)LY2o o-lQ`/>U͐d5[E;THKDɓWO8ӔJ]@Hgiog-͚jl{i㳰]W1J%8g\B=> D|| VZ:$?58>Gk>S5MONIkƠJ,h8aO˄4[xݥYO˰R ^DXICdU?KN%rSAc5T]C ||9H*.?'v[PɄt7~7Xu@`EɊ޳߬kezcz8+j~AS&WOk8ѽ6l@GY {͠8dqٖiv q[/,uE@JMAPu[|^ +} $L()`` 2o:l TzTjQ@qHip:cx ;4ٻa;9KՆ+S }J2i\LY^ =ˎmB#o~ 坦݁|=c@SA4Gn;#:|ɩcwv3~uoY2/v IVtl\$Dޡl7? &{|<4Ⱥ Q wC80VAnN["BR`Z`f@|61sDEGԡ\l E}~!u,@uIZH%dEg(N5ȯ3hs>\Sid!c^ڕ07X/@`g,m`Xxk^$%"[|pgCg!e*߄x8. 7LRQz]BkҼĩQ=d 4//ۓts5sOd% vVwۄT>OJdt]q-b|!֞ MuMUjVm4M@K\|` V~pq/=6{@-'oL 4rPZUG]5tKJ)[x]-tJtQ EWP~` ֆA;mI_Q= 88d :Qs\Vj,;]Q}kp&,3gH3x Az4"Wx}AQW5jNs'=1O}w)" s B9Twk  gea&m,U*drzd>:yŗi؏`m_1v#- Kaʵ= W"9X䩫p},XR|սc /#%F.=ݗqc\,1Zk }J],9O(@d(.<kxJ_nuʜjgwVGo3}pٺrRߧ A}=]>8}XZ˪Eɺ ^5כԺYRpRzx+-´˭ㆠUP[9APG~k3 Ԇ`@^ ?`hh,4".{ڂML-%]iuphpXZA[a SPL,s'öoyo+5ܹCka/ide!BYqVT(4{e xr3jP_#O̢>9ZZfo0+ua_%V ]n ?܎NmFL/[׷y; miis>')b.Ë7GN2[8)O8#[aڒ0wsYv/1Ҫ;`>RcJu(yƫ!΢2.6w ~c [El@ p~“hv?E WI#8܂^'\Y߽ _뛆~,0:֣>%PjdIJ &)0ޏ5Dnjp'/5d~9yJP%MƢrS?s7Yw<5Mp}r87hW%muX@#>"Ѡbc_S|G&XQ㋶E4& ~MvW7(WE%XBr,cT|Cc!N;Pe%BU- Q-*q`G}sP=^FI?B"pzzS$jʔtr^7,f-;OI2QHNm)`d(3fEPJA@MQ t b$kg(tW'xv$ӌCފm>Rp|Vm"I~_ZC&4 M?{@^ѐ(49tcckǥ`AL'fn\L-ް+0OzlGe}#kS5V!*{BWW.c IS1/ Wd5$$ZNJ>nTN~av..VU: aŋz=i T"uux˻CdA5K00p5s4C5y]tߜDW6pB/Z *zڠ/#Y$-v BAZFi_6&D.6݈TV qW ىr05UO9f߾`c͹'O-$So'dT¿PsPA:@LcoY)}`5֝>C>zZ+yG$Gu7v1Xi2J}z$pThIK<agvҐ;%j0&L9jަDG6x:Iܾ`1n~&+ܢ-hS_bt:4z2XNKj\wm5=_& Ѥ RhnV)na|>^)2-hl~ 4=VYÍJN"? Px$#]?.k)sVɈ/ =z3X [ߜ&MfmyqL;b,[l^EwI⩁!5Y_HGw/z K I!~lhڄj'δEbg?VEG.} Jb_HD@6=_}N4߃޴೶(N 4;2^Lsƭ=+yG%)*5 S^]. =1"L0cEE 5?X!woA}@0B(byJDt)\G7p&4"N3٦r0_ gx2RG@ꛄxefDQ hǎC<`gi5e)lG1h< ?hzoB}uSҳ] 6Txq,8DpBTFCWªq'*b";^<CΣ$P," tRiܒ^ѫTvGBFGԮl;s1uN| A7).psO~- I̖9ݺT?Tj˅k'R)mc\)` ƴj$o]%>aW *q+I@oE=BB]j_<9 >3yk{݃lk"acv`cբE')t*6&fj{6O(ߦ;ѸCa nVer, d3V@:1E.dT\(]4esG2P8i:3KP;!zi.2׫VzlS^W&>ڤYTP ['"e^,qpY R6fXS@.66 n.!03.Y$KNևܺG݅l'K?7gs1V|D=,;Um̽8.sꏭ~X=8܌⚜Нk@r ]TB,3}&yf-wq6Re$F:kTD6D"#וpPPb}_{T򎱩pTZ㺿2YPmpr߀^|#&s[5XǮV_b  -K̙ DbǗm9zE7B{^FX d[s(س{aBT6eydӹYr\>ʽF0C}N%ARGF]4UohDc6fh*/i`jSm,psfH\ثar^flc7@?J;5#}lffSN$ c{c{NM԰\d_\ʙy]>1?~Ԍly6 -|tad(KUӨAI;9P>ի᯻͆셫~`P[ UjI!t9Y/8.7ttB_dnp<+'d-+;3:4d E_qӦ.+2GtIUt49: KHS!Ȧ>ҨNN?LHGvPxB{H*4iUHn U( ;mD>h*ħjသf|D)OeIV'8|8T%&tX!!R~YO2nT18_imyI=z)vvOGxQ Z ߼.j%$I%P N) Bqre@DtP:ҁ[YnbK,Í{NO7}/SJCi% ,(7D}3H(Ot'60g@]cK`mJ$|6Mp4y308m.1s@2|iԌ%S '8bܵ譔׫s~LxD>پ'j !ϛtwELsQbcHJ*~J--%EAZwz%1E'4S4tA]}ܑ53Ɏ*cc<oi%_ q":.=iz7@ 4ɕ$܁ȹA}fa.Mi)to%Вz%ᵆ 2Q~y[K~e*giTc@S NDtNBðjŏqlF4۶IB=SX?ǺCC,`GOfq )0i)Cэb)PIEPmxoq4 =0"#tD۲Jބ#!{,cqxZ]]M>󌆞,xv}Ұ`Ÿu:;B߉](B^4xQ{+Xp/OMܡcXO6Q7~|}5ZʺBp3kz_`ﰢBfY4d"00 Cy#˳Gyl,z#;m6 ed%̧"L>3kvb j<&PfqOXb(I7?AI#fxrХ- =}9o+1{f T0~awkkq3Owg-,SBe -=g҇\lMdj"gKHoO)q5~DgšF/cY8,+M},(Tؠz=kD!-Zƴ* ' &_*QJ mZPtБV$d:s=gkz/ .5Wyi)Ǯus&X|^`N @]!ֆwԝ(RO Z(! 9kEc X-h[rTzw][(<kr|)_+u:j8RU)5*կ\@j5?4~7M [i;&MyCAMk O9m(O4{<[U\ MC@ ޴x4= ޵<0Tw3DA͚u;Q?Pv7xgƊdb 6͟W!wWm)v]Īo놠smN43ˊ-Cs*"ǡ$.)q#s(~UKo/^f,,s;JD+M[X%ЗlOx?F-[&5rPVϰy⧥m2ק? $9i_犴EY<.$U !]ۜ"7::_("NEo߭amG<|Hm[BD_IoX+ ! sɼ8. O*l藸){4GֳD.v)sRZ ѧ(2n_IH5=U&>G  [:5[y+A{_׮馑<>^q숱S|ܗ$19a\%pqkpם.r`Ik`c öQ8`lw B@k oUYSmʇOJ|9>|'85 $*nhEayrHu=de. Ղ* RAHn쉝ƀsNj ׉  ̦TyŪSs~8ve@7},"/l;ZPş (D/4 f2)Nu& U#,; fšƄEG=$@C)x==8ON_(\{Ŭq#S{02'&޵xf[Y#c{QZS nR*h 17`PG|(ww{L5_UQZ( S=q;B,ޏ[Yl"B?>tYy@ae2!%itꍶQ[XGu!e=kn%Ea#`| H(Q]f4`ku^4ܩ]3~ ©DQFxcS;sH)[mUKSKeڧ9-ypeA ޯ^Zffø%2R /}9KDd.Ks1seKn*]Q%Ixg6WPw0JSB ar{m,sU4퀼o0},܎zZfxp|k)\- P;(27#B(1㰻>0]3|Y\gn9h_AuHK/!OlYOZR\w 40=iZ_=)>?4T\.WEogk" G}`ЋE csƠ<(7&¾!nVX!c!1iIBIgBfgXP܂sZ(` iF^HO"fC "!zae6&1Jw6պy08xL} Je'[s@/ =`c2$z$o}^.A5.ٺ; C $\S$C u$7'?7: ^)Cg>,W+򐤟`5X8> ؒh)$XEF:9ahOJ+ Zؗixzt#[U6mMYdAyϾMjOI*yJCoֺP?[#hyH^&$;;֬Ewt\TQRW@ܒ{> qosqc9 R&#C_oտ& + JvBVBXtw4-5rT#'ЩȪ56 ZBo8n2lTB_L1I?pg¢tTI],Hxٿ Q]L|/pi3MPz8=;!%%XsㄦsTCHz #ʌ#-Hg4AP+N``i@GйոmB5C\i|ΜZ_ XU^Yd\,A]h,0VX2CRʋN wK=5WWY!Ljn՛}St1<v&zm!x|cR{7>Z<)cI&J~X S' _E.'osIb(Јjj[aߎBQFh95Nߝݗ,%+G 2 ?"dcV2ã(2J ¦-Jė֮HmjA,W<:r-4[%~](WК# BHZ(8>\85_%=i ^tEʮF_"wb٥c+`DuHkv[>[K>Cu6(umۆ^ѡ{a?tAXzRF(+C|s\1Q+fpfVIyaEZlgcl%yYL%ŶݎRSVqIl$]V Ha\"$ѴRv^{l{nP SQ׍ {坲rcxj~)b80i{gg2+f>[TgEM_ %45¬Ʋ&zyڐAzlwU5$}'(qZu1pl0Q:H#t<8CLAbX^,͵&CA!=TÜo1A&Rn` {N8.2??qސ\?Ϙ g?_G"f~`M"Za֛-fj@#i2pMSBG-Sgdyg܊UR#S_ O_.@|Lw`-76q=oʶc˨v tҢ-(A1* n[ؠRl!`)6ԧg^ Z Qhl*9of\3nxsBqyhNCzV0G[^!s'ʡͣzlXsw MzgVOoL!Sq 7 5 @6(!Xy0,~7F<81 ߎHs$ָIͶ=]")hyCzOh4dis(D\QXg;{T`}bGߙPJj |1S tۉ:A[lx҈.| ?-av?϶Fz[!{ǐPJ:O%skl$mNE~<7gNO/-AXe2~ iyK ӲAjǒڂ4;d0ApNqپbI#MWEA$ˇB{c#Pc "6B1骣(F1 8zida jcCunD0y u@-cx79eq4Tyw=*۞` Q`֣sFJ]n%uތFBFچs$_FDhS[D< Ӆ6vcʺQqz9pcxuialrSwdѹ\wFH: _e\z*m[ES/gh,+z)tQZ%/vOHmȓg`} ؗЭ"4OR@R3vg{$4Npk 7̠/,Sp(=Wڦ9&c@5=U!el՘%'Vucy. ZjOowH70FNvQk!ixv^=[PR '{Ͻ3Q>+P8L" &z-V[FXWSnwq(:z0i-g{QHn<;Sj1UrAbZtJ#Zq' h0Q> ӮJdo A6J;0}oX%Ĝ> hMOҲ\_ lad{MLğ-#xDJ~'+)=N$ـP",Ȩ~k$F{J̐Zl!8Q`Z4P `Tد+v|#3 >z2*,^ +}+^+rY#Wݳ:~γ~-ko/p}ĚWH1j m/s  a~/ԈE 3 @uօ[E=Ѩւ7Uӹ}<1b3]6h77ƅxqۣ#LxAGhH?uώ QT;LƷOB jOlM\}S<5 s;Qj#9^7Hҕ }p!Hbfz| ib($wiCC{M-Cx'ς6_kA}byD%>e&ܦW3Rb/Ssj좁5fY#ӬB ŋQ1-J~gMc" 63 bu9dwO0>S2xիRjE-`Z({&#n[۰d&x_:'Fv@jD")4\ybmf[Kh{r}.(XRC&z~ N:^V1JUs׊`C:{7 !g,|(t+)mW ^5@$~نÇ瓷rPmAsh$(bC{z]"QmK՛uՏd.ZxD$8=bn?˫2"b̮)SnQj'%8(euh+hË^#aѸj H[P*ikġ4T VG#ar>K0wιW1Q$Pn~%\@-l I% (f(g:dZb'y˭˺|bS[tg} byU5; <@%C *Ҷ=1I א !4gb6_$ex$1?r՞UQ۞1IK4M[^?4G pÄ=]avS;g mܸ++N-ǿeR7V?¡ {0mXSLeVJy1/?}9sXCHBsx,{ wG;ԛpʂiTLãPȞJ3:UkܛdIgVd$x}="UxcYMR 0,!Dgtvq!ة hSY(6U@ZHr5lfretsEeQ/#ߵE֘Inݺ6+ riФZHT>܅?ZT?E4&;PA?h8 xZ#N|!r#*{PDHF Yau]FcR5Ňm/L% fxJwޕ}kE:0qh( { [i4XG|祰|TGx-XArjwM `/铇ī}<%և^m~7"v(|Y !-3z9]C|+{Eq:1+hPÞyܼ(bY0ygU}kBbj6'*&g.A=~͉*rEs>=0=iL yxdYWdE*n'jOG"XB)h]#fTXc8,,t/fHri-۔`L t!xe|XKFZܒ|D>iqB( ڗ{{ځeeKM1d3s|/)uZ1`T\RIQ,ljA>YU+Y_(+`F497Z~?_-o%1O@:ưvm5K  Q9\a f7xۇO7-rVD! LGF~[Gh0'prrBw3DCϧ:ʥjVk`by˥w(Q0:Ԯ&K(B]vf2A7'C>!6Y~pnCJsƫ5I3p(+(ӓd\)51;Z9LmFm—X>g8Y&X/MGڑ鰄f:npQ$ȟs :E?RMPaOLqЩR7BA1m)pL->^oT2-XcAh!wbǖϩÌ84`ܭC^1߫ 9GIRA֢@Ada4uIw|%*#1VsĀ".vIlb:RR6#:+<c1N*T9r{x3߾G!nD3N{'D"|ᄘil%Eۋm%s8 Tܷ$|j=4k]Y2`dߜDuLRjv>*?20ĊU=S{`a T!?݀gWhM,eP Gd9w"xLӞ kDj89=]"Jh]+M$z?a5-cnk- {G+{(^fs"+0XE?BIg?SJ6G!KYs[Ռa`ݍ-ʔ,ض3 6ިYC|\ O)"*R27jƸM`֥?Y|Gqd 0LJe ma}?m&?33%)[xhQʒy1Jz2=gBhV*RAN5uwt`])S^;8hhe%Bo"EdZϓXT4U'7ӆċi +Ako>. oé~̒mu !)hM`}T`/&GPh ⃒# Ib}L6  g7 m%vKC0Br8 lkXڢ(bGͩ.w3L'QWn-6 .q.꬀^nlMoO.T0r 䚚T&Qהi@WP~SO)a%Vd0lKEOuѩHz\gF;sqؿ.&$^8R"c%%EQKbj@픜 CC'Us$`M`s8IKM羁^22MEC;oR{^^d0~b74:v1Gc`aݟho.y1AOJsgC1! L6MHvj¯)-: ꛲mWգz:] a<6ZNӆζ|A0fK%R4$:vyT+l IDekƖp5՜|NB%td~m Ln6q;~t|Ò'Jilh>~s IgǡS{ym?}a6-b3s4BK>0 HY\D6 U9]4p/UKhߡ ]h/5W=/ӿ6MkHH_z Y;0{Mļ*xB>֤sܔv%|PY9wWEyVMvE>\_e?lxuהkjVض~ c>6+9X,Xr},B@6e}}j7΍oMOt{6{~iֽmZvjL5*G?@s{1bp4N[W Ǽw7$ J%|+o< X#3=Q-L^W~&rƴmt$:}%*բ1RŸ!aJ~8ڃD^T;)ܡw)Oτe >DJbgT՜@-X Ce=a@@)[?F#1i5)<"5K&VaruҳUت'xp"Ps@]KdcLzQ|؏*̘t3 OJIQ6t]5}pk^tbO-jA#ufQ%z@ H#2|@ jWᡕ Rv)ZcNZu%{0UKmn$$Gz:;ׅNK+~0tpUu[u[H,A!AA)V^HJb oEyhPN3{Z5S* W1^nNDkkpYub T-{\>EX[ʈx~ʎ\U|Cae?X FV043QU֒haM!~ELfKtԭX\|`}$s@#΅`J!U rZX7BQu w00:w֭=;}[=KPDWؑA7DQ!V?i-Q- Iם\S`=RwS!:#ܓzg TgT'hoyCaE=e A#;w1+ePssǿʪ^< w-F/][7ڑV?5qE MNSZ'gjb& -\<*i^зV75/c7G uz0ARxƣ3?mnu 7[A`ͽx֛v&ުI;U[;K GcKqlS+Z@Ei_xlRp愣Kn 2_>vt;: >п߸ov}NpvE._N|w|H;38 jxdT^%);4a%W*}(axԇb.ݭ_:3^\0Y>JrW~}fD~+C}}у)L0 uI6GdYh10\Fk \2wHH>N0dԡ~mN"Qnk\?MUpaqxU6xV6Kά-G1b/U9bd!OΔU\ME6nУ WR5 aqn4Y0;a7/"BX6`ron+len,cճ͘mds\åѣDiTW/ qz~ d0ZH貢 ᆻ23+6&Lo `i* `qF-n!'4- ɪZO?;w=[*dxr]pN@4V!X-y@sJb_pAm/0O2L#7VVKej"&`HsŲUnEci&f%e!0-+_>=,Ca]I Y]rǢQ2iaHhgppyoMLJc9&]Ga3֩~iYrBUeK9HC)&(ܧz-zp5! rQ,<~̠[=պL֤ЈV.P߰0!  එbE܋h'}NSCmb^WZWSbj"m&PQփuao%r( p:Ϩ%$ C*˅#= K ,,5Q -be9zeau)B hi͍4otxjꔽHZ?0Yl\8<΃52ހSb4da0Œ"k|Y[P@CQj7T,s4צ_qb 9!6KfVxSAk ƅ%,!܌c)ȕ=XI8#(eS(^MS ^ Vׂ>5puƟZΏ ;2b $ Hyi\ҕΒ dW%d[(7/G֢e2 FI @\:@\dHrHL5 ' wx1"{hҾ4%,bF|0&&q>Pe=>Lӥ)7T9 }8Mj֥5| 9`>YLɤOWjgz"v9D'-\+af 5x}aGC:B(42n.٪ɢ&hecAِ9vhEC۬M02^|7@AEZc6:k?RGs)sQ[B@@ji5kUp, t9"͋AUj dS=B/PbΎ Y4d96` 9/\ |ɦpfbry^B"J\gwx[t_).Nxێ௯bL(x}Mqtb0(F¼ ~hڕ;JN7)Q,;k kȐCsuwKҶ(okG[~Aͷ9Z{8S\i uzg,ڀ6R[0[ <ۭJx؀Qt 1(ampk's?_RQ&Q`95r yAT 掰FQ=}&?b 1(z:gJ Cӡo}m\̑kf3HaHWD-^]dŝU$5]PЏ7;]3fdsļ,4' d8k'Z+?-Ņu;"Zn:0L%A 3+LLE3vR bэ`9[*Z@73WkƉPyLx2n6ƚVzL!)ipA7-86`sƢM&fwn\[>7+S9~Rqq~wv'_$(0p֎1: ђN2qY B5\ܐZp&OG E7n i:cZ6(S8 Yw8MhF[2hJ!m yߠܔcq6ΰ~JdǤ(_u6p=[OסV22UG=wj%,,J}.p^&l&51I|ՍtdXU6ܞbB`[;2 wdn./&A d‰yda00b07 ЅKڸSfHPGneT@?F$.˖I.ʽnr[&$kh Twtl GqcLDO&z ӁV<15eºQ{ F ߼%U][Į.Ri(e\+BY'bJ޻¸ Vcp@ Oi"=pP{DNv3S}h)U3@kªN\谟z. $=>KSv,ç<ǗXe'5 , }Aj!%2vGlK; E ē{3] Gkf^B* wDP)3rTȋ e&FQΕnUIgi0A;TJ '5n#W;єwg=pT̋=]:Ye0ha~W n`+v}nCzgS`ʣxO1Mr*pֻ`c &S,k4Q_s5mq'ȴ-t JmlwA}7x!=(,^ZԦ=߃ wgs}3^3h(Nq]( mU{_fz H'-1R%9֎?8[^qS]T T̫.<%1;Uo؆aMt ,@Fdk"FF- ]&A[Qy/~!MGt*c?&g~PԼJxY'x%gқh,o޽<'_ˌ>ie(D}yL;\ %;1,䏤]mA$xR62J&xd9)S@R&evr.Z3vVL#}OJݸ!H[x10uiO0>WjLdG׻@~3i( ]s't &ݗ*K%*Zqj.)?AzR1f~]9JLfD-~OKqtq>M OCE+ F)an(z|Ch*<_MS~*u5Hͩ ,%lb&Ymp$n@"d;XAp˰Wۍw?u\]pbh(V>yRGhow_|jV]nq5B>Ĉ.V9T6h<-`;17<Zps"p+֑g"(.*4[MrȒ~64Ckg:F&GBc`7E"M:'#E~B{=;{\.HPK#N꣜2[x *H{hqο皼co{X>uY_DE`zjU>1!q%o)E5hB%/2O͎;*G" aBdEALyrfQN$ˢ+¥ I>V*I33~lĉ6U yR@:Fd OˆhQ^MH'%YL#ț:"8[!~"S)-UW[Tˇ 6S S`#"6M6zk3* f `h}s< Ta`S8a_/j&UMVݱeRАҬwT[Z,1DǛPIbd8|FikV@nJ7AK;`% hILwfF+h}VE %D[/?><n]0pXAqVLc ¸vSÐGCZ@z$9axYYl.?ɉ2R_+ Z˱`5ua`U&йynq=+MM$3Q'O6@j ]W<_U-~HU^.o7E,Ƌurjްph ʈN\c',{#}F}X3ofMWr͕EQ!y~!wdHDja>!,4xF={Kk:˖O͓ZVn뵋,/f\Ua6bH;jgbz,蘢.]*Q5m0Zw~TC# 7|E"u`Ǫ-.t}zgwWQ :bf}G'<`dGoFy*_S[qwM݊Ebr.L/ 1Y`xp3p*!P;A> N*XY:B.vHqT \fF1T 1VŦEoWuT{/|Xf3$ae9pyT~6h)OrՍEfWo;Z:<gb QF U2WzX/b'=]q7_4͆ ] *3au/ۻ8ڕO\du\6ѴIg!>wタc]uA 𺒈}6, z*Hx?JhHsMn1]`Eb2*刖ߍp%Cl} rSشuyùyM!S!]9 $ )  !xfN2v,Ea]fuFw광!ࠜV՘?( dd \Z~Jd",\?㸭 3=]0:MS {%CnY3ӍWXAPy9C^x'q xsrJz\>:Yp "JݟDa#dqߎDaVF,GLH:=QN䪱Ffw=9Rz]u2st#;!}3MxL(? XW{I6uZڼe+ԴNfછ'2u?uX#-G*\[RYsrO+2O_WOpj0y?R?hS}9eFAkDGV9n+sKò*0t| k8Aإ@;J&l{2Z;SW9OXO؀[ERAKu jvRh}f#TMdh q|Q=J@4nr8^W>*YIFMugMFYfF*OWjwp|ͩض8@##Lx I]ɹ'8Ti,1dS`y&@MURb@?LvuP-Gʰ'Sl,7ѯ@K)_YMRU)l>H#Jf(lױ? n7H 9U`K&uy$ x!wTr8{}3n?8.X5$,9X#g:6$l)&\sT7ɛ/ "ex=>o},oD.&i`>&IlD\>z9ޜKI o!ͧ 1WpEq֞>.,ZCnjDv[ďuJ3x 7Z٨)i1R*CۚR6qqXeb*nK\CeX9eQ뱅rZ^\MYI:=3*\&g!CO5,|{p#A LK^reͅ,J3Yß;ANS>nuēW=[]q7/.rD$88[1ӗW%1/Ā|26HaC&a91ZH $ԋ i۾U}uN6#KS)pmܖ9tV9).j>, ۦ.w.?4:'ڻ#2nUz2HiL"E_1.5 fXX >zI"CֽS EjpwTŐ(fkuI͵,x#s@ѝv'= +g j#b&Sd݁3_+Q Їp} *2sYݼ|uP D)l <)xd8LlPZUSN{l[0aUմdYN+( LQmCPœ6 V1E6Vn ucHL b$ )n0'! 8PVvׁqZù-ƈҘDOIzFXkxR.~TVvP7֠)2}nU3~ٌ\`FwFwY:Ng< 3WrIYJpp8[%1GZT'ԇv6"\Gy Y?ƝX$\^Q~zND}i^b[C<İxz8?ingmF[8kzEaˑΛl'"ƉK>¿&a&NMFwqW7X'Ԑ}:6rJqݜC/LdAp? B]qAĤYND F@ӔAf4[ɀUhK7tAL!d:e²8}Hrb/ylbq a~pp|Z,kQ ΀Fɍ>Düc(5<7O>UnBt%…u |x􃬨c}}<ݘDZa9|#yF+ l%} :P dh,X@; H 0uݦ'(d̟Jz9`Uc,3xr1FufH#>  R'/ onР/ú\ ! '-%LՇ59o%K-)0;RʈmtT/[2Ҹy'.MuV~J7حO"j,D΢)ׁ\BGW_B)AD8|@mz'*fd+PL+AӶDsJ _b햫G,`0~rlɑQGBxx{ƮѥNOL.߹Fx ueZ]F-$]9q 2yStRCcc:%i-͌mMi2sI w#/&0t^VVZvl&ׁ i.]/JE}JO-k (TiJtC$@qR.LIfWn o2} |l(P2 .RzoWVy$*|ԙMr "1)xr잪 ?I4:Qf:h|UkfX &kX9 i)AX~=.#0BYtAhL?¤@/>` .< [y-o(5in>z5CG(`u Hm!>#`=1i "Jޮz֤?RKL+Z>s\ɟI+/WlH.MjE /h.2eԏow6T]B^g QC8$xjRf#*,:; y);II,FgzN2Ċ}2`XRHcϴ5,>Ht8 RdV{ Ġ`E,_*C3Ai~R1 j gû.%K05/\FU' B?#dh!5񿸔m#|<[Z\L74=D vӿi o]deў_henNS8 oV̎_ݺ4WqNMFk&WI*5=tի^]r!C·sE(sJ wYpɩ>H:-q]3l#PKT4D@,(O9.vj͢2n&z>6R&l-QgBy{a=z6ГXy1f1cKxņ~"::zlޟ<]"MGJо\)iA̬\>i>Լ$D幚C6[~4 L3(b6Wrh_K,c骞X1V͸ҙŮȅ/>?oY| J Lz L3^3}N1J1qCa: u\ lu"P\IqΑԍ&ľoq]^XECOcOHYr0--Un_~H2Ejq {@b׏TΏ{FTЅ 1YU?+  #ls(%=5 ֳ(~_(F4J ;wR] \L93h).X%GsoYV#c/ K 6r񢨪's$,4" hꁭVy&٣ZS"sH(z8uNc7~fH5(Q`hb3AIB ӌ9/ߘX,~aOF_§a[ոM/Ż p7Ĉ9p,7+h(R{nҝ`Tpme Kd!8G3YfG43yy5qLaK va t mbZn6mpO)@nN]э[EBFv>Sw~]L!GA/Fqe KWm/n4+?}p2w"%TPNB3oJ,B9_nޮ!3Z3&R F)OԳEʶ$>_ok[[č3U8UwqbO7*SAsl3 B0fq74V#n /?Ի?e|;釖<[iC3\Y !v.;@ MSqlvj-$Xk61c`L J4+b*!p2LZ)VNI'vP]×z]-˜CKI3f4RviN3PwnV.;$i͢dw7nV"5P\Dx1}TKu O( ΜDV"^q4?zHV.S{'2%dotƔK_iV]d:Tl{;gC.+?JW]`TVUXL7q=\8M.q]ȑASԑ^Q:(n8-Ln ):' ssDIqg[UWG{Ek9$J$[/^oG"ѲQh;0\k 9J-%/Z@I.#s~MO`e@N['BWv&u՞̆KqkJ QM%>YI̪UYqp騇J?PGըD1#h?`ɻŸ0d U̵.ݽ]R?ۂפ!^N8\pHꝒmGd)UKi1Եift!w}Is!V1==[fHG\Ip\Tc0Xj"~Ѩ:&  JM,T]4PJxx]Jet(y&~BbM'QnA~A'z-ϻҶpbY˶]xvPBXs"G=F#)Jj  c(7H Qߢk\UIy"=w*&E}1% `DoqǖS Uj#mr][UdAhED$_6P_5z4&MAXʑȄrNG,ѠHyQIa3by,Rv QSC(sMDH$)bEtפJx"rv HLJCy =a7GƳoDĠDD/^.{/5Ǜʘ0W]C CE6鯘z\E))[ ސGwC.X*{NКC=B|uYu͡oNRX&Wy >oV[uuSٔ ?4sn@&d[T,a9q p@+F0K滖i)R YRJMX.3͊[o/   ƀOg-.I`#З}ŕin J7lU:N”fUK_4@M!/ڵ'J2ov.-~$.`ưÑfD8xսpro_eCk8j+[o'a-tҩpߴTwTni5Jdki|G|OB^x>RO9፫5!pa؞YgJ?D#-U7<;!h!I ϲsߤdKW:HUkHD{H f Rt2M:-3YE mCѳUe j`32_(Cjh49Pd\ia+'K%z|mC&_ | %acn Б8b ^ܳ_$֐7V<AFȣ{Q@/=nH$H)V 8 \x!w+ uc+ƤN>}Yertƕ]4wSqhOKmK8-)BHĻ{Y~5h"5Ĉa~kѷ6Rwv* Dn.gbH{)j\{ͫ`x8 Gw}6-l%tjjС ulPj=M GԉԀ0k:ᶭXc*"X۾j>P><$Aq<-A(L$L"!!O^=Baۮ'=Agv1Ź21{l*{]~Zc!%5Y̘7 J` GJvem\BAf>+?NP3MtH jV'\oA4152zX`Cˤ35k\!&o .XVѮHNc-զkP +$qT, ӆ`'=znLg8러v.1}.ii[ 7Wcabh᱉[ؼF2&K0W"Ul3=+wpFۗYuI/ZOzc;ct50rNayVĜ \;V<1F5N0@(ZM0$%PÑb_z8uO[w -Z*nUA陉#e@J2ͩXJ!lnUcJ8$2.T|oуlo}"4ܳw:lr72$ @g1ۖޫY)iʴ,7x yF߈T1=9&C'b+IfDvrǛU.GZ5s+KGĐ Uz2sIb<,=,6P76+ܚm2RL )Vk&bZQݲY$1DWN+ 5*S'qb3{CR?|{ġKOi{gxfi%֔E/竏;-61·2f˼UIϯ.Ŷm\l xѻzŨlV̠/!7C ty 9NEbĬgj7 %BUC35 㨨t{-F}b)f@BU[A;ew}g w7Bnρ5Rs[1]9Tst6c.3d! NhU;mot1 2nBti%R$'FLwB^~5I",4SnݧTbUa1TOKNdMn[IrAE\u융k=\Y ( ULDr` wsvL4ѓS[f?eI9dřv84ށ jsI$_=1` -z+I{qnչ~e>}- &MyZz5V;lQ))Gb}EۛwuJn7p]9k' #̶0y xH+TV!2mrJ3a~8̝g'VBVz7vok r2A!APKӎ5`1p(3GUЯSE9O0C\44Tܝa28h "#5NjWe^ʯ;kT1i&oe@O5\|1vO@ؕPߏ%kR kCe>yM4B^G#jKMj 68Aҫ&eZ'7Hv.()TZ' -+8 lzC1c#"fy+@Y~=[!)xr(vUPtL0=F<[LY]jjl?@>T}3ꇕrҬ #>^e |\۴ٖ0+n 5H7D\ciϖ'Eզ2V٧53ȦMz4V5yx~ g=| 0J#GТQS~(d6"|샡1bCϊ_ދU^!soKS7n0tX_ j/}RDBrKE⒇ghCAXl:b)kq;T,4dni.▬ IvMKrKxW IlSY-gy^{F&(N?gtGvG{(+';2yF.^pD̃ |l/\7@EЬCt7gJ-OPl^Uwr wx Jzx$˂&IyRѮtpCsJF9zexge PNM- r 0*JYWIY( d!xa@j]PgI tYP5kA*la]6P0xGH_BU`~JZD:X.*DY/l>0)i[!U7>t#/V,>k&e\s,g^.3jSvpq!P0!(gG>2Ei]& @Czp b2qs;ßVBL[ W)˳H$M,G?F)яϐMW{kWg#hU:]BbB@ߌ9ld R`%h3?1p _ bU(姖)|C۟J0 C˨ӣP'e3-7RW5mYΙ<&(% 4y˅uƍ6ZQgj^)$F,%QBaAÇi%4;t|hVD]=SEfI|2ɪEmۏE)f` &JJffo\MDAK =p5ճ> f`F' SCev.cxZѓ4]Uǭm[SqgP~n~]XVLhBAɞUt{pוddh:)`B.ޯLx6e_&%fA?zHC-̵u$w_^(qߡmd}y BQUI~G>qщ5@C/7L{찛6W5 3| btPq s%FUZn929us.ȭ4Qs$W[f)5E4{WE"3&1v#x'1y<{XGlj q| /(zD \Iũ3^TVhԸyCn="2F1=W٬RDž׭0VߠCrQT ıXZvXKpzc8G?RoLZp|c*5q:8{D'/`හJ!Em;ɾǪWv?޶u2"rf+=xfF d'i'8+,q<ڏK@.&%zo̔=PG⢴+\BO0|}PX3k!M6jًQy0>ȁ!0}m֦X?>c:,=Iz —u $0~[5]Ax;sfpe)f²[L#wD 1]Pra38T`&|;g*T#Qh ,u^iGp"+ՀAfk5m+=JȴSφe$B߻dXyZ (t.MΊk2rO@\_lĶC?ԐAwJm+C}Yn>5!@^-nV3 iRThA[P+]N婑-˰bPm'yo}_^[_ʍ,EoZGKG,rE jq{hD}r?e][Sf9a=3 C=n [ʋ܅$yx>xvy_Znʽ%e2Npcfӎwk_9gRh{`wB/Y1i1aohdpg@xb?5L?^3EIm@J8*xU9UU;֫~>_%¤0CТ1ޑ.[Cyx( {w8gTd>% xUaqz^V J KFRt7QeckF {;铥0qs(^n-ky2$ f3^)U H(EEj%GE;o3[fUF܉](@j/o]~q /ʼ1)GJ@-4#SH3dI!,⦯4,S*Zf+^'SK}O!nwwZ&PmX^Mo^,62桓U@K"q6?HTXՑ`kcYG8.t>ruͩȒoK.1Q FW,Ӂۜ(,[*, |rS}& 2 Ny9_x2yσ5ܯP Dlh[CG)(X8-͵Ξ5X1A;?x- l޼g`6ZTfrE'Jg:pC3v)9uAhFm!i߮$%ɮr IN'|b̞RUMś0 q.Jb ol2mԿ͉{˴v6эD/gv0^+fI LVw{L6=oW76b?Uz=܏/X1NrsuY]`ߖ2+7a&=Ky-ڽ2PjpupLtC\1ϭh/`7ⅠJJfZ])"X=nj06T} ƴ^p\r?F,0D1^bGd 4%Fs<WAZBZ4ɍ./~ J&o@TMu;%! ]ƭ&\oDRbkf.v?wH-2R%- Zȭ_j=׸ʪswANXsn5sog4Q6N*sI`yۧ T!@0^FȞvL=s1]+Ż,u=qk-El΁vlDl:QT˜"}yr;Na\bE>dFM@] K-LBY(c` 疸*JAt7S(b">jX25V{6F4Ay wUP 4*ўzwkfzqk 9tG'ٳԓG X7ɮqv`(&GV\`}%"Rܩ6|.NkxcU%[g=e_1?>!u/M*26^f YҟAVJudlT%0;e>ȯ*ϲ~ߛ偉4MmX.$FHy" `SxX5agf^xVYeĂid+@r(IzQ9Ss>b9;NumyVlM3-!mN}oYB?0(3!|3e-_^fy\_g9t|XW$%JauQ!YDt/5kEg?YnѲHq&)n_$^XHșT\@gƼVӴډ.AnnO7~3e, Z?7;)0HLQ3iZc4( ]xD/J7]5k뜸^IZz'.vl~^u3"hi}l|I EJZnƫ#*B ڴ.ĬBխq+n.52U'~Ayx B%{^^.\Da![V o=B~`6h)LNB* " ?Z>QMs~Q=b@?*9Ed@e nWNc)(Ffc8t8ҭ`9>r]).';l_p 0;:q2R%P "h}yL39%%xA> L[$4Ͽe}ih%"{ +F[k)A*/ uh:&1O`X#˫ U/gW?qva85~o79D7$:rSКk{ 󡓻{qӠ۟掎 d(DV}-+8D>]ٜRڇoLwqrlGhTKdO9| xwOeئˍ\'%N\ʐŌ$z }I3fl(ÉjQbo{?>2maQ} iyk SE%x.p`7 {3$CHd)ML =NQF7WBjӸzp,RBa6lcAF02U+pR/k/uͣ6`ue.rwz;)/-]P.}ppvyjA.7bqȈ\"~\jHr9xkUT4k97YSy=˔;"q8:)9pnrbc{й7gb$Uv6c$!.]ѭEbY̽!ډmp^4l{Y8PS t|r̬SD S.JwP@N@$P  iI#9-$ 9< I[pv؉*fQӇLG8H3э,>fk%+q޶V!ؿ &^[^ =%+Ni5qgqQPjU+kzZ=H}7@pesZie`P9==ۏhz[j:bvLj5Dp7J Jڠ'L[%z2O1%9 R(je@ŚDA>Q7eLgQ!k{L1:!ՌӁz Є:U 4}5c'zBY.6b-L-^SYhysZ |w "OBksCPXWLz3Ǔa8oOfK{"XGBІt &\Z(Z6>=SbݰP !v5?O?E"S U 8LmH"UvAo3{5_W,!6m~@z<Å!F苜m,.q{" δ_^]ɹF/ M ,zm!|8J GIH?k;I/ލqPT둰v'|xfeznLqq1]/ЖrСFN@X78P\pxer*\Ś|Q4I/&˴M*eHS"HIsyR!8 lN)ٕko~^$=hiL<:Ł|eBA̝MkRQ,2Y#?SQSܖT8xŨklcLs-eB7h9Vr+^ǜxT/UHUiB7:3)l'ݼhUps#C6Qo8KٸkJ'9N!z;šcj#9Epyʺ#B\ Aǵ&dGd+Ӻ)>E/RSP9 !m669 ^CvvU[/gꇈƲ_wiΑLr3v5!KKV`5哩@SՇp##Yz]W_ik/:FdS\Q#& LpIP4-u{%F5܊뛸Û;q_< !G:go8QR</6_Oq9XER8:E|:zᘵ[ 1WxaH c"61tڅx>󎈧(4-iޚ.\C"*sZ裳LzYJ [?*[dP=U:9S9$93boEujd[\1v[PCqHf4P>*4_ww)42cWP6\Ws@C"K=xG,8+hdL2={x 1kz;OTqם!=%1|Ҭ]N"jtho#TkX7 [e QZδ7v|!z+KpILdx]8`: 0OA'L܆ Tz>ߜ`!D*Di'.3>~x|ݭdu;*JRsͥ@\WFI % S0cN#H&Q; la|Lף9ӱ}#kMAH8W.Pwta PO^u}z5]B/׸rU~ߝsPN>etiwGDu3faacq푹TVkub9o"w YD3OxZ BM[/L]fNnp]G$vl*AOSfCIi3 %VƧ ^ia8_Qk;ʮc우ק LTmD5K圌hɮHyce!8$gr?Kr!JCQ2yx"B,OS߲^L]eU 6/qD(Ύ35_6CqJv^ m:&sbYo:mrWh!``3&Ɣň]?g:OD|yH+Px @]Qky* ?BԪn"~OS s&g7&'4[漞h_0 cU+Sg$׮4ز3VߟVx-vrFn:A[x9P+]+ES Cg_W16fߪr,4FL_mKڤu ϻ ԟ$:=SVL1㱵JP@,Ia$fDgIVkQ g|q:q.Q*ük(8_dq`xڋ*1JRZԃ^$;q*ue8hLA{74 x)f;&)fnk:{_n)M%vTYFeosb[@H%7R\CN259wxx:/ɍ_``ëQ`"X&^$>n@&K x=թ{ W[l-%abvDR uX;=1<ﳝGc</EsEQIS gνXF|q3t0co_Z٥lzVNĥZV&d;dL]Dw&!n]pI45oGe,Q!B<'sv<`UOF<,q[E;Xizc\=kP5%,4{kσ["? K+_E}Rc2TB{G_vȪ,JXKI!3Rܿ&;p<|.W(lD~r0uU4'5QEX2='q#5K*eʢv;L;-EŒ C:9T #)Xҹ"o sEc/t]a(bw\C^Y%hZlCT z,\Y?˃BT,ug)67Ntb/|9spg IFy\^ZγMXL.vXqg T8‘hn7*d&]ߒ|>JAt8ӐeJnbfqjO&\]ađ42kj 0ZXK>K@``y{oZ!ۼ(k{{J/<OűDD79f!0Fn' y } >dI D]<`7Œ "稢d뵭~^0.=P[ lyͺ`]}'o{Z` Hs^OeKQ&]f/TT6 KY rx$kDV ?n \|Xy}@-o9*V{+1:&ƺٓ^7z-ZwLU&a;T) QA)d̆+ ^OF;44kIld<2!x^@WQg8K;2 ;Ԟ )} *iH4niC`quHG g8F,<ڿxDŜsf^"Ψ2*+-b%U Hm }<)ŦjYʷIdzqF'b˸AKyD{O` ǤLe7Mjt隑I7x9!i[a\l !]6zcpobu\>(lפ"sb"JQQ|g+l4_ BzKH5EMI$4QE~Ջ!/j{nQB* ,'u/Z\f38_KB1h%"Y2U_\,g:rA4܉G%L[Lf6&-dL|%@)vP2>'"[Ҡ2Uz2ۮS ن+ C(g1 7tTf~fu^-ԝ(- "Eo2?]PŞݜaCMJuN1ahšAd31 JI'ѶיP3ԿZ|NrP֯|i1TAލ‡Yrːؙ`E\Gms(ƣW|A?>3cqt}yghh' \d @>kDar*?ޭŰGW0-@&Sk;/xg|Z3l @g(' N %FG+gwHR)gO/1zv]hrҲaaE7*ҷjw[:S[36=@NgQuOCn$y zMLao7rVeDxOb`(!?ɻ|&\@O9Ci.zi.ʯ_uҶZ*I{E KŗWGJUהu3Am7Zvv3yM<lpRn7_* Zc=?#8U\I&ڌD.gGh(zB?>Pta'A@5$oN.$ʫL?7$K5; qU!RvWgʧNyGXdI_3.&nZiఊ?`Mh_ޘ-J?Y}B%I_IgR|n.w:gN,eLY DqG^L Ru#p}gOtB:q*.Hktͷ6bk=Q"n3<_u{WGAG5x[uLg) V=Icm<p_ Q%kŃ ]hłn;&֮HC՝EO%b`nqV ; 1QѴWt70Oa12`<ܑFWpy%dyv/^\Fߚx(ɿF2{xiG~c]]cN#l ţYQ :)Lu!S1+*=VV~~bHJ#+utfO^~.lHtZgt˧Ɲz6&qcԨ ^yZWw^y d~B^/z;2a]H mxEK:hoݕQf!i pZbkׄ)!k.3逿S 5p0cHr3JC#ul&r.]܉*ٮD4zj}n%iv:rPxmݼ fGqݜ>[ƦYժa 0CXs8a>axH%B rsBs[>nF2-?cY?Kj9_*@59A>-O""Y.F Lnlxbyݱ~d".i,Fuq w12g/Y"Q͟͟ChO.&4rOZ7נ/'<&i#{ `m^5ug9ݫ` bB >&iƮfɊ.P1ӗ5x]ֵ]uN*iKM/IplULY+Q^o*d+HD3yDu)ZSܡ4 ,g0bobHkkcZo`Y Ժbb6\.]Hsb.P6D6w!p!w,|G ]Ky W_ir l%bԚAN [29PB!Յsgq^ha};ЧX )t%:y~̨Ep#H͕JuD-IbETp]v <\#&R[/='(㢶 a}?b4_>`TP.}D?uupRvW{al~>--k͑h{83J^bT0`.v=lalI4x']P*npfcƦbS4%B^ 9X ƞ~нq/܆?1"һn4&pt>_Წ]code=µg G䪗9'>'k(-,uMmP)JpibQډZ:J(]ujY|P5|:_3_B] 㺬'6{WNy8̚rUųGY'̛ax 53E4(˽t3"mLa\CiF-5,^+5I?sƝO{aJa Crm3%:<۪Y6ϧ xM2W<,#@]q%8HЉCh^QlvnA9-U$|)ة6InIۯ"V;"W҇dK¶D{Q] *rd0v'w}wA(fWe=¿)zg:\9"@"U̗L{&7\}giӡPȀZS;thzNv3amhd g@x#œq]/ p32d+/P?=w`Ú`c%f<{L)CZXaZ`m*bId=W~ʂp !6JL $av͐[v׈nXɐ5T nKn^{Fb ؅s Fe+Osj?#<&6̅94\dpR@IeBKE5mw"gNbyvոܘXl{gVEOk2^piA踂ߩҁ P B*I訏jB픂Nrx I _Qgdf[)sEW{sDfA2c-J<(RI C6ZWoJ\9EGu(8 7CWW n6@0T\˿'7}{_ -+:Sۆ,/BA~PL"DH8bGGqڞ`Oӡ*gCF'mDs|TӧDaXjOArCTHn=8TjF3{>F1$ iӹIv_RV6"UBL"n-|8BG4=SP~^It̍!ۦbm0J.llWwB/$!@D-? 7V=YgF2+}&PWtJcʿ.# Z|X]| xɡqwN5D ^"U,v?Q2J,!6d229qI VEc4er')EQI6婠}D D+#\0>zsn-yd!H@ۿVi^aT:JEy=º'ǷkE ?FވncWAhuMFR9O2q䡣@}0]qhUcK= +_ mGj/zUY8㕙`S*>+Cu+WɝQ`L,('$ӕq1KqFp(MԲw/| G= y{yþT#EXxޗMG>*[3q}`?4d-BfCfpM8b%hG+0z}}Ljv*9JS=|EVPG` ]K㌤ י|YKoU*"jQ{bY]azH*c xt_r|ԒȐG9CNv@;$ёzd3'$[t[ 9!9xw †n$IFZ}T;@)*JvZyLY phP+fe!yE;2kڍ'ѻSU#0׀D@a$ځk9Gs r&mu\7Q0 MnSRp[*b'4bgdG!o;;᫾ev2[N_*JVU rV|0dl)̔"{Ls͔Z5 9hn uy5p>-A:G]EOp'ɋ;0[:iٽL|IcĚԳ H991Va t˺gRt sqls@X~anevMȓi;HBJea;+[w5*p8AϦM-bl,UNY"~ֈ*ĸ0XH0{y&?D8Us1̴`kf;qdz~+"no^oU8)͸# HN~QwCis#mK4_L{g6n1[̹L'j"ʘ.RJ| *k"U5=(f\vS b2Z'Lo%(Fk.}TM?ZK 04F]Շ}ޘ)O߼\]O_%+Q9,LP?S W-֪PSAN.0S&{B(d|˞.+uEWhzctZ eA d>n}P(Y4dJc]&cX}뱨'sZegV$.fI Qߙw. S' y+g!ޞy _LCנJPNnHƉzYL:_Vӏ[<5$V@ Jļgv['PӚ#66 uZsjQ/"@7s_~:V!:IyŘ>-$r l 23FڈQ_"_vI/3WV*3sΖ {@)Nؙ.|z B.Kn(7D3#HkK_PifO ^U,qUpZrvPf"1#Jw=d_ӽAiaiSqRBUފ-¶fu&Pw8ac@/ w}?]JgʺuHǪӂz[#lS+J mx,B~S^_i_kfBB2}MnK6y?aK/>SQ%&t<8omhgQOBsQ>C]~;X}EuCU7,JRV$wQ1n8 Vvϱ&(j%WkH~#;Y.SEF4(8ɾ~:j:ҿ1]bY>ib ?h^_ wiUx3GH"[kI6EG='HQ$2#{5Nf xfz !fQq-,q$џ^&7xS$GiɊQ͏\'BZ[fӢʍm=>`ɢm?(杻._p]2Ja2n94f*Ms-0lv"5c,E/jM˿+2& >9;(U{cPifhA>)u,IKY")*N6D,o : fJ 3gJI2ρ_LOvj1\W{7s:'w 9>i5fڈȠ*Եj b.t%!AqԐ(N2GOג:m9&zAB.FS˜л pءx5b1r  4r-N!.,+,M\9+*!X``uX&݅`b 㯻PܴM,` '{E#ҹ)Q_ԨhMs-ȞF߅cl/!ZO}úh6G`]%S"/)x9}*ƐiRW+4|w&"5!UtgPʥOo+8q=bMc=(dPg0Y/+ElFuIu1ҩ{6+]U GI\ t ю[>1֜ҲZdXQ!,)eCNĄ醚4ޥKBe;55k]u?U…ܺҼү]cyJOp>գ뚄Y(12]̭D\MtGddsyLܤٿ:bHWg~䡚bkiG`&؂x"0Vg!^N'34Cw4@Ѯ8̻~pTt' s{ʹjQ߽9,ժǝKԺF UˁвҟA*Zߑ8M"ڪUS!Ix[xFUfE-38LޅCs-. 喍K{vx-sVjYd$7b?:l͕^珐[m͍p2f1I"n5"NRM.,L3B#~>J 7" dIeGO<.^ 9\Ԃ'%ĹW65pcRɁ=z/A靾V>L˽q*s3,)Eʏ<3DWiKKiFWJ8[Pǫ-ъOsDR$_v.Ip˙P'Tui\)~gjH#c^-6WXn *wzjiԐ\y(ރ w=w`9и%׮ .9VM^Jt2/6T:Ge*(r*&|7JLtc+e3G쥘ʹ?pK*z<dpL'?0)w>lO"쨤;wE‘ Hp,"\(tfF8q7wcrlbM`4 PDJ{6^ Ѕ:֩>G)=8HCϩʊ6U׵;.uh* I(M1<Û]((huёD "p>)ͧ(EJ//B7USgU9&↣E24r45bKY{o[JMn*+/70 N1")WM)P 4Sea< CV moTD[ǐѾ. `d ;]6}b(F`;?I k3)Ar 8rPH G&@{nڜ!A>6n9UsrbgȲ8qa[ME cǃa3A/U,s.9<Λc'['.p q@{Jm 6c wGRb _Wxni 2ճJcܑ[B?( Yp9w1MH%qwǑ^}ū&'< :|bvJs6`$@Cty3GRgFhS$y+3TUx w;KH|Csx#OBw7 'JfNC(L]96,6!k*rC.q-S& y(E˾sxG3AgջE $8oS&gk]B{;!@P3'WzflTq3Xrj ,,̶oAV7n֫M  4-g:.q_3{/4]SWcIdDjɵW8xZUHX!ϫ\9>Q8<^b\b.~ YV5b 44\q\j6 @6W;v[&~v@ˁC;G ꓍4]Ǜ۲g8" X!:Dƕ2Za#). LuT{hZH4k1uF!ˋp?qR/ԫBĭI#m"tWkPfdLc8߰Ϝ%| ʂwsǫ{{/' ukp xp^>(:VTI\5HF7{Ws%y"<`!Z$./ɲyoKFQ?+B z7ˬ(wkZEygm҈glGN)Cidۺ5r#^ >[=ǫ|\є\J&ʋle?koo64_P#f0W_@PȎ g).\ƞcN /|> Q*Qb\a~`D\7hr'3jwe[PL6FWC|\_=ݯ囫w?$!x)Z^7!$,DǙ5$:Icj|Mܥ!knMH89^?]*V\&)ޠ9N~<=kw@4HU*Z1pv\DL[mƏ@%m<')4:,H ee<)_UP!/} X z4EMt/wecڤ=nJ*&)Y1M'#c1BVYްpbnJ^9O5&y1t.K>H"Bw$r!r&l_Vz5~`&CahFsm,͘^'.x&ZcSp]ݔ옊 [5, _N,s%{r7 px?. BVil2rotm 2B+{g7e1;̌#':^ԍ)8+o4`d+$4<7 ⶝r_W8xg14wzH mSgȫrjs/}]V?1_e~QCkvcox` scKGwb:s~ )|}I"-e\?{m d)w "Zna&;hFf}GytYH뻡j"@4qcܣ ^zaByчC۠"3咳{,FT=Yq<`wB6-P1NFUWySֵ͔y0y!i̲eb1e 40v"$ik׼\g :54[$)ͭc9)1v`T%<tamlsQYq1 ncsMfLG5A%n34ӸGQW< Y-6#hѲRrUʕ+I6]$%g1I﨩2i5m\3DiNY/JzBsT]qof+)ϙ\T<$P*~g6Vu]V悗GJ:'v}Է;@ǯ@e]fY;ENrI` wuV9+%Rg68{рsyh"zg<7UXyCTNϊ}swZuM+7ˋ~ ̀('$(iM*/{nBσdBYċ`tnxmemd@^lXYsī+f,v>koGx2G&N>z=ABDE`̜3:پK3u㢍 { {T('e&X$~w`;#7=q 4p9 Tld:JCi~4jKyOcw~L?!æ"D?g6c|[N@^R6$NprU,Ըh.r ~]31g8wޘ,uKG>@zfB+]`lާN ۜ춚Df+hW"~jKgXt Cؙp:S>_ךz4rSWpiA>/PlI=PrSP<.RN6W6W8JM/ (ߑx7\=(V-~^QmK/aZ?7TI%*оw\ E{) .?<2Ka#W@넝UwCF8kwG{%i&qfN7GM3 {֭ ji)Jlr?P5!G&"ɝ ΧW&rg7Y~.j2>5{&mK%άmmc6s2tV|E^ _DtBVL@N̤+u0uG̑g34 膎F.,D$ϏsZ@xCu8%X) :ۄd0;[,iwau,S۝>$d^;S:?+4IJ2uX+ɱQI H`T!;.3pF:BgH#߂1z{9!gl3P jmpV18 >Q."/~neOI epuT)/J'+Csts!$˄`qh}>婪 :|uɜ}Q`$ #P~#c*]u_I 9ME@;uoQE95\qt$!X1 ?-CZ}pddhg4 :xRz?,˃X7qK:/C ǔ:6 | [z#zj)Y79&c c9D 7;lя6\9rav GV@$x뻸VGk U0sq ~8^,2}ބR^9aSLMjۉ,,sR#3j71&WUL:R41l$oju(d;lɝxϕ{~.ar^0ώ'LO'3Lwe:am@*.Ѓy#Tau4:!7 eTaf/jˈakO5U[ C7\ffׄHtPtҏoj稯 =+ 2 ΨA%QmUs I}٪9j\b5?HzC \iQY~?3k#`=E f%/1Ğ>r>;ĔD|4KMC`.0HȧӘѳu BoB6h QD$!1X`*#bm%P{Yg6)2 (CR TF,;O?Ϙ\vS;gEh>0 Dwck$% W/`dB)"a;R58DFI8q?֪3(*CaZ֔n"gvWP07 ː]g` ;E VX>M@ZX;eR|={x$]X Pߌ}1bNc6]VZ?Q~t4(D*/} LZ/2Kpx=5n㧊Z ,M2-_[]w7J:$ STLp Evfe<̹aG=>m5v_oWt0$ܴq0"; 5lhP@$2XCP"$ #s"Ujn*1C-jQKnJⴰ[˼9?֋l <ȥ˽G [PSIi]ar5a>鍕g& BL['sH]gLs?N =\C?W1?S4óP$^b\Ŏ,5(A1<7&%>(.AoёLݨ-h$( NM^!=&hёu*\z 8?.,Ⱥ-ͳ$dbdЩ*}I!E?8؊cy_p7O1zY5ptb nlȀG(j5iTQXx_^|g%Zځ)pn1ilֈ7>^/D`w"HYM!X_EhV Fv4.Z@X?Z(\d߲uՑ/up:Nࠔr/ &ͬCA܉HD536P1y^MXqU,A&* cI1L7:_!>,&MseJZSXC+!(|ff)J rKHdkO B3^r<퍡r_hASGzժKc}!kh M@z8Np<H}tNc0m.eTWp!4lsh: xϙ/2%rFlfؗ򷁎Sz 2SQab0. s5܅_ J"v ṯa*ˎ\h!jZt56-˴6,ѐjbEO> ]2 cIK+,O$O-`Cޮ/=)˺>/lɫTsCQݬe* T0zAWq̎Q"D5T{j -ڽٓ5? 5i<ߍ8cD 8Q@dOc(Rb :oG?z~r}=vp}B5{O`DSO:QB[R.MQel oȪ zXZRU]~UCPy`ZNIJ JWVWy;ymZh>y4VNLg3@,H2f\=E@)h4zWQIG~^V1 snySt}*1h)0~'ƮiJoeSXyKP4Yr]J>7(*w!c_W9QKʩa Bmˋ?Cia!SQ*F\οEsݚ4-T54aKp)Cai8[?)h59&mE x Q5RLm3v~Q&X~yrg>lRRl;2 i7l>m`'͈ ΋Lm!dTf'1H4CX;Z \ÎkL77oOe~M"a u52۶c Qy}F7DjA+sQs f:X:T(%\v 'ͻX(Dݯь?fǯ[_1*I\dx'7KzKC%$g09\LT&QOůKЫ]6˷ES6@E0{ˣƹY^Ld/!FFyxnB4NσG7]J3/HİU^3NVg,rh)Յ8& {Pih]|:yq.Rۮjr ќ' }Cҷ ^^- =O!rg+?EXX,"tgr|P@1lV̌c'`YHYk[ET{^²i K8pA鮭Xi$HQS[P#3]d)>H]1Rz4V|L^6M[pc;O9,P ȟt;zYSgq:jY--]|k"SZbۭ妷ue1rG%klUsB>pc=H/a~qf{I kVˠRI@q۠˹.wJRG LWz?[/bځHIg$I!C5"v,C_D}i֔}!}~ggvX+'RO"$V({y.o-1'H*/qט4XŽfT,:FT7Q %UVTsgt441<5rZ8[rs%;o0"W͢\" "q~3ywЧh0ey*⻺|QT 08Ydf-Nn-#u yR"Ľq^o:tAx;eԄ= & RPxdwF[sf kT;MӽutIa^K ~wH;Oq4WR}9GeZg*\| ̵U0^Kj~FB~`Rjk )G$ A6*ͬtඨVa|q]w 52Qj, C'3Ȣ;:.P̋i"@lڢ=Vs <E`kF#wט9mRv"$GT6ڥzBY^8LvdvdWkiWg}ϽE")\8!j Kx6]/)ɞ@S4Rk7qAv)HA_(%峻l5!~W>s}e O狥{zo}SMJyqe'P@_g dfY'lt]lRޣbWNyc]s4W[P|}#œp+(Ź9V<\}Q h5Iju+? #l)ɗgkh@+hq~fl 5s.L"Q ~I78[6 ۶N$1؈a6F6AQM`ʬp܀}OQz!JnV:d~3q!$6S4\$DU#oFeZ\\Yw_ BVLÄF|䬹k"=#MG#,3mYf6lö;p/\O4`2'CGgf>ƨp3F$y#m`+¸C*yw1|ؤhĪ/ efNuL~2.hm6]#=?Rd*ccaX8e"R3~c؛X3jTX-Li&{jXI/8l _wy,}78U'0$ @%y{B]TF'yù(pP8y~L8z'`"A)2&ݗ,E1xPP|}gpOD"^9 KgajoX@IPr,tn$ Yw^4hr3KyF{1n.D uH }f؃ j&=4r~ İ9e,R8,IoRn Cdegy{066B!TIcQ^dl!cE.kAi@+KTY*|5-'~@|dn^3a{L;mSӪ g+B5}@0fx* N `HhہޟNp$:Z 'YkP6V.>6N[䩔0 uֽGX\9L6rf)&cP~t vs Pnt&'-2my5>~a7}=W2rzPs{>N#*Ǻ !فadɫ~2kiEj5vLDk' C  }+\Ϩ љ7Hh#K}m?im+O1 n QDf,FI5I3>:8VbPp㇬8}Xg`/wQ8f}[ܭҁDMB0:sdp 72٤lsW%g-"u%klהa(JuG Y~vBa-cK *BӃ<"] n^u/ ;: SzvlWCɊ;Pd.9r8X 03Z BXn ϻlҿGH.Լ9ft X Gft S)pgCzυ!깍1)x%0ֱW}n"!W$* ly+볏! s MpTxFb[72/Cz?&Z%@y{n괿{3OnndmmݥraǹU. mIgغj h1% -pGZ\{ \2]9r(,z6\9bdPG AjCm! 5|~P'VSlR)? ' S:{O("gQ>|L녝06@z 67} /[0U4;pAT&ow3KWj@}iւpc"OJgk0!MN{ p1$rIZsAX,Յ+6 pԳi Kdwd 2@JRh +7Tg&n&|B*Ƌ 9fJ\ UfX9 y@?s:RiuM.@zѴ?QRee6t0QV6NUq!w b@iVV1TkLPMP~'Iv8>j (5ݴHӂDK5cc9Uv+ Rt /wy-/#P<&8:Ÿd}UtWJŏD9C\d7Z|U`OWO0paz̗~~Ƨ6?"Td._Ŀ!iYsPJp[<ڦ[I;plN||﨔*Oe̸H2Yw[ݕggªJΊ1w򖛍*rBEQ JM$p_z,]M;ocu> f`SSJzȁ)wotKurN;< n DJ:(0<h'29U E"6/ƻ$^a>b%Vowd'wV%xSUf^G.%4q ,W5ji÷ե/ENwTQ2GUߣ<)!8Tl+uǭ3q*O!q6/?+_JSsyZR6t4QP#j!ےe? RmqA ߿ʈ>>ԹQGv>Af+ҽ!-HxSJ*5EH[CL ,a8up~ 髆~E/}- WP20veP~GF'Y nq+"ȼokT`}Nuڦ3sr0Wa Y|רV_ kB_+!OЕ@@@Q4};[`T*{| EGN :` _e]T>fW>m2Eg\ YQ |U l%܍k/Aګ͙㮸\y񸿁RzkM: Ө{+ ݇N*&[Be,y#kK j2LV+y1]UZ4cn7XU-8=/^7y A%!GX&ftonrY%FsJ$-N_EDm)B8D&M/-WSx,+iSDt Mtu4;2 E9M]A~>"`ނH Ś@&1:Q{X5 ;q_j ?}'(\와Ĩα@[ Cg)tFE"  ž¶_Z11a~( ;讲ȴk|Z9NjGC}nlC|[#QQ-licCJC=L*qta7Ƃzn !R~?ҧ"𣢼cҽ'$Seh(jY:Wd;p?9 R {W(ן€MG_|^ޔ*{B;՞̛[Sչ۔-55m`_Aٹ.vgpeydǍEkK=AIZMTŎ6-9THЋHO{41vYĿz 4iF»Xw8H锚$ B8c糄P}Ιq_meog[g0)T3IJu^sL3bz CSibq{6)YOԈ-uE9{/BYR.!IJ`Z'(tt,9uj8;OȦ>{XW$| ;jlF3%gy+i{RFCP|a3{O|]ӡ#MC{%u!p,Y*~X`b2^3P0cs荮@H&5 S7X$Y8#X/'SHy%+?mXqn¤,"25dA{>\P9m&h!v_=ۣIː9>1n"'\H _Suݫ~Bto;ՔFA$8O..-S Õgkl"C5WnLw4LVgC5&fcK АZ/CG %4Z6uHz%ȅcYsr2 >S, jߢ}<;AILחxӡ I Y# n{)1^rhG :f K3Weٌ0ԙhۓK}ٖ5#íw=iZI 𔴖s(^e2׾mL"K(MKdz$rffU`TY,OwHޕ+y"\?LbImbTqR*r0৹\U/؝%؁HsOֈMK|έbYz1:=8sci^]R9(;12JFVK4%*(5y鶩aZmɱ&oؖPw:Cf'0$*A(vILr:ZU q(c<ܗCXpn81dυi҂i@eUv_mަL?WnfQ%Ԭ@%\L)]ٯ0"҉3-EҎ͜0Qyɏ3B7JCm5Q UwZ~c*e.bXO!@ 87ܩ3L3 x5Sph;E?.p9W$i41M7ڱKkvU{e ¨aёsc,V/*! N_TeD/" {z=k=L*B!،*\vZ۽q8"idR%ܭQ~2in]%1dJ]Suah/AiA*'fS$ta`ⷽ곈ي&蠾~ r:H 㴎,˱}^p 6Y6HC!P!E`57/ȍ8ֈB7l]U[  <|kjU?*޿PYC8 lp7 3F*UkIRo^;?Y |0L ]&7N0afFLcMH$D' ^er!j//Veui%uZ"SqiK˹i7bۼNMG1*MiAo4:~Y#69dUfnGa^K{+bz">aY_.fWTcPo7w֋:G:?Dty~b׬w-2o(u(t,ד?^WnSL&yҀ+m0Iu]1c&)#, &l-;!܌ɝЬ)k?ҨaXG:w/c樁l8yNP~ز$l}mScu8GF_MZcm5j**~!.f1YmVSY@^_thR-fnPS`@zW7ظ5>Ͽ -/'qx1Gzgܯߋq%"Tw@$%EPXު@M!\I!FrFۀwBdD?T"x;$PŊ]oHb(+yFb)yJ<{rs (џ_ynlfBXo.ZY:!fo '}0,VlpկY>tmά↖c.MQxXHy%Pxjuȕ+V0;eQyDGӢ8@CL_k[oJu9UmЭiZV5 q`]ݻL rO'=auΧب 3rTR,UCL^lbɚjB⛫TY͵<u5qїq{mmy׻a'U[%aeÅXH*b*7K) >f a?,K0*w /4̟e+Xc>5KYG~v7Gn))c](Hrzi-F*ksfgBlXCqs'JCtz{c\On`3ϖM^\6o>dFS58jj+֌֤/cuJ6TLonDH\a`n @ ^18Ċ(8;H'8\?Oh2,#G!.8J3*iBo> v#s(,{?ҫRL9==/UY=  H0.0E\DnZH,yUyv$̰j;e:㜫l Xֻ0񰨒 4[^3 .?S } +n\:~X lК{/* ">z()J`1ɢ;.U/9?+e= ѩy^& FMu۷B?tL׫?bسpq {fU݇/uRcQ- !\f+ T㶗Ya` xh>~oiIWTnDS'4Aӟ&XuH!ktVa_`g0.*c^r1I8 qjAacQ%R)DJuT4%9\K^|间$vp gNJ=`:<-GnW*+2][)ОL0*bGga#06p=*$ DMka:=>^1=^N9ScGhMQJl6ҘW.kM"ɑ=#OfBn+~,7~u+?$Z9;FXQ#F=IC=7(3_q G= E^tJvx  h)9 H"" G w18 sJ-R6[ym}fƍsgO?ܻ!Akgϝ!a\f a+4=xG ՝fyO]rBўn8d8~fQNST䩲'0S5UfFeZqc^=#w$So7Ƒǫ*Nb*Qf`\!W; aAmz1 He()aYAvy*{r2'DPBBz$GyrYjhШVLĿ=vjMG}{bt O,DLGzyL"z,8YOWt,ƫ%RN3h 6,.h m.{i [xjf4@#9xp#9,Y>̝rL8#XFP c4Ihϥ;5%OpPI)WsAnjӞ#*!4tJzVӾ k@p }ӝ=MnA"{s }^N՞bvҷUGR7ߙ|75hNEv p>^d ';~fFvEi ?0d 8ճ"~!'! :IԐ鉉הW蔥x4 :Znve] 9ݛnw&s3v 75m-6 Y]-&+euR|I&IrW%uެG/@^ٞ/Mgu 0!93Y({QDدtn);\~05=SX"9IQV 0 P "¢?0:LTV HB);ALĜ t .MkɍIl X}|hoQՂRc-A7:!<,'AS-~7+,|0Ģ?wgjn:P.ONB+p$]t,bL }9I"K4C,'y7|<~-*1(6`I "%WDL7U\dXwaaa4avF"$tiRy UwIsO@T#6Z_CרKV -ѡl!`Qf eG0hJx\ޭ2qa@qKBdBCБW3'ܒL| 1/-y{{hhIkmoLzow]Rj\Ϡ;fvz;Qn1iV% L3T?:HO3q-U-\t-j0`ƴtKJ %͹(`i:8-Q՚1=[e㯼ܲ4NnLI1;WCs$V@8[B|6uh ̢|tp #f"=o,B "buݥc{c$.9@ϯ-b y\T.zc1&@0![S)H?7kXHaNjb4ZX[r_ ]N~A^퇹.BiFBx{v؆g8")#~V!iN>Bҹq+GO9"SV-?y25H]P#}lr>agiE%lz7PT2%e@ȳE5!(rgf3Laa!*)YMmY* M ᛺>uI*xN*HAS!L蓀2mwuٶs}\[O9I82IoI<)gS:hMKF!7Ar*4],LU̍VTtКn_0H)rbLZ4.xC#P{K*}VfcfǪa4R 7]b?e2ܝNZw*{'A u7sSTqU}]3ݗT"?' ߫šf yNFQJRxw(@81vsSJ 9=~KWe]iiHSb\Í뺌ĊVfSżn:O{on\/Wcܳ]ׂ&f윰6ؙ.-V+R+֎RlB_T*R͸?5x n܎bV@K+ihahz"z N9P 8<9_GK2z攊*ڼ |eoobgL Ym\gY Feww>JcI<"ޡm  (9A+9l۬ϟh"R< u.Ib@;Rch"ΣEm-DK^X\jM\؍, N3|ՍJ=: ,[Ȥ΃'FT)cť䶑c;qݩꀑ} 2]wwʑ P8YS˵=@D7TΩ:˱o~c--!U-/K2si (qû0)GvO%]<[_#Ι7~>`27; Mەj.cT(jZwZ(Bd\S1W:np~(Z%op()RՋ&.D`CH1_a,/PlQb}:~QtxD^Qn:R$"<=lȣ2]2 ]a\%d˖k~bI-2i˦ wzhkgA([21Z>qezjƜ")ڷ ^ni29sYr,CV@PW*X.k˯ ILQd%VPNxTZ_C[' cϨ2soaFaJ0o ݧ#} !wh :g5Ņ]TڀhaV+c#큧w9z0=k>~DIdxg`%94Cj;[KZ?/[ݿ߬&1F 0b>`<׀Ô_46Wvu4Q?W3+uJ"秼m1݀v}54;mTfY10ч=}k"|oHsv1F9ɣ1WӶM0=FMnGkI 6tn}C^I_~})כ3}rBt5 ,P9瘐bnW<? IBȦ+I@H"<I~Ub>1ߚT}K=]i0b}r"rYV/ wNeP11ksnjK5)#50c=r9XG`sUd4s+;ֶ=NlT. },WĮjZbO\xsx}{[^PǤݩ"tJ:EשCZr{o_vw{B W`]2g_95?߇0oy/ 5`z3lJ/_* g .ף VvY`d2ʅ  27 l&@r;q+m59GalV,e̠ڄÚLDqg r+[ H|@3S1Iwq,j۴?!"K>^C씕jVD؏4s  BjtB ^qڒgY{4|̧hXG &>tF_Fһe?3_s-{w'ml酅׵ULתc1k~7(}1ؤ!"Y>YX>]AQL?M#LY[o}֚o`+3 +uU = WDʣD̃ˣ1CV Z#P+{3D#NK&l==Iw."ctгkkpZh: ʶ %g;ʈ'/PfHaa9#<i5fZbU^ƺccfW,xQ݌|P ˓0EBxu?#9?zdQ<8|s(AV)v|3D." )q1q蝛zZ*&NJ=T.(V~R6dp]& Fysbm|fT0ڨ1rlCPVqmji-ab EBe5}1} Ҟ|ϭb A}`d70N06V;3NƙE=XvO+"]#E;=)noz @5C=~ 0gSUm;XplZ>GaF 孵Ԓv(CXE :6E}lkC9,/DIKb5bs:ў@ϢH2I/fϝR·~?%ɱyHx;V(>d'lk W|H% 8F㧄Ÿc,{<3puYOcH_ԼLȁ'W= ɐ*8uIj\hGt{ يΘk|j!`ܴHUel]AdRg&VvXrHw+{lpk+[Fp$8uPW +XUIS#EŜ/{˲V8O]+ /fFMMgBZ8 Pʨ `',iأP ([XP^tJ}%]|^ѼHD'%742(eԱ]D^kdwS(V|)gKK-]Zf7۽ތPqߺ0R uɱ|p0ɑu֧+黍Ò!0s-yW vSn5\yެh!VI:zIiyoddl U̙.BM<%d=t3`Q*|XPg ~d[#g+MV5cy LeX"J0@#FR3˟mjtM_]NSwԫF.Yݢ>.x;H/aԊ>뛾ZB䭢*ep Z ^< gzu4Q9K%A6fw}29ӄ,ə \͹Zmt|M'\Ev:T?8qwB&;گ9))aά9XtG( ;z8~4tﭔS6+t]"+g(<-9up(J~޷boZCC~%N;ԇ'Z4z ;+̈&M2񎽷Ɵcqqv>&C 5{A" W$̕H65JX?C~KDJ5.2 " h+{6KjZ9bɸb/vq ==~UW_^{.(h 3=90by7.*GXL*j*\DoC_M\ ֆ΃\v+*_l{P$%< NUړRDCW'\*󊽽F^I*\J }l+ӨN_P`}۹}M!P-\Ӱ8ErUڟc⻉-;S`~]QCyxrxN,oi "hĩqӈA퍮N7'QtYϤxjWD ^x㶹gH#ff⃍ˀM>z(X8߆Utc ȵICS4a:$Ge;mJ {Ң! h΂˵uҍJ5t&@X%O%7-D9++΋C* \q h9(T@LOy[J@ecv- E8W1Òiuj}-NC4"-<9ä+P'mRUv7m[2XZP%o[3wk/΢5plm%8dfP͈,Ԥ`vEK_ 0V4.#.db8Ґ?dD}mJUrf4F2g=A/jǕPfQhDQ/Bqǵ-2鱆@/eGsC{?V|vKJH_u>Mr)'z"mMa>L`હfhh60l`Mo7˟Qp]\>SmFfu"d?فD^Y1ҩ,? =rXU= 7 "jxzW CgK*y%ÀK1q/+\β ϖxDen3JV3!@i~eCZڅS38%U֑rRG-!\wB6NjC8@I=9OsJfA XWeht_r#vO31 B34$*ji͛;9σ0/*`JaBO*ydI"5C\RʺaM޽(,+.>@^L]|WyuRVLqd Lv}Oȧ B4AYcCmb^`W2$nE@9=W6{rL1ݿtJ9"]qo%kr~ppx[ !j_HN;w>;5貒S_gbYz-$ߊ֓̂D`6%N/= '9|7(*HD1lbu$~9L2Ӕt)PAd*qdՅgAo&7mZPcd(r{_Po1ؽd+ _At<{eWgyjS- ڧ].ӽH!q.BWg/-+׹M,A'ҲON+n<DYwozϰ(cW'Qhv͂ 3:A؎ vRɮp_|d¿"Xf@'KX܄R&r.H)_ȵ.`r_avZ (T$w]&okЅpvI%l {'-Hlr]%96.\Azv>^ٰ D+׋~!'!ԗJy$3G5 iR^e˘4+7\9>i0d _m&afi2[(쩓2#h}y  Om3+dsC.Ҝ e_}BE3{+rϣSbXȾH96M^ 7=rة;`lǛ~GyT5=L-fR;ThJTy:cƯu\2ѩ6x'`h&Nf;:l=FEX%:L$SI u~R{ѣ H+u^ f|#Sf<) PZ SR&;U͇ݚ2rٗV.&p~9-3OHwIr0D%A4ɿ|j>, D`t7"P&f ` ^ x\cngKBW\z ٧yGAi4Y:{ ?OdHm>֛{Eex)*؃'I(`ۈ#M|<:mn-~>m C:6H Of,PB-PET6_/@H0Fʼn`#kYk~+R4/M|b_*=rcl;y"ɟ%4 $~/q40sݥ;Lp`!oF̚3+ #h3r?A*خl#Rj%-DWt>5#-#΢QPUd?/*yth;(~QLz1\AA2{8FWT/=;F\I~p4VO@S6Փ ^.TxːSQSȿQ"?[0]wnɦuPz|WvLO.%uﲸ5ځ`?Z`Cٕ%F.!J2j]yP$,@3Xctʪ?sO1,o R|AXM $C*_1K ]y>?&aifۜi^:^!4ݛxoƲ:wSBCbE| yм%=>f0_\>5c@:oY?)5ᙹ aD[CF.eP)A\fSД4zb4H6TyHf@ !@`' LY8Ӛ] -i@@7[cS9f@؊:Ъب0-zR8ffIBZl%T"{7ʹ Y4)]O{hrke ;}{Z0V)1BR ~Al▯#t^~e p5>6}3o6@} T(̻_J9eax|!\4 Z:[e Ֆ0X뢾b6N,:N.𜪊 ` uXzibcU: ("bн 'éaQ%O1fQx\pi슡F*dMxwoAsP#ނYT+$|.-a{Q>@u_^n9=Hfv̫{"ª5+ Zo~1E]a,:Ld栢k f:릉,TĚ.]X~ [p!/XiD!挋K` w5-F TJӾqup470 4ْ"89^0>|EFcMi&pg\QTpx'-8wM >[bo$Cwn{4j]R;̸ku?n `S3 i75qSN[Xref  J{i 2/\kA2RiƜ,`7a7.RO.R՛&0 PI,ۑC6z! f*۟ր1oߐ":aN <>&I[)0h#k-x' !4ڗho[%/u!wZXc \/J!~tUzW|B}gj ׆KHQvAòJ)dhC7\EOpT_cq緁WV~e+P7]1U93~9Ӈ,@"Ǖ_%T%^yؼa2Lea7KnvflkTG*XExsƈ]hJkeBFgXUᎹ <57Fk9;eU@6k]^C +pgDDt?~vjP nWfw lCpg0qR82)c-0^%&d}G3 ~rcTA 7Tc ہjҶhfuS:~n)H3H_q$FҾR6Va[_ Ĉsอ֒ .`I`3)֤#~c  O*9n~Q|\Y6 qf\T%,^GTx4F^0 *uh%XcSƌ?/KE5A5u!/ ?(fk,(ʹ`,"JnzLSxZlTaȈ%4eͲi 1m~NsRJ@h eD>og Rvxd_+r{'E@^,LEYIE3열906l2k$)]XMWjB"& A!mJkp#w*„z(Io [5foƜ 6bW RV(mЦ<YH1+"(d3ZE(*5Rg P6e]f=z϶ 8\'lf3OⱖEF0t_ڎ͇,olFf9> T=D$sdk7L/rѮZb2йb2c{_vGxBSH䀗߆2g"~KF@]AkT/(Z >㓑F ӚIˬ3pG3$GGW I tMk:ZfB9-y;8O7Xʶ0UJjA(i4\HYi5PG< 4 2ЏL@58$"zL??36z+ogn15Q!_:0_HV-ޣڈX贈Gb3OޠsQP3MWu_.*]tU."oDBч~#ofWomA">D>OރpwP&( "]KNSӨB+lJc~tоj?dtCr$<E"Ӯnɗ&SsFֲX7!mS$}Ȓ)| BÛB+NaTS]9DBtMJ|TqE];aAKf\|yZ{WkL*\}`^lZ?L3VHD^C6PHPy*>6{Ǜ( oF`(*0D_SG;Cj=#,畠8fS-0\/:6Qz xTAT. BQ]CR5s"5, e0LU(Ou2<:)~&>5>gЍۉuܛADa/@rي<h -j*$W;zO ə(I#\IXBt,.#KOVDz:U~O8e%:j^FQO9bCA t?'hl{[ ,c,p>JI$RF?]mZ#찘>gX|,S)Y%aq3#S.C[pQ}3t.>u젗~ͦю>طX>SM}|M(MO|빍!BQ$h=+SU-RmJsһ˶ åt?ejil`JshꪽWaj%&(!VDx(~dve%I>;.aaW P6!cZ{QPۂW,ez]棷kCW)?K.vFi4J4>mMYRd#{12RtAm}Z!'%qbc ɳ}(Ji4_ 8:|hrFTUxW1]Ep4GޓJza^A3K2ey.xvUVG߉jc[6w bDZi>plgfpTA;R^X PŗlMp ӟhk_&ᅯ r;yUϸ7s%W<1.^MT پ5ʙY98Y^:sfe1a>O3 M\m4 mZ(mHku;(˿؝udV譑.~K&f!lIxL- T uki-\d CU;{bS욉l,9Վi 9h54N>w, cs"8b;d[Du==]>fJ]+<5P>ZJYW!&Uv/T)U;~;j'u۲ 3ʃ2X8x it>b̶9x G$XjH`~5u  [qN!i)`1|jo7BkR{Yu^M-lD2;{ "C¼zmUыvJyngѹpNuWQ̈C~W/i_ i3lYד{+l{&9 : l|ZٺXHplXW&D9~"@Ss6Kӟ1c\w}-iኑg99D%۩ZG[@P#jJrpm9os*7oF8"řtF?ZOw'ȫuRUqR: KgUh$T#R-DUh gt#+/{ouV1֎+0B%,o-$wj D9Tt݌OwpK#_j^K()!7j 5>45-OjۮLmV ]=0GD+/ux"UZ팰"\cR `WCڮ:}|MrY3ƛq~y3½!<oU:r iQCFyknmsOfn BԔaf~4r$V^yes6}=>GM.WK-tifƗͪ[Ltu]1I7B`Qڝ]B doĚBHRwC=ńKr[d+Er7̧SA$Tk,<*Jה8+fɭԔ;9vU\]pZ"Mմ3$ y8?3_# P1K(}Am.-Jg'/Q58S9[6$ _]v[j] r[rx'|Ie\מ_A!Ŏ2jW,{DL:jXȫx`W@I5y '-F4sEcRGf6kW1^B'6nN>Ҡo:vІm!-w }ƃ44\k諣hrd*!ϗ@ V:ZוUHb](+{sA?77hڰ !ո!*ZnX lҩEgJlu?'4!}ZK~_EϹG$ {#x6uRpK@K3wS6S'0ḳD)"|fO%#GࢮX $cJE*!' t%` f`?50PʩcytqK `S /Ivh19cfE !PxPh o"ig̑ roSz?2 rחVd(a#jOU@hnt &#w|Q(}* K(aTš0!%}zߞ &s}p oiˉdL YBfa#]&\r -櫖] x]C(cj #re&em8Jzl/^)ֽ"t cFPB"[YajC%#053e8)Qۍn0W8;XnaCfA'ɩ Z3BZUT38*6}%Tn)PEˬX4|~lL26pT_ś]]zϹ)Y [#ț+([=(Fg.E\4Yag"& '7X筑e;S̬s$vgb1tT=pkiaԊMԡQh-q?og ˩#zQ Ѓ!YX 9nk*3r(+ЛƇ.1$&īF+ 5:t\<'raʒ6YMPn?Y4,֯ #A6B?.A7Ρ9!]"y4.n6/jzi^WY*׸aD0h73ޠx ;U]W\HSQ$N^Y#1mV-qk>wFu>M#XaNpQ%$yZ*(~3o-ƀ_#Ѧuu RHÓ$] }^άSdcmH*4:XQ;:u~܈?%_Iac)aĈH_^C6,riTT7ZKrD.й'NGߛӾT(QKO}P/ %ho!uE(Ɉl=JK6D2v!8r@-V'erhhv1f{gx6~䱂jv>G/ZCu%JJ_C{/uqi4,m 1ā.:Eq/5:y"0ڦȳj|0]/YH3^ ,l$ٍ{nADUJ`#żAڊ5Oh~DJ<]4 n46N1[  dօU=>" v zR]6$R@"L]{C3N^߭Z rg ޅ4%[  , ! 9X3jY 4tI)b$Q\kli. F_JSd>N  `\!2o-5%IKףRS),[f6AEt;9֊%)ok=+$I7 bHXᢗ7)^9_81Tvqk%]X>cB!D$":` ĈYԱ_IHlg_[D?iR1VWgGMYUp67,GD :qikoo\=;MA#Ç6W?qt1bĨ0᛭v'}i 3ԗ}R ۊ>3k }>>0KLn?զ-B]݈QQy;nTyZÂ+ZuJ,G-tDVR5'?}kWp%cEqAIo>0_i*Xb*{7슻 A]'~ v"Tc2ȧp٥4G]Đ#dI <Xέ_ROA9)O_6x9 Ϋ/U\SP pgۏD6L< S嫀I_z}[\z3UF8u#Gн^wJB+ % Dn6OjE8 h ;c^`~x}A D+8 mK[ǢQ}])YudJ+LYA~BZ/j0`!zCGlGC ?w*ϫ8[J;h8v鏙WٚoQӣ*3&杺4Tݦ4NbԼMf' ~ъv3,dM ^cyj9Q)K =(ƾSlR)jM-ά`^lrƛ' 3zbXD2`!l;vθa*VZ;!kv򙫁֟czgPdàxX˭E7Y'#I88=Rt\4}Pqv r۸~:bٮ2G&ڷ9p0kYa^IoꛞB*$7`DHRW԰>ڀ<Lr=H_|Bw;0p@ DͨBSkAmqOAqV:=6c.E&ǻ4eq ])?–q/ !Sə G |NpI|QBԍr"U3}<~~b^ tB3@@!=8qtG@-ǘ+Pϩ78,AH7>Dnȴ%sXb[&3 ر?xFS:PNu%>Nīߑ<&@a@gBǫR#W@r\B$5W}o;b'4't|lZ:,Qd ?\_[o֊ ц~7Hќ}Q3^?q{YR֐ur(59UPV乼ni/&+~A&fjV% "۠5qCy{ F \Q-J".-^>niI&ƿ0l~ G !@  PZ0x5Z Ğ9D/"CGqf0%??b{4yn#6VLM^OLh-"^#T%WSm&28ϩ֐+/4TsR7PBLQy8i_C<3%<&365j%.?SG25Nʲҏ p/Hsmsd:EV2tBpa.q8 YIF xmLOg֬%$g 1 7Jڍew]zF|M%Ո&7@&lc: ZLEU^ʷu{a޵NjbL``-vX f^VAyjI}`VZP6jm";0[8s&^tDcqκ'.9}';fÚi!DAaplϥ^Wfu1H> jD(,/xvpPtTeQ җU'jF&SИ8eu\HsMc|3}h.Q 8"`+6mpZ4Hw[RTmܙok>׏:Dk-`3Re[WϿ}( _ gr~]*qA49B' M'n6(BZ50鑛Qd,( FGʦ~h;HHG0pWEo /XG.RҤ~DDullkk+!Vp1Wxvp,Qo십pM~>}'33nŞw ^92>ʤjUZ\(Xz*AHH%y=Bu]U(ce*j Be UBO*WЕ{a?Jw/oCF>< VGe͖X ɝܙ/)$ĵZ/pFv٪? !(Z|j"6*0:T*,(dw/C̱(K.u+dfl>mA#a.E,U l񜨼_(jÚi^ tji|-ώ7GpkÞw bϢ0aΥM1#:RnJr vG̹ntW BNQw|8ɻ#8;f!yxҼk]z7H?sBi5,S/!ֲ2h|*Ù3g$S D~-?(+HZ Ui7xuke/ϿtB !ɒy@#fKItE>ӓ<'eZ넔xwG_ǀiJxTSIg%܁1`ζ+ CiT {4okZϔl0/N{&|a{$ CCPIggFyֹ˻Np ӕfv-)ˎ~,\Kفu NH2%H>FS5}aV\|tjZj-Q5'mVF=[ҋb>aS*!e-S}kWE '+WL(m[ qܴ Z'Έ߭ǎ{EN&]Zr/|4##iԈ3WIH%؃Kӹ\i>Ѧ /^Ve5g&A>q=<0ah\}e /Þ9Οpj=FS>9J|@Y<^uyn-s"Ԋ+'~}ߣKVX@2o_?8g PlKt#(~YO LNmż\+m;DP 52_*uYk?:FvTFNc_tlҝtӚag=`N&,9/&)f꫁jMYD_#[νX߷2 3:9OafU6I.Ca2M'Nt/s+@kʖ< #YF2wǧBLe7"na6 K 4$EIB)VMyWI {U ;6SzRH)."fE9Z0(!J/ Af/&p}H,5<::@IvFpKk.vN\}|N2g,+~C7(jI 44?onPJ"lk*v5Py3McxVexCּCr(e~2tk EyWj:(ÀohѠUĘv\1- 8b%k#FD$ʕ?{XtocLT v;w.{;2J1o]%1 1GO}@m^ >gUy〨鸴u f)` F,d5Ev%S]쀶  '?z]̄$%1 {y_ȏ5Tၸv+70F.Po{iyܤߏ[4M !S&HMyק,&F.zBTUn4>h:v*|Ȇ~ԺklvlTwOIɁ uS5B08PeڈHȠZ̳S>̼zblq];kaTY0n "d 8ł~j\u!X M#c?^u$5$6_e'΢۶ $)$p&ejR H~:$=M{:)QMziG.afp{dr~2'ge w0>C&b& =2,jA=0<Bz4J7ǜ0+Q #q"\ PXJ ;'7$GoNpihm}]&.V8!o֢Ę$Oo(_Pڕ}%~٭6oUP[|7^H.ҜK&ҞMyQpe2~ڶsK^G`R.tɖwj*hY9.;48𕨀Wl&jNj+Pt)b*ą/v$ Iǁ߭nיȵF !EbB6gA~VIg[w/9G \޺z"hY5oG At$'z9@dHU\8"Yڮ;qo$w7v:y,uL(_,\٬C%|}PTT,j9`C\M N.@[ж " fh?Mcxg!9rzǻ&LWջG5I@23>(~*v} Ț( {#ߑE*ܛwXJ `n(O"(*b (LvDT6UYnBw6$y_(svNP~ ̀Ht=GX閿8*BGreCd,'̈.GYxF;pvlGX-dӯ >ƪRJ6Zx.ģhcZ@'Y&r#>ө7仫CM4ߞ-3%};L$⇾ nqSˌ1 zA+Ynքv9nBok} 6= WYN8H/Z@Y۴JvHPtckbpoM!`Z;H<^!S}-.E I lج<=l2SRNvjS-i}9WDloSHHԖ`·|pA >YĖ2KY4WRl"xL?yj(bbH w4;pKⳛ8ÏB&́3?7[9'OԷV` g$[&~p955wXr^j?J<{ܢq@f ua&pڋmo<`!~}{dPo(#bu'׵~v_}ànA"»A ;j,ʚ/>b8㏃g9yA(%=tzJߗz:]Ռ&CisU'V1nFAϧ3RYibM?&Cj7f/ * D:97[@{p 49Ӧ[b[NRy7-KL4W'Ia{2PyCJYASaت!7Gi LMU2ABN8>TBAXuNwߧ a`!rU Bs)a[ªZJ -mA&աP@9BX"E7U\:yQѡeg>8vU=xlO@,W &o;f=z"T-\(W`Dp ށR11S:Ľ&eYȠbDǭP U[$MA5&]"d@mAA88UU92 =rs,BZliHs* :P!f1G/r;@{ H|G2z5`AG]/Ȩ#|&NWKe$zZt\7`շbUsÔcU2S1| T/g*5)w*ϜE3[}z@#q.r{O0'X ׾CŒQgCWƧ" \wb䞄Jۋ#s%P&'\'.xzLP'~)l<#x+%n;BO)kPN:UdWh&@6mfN|z5mjgۢ]ׅi_{X\jlmM~ʕXl9MG/"}ɣ9Z.kC!4ɜʤ[i:4B# B?mt׮ђLQXnLlz0xz%1ٷqRj{Z/l>dH'нIr9u._y#yKa8LB%N€pչaYE\)O(œa{Gߖ_ op**-N|Rۗ;ލuw]v\Tu4ɄDdqŕ0{БY^y 7c]S3/ܰ]HjŻYR/hh#Hl1,xl^3w6)U):>zׅхtLiiHD 7@@!<?HKBN4@ănk躭0W225II*_kqUQGobNg)l 6b gB rB9Ĥv[Z Pm7h zoh?t?pr M-ǒRZVz? .{6 G}KOR45MRb\;ٍt2{/j :^_޺|;z > E>IOcFX U&=G3~fzB#W{j%sJ Mb KV[m ȫڨ:tov,i]u'"2?#C~spzR WC>]g/~@3p7"Ipr˙c;E,nŅxy,#}_>@BV11FkwSI~j 2"G-\}uhKՈQ?ck2 tA:;f6WJExjnWR:ym~q^E)-~yr[6G A7uưQ8/JQ#aogfVX|%0 ؞2xS=%[±vs:sHp Dg 6Oڤ3\玥@;~:<9p?* (⭑VQ, 0`;2` [#",Պ}v/1_Nނݵ7:X+KG8`G/D yg] 3`K[ɴ/Ҕit[h:Yz_m"{]i K+*-g!*՞KE>&() ]Tg\6=dO v$E;q2_-HKv 6ǥvE+k75'8L]#t.qlrtٶ4K|:gFVuZ@},ES7kN*r 4un8 I\%(kPK}e(+,ec>1I*~LM@P𦂰arHFEC~SgZ#i2IZUq+q|PI;,lkR c/Z)-#ֻ`ONmpiT1ѣ5<A9ACw_!soBkuyѢyN]PO>n|Zw,@nhA{y@ !@ yP蟌IN3?qx3`C1S)";>94C ^6# z,x uQ ƪT6s-I`ԳaЧq~vg`-E_;j3se9oWLhX(-ty5q@fE6V$ʼ=Txۂ\Q~;3g-1m^枻Kݸ/ K yf9zbRuw ,a-#&UʥvT!~x` pQ}0Iz{l`BlnhHO_Ke1LipCfznLo$99) QA| .[؛]Ɩ!IDľCeK~zg TagO7ƐddΈ;8ƗUa:H&_y N m%2 Tl~GiDEڪ`|}pUhwK.;xG"yHbYyh!8DL.mnc5h }3A\+M/ـTtPN$cvHl)ElGA|@L'c^o8F ~{*!ʀ?j02E)h'@> N21vK3: 7ƍ#LCW<%-8L~9p(Zz 0P"3GTjl:1>xKKDNo8 ٻiS^kjMUbBA4PBZZtFI CY:OG65X\z V|{J[9"] Δ֗{ȇ3ӎTU`%s 7j f#S42mE*hU>^kdj, ?|r_ 21JTTabXnnjB!31<Ȗ\O{:oٰE=S>Nv :Bs#}'-){fnQtH9^YZKcrlMO=?0Oe =/9<< P5htslڢ#t-ڰ>Pc u{dM n)#QJG>N ] \ٸV/XW8AA?OiTOhtgm19D .: o mؙ>1؍0,;DIu fÙ4SW5JWV=#ݎ&">,yf]*s ƝJrPvZ|o|ɇH%?)| yx!(&y Z+jj]_edGb EA'DjZ8rl(G*X"e}9i-XK#9cˏ*#YFP_+~`j7"{B/qX݈%H 2g#fG+п}c%e[73k!uĉ>rk\t{}tI^sPxwM\YAv RCYS/f. ޅ}@T[v Dr@ H('x]z״w0z{ǔ)+nֺ$$+Q )e,=`-0 ;N}Æw6UpMq6+vӀCsn*c똸SzЄ X$Qhi8:9GE_*3l;a *P`N5z$L2(N>t0&gn&l/y+TG3:eZ23ӆ=\ںܵAĝv뻸9Ua3z$:U_8Ӫ~8]K;^VH@}$s`&=Q@x{=SF_mO{ ւ|W955裥 W2s/Y&$}@h;NJ_{ݼ/Pi\V[\␹nV12>LIzJgw:Q%Sj30 I.q O!"O)ūR6Mh1뀛kȆp Km @z!ir3X+AZswy96Tb^r|2imCϝpP*z۳ʮc{aœ>veю''JHGyG9Y A ONŎcx܎HF.js[XI>[|f!sIܜSTyR֢#H~D9Ĕ;j-ޱωz8U^ qD"‚>К$h?Aծb8h2+NRˊւAC57QJaK^1u۪; ILAO`їcnty9 `)U1TQ/YʹG |gk;V \qaQ9qqDc@cW ?Lއ)7ojbr^S]Jt7`#\RaT su2zRV\#Nn|loiFޣ +p|ƒS%+b`"֚dLs[jtl:Rg!T!SnS]>9Nkɜ\E a[o=.vd1VחimNikR%|(;ɦ9ګ9fG>F)+BJ.P\cSmKrݻ١1A?I 8"Σmad3nX>nĿ3-KEql7wb` d d~R BLe7ɃWT+D돃xS\`r6N1e;\kM Q58h75)t\03JPnI_Dd.۬Z 3~ Vl%q߿S݊TvXs(->H3C ڌuɵ_uI7-(xy8!%i@KwQ*|IUWB;}6mKx!`yJ;#Nx, vj=#UtΞBZse&4t: H}cjݣ Y:(aD|r%NWy+K*V IGiBX} {zNjGy>$?"*WpB0`虮ALo1thaխFS4rQ,>{uYmP%ǤXRAs+SJ=.c欯]v<|-!DVJ_;}O{(8[O<;"t>Qnl"5Zݶc!`Kx %1 t,fMN:(uW==Ka,C0V,d"_Xy!Л G}P_K]Q`KG`VBbd&̥hз"| [ wrT}r3rOW*om)3qc j  4/mK@_7հ#۟u/6*ڿJ{9U(b%uj~3Ka96c8d3̌5]vIpn&yeϗoj7//*1϶wd?'P(>Y%`Sƣ -}/nCV^IӦ:B: 1vy}+{E"VC OM]r—cmR}i 6 X"-īBC5slg/BpO¾kn/\mÔ0-CY43qkԟ ?*% 5ûW=DhKQ0R2F99W>=W*F46$Am]K dpHr*+2qޔQ X%5^ժ`C|VT O_w/6.Qh{ RzYY8˳V@ζu@z?8VaFx΍C.Jź6">ѥn Mgy7l.i)*b B jWU:))KC B?k!H5L} '+SǽB&SOtU0L,jmwΠ9H_.-+;D32RYOW5ҳraa0qQa]K -L8,w(sWu?s\6֡6w݂q=}ӾYߡ#^⑺RXsQA,q1pyy%Y Ob(. #davB\n LcB[=T!b}= Xi`M֥tt@HJd(vB(x-&g.`lWuJɴ0Dh\Ί[ _}w!lOA6!̻>;g@NSO}%{^s [V]4KcjtP=Vs#YABHXEJn,> i nb :As5;u-5 #@^ $]{BGT(k,+"cX!YaQ6ps~n*E6/F Ԫ) bte}ezn3Wbi}9& SJ$6*A^_`tӺev63 $7<8Up]:79Z"^̤|w!`n!wy˯<-=d᮪aUqZ $DB<ݪ*#J) AṣQ6`s Y٣ ]TXخZ'_IU0@ɛf,)E,=\&^u'GK@DS)U'U.&M~ny/lc.ig$C=v4U`3Vgqk@6y8WbG!20~d@rr"SQWj]sIIS%rɚb/Q@x 'J"jY u5 3uJ'̛8 Ѝď[{u0e7D=k~y^ǵBv5}@V9x$ITH{B)dt1gʥкtҟbS߮j;MTv5='xj|pp ΚhR~*j'Z|x&U*M}1cƐ$ [Z-܍gYuvCv] m 5XȯV^D~ȭDrVc Ty72Y<-8h5QBޙY|l~6(U(Gz^r,UWy= r|EYZ){W焧FN;r` [C*&{69ADĕWâ-S?ExC#F撒@dE$\DN(]n$\/K>?9}mֽVyJ` oN+ʏTss 5XRK݂{ȧc kPan_gx.W;bYiOUҊ1jtӿ:{7 Kp ?42%BssIZC.#59n20s!n tOug:WߋbA#LN~ M5~`Dw]RzDGbVma oUQ6Si.n6΄i[<ύ5Fr?WIaD2O]ʃp^$>]8Gڅ*V:Woe$QRzr|)Ȗږ8?S|kT&lS;K>٠*É Ql-H=)))eL\EpԪ0g sRI5s3q{ņ^\mAWcZ#5Қjo5fxLTwQH̯$ǣr+S)HhY@*7cM'_zꯐҪQZa*zQj̑T  ȜM98" b f-\Z:?EDU+ìi7#F  e7IUE }k,,(_RpR{u%SK[[ܞ \S`8'ydY ޚqp|3uess1o!JߢcY(؅s_FIdTTp!x1lgz UHgMMi(ec)72 >=auKuy7Qwe@Q&؇!u<^͜i'VΘSOK:+~ c)s]+'܅@ xdjzv8e?AÊ+ B6v `K< 9:RJwHssR`xretBG4;f6w5$4HlO_H3H5| Wk?[}s1k>?K65Kl컽3Fv= ¼fpǗZ!Y9Zb>^$oTTuiRo$fw2AƼN$R%Y ظ\ؖyրX^lczx.fMuvyJ$]0%fD+;V MO!U|(H{&Atuucw=xZNB` 6>XԼ19FT(^O[OX.Nqհ2uS)pHQ+v;$pŸWVPxR Fy:"v_[3 &!d2/5dvD2.S{j- u KjZϮا~sg50DU!=c`~ti0$xǞ8>5خ5_${l;wݏhN+}!K#'^%$d~&^񹄈W-32'R \Z"=2ήS6djr_r1ZcԴHțݼ&-e!*S, } [v˲f?!iԋ$-.#}>ߢH |Z7߫K`BBtZ[uELrLe6F i^7S:n_+NIO|8AǔvvG_UH߄a5ق# D|GU7Ao`%xu9t g38x!ysv-YzA\T.,wP4`bdU$hXďx1{NSQϳ'ԁcw M=+Г]+ࠩSy;V@/ho2|=i%ي} o.#>& oZ98Jg,DFsSU_mH]_7;)9tבL2.nABB H nکnqC \B$Sv+Iʦa;6ykѪh ]o7cloG}{[vDVi^G=5MP@F+\:0>@|)T̠\r(/Rz}pdtIS ;8|P*{Ͻ 6g8ñdeV{:g ?:74][HaHލd\tqus 8-bTUPW}3CQ}W |;\13qM2f|'čܷycaTtVjs3JBAA&0F<^6?hMW߀-3B]XI~8Ź=dVC]neDdhee /ux N}6DH>g$|@P,6ͬ>z|%@dUL˦lLRj7"_ nF'Ma:n}]P,=x~/&̑8%XT=tSs>RaD5I62m_oyf<#M Ed"1=o/5_u|⽖f2nz7hRb!O\Jt25)A<3-wЊkrJx *\Oh2 N_Yumzل&}\<3m'vTulqZk2FHJИn?ةP;1bZ4#ϸZy`& g' ?m;rq5e_ܗHy 5o}6Ǘݮ&Pm{\rJU̩^fGڗUVs֤$ >(('[hzI'vuvMnM "GNX^c; 'oZb J܋.u:,pDJ?)@SSBPɣN6J)MTAd A (!qD߀lx)-~=MX^7XlS ;Qzdb &}E<]+ptí#.B40+< quopU0V<׭,F&XVt@P0r {kľfљRb=j)PO'wcQw.A~OY̨/)Y?r.t:)矮w[K<.K}eM$a?1 @M(x1Gm9Jz>1aZˑJ5u9Q{F}G>@E˴Վ\0ƿiW^!΂iOZw#H#88sy/IDV\}PO]c{D{PzS?hlG Ð `IG|ܙ!ekmdz`CIw􅺅`̕ Tp.dDUwXLw3;5Vش.z; uC<-KGχlw aF6vjS߸ᠫ2E2o.^-)` TZ`F³eEr/fR\wC 4%fCM#kTV*-f*U=$xW^>jޢV1]*ĴaŴctfI`غ͵%RuTTu'} o%#K֝i=QC!PI?sT ܹ) Wpy&arDr)@28\?noR,^XfäDO(1,YRdSaJ(#aw68T`ʽ@}/k|U:(L2wR$gۚdd_$uGI:%}]DxϨc@UNdn + ֢^1e9@$v/THF4n^4E\V A>5O5.Y@6yؚE9<+8ShU9l+m%Obkq Ue06\ڈϘdAUfa(353d_;jw =n%k y`zj#yK|fq<^޿7QzϿNeb7-A6u9pn9%+A5y+1)5H=hfhVkܸ#YCNABЬdT:|OLVt#1Ӳ)E0KN={ KLMڷBh|qa,[6k}! sZm!k5Ze I5WXzamJlLnTjkA!~bc^ݝ˯=GKnPS#Zd˨xajlN7㔯fq%J棤;yv#B'USwbN-=K)-i<6wڍ5Ev3k]Vi^kf[Q:+*/2I%g4JuBxOy1^\ġq OQstKyikL ,g|L)wZ49HY ׀40̈́ˬ@z; Ëi? df][Y]-%u;Za:[ot=Mr #3jb`RDY՛ BÕ^^N?we$'թPqK) N?T( ^nQIׂ5UKx +ZkKfWUR72&!bu}<. ߷[>A>qT]Y'MPk+dU"ËgB:2bEmqԃṭ=г'ak$Fݸ4vt1)yb Zzn<ī+Ig~UiqM Ǔ,Y9YY_e{`%0cZ *|%?^@ o^A2lwa3;!_/6Y.xayf.%>>/e`W3,+S8}ewqI|Sل6xDS OZ[*<2S3|%XL!g5co c`Z^VO\d`Wvp]N1XRʁl^\in(pBF@C^Eqv:e!$Oճn11E BuZLjrH֓zH}h}2$ZicQqRp&?~712P+x8b Čm}?]i;`-Jetz€L|[0:&gX,x\CJY3CRF-@ٕU6|aᆍXrgt/_JK G"2-@Q+aivbGep!ȫ7f@9uv LBywq`{ʂZY1F=^ &-Pܨ&pVp) Ɛ(ŅRqx/+PL/zVo q&>~3WTx$p&02B~u L~:qɟCVG.37*E, I&KxAfҺv.[ :܈bE}WefچHzD"Z C"W0F7i@g_lS}Z탮`5UPZotEIC{IdpۜO\r(m+Gf#^b4Ch V""%Ij+-Fl\-t_Hd Wg;T}R{$΃H߻#"tuv!F;ÀߪU//1xc:8Rp#CLa9Z+3mѳ }GZIAmD3{~po i 8ם YS`k\׽=MۖB{7$y/_ 3oߋ\#ju8T@iaQGYE8mՕ+WСC9!61R^F֜ obUo7-NFw(siEFVXZkfgBg3QiL32'ǟ%6G£|yq|L+,i2=2myL%3Y״2,Q GR7s"?vΈ3tŭNERmv.iE Ī=RTN36^C:WuL.kG- M)H˳OJSe@{_븯wv^aђ62Żwh.`%ޤ`-coZb㊇]v8M; 1U~pk G RvmHDBA&h1G E̲Df8Iv=sG҈8uy2TW9{x Ŝގp}rهSp}NgUȣJ3iJC{?MOĸʇ#Ǩ|UH?^(2m[9? MKpT])8G#o.SZR4:o|!U|FkHP?-5嬑fgiMMBԽI!j4"S|the xFB6:M@-|0MB,"?i =/ MB^\}m|NGgl#'3Hu9r]Pu X3&$D\[¬G oƐ;ބ;VJ:YѠ{D5mTKt_R H&SZzlmҧZV4fwuBg=tJmn~>x clغ8sdȩ=VHv~_ )?vkf jEx[(fYl֪mJCAG}(ܷ e+n0!KA2mOT Չ{ F>|2Vśdgh< V?{ZYPdFy)5P8l"yLso>C\I)7ELR^FwXf;rr`Nf,EȻ뮗$<#KY&z$ң˿^ NUCou ZQ1NF~M9klۂ @㲑h Xە@%V7T1m4/콱ǸFN]ٳ@N6mՓǧ54𮳷ژ[嫦|~B2й ]'epyȟk[zrMH9CF!|+c|wrBr,T,b"٬pv21kexj No!OPM1rpr,"HW,15txYpAĞ 2ʳ;w++09Jg)w(;\< ő"*d,2s'1M{z늩ٲ:hMN4-غ"WOe&>^Z9cb *2!w!Dt\")eTnh,?즮w*40yFu:??uFfr7tEeXF5fQڜ- q. QG]4gM \h犳%rU#4 \㨗/u Rl2@ nشMJE2oz)͜U .jŮ@DɚU1T=;EbggÝU&Ms?Ǎ֬e1 b_ tt)h=@ymզhM{MA#fxwt'-16z'fALx `N\:('UL3]Õ-Vץ[d^#NjN\e-P1O1s,ڞ+s{ͫt㥅1 DM=&d5b)׭1⚃U[ 6 *jS2lqR5]̸ &HrY^h|v w,X>vS9?3ұ"Ę6KW]4% Kdspv n1/GyYX[tI&o~ "qdS-z O[ݪ$:i͓#5u_aJl;/+2YKo4Jںs 5p Sth*92s %(z^+)c}s|B\t~`-6 Tc~fodK޻n¾X枥 ^‘Ń֗YGQA3Ón(sw ~@~LYb͝+yF29o^j/hs]DCClR@@?[zG<?ҘiI Hccu{'$: lƢ#+^6uF[1I +VKvRⰇA2)K0HCW…-|fͿ'T+xn>T3YgH2z ጱ"ob  Kу0< Q*րDMxѳ SA/DޝmuCl_dO"߻-8[khY=UFb(S))#z)M7n@QwgHpO?0l H MD{\e7+GL~ǠJׂ7T.0џ;̉ɼzLhWXU4SM0.T0ni\w;Dх {"UuhCC7U>Ug["ߪ:HnsTi!K (;1w&:_VM\RqXفs8f)$j Vj}~哜&"$"ȟ9 ?\%evFS7Me$,IdT`x-4NTof$0so|C; tb[_Xzҥv*m2H<+x1Ս/LvYh7z _B?r* ~hݕ~ːF<')׻-;p98٘lq5J#$u=ђ߁x2*G) ]tM]¸1}8x@a F.0TZ~셉S HslBx Lr턭~cu}'Q &Su㪾h3' k_&7Y~[m禪Ha[_&?SĽrӇbqTR9y T[ $e"<]SD&֠g'ڏ]FH֠ZC+Ж.Ґ|htG^-vG!i~Ɗ٢,;B0E=>*%~pCf<-36ڳkI L٧@J]IkBòfxčk;Pb`m1C;eUq:8gF'/akŏHI}odoP|H"@nmPN/iò=- ^tMi=bɵqܔlc PֱrᷘA--kGOCgpȫTqc#{i劷b$Z0ڣ$We]h7mWۏ;b:|}L/KWv/vͻ[b>'Ŀ5|3C` Ыt$}ve~}a|S%uK7=7*grr2PN-^ojcxpٶDry`zcYƄG ar9Rܐ}C2A\a&߂GGz#̡~ɉ!Gd߳JA9.îM>MLT]9hQw1Dnb>wSK!UrwVjW؍ƻUVl{ސsGqU,m&m$-<uĂws9GS)jCM"r0z1'-)0 rV6OO^z'e]Ҏz ?gـ7 GAlEa"2;W)c{q uk߼f= dSoN*~ŔGւ#d/N\pQ+'ŇVbaj@؂؀g,nbP{QӋNI;ђw`aO>da=DFzy`E~}~c&`N^GM:kܱ]TJven?B@$dUۗяKNeCS4np j fsEmfP ىQ\5}- - 2ZvvtD$р`WceAX}5H)J&ib맀+Tj%A2jR )j տ#ݔϯ0\&fn}2#pPG& ;Odʝ~w)㶛( *9b?"&Id1/zFQ^O}/޾\jW6,yUOEG;>5b۸ /nn$, zkCemX%m?($UW+C(zKBgsX1:T0%p iL)(>#qY HsL2HZ0WiL8phe7)t&cavtj瓓f1Se$ўZL#}~DU ȗ?/vkւ!q;^ SR2Xs }НY.ON!Q3U~6W!+g=i.a vw_G@',+K.GUv BQHF2ejh Ժ˗ ×b<$TSep,H^tF6yivuG-a`҃1M{`IwRfמe'] >%x$u]bhó\m1Y!DZo0VTZ⚫CPf0dYP\ۻ^]` I djq& )$(R3+9j2F:g=%i¨H]&Rܾ-;'@~Ȑv,!CA«oANupx{(Cw0E8Zr8K 5,dB:HciO]! eܗϖnBgs ̪e#cՋzN629~ENc|\Gp..>78-X،󈙁{ZYq11^Eh Zb'atS rw'j#?EV .i'qM>gQ4M?& ݸ`OwB0h$z,GX:ܯ,geh dJ㌇;]D=HFaaYv&G/^GM^Wd zt+xlAZE`8;KKJ1kkEw7qJ/Z+: c1D *zJOY脑 ˭hg "仂G?GN.t:KC59-BQ|N"ZY@-ݜeWaBl1<6>8Hw`Br#M`[pu=(*g7>۶_osP5cy 9o L]Ǜ&!CV#>oC!JJ8Mc?XiҘ6{i ݉K3}㴋V?ԒlgF}7[PuP7'K  <1Iᶇ+>07<'zo|jhQKk0AyٶFm/4i ]KFŊbL,"O5AO~ 3֗[k:L_\uNZrLMoH-:z va0@DtCc/4rDiIo0i1ӼeP` B?2^-T $QUwmƬ4~_! Tj*&2kWb:yZf~#c)nS7_{X-ZFv0G֯t{[2d&B>&Gz -# Ru G -sJKrcjw=tMn.ç$FC++*Hœ7]:ej`d5d(uKq)8= V[t"gKGtq$6сZxAD=N830c^{F6f5♵3 q(Hƙ?m˙Oh2jTJ2(e /baޣ뗍 ub:S A'7I'kPnZ&O{ 1fJ AzI;\pǹd㛪Pvu0]1׹CLH>]C>'``qY6[ܠ DMVX8zkzx!}XX}9HczLKY!,s%eR@ #T5<\CD.'Xt+7.W[yVt'Zmq."ٖ@a&sVz*KB;Ğ#MS.ӣQ E:P_ȑw1f)ZJ8',)w_SKc^);|PQjd.,Ćo•ꨦ菳hmAeblɋ\4g#H{7fAa0 V>w$ WōAw {]f{Hddfa*d>u(-W1anDKx 7O_oG3p+y(1:݇RBЯzsts(p<?jb|ea3olǴs.R"Ⱥ>X˴tth›Ȉ3 kO#c?Qw0&.tZZyQKfˤOV(3G~1KW6QmwOVSR'ME:YS<= XPi<?Iɨ+)'Ᲊ?Ax2˿on't}y)t*e f TOxw)P,ѡQ9 H3|}4c]g&ݬFXOW+VO_b&hwf궼=~++k;5i)}wLzgkŀ}a"qx j %nSJUAƺFwSE%>E'R3z%3%ЦA :z@A`igNXսRho)̍1v-9TP?A^ЫWZ tzWvo{sL;1==8Cڹ`~ֽ(#zS\:>ѳ G̭?v({sYbE:Khm?:0E4N7a}>$IzpR[ƫ0^tV&K LATN':OyRu,QO'܍ rU:x$e'-@*Iq,F׊Q /@kRg6U.|7U&Yg i\`N`bOn@FЉANnm mz_2Poâj4p@WF\/k,!H5:B Z,~p8K)f󐍬͏hdž3Hjw4v4u =vqٞFk|< Q)C&խ= ީck"N5{#'!S./W.~~?ˑmգh}:=0=D$)x[:S3b./#2xχnǍO$V]l JӹkI=G0pXȏi"WZ%Ҋ7̛oa<7vrG AًvC>Sv%ntb.|ƍ3[h.[ e/ SŠi4:fLv97?fV -RO쿝:\qy7w&%(30Ih~`X~xa/0+G ;ᄶ##/+zov ѠOyIL^b]?nmA|rٹShYP-9c3 & |sD;BhsC9•%0v^Q4AY' RfӔv節y6Xei8}OeuR<&\F_X>:j`mrN@PtSeJ z&٪\PꤴGW{OL"7>DTYs@kϰLhdb#sD候Mj>JY.K%ʵq%lb{$ Rܓnb,/P .řuv\o=&OQc-!i-b*^Y6`{,v .Z-4U 0VO;}O.pj9r V ƒ.3&q["JWϯuM{SQ |+N % gOga@X6G I7T)6'dnk7e0qGnBgys %BKee|`+\p45(Lr^2JJRJ(|*#O){4qlM#+}d&.[.I,?ANC@SsSu8+j*q Ct"KS!xh{WoJ"QogOg i-_SxRM{z_*T |pY Sa#ޅ_CԵ+*W.(>RYԩ>ˊ fz9OAI"K(ECU jQ9fLj6@1l'3}72!9XB 8N;w4E> ʘˋC`'>x T cIi@<zsUʐ; vܔ&OQ (i:=~݂^QN$!Y@ D='֛Uxz1v=W4x@O>ywH>Gp LԥW}Ku#¶(̂2ix0ȎQ FnOtVGJ;Fd1GACjO,j+#U֮wQD0C |׫mޟjJW!qoDr733/}¡v)cei㠠rbSilL8'N#A5 'V~3Te۷C{|!8qdN=tw5c":Lُ.P !ӽǷeIq;@_hQ3m΃T%äo' R~V.ȑt(? gqÑFg _^ #oO ޭ$\_3Խ _(21My%M]3Eu[Eza̮c5X;S2j7Tj k;.ջ,*@e>Z﵁,'S&F($,vEWDUB7|em (FX[6'M’SLNؚC[܂V5o :.oK#N%8ԓvm95kK8 's"Ni$lL^M Ebnl_sTsv"?GGUl`"߃ٕgy{Ʌ'K4T'>o|K$+"74Q$=^\'e6f2-"uc1=#܇gwSMk?jnBI/94bmh }F=0X<\ η o Emv#H1efN4ɍ!V-ʄSd7~2m:_7ZJ+UE fSBLX@ xp0KdBf SK*g8L[\a$tWEf( ` tg9+\ScDKX0x \ ]O'>~NPJ/ޝ̗EE}FF 4tnV]B*;ni6<~Fg ׉TeE43ŚRo e).$2rc~mQРm<`4bx̯]X`]s VtCtb:c;2lރmZ9Ԯka9v )Y æNcY1w}W68Ԩ[ 8ǐpN{R:DNgn3 Tdx斖ם472_yp},Krqev%w4k!)𒙸kv٤h"Z^Va X+4z$e̒O8/9>g8ԛ-4&@)vIj^‚,;VkGQ/cxC6TbV4G iJ )&7Ofh9BI)5/CI/$CE_* 𓤆IDZE(2pg$3\=AMX&61J*a^FMfw{jrսqS ⅧLRXg_/΁S1>? cАr)u;8ϒrXi`(eO -t>Fm) gMLKzR;8OYDv9yn4X;`j9Gl4>+}-R(r\W9ux4}sG|F~y -biaàE.oضԖK?(sr$np+1&& "j9 4FEX;K~7$ m!n!,QzpW lf $0gr/:(Ԃ|݋7(=/o}XJUdhDNk۰Ț?خunu7&+vx:E+@̉@/K[ѳE8PP3 N$3=3HsF6xy<YCbruӏFhޟz[ , 2])+7V-z)_֤lԈ)e>wԁCڋ^[D%UHۿy ߘY賳\2]yʆ 1?i|n-V|IҴ ܀k{C>\Bh"o }㬳TvB1!(6$ !mUZ!*Gpԣ>QW ݴQ~=(P ѧ|$Ce/ePF_u>PR©.XRpjPr6kT,\ڮ ,>Դ"_'{&0‡?yǺ0X'UM6b599mRn'm >~*SKߔ`XW!瞑Cļ{7at:F 23} ء%H}+`L%%4)! #gtOω6FEۚG^Vq'jXLKccVΗiQk;mE{iaX{B C*fSNрX4sA9,2L?_s '| Pݗػwr!P@׌|hq ]>+.KhPeQTȦtM/To(T')WP->~K?4Gl=l1X$h'Amt_P&"pV{My {J5=6@ GTEu w{M!b@(w=@zm3]㎳ګl$ ]0?q >{|ٲe0?K'e<rLݑ1vV0lsTS!'4d%D!뤭e:_ hMv?q燜i±pFwh-⸎R1q|<'ӨL(l B +02ՃJX?0LI^wo>. q=k ܥfߓ4Cێr,DWuj|"R,'d (KdQ^j )k%3RVJ ~Tw߇ =bWB#|5AVE#q&[a 2랖+XVb@$y7y|Q>WPvo'G(_wAM ŒYG.Yb93$yO /.GGszX18Bie1uMt]] )w[dUk20Z|yC) }!=tX2YY$j.:Br<":FXY,K2;yf")?. 4%IC ]sɅB: Gyo?%X=dK5nW+Eӝ<:,p2tWV+V5a`] D y,vBE /JQrg-qΡM`Dn=_J#;,ߓ'l\;spHs*CzJ ,Ao6ɤfUXܧ6Th골UAʩUD5epqّV$tZIqa*.z umeL%UG~5>2pBURFBp SLn @+J*dlq3%xUʮ<ؐk)ʡmMςU/|?$TR[77ƨqLNZ+>ҠH9Dm]9\$! ۱wb՟?;&m:oozѤG~]FLݫɋB *s,^?Ղ ERuT0'gLPv%Iu!%Ķ)*z8&J2.*K~RZ?pU<1U wwHㇻƖz5mc ÉNQg(MMd < ^c;lqa=:QJ'sVavlӭ:賥[Wræ6|OA^Ģ汍mM]} qZH]*N|i^ b<7Z9GWY@}s]{X\Xk~BN`Vr^y\( {-0Ḟ_%'6\a,van[zߞ|A= mQBQFIQ"ʾ h?eM}kl'86_k4?6 C3ec<1"6j˥/:ehi++Tq` H칄V7xśEzқIzWq{m jR̞ tj`GFm-,]YSKъBD *郌ڇsA8E&= :N GfAL ^6ĀCZ@޻=nXC2WAݑߘ BN XFWv!,Zf'qzc>}q|a^hwT.ӖW_:U;}jRAge x!Fjm|/}\/XFFrʼnÑޏK _KŬ\%v_N^CfZ =96s|͋"~maK\jnaBq&zQțW&WdR~XkHAT|M7m0'M05ǯ ך=)E*#RT Fn>w?:<-m(-̓gEώRx=ǰ)=dGD0_n+sJNS V0Fa❀/ Β c'd3o;Ѣ-}<|/p8`92SMuy%q:10V{h}m{ˈ#=HRԳu0$;8=fKI叐|}R\ BCۛkGR]mv!KvOaX&XMO&xv2lX=ސ#D^+fAL+iJx8 W9׊v.,ڊ8u~C Ev4y"\=~G}zQ) 7oiI;֠Wk/줡B7_R“ q][QRf˩/Cb]` r~Mb 3$c]iNMK0dL:J8M,HTl3;!N4?oA*6Z0%mlLDڽ˵rÓI NU{N$Hs*~/õiR[hL!nPKin7qS#oǚƥe}| yWDd zǜ{&DU$|ef%Kp2CV<\p#Pb)p>^EYc@8m(۳_jKb^ٶ^ GB.ҥh5 +S*X ;,k=#ct hlv3vҳVv' Z7k_^U&(E:pZ2!, r#aMC''@:XA:l!С {E䷙?s& "֔Y) N=-JωR}!FPjEzLAhؖZ )+g8gYe6#mvƒ9X"JN'1\K ;܆iUvIǶq6PŵdR٨C;l('*Da=r5}GM~`^u{m;;0V]bYncݸ+'46i9k}&cM-\t&s@0v^AiIޠ"T5=YvN=FfsZؿ&˛`3<6Zzwn Al)~~QiZ'j\KV5Nbޯ1.ʱLKJZ@$M {E "OK>$!cny6KqX >cJTwʩ6'@q~]vPJ%O~T8uYDa@1$qJ(#=[8IwY@n$@F]3ƛdS[ꁓsmþe;N{@Ey?v@G?_<7ѳx$/*I͟ak rģ ?%MQ FS#zJ( Pxw4 Cc9͠zܨb[}"C`呜fMM7zf%!tHd4 n Ti]jγZc0AQ"U+ #ԌdWK MA.Auz]8҈G^NH^~aW=Eu|oz +- rH8R}z?Z3pitx[v^\\ֆx<I Zp>7_E_,a'zh(к0%ܲrDZ^($@Vp>vB|e40 j[.!a,o? .ze)f=K\J^_0#nhF{K&&Put;NkU |M&=݋R0TmBC.Jl+8׷sm: }G{|)'QֆLof xp1@V^Igy=#*>̜[@T߂EG3/;t%N2zXrL|rpkpəhMp=4 ͝|Orvĸq lW+$U~;Ӟ;6YxxcZX"{_aScy%y>Ȫd 'xS+WAU >`p$]IқՅG 򍴭0v=Dل? \!':Xh=?ث R!6)DYEڵ{ _ǿ~' f#q՝#Ql©),r,%KK ѳu|DΔĩ׼P58²%P&F@N64,S[d R̗ƻF% 5͘>P;lCEGu Agt7W̭6üҕ餣iUM,+GSK{/׈ƨ+ERp5{YBkbvqQ\/|>z!fY{eq޻Q rxQN=AOţQj%@jng׶_W&/#'2{*|8r)F5b+ ,w'EtVh8n?^S .e \b$Өp恻u'Pj/],e0^K|߇{wgQ,knm*p"㗻bp{J4{(ñ}z<:X )({@dY@ (6`zο9{MyTNߵae¯;**.i8?thC ?r[qABљJfqW\lӸc)A)<4PӠ1F<롸H*I!DӺjE\;"TםOKWqW:)>tbnHmoNGj'e/,MUP ˬ1ju !Jy-x2?W"ȸTze%:d^أ 4L.Rn Pzُ,7OܣGqϠc_,=С^ï:I\l։~m_؏LY+ؕ\ɰR;95Ҳ45Ku[P/ i@}YLG4`$i''y39[K6J_$u('@ ]@t> QW=5%Ç\3vht~o^pZpd=ʓ,@}?n}SЁzD/mwc_jks"ݣ)QcPx)o.\7҆_GoKy<~`ζ$[f^wL'tF#w1Kl Ĭ~,B:ٴ68`NSW Q~Wt9T:&+[7mӢ~!QAVj0fِ!Zq3LQWHaA <'Ӡx #ʠ~Ѝ+h'@1I cluZ"_:yk403UӆŐ-RzvQ[%ޢzZEC8Hql*Y!Er:HJ]'=@HF`>og3pH K0|F6uM~c/MMY(0ť ,$/"(-b &pa9 Ja[xeˑW9tmpAϬ0uuVp?o}PDrY9{jFڊ9Gbw i\DH՛[_t]-3&qBЄiy~VW9*fS8X*ښqdZiiۦy=fG0`2wz(Fen<"a->&K6\m<Pǽ4*%lZ<:EB&u۶ZQ~ҩ8f=ȸЦQ'dU)JpooI}sGE:eQ̊]M1O䍔)}Jki1r\&u:/@(o~\'X&>.Vb/c}C*Pu.SbFT \ٕUދ%OÕU2r oJ D37!>mbeop9h>c ΑnF~TZf\n>wI񄗗I-Jݓ\J39Da 3/Pl=kaշYO+yIsJ KOa;]tZjzp9 NmY?;Z\1ٶ3 -^GI.qKO?!qqq}P;js? ~,7 R`u eJ-. j%u<۹kb\pW=wjȴ+P 8Hxf:G6&?"{4Ƹ3}HQ+>_O$0g+6/ꉵ껧vĬfb_+D̮v ৱ+BfL5Q%LEe#Z:gZϚsOb[g1-A VXy˲U}|<($ oMpmp-%J??IW*:6XrTRA2P|Ţ}IlxhKӔEbVd/7.pgmThq5s!rQsy|Bw&>Ère\3lWa؊vh꒕cZFXK !zŮԑl_W%8ӧni|/:=(SGzVsyCFoGYO)گDaR € n2t` A㯟lܨ|R>ϳ:[$EwL^35sjF!1vn}rIKK^\ "oYJ=ž+jEU*7:Ul8^yJA% % s6_q-H(^~y\.ʆ pN%oJ_.^n fLC̓ s_#ZwK\M.?UVyyʫ#[ѺOrCUd27uJ TESloI~͜y 4hi%**tf'ժ`K˝~ aUA =Q.ìOT`K;AG/5DL.DcsC`a0|?0y}t.#6-}K;ɋP tw,%![QC-9Rڽxy }B g*ÈPNIYf1G?!x\fPduxnh_Ҩwh4 ]jl}|6] /.YH 5D+Le12.#ճCa;0il˷{~cks`zi©>,j$D( O&p:ZqJ}[kd VƳqBfЂZ$u y ʨu)R83Ã㲂na9khjeӳ;-wSHs%{&{u{djţ21dL{`4WIyzqWp.vN }[E"4SA1W76ڈ##u& l| @^q0e :c ~NJGH6K4EkK6<l}d ^'_]oOF<<VW\ y2R= wbE(Vei끵ܙq߯tIIPNߣ`FܾgУH恅FiGudןڦjLHq.I9?@O/pgK@\ljƴU񪷍c'jh줞.tEۮOPe(̟C {gsJ"o'tbyvm~Eظw`<Q%tӁk34 (:D_qX܏V4٤vǜ#-u3&TFzv}xfi)G5lo7;J\}hVa~g9M5"+;[_,LYLڝM{"6B֜l[/\m5T gvpk0Pl>҅~kR^#Eu=kg eyJU &p)=#3Td'cDY%F~ 7Ӳ2(!jF\~oau)Y#X)$rG?!{i/jBw]w gW5 ɚl)ӏz5 &t:nCKs>|]A y\4H򖛯z8|PkVqV<Һ3˓^;lL i9G=9e'Su:By5S_ee$;s`r}"@j ՞@'&Tx 3?$٩dk981^OѼq0' Ih^y11^yQ Ieqr췼:ݍ˖뽢ΰd&Q]%%F iPV:.lv% ,Z l-CBFt ߰ʴehƙʰ.VL&{κh||hw9>a)F?Zi#U\mDMqO j*/L[``LmͥM)TutJAP]$٨=˭VT!!ʝ/o=r+b`EFEPj2^)Y=13PMZ fI L !0 :*B9tsCvyIZԗL;3g|`O 8+~U;,f QۿBrA3 h=c~dEsgm`V|Sg`=kLν(C{>ɝȕ8Ym9GjZ\ Il9ɐ @%kSP,!J3 `꾞;8--;(/~ gEkKճ@,aIgu|87v 5h`՜[ O{^Xezj\Ac 'S`d0YDH2e7ElcR:PB# 9Mݿ%q]֟QSdh,n].L^HCJG `J8[Brvrmz+x,[6".{nD@?IEV@NR.QR Z1R.VIw Țp/ԥTYIb;LDw$ni* g0|G1fpS-}cE|,ZKsb$;QcƘR_q\uj j7VIe]J{7#2Rg/ePhʑ[aå]0wqCpAolX{Zk.,mIr \^8P0Ct0#[Es Uhlܶ|?"HR"gf=gG:PI/U`1< -.~~$]pP (leg698CΠhhIcچ y iZOE8=?\ޥ[淼JyKԾ9}#iqu7dV,\o"9f!Sx'_X"S.EF$| W+VN9 wPcBw6)w7^ =.(Ja<.3?D c=ѵHlZyuQ}bY?5iÇmGN`J(@MS%\MSL ø(o>8|& |вrK_Ro|J]ըnSOyfxR'z ʛFOw:l{Jl.($hTl5/SꊬFF x[a-rȶa|~Iq&H FeG¤$JZl:K{6F{?HWU:RտZC9%@O*E·z՞)e & 1 >cb2{kG~F46d}P_T>u iCw?w◢<'f/&"'QWmLWL[|; Y/> `g`EQ}/WJ=܇u4/!"kǦlF,76 T^`@ur.2FXR.gA ݏi-ɤ9 ؂x$L.~s䚵']NfY뛊‘EQx:_n9 2xx`Nƴ0xE6zsȈ-3,YqLf /7@=0v(QZ&,ZrLQu S| qfY_UIs:s&/ 8Pg2OA!s'ogH J1lyƟ%f4>6C[f@V_?SzAzl=zbwLdΗ95 @Lw&DRu>L7zOhZ}Ge DuҥP s #3= qlёeH̢v  /rV۾ R-:0 wY&NmD_- LznO[x$9p>I6q/awm~ɔcQS&z[D4RmpoCTE /Vrm9.G3OSvQ`xg\~պQE?" `mGх1\N200k Qb{i5RJ~AuҀ$%u'.5sw=R')dk IXNʷ% K*Z X$і}0&)sBA+,ժ<🂸G;$F< KsYǡWSO*+qcyY%щw_U|B簷K}(D9,B2xi1;[Wlz;`Yb^ܷ7A=ymbv3NߋvAeEVKB[0Q*)cv)ѳ[] mz'$5$K0sWO?779'[@N崗۾xMĤ@EnZ/F RAeN@}(nI-%azq^tqjձf ^a?aPl:OQn7~396a?^˕s<`}bʅR}e'DX抃/ 5ە.mKcؗߎI7\"!&9;弨-,ήR8~q:gd_%ad;8]x61:Ezt*q?e8凷]GO攲x;wZtC =7Je@ۉkT&_@iC.vܧf-}  \kB׬sdcaDn}J?S2Bh=C/AbλV0&ۉ/ºNS8be$h_̞1XKB@KVaz@Tz2Q7&Ih76`8CShnE`!:@ y5rzO7 O#o;2hV=!wXQDjn(n'"FtJ+QnɷUpp>ҥ";_u6= Uep N$CT4F.p|;hl 1r:h=#iw|u3d&!X/QCI8v<ю$9~Hl U&$1+NcofSƵq. 5};܄W z~G"M)HM.Nva1!j-zG[JJgFNAϔt[/jr .|$Bh{8=KH2fbM ka]-|J v:\Rz6nͬ"RטQw-Ԧj1pa;FJbV҃j]9ſ7Hƀ'N~ﰼ1~7;~$$[5j}6R|8aa,jXmܚoo}Uӥ7,NF q T %TcݰK]RSѨbȭd0mP娍𢴭5\L\zZ ÜB3f.sī hpPm~gyE_d@-V ͛0{AǛl.=~aw}/:{sH|ɍ몸Mxh|ZT6h GRIl8-MQ@ jPk+<IS"ِ%JKt`]{rb|R}L i' 4Uu*\xpQ\3?S21za 3&Ua>g:qC.~vTPWTjR)#'51@€ lk6%Ji$NQ9$)e-+j Gx\tw]" ~ZvP,Uc&1,k2V:Ԍ;h puBwNn ;LB$TRfeC S1 m ,)_ (|-O6Hl|5^SNMmmp}'xC1E O [~}FTA>I,aksNjf b ך!4B Cͻ\2އ)wrPdS\_}iq6p'Qk0S9j3(!B0>z]#Ф4p bڸ\ʝuT.3C0GZ`"ƫk v2cŐ(m,q4chQ4[k_Lc" f::OYlX6 G'c+g x[nedr9>:# Ǒ1> ?h)(yekcBbϋ|nm!x+AǺ4Ysξȸh+n؎G}ݥƫY}~V>x?Nrl&Ωw,wŵ59& eK*wSg3hRZ}C\ը؇r[E~OFYh^v=iTH,(VnD58h!b\ӇN3AlYzh>1Mꮟ@`N63Dbjh ǗE}h/Yb(){,6}ijͻl 1~Yi[!xKMn~yzAYH=mo0b8,="j:{+04WYPǼs:JWQ,iv- i5 "P1F^ Ht~a6O gŗ)پj3h$nݤXa  :xzUIU`">aMΑ ct$ʴv3)A ipPXXM$c%f E8%,V0nsFeWƪ@ONOx>Ajb#Gy41-) gH pcW`pNla tna?T#:plg9JӢ&vdR3^m*/'1t%6Rl,32ѽeBy\O)N>jNnZԏf:5*–[%bpa]Ŭ<Fp 9{s+cT,<.+.c WM Mu{+ꔬ4kժ9Cxy,;Hs"0; .P7w.U0QG4 O/z>8dKO*2^mFJhm}25zJNСѱزN&cQMD"} yafz˙tqz_\`fOCF`mD'px!ha M9`|h(Zaғ"%U/N-]VB<\]ec`@tSE‹9_,bwoGE!MѵexNзbB =c0yqz] Tz #.߾7$!n?\LxQċMe1.q ݎ.}`c[fטPqpݬZͫ&GJn2-a!V$ezEgt Vnߡ@i]`̠cxLM. oIL0<'WI`q#P#6'IxԲe Rݥ&>=K{ⲿ)7ɒ.Dw[;SYemuzr_t>?.w`̪%@Jdw|p,o=D-y$ns[xCg մsK)BK0#m |P4(I% (kbhVdL]R. '{=4OE4o9 1"*ұ4/9ӭ*HwBkH,B?zxw'-!jSWc%w%;=St}bùR M*b.̕qY4(Vw mAZe&V ݭeQ8I%b!d$Rt֗EJsWjm ^ɱ_;ۥ÷rtyhpC7w̎5Cyx0@ˢ@(խ2tZk" `Y@?@_HR8qՠBS3.)!i j-;~Q)WȁC B)G'oi )<,ҼƙKQyj6_6ere9+X>GiBLQ,q@hS}&i3}SPo;VRl̴259S/X4P~>$n9uDG 卿}N:hoU٢%=`wa]w3rGޑv07oo0 XYf7Zgo+K㷲kAJ8fwQMS'9 ᑑ#-E_Q]ŐM/|eO֖!Y.z|d*ޫ!q9/w=k9/\-S^//ߜ#Q‹  :ў˴O̥(( qS -Dɞ"wRDp~2mQ;-@N.n8GXBd4-K!>*rMpR\ L]T7RNk][0ŨeaO.%+}o5ue[j%=5"ppr} g<3(sX+wuܐ)rOb-Ɋ%bxGGX (R[ :]MI N(żfHÒ&76̖ʐBu%9 NQz [왣OǺ!rZ0OD.p'Go8z" :Eđ+Jvʘp=45e,QYKڰ v_5 IFb!}mmm,N$Y J#`PW@ 5Sb rIѧdpo1Wdzy ؃Khbwˬa <'wL(T}tC0 ZM1"Κ^y羭`놼gר4I~Y~ i i7)%sN{ʳ#~G [~& uNXc}5G՘Du_L1l9ϳİLeoӎ< _M\~ iA^1G6da+eVXQ_էʊn`';o6# 3Fx;F w/SġTӦxEJ*P>18i8r'^ᔲ5Dž'XVEzؗI.Jvl>O2] : D @FHxK%|ːVc+y !7 w84 %=Ȫ4ng7=05. / :?v|:q$DWULP֕Y!hGt^']/$QzI-8+T:*GƆ*ހܧfrƪNx OsI:TH08k8ZSҢ43 0!k<>߬*]\L|A1 #^i=@M)Y@&7kO7$>Y%5Uc̥LQ-0z)R|ҔQC)1|Z/n{A ~9R w!Єp{Wm9 N#pT4ׄrݠT_#}38tHNr;mN´3+˾׏quLsiuZTH݄[w99-N}kG~.r+E<7-Z4_}R#%q*Hˁ 8돂9йҒ7mNk6X7_EDP8K& =uCu:sTfF})"*v߷2C'OG-V ''9ۘ ҧ>>?6nT (VTkOz@V\F~Jr>T۟N7rX**&b 6X@C;J2C,k֛I >ۥPp}qKsqzS&6y)=tUٗc!sP/G#J 5o;jpr#LpD)#s2xG)eQhn6q˝S@Gه0F49sr=tohsa$^_($PVPt2*MQr{vI/;ceί€ CRWFe*G`Sjzf3U#=$)iEO;Dbgӊ=YPgб!QK:y1R :1ÿb݆L.4UU"7]fX6"oV+G{ĄN6ѧ LBx -$h,TN,~e{1r[i_:Z>$CF y61S~椊bEQ4}MPE[vޕ*rN\qkK lԡiJZJo9ؼZMsR}&`"UFGu߫1ZݸfXUĕ"ŮگX4z}@+f eVO*T/I-DX嚿4\4GDS3ߑDY.|k%1WaT-z(-Ȃo_"JL,,]\wp+IBCTT7N~?6Ze&( w>N`,A) WHg϶J(~N߉wס&ڐ17T>Ybݣ]:еPBq+QX9a@㗄PF%vKţu 5})͍fW6ʩa#o֘zc$Tbg:UL"eiy7GxdFXy!Er˕w֡DBJ`NU|ˏX|l41~Q^dSw2:`B ycT 1gW", 5SALF(7~; /*(ܣpA̺=bk?mc݉QV9G׬B<%tvm+t־}P4q0Q[x11'/NXtԛ$ϔ,eAͨ38' ẈaE^i#Bq[]21dV&~fױq<]lh_(LHoX~Og%U|S]e !ݨY[ADE[z7eN":7x<†Y8H0+Ѥ.lq'63s ^U!/ ww`ȒY ydnKaz*_~P Xs( xPT|*tJT>Kx`uJ-gv~'`z *a}#e&{Щڻ`ʾ\"zϟ2]{QBuq@{Smia޵ǣS0CN0pA u.sYh\QmgXY ܭw"*ɵBlv@UiעKfh,A ;kBnSX}2 q/tlg9 Jdb5ZJ3wXًRky7͟`l¼xO7P5+ f{CZkҊi`,MÆ}~Wk2?{$8ht@HUΓC,]z-?M<eZ7d ?o旴@hsPj;dm%Q2^5r"Qx}߿8Y=H:]y+HĬ7P߽ mv^LUPOOf:z 3rGbخnH/|;ί dvgZ)Fp.Kܷ(Z>͆ߟO\;>+y beNCUJCݜY {޴,BƎ;Z9@[ݕU.nlqN@%ɜΦk+E7͕ɯֵ@ !3眗>[x%H;f-FtTJKp7u,7ܶ诪^y|29{:p:8a"]3:8/, (L)J\DC"-˅Õ8o*ZZm'+nO4; gx}l%΂K2љBj)h#Xъd`|&} ^/MQWDDA"TI&Nh"fx402.}b:  ?`WU2~\=˜YDwB!+i" o '5z;Cm(zF#`tEWp.?6{%uؐLnWf48ofo[<(Hz'H,Gvs=wGl*dbUl<6 V=+0y~dkp~:dW Gߤf1G<wq !-yhvA" g$V^_p̧D3IիV-)8NQuI'.x/TG,.xהh$〬lblX|C<,. xwQ]>"ͲApS6D!uX Qaf+}!CSIrYuZ@QΈӹtË# 8bUI]oֿӏ#iNKB!)!# qDk=x3/6Hhi;%C™iH5EabW?h{VK7t Ŷ;02UOb11sWi;kOK^vbr͡$m+:, p-% S$*++lU[n8> $ϛJjH$,@'ЦtScw$kC [;BAjH\KҶ@MҬkj~!2vvuIL\6#9H>h.B㡅fNdwKZ5ij2EAoG $ľ9 pǺ*iqXګu:[mW><7s,1AUWG $ɈI*pz<26H*@[IiZJ rǑ^CQ,ny$?v4{Mb†sTC>E B5b6ݍz;x.4faJuĀ&1XHp~:do2ʁ:XRiH?EJXcT+72H;<ӵ&Iv-Ҕ[eSXai)/Ug+bIN/5[װXhJC ]W3 ƿM-𞉫"G$:cz/1LZXKpn !2B|F-n5u1/zb%ZxQ겧Y>3Q= LKvIb~ vqӤc`e瑓2nb O~w%ܨTۺx\`d .7d `^nQ}wJivQiumYw dϙʗ&W5RΓœ V~8߯m@3"g22 ڴO$SƁj'Һ2Jާb薌-w#apF/$jxo>5$@0׭d\~۽]r>lm&~\N[ OS|g,^;9%Ss 8[:?M+x.-' ½,߀3+F,/ϳg5ͶMʞn:h~SCS{F+xى!G3`tV?O@)zXYн-qS#|L k> X0IYrk 5 v}樹aJ'%7>!M$B!' rWSp i_D]g2?|@[>'Uaٶ%8V?2 -YNh%ckgn&ƲPZ|nN~w ytK$gȘ|`y4L1eȺN"qH_-.Na1 .O-( C +K%4z < 3˺] 7Q( I0 uHΕG0.B,Ik XĽVmC[oqCi>5L{nߡtǫꗙ]ۺ S-FldD#'Bc9O4}.&daLtJ.Jys!mvd"sv@,O^ ZNMK> A4.Xմ?l:ЫDE2MccPv<[Ͽ :6/Z)f_\>]} ^ Yf IPxa0St&NhI}f2W[*RW*5Wq@yգ ݴ.A4anr/.JXD[L"TS'"˹:Vɿ60ZT-QAVyvaYs!o'h|>/<(Z;WZ'~R>u$ *GkNyFeF[567j?[\Gzɾ{[M hjQb<*-;),e2]4Kqi";]yPlk, Er/nߨ.p\ h(Kh,QEKz9r F5ujKsoK LP-n4PoW_ix5q~ױu+HB \Z5%FK^ ;VwY_y?^1Ns7>:$*Z. [`#wdҢ.a&D^Z7@鎘(tiM{vφ(TMwYr^1Sp| )-.2,IvxKxQ}7 ,уT]E!K8-?=!`6#N`6J<k6̣a*fT *:1c B&HȕwȷV+?ق4Qv O'yۤnyl)z*OQ2?T^@PJՋZǼSLA$P(=JAWMR߬%iw7 b|obgf* tKPj  @FA|eMo;65 i ϡ܎0è3RkQ_d ) ؠ_ZCԇ[= t@b-!\$Wu& V[?cTR$c /'سgieWbAռ153$ou< 5%qg^ӌ60lC|lۗos+zуKgEx䍜*u!.Vl-dTVLQzw1+C<[+ÖK#Uk`ЉpIdA7qG &6h>'B`zK(ŨJ{ѩQ\ƪJYzp$!7>ٯ6O{\>_]^cg4OKK(쀨Un|<Ҙ_UAshJ=>zdG&62sRTï7TQ$2s+ b?uLxЊK18¯ų{KPwCFvDѧ%l $okԸiE` ML5ǵ6=`),4m 0S3"5(^`!烤{jn:m4RgnK.p[TB\Uԣ2".'> kp#b}тg W_~|͓Ңz{Kf@E؄x4ѻ{ Y@ Cn)6>c#"!'W ށr,}PIeP4 *ߜ0%gAFsDJd>O\%$$n7,EmL\9P$M22"5HcUTZ7Dϝ*+q~yZ4Ҹj-J{_4gPDŚ4jQM(${֞eEn(y h0 -*d@ԌU]qd66KDIE-pJ=:'DS'_AE$όMlj a^Qms'n/p>phKp28 ϱw*9I83<Rj 'zUcψ ه /*|lo!Γ]yԆ4mB85`\l(,35<31E+0dE)a%6R[GH2rXEPb0X~O dxB9 }9ҝU1#JMu+?~£74*=f2uY[ i<o|)kUM\XxnLK69WT N# AЫO^#A.oXįh >L4x0dTU6q3Uwm P>%)st]`  J eFE8jyCIJC 7gN wWO.Aaz_et;Ѳ ݶ ]\Wv>? :UJ4 %w {o>)uێi R%RE@-rwѴY;(UC| g.wO5?"-CΏ2Fi5ַ#@phW`J`n[ qh4 &st}gV*p/t LD9Ԟ^gRntuGf [Ξ 6rlɼmBlL)#1c#ȫ!>ɨR Nbɴ6- ?槇_7kUS3@3l31DѤ~$`2VY#S_<zLp&R2>{`[̺&4IF;!߫1 bfc&)bHigs9Ye&ev/S|^(sJjUmTBiJ({_aK2d:( 4R}j@@Onjm *qb?Av&bj)>vFA =#*c[DkHn;(aYxߔ9mVV`dlZST° Jgq)(⾙J6>ikI :Z_:ZCEXmV,cZ+cSw;!t*Zv%,|x#?ku㠃):^ܵXO_I5>Wn26=y0\M3}HCC)Uu%sp)B?`҈$~aZ֧Jivԯ"iQ{sK`* 6Z礯X[)fDfYanvTh)H"|ri,5>6Qh{' 7;6WwV0'rٖIl_ԽEpu(7X񻞪wo?ٸ< c_M'n8|UXN,%/iW0ј;r6CVF>1d\.DLk٧[O*h}5n_4Sȑߣ[7 mh5TSC;{ 5ߎc'VVNt%`^P=]ŵI8rĹSԮaLoBT#Asvr+L:Ի~#wJDiY1VnT+`,MW]3xBa9 â䘮G48=Y,-u.wXsHak[G^V@lcYth"#PQXݑҐ7pz_d6 ,BП,eVDэ#:u3ōȞYH^w?`n<)kQ:a x9:ٵ*N뻧~Rotԏ7h9&c#'D=l iU]AK2?.g&zS#`IӮkœoiF{קOl~99(xw@9p{y~9$q͏`r*/]FxunHsQk q-bI8 5Y. Na|&gj)>fgTx^$s# a=׫PM\ ~5LjU\7]DKBnX1m-=}{("`b<<06p]U&sN|Vb8V+1aa3!:Y( ^&@KOO2gee[\asR@[Py(|U{"9jQb4=,/@Rѫ"6n4!®`4/ t3tW|:xt|Cse8fvǘBS8_ ghf[ *w$WlQ@S76drpt*OZx ̇^Y ^bɸHjɆnބЂڄs\r}I(fƤ;..#AqyAȆW̊J@~7ǿD7hhkVKj(26Y8S|}%eu5Y8}** {q"^֊&ؿn)bқ}F |gkkrW\|x:?CiR7Z9HF.7C @r>E dJ7Z7pW󆤜=$L:zbg/7,'6[7MrS) 9,n^לRƖz#IA+ˡ{{ a%b7YwC5<~Ke AƃOv`b>V ԈCyTIE((_^/<^6 -dbȦ^tQe!3 U1𥙝^B6QMuHgǜ p5S*r#,%tSѱ< #힡JwLdZZ@X:gXA*AlSSQ_ҪdqSNg5!3'9v23KΣaȟMk;f/{1Ρo| ]0}`RsJG2nA z=08ۄԏ y~\ J; 91nnNsL6G %Zk~y} e._MIh>& \ތr"xJF/FULWq0|9 1pQ#BtzR/gR-S9@MK@*P4r] ЃA[?p ` Rw¾8ER-[lXRm%%^Io$nq]О\WcZBô 1/$w1x8MXܔ(ڊ 7A|ʮc}Gd80oMgV FdD2Dk<ćz` ֣QN4ͥCÁ`2Хe:ʃwd\ޗy[DWA0U^u`t9+o*&JhD:%~y`BĆ $nNkT0d[8vM/>WD>c6`Ϳޖ0L F{שQpi@vvz\|+30|W{ ,T)Piw]icQ~>WĒuF i 0(Mʜ"6Gìyv~oyBD\4ݏKLKTچ>fN* w]n[7㛇.j+d鞮t#ԂHszSPJ_ćeumaFf QWAGL$,[hrڻ"A1@lyl IҩeZr.YR$j~tl:/Pᅍ6kZP@2|iٱMʥ:Zgjy=ô< zT?1xÎX {{+k _E(jێ/ۇz|auۙ+ׯy=:UpiQu4P dԏPqob1O\sKPj:ʲUSFY=)QZ;S3 k*4ݼ 5U}LTλڕCiCH[^wL@teuU\B}#8϶yԬtضg$f>A0wR L>7_3{F|!%x@{WXf!1T-l*01^Q >6ɼ]mlCcdcFq[(Xs&A9opM~ >*4B-w":fy:CS,'yA\Q^r%s7ԗ}:T^Z'z]+_L*f 9~OvQIg! o67J!E)WV Zßس/s চ ZsԾ' r׋ r"K-؝o jT3 _4Bu5`:5Ut kydadJ3 S9w0S6IDN1w@KjtfzsM X<9etaA>QKCC|~S=Wɧ%, F;SQ6W2wv&+!SRtT1JEfrKMpzV(B$S^-`W[Fm{u;:4'6 jvd:ɾ8@'aɼ4zQ@d'>-\Xݢ>kT4*Cov Uyq*(_F}Fg+DUN=^+w.&WD1,1DD*Z*] } zm/Ϫ  CKy;T1GAt]D~M~Y#ˆ&Q 18D>:ZKv ThiG|w6|i A+; ùEPǮB/]:\ݯ%N#C5+d +kEҧs8U B52Ō'Cyy` \&OT}=yD4*Zv] 2 j09tԉ;qxϢ H-;jȫ |mZT!2Betb!: N5B,5(ai٭^e%^VKZr`py'j(|47yeZz]FE!p:B+f#1;.W+BO0∶R>|(Z֙%ִJ kU{]d D|'N&1|;~ c`^R:1fOu76fQkt@:-DLbkpsT^,ӯ}h$v< `b_^8BSm>:wt B (Ρ;78\; Aevڅɫ 6%SrJé(lRCfWԥ-ygzehzcljn>E B ҝ\OU ٿkHڛ˱d4IW``*$T @a@M!"ui+X:r!zN&;dug7lyɮ}%yνt} dGɨEܱvStc9jtf$H1B3 aٚ!"1L;^oז0I(>~!~la+di2 pp\ 'chjd}*b+zqO긁\0 Ʋeh (_:l(화A\v tl圮-hӺq<D[=md. 50 N5>tIJ$ 725Bݱw$7awP&M2]`T-Vf朵I`A'vWzit )Vgu|?4dd+Fm_~l\6فPմX 2wO Ჿnu.NPf6SD 0g(=t8u N 5R1?:DSrIη jglYm][6zH}pTpemsShpyJVFg=0\k߉߶Ƴ@@/G `Y'9z/dzՂM"u)<d8 NQ`y_rA}j~YQ_A:mOG?0?J RM vmCW-0=/<K_B)yT5ja:퀬|Z͊/ǘAӏs1u0L7 `c1{c{ rR6|p\!tǂ7x$^d-NKK_)>&nWV;g b7'p* h lX9/fUYC? hH*ZpM Y6!1]= oh,*%oi%HֺӱUX>CG% qb?1% }gOb Iv>r$,awzs_HƼ${A;3*%@ T!E;m!Rn &A¡+~jo[Udvr SҫXӺAܚ2RswZpx\[(@k[o!RݧP}Nop.[Fby}4o?Pq.J$k1GlX65 R'Y"9WsȬ)))0XF~taP7Ω{S/uk}Kx1öFqH1syܫ෕67q RHBpڶsSP+z.k#|r%kꁵ}軶 O^y\ǵb^PY s<1^̦VnT?+gF( kqF3ZzMbG@"( {S3gA+T,F,_˃BƁh=?jz'@mVQ]FV͝UAN/iy̻0:R#TbjAHl>WnF5һhniֿY5 %k2VCvV4S.!/+옗BJ2p7T͔Z. M5[2 4|OMg$HjW9ͼl  {uYKx8itccKj1tB9fi8LJwɃ g_80)1p:šR;#ľjm #bdPmCIϲNOt M{ˤח"H }0t^d=o~ ZzKȲ߽`*9qi۔ o sĴ^y,/7-r:,9adO+L$jY ؘDO2wFoH|dxh2.ʠO*9X9ү~YGsyK@nͱW? [UGedEsoOxC&={7%!w'#`'HWD{zŠf(^4'+_>.u7I/f9<иuJdt"-au$;}i+d`-JP38NTïDY`~H%zxGCVncFc&#ث^gꚁ3P=hZ!6z ծȅѮ|/^-w:6򕮙P Ooln<7 giu,54fbeM~L29@.2x #Mfd0mc1.^^'70 [nT:O0= 9`σ[ .y,BJ ץ{(?=MmXq\)93"| MvU^W\"FI6#f f_8Grj^7n[tfQ{[sX'(]7mLI }  J<~OSpt'־n;etȝ1JIjĂ:X%'2pЎdBn~DR邎nݩjZDm&ʶ$0tp@n+gV}NMʒtH 5U~<-YsI ^ԢN"nT FI LIwmŋ B Upo~ى6IB})){IWI߅jp'xIt6=͹ʄ'z җKFm.m$Q>YGַ'ڭqQof\,i#'ZF3N?.AuC~ &(u\F0'K}82׎ \ycKƒȠyWs x2w3Grh 4H6?IhL/llg'X0fǏɀՉlaQ@:%W* e4?8e撫蹄զ cn:ܤd~58G.ivR]F/mO㬹Tw5MtS, ]kDgFR} )yR%pP - 8Pd*J VY_>phOLD[;Dф(>X^ıtA盄MJi ˜_\ZB0J2GcĺɁ0OJ  ,OS1X?wa( yb/Ո (n~WibVTJa~Ӥוذ)TNuXwtEg$%ڔA6P%^)wЈPrV~YHFvA!nK>V˶}(镩=_:%'Ic8w#V& 棒}Ne#%3A{eي2w(-]) #{ihy1lza2aY@iT3s (M5ծs:;?sVV@Т^޹DI~\?Fug&#ׄ 5[xSt*NDJPP %8I9 N˳f)Xrb3x.c#K ܳdIG*CLCfIlE0 Mdq\UuU.֞@Ӫ+}.夡":jTՋaRT1ft7h EUKEEh x?bl[hm@*Sx_̆q_6֪AQ ˷/3v-)U'jzqEn|Apo)fWQ4#,6_A/- . ;Z7/ Lt&[`%RΕ4 Oi7#ìiȬ߼ܱuB!x/}2ҭ=n |>u׽WU iDOc(ҵlq:{c\#io5£uϗԣ) ?JX9>x:Be+r#Ubw@ÖX\}5?>nL$:ۃ9 870D eΟOԙKA"cv:ҠvL"y ה$O9PZ)Τ*kYF("S[`F %(L)@+v XάSb'>=0{hR࿯({TUDӲ7*n_lOm"ac .ZxqJ8VER^\bCs9eU+YcbR39à V^OS<֍djv`yNdqjhO^wI G2Gj;,R2$Nn-F5R~vx Zf[ [C?6OtT")IWiV-Iw\(uQ0/&7HWҴnXɴd@L2ʢKG"눰dCgOÆ$V=;W^dԥW!gtj_Z.B,".ӖAB"wx7Mv(VgH?l 3atV^Ǚi薶)Y0O@4*wFLfCa^9 f _0Dic'ot_ Yj|5!'bŸ[NG!bGUD9TQAsq?ό4`xCdTxNԸۮ=OUwѠQU5:%s"2M܉s[fp;vqRudߖ؀ZϐǾ`pr]LMvKPS ZuC(ԓxic\^~dɼi-\C~&;A:ψjm#FnI6$'JXTտ { }6OHo,S%>Tm;A4]nMI,T3(emjC iMbC%B ;| JR$9k#mDJ-NʥI {|mΌd٥vl{Dvyy:`=>Z qІYM|N״⅖6Q v>eQoGZ$dJQ74WyFm~_5r?\ onF ZCI PYC:zO6tAHBsn= #~ g"d{|ֽ̣<1>"gEAq\Ǵe[hNW>*/2͆K6wyC\_RǸvL935kl -گeI{gp9AjyCKAqeIi2 I$HH)75f&`6fՌ.;y`+gTL9n&`1Julſ8S IrGgr~d!# /M%~37dU` _$XPw24ٽ6G}# 4 .T Ai3 Ց@ EX1#Q${K-TXjED4}styBrJDEK("b%Ͷyx걊EGh=>_/>W]Q]nk[zʬFob"ĬGcN=z:ZS ^nW' !Ϣ<lHD( emiKFt/H^QRSHM9IcFU`OdTa=Ø$li@ ͈,%<X3ջ$tRs1R A;k"B n!A" M2 FR-8|4+IpO <-?Z V]_<ckn@} nY8N\_u Ȥ,65ҞI0ag28h\#FeTljȥ9,ZȥG@M0«=ҰC-vufƋ6آl;^1+SP:.4p;A;cX`K~.pg80A;-"*L`M7 ۹#{cJh=,"9Ú q3`P$e6I ⨔,Ũf[*I7'^'o}0Ad8RY (&NwU7Q=:?{ -Yp jfr0(T$V7.>rE ÞWNY$˂QaƥVހ)NLEmחrxZ#u$vVA'kZLqUW[i9'=¿o9;Ľقoei>:Ae|f^҂b*|#n bcX%|*`Rᐒ'o$"o쭻HQ|71͝Wy4^;u嫯> mPX 06ǙYèQ ߷  פ.aAjĄT|r*y'f>lx{#rǹskAk~ZdIb] D$vqL_ĂTXpǐ?ŕ XQq%9S1n<;V .~=|p~E-QVjVs>4:ǡai9`>Ј2C1>\J#A 6Pu F A,B>h с®Ls{Ik`N;.eW풻H濭 be227`G7_~"n*.SQ$wr3^8>%1lE ŬqB3= yKN1)c^k/GƲQq p6.K`]7NzRo `'Hf|UlD雂DH +?lmvQ n5}\6.^f )[uHxɄBTN|ί8<퇭IIXF#,P/d*j?ȇF圯Z˷KP;H>[LY EͿ'=k纛Uae靫pfЖr 5D*;؏tY_ )lZ} `Yי==[O !Q 8j{-oJAȞ8OC(e7byi 7j3(]EVLW13DwH'}~`4w<ΑA1 B>?xSe;5{̼`QCaPßp"|%dsaF@{09=xRVcw SGRX*6)&h,/N/lFB~x-tܺ_+̘VD.1s ?, >ˢi`-㍭%1Hyrϯo,$7!tΊ7dODYZYUB]HWw[7 &z=ߒyTE$vT+th"-՟1H dt';M֒Nok %F3ƙkAm|Bz>x1E&ڰ0ʚJ}Jنc E"@Zab`P/ӎa&=Ltm`G-a_XVqmL5}z1?/9S{Og" _8a _,fE3育@#(ש:f(a뱬Qw,(A<=A"1kΣΰKZ]He -] (aDPJ;oa@ ^ݨ3~0v^,N3a k߼^hH {Cj41Is}d`C]66*$):Opwo BKvRX^R%Cc$#MR]u"^1yrYdcSE"M8Ⴐ8 70;/ypE~HipY(bn=%(ڎѶ&_:VN\ ə'}-ti^&:W:uLg9][p`u _~9O pTB #6~뤱]IGVz˯N(+6BϺUNo3OP]c0>k`QiW~⺇ Rf_闿VAǬË G1~}ˉfP.4̨A\p]w#ck,]̒>K!U7Mr2ͩ(e>OɫA.5wC9cBA=\mM* W+Ao( Jõy?x9wwEϊx[<6A' ~oET-kxiXiAùF|e">/%~>bV/Y#kG n9~# .v|k(g&˅Z}pՏd9?>"[DJfPwō*EYB nM$WSrF4V8fg!IG2 tIWVRg^Z0`h7>ɶaXS奨G n {dz,nVmKW$c䀰IaQ*v){ߣq '-3 tBqP#߄E&fpcS]D>lsګB>6հm0Z`71}?n-N7AT:CD5I|Mm~\CaXʬع2"ݵZ)"3gb\GjIp PEgz,qZBl&p5nl }*@,ş)Q;Lä0E(V%Q[]^FS"GL o?=.Bj$75/37/o3 ^pwϵTj($hb p,̍ZkTYcnNx.6|`ZHaLԭJsx`{ceOWܗƤ,0w8i)$R>/nWKGFbVg)$! dakM8&ѕ& $l#pr%%jy*EghS"eSt^&gk{Hs] {ϒM<$ܜLγ"'@>2_<×4fQEvLIuHLowʦ] > T&su {7 Tym1]zjHmgࠞ>lqԉc (qFwyS *d}Vsb$ʑAF; 2 f 1M3SM *RȏF^, [4b]dB΀[s[MX"mfQt-OUGmndXЩLh2h՗ D n9LrCNXjsB *x `?fӤ}YzҕOc-.*džA&Z` *BS"$&#(8rnSf{Ig֜WAT/[0\R)%5{%̽{಺U(ϠA#>ۚ/RJb.-%sJDפX#*J 'YK;3/Eӏk8(ǸYy#?+iKˠz!30ZxJ-~WM ,p,%IпK.l/]sfx#xe㮐_Wղ TZKsφqh@]R++&eZrV˷`pw KW2.)^="11qamT^KFͷϺVz$#~SL}),Ĵ^r+>* A a%_i[ܷx0Aa@-VoUV`=^|ìGvqv~Wl<jS' <͔?#~di_}AJ<3]\);.QGxN9ZbRQ׍^^V1a/, b{B'~m_N]Q1 +\B/RZ ?1/GDIwڳN)3̎xڋ"`9G憑W$Z9҅?Xqpud:Z\W: 21"rIJ]bxMOk[Oh߳0g5Šv*@f|zm(M%yiyhYcO1AfeπD: p38;iy^rn'=]F,=ZW-M;sKT(uUa NK{8 XG3"c1ń2 c#\?CUޱ[V*'(B6_;C4݈ϬTJf}qv+Eo|a ${M|@&Uml:nn7J /In3;o_H_PZF) "LziZ]THA'~izch&P]].3(fo|mFdr=jcJޮᄘTiAp̉|OKl}}ρS}VG{8wp*c7sQgDPd}Ig=),E'*_K)<t Vګuj[y)WTgjg.l(V@ ,a'vx}X+'ƴv[M</vh`5mW? Y{?c„|cDd 1V8>+ ,UR lih-ZGlڠfݡ*qIWh@jZ)-CqP\0^Y.9!z$ҘZկƓ"{9{YLKze}Xܲ VAԌZrӚTUd΄Px+P`Me@K]}f{$&  70$j;E+=."6Xi_%uFk2+)s^!s5dx-ȵhcʖ zk!fj}X; Dga؟c26y5ѻ$qM"fpIT]Y A(QpJ"*$H?l%d$Vnd|o9EMXA1< -ʵOYpmhNIq1&SWaono[?Ԅg[TYN4/|kt !FӳBX_oYtʧ KD|Z}yC37UP+UH`ݧ&7 JZd.u`ST˾G''1<{?P].-B 3VeB,X ^J|iYv ;%4[0+k 59g`D[obq< ڮ"czOyEGap.2:aCf+@d=J&Ar7l2m?z#h7QK ߞ!ԤPfEANu4rCy-i|x9JV(|mZu8](}_D9) t,&|tއ}6'yȡAX療s);ծƏ' IRT2bOjsԩ }?8/:^zf}[\4Z04T>2j"? ̱AKX u~Rs䘍@ƌ<#Br6A޼iгfD8_$ݣ+oy;Qke lC3XU1yiH,syˇsyy/0O۔Y^G"LOb⼵\ChD-/OeC0[O*?oQqS}@! "g3G}F(X ݏVa:o* 4۩,;75FX#bJiG(Z&+b 1rخ%u8&}4YL!C272 k&jfE3w%P!xlq:e_ԉr9M¸ R=,.^Rx, Iŭ@՜aSl/|2!};f7- +#ĐMx#~ݐP骕;37PA!TҊoz-%Ȕ3 w8NoXܑ y.s*eNϲ^t?P@IK@- zG%[|R]\+f.ҽn34@ˊDi=DJ1 CԦ߱s=ᠮ*qqߋA70@۳MNu |>G%%9Gu_K@#/q,t cV|ŇR6wHkDŬ3:{qBH54!4OF%dsdAfm -ʁø41*.}88ٟz zG^&Ϗ t0$ s/2aE6#$H(&}|]v5~]ʆh.-ڢ0c{) ThdJ#T W5ŀB}D1m, ZPi h7*_*65Ak2"Ai"J5Xy`O&,V678Fj7h ~w岃3!jpM5QmcM+t9S"e<| 9tjhdCGV"%o_sЊ(bUV$S|MYh8$X.*Q%e0DQѺ -LP&_Un.ic^W̒w 6mg.\m&b\lno@t+)ET37e֮fb{^6=6%hOx$?+ 7K>|" o3F7) h#dC"MNM V]7/4ȹ5Oc_ٝ/<@4THBCIeO~rS>|D"׆rŸ`kiwjH俍2Tfc j*oY 74~h;Eζa/d=w (ǭ#94A:}f#ퟦ%zI"/ِfIp= ٍLQ:=41$x-vFm]qDT—8f)8u9hl569Rqz @~{56(:b +7H]`-5! .Yf׀|D> &%>91d.O ` }AsuE ]ڰH` SD.n/W=!P ܧ[}t ͍3$0s=a->y˻)Ngs!`LX62Ae)"]/rl e1[Ç=@v=q ^k D1ƾfgL!mf!]*F(MHkjv˴Đ{a^m#b8-j1IuHy_A[&q Y@:@|k^Bܳf)Jn1ou(}d"IkժYs =P8Mէxd}gz¡1 1:)c+͐L*߶dHNT]Rճ?V /W^_>zaw9+= 33uP>WU:_m ƟZLFrNU(XɱoLc7Rwݳ 'zek$wӅ3mx|`ɒv8 ƼEΎGZ'rS qq'21"P08E\ZA;~Mmա-^8d5 m'N7 @ Ii1+wu"䄟jmB&@e&a5,2o[d,0fY| ٜo3pR23{nTVfl)ɷr:/ #t${w\/ ]Hw :7ʿ Ov)kBf{ٳ'3q+e;}VfWfyMB=~c]PD}TSRs8?`L}݌#'WwE G͆6".g۞aDYY;Dlf[IksS ^08;e~-=&0Wz9f5o^K(g$Jǚ%`e<ǥjzmEkԲ`x}eX F:uh8f*x( R \s[w2XI&+|Yr  5&Q2k:5ShK8I/`lv6MlC$Hu5hl|wwW zXKFH$ XGEMjT>ysw=@`}d:Ϝ:9S]ZbY e5#%$ȏtZt&eNR@F pt9̦Ki r0窷%"^_;Ag1(gVd/G>x d.hpC .Ǽ3|Ŏƿecsz;%w^<\-0 (z1_(.d aR"yhGd8 &)m.*-wD?;hm`W0aSXR%cSAXS9u]S{X9K&Y@(Ο(楧ёMUx2 v{F{.:/zg(բ:'?S1?H~? C)qrmno9t]%OmJj}0ˉNS8@77/ k;!NnG;WS/*^lwWAOl5} (5 pa3ZiBq+C!2aϸiۖ\g6%Nc| }rd%ktѓ>j [˴[o ">VU Ahjᬶv# 9 6p]CKCgWjO,E#SK( $DvCN<}D)E-fkjugo46x5b$_}$1wE^9 +7 )LRaQ9aE:<Z,\m2jLi]LmcXɎE*2KR2H/|4tmo73eF[eT,JWZ{ p/M1fuvyGһr.#,kte%&0Gн Wm; .d`L=-㬞u޶E|P{_x䕄eO2Ym54~ZF tgLǎUiJ Q\_QO z W~yk'Gh2t񤙂5IW}'mbR\4ŝC@ &4BWh2-RC{XvuƩ[o.Ont_ձy$x0㍅fR*~];pJBAAB=> b`( ^ztC%ƀ3Ƣ6mTL|h 4j%9-V%#"V7ݪVMY_ عIfR^Q;M ROOð/`LT4!1c6 Z&:rUKJlZȣ"h[ wY:\l]kj?tv3(|TI Ss\8IA8D ing55nͰ@eopȗI\g_Xe!Q.7~+IgΤl4 c|\%:AW%i#@XjTM^ |IOn w\H#ܭŢ($~$-k잛R!:bNjz`$EzXVI"4/f0zjY2((҅>[lI7w9IMM_c{+],Nu-/ke*=k fuZx_VI#)?I D]HX>WY;+_x˼PM̀8@t4UkH:\#*Rq1jG8Z\4x`(N|9ٵkYAtj;8z1ti;ZX8!!0[Xmo;tď"wp(!ԲS6yDY,w ެ譖 G8I7: BzXV=c)}l,=TD۫, Hhp[6 m/Yx/2R2DqqEb6Qvw@ł2?ߒ(/xۢQ.0r䟸S+fDcPDr@RRd^wgHڏ! x V 9Z;Xy:1@l =gS1Q@qFvJ=!fj{syS<B6Us#a lN@ 2eŕDvɁ. 2LG1d_xZX|0m.#$fBhcF))L򤉻rUޔR\YCPd4ʱ6H*u: %1k~>eyo܋ =r M# -||.cg5.?a Gk!M֨ MzMl_Ֆ;\t(3i6 =?dm5G@ !;g '7&J iY/u x_p]㪺q{KnTv m.:D@O^ffNJCA˪Mn 8GA䡓[nD료 ԤjጽhRa'^aZbYK]nj$$g#GYgNV+Jy'QB'S@12-4@MQJ&cv498v;m{]`'فU%wߪ8SAΖC'V%w>T[K`kQle~ 4iR堮:-'Xm8V(RȒL\LAup3yyt-M2.d4W'J Bgx%%К?qZʭZ}RW&LZ[CpkL ׮@j';F &.`RTe !*r46' ~SC:AՏgCӿ[ѩ!^2tU))fT(K!+)Q?B+]u޴EE|_ɷ݋ 7`ggK@nbC,5 Q,"q9s$?Lk V3|Tj¹`}Պŗ|[ē˥P?r3@b8z-吖@_][+E&qzLAgc~+˧KRh_Cv!bdv9εqW$e5I]EҞ/[iqo%?YnMw?FsQП Z[,-J,_Û Y`l_#%:FrXO_sS}I䥂l}gr& IͥrJ+RI]]^]e N4w̟ADP{"]Qp#*CPf`C0ͣx:ApC!jꅳ=wI'PMEz:8׭5L'=~^G9 I"KnxHl!,߼&x?/]ƭ,6;I:wi3Y9'5!P%Xx~ߺf?} mzM"&ߔ&WMVZ'@I 7)>E.| D @ss]Ϧ[% R׼ IMMRɸXK@{~~ߧct5/_hBIq!RuDYٟ͝}w}+-)3I): }ysG5ߝCLң˽<)Pʹw, $mӃ[QSep̜ƒ=_7s:0\}}QLvaO ވ#|LFV $Oڽ#zyf{MC{;Flwig:!e[ iFӁmWr͌tЂn"V"A&HG5ӚGeo/ 앁^oWeoZtG äcR|h,*¼|0g|5'ҨEiBScO"[q0g])>"fN|tg'L_TKuat5NcRM[qN8V$<M<(:|$U/MDHl6 {u^S*^Y8a'TKme$Aݝg~Fl}i^WWc6q-3t>n߫tը]ek IqzH4TGxsyp1ń_D`a QSж8#T aʎ*RX(aSWy/8@v'Oްq-hEAa/E8~!f]pŏt.\==DU@geO@2'z4!B }=CX>&zhtȰJ5aҫ0'K t:1s|4gL>Fn KM?gZ:YgDhs\eߣ!ȏ{XC&{ ]xbskLMJdgGʎ[Ko R<-hpATJ(^aJ,V^o~\pyʧtՂ#E9߮wq2qR(z ٷuw_'zF=H 7F |\YݧE_]Ზ?j*EC=@F|M[94ݰJ/ˆСڅ&+-w x3.ekJcli]:XfkUllf!4$Fܻ8h}cȎ/KgUtjcVH=jSgpoMKy} 3iqA\S`f  SKؿLVU~$sj{eehY*}8 \7VNZ 3beux!B78<CWw#<6]@%;pCĽgX)d}toE\R o![OldSi9a;O6Rbns9/1!O022Nkup3U5Qc(ӼhΗ_v%ٝ:\8H;^Yl? #7Bp'-caoJc"=(܋Hony^/^[9(= ip˴A?Ze@Ļ)ĪC! :h} O+ T~.a~&@n124 lk@&JLWޙI% <jD'|# йy+ ,:VC"wZy'f[M>IBs0Ux3|u2tF998Է0=R,Т0I!o0>cT &eʮ0w1֬):wb5WEls`$j +E:ɩÍGr9P_ٞiXCNdjFQkSN^(L8Otp 6s,K4bN2>>yҎVi)fcVL{{t, [MY' ͅ Y+c_ģ8¶`,C%CEzx (PGHKS$eI1ȿdzPcJo :ldHw6?;?̐`mNM_|>8 nV!bf0o̲tbKޓE5QY;?$Ľu\7ۣ/'[FI'v0W9Ū;ȿNj$='r0wsB:lg̖Ih2ug+/$!5 Tءn2iQz[~F$l5@U[bsz3<~:I7Xyjs]d;@bS4SA0+@MdL)ѣB&u*ip ,m1m}WM]J ݝ< 3\]: *!dS5PUŜ~Ĺ|I}`s(A9$IaYQf+Na"B['y:T'kHǼ|GX_:j-X׫fj2&22ƶđr'th9P'Qs<vkww''.z}%4; nzft FfXdvK=zJnca/:i"_Tb\LJ>:8=NǦ%F_ʼwycZF8evZH!w8VݒoWdvbE; r֋ ^ gp(<'7lRꂝ/oA= |{V(9E}xl!h8\["C m y;ܦXkwl]Q*ثQ``m>Ϝȸ1*iO F_DBһ q#.]fj#&~j8ʋ: qWSGzrd.xU(?v)ڵ`\ ùIzXXp k!L[ @ UjYy-Vgڮ!愬 h5ǥ--U(*_vv U@ ~_ (rlx!l )|XCጙm d궅K\gd坬Pf; :0P=W~IئWT dW*xЏ> 4s,֏!W'f=Nxvd~s,1XF@+]#rBpd*Jս婈5XC.s3ŧCr԰أU!D*zpőGZAx3!Ūz&f&M{^02._ݽ5+ AS1KGX4qϗ>d*_h.yr60Yq ֛ |Tce[އI2 ?_XqDCj>='{CVuN#BUN|#7t;IwprcC\c2rPDF 1mI~xaz9Yp[t`cfRL"uԍx`|@YcHw-FI$IJ 85cmtc*3wg;AశM>`/6X@`X #6R b'X=;K5D|g}C:pU0 )\@n?aRKZ̏0nflyg2϶zu@`&mu7WOp֝pNO"S81D8:cj0&QJ,nxʢvQsRt f%Rm~TrYvW2)t_1r?:88s aI㞨ܻ2j"92|Kj̐g$J^rA~j&̘t_2HJa*FB-[]>C読đ0$r=xb睉\r Œv _լ Pq+I+"h9WHl;y9p3CQTw,nBg6ri6hUzYfA;($cP{{zGVk\+lqd9ICq~]Z΋}nc[x|gKaվARK+dzB$whògʿyq|Kq?u43,:#'6iTK(UcP>=QXoKu:y Zx /onqMMp ъ KVr%;w!W!4[m֫1N%;,R:$-U{9f(G>ɲqVH91P֘$\ MؔʄK"<{ ঙFiV0i2IהMBs?D\1_rտ+#r1}aj]8pU&6ANֵKSA׈nփwxΉw3[ ỪP_o-?-N;O(~Otz\#=|`}awbu8PN.ڙ6uՋ'+ q V4yfr^k)hzמKE4ƒ+ۥou2L{*"BoJD1v؋Ufi4ŋ΍`wIJ;D(o qP 1}xvWi5VjS>Y`L;m& %BՌWPQ8V CzRmO:w֣)P0D e^.mtWZoJUF\O_ZυH)(rjmg# pGzs^XGܟVТKߤ]ጘkkEߤ(QS!hqzRzL}}W>j+=A :yB2%Lt7"sY(ps.T\<4t%JXπD#6BK?<$Զ%34#JiSwJv$ 'pVN ^gj%_/ZNætDo|47-FlX?B4&R=]N>'Otv˅_Be%eZtOZ IJl(2j$*Xסd(nugX&tBkV6 ƅgb+sEgY;f4u4kk+(Y0BfГJ$BPS%)+Ң~̰㬣乮DQv?Dz)c&bN]hmw3ί>$=JoBXeR# .dՠ!r}cʚ/ 2pCjml@TX+1$xW- y9tzeX>}Bg`lvJb>V)ά/9db_a_/ı4~p=r7[?G@pC9]1kcR"{p܂=( hXlu>ܮ9 Rc#6k؎݂Ev:(Q$HA(@F*Xˈf*'\ݻE}<>Υq:Sj2KOn͊.IScO5͐>Pa(. 1Xt]sMftQ1S|'pUiyk,Rڿ劲jQ(J1N#l9Rn *4`uأu( PrajxP/IӰt(3: p#"9ؾx1W/->,qpf'Э2JI0^!Zp(6Gjwr>2;=a¶˖Ezҳ)ڶNܐՂ_e^@T%; WH4I/5Z7`j,h pхBn1}c/'ia4A¬|@{@LB R>FdW1p_ (9;.% qln/~g_SX@M!?nkj6g ]W?I,m+i[yEV)o/@ejqOIڮڣZ:ճt-H^wSGf-k I 2bDFN˽nK*hݖBx2p H6[Xs  17 Or=*A4V2a;qӈTQ?$1dWW?9kGQ0dV@I)d嗶[eCmpVifSt1LGu\Ttب6ڃ85&glOf"a8턡30NTˡ"= dfј^[Y&uKQf&8"$#J1҅n N>1fb0ϐ-^!@G]@uۖQ}Gu_Yr;&rhbɏ,OâyJ A|7 tiSxV:m3|@,{ae,;3R K:x|n1=R=S|kriDFc?}nɧb%/ W̵5lt"f7\e=1dhL*Pb1'>,;:y*sթWlI#%HYp;PwgۋD"h|:Df8Wqƛ$RGzG41.HK,a}x0:[z[o+`9v<J^Ag:!To'G I^WRZPZZVq> 3z-o0)أ`54]wQ*!MUnHD`R(}c:DB~X ETG֑ vxf"jKD+8܊JmLK^  ކ)V虧 uTǝ̎/+v }^.물U,>3ԘØN}Ǐ+8t]wv@˶d2vv|յRI)vK?{H:~sbTͧ%x>(eMv9&ɛDb0/:?I`wȹmpYQrHYR:DN&Xn/H%ҷn|A2v{wPh^&e!b8J?.H/Lj'%dzO"#qMW)$4[YB9\7 HK)-ሠ##Jm9_{+cp;H2f+eUhCTLrষ/T]aT 7켟["Ѝ)6G,q3ObEw+ Zh/{M:l%b>0}4t:¦\[1X+7;/Hȓ4duP5' KYfPj8΍icTbA1ƽ =l۷1KڻFvs=g HE BTm+m` lO#X>qYGln{ #R+R'UdәTg`@X?a}_3螖N"xM'9./teܾ f껤a% Zo;|kILGO,&IY2pPgLFe 3*eqzM:;Za10}HYz'=1_7?p =R"j0/{Yy#wsJ<>{{y즐럜C=K ntcdz~ +sGgq@^g Aɬ0#nqYŏ |Dڭu/AVQ[A5o*#ɕDEv ER&s.U.;`^ޅҒi Ҥ늍6߱iؼk]b]pR i7Nj^5 2[q:< }A4T2P&Bج 7؟>?vNٗppCct V&2:z ʲ*.>M~pZ:?UK^=Y^R&(#,h-?~<6T&e1T3Q6g叀 =XtP`c􊳅T5#M#?ضaكcLbґC߉T/+3Cb̢{?1 1x"{}}ŦЩ\c 2ZG~]8NA3-V:+|lѸY&"MMTm_әQT 4/30Llu)z ]^=/zy }ElR1T8z4r3KWɣo@.aՎ@;q%Nr/\݊QJvrʹ(Yj1W~O ݲ/ (jOK2~|c&{Xy'X^iR&> wȘ֌y8j%K9`Ib/3rUƽsޓR\5~ʪ5;eBM*!tŞ7,k/NlseZ\MeAAOyYæ~,Fu&fՉ%ũΖL*3'EP Ni7GTʕ11J*)?zJΓ`WVAѴ:7@ƣH5QBYp t,'K!ʷtGi7-6hNb>A=7bogڍ%s]57KS $No wɶ>:x&d }J) l,X"azXP#ozDS+znMAtt ;^!N7%ojʇ&N7@Y/>UZk"9y<&IڜQ sXl9=;mA%%<<^dAa oo/ꠛF[=(,g0qc!뾈0ogU ǕE(SbR_#ey)/\4cIk=Ӛs_.1 #YY}EOL[ٖe9!v?BPcd6͘SďX[fF1hX׷*@;,^KQ\H-&.&?1@8Y4#xC<#,!}h@'Dڻ Y 9Ƌ{ zMJ45 %y֑AZa3D$,v] O1SCu7_EF bwť S%v(M|VZH]ytIJr>QXF.o)ӌqՏ߮n#[&@P;{N>|;v Wtʍ'wHEoˆȦ/Gͨ7p FܣM"7֠th3L[8nl(a2Z?ú8*1x8{*1pb"Ramؚn&m`K,מ~rFQX S>FSu.eL`!G*܉?(hIѝ^9FJmJU7E7QC|.%ȃCCj:GMV w₢Mx'Y,!bW1Qf3/TN}!GJR.M")D)ai3FgN`2E퀞7¥U!~*O4߱{`f6J~69M6#iqK@k}A   N&6jj6*0ϣO& ~Zc8.D',L9v2sDD :YY 1{Gcul]ͥ5zLwohUkU$_}%NJ:IAܷ_ubB .7B QEHcr@e-Ϸ#ׇ-2F\q4e͋E^6LXɯyK%rOE͚pL}!%h@ 7!M5Vq+ɶӃ6o%q3&!>0Uӏ >+@eD<^:9X<Z5knpJI0wsOx7G6x{v;?YAJ1D1EXpIgǵfZ05gy?1: 3vJ,FE(^Ab^vTcsa2JрJ`m_)w.O^kI>/:xpܷ>GꞼ\$%zcHץ0Κ6vF t'#v~'af5ZQ3@0QA{3u\ClĪNs'1$:ioU5w>n1ezb ϰUK?xr,W_8TBxil(2vTz9?&Le9lMH*-F<˅&$ _?ƿ(mpCgcuֽC$:ְu("1G:m2)ofaSH՚8q83 UNR^*j `dBIN,;00H ]x:ۍ7f>B$1291MQB紐FN+&zcn#/N);|oS&f̣GM8J M Β `d@*5ќb$?5rFn6 16 #>bϐ*τYj8k/=,,#mQgNp:dU | dY~ʛVEKr?jǔ耭^Tdx,I̽h$eۺ.M @ux7F+Θ7 7IQȢA&Y\\vHXHRu}`lKY$O+ WuqVQ(O˒VcH'cQ!|8MDgPh%x'- 9w͓hi={Hކ6ܞ<3XhI:pN=q9½`"Ǘ@xvGC*'$~ }ӏ?ͯUyd1\;\Q%=P+uW!(*Qpw=. Y6RsYZKRf`L4 f(}dz>cH7G\R ë4CW+ːO#9N-!g|6j,q#ߢ96Jv뭡DĝQǻY 12D;D彿pw*#8Gȸh)Y]Mlmo5 =I |$53 ڠa+gx!},7>dS8kt8e<$zlP%{tlBFB# u$="+ .K R66U7@4+GEILTYl(-Rwz% Ӟĺsmu4ATū.Tsa ?C?Qm40@脬zB0%{Btو]v=`Px]sڬ cQbI@K)C/7=Px%ݤާYoK{SPR{<%0+-1?Ҷɛ(brq3r 0qb-iw裗*;"^5Օ:zrbP*BWR 5$_5FKAy̽iPo`nFq"8j%pMFG74m7Q`| 41|1o$e*g+%3u iD /IO'h´J9Ēpa8BT/-&GWt(9oAyNEo'ARJqLu.~q"^x2q>2ߤpdx~jvUHm.rI*sN4:{ hi?]c=RKz$$Z)P=;2p_m(Fծz=ef˨A\4R_v~pJ WL&_rZo쑚i4 ZAGbzEcÇ%C'AEBj=nTh>jxSkvXɀr5 gEvih (JzÉ?4{TYpB3ENV*a ņfI!O$Ve{(i_V%ۘ/61qUǴ*1Ϻkuc tr:vǝzy?瑳Qhڈ7Q@2wG)MG2uDV9Su6D7GP weXI@>;IaVIaڝcuHĈ kz_xd9Bo3޳OAxz35_ La_w͈BaeՓn|b] EEre;@'J7:~9py iB"b2 # /~D3B$*IB{2u'viAH)ޠy38tDu sR@: "P,oo!4OY3wcy?zn3z.0̪(^b:0'}x;Ls f{Hf!YVCoAȝ0>hxH ^U\tN 9laP!"HBz12(վaaIQHX1byUėt˖doh:?{Ø3e˵ՠWRZEuDJQpsm0۲NCSwB.pdn%}Ή1'{ }Um8>9Gk{m/|o=^tD%A||#{,5t&P(l=֌ hozV:%w19g8X} ȋL B])9ӿXĸY:#C5{4J[]mLT|Q 4ZRE.qQ(N E0JvzKZx96 >osnhs5#_[v?!7T8\߰t<ړMk y7b^ ξaV-B ĠnCS(2a ؄R}؟p3%{5#Kݟg3kTf?xC̥a'rKyi@%-MSѠ!T6:?2s'(5H[MYi}Ss9CkL5`ĉKu\UW4ˍ#+5eE]W8бݨ飒&,tb"ZLD_~TqvoôrF"_rNqlu4zL[@0(;#+ak]g/dvMgHzWow'R3<OrF,0kLD!%:fq,K:i2ea/֫| g=<^h_ :po\.*@@LJk¸y Hǒ4ap@6{I"6>)j=y Vt  c8G dLooXBYsЃ:Fk+rISܻy#)UPOYg "Cm-oL"= 'f`In4٬Vm˿}$Rē.Ua- 33>ۢU D.hJ-cOH2 JB@,%i-e}z̑owׄ3 I;Uk=gg| xY* l^Ted!@Sl [ϖD͞zFR'uUm kz ː3y|97 msjAwnQ׉nQ*q2Ǵzk\Z)_фX}z!,8: W&` E2r8hnΚYۂ_ܼ5W~_W-J'ctAKbe5sOJJ..L'Lh0‚9vpŒ20Ƞf& nUp.ƚmx&Ĩ(m%͎j[8Ļqg}nkW@O__\W^~(̧fDL @MJIM oYp~vl81Qt_\Ӑ†-mD:ϴDɰ3F f n`\ye9!!6<4<z)b+ނAw< bDR.DfIyrskKY1 L9/8SUczÖ1ʢRoFjG`7-'J]ik%?-H=_QGpf*ʯ\|NPhbm{,"d(@?BM(6y9EcM]y-$#~a1y /)@Q\ :'v0!\b ?ҮFVCޖ4V&.}Z*&-8Ŗ܋w Tr*lTib 7PV>w|&QJj׀>-?(Ԟ ռg^<Tf ΣHu9i2r${vVWR]ݦd-134'1I|$dIoiWމx}8sfj',|Ate.M lUǣڼyۢɎbyw 63҇U wQ{dKQ)h;[^X,{ֻzSuڑ3[CWgۗbV] +9/Om—8}1[v=jP ^99W]9|>ҢC;'4 P=ݔOb9H  I42g 2"amf6C@ jC/T W8LU$o[9 tя1 6H% L4[=<,:3urd֙ҔI"i8]6FGNX͝b(cpvLTςxj@9N*A,%3\M:q'w܄(煎-n^-i| i2Q=n pq2t3+TXlѰ6Rqr}G GmfmoIpX*X&(\akht\^8"U9Ȅ^ h8bl0K)fcSjy#2㐵W\|}lk7h |!Jog74yS )$T\Q$u1]dn| uEY ȀoJLIIn#!o;&: tbUe2+1EOV+PVSFy)  gq;"gĒqJ4ONC(һ CArKvdytV$Q{壐  , SlGC/֙Gu^&6a6oF pslT(tLQ[,$1x&J$uMT|>PHEϗ*VDj)8qd 'ӭ/wi ^kTԖ Խ+XMfT6S]ZAfuېym)ۗcJ8uj=ub8J kmo*]yb9*j"Mn!{@+yAa% RIYdyK+P JL`Dx"{o{;XDLq2PHZ̊0LzR?by{TJkYIVC!,?X}4]0, oNIKH#@[j;WX)uS)YLt8tn~'::nZr/ћi.þe28VW(`yCxpPkv'I Fnn5JmO6/rK"f:sG#f!o?2O^QS<Y^&[[͂4gCsQ?o<}K֋E3=c, *M@( HߪzRV>j%7Ő>z[muRY]?:b t!]+[FCDQuYۏQe>MwI{:;U@tj(y1_S.tO5UΆS.mbrsxBwyt~Ɠf2Pk=հzmܚNh;$]Ԃ"MUdg|`$ֱBzu5ag?tM}#9=:\fS)̓t C>?2 W[d,NPG\w"NeHmOұ+RǺ5Kef"7h!vͺJ E+}5iuy>&XiO| 5q@]=BOHXT%׾hfkWY-2,jJY5:Ƞ6 ᷠO;l;}!Ac#69bp>Y.Fz+@~D2ƺG*XLm^>;ʇO*n;L4k5]輠C9sr%]b͏C皰@iq#KbZ&EݭfFf2r a뜉Sjn䥳vz@gm5%E_ˍ4SO\%{|waB?1/ipu>ޒf -D.`ߢΝJeՀes!!OVs}Us^̖9J[,iCjBjGKLV?TDDFE "Ik#zxK|9b"LdQ\[MetP = /g4Y&)[Y156JF+cl`kQS[3] 4Օ0|Ը.x!%iݖ_v@KgwxchuPkS=C]Ց8N Yf{ƮŢjK>Ho I 56tNPe>c:]<&*49Ai6VUzJq+#TqW΍4:vfWg3hgqƸ03+JO)Rv/Rn.kkv:T16R8gFvwИuIQ|Яf_, p=tpyi<]t!6DrLO?.~5ΐ|wFyzWTɯ[+_u~-SWПX4?Y?֦FL|6H g/.FJ"Φnqx~ ^ M,۩w{Ӷt`3ѢXTم]j)d}U&ME|۔)$MPWk(4ϯ'(ƽo=J >%joɜ`l{Z G2~G>' 1{5dӥdQ_'*?{9+U粲uȧ $נ\m5MTX@"lweMUP?WL9 h쉫)/.v} @-#Wi,e{іƙNs>Esyx_~1- jfXQhN`+lg|̛m/jӯeN&wnTJiJdwVxݭU\czԍ+W4v,bhSW쑐Ցmu@JUx/, *Oi|㤯\OX3رפDrފp4fKj_{~{Y' Q usv~d9_RV%s*%i6.(Г,Y]co569=6MV^A < [e;͙3U'@.Pd*^ [CU3;2,Eo85MtI+kE4>s_X(!vxf:cďӃ AW8w∫Pr9ncLQvS.J4K.9x hnΑpirJIDc5=Pݧ"j3BAW:z4U!ܔ癷xp/ R G3n jߔC/UGOha?XzuM+db=*ϓlT. .9Vd.nYIil7AtF8BfCӪAY';'I~P*Ydz"w%%@/v=H4*i-Re@QqJkLWqrǻQ:PO5V+-Ƙ~L h޻XpK8gbyz*M˵#X 4k;3S̜a&v0V\ A{;w[+ʔ's.;w+L(L0c,7Еv*jDt sM]sx\ ٷ%%.EXJ(%(<i͔ h_҉wz`V>ouZpYo# ȨjWZ,OS(+ۑP\{ȿbOc iE\K!9+LAȘ]PxU+ɬ |%Z3Z gyEogXXgȊNs *n)~/oS`ƕE[c2U8/ ѱU>!>B \$|Μ6VS$h 5ia^  ^4؇E{vR'&m rmc =6Py/Fzr\H.Tuc\c T=-VO Bۢ qe8>oA,Pc-Aa ?rBgGwrrY# vvэLA#]ҋ7Y;?S 3˛ّrho׮-gPE?/fܧOO2ajeT&M*eO7r 4!L&(),T?:?!-]G5;lA1J2R>jͳ*(mu-N %:<o~&wuuB7/6lWqCHJTR*Y&`Si˗n FOv* #@ud(|IU7lp_fB/~t+Tgp\#1R֋m*5m 0tkK1cs<(k &ox:6U;CQS>T"/>gM"Z{{Xk2&ZyY?4 \^Gbݒw"f^f\RFT!' ;ET[ODLX"H- Hk$CБj闾-٢RN߆nzFknɅ:? 2R' r]EP_Aȡeg?u#0w+ Oˡ'(q\Sv?,-KIc.8˒.,m}k?nS[ar`; ]2i~n{SJ?g.A6bM: 0,ݩ'yӱ4Z .gaKĪHMO17X/kg@ZEJ3#Dxgj~tRM1װ.yKրYDB@f&6Kjf#D`&&,osC 1:-SmqFެ@RDD25Dp# u0DIbzWC̖^(y={1zgJ .0]NmE^GZ ''/si24z]BXCgf(r$&YK<n 1k_%ćtg,':JR/X^}'@Jgpzt jQ)!)擰#>,1aO">v|lM9_"Bi^M~:H%Ȱ`Y'8EnBBX+>Ҝ b}shx j$y# Hę yڀյU} TK„e`"N(ɷnr0MD@,aBu*)n_IJA$@5NcO:  rKI{!޼ MڜM0*lCxbsݴKb+)B&{OB t`;0BZ}6Hw)'iS;擹oT`.etsx̆Zψ[q۫Ι7} 1fkuF}Hm(6!Q^"J{ ^4>T_f  ]ߍK?cLe*9ϤKQZ﫱 MQ`B dYʩF7ZZ0lr;`^=$PH,V}G-KݷS\lDe,ds/-M9޹>0a۴EnVb厍[NiD+VDl۠ Y ߸~!Y\R_*ACzzAc7b7amZ\^;@?е3#*kGub+xKQG LS sV4Vs]~^38ӘZXCZ1[ÏarO`\gjµ7銒@vDz5$<)? 8%Dj #Ɯ z,|V5'n''G -T/Nṹos-bϺ_6:O>mxnNN~'q!u$Bks<w],Th[O"E灀b}jnhҰܓl^;P'-rDΥF܎sX[ rSChSk,[ . K?COF!{}L8A=:g>’eܢzhG?yI>]R*596#Gд/؜>sqrolر=aiU0dvیqٶ4U& c!zܤp=02̥^E.@U0DvxSr'5sۉlVAsWU-Kđ5|-/ N?:b̟ '^I-bqw;*Q?-6S D_KF^S6p{Wa۲7mqֵx n!:ZlJ>h {%Dz,V ӥ^3]1hRGI~8K23ѻi-BWO9!h2l>=ٌe2^$7B,r/vs[t,!uClBN8C5}6)b^Q/3'\j}o fo­< [4e.`& =O:a&FLQ1q-%tËF_Mn7@I@y,Grx T\,V76_#Wia` ԟ '0u@W0'zdMǞ{m_'ɝVz65K̈́x掓'1Lo*twZQŧsuC aNP4͛as Ui1p`XcM`z7 Y,vY܄T`k)(xgTCs #~-%ueN H bfQe)5$FGDzL/rcx(_d!:|W!b+xz",D 4(O'V,J\^B;@jBkNB?Iam6g:ws[XE#sB L]().KQ$ HRd{j@(&ܵژ"'_u4kjffb4.o]{_1ӝ랶 +बr89z!#4W4424[iT>]0@spa7"ԱS\D{r1:qNFbl/=hk$;K}/~Ν* %;(Tt@[>f6]0C1|v` r1= ,0\or**'42aNـk-ۻ6G?}}|FݏJg_ZG}[2t5>r0h6&ȿv.vv?Ѫ|q+QeP7g=_6,ǐr"oC&fe&Rt9<~%DDf~@_c4ΆIvo>{vlwƃb;> yŃ1g1{zՐ2v4AGu)jdt>sO.ܺ~X%BQET i'ô|.H@s{MWσ˥\t!KL-ؼ? r` $1TdBIGɧςAGd`&ukgJA2+HM捀qL4EDD30y88_ܕ"`q_61* ]6ج;! @>|`NYGx5".Pg4ͬ)6dNڀ9Z&P >UK<`oSzm)#̋n7p&MNYcgGc:5ڂ\sըݮ/`5RUW"#MVz"fG M@3y,{I+%K98))U~,lr 4u ll2ԜA;z-kJVx;3;OVĀ ڇr4:{Fj8OKeN!Pj)e<||$/֚d/ӳIWU GKq ( Sެh]UUa'ɖD~렚[x݁$X5< fFG? >4 8/f]޻8m@Ł #?x%:X}(,['3R|j 8 01zsM`2OؓPZTs ǟXY)r~yABHB^%}uZl7Q;!\Sڊ$z/% } {2k.#'N9IűJ*b>W8 Ipc-uݚcF,Dخƿ$k0xIaRt [цU~s$Lw_QYuxDgjr)@'= McS}#Q [E)?xA9>X4mInf߷kDSD G}V)BNO}jdϏՔ{/g0?>C u9R#ooA, ykޭ|G\,ָyN/_{'oDZR0`}J_@#&}=oņƑ)3@Q׷Q-c[Ldi0mq֜0 bp‹a)4:B|QYK*njO. ?q7̾zPu7]ʞyU<0 bA t%沬`t <$d2 ǺG0_kVK"i$'|~}bZxIJI4Utn`j!Nk?% zŨiT_ S ?EW>ЉO`ۢ!'@CK/*`%OqS\-n܄K;qUkU-BJ Kgs|UJogN֐7M߆SQ2u ٻ K/À;JP7'A=_jGyԇPr!nO׎-dtfNu7tU +J L-k|9|\ylE6|ơ1Z0COĔFVzJ%6ڲ!A3sңPzpbRש=W&`c 'VҨ.4tM4|-1jDx~O,' 5Y12ƉOub|rbb@$o!F*+ m_߰èP}436Q~$Ї6jIh.hG.zgJ0])rVPˁ&{{&1ad}pN[]T@?FVXA0AGCA%TeD^?sB;=Amvb`D:.?LYKS`$[D&1xt*pgpaw4mM~nd?pkX=`JfyǤlj[e|eS#/GԒBPm ^/ *ygLmTx4(·.؊}adswfڑs '4ĺ \/wcaŪ>xBx4F~wNIB8TsFR c葅*S֏H m}UM&ۮzq*6:qՒ9!S brf7&'3ce"A-N͒Iz? u:됸燫yC (slt *J!a[J1 B {9rטȇp $*XXɴe\2P&4}]{A 6>wtau#'xq:ՆuF#6DU'^z}=HN*ƧqܺRF՜Y3s;VkKV拮ƊHmm³Q ', 63A ֘/\<Y||A}jUok' D.i96հMPmTtf-%4Yi$Ca tI6}q'y@۳ zr ,oO#fS-./&hκ!RZhtkUt+ź ^]cqk*14_dgW[2y?-B@AStj4%N>Jr7$Lp1"9xA~IyJmԂPhQk"&Y(B 1! ?E}4O9+Q@{Ai^WuUGÙ:V/7uϞ&^8ikN =E;k)0%ӏ㩗խqrwjKQ_ ݢ[@9ǂ*EyHKFg{вoy7?e"BT|J0HKZJų2#l8!-у?E$P-1GCu w; Ք_w_V!!}^Pק019R<Rm\c%Q3ޭe3w_?%1:v1wKqKAWSN>EAH5i ))`Lk*}qP=qեVSr?!ш33  +46]_mʦ{Qrʵ!&xݩlϋC\#EKyhzVQo?H KZ"dXaI *q (oBE,!bD` B%>)(k]1tx[U(Ғ( cTlia˰ N3/?dGI$=Li}3Hu"AԱRUnfu0Rmx@*)wYiYm} /*1TGj*z0ן1r- 4ȳ(`~p񁙋#6*YTv~Jy^o3p5 UST9joAJPʩp_>@ { ]g5CDK*nbݤo`䉦abR ?;fcW$T-Vv-\jvpR77?Ԥê?,Gv%=jd q)'ܷLS~̓l3.Hk܊2IBiMk]k'BsK3bﴄޔs~8$H}R%\b+7n"yՆ27o֍z@Bpʤu8A[f6Xn/ڎk~|B=vKE9{"h]д55{$-ܮm=" DQz"V=JS΍ҼLff1W&hbtѸY*cMߒxoP7Aʌfӹij ̇ܫŗHB7o|8p0QЋw" &>&`2řJTDuB-y%Pg|k-<`ND8(#Ipْv&n?# W ^ԅejNNKiUv +f}`ȄaftwMxO=w8h CopfHވAA<\1*=o_H)C5΂w|Ȣf7kmb trETX>(yY[")_~xTcuɔa /?ofʁ-bWxylAhZ#Qf?JH}ݓw";=2}YO2!wĨ.zh?X7Z ~w!&'/b<⳨EtPt1؋o3_F2)ۺ.0; 9$c=]xPG5/˵WC}oV/%ى7cÖ탾rHj4r!X!&-j֟$sG/߲1b:V !GCE D%hcIOi;<8uW 6n}zNE,uJlu6@ۙ88O%[h K]|(2sr%'f.8}J'3WRdۉA8xXhY`[:}J@K#KSB8Mr :f~^>~j(kgH C JA:DŽJ]UޞުQpQ!Q嫘;r{eu "~ UwsV{`yœN6bR|mtvR5rmL&pİJ./p3,xY < *T_;@apoAIP`z` $x[= kM@h6t^0|kWQ^,c܃`-RB0s,6baE p]|čBI` ņxR#jxƓO*яw"t7wF_cq ^dN]ALK Rw}iBыRG~=paog,+C<)F̙}Ә>~"*zؗŠ 9ف"G!t;g)Rvg햮uM`;6hkT뫅 ̗j0@(c Wxyj0u78)BѼUok Mjd/ĝv+n s>PUut_SH8*v8g-fnr"l4TJq 7)#ZtH)jȊpp9[9KL̳,- C)mg@MʂcA،r_晟¬Ov_tbMt`H`3 ],e!O='r#uXPLk)%,LI=;l9x4iY *֝9ʲ$Z g3|9ZEA;-3qSXppDB_lc @( Xf(ďnۿ!_-I6,O:*+iegJ;AܽNP&c8еLYY7Yhwc>\ñS<8|Bj,$Eưl]t~7:3EݺL1tGe$%;TjDQeZfZ?]~~X5wc?hKY}8EZ8M%TzyVsgV?Z5oYWIȼ9rqcFI穒~$:/E!c~]P+ve!l@aJlLg!R#;4ַ9N>l834zRY}HZ&LlNO wEWP_VN_m$*OL%TDvd+P4Ѥ[JU۳_/ $>d;hj6Qc4er3M,lLI4{aMYL6XHoG$mCj}G45[45V|د(Ql%ogx+:y殯߻3UG>;'(#l`-) ϩ؀96n[.Dl(Rq i4'4q~5㜆!Gx-|.o8&f.b+&7d(243YO:3yM "p]}A~m1`)$J(`8x/X`z(7E pĹNK'q/ mPI(DfX&)LEF[p9ltKAB#i:P$*He}ϣ;CL2XkPydyQ }ϫxGCiJx',HE|$ꆷI)$'S.Vy~&ʧOOy;VjT=3?T/E: nW9eiؽ骐op5G֑ɌPeWRm4Y^*6$@ ۃ9'`ˈh}0eKCRBibZ?ĜL=kM*ala/ݦRSQL;B\Q@X"S_q UPV{Lq,YFAo@n7E{SaK/ڏV|]r̹#+j!`񆏣Qf['LsQPDzʒr K3qtP |͢jhr80qs!v%VI.%LM,lFǥE_w]PϠ2b2d<lSwviVkajQ:H9v쇆ϩ^Mʙc w;?w2b—k!(Wc /yCM< <+PgOE Tz=q0p:N$+$(:G>Ju7`FV~۟mtI&.`>y@cd1HB=u59/Q{1:jRC Fϩj&q(ra -rol`\B9@o&g=م&٬e~垈\t+hm:$~3(4B']$ vbw<7h MΧ/bn "9Qg Uq`y"腙}H$rhkafic4,rgxP#Mp`O31_MGlEp/TpϖWV`ӥʅݭAX׸Z%E& k&k ?} x$%y(5VPLgpr%q pPp' b_UCbQZ Oa2Ȅp=S?O,]!Actf-C_v*_&(BtKiڮ@q[*Wo~%4bwxTws;Tܸ{p.N:[w#+ٞS]̯؜6GNiy(k3}xkWdTX4;D R/X3HI7PZƇLf<[ٕ)y}Ƀp\~DDsKߤPY?uSd| VN`؇p) Ri嶞g0Ss$Ӕdv++-iLr'KXȫގ'һdP~cv>?ׅ*^̗YMY`_G* t/c8Kl@CC~&G+kd_]%L#vctqrrצ6q{7Rk]T|(i RBC[P[BpNffjt;ohM!})wJ!3g=@Kg>Ӕ.чndhkQ] dhYjCoN@pO ^fͰ.ez_S/D WHƒnYFd.+Vl&]aviE^̥a8]_WJknj!xά 5>W}JWUl>>J q3 k0Ɉ4cJVEvJha^2"2ǃv|wodT~hPOx~`6ZRЪ5Z&Gh@|lɚy8, +ftI/-o: &ݏe Pw?Rbx 94$6 M ͠*)G+|u*H5"1~%5{$|rlr,hqqΟVqY=1i`[O3 Sm;Ԣl~FQBΥ2([.5Wi޳*\3GV6]̄(’YGqT@\A5؊]tNI-d~yS8O9@MI7z߲KS٥`{s)\s1 &є$LTHK@](*;`*!TuF4%z>\h7 Ku8A1- hd,Ǻ[x/4Lމ`m6ge*׮EZG.f*?2,$YẘVmwsͰ\ɣfe/!.`9K.@b媑 ?-HkP:zٯsui=PUo=@ ~d2JlIwU+segξ_66F  Rp!9ୱ@Db8jTcҬ^zd -¡;ʵR$&|EξBv8$0!7gstN0=b4sjZ}Ϗp (͠9EQ>I51jc^;C!N@)N>:oh\]]g$0)F>\#!)v׈,b2ˏE_U\ś#W8ԟ^GM;Ou!p'Yi7GZ~[not_x/-+~ 3:*d xRCp5![niQ%:"$ZXR̰X\q9P1ՠ%)d/䣇fwo,Qd=}5xW<40u~"d.dAu@AD_2`W:EշVOe~L]z-1'r㎲537`eaQTi$gзE~"k-l&u&RkRY~4Y6iHZǴĵ&9<}]OZV"ݷW%b˼:"fX9v֐?<);|}cLIK[Fvb !YrƩӐl/w)|hV"d['9 OjWc CɐF&K{PQC/T+[ 7 沧ō ` 1HϷ1Eo*9-D;bgtNީ[hǜN5m˖h.4Z/)hv?g|MBV)@#ƭn@j`L.Eξ&_"7a+KoWq.4 sMwxUͧ A KPy<\KeSZ:f6z"#I?R&%[ig>u}KDTtx b@CyWvx](iZ'H6%Ђe<ۄ$8kѿQJfYN<»e+r뾥p<Ӝh`C j¤I ۄDר_&#uy,>RLf.o%0ٵ؈K|+7I,nwI\uסy'tV0L51W~֝>@Rt+ ,4mjϔm;< vc5}@ӒAbi# V62c_זdZ )׺Ʋ3<G.c#dl΄cCLUIH,RX9%qr) [V]yw*1,3C&o鹃X?֐&ǣw ZCOg7{=yTNF,{|4)y.@YprݢsiDVU MVD/B_#SA|4-P S>I&S_{4=,NW/^AK.چSeuE $9d*'cb|chGG8j@>!4*꫏eo_X%G-H=fp֓zazXoL) %P_-.X ʀ9;0h vRX䡲W!|PbέnOβᜉ3)f0 BHcoc"#m5gFd\zjv=TN=؅2~v3kmt( 2*C >uF#'@l@Zzǚ|j wCϘl#56Ux/7ܺgU1^">wJ=hY_҉XyҶ%^\ƹlby u F<-\/@ N-`TcJTd`DI߸M Wz.uȎ`Ci<72> V0.i2ЇKYYθk|R57Rv.y淇rn̠nDJWȣb\6F :{rc ]2&rg%X:>Njhݞ0"Crt6A"K!gDmh.cd﹧luqM&x2 9:&\v&"К 33Cd+8si h'HTDQ4zUhTYQwI?t!2~9A/MD?Rb9TcFśaR9O!wjWXoǬzE0 ΎZw'L!_+Yc.| 0qM3"mVG>t^wt} g9·T'}I;հ0< _kTQ؊7yiY}ϡ%u.&:#HN ':b-;=z㸋pxՈLS@.%*)4hϣ[\>d mbvAKO%wDD,*]T-M\F4+9UDʜUhP09E4a/S-<Rj*{eVjȺ[oN%eN`'a.1ShD!/`=)u0j&;֚iO(|?ul ?DZXC0 G cX>KAK"SV9,yy!ߙhPrLFQ>G%.1@nh1RNSlS Uxjj5W @; Lx2E LZҜ|+1%ƊRW# V(&[|-i<.(kB i8Ycmo=(A'lۍI8Zp %+w;bB/u{]$ Fі9~U$y/59^uDm*44HMzFwZ,C>M.<.9 ⍖#cW3MbU73x(:H1Twem!]ߣ."I7SER~MHqWCANDF*=4bڂ@<= 1Kd _`Y,M*R,瞣K9#{{0JmEC#su;uJδv.4WD`uFF6d RR4S;g oRAKu5<غI魵PC,5#WL(7x!Кscu?mUzLj&Qpb ),F?>lUb@-O[Hz<^eG<vK[c! ,Lպ~*JDh?G?2% ɤ>I:hX܂H;o7׏X<&µ [pl(Bp{4:F7;kpr $+ulE i' t& Tu a?y2p31Aڠgᤙ0HIi牨[Ǝ {)x܈6ؚM!,AgIoSHŰ\B? N.ձE1T@8k5}`)IPB43fr|XS˦YE&J'6=5XJ`yOm,J Ji>.W&:EL_RFɶWHL'Z @OY4GF](`&ޚQʲA)-<6k .+YrAuy4i:0CE3])94eBCӟH2:ډMFǮ6B-+*Oe?j 41ũZA( 'beYm}f9C/t\8#7G;ݯεt߆>!Z_,+{1F}z&+$7u&j Eٍ.]:F>//-0~8gG=ov(w$dOCxe%ٵt6N!r^Q4pPV҄~mj/8$W:Vu"<ѧ y-Qʭ'm:))Ʒb{% F3 n0^\)22&)*L/xMJ\H)ȹEs!wyCqt8.}5ϴ%b1ôC#Dp'>~`Eo~πZAez]qB d`'K6 19ɝbnbd}xS%緪ĹROT `FD ɳ+8 o6 \edI,=O)vz%{:y㬆v[˻J&˜z(FU/}Ջ~0-T{0!8jx<\~`Ma3y2q*k gfsQB}Q!I3vd gK{S$!^H] œS˅'bG_Z+WM3FXu9cΌT[}w7t0@x8,{9]H4IHDa~UQ22IyayR}b@f_ކ}f%V(z|dr< |ؑhЗJ8"O~;$iݥCgL([lkzz{y-f+0vEo9սN43T%╫vR,Z~20I{<(;eq$D(T7 7/f'on8s^Cx]\S 4tkXv m(2uc纪fI^Y#H{=ukDL85̓?vI1/Fb.V]H,g ELy7YJ䥼!巛÷x$`%6 4YZ @`;u dL@DyǢI˩LZDܱWRT*mdlXj!3HgdBQ "#u dx_'Ŕkǂ 9J=Gלir:5|2ζL/i$eZņ"}J` NcgE ~] Yb Џ ^fɃoYINTR% M&i4B+)xpO{\|@uobkl3?8u:YE@adg#4͇%K;`lV'A73ZT'`SM!GE,E#{b왨H5h"^Z >W&tI,IP5$+(2s<|zzՕ%Qx+x3sX݂uB.i d<%@&0ܧ7J.U϶=d, Bky m*& H+iktFk[V[񛱒sc FVJRg|{Hqt2*VF G 7 aMDhxf]9V|mT87T,G톞>ZC3ɆH ? KP`*k^"t[fr_fEۊPUoNs Śu$ȋ26J?4 eb,l6f*UH8ڄR켶RAbҍU#QSM_U% #% H} w*MYm_V ¡r;nD7r1B!#Kݲٯ^^0KT+pM19B:ů&Y\ob?4CzH7-RY5<^ يa>5Py#m InoKVF yX0\gTX$_@<,EgU!:o/8m;,|hh<@~ԱD'J&f: "%[dHQ$߽UO@Io/8c)˙h'甤euGu&9R0I6)`µ=8ꡋGD׈B+xi$:*lH9PK#.9^9ʉ@rϦsj lS1=r(o^AL,,cg@׀QpnR_JS .|mtMdHÛZv$b/ ˖K}9C~%Aj/|mJH> QD]Ui¹%hjC$1OUI6fq#rON٬a0Z+lciԤab᏾Qco9[PIsGCy TP\aǸ~Be3D1u|n"Z9\)(C8yr0JWE'#:SHw';qx?)Gq -|yU`ݜ<3:AUOkZU4TbHET>oj[I&TV#BON^aNTJHzI{4.Qe83$&"ʴ,d (Ra 8 3ui6.uO*0,[#u_:#Tb Xp0{"zl+8L5흋A8nA6PwӚ_oZ5I<,jD4gB,3h y@~Ǖ].`dNi2^gzUnlw+-iJ~a1/pPX3(n\;.6j( +Ά Wп9՘u~ZKO47_^7Kv_Ǿ&S v[$\rf? 3Pq%aw- lKI8.oޱa ╫LΟgT\r5Uf|z‹ ( :<+v‡n Ĉd*D| x ͯx9$vmFN^fxɇ1e39{'^|XcӇLBtE3!OIٵp\f C96 o܁W I:;oLt2Ht8:?`yM˟ЫRG7dHL?JyrM"\>%h˸t(>a\s2E0̩k26%*C=M(ev#e \~-}_Պc2 h6S` H`jmp ھCYq (L8,#]ݣthɳ'!4=wMFO ee-6W2X9#ۼ:XJ˔5BK/] ?=k"qjR. }o5"(R}f7fj?VV9ko̼=>١ H"΢;`xrԃ. ޠ؝Om75`D~$Wt2g 5* ^.]HS|@RI{i-| |u= c?,lYݴyb9G Ѳ 2$Bh&SSq*@_N՛(֥eP5ۆ* &`0K7˾$f,yS2|} xE3}CHZJHfχML`nXjNg.ݒo!3Q,[?BSh3*yDS">@·Qg#kH6J9']0cu浺5NSsLX%JNX2c?w63s-gE> d[>IVWi|ri*Y֯Ta *;1U>l LWx_GAPeU_U̿B=^A v.Gиd8o ~D:n/؍*TR*0yv2H(PEAz®qPN“0y% J̾fOAI.W4VSJz|ꭱs;ku!b4n[?;U5Ɲ\g܀<|8%h/k簤ͧ)÷p[x9x0ܑjpRu`?, MA0qEHgW g36>[2˩8)$UksG$=^]+X&FAT e5j=ȝ!N.3o@>S]pWE{Zv}LY0t]ooiC@!ֲ`ޱN!A$GTAvBe㲖O9BӮ"͂آ#"Hkil^&gIS\/R6@nJ"䕐zYM9$f0pY*,8-8ҜC#UO&}/6hIڼ~K=B钇K_"C*1j@Vuj!6~슃܂k 궓xϭB:~ۄt@8'b_PiNdRЌ \*m Cs͚뛺.yKV\ŀGR4rc_Dc:0瑒ˡNS#ic F VUp+q 5,*T,Mi^/c:BQufDL2\'prkRڴ51# ]} ˆ !yS2llJwy3מP@aΧ̇K.1n.ƞ0RMl dP,)5~ [rWHRs _S#J*(Kk63d'.Uʮz!Dg'OOo 1D$o~}nOD*?ϤW2]It$`}v=7EP 6,:wRm܇x,Fsπ#Zdڲg=AQW;'fZ'F\,DCju9ً؇vAvәy 4 K/#{bV%W=n\:ASs~9TK`'"h7?;8./b^F]ZJk:\t5``m.2`V"C=:[9k%31sSs9\mɄ.+Z毺[Q芸p%2xl%j$ W1I_2~ڡw3fh3g*܏TĚk`r6qNJz.Ye,TASrsr!I ~˷ \83Xq0=DԆ0koBҮU kG#<{#ȓ;1~%.,LX,uؽ`S )a-C .Mۖ}ݹLT)"7@-zLWy'+sDRB&jvȨ;92>>巊[Yic'Bp-F,%'m( b LJ%3̯-#b˕x'$k7dn+gvq1ZV Me&Qؗg}t!<,"5XƋqFKDbC`2a4]]A=&;q} ? ! T21A].3 }.!S'G^rh]оCq) PuBN/1CY/ƥch߹Oq elj~lJjI41p1}jM z݆yJ0AՁ8B0q LoU. WBP @ջ"gҖUhCnWTPfzzXQ!^ŠN$ H 6>ff}]/~GdQ€`Dax<&_dU<<윗N$ܽ%d 3&9<0%\ GN.3Oߣi;.6Jx|`Qvni.Co%&J RM6 M2=˴~J0{rv&l6!M#vQwfTw_p{A{S,Ԓa+e敘X0 90KJ^ HFxnA9_ሼY.q+|**>w:2 s`ZHmBb=5|*$jlp!Yq` \T]'{a#Om2#aIH|H;aRTkgZqTɜ@ylA7.HQ E IB[G Z\B⢭tɢL}k[U}yy\7]LY1"f{{:c IaǙw15h#-ʲ] 8s_ xSf< 8Ţu'oW'>"j?{X8"r0Po 7'+C;="OA$Gof sk dtq-M/yzҋzrccAno$Ln*o=@˪a-tR_}U@,&jO& lV`q[%SϹ+j?8 neTKF_ּD:cQJ4HPRM?ߩCwo3J7Rrkw5nm2x^c5 ;ʳԯ h!swFN#̩aعm.H7BzqOg'PqlZlS-ʫxMq(sF3 ouf NSc"`g>_G\Vcy(Q*Cѻ&MQYF.}`'l5 cNj̸ %g/Ar.  &F.r\#؟M2Aq4 LOJF(NTcN8Ko{8v)5P.ROÂ2;t^㜖|CÓ+{N=#_!_!D8 5IB^;yCSX+\@r)jȮA;a;zN/w',GHe47POBbzJpeB^t7G.LgÅ@Pnfw0 FI},X'²2im*ٹ00hp$l |W{hY.(/mx͞81&]G+F:P u*FS[/4]n ۏu}}ƌG&Rbndt Pt$c6,ݶ Jin,B4$݇P3&U+@]FN.J).'!Ǣ3vJ,Ն/Tlc_: 3YkA };ts?`u=T)E$\Z\Y _WY``$$?lke-WRelۭiYC1D?G"~Kj \姦|uS%6*ɟ] 5Je~g ם86:[Z6."-eg!wh$s:3=en50쐉jg=Hv,,6ǁ>mBb [kbdbo5x9,FcV,Ոw8bSsy|&RR2#ZÕo_mw 0(i VGaegm5-JztH_jO (f@wN,l~'x'sv7i/1݉l7|ř .#éTd8%z }i|kDR;$n^2g)ϰVkpV9V <.7`T1,e7"خn}ù:w ^1 [s>~5x{9 b]m7QREfy2J $Op"$3'^@,4F4 \Z)CXB2He3SHam#{RZ7 T~[t'K-rRH-(|Tn{e؄Tm y39t;vh90/ CA|[2י \\ cB#B,u$"m6ېeT\ݨK,e<bZ$[1 .j WrjzBBDc{uE_NQLZ}DAz^ѷjbV m6@c v-3݁ &̷ie²o)59!_ۧiw>o[D֤ n0hZl/遡5.ﲹ0 ̄IgPU5 1 WRVU0Z $pH|ketIn|9# bY-ͨY>OUh'^C=~GR{" 9몍ʷxV/v~ ffj>B8.A~A)wiD\/㓞 ۶8IF0s&%5YqMN~`1jY\4,2ݘgᄈmͱ-dݍ˂r%ǜX5<Y#<^0p/b},˭yOcꝦbV92,C-nyP;|wHʖJ]XevY;ړ\ k+[q1x%MdtEo?vB)-{vfTH3Npg4\|,T$sK 0W8?;Ȼd\SawDM~>/EXGkG/ҳ .#1l=z'AzC'dobjiQWo^/(35^N?257bxh(veڌ˖0*x1Ocg; YվC7>wwH@$س^+s!>ϴ><3$j.Z4kJ HLdZt`az  t*%AVU]TE5g뜚QR<ޞ~Vv9_2-r%Σ~mVf)p :FtF8@ĮG[!u|?Y JA^a/B ݎܠ;gݱ`)^+'x%W<>'rwa6y+#7jѬee_&XuwgKj7=Wwņ8D|BsN\xh.WLWQNGVژ2޳ ~zpX# %gYX0yPXYq;f*/ؑe!NKZHQ̤c4\>yJnرNJrMT-H[bvYlg(ṉЭlU~Bk o~qW k#H5-O E^F B[9 V}]L5=$Bo4ӒCzHga'~H<鏣-7\Eu91bAΤYbNeD9T2BD+:mׇ*/R >!uHvRJ,$ufP >YNM )<1{Q $%gIu_}a{z`~'Y^J5SdgpR6ΥrarB![t{O. p Po>c c~xBuowm{%wrOgtAÐ`% ! *ͬmS#>jrO!T}7t{/*'YǠ9䃭 v_kR ptIPTfYy2`rQF |MIPaN~LΔOS\2;A Ȟ}\rhGɠ0Bj^[Bum<T٬%'+>QhtI Z0=IVEoH3FXj;NuX0X,c=.l>N㲺ڄwNNcbfī"|o>,<8Zʒp PVrOj0Hݒ:]s<<%Yʡ4CmIB7@g`i)C=Ѿ4FD +.L&g;saPN=%_)BKO]ׂUA9pӀ|!Rߧ8åJ5S]7.faR$ħ.zϺ^Iq>L6s q[+T_\4<R[5*[_e7 i u@B۠1X֎U.ϳEW$\LPb8^Kn_p'n,LP{xBO#DdWTWqt!uzT}ZC,ZTe`R 351KR]йG[v ܔ|tTON9Dj"un9d& }dP*G-MjۮwTkV^Cћ 0B AINK02, RkqJﵠ cZjt7vMWq^`}RхzA挚=9P!Y"8K/ O % *VΤ{g-[ru%Q(|#Й&X 4ɅFxmt^|jse~A95((N+ڴi%ofLN%ږjKO~ֆ|Ԗw"ve*(ޱ]h8ù}3Ias3/?' yf Ѝĵ_dq:d,#5cޑ61?+mD_(lkږvEc7'QU#@+4}D' M, C-;E'e(|ifc+ aiDjxc^YV5f~s1Y4evl (YNu7}DrFMGaΨ>s'H]kǭX8ch(`huK4N *h}p7){%uݔ<[rLO9oAGRc ń֧\&$\)X'4V&.z5<(_j$'!_hfwLs‡̂ݛRL"3/P`"g*y]Kq[w~6={^@Uk`O\͒X_m@e˟pԶgxW{ z~}2&/>`ܼ? _ kڛo-QρR,?:%R*jpT4+v55*.) iK<􁁖[{֎/ӎ&%N|s=$7,d_5C%d"Ig] R3#+SpX h74| /=v/ pl^}KȚPi>86Ĵז xH>QUl|q?rdZj6;d. f jyWd2ryiZ6,h)oϲ2%; 8I5PxLtKWf=Ĵb+v\p_CPīLXC37VrfW15`W(ĺ #,è7W' -Üj8iEMKc쉞., DhsGXk <?k6P(BoQh!Tz1h1DOjr,#Y0e2}7; Ay ptpѭ3JOj 4"ñ=!"._J"NoH3٨GDY߾&1%Ï2lZ\H1wjRc|ي2#cEѰJCj+_z:*d˼P$˥)]-&qe^i;F4\ K `tEcMdhm~!mZ2/l4$T(#v JzB^欜3s0[6O _$Q*f $MM/j 29.ᆥb=Eiy!AZm gOW8qA^h+F>6+h,Y(#NO۝}P89oZ'7raymˋL جcewj7ga7 k"qc-վi:[ Cq! d ݐS A=Iʻ KRmy*~[jj l-[RR<Õr |^12a1eƑ0{lSvJGs c~#Wl!|#@W(,v%`qܫ+V:?]$ᢐ𯉏 TM( Ƚ&?W؈蚟x7iNJuHP:^3v:tX3`kuf"A+Ψ^Ŏt| ( N*xf1 ¯c5Ki3C{6PSՖ= < Lo쨰"hznxP&0NgÑƞWCFGXLqey[}G0Tf2J̾fY#p§p; Mơy(!wԈL'ԟ>dK5񍖭Ԛ6T0]I@u4πi0 |BT]'wYA%3Zo= y%Iy6:yd!Ff 7F]:пgv{I{d1%P!i 9r5?K-7n0,KpM",YhFDͳ#pvA@ p>Uxpk$!TԢ*qku1&1V?O $ɿA0POX.P7]bG% ,3"<)DSe) >Hd8"eiBDJ SoUYіtW8P6o;4?pD6"tjpG)ˑÔ"2dgVᠥY'DP"H*;1|~ۓCR5'bstdR l1(u~JEH a^p']8\Pc[Ηl҂  JzʝqI,TE7v`f#"e5-Kn@" 6 ׈R]xx/in3Ho\iBU@O0'{NSm0={揍,B΍O_Li6m0po;`H` dT4q'nY6i2G!@̅:YwhV8Mr?0|5aƂ&&6#+opkFzhn4\ r>mIz*A+F_ ^B0'mX o%x 20^~f<`P*XBI=e6{ZBS'54Aiճ^°v(ݼ`كN*8rk*|”0y'Ѥ2l"Vܚ+c >'❐0(!b t7g_3d;^ڍ!Ti<^t-j"eBmFQ~K>5=XAfO8Rzقo&|3byb؊g؆Cf%Je#y$ju΃vt7NGZ/Ć)?փ0; ;cr)'ޢo^7-(z]ʦ.Ru y]3= `#R_w!sb5]uݹ>+}+ry@U&;% c F<|Hɔ}S:mr ؝Bl}\a, u: 2k= N*J櫙ZvCZc~%;x$%~t糯i!\ɈZMnX[**# 5d%aܠ' d?8eQKP?iH%]۞K@L yaл3֟W2ȝCM\nMhf^\#0!Tf$4̯qQpxb%ܶ`> fo>yyg_ڮ_ " YuAl6$/Y\ 륱E'n0~KX8 ,zкj qe,~?xך1~w>jgߪf!nCJ]I]+/'Q-{<`pRr5%js/\P=?U; ^Nm;^]MŐs/SjWx#¯M?.U\y8̤]` ֍A@|Jl%,nUo$Wj&֘iڲH>MXfVS)d/8 s(0X갨V ddO,}~?n*H mӶR-/S+zjƈ"Mr8,7%Y#ٻ+tΙ`# I'-"Հ@+-13uCǍ]#JiKvl3n,dwCp4`\vDcZ3^TAC*L[^PH%TWzP'}90 i_jYM'\K RаTB2 NPjZlx5BzcӼfJȘԶLjKI2(o˜5=q~B"Jӌ>>t/3Q,QD{g:OX]:1$fz#v! [vqgѩGKM֜VȨG0VEDz>rBцj_Z=3Jqp!!d` 8GuX _Ir+:(J㳐s"fɒDÆhYU'ǃpMo"pj(:j>O+"vKu5J ւk<ʶr?a+0SxVk5!@zub'0mA+ft H|a广{~D働y#pFLJQ:CҗnG} &+mL{J 7Ρ84cp&?zE{sK*#=KFη 6`*fRޮZ] B!cIxa!L}u@z߬wLuHćo@aϋ_G& J(6ًFC3MlwMug564!Vֲo1](I O3{z_ |/v^L%(C3_e7J~8Ц>g1I2FRNƯ31kRe6ǦsS0XC)w7P} ]R6777P_D M^ lg`޵݉Dž&:d +B<,'>I:8 H"PX~-]x9Gjz x6rNu -f&H:Çd(8~Ta:8w`3]"\ZGtb#MIe )7ViH SO̖a $ϖƏuZv*/\2D{&X܄2MI{zig\9;K[fOwPbͮ ]C'$:m.Na%|Jcb 5cǵ͊Uj;hpMʨNo8!*=BW/[CVu՟ÞNR}9`?Dyq#*.K'ܑƼDHyܶ9sHƮ켐 n⮸ 3'C2R44CSyo3 1:(Q"ZP%\Gè_ ~rk'H$Q10e>en>]L[K`nR\1S_ ]ِ;-A WcTNB#%ꕆ?IϬF+Uh.fJbK^H_u⬽'Y2xAw+xp *| A!OcrщXbUdrw]iHK :ݞF²Equ;Zl:A<~֒V?NУluItVXWKTQ.[)Q9 1#>V7砭Ow|󫁛>+@dwgkxeFtV͢v638ckr TӼvME/` N]Symg˖EǦ*ZJQxXm运Tsgep$|=QZXОYx[lOԮ<5j_CN( ` &&cCtbLܤ ْWI9ECN$M h_#W$(0PddΠB{"dN# gp*I?5to-m6ouo6fp)rʨ[,Fdш$GD\hfS%ѩ1OAO{6nǵ8·=mm^V@c~q?zl.0N^lmdN~puDyP(9棃^q2~Ke.oXgzJK!wg_ʫ%ÝFSV@q=q&bSg< B.ءOtp [ Wdޕgr!T7%T~5x>JUfmJa@0*sI9a%Es̉#.^$N(d^c,q? wM$Z.ZHQ@Ez:q]8zT$fEgP?u]JOB)hYy(fO$W9–>7E# =Vuїy.6B^ ( gZKl=Ŧ)+$#mx,ݰJ O$< ]Bl`Mn"Re?|P#QɗBYB^VW#luZfS 7.˴\V >W0%'0=ڌwesw(P J¯6Qj|rHNNP6 & ӬEkFP,{vN|5&͉7"81u/oj@ӔDZ< iVÖF9`?x7n2/y7HywȢsHtȻ21"Ab)uQ"fU抗WH P 0(8RDl o;mlEvKUo4h0 Prü*t] sc驴9w9@htG/)WPDBy;S Ҏ7#4hẽ%iReJgE~q;ll"hxsXY 48I戰%{)f+]}j;x-8_)K*d~DRi/KW_k揲9iH3\ٝzh!b}8[\X LJN@ !gEC{vr93u8S MYUD ,o0'_eч4M92S߈h 4 i`sJ-Q--Zr7}SuQX+Lnb0Ǽreu^t\$/6k $ #섘aJeR/<]{i{@* ^v]vs\N()1$8C V__]VhwD^j3R9(2{"ێbYam Kb?t*&"АM:ي]*slYQU=b.UϣMfP3V `ү/]FĶOD! o~rZOa '5z&RmW?nz -aҁ}>JF;]n\n} QG0$AU,~bKr6a6Q-Q/_AG橑6 ,h-|FD{=!h&r @7%O[a%Q` z_)蝲YV~Np?<$c޿_g9^@R1 33Xߌ-AJt5`.-~d6[TW 2ABUsA@rMtjKst@o9$U>)F/Թ f`}p;؁" ^aNzq= ˁbәЌy5ѷϴF@{1]Q LK;S |͑<س*mTuBU#jaY)<bTEn-pEӝI!tB2cu֎l vq Q`J?DP K3__Ep ̸ U-:S޴kEl΃tJޮpM Uqp;p ̅ .CGÁwuƺDG2Hdt>nE@1FjT!=8$ĨoU=En1u\cx ZTIR0Y @ ~f @V)0|LaRnqSOa΂C E#nܷm[2k+ pyE~hEο&9Ayv/THtᱴrʣ0wK)1@Q%ig[Ic>NʥPh!S/L]BE Fǯek1T51sx| ULGŗ^k91:'oRHdJH+& B|'Ԗ[ЊN#6PN^K!T:~M%NN,fsVy:?i`Dw_ܫe<uȺ--]5 {_f,;.#B~8s)ASz}FMiɻ\o?:>AuAIu6цH &5b%h@OjdKA ]] ^廁U䙇>Z,:-Nq\\9`:75h5=A C4HNNeE;)TµjP['=x{^zs}2 ש??ŒM-qL4;RJ5h`_ Hl}@% L^T0ya+B>!p8uLzJh>Z_8$ttyi"VRȭȴ6ĊHtBW!%ix!%w~̝?ecXэ@vى_ij P]D{ʀUB֥V3"YQ+!4L !HExs\T`^$xI'ѱkE>JӈrX{n7r/E1&~LчJ+o:tQb,~,tըo/ś6:׮~sUS.:{(GW`܁RѯaWD(W6g xU(с91*^8",L1eM2, I ۨ%uc0^Ccp63QIGnnT ?XհvdL p n/g& (KWA'߂nĄ~wLst >HXn^cg=;z|DQ!/újCcZbly}yN>tbu'c!E=(jޅgK;j]bŘEbՈrҍ*D2=wnMi8Cg1{Bo5ۨÔ^jqsse' `FZ*0Jw`,{e;讄[ܫ-BO. Tzg+sGԞK33IvF<.{~=wyۆ H`F2#\~Fho Yl~z1Q)8G8uTdNm?C~Y·Z2KTJIPDf ;i]&Z_5l+رWy~MK_*7ӱ!V eZzj@!V#߈敏5UԕND /c P1zg H؏\`2t )(n.u2J,ad#5]w\=QbAScE8p_2Y:W^E$YIV5 Iް/zlJ&^uͺյh;,>2 ˡ M/M#rNƶPtIc9 RJp-%O =O0 ў$+̍˘Je ߻ ʗRڍA1_A"܄h1ԛɀzG-kgk<4y K[K{`'$F$]qm Xfv:(yAjAVI7iuE#!ΏbCTYiE,,jeס IGi[{456pѢ~Gk8p`Y'r}LKaUPL7dQ|'g4 FUIW̼B_Ly]9m{l?! 띫o[ؚOe 1   CZ-J!T{CE_4v^?f~ Jqo-~$XX(tjPBܐMdb9C씳5nkhQ]Uè{Hf 8wui]g2!wDK!?>Z:3*bo~ HcR*S­@DR#vF.~S6X5=+$U,o_/T]!N%&Գh Jۥ2G1'@Wb*fi L'#f?V G{}==*5׭{XJ ێWPEoRyվ9mYNK= b#T9nkF_G xhgmxU|xp=&Qv1XvI,lU:#;Om FcKEB=x5ףii'Ǫ+8YM-gL`L~쑨TR2Q`|x?? ?~F(/z<Dndy{&Qtx]MR|#G-1:Pr?:C2Ù+ $ZЀ" Ԉď+X fܳQE r !Ue{kFBbMr;&#YT1/@E3՛is6咴;o!ΨGTJ5\!邑duPw@rPuHW'Y@JtfMa ?U\{m/fS -"@*bMlERiMRmh]uu ynP]=*Za%e)d_.(,HÐS9_#PǛտT>I?od+| S'Tv2l,nNV`:D9;IXg|߈DHGx>ļ'X[RX*o_ڔ9ZmU/-v8a[=yתw?O& n4iv:|w:h69&^wqFªiTNCőS|6 խw$NeC\OH=PL:@.X%+w dgϏ:)/X<&ڍ:p-D 9о}8DjH>lT_}jH~Ptiuf^WuRF,C(ES~~ ( u?ʟW%XN[oIz4/{3Ko8hb}1[thY>@J16h'Ag7YI>IK[(B%K,,oTOFkUi:g4m5YuEFݙt*_Qg LJˮg4HF`aXE{jF$qo2xD:&Q2+08 JrH<_}}EÛl:Twߜk;:I.kt]F=3`%`3{ !ԇ:+TGо]򃟒A}A+;:jŘ~ l+QiXJu6m!qeҝQ=9i(v$x5)ۣacj.< j¢7szխOA充J>ӧ. ]TDLf] ޚЮT! ɜw'ęD8§tfo”Wۭ6.)[ң:x;HdKikYGȞJ/0~TFB0@ݏ9XT iH`b8) 5a9K[ʃ+l)]#xa %!nI!LkBjkY#_*'ട'f [dG.Th)C K'uHglvϫ[_-\ =4 s9xjt"KŕBgwps{<ݿc&6zξp'#, jf:cLKAJ\}d{O6z,R5lĿFoI !_y.=d'[EL|fxU6U5vƾ"a^16!P\ 7WPSkS00_9ø4à' OV)>`tZ̾nWBqT4LTr?%Rmw)8կN |9(uI)mbE8semH0*'WmE8qAg]۽ݔ :_ek$Rd [)i]{*o ̀1uqvϚͺV>cq9PKg)~,5tE g:ip cqwA];L;`Afw::rFvb#C9 LqN{:1Yl Mo'rxY,VG2UHD7#V;u K--VTaM^ 7Ib 3 D+W;bA׀~@GDqXpD䕉5lS duZ v^- "ԟ@Q 9zA2Kv_R}lcK]Ϥ(3>p0&0AQ ,p1zja=-R򊌷xN!D?n0*3%վ.Tg>nDX#$a=RUMK5B_^X@5},kUuSV66FFn,#l'rUc΋@5?oءgsoH҃mV'(q9&ȭPп{{$җu, :,udƁpR? 9lKgىׄaR W|5g*lx2:]<=ۓe*~0KyӛuLZ)$G/a?D4xP+R~ƟX 0ލښ/A'KO΀'~1 cN$ozc@~#]Uf~5r(<ᎅìO*[ss-JGGP0/ƢK{>U9cv؜ħ!rlY-LK|Gj֞7%j~Į}}-!?ڮ9^g{mvyFv( ]Vvw,B/luZəSm&%^2oMw*8;":YCgCw`[82uB#S(8:_Z>ehzob+J~8c;Wc;N$c9Fȹ.b omf>ZtI- HCAj"ͫ@$lz(yFojr#٭2\op"Xp]C &'TS.Y)G QN*eƾцu/]@3u0H(4,'&?(Ճg v[}e /`reODv{Y(jQTt0,O<3I0Ɍ Y&tM6Ụ^]"cyB6$h› z*~HW8ΰmЮ7a.(,#X "6sbA:Ö@w«>" Y68Ś=$N=Ϝ/gˊ+\y0|#xSι!h̆Yt w8"Z ċb3~8ƔNnn%骙yCQo 21!YiM1<{Xl=Mn7ob6ͼ]{<E1> H?LհNnG׊4z';g)޻Hu¶m'L…J܄a/hב~)# EQKO9b9>+v%R5P.jT8&mMX+`fޔTQcjͰ``y|]$v+'5i5>zC]S3OMC/4Tхݕ ߴ:'$q~tbU֒䎴52& %g@y<xS>nwq̾[ !ISؖ$"P OB ?/bۘ]R:pPe h룒 &}07@Գ*sS}wXlY%_ )y "'hLóE=%PQ"GpGE)b3Is߽!@$!da3TF ϙa4R65|uZm%@W,9Ӹ+[72卣bs:=ˎ} bhUҲ<5ښ%&3'4T$qKf:>]e%mBCj* z8P}Oӫ;x/ M3Q}g= 輻>ڿ;:7uFT ^~3Sqvw!Lh(dyNgPl/%cowD | 7<0\Ձ2"bܬs?K2x"1u7FWwm璮\hnpDW}Ҋ$v.1Jw[ Y`„jz4hp uÕӾn``mWS-ѣ yVĢ^ìK69AE~2uXj*>,̀0o~/JDse%Ҭh!sDw9%kId\V8+<ĵS2f1wlu*,L҃WG4f2X`BZTz8.PZlB[a/ :Qa@yO$Y|?DMvuS!B!6{bHL[!xcuÆJ0;X>iv[:NjA>U/GD#a}wVnY6?[Hk#VQ Lou[f6k+%4A^lqS,_Lb/ A%6 ccp~Wi3 _k̞[[WH'燔NE",VyuDO.~.w["<}㲎^c: ԸLYk0v€C!Wzw(v쭄Y6,Q' 9ņVOh)hS"l蟑B^e <=K* xyӕlQ_ x75](s3 1Ve-pc~T՗Q5#0EЄjtNSË {ţ3fMr7"|8QB.-l8ɘ33mF 36*n4YF7$:jxHӧMN"}WL +%%EnBKDFm{ГH5h/u'Z \Qh| dı[7R=n:_O%3cB ͖YI7*!|d LwTψ!b|lb+L/ޠbj-e[D:ghyTcQgԌ*(Dß}RǥkH1} ]!`_8ȷ=ƏYʚmlo;)o~1]g*o ?@/nۄ=@L/n׆+TK8Wja-b n$ *'P^J"yS\SpRs:vEU𨭋))&8y" s~M)aKNp5{G"%|CNF)} +L_tOAIZ 郡87~=99>aDyѰηSrMDv&E/o׼JIտF5cq7 (o#tnf6(_<NjbT_\Ҷ,r7lݧI}1+`- CԯN)+ 撳oḥij(mpN qQ5<~tbG(3)i4iVhQDsu6L%` LWK6p. jjl(cK2Ѿ:ӗսx>{h  2<A4o njeH Yږ;_AZְ@)B4Tυ &]mN2 nK2A8Pߨ1f(HMN e)Cr/GEKE@Rq)u50Xj&"?OP:[w"tb9j_A1W Jj / %Qjm}턹!T.Ψ݈9e|f:J3gGоx3Θ4INfa5'豄UmȂm˲ҍ4Û6TG1Fv.3НU*L056W5/GH4Hvy]y'ߓW_h%"\0lLi⑪[t^#bFb:tfѹ6LnL=vB~TfZ\^ܵ(YHܞ闵8+h{›@v ҜK{r ]@. iYhY&ʿCPr$X,Nhqhq[1$is;O\{ o]CjU=[?~jGܑDP]6H/b->X\|)d[)qt9}p:يe,Q(ƞ@vW':WhD\{]yXj< $kO-kW As1T/K9tbW rBHmxrg>x:oįjv9}lX*/ԃͥ3p'Z2JWS/r##^)e<&!He-=cv"qsK gy؇dTO!'[=1jFZPZlׂ=ҧqˀ3Xm|9aF c`M޼;OwMp[/-*¤ч]Ce@+T?9M < feu[#̘2C3:hWr8SùF-v+LqI1)l :!R{̲lKc[85u \|HJ<50:Ի}pX%ؕ2u5"ҰlZ2e\Gta{ќ[/9čf}ۉQO\8sd{ֵF5R17'ZeR Jr@ Gc P4<*t{aZ#lŠD( ̠\Νy .iHv͒ybRA&8~2$"=gH|$ n4󢇶QtiglCXr*PVTWn,<:ڭSP9눟Hf(- rb#OM}Ьc5IJfVw&:[ MJU Ӝ;N_)~mC:WB>Cvl_;KnIʸZ_^23=f6n7C92J+#r=Y{9Nl8]mOa|#<BnDWaܧOeRmN=906z^JއEiX3rr\/azi>' DV?g̟5D k%Z`tgj/0ܑ?-׫Wv{duWT a:u}[K.IC& /$f^d-N(w,0 !9})yhG&bթ~Vk|]x씅{tK[LeM=dHsTN/x+UQtKy"?U{}1 P"AzEneN#Z0%Q ][^"OAXw}֌~̥O[v),M,[Z:S%e+āx^Yv1:f<[q$j<]rpUV&ǵ42gjN^&IV(XV+nqʹ;=? ɆLv5@&3lo \7ȺH"Af!~~uki4~XxৡW+{XԝKo`t}DjF /p6h/vgkyF4Z KDp|A/JBS:R8ӏ2dbilZTO A_$h?8}<ƀGE/g]?β$GN6v)MHyb;oܕnTu>e#aaf)+ѡ*#{eYasx|dQԕ9͗0ӾcL*p?d53zpR{A GW햝#mPo64z\`N5{s /V/\n.vEBeQ\se"a%fNx ٜ۬uÀ\x/^/UgPXAݾ 1UNVXT :b\}x/9>)t?З4Jrϊ/%#fJ%_z6@SiB/^)4yj( l6>vat R\'LS CWM aX) $~g]<'TzF4'q-cs˜HMP ]@r("$⳻NuqoPaEt93o{=VXꏈ=ŷ-"2Wct+2Ɗz`兺J~~+Ƣ8G#jJ=I!@.K{< u Qt".;ՋZ(Aߐh8$n ٙkM=@dZO2aޓ&:Oct_AWm1d A)!k1XH"PwzqRr߄t3i^!DZgV淐+g?t 1`n ^.%C*Zvg|G+s6jgzd~LozWYi=]bFpMQw*D8- dKCE Nj+2lg°%o?DVkΎdd_/mA[IQ\Wۺ7$} jR8*rqRj1MMrM!Y #UމA~nT+6R!A>z"5!1$"ҷi'zKpã 34fP3X)Q)?wV25,@u**b%X[㿫HJ\)pf1kX4e~bxn*qt=ͨ& m9M|b'z{b)F9TL=6(T`j?ha}_<.2NoԂ/:kTB+B][.|tJCb^bF1\kT:Y0YcU,MX%{Fp$ͬh~u4MhW/Հ0B'S /EoBjVz&|د.aCڢZ%MW xa;Ff. 9 5֛_@PRUx #  9l  :f/11B^[dWhQݟt+;]Hst~ޯl,󟧗+#t$gp'86O kP;qW%ӈuܾ%I '찇Kyu~%k `M.K\~^b)=o;u9|*]r9;h|L|]:[TUll.UZq.f H"pI \[($w e ~M\ :HX J;zVG ^RGccia۩pN\;mֵlEIW`gЂUYzryB͸aH̝،YnrU?l4X;aCR^\PL̑{ SQ͑>`zv[, ҴiJlH%txWrc7?g/o"1+.I8 /9XIo瑠γz_' P<8kbeVWhV 2I]6#>HмlKx>p+<*/W,|W٠=W8q ShDDwvϏh 5%[_o zty=e[P̅J{:NlV '=Dm}3y/k½rx7uG@%<^Txxķ _`vA `JKGNy&+)6iѲ/w- xxma5,Xxl|BGNm!0/(;w0o GeYY3h:h`: V $rNE4Bgׁ43F% \򙑲 }Dھ==ۋt47VRHkCM {VT:hoj|s8f?/ް~!/}ڃ(OɺB>j5f~[!'[1xN.oo{mih5 qDPX.CKyzbcaBZC M NcX}J iY.dDv '~6T]骊Yg>Rb >r=y&; Yݶm= !]'F"vR/5G_o)& -yl~J= X/du 3Z D#zBrN%׉h[J/`n|[2XtR)e᭫r2_nTmo!]!(<%I0Ŧ!37#"d]CtWIw>#_^-fSBqbW]Q'r҉awb#AdFzJ BJy j(:dn%%cYK\ǦXY>d h1Ң>v8)4F~J~p`.=H W?\?E9Vf ^S<9HjpՒf.؁U}@|8ժtX°Gk~%ђ}a@Vir~ڭ!* ܉@J0sd! Vr5c~?eB͝Ϟ FW;=Bjy?Fz}m9i[τ*vMNvh6. '/eyPO`ڹ^TAXK/:N<.1@R6 D18C$V\"mꔋ .8jQ<|.Nω: `nL%m".{ʠvvWb]JȰ$ S/'IzO̳"M0C%jl3]k ;d@=2JZ˫ hy( !dg[׃F6 t[^`bœ蚈7X мa5l U*@vHT7rWHZL:4DS)} }B0Jt1E?P䍵9gx-$h0}/I&g#`>hf%;KAR5-,^PM`ȟYwt)@r9t>oŏ3zo[!"S~|~YD?rJ&@by !ꚾ2.n.?~c0Q ホPK)g8>QpϸIIwZٺ5j5d-n *9Va2!T;;(FG_iaOLjyc7+לN  g,)LUe'de<*>30kB/ 5]؟S(:HHL }Vta|< *O9DxcRnlOv< #&t< 2TA6$ȨPYthjOy(֡'qPsݜypCPg9s3/hp@h6%mk8 _bH Օ9FZ( sl^,CL@Gg[ٲ.W %6?MY,yiRoݙ=!ڭE wȪ2L^7S\)q%mZy8G?$+%GIoQlz4Sp!GʳuFJ(z":tvƱȥGnÝ 4M׏XΣD6_N?+mKSr;m(.X/Z-rSK,<>~.P}l*B7 MiDNJ,|@jǨ]Mvu7ьO(<\C]FQgq~X_9A;mF(7?4?$Q?T6evfcIr WU63ՋeY  2y& 59f[l}+gV|PޏA*z.ϔ /HU\\KZbUZ Eg5-?I2N˺tC壙qQ}ٔ5RWtjX$ydWLMgkTG Z[a:͐ IxH{H_ ت p+/Zi |1č蒇h%/ԥ ǧ>tSW(>νo!$_պƢS"ϋ;X(ƂtMmx8[ȖW}QCQ$SV'8v)O\N?(iA)ya2)Ք5ΫF{M~| ?濋i=oaDס Z~ `mb ıw|E+?oϏ9LP ^A%PrPLG!VqyRy|Ne;x;Ky̝N=… 6*[nI`\0ɴ-S NAfWjuBӬD#+0Hg;"@;p[|E.U (sn!pJh1GfZ 'jzǏ >B<`U_1HQ D+;nLgW=AMHon<g{EN;T7.*qZ}ig/-c]1H~ 7p7Q<.91$TܜH?I쾦нC{:'Tmَ&=Ѱ'ݾ[o#ط))8DSN&oikTxWuL:1*L2ϢP .no!v0E6ぱ%R=4PcMD}&/l? m q1FL Mm$RBTǧǑb:,eHC7 le +D&5E+IщF#\DU9'E*Ѣ& А|mt4=,MH᩺q}&̗ R]Ft00[}XE3f< ,ryMHf|3((鶂/ 8 %{X1r|zȌZGhc)jerynߤ_ifs1A[7PFw7i9̀m%K-H.Ipv^Rs@-"Gk̔Z d@$GmH$V\Mr16-5{J)]SjTn9~wУ sa:Ppd)]tΎ9AM, Jd6%hW;NjH2:HZd4/d~kӀ.tei >}D_8\襙-G"C鰯*lW*D֨3Is#wReM_ NlK\xw ?:{ncDYrGrF&hί>VtB8A Dϝz@Sq5$r4S;o?2VѨS"jQ.7%{/nvV3+,)2kD^2tےܶ;[)'؁$m2c!~g _aºc\Mv͠Ox=(iq2_ӋX?忕]0hffl:CΈC"dZ7]WI͇J^ }/8 7Ѱik*r40or".U0 %$(K.[͠Vvk˜4DݠyA{?30dHsZ%{}`6nq?`\4-D[֓Q"0l8x- #Gko^~\teR 0ek /]BbZ 7SL5Hl\7 b_7(G=KVsoKY~Z%_XN&9-rX|FB@.jzϕw$ t)m]Q;Rh1JbLsd?+eT/fR:Y4D:MĀo-Dؐ.N-8Plkkr:؍}<6 Dz¡.]mQ*!Jhz&tHK5VncRMJd5~R^[BdzQ\)]=>@Y'?=IqڣuVPVAzo"2s 1:,sn|CL ^6f= v96UZjmE;~V.%DVLImE-^9_]_|?l~.!V;P :3 Yk_*A}${\S2jL1_x <s]k tɊ Z_J~;2a4ʋY&!fR7S$o=1hPx1KJJ//jߵ- vXA~T/EBc E8̯7鋠FE2mgAa01 W;YĊ4u)Q0Q|)8 W "ĕaYwV*\#g>(S 0 .mc\n*Wtr$ǹjP[ÀS WlPD{ # 3ttsmB)mq)zN(6O7mzn?bi"#B0?<+ gs֯cTDzLGfGci ke %r4ox2҄ tt K@/Kx('ʔL()%5H %~uFf5! CjSḩlx39od=x(pRH u=oXa@ !x| .jGAGmOm/Z1ND7›bv9ZzUi~z$"ڒqGnH!Ņ-vZFרXXءS.dD:idlbaV0k0 X,uT tps$8PR3UBW)M8x@&z@V>ueι[r؎yj0 oIFw~Ǜ!&2ZUe~w`Gm=וNqr9VݭgeXj+e {,DƦ3G)w' _yjp@57+dYDk=3U2h/*03#?0cSMd _(@%=6$ם>tLd~!ej`Ko]&B@|ՀPydm\/.rul @•`Y[]:4bD':7^k|?^ _o A  G"nPsr@0OdU4~Z&^*q@lYNewf+vnEpNl L҃j7Dn;qfH)ygPV^:ē"GT .'+q4n?x\e&359;F]5q3|=eހ:><7rYa>Mpv%NVx*􊖩=ڡp+=^8QSA:\o/(-m֭lLt%q ikk ń!w8rÛdzҁ5&-6 <)*xdtmčHǯpY]sD 7&_{$`W F7V1yFet@(L5CSҀ0ڠ_g ~g$T-~ Lrpğ2z8P]&p6S̋n \^""E^ f {txh)91jo |h)s8@R`VN\_79p@IPԹOgs'\dp)&Fe;3EWmbZSG=naʞ(2hNH)GL!/3cTg-? zz\f2ZJzeUUW5[+lC*0)CURPei:}`Zn'#hGKea4Wq?*fneW buѿ)=sֈԵi_ʠZ ; %.ƕ5pV? QȬQ)(bR9_HwR̦ Hڛ^@6K3S,o$jSn%@%0>.ot">l`x%!/DxEijaf: kJP 63Iy,Gs~=it1we3Wl1VU U8=6mn[cn_ q BSԐ_*x=צo B_"! h 'Gz58'20՟KNq(!8x`kDyh'iA:.dn1j-zBe_o 0s# fWW -1+5ў ɻNVToCybbk(d5.]3>mt}ӑ_|f;-|U/eiA@JR$6ukSp'+CA."U "bL!&#ۘݧ` ({{kM[C$=~ |DRaTJVc0H0VC}QGZq_]ofH.tюg)ȣ=n 6jNw#X1Y*XgxV7pCX^-T+/Bk$^$} " Pݥk1=8m߆Ņ7V%:'1瞚^bw7*f@A4+Fj%/<|1&zc!VxihCf4F?E2j=D ԇϥO8fG٨B`0ܙ,@̭b~z/ sVXP꿞ȑ-TS0iZ&%?\&bᬹޮr:ߎdpT)uRKOp=܀Wu{18kB= uBc-L4֪ۑ}PIj ʛ&{0`ODHHT6ۑ& [%j$Ϳ %æIiz܀topۍ!D2VW54yLsO`+skmm.8U +NbY{.#;!>`5sl" dR.x)D1Թ,e4pՈZnگ&~II>PAa?MѤ4 ^1[`lu20`ozfsfJyv@OwҏKOq 2BXNQSfߛEBc*2aGaz6IpU")quӋ &a)?aHٵb Zo @: (B]*B *yV{$CËW;*aC)OIv9az%+˺K33Haux<z5[T*/u]0󵸚2!E\qqbvJ*Ļw+ 9fkJ'UwpA̋<'LvU cgi6ޏT%|f0,,HUыe5I-˟$6bYWZ*8@d*xK6rrtB=vY\.]UgUx\BPNdٰ  )%z ACl,ShhHG:i\;#S~?+`U -NxJԆk}c?<ޯ@GZ9&j92ƨ]Y$FO!FCAxhPU%iqɏ|z ,*o6Kɓfv(Sxuɛc,l?3}G1?4>۾LB4pO8 Z"╻=Ż-S.gayNdœR_́/̆ >!(mbo'܋eri `E:#bCa)\.wes1>l0"lҀcvԴ(=m!9:m{6pPeb¨9 !@ Q楳s0o<g,7,V;P=}tMY9{'KqORKn$0|*{m̊Q*sL:qXACEU&EUY"9`#9,&/cVȗ?;EݽLQI4@^mY\Y^V=sbRT|ymGeS5OHǺ{is;m,x{)5 I&2bogRQPz{4v G`g@4:DfEn рC«lh/>Pڮ%c?~9NILbP*Dv 3Zl{''zT=m3U2b6ZI{@xVi `RYM4{r1Ivf'` ;_HTJ%U3SIzW6./C2 QvQ_(z^=)Yx!#ou}a[M!h1hLOS}=5.- 6|VLQ)aJų7y]+"ET2~meih"<'o ;ZfH7 ~ӱ*R6o8u8$T4l`VC<=C^J;V4ljr{rқE6rK$ Il۽ƚ8Ep4J -cSZr{FIx7zOs6M C~gd'Yv52> Sxr3,3rPbQY'eR#HVt9^=w"r2/tTU}NvxIF+`xvS^ E\|GM 1NWQH]H~a*ڢ[]SKoo<`}6ar|~TH9 Y{l*}^qPJbġ2)= tkO˸X`Gb{:*Ep"v#hI jn>*_2 gl_xw.V:wtMzzj8f1{% 5gP_uXnsm#T2F0YK0BvfJQ&Hh蓝`F)٫]Ж:j.+bf)Be}30y#@ G]YGE+'|vǜ-`,]6αK4F 5$Ԭs }2j8qɵr1󷢩&OjA!=h!- Īr8 16JC.vy1ZaogB[T1|]0qh,RA[y[z`D3m$j}y;.#-{f%k6PG+oa:Oq:x`r4SlӠ.QsW0s`' iI@P2Uv Q];ǡF3ip._M3ù'$"bVmSOjaBI/Eց,0708tCwJ:9Gq!^d[R$a' 3+R ^͕񖫣gydN BҮ^vViK#] Mm [>(E3(&_[)vhV !uoo0G:U #c,&Z3;^H8P3]ВH 4$ ahqs #EWR sұ?YV~L2]jHTݤX|+BxPHߋE$ 4IώzIl:/ܐX$`,7r7_rKhۗ\W4\hW2`:1a--zEU€ -#]/ ?QC؋q=6 s8^[ )v4aiڗ`3Nzr÷m(pѲ|Y^߼Z}@5@0h'Ś_=bI|Q\`5sVSIњ& a\0s/~ǹ{"yH+pfȲDB%d]c YT}OSB€a/g0<Ӱ5u>uk' kmwJɔ_ImzY;W |[yhX `xb\WmGApS<#PA6ߵƍZG\?UrzͬJXռOq=Iq./E9S=pΟAm7i*Qm64hãݰ'cgaVIܝ|;n^[HQ+^NA}b/IQO wà~?bgEE$'ٰ _i\*oVh_F <_ $(S5/$t(O38dGKX,dVx -{IeB^Vf1V.cQ`3}IHG؈pr>9|ZY+,].ǁ hWm Ri7ĈW0s= ;iȾۑe]KaЄ|)"(#;4oQ_O0'.|I}[ߘlS@ GzGl[B{F "t4"AbPLdHH "jsG@'?IZԯk( jÈ MOɌd" a}IFo-Ty-`\b6h{\:%6ԽmI "hkI3>t`"Z&,qƕ$;Uɞ>[/&GAYR i Jˀ'۠…JdlfxfJ8#,*lrYL[؞MMMS YQy#ENrGgĂiڲxj/#_ p9~xBXT :#V#nܶX ]9ײ`r]TL,f#@r*㿚< e1o<J ͨ}Cu0F;Ϣ9q-wrļajW ];_*1tQFT+XH?U.m,FIzU<|yb.WMHVãDdV´|)(=j-&F|`xԥpܲ)i˾0,ϔ:s֞*W`+hj7 <?(ˬzl{m*:wL= _~g"Y8Iiȓ_/&)2 0G rqXJ笁Gf_ں+o~Vxpԣ檵*dcU⊠TF5)yYnU': ~jUgDž(F.1sF48i4l3wtU$^+>XdJaZhCDY$dݾ%:zI ACr',"WxCuoCbw:{|rulm%U n5b'$$ %F ͺe+T3r|]@|'mX ؙ˾%M)Û]t6JD/4%PB@nm W?OuAO&",Bj?f &Lm#iVB  ̃H!qI#+i9y3…%q32p Tݽ#Tc̄6]4BkY`ǖgs"hh:@@{!‡JBꊏ'{3y*#W?<3Є xiySoIQ/ :Wv(tW˒$ 6ŠL #Ū*'%j@u:U@ W6<(RUA2rSaj_Q3= FX :O+(sᕟq$uǩ\ )_ef s2c[l1  ']?ɎMhz=n2zG?yt%UwPKfK|_=0sB~Mw4?헡W?a?a_ !8E!xh-5L&j]Lnc *K1$A\ԃhwwJsd׌ Ι1bN_njYkQϠ}N4B&9̃HMrlyĮXRaJIU9|UO LK90~4dn$d.U^ڟ24u8g:ţ7pHgmYBOrw$w2&F>D0 _JDVUJjf_q*-B6p5r4̏Ij,ߟn%M$;Pځ:'xSl+vT?3ihل][JזC[z2҆d0H~{"0N9)4(ܓƞV#FAU JkLíq8,$|G΋O-idF/^,Qn-mTqعQ|Χb J@Cgpf#crz~ O]s>E[8Wg|t4M o؎s-~4RzW3 tڳNu\g=wzD]w"+&<o*>ȱ|@u7e@1sxf2Nz\~?/`o%&"{|Sr3ە7(Q_}`B_/BDI JE" 7]L5^5>_ CY&[OZDp԰ лP}@-_,3Ep4݇W' fŒtV( D -4C<vIe5)-N.QOoEW|T@S,uU6-]f!) "Y0>'f.'r'Ѝ874<;r#FQpid㣌d-u{Uc&Y#OD,fXi٤U7Իp^tӵLN:l4XXl+<^#%Ba?\}y4d&1Xvo}7.]v4rC!zbȌM4${W&@Uz8wMTZ&;5 o0`zԕp#?_pF+n]m;ۅXfLdD&D;/Qȝo8˦.5#[UJ@\%\ PO|y k5XI+ԇ)/)7 :dbm1,5} O2 6NpU I|l,wφlF;CZk4\NE]/Ìyh\G=mLf\U"= @(3wfSGt4 SL~,{\R[ Įwlx>r?H `F/aN{1$].r7i&zcd5W[~&zu4>*BnQyV1 @yqƯs$!)]I= ehϞ%ݐjFO*42`Uvc)ʘLz,c1זд&HCj 0:Ƽ`BW_O("*(4# ?qV x1l+ &Z+luRSB@lP-*'ڣX N 89.iÞCRyVqPZSO69G@ۯd*(Po DP_V_*tu^66X>x頊/ o̟뙓`>6=r%C7 ^8 h 5 mp겺SfgrX:b9#ZeTOa8(ݮi$nxQS[Gǖ mɱ0-1 F-A&,8]Pr9`%ĬWYއ#%^τbӭ Cs;`k5 az*FwS\|,ypMDi&͟Ӊ-j&"a[gC".k2NCs2{=+z#Xk87vdksQBt{2ݧWA]Vub&A1jVy> _?bRnJhHNJ7(zQb 0-<|E f `(m>v 3 ӽ|f*0rUlFۆF6 `k}d4\9r@ Dmnj @j#fT@ h3#$<ɡ.A&kR,VSBofoZhcrJ:qdB7,3B۪z0SIy=?TYsaWkD<43tYo|1~sh.{\ iPxq݅Sɥ Xru#;CpG@ bĴ {u*9"bcܨq3Ixcu%Xxn1M& s+rIJy;2z1xE'ƭi^c&:ZYl ofC_Uw@ZS"σ".fY7T(@ҙ*&ߣ *gxyσ=Fb=wS޷@-Ed"x?+HZw}7-NX.MfTEG9DR&I3캹vo&ǚb K+ n7ҴIgN=@T.'5/}f)"~ /-U.RQݐ g2RӰ@YƩ%fu5*R ^OI^EĄvAz,h@Ȯ3REN{.KDEDd5XĎ_AuCOʡa.ORu֍3k¢kPTPGǴڽJ\Œ-I 4͵#`59c%j0)y^@ZZ.n,o0Ҿ\)_WsXGb!*זd/x6&>~H׉dS7[m,p}#_ZمFuhF,BtP!YY hMF J>{/0tI]#u3ȼܪ{ٷf+|@cvLuf1a~22F2/(Dk@>J!mYwncՎHNDjS8S.|fS`ђ[֚*!] gB\QbD1DBތ(RQ"; !՚6vb#i>.?g3+Q(q;oa ':_ENOP͐zst5nVȌ #8YZ5{*_M'[z k:j @^:z^8i'g HLmCm3n{t.{-X2,eKj@bvO,uS[ڣw|%'xGb+P\OP~Gk<&IdR'mJ4֪F}Y ZVҠ|3hS5H!' e.]Ƒ Q\ 5}!k_}<B%OFVC|UL8joF-)[ơ;9S"V6lBl / !A!9>N~7})%՛w_(D؏lP4Lו! XDf`:J :b:0+:p ;ZJv2ƒc`AnDCU-?;2pc4P޺ ",Z5Oo }="2+#Q%긅d'5)@|){. =wa0V^JXcH*Tfs7ў26A^tO\!x(\MvIf_3  >mT5?c}#O]a I0((;HoK^ޮD eO);w Li:_-v=AxR̚F8l SSUƞ<ƒ%iC~7oP `j!:-\]{Q右G_ۭᶛNr۞{=u1<Ժ۫z-} ]Kv%(]tz5xԙί߆%حmA7ۘu/s#^3JMv,XhL^WӯbG< rIJye"#`q%V#v&JIv~!RC:a,834q v!)װ=-h`RqG׏ͥQ,pn1BP]Ӯ}67o M2 "5҈5&:0/Bqm,ўu}ƅ~@:H rNșʳbڨGhssh#uN{ HGy>N3+[.p, \/⺔4eDEeMVmD U2zBfeW 8ah 9 e!JUZMR;i<wI4s6E) /9yY;[وE<+#_kMJ*@фT?uI ><7UqEqONdp;e6ͽj^<CDtLz7`Xvb)YתnaՊ8sT[@>%gs dO?[->O'f}!g{Sw;jz^i{[4-v#(;FJ\_-03nh`KjRUn5V85]hSh!YxSniʐ4Z鷍P"|'q`'}#NޯwD|1 f>1֍j:c46H ^NYukd~8W1^ [@`_-$@3hz0$gڶD;wTO/UZTfte1Ieq^l*n틧lr-a,D(eDӪoz^^&8oͫ{9;;Ra Wsv-7ws0ןk5 n16wkQ͡{kJUPќht-]ƹrG ^g$/,$*p_ $ݰxa&h?.\0~S{aL6O֛͎jtӜHIyj a^/:M!J {:ɟC)RLn?FvIzo׀fR^x}BɞK`ep#4o.h6ŧ'f$,9@~’ۀXWa?$ie|"6!lnu6QDoq6̰`4jBd|C: nV#^q7;=AKPOmy| L]o<֍2+Xatq+W"aR/*HVjM ,;I vj)u,-K(kP$P8Dmvbڀ`m*wZG?A 9]+8d[=tV%K̪@NZ'abڶe$_SǟI`+$,c@>Հ.VRĠa,5Zr+S̆ 'UM9*ĺ4h{UՄE3_n˞4>'{.]x8WxRȂS] 2^OE&ܥ\U`|vsG : |&1FlwU)& TOcz/daz=+!rSjRL^Uyr^xܸx`0qzntT2Ƿh#Zg)\pgE=UxIH8:NvH=uWȚw r&= Id݁ Df f'/{!ϽYIT*NaEw ֥CH,u0&zIqE2UX4fev#v@돜eTߎ_uZ;&s$<&md<<հ>y^‹D \bGdn+K N޻Aar x5Lj>ΨM,K Ж+ᅰdA@C"v\(DYDbZԪmsfY1m{;~-vqL|l5HJ5^"̓HaYvGǠ$ pyty=r29/iҞrׇ\.Co/A@U f**Clm+m& d.i³Gg2r<|gL¤Q <(M?J)?9܆< *k@3]+^zJxPZ*{&˕'m“ŪiغlC-t'Q;+ OL^TFC|ENH h7l#AMe5S@Zh1ጺuTqV<2ЮBA^Eยt{ D;P=l/ae.Vaq퐈es]|,_cK.iaYB@ab9YZ,bq!%yE6U";CS9-EidQMFSC F:]H2hz^eզ'2OX50eh(/J@ f^>'sR'O/bG^M:Te|u'Bb|bk6a󚟦A %i,1"WbsExS+{6mHj ÖߌQ&k(h@s=Ɉ%_c(QCMdG\Tw\yz,珅w B0j-hXFlZpÚ(k_.Ǩ8#}BbdO^fvb.aRu(juP( FWMl=QvLqtsUKEѴCAtp䢐I KĬ6Wx^L3/O.5f4~jC}r8y ! Mq(,_ZaZzԿD18p:F؍1l^gH>>vq i*FѺ7%+kGܲc|7(jbXJ> "*vikq.^4 P M-x7KOţ) iL똥= by Gc߈0)W?6c76L&wm!?FA єS Jӧ\gɺJ 0)6(_7rNqzoՉ }0XyQc-*-vPBP@v|~T]Z~x*0ao Jw<7ݚ: @)b(kūS^q댻{cs7h^,98`Oi&Mn51a6|>>ԇFX/ZP Ó`n.ѕ8͝x*V)=D~ VGE,0^)/js?ϻFg)yQܾay?"QؕXMO0 xo]:/b `!e{r&ts8;LƠ߀2x(;o{;{@5?ΖѭS ,{LJAV FO% Tns?x J{TI*8FsY/TAv(ג@"o~WZ7鑣~]fM#97CN)F욤n')$nkJW!Vr@HBcAn\yts!T7Us.uFש{tqeѩp*l8pwIes-%:Im87=4pv3}ZB??_3JuLK1`I ^#힥VFU1%x1!kԵ!F]f$-X`N:ݞ%4g{GER!~L}W :N|&$x'v+0xl`5$@$Xqht >Ț3XlAOU:g_ܚps.aKO舗 ٴ 5v:@iBnۭYRGE#χJOgd̉ fesi2BkM%zr6w=Na_c>;bgMVVύF3x/M bRURtfl3UL-Ei@WŘ%0Sӫݧ04 GԊQ`'/ #Ugv\+YZ}sXu:H=@1J1wUk$be,<%V-Y..eTu8UqCoj?Վ\rTJ1L!:a2_;4[r(z&]E%b \2!ng;ԋe.T^D 0C+^ZAr\sMJ#?E K?2yMIJ35r'^Dj̖l]TI Smf@]wL CH,NQfD1ss-2 OY)\AK;Ha%3v5-<=[$g}· 81F)gwe/1lm(Br{a@܉.ҵh5`|\1{5EEN]Fsw"X<>;P5?q' \wk/oGSCG(:bP3q8 l)OAVW Af 3od4_-Z5Y,9_S%:>|-s|pn$%6o?k^@A Mdao>FZI$A˞F{ؖc-ڪc TQSgOрP-K\֨>t%,ijtbė+BpI} 8\gN j?@A',>!/nln{;Œ&5Ji/bp%t)YJbÕ<WS[w|<9cטz"h=/L+0A{$G܋۽Ct<|0GFE׬6 mRKLG4l `s= Y~GDd *mlY-3_%R 4p HH @`R,P$Z|w >:w{p|jj/ş^E]'L4$X(S^2F2QiSr/U7`nS6ĩ o{=eם Xp{T`CM"wv{\7M%x6sL (bi6:2́Ad q:~ޯPVb8 NL7'n6溫xq]ߧA;߶ [4-9 MNyt=-J~>enÂm?:b`vX'߼={EôC~=`'̫5dýFo¦%ULRTss$C+`ɷJP H.`jO3?xtYMHpl> J]xV18\XV1htnzHL%IiS&BF#-Ox2[*/FtDcab~?y\ŕ$eXW ҊV`P:I5W)*O B&AetN}q@ Ri;AںYVg _(u= dSAX{H~1#PQ8ܷR>Xm ~{b-W#%}$Nz@)FŎ;7q[hu@E[CIx!%ݙG? iCVh{m`ݝxߨ3!+T6Mw%0$+a:d]wȤ6:n"c06 Eoo(C#a%q=}uDzGlKMLѼop gEbmG>`Rh6JHUO6,:V΍줺"`b<1Vf-Ū8S<×}kx⒋L,Eva[yҙVS3q,"9,n9PRX2PolN-} Ǐpg^Ey%?}џ"T/?ĠJ?00|9tC}\bڸcW"0Ji$i]ȶ>y~"L9me;'-x=9ַzfI)eD{K9 A #壱:Y8x^rVǬúddqT X$("Ei\ $2T`G4>A[ 'c mBlK.`IoQ4O"R S ,6aMQ8FhWy CCG7p ݢJUsOIi g$4:-5dq<#3PQδ跾w ~lf>x>pur) e뤾{Yj'gܔv{(_SyT/]5jvEQso5gmAGVvcd7RMp/ƢP4;/UeΒd]%ǀe²"T%;QL#ݯ),,k =W#c,imSO0c< gDm0eGzC>'jK?;SR< R(%B߼HDJE{z,]502*UD=.;#Q]ޣDzD$>0S+~D=>qF3ap?R&FM`3#3@9W p6#f%l$X >Id![:Q#9sm91/'B" O"A5G<}I3^\]#V-foLeo `\5CczNFd@[^9ߥ *5,Z8T+0{h 8OW*RUVXXΑ1B&O,TGN~"mR*t8NokhOѡK*-8=9ഠ꣫Vܾq+L.&Hj6J}i q0su}<65;cSM|;n^@Ug22Ͼ` N^߬{I@/SÛɑ]Z 'j̶aL*_S:9$kzOx"uG;a5=`?t5"Y{DDэ6PVTZ!A;EO1} Ӊ"2KB?,947ygb̿mEkdOx6 >4]Dw*3)̱l˿7Ay #Z̗Ya^ύRR<[8̸՞F KУKyψ]z.w-vVnaY`/1!A~,u1j%fK⽧k& SAFwX2ynؠ9BFVgU'a 0ORg{@y+'\DiM ˿vXqxLz{e;Xx`|)=g"SHXM~'b=w|#Z̞ѯ2}f+/OK+>tO-}6 KA~8vAvT2%M#4^i0>d .@'W&z8Ca|D'V h]y-=R2ʳ&ZH(:?oEܷ6ZJoE/TY v*ftbm B𨑇 :v6.zԻEߤ٢w׏$d,SmGbG;]eH6g'DH%]Ir [ bo6έQ}g"6ڗG¤A^j%+x8Ӏj&!솮e^ 9+RAs&4<5Z'OxoO׺9̔lڹvP?/$Vp^:i@fV\hܵu>tiCm4r~ʰ]T+[' YPxAq_u`!feu3577c1:6a[H?3"T*ܧfoegyD'Iږ[tLdޯqWtjEm4/oHeف6&udmLdY!&{BŞrKo+|;[L 4|@룟Q/ +W.Z%".f()o VDŽIȃapem[YiW/wY>J}\Iг14=6 c֗1-eȁStD0z(!B4Z2 )/HoxKqk>{L-Cwnr6yJ!W_i%`>Wb)p:яL HJꤲ~x:Z:߅ְ6I5F4Кw㨑{vyfS[qH1LX4c됔-,(Ug`HZ}~°KΗМ{X\=PM?q~bA^Բ!n8O 5fM34Jͦn 7v1GL o$2/aIG0Dʜ e"hZ[A)q }Rſ I/a#*^R8]Tb pnRϨoy<ǂ3YZԶPN##/O_:F4i؏F\'[: 5d{0z-ZyRJ4 ̯5ɱK /[R䒥d,Ŗ`DFIQf02PX3c ^t= \o$|ͫ2ᄑ GX+(x^ɨY<mdLƹ;Eayhou4O:*KųtEX+I BiKQߴ㇂I"bu7xU0w udHe$8RW!ШRMB('LLyg+6ηmX\2)i*̔G,+" $R<2(gm3 4Jaz 4h?BP=Hk-4ztfNH0vQ .H!,3abGcgqlydsΌ/ Q,.[p>wNM ! ${YA?H rTRQ L̰{i "׍^$'4Yhnr=Ñ^ 01ި HB hkD{*zW.h~QC~`4g--;+xY6_F4-VPn*4 It"Pj%֝d,` qjζ`!9FVgd{AȮx*!n͙0vƢX#M$mꦱt:åS>=> 5h'ޯR(2C-K ѱσ_bWK 7DW["eA0LM%gDhK_ H o{lUʰ0QpfUN *KZ0NGtE_w);N/$>+ywwsXy4$ݛ0<y>=CcQ@YZlatticeExtra/data/USCancerRates.rda0000644000176200001440000015416313574414652016773 0ustar liggesusersBZh91AY&SYDmm}}mmmmommmmmm$  I {AB{RU((DBRP HJ7ZlL_Yٴl+Zȅ((Hl-(((V*":ٚo>BD(Tk RBBҨE!U**UR*D(TAJ$EUR*(H IRRE>U HQ TґNhjD[T"*pr[ 6Z`1\D`z: 4DJ;cK`o |C cq_X㹇e-r׮(X^76ٹyoo#2ֲĶ5:8,ol"bFwW'}c-MsCZ8_[+.ak";]|mV4F+KNKSʓ`=sf#ܫjjQXÌap|@j\a497/vSo[>lW7{kܙaݻa5g\Zڴ;f1AgO]fq8wگ5$v#mZPXSoYLqWy:sx&+1*53#IxXrfi~W'<5svrwMR]u|l\Ui{|Ԏ{Voeߛ8d;mzj霫;e65 67{cxzWe&Srڪ#r;7&tz],_,ە}f#~vS .-[\[s:7#]0r-0.۪APv~7bfC^t ?&+mӒoy dyvM`kֽ5vG_ko;:jtvLnݯ\?Z󉩗[cG[sQL-ǎ#ev.=o=笥x='=m%ݗ-x[\y"S!sG.p+{嘟>ؽmҘfñ?3 0ZrgwRԦù m+]|{{?F]pXNc:i|ٵ*$zcz76Zrе*T^u=KitKHXOJع.-]Q˷d')G[{]ut \}Ѻmܪ~xMtj!ݥ}za?V_{<Ŗa-gMǨΘ8޿=Ox3̊sjI7~CKku=0?iqv?2g 8;k}glT}^l@- .TFTmAlZmڊ8Z-z5ȽU*@*f E+DQT&E(BfLizw@8YQ](\WD* U(th J|DЉ>PH X|h |JI jZ& QK>r(|n DTܪ8OMD^u"O )3A>ECkvfw9D5`@AS!2ؔZ]q|YPgҐ,9T5@|9s틚M YV".kKֿmnxv$0HY0H84ODĨ)yƦ?u:9)v5b*=oxWP(rZ6 kb7hBm$ؐYv%fF 6)4RӑVe^Kr*1" zƓJ軯'1牮L+Mž&6;9Nc*ؑIUlf\m TF!hІ̝5]57rΖ&a"*>0fOUAMlgnWS`;W5B{4/qژ^K{2_PȽ{6".="{/=`|7ƥ̎eej4X*T=>y>"dEV Q2 K"4Ѡb68kkxNv_Ou9˾%|M(bqj'lX-{^2Ar>o*(VX`35{SZNX氀^3x*+4#B<֕J>a* Ke{ԃIs2& y׼5קU6Ü!2;\ 5;aܙi]я@\UYE$@I$9Vx#Ȍ>qJajG y[ cmʫ7¡hI~7c- XЋ Rr=|UQ8h &% [xRO /u #> ]2\u,,xb]%Jڥ^!&wiG(t16ņ/]MjdyGE]WGET@JUlm3*KVK%{gHt_νFIhc.~jZ*&:W 5L*m;`;AAK1=m.jd5>]faXmZy|v%iy&ýû^O:6 ζP){.enj`M͓5lecC{߳C`@616>8A5 Glx(7k+Z$P2 dB]*$YHO큢E|}z`yg@M-L5Ycʷsʵz$;L|FO*{ѬyRcHM6h/FZ..K=L`,svn\sRJ2ΎZ֘e$X_4,e`$훸R=ےY0 FޱqXhq\zy6e]y j167]3np`oןя# Ab=43T7DG8h= }<(`zmKV23zZm!A:`q|ߦg9}^uϝ g ױhw.L!%%A`cs_z:N$oB!*!zU)j%BΛ:>YUg*9}f,/n8i9+(0B~ɒA!zm_cxCc8 =!`e`S4JTq=E6 Ytp }z^8K zB!C<:gh']>[8 FOZ:f3ĽɚR6ʲne3sfY, dUQTTGCvwmjLÈе MJҸL: CZF`ѩef5ZYjPBEm4lŵU]4Z@:)k6 Ta$u:Zju5Mg[1cfD3ThXk[LuS&Cs$2Aiiq9SX+FfTeٙDjZZiTh5ZCjRPk26Xش574r3V$MuA61RatFsb;qZۖ].r*ȫUMt!NkVmJ!sLuslX5-+s"h֘Yui Ӵbً5vjN-\sAbZjjVvfLLٮt:3]%:5s9F&U,g.0\µ`N56mVNu U0NѥL$L6jݙ1n#UUV fF0լZ4ML晅fѴYƕZ K,W*+QZխ4 G%.VdVffdkN4eekXT3!fTDε2MX.-.k5bj(ќ2;05Z٭#rb'TfcɆYimې3%ҶݥZ,VQ̬&6Efkg*Ⱥ .eTUʪjCD2Qe,; 5Y, ڵ--:X5k+N:Z卆,*Ҷl4L)W#%e4!4f&4VkTcF뜝 9IJ]J\XieM]jUW`2fӖZ3D[훋Zq9le76Xum;fPbefVciZtt֐VYX2YRiWeF\Z&TVtu XL֛l"cYI5#,-3C&4i tVvl*eիT+,i[Z-$ٳLZLZ$kUDMjujV2TULnaK"؍W6#.jr &uJlVɌ,̪ԜtVf[emG-HkiiY2NlVdKY8JfhHk#Lmlv+[0$fAkRl- ZDYa4huB\V5fms;R9N5`cU9ceflahij%1me8m:R5YQUYiֶ34LfD[ n&ƗkiZiL"kb-tՈ'39]Ζa5c,U8X:ek,.eeI+K8rnZڥ&Z25GV&McPй&$ͦh & -c1HVRk4(eh&;UKQ9PhԂcefbӨY\0֚cFWJEWZVeZkL]YM2hbZ٢aibXM@թYuJe·VUm\&#]n0HZөXekuڬG9EZJa7-vZ6g2Qѳ2rs.Ԯ٦YRv5V͓&VȌ'JW6 EkcQR"XUllZ8XiȺ[5if5+I"tmc+Z46ZCT&.X:V4uR9M&QjXYYfVYVZsJu)&ㅨ2sZmr% hTW3UZH*hLk-fVlI̙eѳfiv8fUVYir9GZ)Xփ]+irkq6aKk&aWj0%i\2ghbL[\Ε,S16GYI֘Vlʭ1sZVtgXU%ًibɸ2`[5IY[lIe%mg]r qȴvkNZsXueXM;K&ضYtZf%AKKL]KDfE.t,aL͆ej-j5lfm] *)fl-VM")`WG2kkSnj$[rjZgnʵU)rS3C*iZդ J(cJ;KIԓXɦr5iuWYC5E(Δ֤lV*S,eU j@Vɵi0Km8Y;Yԭ8bYjS&ve*Αi8;bѷWVcafk\UbikU+ ,e5njcӬ+hNq쳳gf3-n:XJ4h -hFֵ4 3%i+5rhBͶ6T'V]jaf8NBc#!7CoD-! r76t* 3;3*L:E8 \Yt6uUΕdR֖kuWN*fkDebI+,VbɚV5MX**b’KfnXdr̎j6-MbkgXrؙ17ܐ /x US W ?21f|)W:Rg͆b>Ĕ}FLXYэpQw"8դu}" FB)M;7'>RNtn9wBB\6,  @YeY/ߺhxxwǗ)|8{ŅM(;!gTPw-3R[gj/Wȝ窚K^{"~LX8 Mzx?w;ӻ ,YA\\]jzGBHyzf5D9@| A Vh%P3c;h3mcHF"3se|,EF60Bo $(䥳C,.`LLg)LhoԽI/;BmE*U5M섯l`/OgG֏tX~pQH; )j<9`u<'_G2޿S {MsVR|^ @gcXK̘RqXgA, chX'1H=C@IL3I! P6q[V[{&@#v:K8!fDr77͹[w(5Rь;ĨE@U/zYa>u1kv㿷I!m͍Cvݭ5q첰,o~}p?#qbr{IUCQ?+`}cE r"? WN !'zIBc0UqVy@`RBg*oO@mx 7e子#lr(bMIfhVYJC$Ú-O %T}#BYM [S}QŎvN3}wKtæ,Ĭv-0OFȧ[jZCY4(S4e$.i;~T"ҏļh-Z2B0&e{9E39kYۘ.Ap>F9>gI{6mpr9Tuk(/u#A?=ƽiXjGԣvkF9ta;߼DVwW4sB K-uwiDjg慅QzLSsKxN*Ȋey^"0 e63:Ę,SÇZ)9pI.T6f D|mJY ݲXR7i7X* mϣnC8:wƈj|ǐgM"OZ=_ gS+ONKgN˛4,XP 3C?fel{?vO_g?/}kniT6 ̲!ŃM e[ȨC Q#sS͵GSRvCZrC{įcsa P3eR_>1h`I rzCT,>͙}C4Fԝ֯y+&k9br)^6[Q{7òcIfM vzƷkli{< m)R͙ 7ɮ+H\B?2xv>ADz~Ja|L~,LzSF>K;l;aVej7Y6ᖸYi|cՈ>VOM.F,'X']+F͆~:py.bͶuO"{!5vutan5hXϼEJD4b=ͤyNZNSr$Xem( E7Bor*),Q댂 ;"j[ i1d:oxTջ’ '%kLPٌKbf{O]ٛP"1ڨkhWsb q醥醵7^hR-# [ ~W`{p_ʑ,-JY6bђ0^RXM,o^,>Zn(#i~O4}vaG^o0sm6xAl5Rxfx.sai镖 0U fFG{5:gKS+g,52ޓ)#!)i}wmBJM׻ù.W>F~6%`nZngn}Cd-ms1>ږm YHaefXhgaY`U3[̳(3M_WT&i{5iݬ="4=$O% mL-hmIC(|HXVQW:T2 Hb9ܪT$9B)*Z.XNK"!\bY@1'"R3Yfol6 mbܪ ֑sd#f(Q8PT00f!uRc(IfO%Ecme[܌|>h\Hn*K[f62 SXzL *,>zfʩq0FN\@W#paYo:R8FNe4. zI!}ҙ]e6 ǜ"`gW3i\O>O/%%@ .|aQhTd2$- q"ϋd.f-mЉ rJCx 4Y@|ӈ+[ ̲}h"qbY`!K$#]%I%՗rIm`qQ*w#ɡ {\xS-{asq+8/ !Gi+1Ib5pf J|cY0fn[s,1r??!c( I1)K^ˎẌ9P"nJ3 C=}I~T^UVc>%)|gSi㊧Q W>HBF NEfՕιekHZt Ԭ2Va?kMLeWNd\Eׇ|ثjo _\d҈ h:D>/ꊩe5*56!eh@~N[, nUZdeWﰿVuݶ&F]cV>[^+Pav';DxĿżX"O]iQ,!fEb0| C7#)IًtfKȔ1D95L>8LXa4Y(hSΔ 4hEf:ί.F-kѱ>v AL _3"Yc҆/mI$I9"PICȖwXSA6S0 1LxPL$jNCIbE9 P@ qQl".@ M SD0DD% !$`vv@ RG]m ;K-'u庺@4TtHHʆnW xMGQ @Q&{-י>#9tON[Lݰ6!$#d'9b$ BRlSE9,2 'Dvw ̦W|/ ;i`v A8p;$x `Ҕ鼢9k/0)ĂN$a NYr('>Ip2+@I'@b-XH^9B@!$嬈"J0 !@Qt˒.݅BE"0$@1q> 4RvAϕ ̘ K mdBNA`%ݨc))b%$@9$Cʃ۵UC/ Q%M] 2@J0yObC[ u-u࢙"OZ |Mwl8L4͘2ȃb102v$;/t0FJ 藬>p[E|F6\BJj^3$'g.33E˵@$8pE,B")P|vL0+2A!e!9H&)όuO\%B$dhh6d @!MIH5Na1S6Yh%&RrƉ  X #9*3)xI(?WeRi0%9(U0&)xSӦ*xfN;UIHFpF7y&Ђ\!wO,\e$NP>$daENdaPe!y &∦+1/ !ӀHLS"C"fܟ.rk/իZh6@UE` "(,[AHFRLpت(MI$eTH(~{zy?i= g܀gWWB.H|o5Q8J|L52 Qa Խ?7dM1A2 N;auo96V?-[GcQ4q61&p݇* TwYyڊ[V/}+̜M]cCYȲ;םvgX1K .#{îSx!lD gAjvδXP_ܓVV4d7VkcR165cTg:΅,sUoz{ Q43 SPwThk!K7y>-J1Tdí!KyF wV 5{KX|cY-jKsL#c۸WwKvl^7%ޞ[{Ʒk]ƩZ6}>aZց}Ji(B>_x=vI[olj4iHNr f*S)Fԉ[ZP#\槱WwQ>t2ƁCҊQ Aɉ=&YE[ͺ%ɱ=B}}[5yjct[s1moɼQ׬eX-)ԩKQF9Q 5Sw_*BPylBuomG`w; /Qס)}M|}."٤F1k8Fs^mm`qw屯PY̧Vo:0hlzL0 z ukZ :6ZzZR1ma",'+cimJҗT:d"*/+5p.9|bdi74#kZs.֓`Ύ/ީ^*KҨ+Q_>lkˉs2$J ͚n\]k1]mqڎC|=Q[dF>Dމ5q[ӭ%v}ZP۔-תWTãu 8'^Pv?n߳:;rٕۜlq;~ v%j>y]|{.Y[9ՀY!>.w#З.jTjy.D3=a[mn+v|"] zs;N]CWQlpa;,/$uK.>g<wGmk2-ɻ_LɩKMgʼɴtQzFhTMp[Cn:8Unr roM9m{vۣb\sڙiϣl^|v H]q.9^Gf՝999I7nH<#+dp۶]c{,k̴6庞;CBI ZIK<{d#ӟ-yt!rmӯ)ӊjWZڍeyMs:]K}N]]hCi㎎*YsrN79O|n(Gl}ꯎ~{ ݩ%i 8;ho<7]`ZJa{~$\:Z9A;|?1I8i歴yAQt/B/{:wN L &s~?yPCc$6TbDos( Jd\{d;_~s2Cq݇o/ӞBVaV_oC ;*g]ljsޮV]͝N)gCa0YG%M~S+:bū 9յ u}e؋Gep\hzһz~>C?CWt?4oV;[E ^ό OkN.;/V*u7G-WgC4U:N3&CDw=UqYvEiY&%dsa%kgE"k~10"Fb!X]20d́/&2yߠT7msgV/-vvI!O;i6>t':ڟo/y[8r5w}n}=c^l<ӯ<}(Vl['^rڴ.}{w]\}>wwz:{r#Xζ罪vGggw>YW"F۱"zm}M.eϽ޺զ}oykg:>yq| p|ۭgƭv/ww VԖ|z}r^"-{^yg^^e5ץw 9mj,}6iw6y{U(ܖK><ѫ5\-˒\޷wʖivΖ{|ŷw|_%\-_Ff6ѬyM*2ZsSyj}wޜ׬m;zOsu%]VAyzYWxZ׭.1:fbw[F^w^'wޔ97޼ftepZMie]dV]Y+x{ٯf5!k,mkn2ܣ`s=˂v4rϊ漮61,h[kP-Em/<0-9۷fteok-)]&j F5j^{F˵auk[͇ldL+%;;k)090ڲY^WV"ݱy};Ȇkej\;>wec65lG|^oZ^f+ZMUwuYgs:zvv=kϯ4h:gfns;i-NYVwѡ՚6]J9gbɴ}z燜jUm} ow,0"mg!}]o!뗵<[3u΋{ofVgNw$ *MHLQ@ƪJz;-Wau6^-+KaenmaiݦXٵ gg> mfכ-k/O9fy^%<~n5{սw-rh*kķyo8$"k |}/KJlw|=-o\2ӝ޵sźgyս=,ǹ-.\in-ͱ'qej7mEoϛouw.v罸ȻmE3~{tiUj̝pNrt۽GWkc緹wF;F=]i=YxzyQl~=yKuy٧m{hfȳVqb;4U[yhq۷;<^{zfTZv$j[>oy3g.%]. huU.;ƭY뷮ܯ7k..{m!ŹוX,szW׏֘.nk<{ܱ2왚<9]&6Zm+-6Wn? N}*7wއU-+ZS6Ӭsny_}ed^-.Nܴ쳴Ύ,ϵͫ*p+o=y֌eklMq$gE5J^ ^6cqp|ٵ4^msƍq{j޸fJDFiYG{[e/]`Kmlͭ$v\IU᷽-\.frUT.k3{ފֵ#\-kaow|UT{O{xѺgw3h{l82jW]&otyX]Ͷco(O"q[.YuJ$͛bTZ ez֭f,,CoĴz4R9z TvvbϽVxxSk;O/;o^z[㵯Zam}ZU7Fvigiu۩z+uurw{Wg<_CgVۏ.U7zúyK[-kVeوá]slg^GYqWgienk#QI;{nyxo\k$f ѦlnZi-,˕م9Փb,Yؖۯ{wWk,9v6 ʃf}^l+{7/=dٶ|klgy̭f6ŶJ۷+M-mIzFVumOYRZ]Q`\r͘we&gۭ;M84f8 3sN6X)ՖڍdT3Zapư!יy;۲Kβ͹kY=ö܁bZ'qͪƴXz޷gyU՗7^wgeGYZڲw4:ZP5֮ZnrV\!wVvpun+0l m͋7^f5Gjڪ~[lMOVm ڲttֻBk_l7f%&:-+D$3-y6XG+Zҍ1۾7rm½<˙/ͷgtV=j楢Nv^UU(w{]ހnů$/0/c`D}^!2OKπ-J Ξ(ey->Ooʨ~z-.Q\2,bٔ[nϔl\P8`ͪM*f< *B"BEGNQx>Blǂ' J+_X0O~ .[𺍷g'mܯ?MDC!@Ly4?n/;,mߩCިMELMyLLeN]k3R ?çݺ)Q\R?EXqhB-Y BJT Q#AzA,YړRYNHD]j*譂lhYeec ܘa ؁ɛ^,g )K-cZ bc2$ZS"EQTІG?t5!,i %Rsc6}eќS\[L4+\2 Vv̫/bIx?/'3ҟ9\1ժL]dXT,"(EE3 Rgw~x~Qq=߅UB$V7~Nb{Eچ53!I|'ju Óo[ 惸bVLU!Wщ9k9k>?~{C?'d`|+ &Z A@G.0 }4REؖTo%o#2팎0GkR(K *'߿v"Iu9 {D(x%fb%|lTdBe+dzUVFn1 WV//Mdž8-̅gnɗ$J&x夻$Z|œ~_&A"?t])+3@Of}Q{pװp=@(xbzQE4ϫD ̗|gT&!>{_Cs@c|P4 ߼2} 7T_HruiX$w<05oh3.bŨu*AFW ,LSЕ,0cX2Aewжٝ?.TisQf|N~?YWG z?7q2Y5Sg-&g2eBDYֲȗ>4qL*j0:jۿ$_WpyؾO(#Q_q Ae+Xv6 SlYM/7WQ~31ᯩs4FJ1[K4M3ijDӤxg7.۳^O= ПkZ[ \~NyୱXgbԧcFʀ_kuaD4edd[Wi|*OiV[麼)Ŧd<ĩQCaݩ3> ,Dq}/tпwǭvw=9 ?Au/gufeVȽAtlH]gVVx6Ez=R6YFVȫQ{[_ei-8_"#7l!f 'n}yًhʤr0+ ,EPw00z$?o/}W~گ=r>ǖVڡϛ nw5cU_Hxb[PjJ+ٷgM~8CIa("Aח+Qe~ Qd.Sj|AEKxqX>~?[2Xso_QccL+lϲcJ3 Hb YT! n4`_Hm8s<UU*7¡uzIʺ8U`;˥Vs*$t5ft}j{3I0$VfQj|:m3xEUqj#g70zL k[m *ܒWxI9@$ѿ7zmx7'Ơ={K1f#&a #ީڧ73_c?mq߾}O=\^|#TXaÍ}@镀g^z"&@5b^݉M^Ũhi6́SL{uMC DKک;![y @8. [뾮ib)꾲þuu$ !ت `|=[w|;ˉtn] BI^\R[*=1rޑ$ע9F{Ae6UFd~G2KIZ9Ξbez7dwC֯]C鳝^$eYfEbqܝdQ73$s; 7bw޷VXIi|0EقN7Hr3z$>7#xxiǬ[({\3?xFaN6z1rn vJ^68HYMA qWbiL8`e ᄲb$;7陼Dtȃ*< Np[J h,x1Hb]E0X4R)ݔ'o$(vD @v(3gIa%ED-)vvgA>'tɢP@f3˼;˱,\w (atI hoDDE/ ̧w R,Iv1^BKBQ g,Is!K%y.!L!KH;9!p 4 bZY3#D)H"\ڌ B@ vsC;L;@LМ `>IBL0K3& C2`K "Q@ib`$(!ˆ2Ρ))$uKK9fEψ`%iꇟ սzJh]q kc^O/EGEL0H/M[3E=i\n:[~>74<]]ʦc43-=Fxxp3m <ܺ;q|Lbc I1l3+}nБdlm ;heŵq7 }|uOl˫6{$`䌟 \:}===y^=h^Liox.߿ac ߁PT $"Us/${>2/4Ca흢b !*T%ޡ:3!w{lw1- C8 vF'iL9ؘaqĞ'ۚ3G}_Gʛϋ| 4}˟9s_pxsl#7]#%9#乭gwԛATݙkEt1~îv} lsl[vtO}(ó  F?7{8 փuPv]YrGnuiU 7Upmʏ*H0i~Ð?LfYYo?G<<:!FvN$2#( 1F*7⸴660y[OТHx޶I9<9ǬoQfee>a`>p@ʜ۲]zkr`TNl{4MB{%:-6:6;lj e 2J?5אGA!Gp QQPpTGDpQ?]m{ .Ap)Q>wgqhtE lIm`fc7ds׽]x@%) aM(gbn9o)X7Pst E`}ukYЁ x3Ϙsy7;(9Fy3˳Lql 6t?9;w1$#M+Z+3c/oܽj/lrz$4@)$3_ɿ5_aKw&z* RC$ͤ`^vmmeg_)-G|1cm fGu܃G 7xh퍃 .]kUmv4r 4a5{+(C 8)E989K98sp˒ @P9JBNNI"0a#l󆆽^leGF`eu:_0(&L8d[ïg!6**$)ʎ.B\g`,Qǿ!fC!.s@b"qoD<۾'w- Q#ĉmboET_i 4,0oIX[ ,7 4$FO2XHЀFW؃-^j ʘn1;2V<'{Q%/}:$.<I& 3GCd =մ4G_p]4~2гo6&tB)Kma p?UP=źQ["\s u/xќUQՓ9$gw`8^P^&Xt;q#Y]F!F Ov:F/NycWgXyVWAMf[{ ;Lt`>tʂ_/gU;N/RAվRRV:E,~L.*t?)<ItN򫒱H8M#ELoOj,|x:98`7!ܹP[ٶ̢={k7Rg_ɜ:-}lsΧDEܵIQ60[he,*n6 )z[IF8lNxVYaI6+&Դ]8w-jRlcڪĖSacs>ըdk &4a]η}rrF98\~i:/OKW`PLRֵ7>{"i ohpWbc-&o$#kγ:ٮ:H3]]ߣr@14 ߺM+_o *f|?%e_˗]vt tbTA ]>ijSe3kfYa$wH5][E j7hMY|"!උٹ>Ӽ^ԗ̱@r[dj_ߡĽ`[#gi-Md]@f\x@#DOnAq 7!fLCrJKQ-jl@:zB0uupۙgF6 ֝rQGvGL,-:@,|4&q;쮦rӏF@W 4rUNgz3S lK?Caf{U: |.C=. +y'"RgQ.D '[llm^ŎdBP,j͙,gNOK;kB=-9l9s`ܪKVSalvz8%r9n31.!Y{֋ׇSs 00MSўvRٰ|:J cHB^=5ck׻Vei#鍑~'v+:g#ck&C:B9q5HxC0Ez(4&%B”,cg fpHѦسH2q"KEAXk! ,![[|gl;b~_eU%e|?Ô\V7:WхM:QC,W{ouT^4ϪXzk}{>lab{M pZ|7V1LYO2ojmSu c1ξ1Oؓ][kp-yk}F͓gPZdI:fۍ%7QZsm>{x_1Yjfp艮1U ܺRKv3c9d02pjo +wF v:;UZE+kzb_}ϦN+ּg}_ kOweߖx`.1PU]czEDA*r*4Ϋj?uc oqZm7G_!9Be7-Ri0*7ol?p#.vʨi7y즷֤"\v汾\wC=5&瓐g+u6yU kR&n߮b36ٶ~;"fTҁ^E|}KOvZZ>tF g+3e\5;QaSD>F/9g(֒n ,AF4=Y4qܙMp_urn+8סꞱ~P΢Sa)ͩg7Z-zD.甴{^Uq s_Gc(]iҵ]o* )FBVpbR F0yZ[Y 3hMGhs}2['TEO_}]t %D2s>閕/g-FbTk 悴'ĭ1:*JM$T3mll (w-r8*d4#tvj.ʔC(Ai,[_՗8+͗7 4cշJ,֮f8SE8Pf<ʮZVγv(C2xSbyH@\c^6RT|+ts˩}eukUxq̙#rxuv0; b:+W6P3e}'sx/#- 8a8A؃{ܘWtsW[; U;Gn0ǦwibYc}\OZG=(Z'mvu6.Rm9.6uWcG =WI=]UraZS+Q p+rKzo^/!֥-C'WuK<.]NЎީ;9ڴkE Zzy_E›'ME1N ms6k3~vrʩvYg27sp" _t.;F4f|sտcm.k~E7tAHvg%瓭c ܺ{n];h[s.պq{uρ2<3Br>q%ΝhnmW8W`϶vûΉ=/EػN r@Y݆ 'VZwp׍o8oGWLz oE8ώ]p{G).ꎾ]O}Đ;aT* 6yް,z7%P?U W`bW(/y?1s̪6uT,7r5X%h/l T( +nx ~`im(ǠȀ2B&Fur?ax n7ZVafYpw(O_ofLsLJn%RސuMo]^wyR zʬcJEZg <[+ xV .8@/!s[XwWrm_*t i!I10`g !&b̒0)lp"Hr)"D$,3/ \!4N9oNWWTPu,8I%.gQaPq$Gardt\BЪX5 lU$Fʻ*yV +1e7J!@6 1q `0\e{Б$^1b3名<h b !L "dIdHBM0! Qo2:FGf2SrU/bփvfLIrY$&˶q<`b4i k^gn0/g7iI/Efjjj # |#"Ʀٳ`Xd3/+!cֈ[L,Ȱm3CZѝY9GrAF?q$ɗs|2f40meuUI&!Q Eq?ߜ]~Hを"#(88#Crs)#丈)ˊ"*.Ksp#MCiX`d\/,;^Bq8QHrt!pRRtLm46 iCm46C+g5Lh?Iؘ5EX2 ]Goj@z & 3&6dZQVJ<)RzV̤m[p3??j ]>M ?~}TIH*8bUNRH؍@́Y@X e{lۯt^px*sGIz/)ڥGTYe_ Eru~+ƕ-lc.H"#0(faٰ=(r\H!M cg}YdX4LY"=DmaFgAro7lfs +c)ʧ~/D).OSR z=bҤ_ذYlu-{ZxBHLb!~BR8v6hOxǰ Y1Pj5P@4 χµDy럠.~/G}C0ɶS}[~z^9]cIϧ*Ccٔ/Όa;\xvTf2 d86Im*!5.@C>MD\k]@.,C{}=PE1 Ľ3ZD(E(.AGr5k/SLԇ{ y#cĬmĸ xwg6xW7ɫ,I 6%7y誃S3عKo CQa>M"j>UZֻTݣ vchA@۷hv]YpףYRj֪G<}896h-6h]Q8 GCy_n䏭KǕbUT^(G/c߷kIZ$8h̵*7ǽ,{Oe?l>+=G9.RdPC:p 1%V]3;o{~"R:$A x_<~Θbs9`4J2G4Ֆ/j*S2/\HZ_^A-eBހw94xPu\xFIN6ƺcExltۯ߫n릒4+ټǩ`_6/38x }7Frdpk&# k\zsPdD(Z x}]7mUPǓdG #P idlKV:(p([^`v߱.5Ł`&hzw+NVr>WیyQH'8)"eQfYV% 9a5`1UcHPZ+H[܊~e魀`3P )mj ($y[ogcYXKEf%!Q@LCN&bF|a/e'3d&!ܛ`)C("D XRUBݨr+TLHij-뵎Tmc09{cO0a}pYP}|xNQ'YSy @ *Õ`@`Rbd?0\s.ٙ8t.ЈI=H hasɺDtƠZo{^uǷi!Tձ(:|%2 N2(U q.%I^bDxrP攴/L錒TfY]@1gL ?{% }=12+1ᾡ(e Ρ/Q!qZZچL`khzOK#-ry-BAmn02U P_<یıC(I .Z]NMņ$l4bFI D H؋0l5iWbw_;}~5"컈3 m󬳯;kVH}YV'%Z9boI+Xs||~uMn1h344űRcEDNStt"zx7`-L,2AqSfYOIm :,@wz{!44N۱u5ST S im'|,nd.t3)C,h @A-L1; dy7VkH)1cl`"hBSHjƎmz\`*! $g3h(kMu[t[l6Ѝ] 1tA}z<<|dUdݓh-eiȎCRO;{-Y-PXɈ#``6"Uqg9C  %(H,!ax!#t1b䫊zs M kZ O"[l0K&2"9- 8h6$_d33.ďh,ҧfшi-Bndj.`"HI W1 @,@>~P|Sd/#Nqe_}{z,u kd{Qy;,CxQQ֎UF1uB)؈E'tS#CyQ P% ! pV'zԓ~Lz싷_(0,*o u` #pSE չ OBX=-4H3|?[oS稟yƼ+g-<{zڪuyϤ](Aw֗<='aMdfHa1H6;~˔dZ(LPyM!q T NTQ({8_h(9rB (/fp==;,Yf?/_|pmd~HmuzMBɿ< ~< /-X Bv?274*F>-y Fr~.!ܪ ˑfOD/O/ '?V7 G(BbCj$b]iSaޝQ S[zr$It9B$swwpf}ߓ>?m-7MLݟŹ^Cݔ#Kc,3ҰgmVp 8+ _ꥹ|cUo%/ӷJN9=gQbaXlf2416 `= .IQDءQᯆCuT\E 0As3)R@kl cӎ 4"=ЂY"= &Q.YpfrE/>9C,@GH Q?o_eL49T2#pl 0AC;;6}@KdevBa"~1IZl3i؃_(M!&CÂ&*! %0$g^DR[o=wx!\L;Cص-7$G[A"$J=1ԎEݝ~JP3215@ 7iP"_[tAJjWwm,<;301bE!ZBAf$0L/" `C!-^9 ȫ9!//BƝ(h(>9b#>9b!I]ЗJY 4d"#Df"BpD%фeetJ쩦tN#SXEfۥPS6M9n޳ЄT012dxy;I"rqҜRNHspw!gvsm'mi֐N'[GQ$ 8s9kz~_Vr7?s6zSp4Kӑ/~'O{WNᱶc0 s\bJ]W.*8.;,k8~˜⾥%W~od4+En$0 yOD%6̴Ib{5=$0H{cA[VKFTY5S,Q،.}-+s.'Pqӄl 01(Qw D/Bz}O|>"g$3"S|dg@4GZI芘i6jLP q1$ 3yR4 j+/3#}{1CЗhb (o Џcl sB!$ 1k{vڳN.A#Zfq%m.θʗJ[.iuWdƖaYeݗ 67FLɍ$lfk0 i3 ,d`a 6 FQ ɂMQ{T\ (5H㡔3_XJQrŋ^,&۱@\ ZDDnBX-HyeqX[f8G,|=>פS'/zl\-Vvl2GbqaCЗv9MK˨2Cx双vbmA|\A,'&BPc;S}Oj$S qf($ 1$#XE c<&yMVD-b9$2x›"6)o0ifnS<ֶ {2Ww" F*-@E*KfC^Z>դ99/@Xc+P1 + \`ނ 67 SLhHG}_W>V~%NYkm p*5n|#-;ȱ)&fϾeICkBIs(Aiİ3R[,fl?M;AQ# ko٭(W$.ٍ#"#yk"m{Ի.^gy˽xŽOy薤ש98ʢJ#6hBV3,;oh3@a0 @IK?V,AxfWJaipGE\>Višnq]7UU'Әm##wUWLz oZzᷗ`]Hʀ2h+\zS~ f~}ZMw.Qϟ~Vj~{Qf%^ ]Tՠ`ę"Y:3.ʖLHLgY޷ |JG@/Khc6e?#㎟R/a9TXKāf=~쿓wr'3wTmʯCQZ,Hao䢏:k0$1q%w-ͷ_AнK W2m H |>P!i2e"Ui RH ci6ǩYfʪ{2nX^cclrFm=iγfDZϽn+UUvnwn@R T4&l@._/~8I ϓ6o>#mbu)۪co~̵ָGfFLeUsNXJ{ E"wQ׍3oFzxe1өӃ.-< Z{G`wu@pqnr%ʰ6UO`(mBBI(HF/ڿa7Z)¾0`k6pn7:uӟo}Pxaf4vO4.]!y EG"$䜣9BIĔ$8 BA8Li553s@G.k#jcoJ۷.mfz0M;h4 oW4hNV g iN/]2 6E{=`p7Vѐw~Ӧ!3?c=PI-PhfS"&Z5P}KWI1-] G 0{)X-$;,hd @ئ,9иߗ??wxvhr;scx!$;|OP汁`k&7{ Ȑƃ]k#<&`a][Y?YE g;ONEE#0d+#@cЬFժIv(x#fmf`>a\HFo y椕V a O՚<-,4HJXp1qQAAbcku,\͇ rGz0uJTd&ΆyUhl[4S@SGpQrDڍ )hU2ZTVjO ! m _"ͺK3:)y^uo/ T.R_Z /Z)RُyeFQJ,|3,+m7܀lk j!>r\9ri 㤤 C69U$e+xCcr0߈tf4؍d1w~_W߮zR@p '8H䤔Z]_F=O 78mۡϟ"6~õ;q%n7=-0cbLImn^xtUhm 0icۻŹMp9rWqcviczw[3!tIq;]ݯVKAd+E_\jwPJf]&#q<|e^Jdx9`! N, 0Mfl`@>n8# Y$mS\I^_9:R~k˷~^ ݉ac mQ(4,U;fVvm_S_uCq֛U= o7"YV$*6uLέ%UWVU0`pڌ>Pb E6Nzzsx.7 GYBQ{GBJ]NE pcclM/1]VlPCӈA,b`#@6 r$Y_W^owo}}[G^+.֨9+&t_gxFff}M#l .],rs۳|`K49! rكHB>" Q02 `J(y1.RА ݟ||ƺ^ν3k813TcoD~62|nQqǿv%#1t# b|xjri##Ӭk)LߵQl(aNsȳaV~þvW]/q|x<D彧r'Ui8#N2FN+cm =v"{&ɓLpl',!C g~s3Y g?$V=ɇj"fYyK!ACcE)9o^4(@ 4#mvXttDwq\\PwCn.΋3㎚n;:N8H"㎢:H2*;;+::(踈*;F!  f)FJ#7pRl#v7[qBK-(1wƗ:Jej5e;{XٟBh~J6>ԡL7"-'UKh9> = Wەo|I3Ha>hB'.ha}J\vXLBUqԸuk)LI c6dn :| ^c3@O!o\EBKA$.]&}cMwkP`1c|q] Y13i+|4hc/:4vvB6+`Z|l$)ëZY*Ju(\kJ,AA4fB@8Hoaq4!aQd5 B BB7!B !]Q41٩s5Vpw,!>4nֹQRUJkmooחDhf˴|]d(RtzD|[E Zm—Җ!i)gNOT%Fyq˖.BE C~s{W 9&~idxt)9+pCl'_f lm&#-P8fdp4u ?M?'[:*eb9IE? IiS sLe# sGc@Us.X2~krwV}}{ӻAhH56CgUIH7cL+4i#m32.n?^j27P2 #4XXc,mdC{ 7gG*>u^qdB%kMuRn6Ս󑠽knHR|G3 HK0&a$̙'H0ŦpXAtG|o/?|:({nR.;ZΒ,`el]A6KM1,tET(/CJH.İr_,&@7',4wxq00;1$:Z]A(t& Kp“ɃRyL;9`w&dKCe]եu ur/uigM}{}/}7nNp(99#;:89'"]"GrsÍ wq\'((22!bł6}h,BY F- UE:oc,f|L.;(g1cSWa2AD0`Au_V&̰rN&̉z2^ b2 ~Za8FSu^ݤ!$ؒ /,?!e!I`N0>KJs<6;8,Vs阐Αc",TgrBmaU2<9v8boD`Qi ps({‹!Ίl ;N%f76e/Ƽ7۞3,ﯽE|21\mQ6:6:MSQDJ;X,A/M1n XZ&m!$! n㌋8bD PEdVDI$BT2EA$dD@TEYEBETJDt T#:㻮+N㫮*㒺;Xtw\TrwCJ& !KVTRpW>cuIЁ*`-Y$1.F?9CWX_zf~ 9uX.@~mǽg{"Zy"W%Qo[1d<[>v`C_QF|O:|lƄ6F]ڝKҖAc]vsɍ0Üv~!޹M~ca6`D^P^5bȷqswXv؀9҄P^K,:wd n]Hv)=G]6`B ÈX;fOsUeT1xf @͗%JgȌE!ogyY D TsdD8DY TQ\H.": OJ 6x < 44 bXt~ Oɍۘu{&;N}Wԃԃj\.<{Ng3X9˘g<4gQ2*`$$,AlF'xvqm{5d?|-fF=o17s>Ȧ?J/3ܻBYi׶kw(8r{5zpʢ1ѡSU-.@w~[{zeuLXzp[N P2z|G{}׹Ӛ,=Z$IS>. Ŝjq*~ܥ mc{9o1g8\Gh͖Zjf C}}UP|km'i=5I"?,~wC -- xv⌞2xI $ aDZFR4bw4W _= -~C!􉿠O]ƧǗ//c4;luQqZ;Y/j6#vjh4TI900\ |RGI!%U_XI$*U @YyeTyXj oi$ QkϔCu*l!lL*%Q nCY]uT2@+^2fANL] !Ƣ)akB́oZ1e'8tŋ22Q`H^2i0D:A<,i!1%LK#$ kg H4S'wo g`銲[!4"#2K|lvFmv m lI.(;wѿWn_0wóG ˖L Y2h'q3̓v {'M4dsK"ho߳o>=,o"]/Ep 8!hrs{-47̈^ΤhĒhrWҬ.~rJv=p8we'GDr8D%t|o+'e>o?B[=Oky`HtYb' Fc_"X0@0` mܴl}?7azM~pT&,x+T|25 TBruY_}8|| I}cTOȇŻMiet#`"Fg+H }ݟߊ6'Qǻys4?O{%ˇίY}x^ -}>h^RH& p(.2fgpL/JTFJ_r_Y;S N-Zj[k_o&9|##z23ZRce_!o%#p{5 1q$9EbŗV.u5^_`_5_Yk\q|폘/O䴼9ΐm\v6Xl`ӶJ}9|o‚C2#ꇷ12]ّ7odyϝ999hSzYuǤ3<> >%QԻ;{O [;l5kGdasgcxe||0e +{x] DUYJlOU1jqOsHsIGY#w7l=Mb bC̞"^#;?SG9ZeGxLAcF#. ;Gd)}ԡpOe0* MC%_Rv2gZ/FZ3њR!m d hͶUbߺJɂ=;:|>A/n _5+O*(?ؙ|aA'kmc =giFrd 8,RpGAIw73I_%MO qRL5y9t~Xn(`{D__a&)}Uv1 jr{Ϊ~`4ZreҔ! {FC>+1"YCahMD`°8||v.@És/׽0ԘD S FLOr$#HETH<{VJ5;:3:|<(V[jtցq9)G9y !+y<|{F6( Y;־ly10ŗiM9.nf>ILڟd?_8Ii k1r!ҷ9O*,F`ykz %rZZ<, `'y A F~T$?M_#?ӣFF4̔8pFo*Kquڥ Q@ܦ,&w3;OQnE(=<(MfB`V-v uwbUw5w>q91κ#q\axflŴwl'H]mw I\vlf,-&Pj 0*lԖg׹8|mOc眷9sN_.qY .Qj1ή 3)\' rqCs{i ]V5ymmOu˃aQz2[oxUowķ^s/h`R !֦陷`T5Ile}?=oh j߷ع}b6s2\++iAͻrVz[Jw0k5ZQ0Avf =j2󥾷vr3" O]bpmO׭{U AFϫBr;rE#=9R{DC;x`jMo)ЋV7#V缹0q<, ro:.F3^w67"j.'X[sD:gܳO_+TԷm\!rpllrv=uy󼕀՗XVJ/[N9axkڽSp- ).1Fwn*hYm Ft3S!hDW„% XR1Hvs4Z~)&+JrLhwo=(\dHCVUrD'Mu  #E+rqrSG'o6ţ aL[9RO^LN4.xӎ[5KI9Rحi6ǖp ωxW6u2G]il8Jإ%q@n:I.~|Σjt=a.kW9ae0Yn;{s޷ 9%Wq kv.ɑ-ZdXYCkY-9%# %cy8ϕ7[gi[^YG5r.EK(D,ƚ_ݞy Iqx6.l 4u47BL. tTnGBMuΗNk-{vlkJPmTWC9rhOt貶C,;sXëmiy.[\v>_9&BN~sJia0[غ1|Fj9޲+0ríҔڎ;v{qiwbu6 4PzR=n]nNxQ]ni`8+gĭ"~2M"q1ni[k\rn!uѮ:Πo_qMygnt;_e+q(}婐Ѹ ~9S3Mzk1~'Z,0FӖ[gԴmIv`O]nxigos|u #˒obX+E]u~w}ϛ|pC>on`j, \?4y%Mr6ScO>jڕk]s֍0@TXāb鑠\N Jv$&%7K拇P_)!KJ"wر }/jAGutwQuA]PGDwqupU]EqETqtTuEwwwTQptQWu]QW'wRqG]wuqWqEtT]A]t]qqq\RuqWwtwEG]qwIuP]qqWGQ\T]wqtw]s"2+ 2#"H# H21Euw]qU]QuGttG\uTwTuQ]qt]qtw]%Tw\\ܒl`bHMm!kin̎Ge!uyd}v>:+Rv`֦LF&z?\u:=Q!a%SHoIB0 Z3} sp&ЋT?F4S+ڰ@y%O{mƾ^dledgDTyu ;r0xS%}3-\? {)bu>>-~)Ӵk1k^ -Kvo$YbO/ 2|dbA?߇xqޥ띄{k[3 z*{ҟ*'%%<;;}^3AKU3~$f.3e}s0e ')zгRI=I˛b񙋋k k}2CK+&8Hc`6>__Szs4/cO3ܕ 59"ITy򧁳dIO1 ߔbٿ.9vkQ{oIFA_|5ڒ'Of{+HhɹSjP?Q4N1\Q̈CeV&y"S1?AA %_TV4waMٵZTe12Hjֆ+FjڅzY `# MN |ƿyw}>'<Џؐ~VL/S( f^DQF4r8N aĬ~ԥ`SԢ|IFE2{2\0$&UqI/'^{=WQiY~oٸڱNLƓ)Kxȫ1z%Gѥp*i-%ye]78('+ ]c碀RmWh9SM#`daUJ$ǒx Rt=t#|b݂W7{,;n^BDMXa~G_F;4<3A 2*PyYD=˘[<=H+i((8ʽG6(HoWփLJ4޾[|Oχ).tIUFXPh+8sQfj 9Hrg}+7v| <;vkK띎_Fdž g_ozx>?96-=f֨!=xU1&Ĥbl!'#7._/$}֕R_OԦ!>{Rf i=rC)CX+L÷in6| HeW3ܦs|!N9&&쨡hN {qKp؅"R()2 @{<;vwl"zSw_w+|'lF# zs/MVsyT'9$Bj lMtɼ9Y؉x楜B5g󹗩zGfz` -~n k9*X#s@R7@J؅"TeNf}eJPqYj)r[b~t|"[Y^Y.×.z5hϯR>G!#K"Oq*q%D8̜118y #6L/)g[as֤OO>j|SC'Q˥&ٷ-c۱2r`pζYM5}1;k֣j075s\hwkr᷺CW2h2x|qzYi(wL/G48Z 4iDm괏ND W|28+]5bX[ NU{J8]u>pYh";,j&_qwjmis66{ c{<ݽsw@k뗑7M ַU^o<S"7=fh09ZྵFyu[r2|uf/zT\)'ctv﷍rx5Nǡ=7moiV1'm&1~\+zi1Rėr8"꽄zkaUڇ52T> 2UkE۬K.{]|̮̔$0_4 q"zvmWZήV7WZSҟYDnIR|s]?+93YjpYs덾Vn »==cw}QN`k]eg[Y9C[XΠoh1ceJ;s{[Q1U=ƣ,:sN5sH03ݲyS4n{J;qRJ;iXDNA9 Zj foOe{9)}<$ hctoS!S+vv>k]֋)9vI\H]<eLk6" ZTĢR3zm*np4yM+3oxQ3 +|8n6,n.[4ůk?8\'n\xuX˰pu&G#;զa*JnҼWp(yq^o CV/jX0᫥唷\97eBUT݄nӟWk[ZM, Fo|VY84-voq["ᵆv "*箂^9࢘[_=uY%DǩvXG}n>~+6Vma= }:Jf E DqOyL9FyZ>VrLvtmwN|>5CvMr]]uӕyV:\2ݲN G(]v\z'Hsh8i+-p u˞Dz|ϔX44Qmc~Gv gg|oZj9edX6|>NWvϥ|:v;ԹnRs+##kbtnf.X强g#s+XUcgv|: ]y/-M~X iv9K9_>U~nL^\Ldytq]+9:کۮǾ#Jύ{N򻻝u3Rxt#{'cH98dUhk]Kn=6{7OKˣl2N`J\/s/9A wZ+fmc o̾}}Ϟ?ai1/UVJ E#L>~37(r\)KRQַУER)L# >NgUdak s!cBB&Te]$`[B~HN~I"EGqtEԇEGTD]ԝ]uIwqGEuG]EQu'EUG%]TwQwqQrwtwEGwEtܑEwGUqQU\]tE]wEq\T]%wGEIGHuEuU9GGquQqqt]pUuGwGuWAqu%uwtE]GtwwqTU'qqt\W\wUGuG\uTwu\ww\EqDQt\]T]twQ! ؁q[g bb;ߛj~tmrkߌ+ɻU:׍T$g}Е}.Z`DhN_Ңp+09 M} * ؕvs!/br2l? An '2ؔ" <~LRHeXBBxahJx~l> kZ;12=Ɣ@ ubarxԍƤG$^hl`O>Q_t @V 9K^ȖZv] |G JRw;՜}N4X±/9;cnCع 7n~bHEzYhG+iyi;(@P;6z^_2x cuw'{U_ϴ~gX``)d *o(%u`Ja"3qMCfo"z+j | yX=<RC㏈K$&S=QAY?18: K|Y ʝD*YaQ>ؿJ~ߺy%OdƟU}<@}=pG@uQnI%292" ku5IZy.L}]hne@qCY"x+aqƬ.rk|&|stc1ky/ʫx媩٘Rﭠ⼟ƈy5BF~X?RG`|zz_d#Vكlɱ(GČdzU32_T[赘bƾ'*vGr6:Ն}Mj>'8#ܦw7{ `=nķTt}6'HI|MDDEc?NZ" "DD ~NPDChx":Eޤ}:mДPHj Vh-XIE9LcQ/jVeCi &:2ך^5QBHItRE VH]jgSVDzn¡phBەr%x`X*t@uĿ=ޚ_$>2Ǡ-d͚ Ww ~9yA?֢*jAF+^wS@9^s(yE M _%ޫ ~_z)|h\>TO̡ v_6ZЯJ&%$UU}VcЮ_^%1 V(`̌'[p!YLF`v]'z n{Rw+Ar3t1E4Vtq5(X͞2JV| =2_'!2>&cy5? $%S9"E7|l7TUDZ\D}HD:MT$زe\˴1},$,W?I#fi}8]bPD<'"Ҥ-OCh\ߡ{s"}O`eg@`f Duu)Ƿw]/^m/)z9)rh=޸ѭ;^ u7. (X$XhɊ{$RJh:HPVa^= 0) yi <- pmax(4000, pmin(y, 4000 + 1000 * (i+1))) if (i < 0) yi <- pmin(4000, pmax(y, 4000 + 1000 * i)) panel.xyarea(x, yi, origin = 4000, col = col[i+4], border = NA) } panel.lines(x, y) panel.abline(h = 4000, lty = 2) }) ## compare with previous plot horizonplot(EuStockMarkets, colorkey = TRUE, origin = 4000, horizonscale = 1000) + infolayers ## a cut-and-stack plot; use constant y scales! horizonplot(sunspots, cut = list(n = 23, overlap = 0), scales = list(draw = FALSE, y = list(relation = "same")), origin = 100, colorkey = TRUE, strip.left = FALSE, layout = c(1,23)) + layer(grid::grid.text(round(x[1]), x = 0, just = "left")) } \keyword{hplot} \keyword{ts} latticeExtra/man/panel.xblocks.Rd0000644000176200001440000001071113077627551016525 0ustar liggesusers\name{panel.xblocks} \alias{panel.xblocks} \alias{panel.xblocks.default} \alias{panel.xblocks.ts} \alias{panel.xblocks.zoo} \title{ Plot contiguous blocks along x axis. } \description{ Plot contiguous blocks along x axis. A typical use would be to highlight events or periods of missing data. } \usage{ panel.xblocks(x, ...) \method{panel.xblocks}{default}(x, y, ..., col = NULL, border = NA, height = unit(1, "npc"), block.y = unit(0, "npc"), vjust = 0, name = "xblocks", gaps = FALSE, last.step = median(diff(tail(x)))) \method{panel.xblocks}{ts}(x, y = x, ...) \method{panel.xblocks}{zoo}(x, y = x, ...) } \arguments{ \item{x, y}{ In the default method, \code{x} gives the ordinates along the x axis and must be in increasing order. \code{y} gives the color values to plot as contiguous blocks. If \code{y} is numeric, data coverage is plotted, by converting it into a logical (\code{!is.na(y)}). Finally, if \code{y} is a function, it is applied to \code{x} (\code{time(x)} in the time series methods). If \code{y} has character (or factor) values, these are interpreted as colors -- and should therefore be color names or hex codes. Missing values in \code{y} are not plotted. The default color is taken from the current theme: \code{trellis.par.get("plot.line")$col}. If \code{col} is given, this over-rides the block colors. The \code{ts} and \code{zoo} methods plot the \code{y} values against the time index \code{time(x)}. } \item{\dots}{ In the default method, further arguments are graphical parameters passed on to \code{\link{gpar}}. } \item{col}{ if \code{col} is specified, it determines the colors of the blocks defined by \code{y}. If multiple colors are specified they will be repeated to cover the total number of blocks. } \item{border}{ border color. } \item{height}{ height of blocks, defaulting to the full panel height. Numeric values are interpreted as native units. } \item{block.y}{ y axis position of the blocks. Numeric values are interpreted as native units. } \item{vjust}{ vertical justification of the blocks relative to \code{block.y}. See \code{\link{grid.rect}}. } \item{name}{ a name for the grob (\pkg{grid} object). } \item{gaps}{ Deprecated. Use \code{panel.xblocks(time(z), is.na(z))} instead. } \item{last.step}{ width (in native units) of the final block. Defaults to the median of the last 5 time steps (assuming steps are regular). } } \details{ Blocks are drawn forward in "time" from the specified x locations, up until the following value. Contiguous blocks are calculated using \code{\link{rle}}. } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{xyplot.ts}}, \code{\link{panel.rect}}, \code{\link{grid.rect}} } \examples{ ## Example of highlighting peaks in a time series. set.seed(0) flow <- ts(filter(rlnorm(200, mean = 1), 0.8, method = "r")) ## using an explicit panel function xyplot(flow, panel = function(x, y, ...) { panel.xblocks(x, y > mean(y), col = "lightgray") panel.xyplot(x, y, ...) }) ## using layers; this is the `ts` method because `>` keeps it as ts. xyplot(flow) + layer_(panel.xblocks(flow > mean(flow), col = "lightgray")) ## Example of alternating colors, here showing calendar months flowdates <- as.Date("2000-01-01") + as.numeric(time(flow)) xyplot(flow ~ flowdates, type = "l") + layer_(panel.xblocks(x, months, col = c("lightgray", "#e6e6e6"), border = "darkgray")) ## highlight values above and below thresholds. ## blue, gray, red colors: bgr <- hcl(c(0, 0, 260), c = c(100, 0, 100), l = c(90, 90, 90)) dflow <- cut(flow, c(0,15,30,Inf), labels = bgr) xyplot(flow) + layer_(panel.xblocks(time(flow), dflow)) ## Example of highlighting gaps (NAs) in time series. ## set up example data z <- ts(cbind(A = 0:5, B = c(6:7, NA, NA, 10:11), C = c(NA, 13:17))) ## show data coverage only (highlighting gaps) xyplot(z, panel = panel.xblocks, scales = list(y = list(draw = FALSE))) ## draw gaps in darkgray xyplot(z, type = c("p","s")) + layer_(panel.xblocks(x, is.na(y), col = "darkgray")) ## Example of overlaying blocks from a different series. ## Are US presidential approval ratings linked to sunspot activity? ## Set block height, default justification is along the bottom. xyplot(presidents) + layer(panel.xblocks(sunspot.year > 50, height = 2)) } \keyword{ dplot } latticeExtra/man/layer.Rd0000644000176200001440000002251513077627551015103 0ustar liggesusers\name{layer} \alias{layer} \alias{layer_} \alias{glayer} \alias{glayer_} \alias{+.trellis} \alias{drawLayer} \alias{flattenPanel} \alias{[.layer} \alias{print.layer} \title{ Add layers to a lattice plot, optionally using a new data source } \description{ A mechanism to add new layers to a trellis object, optionally using a new data source. This is an alternative to modifying the panel function. Note the non-standard evaluation in \code{layer()}. } \usage{ layer(..., data, magicdots, exclude, packets, rows, columns, groups, style, force, theme, under, superpose) layer_(...) glayer(...) glayer_(...) \S3method{+}{trellis}(object, lay) drawLayer(lay, panelArgs = trellis.panelArgs()) flattenPanel(object) } \arguments{ \item{\dots}{ expressions as they would appear in a panel function. These can refer to the panel function arguments (such as \code{x}, \code{y} and \code{subscripts}), and also to any named objects passed in through the \code{data} argument. The calls can also include the special argument \dQuote{\code{\dots}}; in the default case of \code{magicdots = TRUE}, only those arguments which are not already named in a call are passed on through \dQuote{\code{\dots}}. Otherwise, \dQuote{\code{\dots}} simply represents all panel function arguments. See Details, below. } \item{data}{ optional. A named \code{list} containing objects needed when evaluating (drawing) the layer. } \item{magicdots, exclude}{ if \code{magicdots = TRUE}, the default, any reference to \dQuote{\code{\dots}} in the layer expressions will only pass on those arguments from the panel function which are not named in the call (thus avoiding duplicate argument errors). If the first argument in a call is not named, it is assumed to be named \code{"x"}, and if the second argument is not named it is assumed to be named \code{"y"}. Furthermore, any argument names given in \code{exclude} will not be passed on through \dQuote{\code{\dots}}. } \item{packets, rows, columns, groups}{ restricts the layer to draw only in specified packets (which refer to individual panels, but are independent of their layout), or rows or columns of the trellis layout (\code{\link{trellis.currentLayout}}). For group layers (using \code{glayer} or \code{superpose = TRUE}), the groups can be restricted also, by specifying group numbers (or group values, as character strings). Negative values exclude the given items. } \item{style}{ style index of the layer, used only to set lattice graphical parameters (same effect as in grouped displays). Note that this will use the theme settings in effect in the existing plot, which may or may not be what is desired. It may be necessary to use \code{force = TRUE} to escape from the plot's settings and use the current theme. } \item{force}{ \code{force = TRUE} is just a shorthand for \code{theme = trellis.par.get()}, which is useful for over-riding the theme settings in effect in an existing plot. For instance, if the original plot specified \code{par.settings = simpleTheme(col = "red")} then the theme settings in effect will be entirely red. Use \code{force = TRUE} to reset the current theme for this layer, or use \code{theme} directly. } \item{theme}{ a style specification to be passed to \code{\link{trellis.par.set}} which has effect only while drawing the layer. One can pass a whole theme specification list, such as \code{theme = custom.theme()}, or a more specific list, such as \code{theme = simpleTheme(col = "red")}. } \item{under}{ whether the layer should be drawn before the existing panel function. This defaults to \code{TRUE} in the convenience functions \code{layer_()} and \code{glayer_()}. } \item{superpose}{ if \code{TRUE}, the layer will be drawn once for each level of any \code{groups} in the plot, using \code{\link{panel.superpose}}. This defaults to \code{TRUE} in the convenience functions \code{glayer()} and \code{glayer_()}. } \item{object}{ a trellis object. } \item{lay}{ a layer object. } \item{panelArgs}{ list of arguments to the panel function. } } \details{ The \code{layer} mechanism is a method for augmenting a panel function. It allows expressions to be added to the panel function without knowing what the original panel function was. In this way it can be useful for convenient augmentation of trellis plots. Note that the evaluation used in \code{layer} is non-standard, and can be confusing at first: you typically refer to variables as if inside the panel function (\code{x}, \code{y}, etc); you can usually refer to objects which exist in the global environment (workspace), but it is safer to pass them in by name in the \code{data} argument to \code{layer}. (And this should not to be confused with the \code{data} argument to the original \code{xyplot}.) A simple example is adding a reference line to each panel: \code{layer(panel.refline(h = 0))}. Note that the expressions are quoted, so if you have local variables they will need to be either accessible globally, or passed in via the \code{data} argument. For example: \code{layer(panel.refline(h = myVal)) ## if myVal is global} \code{layer(panel.refline(h = h), data = list(h = myVal))} Another non-standard aspect is that the special argument \dQuote{\code{\dots}} will, by default, only pass through those argument not already named. For example, this will over-ride the \code{x} argument and pass on the remaining arguments: \code{layer(panel.xyplot(x = jitter(x), ...))} The first un-named argument is assumed to be "x", so that is the same as \code{layer(panel.xyplot(jitter(x), ...))} The layer mechanism should probably still be considered experimental. \code{drawLayer()} actually draws the given layer object, applying the panel specification, style settings and so on. It should only be called while a panel is in focus. The \code{flattenPanel} function will construct a human-readable function incorporating code from all layers (and the original panel function). Note that this does not return a usable function, as it lacks the correct argument list and ignores any extra data sources that layers might use. It is intended be edited manually. } \value{ a \code{layer} object is defined as a list of expression objects, each of which may have a set of attributes. The result of "adding" a layer to a trellis object (\code{+.trellis}) is the updated trellis object. } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{update.trellis}}, \code{\link{as.layer}} for overlaying entire plots } \examples{ foo <- xyplot(ozone ~ wind, environmental) foo ## overlay reference lines foo <- foo + layer(panel.abline(h = 0)) + layer(panel.lmline(x, y, lty = 2)) ## underlay a flat color foo <- foo + layer(panel.fill(grey(.95)), under = TRUE) foo ## layers can access the panel function arguments foo <- foo + layer({ ok <- (y>100); panel.text(x[ok], y[ok], y[ok], pos = 1) }) foo ## over-ride arguments by name foo <- foo + layer(panel.xyplot(y = ave(y, x, FUN = max), type = "a", ...)) foo ## see a sketch of the complete panel function flattenPanel(foo) ## group layers, drawn for each group in each panel dotplot(VADeaths, type = "o") + glayer(ltext(x[5], y[5], group.value, srt = 40)) ## a quick way to print out the panel.groups arguments: dotplot(VADeaths, type = "o") + glayer(str(list(...))) ## layers with superposed styles xyplot(ozone ~ wind | equal.count(temperature, 2), data = environmental) + layer(panel.loess(x, y, span = 0.5), style = 1) + layer(panel.loess(x, y, span = 1.0), style = 2) + layer(panel.key(c("span = 0.5", "span = 1.0"), corner = c(1,.98), lines = TRUE, points = FALSE), packets = 1) ## note that styles come from the settings in effect in the plot, ## which is not always what you want: xyplot(1:10 ~ 1:10, type = "b", par.settings = simpleTheme(col = "red")) + layer(panel.lines(x = jitter(x, 2), ...)) + ## drawn in red layer(panel.lines(x = jitter(x, 2), ...), force = TRUE) ## reset theme ## using other variables from the original `data` object ## NOTE: need subscripts = TRUE in original call! zoip <- xyplot(wind ~ temperature | equal.count(radiation, 2), data = environmental, subscripts = TRUE) zoip + layer(panel.points(..., pch = 19, col = grey(1 - ozone[subscripts] / max(ozone))), data = environmental) ## restrict drawing to specified panels barchart(yield ~ variety | site, data = barley, groups = year, layout = c(1,6), as.table = TRUE, scales = list(x = list(rot = 45))) + layer(ltext(tapply(y, x, max), lab = abbreviate(levels(x)), pos = 3), rows = 1) ## example of a new data source qua <- xyplot(lat ~ long | cut(depth, 2), quakes, aspect = "iso", pch = ".", cex = 2) qua ## add layer showing distance from Auckland newdat <- with(quakes, expand.grid( gridlat = seq(min(lat), max(lat), length = 60), gridlon = seq(min(long), max(long), length = 60))) newdat$dist <- with(newdat, sqrt((gridlat - -36.87)^2 + (gridlon - 174.75)^2)) qua + layer_(panel.contourplot(x = gridlon, y = gridlat, z = dist, contour = TRUE, subscripts = TRUE), data = newdat) } \keyword{ aplot } latticeExtra/man/dendrogramGrob.Rd0000644000176200001440000000775313077627551016732 0ustar liggesusers\name{dendrogramGrob} \alias{dendrogramGrob} \title{ Create a Grob Representing a Dendrogram } \description{ This function creates a grob (a grid graphics object) that can be manipulated as such. In particular, it can be used as a legend in a lattice display like \code{levelplot} to form heatmaps. } \usage{ dendrogramGrob(x, ord = order.dendrogram(x), side = c("right", "top"), add = list(), size = 5, size.add = 1, type = c("rectangle", "triangle"), \dots) } \arguments{ \item{x}{ An object of class \code{"dendrogram"}. See \code{\link{dendrogram}} for details } \item{ord}{ A vector of integer indices giving the order in which the terminal leaves are to be plotted. If this is not the same as \code{order.dendrogram(x)}, then the leaves may not cluster together and branches of the dendrogram may intersect. } \item{side}{ Intended position of the dendrogram when added in a heatmap. Currently allowed positions are \code{"right"} and \code{"top"}. } \item{add}{ Additional annotation. Currently, it is only possible to add one or more rows of rectangles at the base of the dendrogram. See details below. } \item{size}{ Total height of the dendrogram in \code{"lines"} (see \code{\link{unit}}) } \item{size.add}{ Size of each additional row, also in \code{"lines"} } \item{type}{ Whether a child node is joined to its parent directly with a straight line (\code{"triangle"}) or as a \dQuote{stair} with two lines (\code{"rectangle"}) } \item{\dots}{ Extra arguments. Currently ignored. } } \details{ The \code{add} argument can be used for additional annotation at the base of the dendrogram. It should be a list with one component for each row, with names specifying the type of annotation and components specifying the contents. Currently, the only supported name is \code{"rect"} (which can be repeated), producing rectangles. The components in such a case is a list of graphical parameters, possibly vectorized, that are passed on to \code{\link{gpar}}. } \value{ An object of class \code{"grob"} } \author{ Deepayan Sarkar \email{deepayan.sarkar@r-project.org} } \seealso{ \code{\link{heatmap}}, \code{\link{levelplot}} } \examples{ data(mtcars) x <- t(as.matrix(scale(mtcars))) dd.row <- as.dendrogram(hclust(dist(x))) row.ord <- order.dendrogram(dd.row) dd.col <- as.dendrogram(hclust(dist(t(x)))) col.ord <- order.dendrogram(dd.col) library(lattice) levelplot(x[row.ord, col.ord], aspect = "fill", scales = list(x = list(rot = 90)), colorkey = list(space = "left"), legend = list(right = list(fun = dendrogramGrob, args = list(x = dd.col, ord = col.ord, side = "right", size = 10)), top = list(fun = dendrogramGrob, args = list(x = dd.row, side = "top", type = "triangle")))) ## Version with unsorted rows. ## For illustration, MPG ploted again at foot of dendrogram mpg <- x["mpg", col.ord] mpg.col <- level.colors(mpg, at = do.breaks(range(mpg), 10), col.regions = terrain.colors) levelplot(x[, col.ord], aspect = "iso", scales = list(x = list(rot = 90)), colorkey = FALSE, legend = list(right = list(fun = dendrogramGrob, args = list(x = dd.col, ord = col.ord, side = "right", add = list(rect = list(fill = mpg.col)), size = 10)), top = list(fun = dendrogramGrob, args = list(x = dd.row, ord = sort(row.ord), side = "top", size = 10, type = "triangle")))) } \keyword{ dplot } latticeExtra/man/panel.xyimage.Rd0000644000176200001440000000455713574410707016531 0ustar liggesusers\name{panel.xyimage} \alias{panel.xyimage} \title{ Scatter plots using emoji-like images } \description{ Panel function that create scatter plots with emoji-like images for plotting character. Images can be local files or URLs. Only PNG and JPEG images are currently supported. } \usage{ panel.xyimage(x, y, subscripts, groups = NULL, pch = NULL, cex = 1, ..., grid = FALSE, abline = NULL) } \arguments{ \item{x, y}{ Data vectors to be plotted. } \item{subscripts}{ An integer vector of subscripts giving indices of the \code{x} and \code{y} values in the original data source. See the corresponding entry in \code{\link{xyplot}} for details. } \item{groups}{ A factor defining groups. } \item{pch}{ A character vector giving path(s) or URL(s) of PNG or JPEG files. If \code{groups} is specified, there should be one value for each level, otherwise this should have length 1. Recycled as necessary. } \item{cex}{ A numeric multiplier for the size of the symbols. As with \code{pch}, this can be a vector corresponding to levels of \code{groups}. } \item{\dots}{ Further arguments are accepted but ignored. } \item{grid}{ A logical flag, character string, or list specifying whether and how a background grid should be drawn. See \code{\link{panel.xyplot}} for details. } \item{abline}{ A numeric vector or list, specifying arguments arguments for \code{\link{panel.abline}}, which is called with those arguments. See \code{\link{panel.xyplot}} for details. } } \details{ The image sources given by \code{pch} are downloaded if necessary and read in every time the panel function is called. If the same images are to be used in multiple panels, it may be more efficient to download them once and provide the file paths rather than provide URLs. } \author{ Deepayan Sarkar } \seealso{ \code{\link{panel.xyplot}} } \examples{ \dontrun{ alive <- "https://twemoji.maxcdn.com/72x72/1f60a.png" dead <- "https://twemoji.maxcdn.com/72x72/1f480.png" dotplot(Titanic, scales = list(x = "free"), between = list(x = 1), panel = panel.xyimage, pch = c(dead, alive), grid = "h", main = "Survival on the Titanic", xlab = "Number of persons") } } \keyword{ dplot } latticeExtra/man/biocAccess.Rd0000644000176200001440000000212313077627551016016 0ustar liggesusers\name{biocAccess} \alias{biocAccess} \docType{data} \title{ Hourly access attempts to Bioconductor website } \description{ This data set records the hourly number of access attempts to the Bioconductor website (\url{http://www.bioconductor.org}) during January through May of 2007. The counts are essentially an aggregation of the number of entries in the access log. } \usage{data(biocAccess)} \format{ A data frame with 3623 observations on the following 7 variables. \describe{ \item{\code{counts}}{ the number of access attempts} \item{\code{day}}{ the day of the month } \item{\code{month}}{a factor with levels \code{Jan}, \code{Feb}, \dots, \code{Dec}} \item{\code{year}}{ the year (all 2007) } \item{\code{hour}}{ hour of the day, a numeric vector} \item{\code{weekday}}{ a factor with levels \code{Monday}, \code{Tuesday}, \dots, \code{Sunday}} \item{\code{time}}{a POSIXt representation of the start of the hour} } } \examples{ data(biocAccess) xyplot(stl(ts(biocAccess$counts[1:(24 * 30)], frequency = 24), "periodic")) } \keyword{datasets} latticeExtra/man/gvhd10.Rd0000644000176200001440000000272513574405245015055 0ustar liggesusers\name{gvhd10} \alias{gvhd10} \docType{data} \title{ Flow cytometry data from five samples from a patient } \description{ Flow cytometry data from blood samples taken from a Leukemia patient before and after allogenic bone marrow transplant. The data spans five visits. } \usage{data(gvhd10)} \format{ A data frame with 113896 observations on the following 8 variables. \describe{ \item{\code{FSC.H}}{ forward scatter height values} \item{\code{SSC.H}}{ side scatter height values } \item{\code{FL1.H}}{ intensity (height) in the FL1 channel } \item{\code{FL2.H}}{ intensity (height) in the FL2 channel } \item{\code{FL3.H}}{ intensity (height) in the FL3 channel } \item{\code{FL2.A}}{ intensity (area) in the FL2 channel } \item{\code{FL4.H}}{ intensity (height) in the FL4 channel } \item{\code{Days}}{a factor with levels \code{-6} \code{0} \code{6} \code{13} \code{20} \code{27} \code{34}} } } \source{ \url{http://web.archive.org/web/20070427103026/http://www.ficcs.org/software.html#Data_Files} } \references{ Brinkman, R.R., et al. (2007). High-Content Flow Cytometry and Temporal Data Analysis for Defining a Cellular Signature of Graft-Versus-Host Disease. \emph{Biology of Blood and Marrow Transplantation} \bold{13--6} } \examples{ ## Figure 3.4 from Sarkar (2008) data(gvhd10) histogram(~log2(FSC.H) | Days, gvhd10, xlab = "log Forward Scatter", type = "density", nint = 50, layout = c(2, 4)) } \keyword{datasets} latticeExtra/man/tileplot.Rd0000644000176200001440000000411313077627551015615 0ustar liggesusers\name{tileplot} \alias{tileplot} \title{ Plot a spatial mosaic from irregular 2D points } \description{ Represents an irregular set of (x, y) points with a color covariate. Polygons are drawn enclosing the area closest to each point. This is known variously as a Voronoi mosaic, a Dirichlet tesselation, or Thiessen polygons. } \usage{ tileplot(x, data = NULL, aspect = "iso", prepanel = "prepanel.default.xyplot", panel = "panel.voronoi", ...) } \arguments{ \item{x, data}{ formula and data as in \code{\link{levelplot}}, except that it expects irregularly spaced points rather than a regular grid. } \item{aspect}{ aspect ratio: "iso" is recommended as it reproduces the distances used in the triangulation calculations. } \item{panel, prepanel}{ see \code{\link{xyplot}}. } \item{\dots}{ further arguments to the panel function, which defaults to \code{\link{panel.voronoi}}. } } \details{ See \code{\link{panel.voronoi}} for further options and details. } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{panel.voronoi}}, \code{\link{levelplot}} } \examples{ xyz <- data.frame(x = rnorm(100), y = rnorm(100), z = rnorm(100)) tileplot(z ~ x * y, xyz) ## tripack is faster but non-free \dontrun{ tileplot(z ~ x * y, xyz, use.tripack = TRUE) } ## showing rectangular window boundary tileplot(z ~ x * y, xyz, xlim = c(-2, 4), ylim = c(-2, 4)) ## insert some missing values xyz$z[1:10] <- NA ## the default na.rm = FALSE shows missing polygons tileplot(z ~ x * y, xyz, border = "black", col.regions = grey.colors(100), pch = ifelse(is.na(xyz$z), 4, 21), panel = function(...) { panel.fill("hotpink") panel.voronoi(...) }) ## use na.rm = TRUE to ignore points with missing values update(trellis.last.object(), na.rm = TRUE) ## a quick and dirty approximation to US state boundaries tmp <- state.center tmp$Income <- state.x77[,"Income"] tileplot(Income ~ x * y, tmp, border = "black", panel = function(x, y, ...) { panel.voronoi(x, y, ..., points = FALSE) panel.text(x, y, state.abb, cex = 0.6) }) } \keyword{ hplot } latticeExtra/man/panel.smoother.Rd0000644000176200001440000000574013077627551016726 0ustar liggesusers\name{panel.smoother} \alias{panel.smoother} \title{ Plot a smoothing line with standard error bounds. } \description{ Plot a smoothing line with standard error bounds. This is based on the \code{\link[ggplot2]{stat_smooth}} function from \pkg{ggplot2}. } \usage{ panel.smoother(x, y, form = y ~ x, method = "loess", ..., se = TRUE, level = 0.95, n = 100, col = plot.line$col, col.se = col, lty = plot.line$lty, lwd = plot.line$lwd, alpha = plot.line$alpha, alpha.se = 0.25, border = NA, ## ignored: ## subscripts, group.number, group.value, type, col.line, col.symbol, fill, pch, cex, font, fontface, fontfamily) } \arguments{ \item{x, y}{ data points. If these are missing, they will be looked for in the environment of \code{form}. So in many cases you can skip these if passing \code{form}. In fact, for convenience, the formula can be passed as the first argument (i.e. \code{x}). } \item{form, method}{ the smoothing model is constructed (approximately) as \code{method(form, data = list(x=x, y=y), ...)}. See the Examples section for common choices. } \item{\dots}{ further arguments passed on to the model function (\code{method}). } \item{se, level}{ estimate standard errors on the smoother, at the given \code{level}, and plot these as a band. } \item{n}{ number of equi-spaced points on which to evaluate the smooth function. } \item{col, col.se, lty, lwd, alpha, alpha.se, border}{ graphical parameters. \code{col} and \code{alpha} apply to the smoothing line, while \code{col.se} and \code{alpha.se} apply to the shaded \code{se} region. } \item{subscripts, group.number, group.value, type, col.line, col.symbol, fill, pch, cex, font, fontface, fontfamily}{ ignored. } } \details{ This should work with any model function that takes a formula argument, and has a \code{predict} method with a \code{se} argument. } \author{ Felix Andrews \email{felix@nfrac.org} Based on \code{\link[ggplot2]{stat_smooth}} by Hadley Wickham. } \seealso{ \code{\link{panel.loess}}, \code{\link{panel.quantile}}, \code{\link[ggplot2]{stat_smooth}} } \examples{ set.seed(1) xy <- data.frame(x = runif(100), y = rt(100, df = 5), y2 = rt(100, df = 5) + 1) xyplot(y ~ x, xy, panel = function(...) { panel.xyplot(...) panel.smoother(..., span = 0.9) }) ## per-group layers with glayer (pass `...` to get styles) xyplot(y + y2 ~ x, xy) + glayer(panel.smoother(...)) ## natural spline with 5 degrees of freedom if (require("splines")) xyplot(y ~ x, xy) + layer(panel.smoother(y ~ ns(x,5), method = "lm")) ## thin plate regression spline with smoothness ## chosen by cross validation (see ?mgcv::gam) if (require("mgcv")) xyplot(y ~ x, xy) + layer(panel.smoother(y ~ s(x), method = "gam")) ## simple linear regression with standard errors: xyplot(y ~ x, xy) + layer(panel.smoother(x, y, method = "lm"), style = 2) } \keyword{ dplot } latticeExtra/man/resizePanels.Rd0000644000176200001440000000363413077627551016434 0ustar liggesusers\name{resizePanels} \alias{resizePanels} \title{ Resize panels to match data scales } \description{ Modify a \code{"trellis"} object so that when plotted, the panels have the specified relative width and height. } \usage{ resizePanels(x, h = 1, w = 1) } \arguments{ \item{x}{ An object of class \code{"trellis"}. } \item{h}{ numeric vector specifying panel heights} \item{w}{ numeric vector specifying of panel widths} } \details{ \code{resizePanels} modifies a \code{"trellis"} object so that when plotted, the panels have the specified relative width and height; this is only interesting when \code{h} or \code{w} are vectors with unequal entries. \code{resizePanels} can be called with no arguments, in which case the currently plotted \code{"trellis"} object (if any) is used for \code{x}, and a suitable \code{h} or \code{w} (based on the current panel layout) is chosen so that sizes are relative to the current panel ranges in the native coordinate system. This is only interesting when \code{scales="free"}; the resulting object, when plotted again, will have varying panel sizes but the same number of data units per inch in all panels. } \value{ An object of class \code{"trellis"}; essentially the same as \code{x}, but with certain properties modified. } \author{ Deepayan Sarkar } \seealso{ \code{\link{Lattice}}, \code{\link{xyplot}} } \examples{ state <- data.frame(state.x77, state.region, state.name) state$state.name <- with(state, reorder(reorder(state.name, Frost), as.numeric(state.region))) dpfrost <- dotplot(state.name ~ Frost | reorder(state.region, Frost), data = state, layout = c(1, 4), scales = list(y = list(relation = "free"))) ## approximate resizePanels(dpfrost, h = with(state, table(reorder(state.region, Frost)))) ## exact (including boundary padding) resizePanels() } \keyword{dplot} latticeExtra/man/panel.scaleArrow.Rd0000644000176200001440000000361113077627551017163 0ustar liggesusers\name{panel.scaleArrow} \alias{panel.scaleArrow} \title{ Draw a scale bar as an arrow, labelled with its length in plot units. } \description{ Draw a scale bar as an arrow, labelled with its length in plot units. } \usage{ panel.scaleArrow(x = unit(0:1, "npc"), y = unit(0:1, "npc"), default.units = "npc", digits = 0, append = "", label = NULL, angle = 30, length = 0.5, unit = "char", type = "open", ends = "both", \dots, col = add.line$col, fill = col, alpha = add.line$alpha, lty = add.line$lty, lwd = add.line$lwd, col.text = add.text$col, alpha.text = add.text$alpha) } \arguments{ \item{x, y, default.units}{ coordinates of the line ends as \pkg{grid} \code{\link{unit}}s or otherwise interpreted in \code{default.units}. } \item{digits}{ number of decimal places to keep for the distance measure. } \item{append}{ a string to append to the distance for the label. } \item{label}{ label to place on the mid point of the scale, over-riding the default. } \item{angle, length, unit, type, ends}{ specification of the arrow style; see \code{\link{panel.arrows}}. } \item{\dots}{ further arguments passed to \code{\link{panel.text}}. You will need at least the \code{pos} or \code{adj} arguments. } \item{col, fill, alpha, lty, lwd}{ graphical parameters relevant to the line. } \item{col.text, alpha.text}{ graphical parameters relevant to the text label. Others like \code{cex} and \code{font} can be passed though \code{\dots}. } } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{panel.abline}}, \code{\link{grid.text}} } \examples{ xyplot(EuStockMarkets) + layer(panel.scaleArrow(x = 0.99, append = " units", col = "grey", srt = 90, cex = 0.8)) } \keyword{ aplot } latticeExtra/man/panel.ellipse.Rd0000644000176200001440000000637013077627551016523 0ustar liggesusers\name{panel.ellipse} \alias{panel.ellipse} \title{ Lattice panel function to fit and draw a confidence ellipsoid from bivariate data. } \description{ A lattice panel function that computes and draws a confidence ellipsoid from bivariate data, possibly grouped by a third variable. } \usage{ panel.ellipse(x, y, groups = NULL, level = 0.68, segments = 50, robust = FALSE, center.pch = 3, center.cex = 2, \dots, type, pch, cex) } \arguments{ \item{x, y}{ Numeric vectors of same length giving the bivariate data. Non-numeric variables will be coerced to be numeric. } \item{groups}{ Optional grouping variable. } \item{level}{ Confidence level for the ellipse. } \item{segments}{ Number of segments used to approximate the ellipse. } \item{robust}{ Logical indicating whether a robust method should be used. If \code{TRUE}, the confidence ellipse is based on a bivariate t-distribution using the \code{\link[MASS]{cov.trob}} function in the \pkg{MASS} package. } \item{center.pch}{ Plotting character for the center (fitted mean). If \code{NULL}, the center will not be shown on the plot. } \item{center.cex}{ Character expansion (size) multipler for the symbol indicating the center. } \item{\dots}{ Further arguments, typically graphical parameters. Passed on to \code{\link{panel.xyplot}}. } \item{type, pch, cex}{ Parameters that are ignored; these are present only to make sure they are not inadvertently passed on to \code{panel.xyplot}. } } \author{ Deepayan Sarkar, extending code contributed by Michael Friendly. } % \seealso{ % \code{\link{}} % } \examples{ xyplot(Sepal.Length ~ Petal.Length, groups=Species, data = iris, scales = "free", par.settings = list(superpose.symbol = list(pch=c(15:17)), superpose.line = list(lwd=2, lty=1:3)), panel = function(x, y, ...) { panel.xyplot(x, y, ...) panel.ellipse(x, y, ...) }, auto.key = list(x = .1, y = .8, corner = c(0, 0))) ## Without groups xyplot(Sepal.Length ~ Petal.Length, data = iris, scales = "free", par.settings = list(plot.symbol = list(cex = 1.1, pch=16)), panel = function(x, y, ...) { panel.xyplot(x, y, ...) panel.ellipse(x, y, lwd = 2, ...) }, auto.key = list(x = .1, y = .8, corner = c(0, 0))) ## With conditioning xyplot(Sepal.Length ~ Petal.Length | Species, data = iris, scales = "free", par.settings = list(plot.symbol = list(cex = 1.1, pch=16)), layout=c(2,2), panel = function(x, y, ...) { panel.xyplot(x, y, ...) panel.ellipse(x, y, lwd = 2, ...) }, auto.key = list(x = .6, y = .8, corner = c(0, 0))) ## Compare classical with robust xyplot(Sepal.Length ~ Petal.Length | Species, data = iris, scales = "free", par.settings = list(plot.symbol = list(cex = 1.1, pch=16)), layout=c(2,2), panel = function(x, y, ...) { panel.xyplot(x, y, ...) panel.ellipse(x, y, lwd = 2, ...) panel.ellipse(x, y, lwd = 2, col="red", robust=TRUE, ...) }) } % __ONLY ONE__ keyword per line \keyword{ dplot } latticeExtra/man/panel.tskernel.Rd0000644000176200001440000001003413077627551016705 0ustar liggesusers\name{panel.tskernel} \alias{panel.tskernel} \alias{simpleSmoothTs} \alias{simpleSmoothTs.default} \alias{simpleSmoothTs.zoo} \title{ Calculate and plot smoothed time series. } \description{ Plot time series smoothed by discrete symmetric smoothing kernels. These kernels can be used to smooth time series objects. Options include moving averages, triangular filters, or approximately Gaussian filters. } \usage{ panel.tskernel(x, y, ..., width = NROW(x) \%/\% 10 + 1, n = 300, c = 1, sides = 2, circular = FALSE, kern = kernel("daniell", rep(floor((width/sides) / sqrt(c)), c))) simpleSmoothTs(x, ...) \method{simpleSmoothTs}{default}(x, ..., width = NROW(x) \%/\% 10 + 1, n = NROW(x), c = 1, sides = 2, circular = FALSE, kern = kernel("daniell", rep(floor((width/sides)/sqrt(c)), c))) \method{simpleSmoothTs}{zoo}(x, ..., n = NROW(x)) } \arguments{ \item{x, y}{ data points. Should define a regular, ordered series. A time series object can be passed as the first argument, in which case \code{y} can be omitted. The \code{x} argument given to \code{simpleSmoothTs} is allowed to be a multivariate time series, i.e. to have multiple columns. } \item{\dots}{ further arguments passed on to \code{\link{panel.lines}}. } \item{width}{ nominal width of the smoothing kernel in time steps. In the default case, which is a simple moving average, this is the actual width. When \code{c > 1} the number of time steps used in the kernel increases but the equivalent bandwidth stays the same. If only past values are used (with \code{sides = 1}) then \code{width} refers to one side of the symmetric kernel. } \item{n}{ approximate number of time steps desired for the result. If this is less than the length of \code{x}, the smoothed time series will be aggregated by averaging blocks of (an integer number of) time steps, and this aggregated series will be centered with respect to the original series. } \item{c}{ smoothness of the kernel: \code{c = 1} is a moving average, \code{c = 2} is a triangular kernel, \code{c = 3} and higher approximate smooth Gaussian kernels. \code{c} is actually the number of times to recursively convolve a simple moving average kernel with itself. The kernel size is adjusted to maintain a constant equivalent bandwidth as \code{c} increases. } \item{sides}{ if \code{sides=1} the smoothed series is calculed from past values only (using one half of the symmetric kernel); if \code{sides=2} it is centred around lag 0. } \item{circular}{ to treat the data as circular (periodic). } \item{kern}{ a \code{tskernel} object; if given, this over-rides \code{width} and \code{c}. } } \note{ The author is not an expert on time series theory. } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{kernel}}, \code{\link{filter}}, \code{\link{xyplot.ts}} } \examples{ ## a Gaussian-like filter (contrast with c = 1 or c = 2) xyplot(sunspot.year) + layer(panel.tskernel(x, y, width = 20, c = 3, col = 1, lwd = 2)) ## example from ?kernel: ## long and short moving averages, backwards in time xyplot(EuStockMarkets[,1]) + layer(panel.tskernel(x, y, width = 100, col = 1, sides = 1)) + layer(panel.tskernel(x, y, width = 20, col = 2, sides = 1)) ## per group, with a triangular filter xyplot(EuStockMarkets, superpose = TRUE) + glayer(panel.tskernel(..., width = 100, c = 2), theme = simpleTheme(lwd = 2)) ## plot the actual kernels used; note adjustment of width width = 100 kdat <- lapply(1:4, function(c) { k <- kernel("daniell", rep(floor(0.5*width / sqrt(c)), c)) ## demonstrate that the effective bandwidth stays the same: message("c = ", c, ": effective bandwidth = ", bandwidth.kernel(k)) ## represent the kernel as a time series, for plotting ts(k[-k$m:k$m], start = -k$m) }) names(kdat) <- paste("c =", 1:4) xyplot(do.call(ts.union, kdat), type = "h", scales = list(y = list(relation = "same"))) } \keyword{ dplot } latticeExtra/man/ancestry.Rd0000644000176200001440000000214513077627551015614 0ustar liggesusers\name{ancestry} \alias{ancestry} \docType{data} \title{ Modal ancestry by County according to US 2000 Census } \description{ This data set records the population and the three most frequently reported ancestries by US county, according to the 2000 census. } \usage{data(ancestry)} \format{ A data frame with 3219 observations on the following 5 variables. \describe{ \item{\code{county}}{ A factor. An attempt has been made to make the levels look similar to the county names used in the \code{maps} package. } \item{\code{population}}{a numeric vector} \item{\code{top}}{a character vector} \item{\code{second}}{a character vector} \item{\code{third}}{a character vector} } } \source{ U.S. Census Bureau. The ancestry data were extracted from Summary File 3, available from \url{http://www.census.gov/census2000/sumfile3.html} which is based on the \sQuote{long form} questionnaire (asked to 1 in 6 households surveyed). } \seealso{ \code{\link{mapplot}}, for examples. } \references{ \url{http://www.census.gov/prod/cen2000/doc/sf3.pdf} } \keyword{datasets} latticeExtra/man/panel.2dsmoother.Rd0000644000176200001440000000435313077627551017153 0ustar liggesusers\name{panel.2dsmoother} \alias{panel.2dsmoother} \title{ Plot a smooth approximation of z over x and y. } \description{ Plot a smooth approximation, using \code{\link{loess}} by default, of one variable (\code{z}) against two others (\code{x} and \code{y}). This panel function should be used with a \code{\link{levelplot}}. } \usage{ panel.2dsmoother(x, y, z, subscripts = TRUE, form = z ~ x * y, method = "loess", ..., args = list(), n = 100) } \arguments{ \item{x, y, z}{ data points. If these are missing, they will be looked for in the environment of \code{form}. So in many cases you can skip these if passing \code{form}. In fact, for convenience, the formula can be passed as the first argument (i.e. \code{x}). } \item{form, method}{ the smoothing model is constructed (approximately) as \code{method(form, data = list(x=x, y=y, z=z), {args})}. See the Examples section for common choices. } \item{subscripts}{ data indices for the current packet, as passed in by \code{levelplot}. } \item{\dots}{ further arguments passed on to \code{\link{panel.levelplot}}. } \item{args}{ a list of further arguments to the model function (\code{method}). } \item{n}{ number of equi-spaced points along each of x and y on which to evaluate the smooth function. } } \details{ This should work with any model function that takes a formula argument, and has a \code{predict} method argument. } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{loess}}, \code{\link{panel.smoother}} } \examples{ set.seed(1) xyz <- data.frame(x = rnorm(100), y = rnorm(100)) xyz$z <- with(xyz, x * y + rnorm(100, sd = 1)) levelplot(z ~ x * y, xyz, panel = panel.2dsmoother) ## showing data points on the same color scale levelplot(z ~ x * y, xyz, panel = panel.levelplot.points, cex = 1.2) + layer_(panel.2dsmoother(..., n = 200)) ## simple linear regression model levelplot(z ~ x * y, xyz, panel = panel.levelplot.points) + layer_(panel.2dsmoother(..., method = "lm")) ## GAM smoother with smoothness by cross validation if (require("mgcv")) levelplot(z ~ x * y, xyz, panel = panel.2dsmoother, form = z ~ s(x, y), method = "gam") } \keyword{ dplot } latticeExtra/man/ggplot2like.theme.Rd0000644000176200001440000000767313077627551017323 0ustar liggesusers\name{ggplot2like.theme} \alias{ggplot2like.theme} \alias{ggplot2like.opts} \alias{ggplot2like} \alias{axis.grid} \title{A ggplot2-like theme for Lattice} \description{ A theme for Lattice based on some of the default styles used in the \pkg{ggplot2} package by Hadley Wickham. Specifically, parts of the functions \code{scale_colour_hue}, \code{scale_colour_gradient} and \code{theme_gray} were copied. Although superficially similar, the implementation here lacks much of the flexibility of the \pkg{ggplot2} functions: see \url{http://had.co.nz/ggplot2/}. } \usage{ ggplot2like(..., n = 6, h = c(0,360) + 15, l = 65, c = 100, h.start = 0, direction = 1, low = "#3B4FB8", high = "#B71B1A", space = "rgb") ggplot2like.opts() axis.grid(side = c("top", "bottom", "left", "right"), ..., ticks = c("default", "yes", "no"), scales, components, line.col) } \arguments{ \item{\dots}{ further arguments passed on to \code{\link{simpleTheme}} to over-ride defaults. } \item{n}{ number of \code{superpose} styles to generate, with equally spaced hues. } \item{h, c, l, h.start, direction}{ range of hues, starting hue and direction to generate a discrete colour sequence with \code{\link{hcl}}. } \item{low, high, space}{ extreme colors to interpolate with \code{\link{colorRampPalette}} for a continuous color scale. } \item{side, ticks, scales, components, line.col}{ see \code{\link{axis.default}}. Typically \code{axis.grid} is not called directly so these should not be needed. } } \value{ \code{ggplot2like()} produces a list of settings which can be passed as the \code{par.settings} argument to a high-level Lattice plot, or to \code{\link{trellis.par.set}}. \code{ggplot2like.opts()} produces a list which can be passed as the \code{lattice.options} argument to a high-level Lattice plot, or to \code{\link{lattice.options}}. } \author{ Felix Andrews \email{felix@nfrac.org}; copied and adapted from \pkg{ggplot2} by Hadley Wickham. } \seealso{ the \pkg{ggplot2} package: \url{http://had.co.nz/ggplot2/}. \code{\link{custom.theme}}, \code{\link{scale.components}} } \examples{ set.seed(0) ## basic theme does not include white grid lines xyplot(exp(1:10) ~ 1:10, type = "b", par.settings = ggplot2like()) ## add lines for axis ticks with custom axis function xyplot(exp(1:10) ~ 1:10, type = "b", par.settings = ggplot2like(), axis = axis.grid) ## this can be used together with scale.components ## (minor lines only visible on devices supporting translucency) xyplot(exp(rnorm(500)) ~ rnorm(500), scales = list(y = list(log = TRUE)), yscale.components = yscale.components.log10ticks, par.settings = ggplot2like(), axis = axis.grid) ## ggplotlike.opts() specifies axis = axis.grid as well as ## xscale.components.subticks / yscale.components.subticks xyg <- make.groups( "group one" = rnorm(80, 1), "group two" = rnorm(80, 5), "group three" = rnorm(80, 2)) xyg$x <- rev(xyg$data) ## group styles: specify number of equi-spaced hues xyplot(data ~ x, xyg, groups = which, auto.key = TRUE, par.settings = ggplot2like(n = 3), lattice.options = ggplot2like.opts()) + glayer(panel.smoother(...)) ## or set it as the default: opar <- trellis.par.get() trellis.par.set(ggplot2like(n = 4, h.start = 180)) oopt <- lattice.options(ggplot2like.opts()) bwplot(voice.part ~ height, data = singer) histogram(rnorm(100)) barchart(Titanic[,,,"No"], main = "Titanic deaths", layout = c(1, 2), auto.key = list(columns = 2)) ## reset trellis.par.set(opar) lattice.options(oopt) ## axis.grid and scale.components.subticks can be used alone: ## (again, lines for minor ticks need transculency-support to show up) xyplot(exp(1:10) ~ 1:10, type = "b", lattice.options = ggplot2like.opts(), par.settings = list(axis.line = list(col = NA), reference.line = list(col = "grey")), scales = list(tck = c(0,0))) } \keyword{dplot} latticeExtra/man/theEconomist.theme.Rd0000644000176200001440000000644313077627551017533 0ustar liggesusers\name{theEconomist.theme} \alias{theEconomist.theme} \alias{theEconomist.opts} \alias{theEconomist.axis} \alias{asTheEconomist} \title{ Generate plots with style like The Economist. } \description{ Uses colors, drawing styles, axis settings, etc, to produce plots inspired by those in The Economist magazine. (\url{http://www.economist.com/}). } \usage{ theEconomist.theme(win.fontfamily = NULL, with.bg = FALSE, box = "black", \dots) theEconomist.opts() asTheEconomist(x, ..., type = "l", ylab = expression(NULL), xlab = expression(NULL), par.settings = theEconomist.theme(with.bg = with.bg, box = "transparent"), with.bg = FALSE, par.strip.text = list(font = 2)) } \arguments{ \item{win.fontfamily}{ on Windows systems, sets the font by name. } \item{with.bg}{ if \code{TRUE}, uses a light blue background and a few other corresponding changes; otherwise white. } \item{box}{ color for panel boxes, strip outlines, and axis ticks. } \item{\dots}{ further arguments passed to \code{\link{simpleTheme}} and used to modify the theme. } \item{x}{ a \code{trellis} object, i.e. the result of a high-level plot function in the Lattice framework. } \item{type}{ plot type, relevant for \code{xyplot}s, see \code{\link{panel.xyplot}}. } \item{ylab, xlab}{ axis labels, blank by default. } \item{par.settings}{ style settings, defaulting to \code{theEconomist.theme}. } \item{par.strip.text}{ see \code{\link{xyplot}}. } } \details{ You can just use \code{par.settings = theEconomist.theme()}, which gives you some colors and styles, but it does not do the grid lines or axis settings. } \references{ \url{http://www.economist.com/displayStory.cfm?story_id=15065782} \url{http://www.economist.com/displayStory.cfm?story_id=14941181} } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{custom.theme}} } \examples{ xyplot(window(sunspot.year, start = 1900), main = "Sunspot cycles", sub = "Number per year", par.settings = theEconomist.theme(box = "transparent"), lattice.options = theEconomist.opts()) asTheEconomist(xyplot(window(sunspot.year, start = 1900), main = "Sunspot cycles", sub = "Number per year")) trellis.last.object() + layer_(panel.xblocks(x, x >= 1980, col = "#6CCFF6", alpha = .5)) + layer(panel.text(1988, 180, "Forecast", font = 3, pos = 2)) ## set as defaults -- remember to set back when finished. opar <- trellis.par.get() trellis.par.set(theEconomist.theme(box = "transparent")) oopt <- lattice.options(theEconomist.opts()) barchart(Titanic[,,,"No"], main = "Titanic deaths", layout = 1:2, sub = "by sex and class", auto.key = list(columns = 2), scales = list(y = list(alternating = 2))) asTheEconomist( dotplot(VADeaths, main = "Death Rates in Virginia (1940)", auto.key = list(corner = c(.9,0.1))), type = "b", with.bg = TRUE) dotplot(VADeaths, auto.key = TRUE, type = "b", par.settings = theEconomist.theme(with.bg = TRUE)) asTheEconomist( densityplot(~ height, groups = voice.part, data = singer, subset = grep("1", voice.part), plot.points = FALSE)) + glayer(d <- density(x), i <- which.max(d$y), ltext(d$x[i], d$y[i], paste("Group", group.number), pos = 3)) ## reset trellis.par.set(opar) lattice.options(oopt) } \keyword{ dplot } latticeExtra/man/c.trellis.Rd0000644000176200001440000001553713077627551015674 0ustar liggesusers\name{c.trellis} \alias{c.trellis} \alias{xyplot.list} \alias{mergedTrellisLegendGrob} \title{ Merge trellis objects, using same or different scales } \description{ Combine the panels of multiple trellis objects into one. } \usage{ \method{c}{trellis}(..., x.same = NA, y.same = NA, layout = NULL, merge.legends = FALSE, recursive = FALSE) xyplot.list(x, data = NULL, ..., FUN = xyplot, y.same = TRUE, x.same = NA, layout = NULL, merge.legends = FALSE) } \arguments{ \item{\dots}{ two or more trellis objects. If these are named arguments, the names will be used in the corresponding panel strips. } \item{x.same}{ if \code{TRUE}, set the x scale relation to \code{"same"} and recalculate panel limits using data from all panels. Otherwise, the x scales in each panel will be as they were in the original objects (so in general not the same), the default behaviour. } \item{y.same}{ as above, for y scales. Note that \code{xyplot.list} defaults to same y scales. Set to \code{NA} to leave them alone. } \item{layout}{ value for \code{layout} of the new plot; see \code{\link{xyplot}}. } \item{merge.legends}{ to keep keys or legends from all plots, not just the first. If multiple legends share the same \code{"space"}, they are packed together horizontally or vertically. } \item{recursive}{ for consistency with the generic method, ignored. } \item{x}{ a \code{list} of objects to plot individually, and then be combined into one final plot. } \item{FUN, data}{ a lattice plot function, to be called on each element of the list \code{x}, along with \code{data} and \code{...} } } \details{ This mechanism attempts to merge the panels from multiple trellis objects into one. The same effect could generally be achieved by either a custom panel function (where the display depends on \code{packet.number()}), or using \code{\link{print.trellis}} to display multiple trellis objects. However, in some cases it is more convenient to use \code{c()}. Furthermore, it can be useful to maintain the display as a standard lattice display, rather than a composite using \code{\link{print.trellis}}, to simplify further interaction. Many properties of the display, such as titles, axis settings and aspect ratio will be taken from the first object only. Note that combining panels from different types of plots does not really fit the trellis model. Some features of the plot may not work as expected. In particular, some work may be needed to show or hide scales on selected panels. An example is given below. Any trellis object with more than one conditioning variable will be "flattened" to one dimension, eliminating the multi-variate conditioning structure. } \value{ a new trellis object. } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{marginal.plot}} was the original motivating application, \code{\link{print.trellis}}, \code{\link{update.trellis}}, \code{\link{trellis.object}} } \examples{ ## Combine different types of plots. c(wireframe(volcano), contourplot(volcano)) ## Merging levelplot with xyplot levObj <- levelplot(prop.table(WorldPhones, 1) * 100) xyObj <- xyplot(Phones ~ Year, data.frame(Phones = rowSums(WorldPhones), Year = row.names(WorldPhones)), type="b", ylim = c(0, 150000)) ## NOTE: prepanel.levelplot (from first object) is used for entire plot. cObj <- c(levObj, xyObj, layout = 1:2) update(cObj, scales = list(y = list(rot = 0)), ylab = c("proportional distribution", "number of phones")) ## Combine two xyplots. sepals <- xyplot(Sepal.Length ~ Sepal.Width, iris, groups = Species, xlab = "Width", ylab = "Height") petals <- xyplot(Petal.Length ~ Petal.Width, iris, groups = Species) c(Sepals = sepals, Petals = petals) ## Force same scales (re-calculate panel limits from merged data): c(Sepals = sepals, Petals = petals, x.same = TRUE, y.same = TRUE) ## Or - create xyplots from a list of formulas xyplot.list(list(Sepals = Sepal.Length ~ Sepal.Width, Petals = Petal.Length ~ Petal.Width), data = iris, groups = Species, x.same = TRUE, xlab = "Width", ylab = "Height") ## Create histograms from a list of objects, and merge them. xyplot.list(iris, FUN = histogram) ## Create cumulative distribution plots from a list of objects xyplot.list(iris[1:4], FUN = qqmath, groups = iris$Species, auto.key = TRUE) ## Display a table as both frequencies and proportions: data(postdoc) ## remove last row (containing totals) postdoc <- postdoc[1:(nrow(postdoc)-1),] pdprops <- barchart(prop.table(postdoc, margin = 1), auto.key = list(adj = 1)) pdmargin <- barchart(margin.table(postdoc, 1)) pdboth <- c(pdprops, pdmargin) update(pdboth, xlab = c("Proportion", "Freq")) ## Conditioned 'quakes' plot combined with histogram. qua <- xyplot(lat ~ long | equal.count(depth, 3), quakes, aspect = "iso", pch = ".", cex = 2, xlab = NULL, ylab = NULL) qua <- c(qua, depth = histogram(quakes$depth), layout = c(4, 1)) ## suppress scales on the first 3 panels update(qua, scales = list(at = list(NULL, NULL, NULL, NA), y = list(draw = FALSE))) ## Demonstrate merging of legends and par.settings. ## Note that par.settings can conflict, thus need col.line=... mypoints <- xyplot(1:10 ~ 1:10, groups = factor(rep(1:2, each = 5)), par.settings = simpleTheme(pch = 16), auto.key = TRUE) mylines <- xyplot(1:10 ~ 1:10, groups = factor(rep(1:5, each = 2)), type = "l", par.settings = simpleTheme(col.line = 1:5), auto.key = list(lines = TRUE, points = FALSE, columns = 5)) c(mypoints, mylines) ## Visualise statistical and spatial distributions ## (advanced!) library(maps) vars <- as.data.frame(state.x77) StateName <- tolower(state.name) form <- StateName ~ Population + Income + Illiteracy + `Life Exp` + Murder + `HS Grad` + Frost + sqrt(Area) ## construct independent maps of each variable statemap <- map("state", plot = FALSE, fill = TRUE) colkey <- draw.colorkey(list(col = heat.colors(100), at = 0:100, labels = list(labels = c("min","max"), at = c(0,100)))) panel.mapplot.each <- function(x, breaks, ...) panel.mapplot(x = x, breaks = quantile(x), ...) vmaps <- mapplot(form, vars, map = statemap, colramp = heat.colors, panel = panel.mapplot.each, colorkey = FALSE, legend = list(right = list(fun = colkey)), xlab = NULL) ## construct independent densityplots of each variable vdens <- densityplot(form[-2], vars, outer = TRUE, cut = 0, scales = list(relation = "free"), ylim = c(0, NA), cex = 0.5, ref = TRUE) + layer(panel.axis("top", half = FALSE, text.cex = 0.7)) ## combine panels from both plots combo <- c(vmaps, vdens) ## rearrange in pairs n <- length(vars) npairs <- rep(1:n, each = 2) + c(0, n) update(combo[npairs], scales = list(draw = FALSE), layout = c(4, 4), between = list(x = c(0, 0.5), y = 0.5)) } \keyword{ aplot } latticeExtra/man/panel.voronoi.Rd0000644000176200001440000000670413077627551016562 0ustar liggesusers\name{panel.voronoi} \alias{panel.voronoi} \alias{panel.levelplot.points} \title{ Panel functions for level-coded irregular points } \description{ These panel functions for \code{\link{levelplot}} can represent irregular (x, y) points with a color covariate. \code{panel.levelplot.points} simply draws color-coded points. \code{panel.voronoi} uses the \pkg{deldir} package to calculate the spatial extension of a set of points in 2 dimensions. This is known variously as a Voronoi mosaic, a Dirichlet tesselation, or Thiessen polygons. } \usage{ panel.voronoi(x, y, z, subscripts = TRUE, at = pretty(z), points = TRUE, border = "transparent", na.rm = FALSE, win.expand = 0.07, use.tripack = FALSE, ..., col.regions = regions$col, alpha.regions = regions$alpha) panel.levelplot.points(x, y, z, subscripts = TRUE, at = pretty(z), shrink, labels, label.style, contour, region, pch = 21, col.symbol = "#00000044", ..., col.regions = regions$col, fill = NULL) } \arguments{ \item{x, y, z}{ an irregular set of points at locations (x, y) with value z. } \item{subscripts}{ integer vector indicating what subset of x, y and z to draw. Typically passed by \code{\link{levelplot}}. } \item{at, col.regions, alpha.regions}{ color scale definition; see \code{\link{panel.levelplot}}. } \item{points}{ whether to draw the (x, y) points. } \item{border}{ color for polygon borders. } \item{na.rm}{ if \code{TRUE}, points with missing \code{z} values will be excluded from the calculation of polygons. If \code{FALSE}, those polygons are calculated but are not drawn (i.e. are transparent). } \item{win.expand}{ defines the rectangular window bounding the polygons. This is a factor by which to expand the range of the data. Set to 0 to limit drawing at the furthest data point locations. Ignored if \code{use.tripack = TRUE}. } \item{use.tripack}{ if \code{TRUE}, use \pkg{tripack} package rather than \pkg{deldir}. See Details. } \item{\dots}{ further arguments are passed to \code{\link{panel.xyplot}} if \code{points = TRUE}. } \item{pch, col.symbol}{ symbol and border color for points. A filled symbol should be used, i.e. in the range 21-25. } \item{shrink, labels, label.style, contour, region, fill}{ ignored. } } \details{ The \pkg{tripack} package implementation is faster than \pkg{deldir} but not under a fully free licence. Also, the \pkg{deldir} package allows polygons to be clipped to a rectangular window (the \code{win.expand} argument). } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{tileplot}}, \code{\link{panel.levelplot}}, \code{\link[deldir]{deldir}} } \examples{ ## a variant of Figure 5.6 from Sarkar (2008) ## http://lmdvr.r-forge.r-project.org/figures/figures.html?chapter=05;figure=05_06 depth.ord <- rev(order(quakes$depth)) quakes$Magnitude <- equal.count(quakes$mag, 4) quakes.ordered <- quakes[depth.ord, ] levelplot(depth ~ long + lat | Magnitude, data = quakes.ordered, panel = panel.levelplot.points, type = c("p", "g"), aspect = "iso", prepanel = prepanel.default.xyplot) ## a levelplot with jittered cells xyz <- expand.grid(x = 0:9, y = 0:9) xyz[] <- jitter(as.matrix(xyz)) xyz$z <- with(xyz, sqrt((x - 5)^2 + (y - 5)^2)) levelplot(z ~ x * y, xyz, panel = panel.voronoi, points = FALSE) ## hexagonal cells xyz$y <- xyz$y + c(0, 0.5) levelplot(z ~ x * y, xyz, panel = panel.voronoi, points = FALSE) } \keyword{ hplot } latticeExtra/man/EastAuClimate.Rd0000644000176200001440000001460513574363040016441 0ustar liggesusers\name{EastAuClimate} \alias{EastAuClimate} \docType{data} \title{ Climate of the East Coast of Australia } \description{ A set of climate statistics for 16 coastal locations along Eastern Australia. These sites were chosen to be approximately equally spaced to cover the whole eastern coast of Australia. For each site, climate statistics were calculated for the standard 30-year period 1971-2000. Only sites with nearly-complete data were chosen. } \usage{data(EastAuClimate)} \format{ A data frame with the following 10 variables and 5 items of metadata for each of 16 sites. \describe{ \item{\code{SummerMaxTemp}}{ average daily maximum air temperature (degrees C) in February. } \item{\code{SummerMinTemp}}{ average daily minimum air temperature (degrees C) in February. } \item{\code{WinterMaxTemp}}{ average daily maximum air temperature (degrees C) in July. } \item{\code{WinterMinTemp}}{ average daily minimum air temperature (degrees C) in July. } \item{\code{SummerRain}}{ median total precipitation in February (mm/month). } \item{\code{WinterRain}}{ median total precipitation in July (mm/month). } \item{\code{MeanAnnRain}}{ average total amount of precipitation recorded in a year (mm/year). } \item{\code{RainDays}}{ average number of days in a year with at least 1 mm of precipitation. } \item{\code{ClearDays}}{ average number of clear days in a year. This statistic is derived from cloud cover observations, which are measured in oktas (eighths). A clear day is recorded when the mean of the 9 am and 3 pm cloud observations is less than or equal to 2 oktas. } \item{\code{CloudyDays}}{ average number of clear days in a year. A cloudy day is recorded when the mean of the 9 am and 3 pm cloud observations is greater than or equal to 6 oktas. } \item{\code{ID}}{ BOM Site number. } \item{\code{Latitude}}{ Site latitude (degrees North). } \item{\code{Longitude}}{ Site longitude (degrees East). } \item{\code{Elevation}}{ Site elevation (m). } \item{\code{State}}{ Australian state: TAS = Tasmania, VIC = Victoria, NSW = New South Wales, QLD = Queensland. } } The row names of the data frame give the location names. Note: these are not the official names of the climate stations. } \source{ Sites were chosen by hand from maps on the Bureau of Meteorology website. The data were extracted manually from web pages under \url{http://www.bom.gov.au/climate/} and processed to extract a subset of statistics. - by Felix Andrews \email{felix@nfrac.org} Bureau of Meteorology, Commonwealth of Australia. Product IDCJCM0026 Prepared at Wed 31 Dec 2008. Definitions of statistics adapted from \url{http://www.bom.gov.au/climate/cdo/about/about-stats.shtml} } %map(regions = c("Australia", "Australia:Tasmania"), % exact = TRUE, xlim = c(130, 170)) %with(EastAuClimate, { % points(Longitude, Latitude, pch = 16) % text(Longitude, Latitude, row.names(EastAuClimate), % pos = c(4, 4, 2, 2, rep(4, 12))) %}) \examples{ data(EastAuClimate) ## Compare the climates of state capital cities EastAuClimate[c("Hobart", "Melbourne", "Sydney", "Brisbane"),] ## A function to plot maps (a Lattice version of maps::map) lmap <- function(database = "world", regions = ".", exact = FALSE, boundary = TRUE, interior = TRUE, projection = "", parameters = NULL, orientation = NULL, aspect = "iso", type = "l", par.settings = list(axis.line = list(col = "transparent")), xlab = NULL, ylab = NULL, ...) { theMap <- map(database, regions, exact = exact, boundary = boundary, interior = interior, projection = projection, parameters = parameters, orientation = orientation, plot = FALSE) xyplot(y ~ x, theMap, type = type, aspect = aspect, par.settings = par.settings, xlab = xlab, ylab = ylab, default.scales = list(draw = FALSE), ...) } ## Plot the sites on a map of Australia if (require("maps")) { lmap(regions = c("Australia", "Australia:Tasmania"), exact = TRUE, projection = "rectangular", parameters = 150, xlim = c(130, 170), panel = function(...) { panel.xyplot(...) with(EastAuClimate, { panel.points(Longitude, Latitude, pch = 16) txt <- row.names(EastAuClimate) i <- c(3, 4) panel.text(Longitude[ i], Latitude[ i], txt[ i], pos = 2) panel.text(Longitude[-i], Latitude[-i], txt[-i], pos = 4) }) }) } ## Average daily maximum temperature in July (Winter). xyplot(WinterMaxTemp ~ Latitude, EastAuClimate, aspect = "xy", type = c("p", "a"), ylab = "Temperature (degrees C)") ## (Make a factor with levels in order - by coastal location) siteNames <- factor(row.names(EastAuClimate), levels = row.names(EastAuClimate)) ## Plot temperature ranges (as bars), color-coded by RainDays segplot(siteNames ~ WinterMinTemp + SummerMaxTemp, EastAuClimate, level = RainDays, sub = "Color scale: number of rainy days per year", xlab = "Temperature (degrees C)", main = paste("Typical temperature range and wetness", "of coastal Australian cities", sep = "\n")) ## Show Winter and Summer temperature ranges separately segplot(Latitude ~ WinterMinTemp + SummerMaxTemp, EastAuClimate, main = "Average daily temperature ranges \n of coastal Australian sites", ylab = "Latitude", xlab = "Temperature (degrees C)", par.settings = simpleTheme(lwd = 3, alpha = 0.5), key = list(text = list(c("July (Winter)", "February (Summer)")), lines = list(col = c("blue", "red"))), panel = function(x, y, z, ..., col) { with(EastAuClimate, { panel.segplot(WinterMinTemp, WinterMaxTemp, z, ..., col = "blue") panel.segplot(SummerMinTemp, SummerMaxTemp, z, ..., col = "red") }) }) ## Northern sites have Summer-dominated rainfall; ## Southern sites have Winter-dominated rainfall. xyplot(SummerRain + WinterRain ~ Latitude, EastAuClimate, type = c("p", "a"), auto.key = list(lines = TRUE), ylab = "Rainfall (mm / month)") ## Clear days are most frequent in the mid latitudes. xyplot(RainDays + CloudyDays + ClearDays ~ Latitude, EastAuClimate, type = c("p", "a"), auto.key = list(lines = TRUE), ylab = "Days per year") } \keyword{datasets} latticeExtra/man/USAge.Rd0000644000176200001440000000443713574364520014732 0ustar liggesusers\name{USAge} \alias{USAge} \alias{USAge.table} \alias{USAge.df} \docType{data} \title{ US national population estimates } \description{ US national population estimates by age and sex from 1900 to 1979. The data is available both as a (3-dimensional) table and a data frame. The second form omits the 75+ age group to keep age numeric. } \usage{ data(USAge.table) data(USAge.df) } \format{ \code{USAge.table} is a 3-dimensional array with dimensions \tabular{rll}{ No \tab Name \tab Levels\cr 1 \tab Age \tab 0, 1, 2, \dots, 74, 75+\cr 2 \tab Sex \tab Male, Female\cr 3 \tab Year \tab 1900, 1901, \dots, 1979 \cr } Cells contain raw counts of estimated population. \code{USAge.df} is a data frame with 12000 observations on the following 4 variables. \describe{ \item{\code{Age}}{a numeric vector, giving age in years} \item{\code{Sex}}{a factor with levels \code{Male} \code{Female}} \item{\code{Year}}{a numeric vector, giving year} \item{\code{Population}}{a numeric vector, giving population in millions} } } \details{ The data for 1900-1929 are rounded to thousands. The data for 1900-1939 exclude the Armed Forces overseas and the population residing in Alaska and Hawaii. The data for 1940-1949 represent the resident population plus Armed Forces overseas, but exclude the population residing in Alaska and Hawaii. The data for 1950-1979 represent the resident population plus Armed Forces overseas, and also include the population residing in Alaska and Hawaii. } \source{ U.S. Census Bureau website: \url{http://www.census.gov/} %% Original URL %% \url{http://www.census.gov/popest/data/national/asrh/pre-1980/PE-11.html} is no longer valid The data were available as individual files for each year, with varying levels for the margins. The preprocessing steps used to reduce the data to the form given here are described in the scripts directory. } \examples{ data(USAge.df) head(USAge.df) ## Figure 10.7 from Sarkar (2008) xyplot(Population ~ Age | factor(Year), USAge.df, groups = Sex, type = c("l", "g"), auto.key = list(points = FALSE, lines = TRUE, columns = 2), aspect = "xy", ylab = "Population (millions)", subset = Year \%in\% seq(1905, 1975, by = 10)) } \keyword{datasets} latticeExtra/man/rootogram.Rd0000644000176200001440000001630613077627551016001 0ustar liggesusers\name{rootogram} \alias{rootogram} \alias{rootogram.formula} \alias{panel.rootogram} \alias{prepanel.rootogram} \title{Trellis Displays of Tukey's Hanging Rootograms} \description{ Displays hanging rootograms. } \usage{ rootogram(x, \dots) \method{rootogram}{formula}(x, data = parent.frame(), ylab = expression(sqrt(P(X == x))), prepanel = prepanel.rootogram, panel = panel.rootogram, ..., probability = TRUE) prepanel.rootogram(x, y = table(x), dfun = NULL, transformation = sqrt, hang = TRUE, probability = TRUE, \dots) panel.rootogram(x, y = table(x), dfun = NULL, col = plot.line$col, lty = plot.line$lty, lwd = plot.line$lwd, alpha = plot.line$alpha, transformation = sqrt, hang = TRUE, probability = TRUE, type = "l", pch = 16, \dots) } \arguments{ \item{x, y}{ For \code{rootogram}, \code{x} is the object on which method dispatch is carried out. For the \code{"formula"} method, \code{x} is a formula describing the form of conditioning plot. The formula can be either of the form \code{~x} or of the form \code{y~x}. In the first case, \code{x} is assumed to be a vector of raw observations, and an observed frequency distribution is computed from it. In the second case, \code{x} is assumed to be unique values and \code{y} the corresponding frequencies. In either case, further conditioning variables are allowed. A similar interpretation holds for \code{x} and \code{y} in \code{prepanel.rootogram} and \code{panel.rootogram}. Note that the data are assumed to arise from a discrete distribution with some probability mass function. See details below. } \item{data}{ For the \code{"formula"} method, a data frame containing values for any variables in the formula, as well as those in \code{groups} and \code{subset} if applicable (\code{groups} is currently ignored by the default panel function). By default the environment where the function was called from is used. } \item{dfun}{ a probability mass function, to be evaluated at unique x values } \item{prepanel, panel}{ panel and prepanel function used to create the display. } \item{ylab}{ the y-axis label; typically a character string or an expression. } \item{col, lty, lwd, alpha}{ graphical parameters } \item{transformation}{ a vectorized function. Relative frequencies (observed) and theoretical probabilities (\code{dfun}) are transformed by this function before being plotted. } \item{hang}{logical, whether lines representing observed relative freuqncies should \dQuote{hang} from the curve representing the theoretical probabilities. } \item{probability}{ A logical flag, controlling whether the y-values are to be standardized to be probabilities by dividing by their sum. } \item{type}{ A character vector consisting of one or both of \code{"p"} and \code{"l"}. If \code{"p"} is included, the evaluated values of \code{dfun} will be denoted by points, and if \code{"l"} is included, they will be joined by lines. } \item{pch}{ The plotting character to be used for the \code{"p"} type. } \item{\dots}{ extra arguments, passed on as appropriate. Standard lattice arguments as well as arguments to \code{panel.rootogram} can be supplied directly in the high level \code{rootogram} call. } } \details{ This function implements Tukey's hanging rootograms. As implemented, \code{rootogram} assumes that the data arise from a discrete distribution (either supplied in raw form, when \code{y} is unspecified, or in terms of the frequency distribution) with some unknown probability mass function (p.m.f.). The purpose of the plot is to check whether the supplied theoretical p.m.f. \code{dfun} is a reasonable fit for the data. It is reasonable to consider rootograms for continuous data by discretizing it (similar to a histogram), but this must be done by the user before calling \code{rootogram}. An example is given below. Also consider the \code{rootogram} function in the \code{vcd} package, especially if the number of unique values is small. } \value{ \code{rootogram} produces an object of class \code{"trellis"}. The \code{update} method can be used to update components of the object and the \code{print} method (usually called by default) will plot it on an appropriate plotting device. } \references{ John W. Tukey (1972) Some graphic and semi-graphic displays. In T. A. Bancroft (Ed) \emph{Statistical Papers in Honor of George W. Snedecor}, pp. 293--316. Available online at \url{http://www.edwardtufte.com/tufte/tukey} } \author{ Deepayan Sarkar \email{deepayan.sarkar@gmail.com}} \seealso{ \code{\link{xyplot}} } \examples{ library(lattice) x <- rpois(1000, lambda = 50) p <- rootogram(~x, dfun = function(x) dpois(x, lambda = 50)) p lambdav <- c(30, 40, 50, 60, 70) update(p[rep(1, length(lambdav))], aspect = "xy", panel = function(x, ...) { panel.rootogram(x, dfun = function(x) dpois(x, lambda = lambdav[panel.number()])) }) lambdav <- c(46, 48, 50, 52, 54) update(p[rep(1, length(lambdav))], aspect = "xy", prepanel = function(x, ...) { tmp <- lapply(lambdav, function(lambda) { prepanel.rootogram(x, dfun = function(x) dpois(x, lambda = lambda)) }) list(xlim = range(sapply(tmp, "[[", "xlim")), ylim = range(sapply(tmp, "[[", "ylim")), dx = do.call("c", lapply(tmp, "[[", "dx")), dy = do.call("c", lapply(tmp, "[[", "dy"))) }, panel = function(x, ...) { panel.rootogram(x, dfun = function(x) dpois(x, lambda = lambdav[panel.number()])) grid::grid.text(bquote(Poisson(lambda == .(foo)), where = list(foo = lambdav[panel.number()])), y = 0.15, gp = grid::gpar(cex = 1.5)) }, xlab = "", sub = "Random sample from Poisson(50)") ## Example using continuous data xnorm <- rnorm(1000) ## 'discretize' by binning and replacing data by bin midpoints h <- hist(xnorm, plot = FALSE) ## Option 1: Assume bin probabilities proportional to dnorm() norm.factor <- sum(dnorm(h$mids, mean(xnorm), sd(xnorm))) rootogram(counts ~ mids, data = h, dfun = function(x) { dnorm(x, mean(xnorm), sd(xnorm)) / norm.factor }) ## Option 2: Compute probabilities explicitly using pnorm() pdisc <- diff(pnorm(h$breaks, mean = mean(xnorm), sd = sd(xnorm))) pdisc <- pdisc / sum(pdisc) rootogram(counts ~ mids, data = h, dfun = function(x) { f <- factor(x, levels = h$mids) pdisc[f] }) } \keyword{dplot} latticeExtra/man/panel.segplot.Rd0000644000176200001440000000634313077627551016543 0ustar liggesusers\name{panel.segplot} \alias{prepanel.segplot} \alias{panel.segplot} \title{ Default prepanel and panel functions for segplot } \description{ Draws line segments or rectangles. Mainly intended to be used in conjunction with the \code{segplot} function. } \usage{ prepanel.segplot(x, y, z, subscripts, horizontal = TRUE, ...) panel.segplot(x, y, z, level = NULL, subscripts, at, draw.bands = is.factor(z), col, alpha, lty, lwd, border, col.symbol = col, alpha.symbol = alpha, col.regions = regions$col, band.height = 0.6, horizontal = TRUE, ..., segments.fun = panel.segments, centers = NULL, pch = 16) } \arguments{ \item{x, y, z}{ Vectors corresponding to \code{x1}, \code{x2} and \code{y} respectively in the \code{segplot} formula. The names are different for compatibility with \code{panel.levelplot}. These are all the original vectors in \code{data}, not subsetted for particular panels. } \item{level}{ optional vector controlling color of segments } \item{centers}{ optional vector of \sQuote{centers} of the segments. If specified, points will be plotted at these \code{y}-locations. } \item{pch}{ plotting character used for \code{centers}. } \item{subscripts}{ integer subscript to be used as an indexing vector for \code{x}, \code{y}, \code{z} and \code{level}, giving the packet for the current panel. } \item{horizontal}{ logical, whether the segments are to be drawn horizontally (the default) or vertically. This essentially swaps the role of the x- and y-axes in each panel. } \item{at}{ values of \code{level} where color code changes } \item{draw.bands}{ logical, whether to draw rectangles instead of lines } \item{col, alpha, lty, lwd, border}{ Graphical parameters for the segment. Defaults to parameter settings for \code{"plot.line"} or \code{"plot.polygon"} for segments and rectangles respectively. \code{col} is overridden by \code{col.regions} if \code{level} is not null. } \item{col.symbol, alpha.symbol}{ Graphical parameters for the point if \code{centers} are plotted. Defaults to the corresponding parameters for the segment. } \item{col.regions}{ vector of colors as in \code{\link{levelplot}} } \item{band.height}{ height of rectangles (applicable if \code{draw.bands} is \code{TRUE} } \item{\dots}{ Other arguments, passed on to \code{panel.rect} (when \code{draw.bands=TRUE}), \code{segments.fun} (otherwise), \code{panel.points} (if \code{centers} is not \code{NULL}), etc. as appropriate. } \item{segments.fun}{ function used to plot segments when \code{draw.bands} is \code{FALSE}. The default is to use \code{\link{panel.segments}}, but \code{\link{panel.arrows}} is a useful alternative (arguments to \code{segments.fun} can be provided via the \code{\dots} argument, see example for \code{\link{segplot}}).} } \value{ For \code{prepanel.segplot} a list with components \code{xlim} and \code{ylim}. } \author{ Deepayan Sarkar \email{deepayan.sarkar@r-project.org} } \seealso{ \code{\link{segplot}} } \keyword{ dplot } latticeExtra/man/panel.qqmath.tails.Rd0000644000176200001440000000322113077627551017464 0ustar liggesusers\name{panel.qqmath.tails} \alias{panel.qqmath.tails} \title{ Approximate distribution in qqmath but keep points on tails. } \description{ Panel function for \code{\link{qqmath}} to reduce the number of points plotted by sampling along the specified distribution. The usual method for such sampling is to use the \code{f.value} argument to \code{\link{panel.qqmath}}. However, this panel function differs in two ways: (1) a specified number of data points are retained (not interpolated) on each tail of the distribution. (2) the sampling is evenly spaced along the specified distribution automatically (whereas \code{f.value = ppoints(100)} is evenly spaced along the uniform distribution only). \emph{ This function is deprecated as of \pkg{lattice} 0.18-4 (available for R 2.11.0). Use the \code{tails.n} argument of \code{\link{panel.qqmath}} instead. } } \usage{ panel.qqmath.tails(x, f.value = NULL, distribution = qnorm, groups = NULL, ..., approx.n = 100, tails.n = 10) } \arguments{ \item{x, f.value, distribution, groups}{ see \code{\link{panel.qqmath}}. } \item{\dots}{ further arguments passed on to \code{\link{panel.xyplot}}. } \item{approx.n}{ number of points to use in approximating the distribution. Points will be equally spaced in the distribution space. } \item{tails.n}{ number of points to retain (untouched) at both the high and low tails. } } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{panel.qqmath}} which should be used instead (as of \pkg{lattice} 0.18-4). } \examples{ ## see ?panel.qqmath } \keyword{ dplot } latticeExtra/man/as.layer.Rd0000644000176200001440000000671613077627551015512 0ustar liggesusers\name{as.layer} \alias{as.layer} \alias{as.layer.layer} \alias{as.layer.trellis} \title{ Overlay panels of Trellis plots on same or different scales } \description{ Allows overlaying of Trellis plots, drawn on the same scales or on different scales in each of the x and y dimensions. There are options for custom axes and graphical styles. } \usage{ as.layer(x, ...) \S3method{as.layer}{trellis}(x, x.same = TRUE, y.same = TRUE, axes = c(if (!x.same) "x", if (!y.same) "y"), opposite = TRUE, outside = FALSE, theme = x$par.settings, ...) } \arguments{ \item{x}{ a trellis object. } \item{x.same}{ retains the existing panel x scale for the new layer, rather than using the layer's native x scale. } \item{y.same}{ retains the existing panel y scale. } \item{axes}{ which of the axes to draw (\code{NULL} for neither). Axes might not be drawn anyway, such as if \code{scales$draw == FALSE}. } \item{opposite}{ whether to draw axes on the opposite side to normal: that is, the top and/or right sides rather than bottom and/or left. May be a vector of length 2 to specify for x and y axes separately. } \item{outside}{ whether to draw the axes outside the plot region. Note that space for outside axes will not be allocated automatically. May be a vector of length 2 to specify for x and y axes separately. } \item{theme}{ passed to \code{\link{layer}}. } \item{\dots}{ passed to \code{\link{layer}}: typically the \code{style} argument would be specified. } } \details{ Panels from the trellis object \code{x} will be drawn in the corresponding panel of another trellis object, so packet numbers match (see examples). Axis setting are taken from the trellis object \code{x}, so most \code{scales} arguments such as \code{draw}, \code{at}, \code{labels} etc will carry over to the overlaid axes. Only the main axis settings are used (i.e. left or bottom), even when \code{opposite = TRUE}. Currently, outside top axes will be drawn in the strip if there are strips. } \value{ an updated trellis object. } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{doubleYScale}}, \code{\link{layer}}, \code{\link{panel.axis}} } \examples{ b1 <- barley b2 <- barley b2$yield <- b2$yield + 10 ## panels are matched up by packet number dotplot(variety ~ yield | site * year, b1) + as.layer(dotplot(variety ~ yield | site * year, b2, col = "red")) ## which gives the same result as: dotplot(variety ~ yield | site * year, data = b1, subscripts = TRUE) + layer(panel.dotplot(yield[subscripts], variety[subscripts], col = "red"), data = b2) ## example with all same scales (the default): xyplot(fdeaths ~ mdeaths) + as.layer(xyplot(fdeaths ~ mdeaths, col = 2, subset = ldeaths > 2000)) ## same x scales, different y scales: xyplot(fdeaths ~ mdeaths) + as.layer(bwplot(~ mdeaths, box.ratio = 0.2), y.same = FALSE) ## same y scales, different x scales: xyplot(fdeaths ~ mdeaths) + as.layer(bwplot(fdeaths ~ factor(mdeaths*0), box.ratio = 0.2), x.same = FALSE) ## as.layer() is called automatically if two plots are added: histogram(~ ldeaths, type = "density") + densityplot(~ ldeaths, lwd = 3) ## applying one panel layer to several panels of another object xyplot(Sepal.Length + Sepal.Width ~ Petal.Length + Petal.Width | Species, data = iris, scales = "free") + as.layer(levelplot(volcano), x.same = FALSE, y.same = FALSE, under = TRUE) } \keyword{ aplot } latticeExtra/man/marginal.plot.Rd0000644000176200001440000000554113077627551016536 0ustar liggesusers\name{marginal.plot} \alias{marginal.plot} \title{ Display marginal distributions } \description{ Display marginal distributions of several variables, which may be numeric and/or categorical, on one plot. } \usage{ marginal.plot(x, data = NULL, groups = NULL, reorder = !is.table(x), plot.points = FALSE, ref = TRUE, cut = 0, origin = 0, %ylim = c(0, NA), xlab = NULL, ylab = NULL, type = c("p", if (is.null(groups)) "h"), ..., subset = TRUE, as.table = TRUE, subscripts = TRUE, default.scales = list( relation = "free", abbreviate = TRUE, minlength = 5, rot = 30, cex = 0.75, tick.number = 3, y = list(draw = FALSE)), layout = NULL, lattice.options = list( layout.heights = list( axis.xlab.padding = list(x = 0), xlab.key.padding = list(x = 0)))) } \arguments{ \item{x}{ a data frame or table, or a formula of which the first term is a data frame or table. Otherwise coerced with \code{as.data.frame}. } \item{data}{ an optional data source in which groups and subset may be be evaluated. } \item{groups}{ term, to be evaluated in \code{data}, that is used as a grouping variable. } \item{reorder}{ whether to reorder factor variables by frequency. } \item{subset}{ data subset expression, evaluated in \code{data}. } \item{plot.points, ref, cut}{ passed to \code{panel.densityplot}. } \item{origin, type}{ passed to \code{panel.dotplot}. } \item{xlab, ylab, as.table, subscripts}{ see \code{\link{xyplot}}. } \item{default.scales, layout, lattice.options}{ see \code{\link{xyplot}}. } \item{\dots}{ passed to \code{\link{panel.densityplot}} and/or \code{\link{panel.dotplot}}. } } \details{ In the case of mixed numeric and categorical variables, the trellis objects from \code{dotplot()} and \code{densityplot()} are merged. } \value{ a trellis object. } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{panel.dotplot}}, \code{\link{panel.densityplot}} } \examples{ enviro <- environmental ## make an ordered factor (so it will not be reordered) enviro$smell <- cut(enviro$ozone, breaks = c(0, 30, 50, Inf), labels = c("ok", "hmmm", "yuck"), ordered = TRUE) marginal.plot(enviro) ## using groups enviro$is.windy <- factor(enviro$wind > 10, levels = c(TRUE, FALSE), labels = c("windy", "calm")) marginal.plot(enviro[,1:5], data = enviro, groups = is.windy, auto.key = list(lines = TRUE)) ## support for tables marginal.plot(Titanic) ## table with groups marginal.plot(~ Titanic, data = Titanic, groups = Survived, type = "b", auto.key = list(title = "Survived?")) } \keyword{ hplot } latticeExtra/man/doubleYScale.Rd0000644000176200001440000000755413077627551016350 0ustar liggesusers\name{doubleYScale} \alias{doubleYScale} \title{ Draw two plot series with different y scales } \description{ Overplot two trellis objects with different y scales, optionally in different styles, adding a second y axis, and/or a second y axis label. \emph{Note:} drawing plots with multiple scales is often a bad idea as it can be misleading. } \usage{ doubleYScale(obj1, obj2, use.style = TRUE, style1 = if (use.style) 1, style2 = if (use.style) 2, add.axis = TRUE, add.ylab2 = FALSE, text = NULL, auto.key = if (!is.null(text)) list(text, points = points, lines = lines, ...), points = FALSE, lines = TRUE, ..., under = FALSE) } \arguments{ \item{obj1, obj2}{ trellis objects. Note that most settings, like main/sub/legend/etc are taken only from \code{obj1}; only the panel, axis and ylab are taken from obj2. } \item{use.style, style1, style2}{ \code{style1} and \code{style2} give the `group number' for obj1 and obj2 respectively. The style is taken from these indices into the values of \code{trellis.par.get("superpose.line")}. Therefore these should be integers between 1 and 6; a value of 0 or NULL can be given to leave the default settings. These will also be applied to the y-axes and ylab, if relevant. \code{use.style} simply changes the defaults of the style arguments. } \item{add.axis}{ if TRUE, draw a second y axis (for the \code{obj2} series) on the right side of the plot. } \item{add.ylab2}{ if TRUE, draw a second y axis label (from \code{obj2$ylab}) on the right side of the plot. Note, this will replace any existing key or legend on the right side, i.e. with \code{space = "right"}. } \item{text, auto.key, points, lines, \dots}{ if non-NULL, add a \code{key} to the display, using entries named by \code{text}. Further arguments are passed on to \code{\link{simpleKey}} at plot time. } \item{under}{ if TRUE, draw \code{obj2} under \code{obj1}. } } \details{ Panels from the trellis object \code{obj2} will be drawn in the corresponding panel of \code{obj1}. Axis settings are taken from the trellis objects, so most \code{scales} arguments such as \code{draw}, \code{at}, \code{labels} etc from \code{obj2} will carry over to the second y axis. } \value{ a merged trellis object. } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{as.layer}} } \examples{ set.seed(1) foo <- list(x = 1:100, y = cumsum(rnorm(100))) ## show original data xyplot(y + y^2 ~ x, foo, type = "l") ## construct separate plots for each series obj1 <- xyplot(y ~ x, foo, type = "l") obj2 <- xyplot(y^2 ~ x, foo, type = "l") ## simple case: no axis for the overlaid plot doubleYScale(obj1, obj2, add.axis = FALSE) ## draw second y axis doubleYScale(obj1, obj2) ## ...with second ylab doubleYScale(obj1, obj2, add.ylab2 = TRUE) ## ...or with a key doubleYScale(obj1, obj2, text = c("obj1", "obj2")) ## ...with custom styles update(doubleYScale(obj1, obj2, text = c("obj1", "obj2")), par.settings = simpleTheme(col = c('red','black'), lty = 1:2)) ## different plot types x <- rnorm(60) doubleYScale(histogram(x), densityplot(x), use.style = FALSE) ## (but see ?as.layer for a better way to do this) ## multi-panel example ## a variant of Figure 5.13 from Sarkar (2008) ## http://lmdvr.r-forge.r-project.org/figures/figures.html?chapter=05;figure=05_13 data(SeatacWeather) temp <- xyplot(min.temp + max.temp ~ day | month, data = SeatacWeather, type = "l", layout = c(3, 1)) rain <- xyplot(precip ~ day | month, data = SeatacWeather, type = "h") doubleYScale(temp, rain, style1 = 0, style2 = 3, add.ylab2 = TRUE, text = c("min. T", "max. T", "rain"), columns = 3) ## re-plot with different styles update(trellis.last.object(), par.settings = simpleTheme(col = c("black", "red", "blue"))) } \keyword{ aplot } latticeExtra/man/segplot.Rd0000644000176200001440000001073013077627551015440 0ustar liggesusers\name{segplot} \alias{segplot} \alias{segplot.formula} \title{ Plot segments using the Trellis framework } \description{ This function can be used to systematically draw segments using a formula interface to produce Trellis displays using the lattice package. Segments can be drawn either as lines or bars, and can be color coded by the value of a covariate, with a suitable legend.} \usage{ segplot(x, data, \dots) \S3method{segplot}{formula}(x, data, level = NULL, centers = NULL, prepanel = prepanel.segplot, panel = panel.segplot, xlab = NULL, ylab = NULL, horizontal = TRUE, \dots, at, cuts = 30, colorkey = !is.null(level)) } \arguments{ \item{x}{ Argument on which argument dispatch is carried out. For the \code{"formula"} method, a formula of the form \code{y ~ x1 + x2} (with further conditioning variables appended if necessary). The terms in the formula must all be vectors of the same length. Each element causes a line segment or rectangle to be drawn, with the vertical location determined by \code{y} and horizontal endpoints determined by \code{x1} and \code{x2}. } \item{data}{ An optional data frame, list or environment where variables in the formula, as well as \code{level}, will be evaluated. } \item{level}{ An optional covariate that determines color coding of the segments} \item{centers}{ optional vector of \sQuote{centers} of the segments. If specified, points will be plotted at these \code{y}-locations. } \item{prepanel}{ function determining range of the data rectangle from data to be used in a panel. } \item{panel}{ function to render the graphic given the data. This is the function that actually implements the display. } \item{xlab, ylab}{ Labels for the axes. By default both are missing. } \item{horizontal}{ logical, whether the segments are to be drawn horizontally (the default) or vertically. This essentially swaps the role of the x- and y-axes in each panel. } \item{\dots}{ further arguments. Arguments to \code{levelplot} as well as to the default panel function \code{\link{panel.segplot}} can be supplied directly to \code{segplot}. } \item{colorkey}{ logical indicating whether a legend showing association of segment colors to values of \code{level} should be shown, or a list to control details of such a color key. See details below. } \item{at, cuts}{ \code{at} specifies the values of \code{level} where the color code changes. If \code{at} is missing, it defaults to \code{cuts} equispaced locations spanning the range of \code{levels} } } \details{ The \code{levelplot} function from the lattice package is used to internally to implement this function. In particular, the colorkey mechanism is used as it is, and documentation for \code{\link{levelplot}} should be consulted to learn how to fine tune it. } \value{ An object of class \code{"trellis"}. The \code{\link[=update.trellis]{update}} method can be used to update components of the object and the \code{\link[=print.trellis]{print}} method (usually called by default) will plot it on an appropriate plotting device. } % \references{ ~put references to the literature/web site here ~ } \author{ Deepayan Sarkar \email{deepayan.sarkar@r-project.org} } \note{ Currently only horizontal segments are supported. Vertical segments can be obtained by modifying the prepanel and panel functions suitably. } \seealso{ \code{\link{Lattice}}, \code{\link{panel.segplot}}, \code{\link{levelplot}}, \code{\link{xyplot}} } \examples{ segplot(factor(1:10) ~ rnorm(10) + rnorm(10), level = runif(10)) data(USCancerRates) segplot(reorder(factor(county), rate.male) ~ LCL95.male + UCL95.male, data = subset(USCancerRates, state == "Washington")) segplot(reorder(factor(county), rate.male) ~ LCL95.male + UCL95.male, data = subset(USCancerRates, state == "Washington"), draw.bands = FALSE, centers = rate.male) segplot(reorder(factor(county), rate.male) ~ LCL95.male + UCL95.male, data = subset(USCancerRates, state == "Washington"), level = rate.female, col.regions = terrain.colors) segplot(reorder(factor(county), rate.male) ~ LCL95.male + UCL95.male, data = subset(USCancerRates, state == "Washington"), draw.bands = FALSE, centers = rate.male, segments.fun = panel.arrows, ends = "both", angle = 90, length = 1, unit = "mm") } \keyword{hplot} latticeExtra/man/custom.theme.Rd0000644000176200001440000000460313574422134016370 0ustar liggesusers\name{custom.theme} \alias{custom.theme} \alias{custom.theme.2} \title{ Create a lattice theme based on specified colors } \description{ Creates a lattice theme given a few colors. Non-color settings are not included. The colors are typically used to define the standard grouping (superposition) colors, and the first color is used for ungrouped displays. } \usage{ custom.theme(symbol = RColorBrewer::brewer.pal(n = 8, name = "Dark2"), fill = RColorBrewer::brewer.pal(n = 12, name = "Set3"), region = RColorBrewer::brewer.pal(n = 11, name = "Spectral"), reference = "#e8e8e8", bg = "transparent", fg = "black", \dots) ## different defaults ("Set1", "Accent", "RdBu"): custom.theme.2(\dots) } \arguments{ \item{symbol}{ a vector of symbol colors. } \item{fill}{ a vector of fill colors (for barcharts, etc.) } \item{region}{ a vector of colors that is used to define a continuous color gradient using \code{\link{colorRampPalette}}} \item{reference}{ a color for reference lines and such } \item{bg}{ a background color } \item{fg}{ a foreground color, primarily for annotation } \item{\dots}{ further arguments passed to \code{\link{simpleTheme}} and used to modify the theme. } } \value{ A list that can be supplied to \code{\link{trellis.par.get}} or as the \code{theme} argument to \code{\link{trellis.device}}. } \author{ Deepayan Sarkar } \examples{ set.seed(0) ## create a plot to demonstrate graphical settings obj <- xyplot(Sepal.Length + Sepal.Width ~ Petal.Length + Petal.Width, iris, type = c("p", "r"), jitter.x = TRUE, jitter.y = TRUE, factor = 5, auto.key = list(lines = TRUE, rectangles = TRUE)) obj <- update(obj, legend = list(right = list(fun = "draw.colorkey", args = list(list(at = 0:100))))) %% NOTE: used in website for "style example" ## draw with default theme obj ## draw with custom.theme() update(obj, par.settings = custom.theme()) ## create a theme with paired colours, filled points, etc update(obj, par.settings = custom.theme(symbol = RColorBrewer::brewer.pal(12, "Paired"), fill = RColorBrewer::brewer.pal(12, "Paired"), region = RColorBrewer::brewer.pal(9, "Blues"), bg = "grey90", fg = "grey20", pch = 16)) ## draw with custom.theme.2() update(obj, par.settings = custom.theme.2()) } \keyword{dplot} latticeExtra/man/panel.key.Rd0000644000176200001440000000177313077627551015660 0ustar liggesusers\name{panel.key} \alias{panel.key} \title{ Draw a simple key inside a panel of a lattice plot. } \description{ Draw a \code{\link{simpleKey}} inside a panel of a lattice plot. } \usage{ panel.key(text, ..., corner = c(0, 1), x = corner[1], y = corner[2]) } \arguments{ \item{text, \dots}{ entries in the \code{\link{simpleKey}}. } \item{corner, x, y}{ defines the position of the key within the panel viewport. These are given in normalised coordinates between 0 and 1. The two elements of \code{corner} specify the x and y positions respectively. } } \seealso{ \code{\link{simpleKey}}, \code{\link{draw.key}}, \code{\link{xyplot}} } \examples{ xyplot(ozone ~ wind | equal.count(temperature, 2), data = environmental) + layer(panel.loess(x, y, span = 0.5), style = 1) + layer(panel.loess(x, y, span = 1.0), style = 2) + layer(panel.key(c("span = 0.5", "span = 1.0"), corner = c(1,.98), lines = TRUE, points = FALSE), packets = 1) } \keyword{ aplot } latticeExtra/man/panel.lmlineq.Rd0000644000176200001440000001372513077627551016531 0ustar liggesusers\name{panel.lmlineq} \alias{panel.lmlineq} \alias{panel.ablineq} \title{ Draw a line with a label, by default its equation } \description{ This is an extension of the panel functions \code{\link{panel.abline}} and \code{\link{panel.lmline}} to also draw a label on the line. The default label is the line equation, and optionally the R squared value of its fit to the data points. } \usage{ panel.ablineq(a = NULL, b = 0, h = NULL, v = NULL, reg = NULL, coef = NULL, pos = if (rotate) 1 else NULL, offset = 0.5, adj = NULL, at = 0.5, x, y, rotate = FALSE, srt = 0, label = NULL, varNames = alist(y = y, x = x), varStyle = "italic", fontfamily = "serif", digits = 3, r.squared = FALSE, sep = ", ", sep.end = "", col, col.text, col.line, ..., reference = FALSE) panel.lmlineq(x, y, ...) } \arguments{ \item{a, b, h, v, reg, coef}{ specification of the line. The simplest usage is to give \code{a} and \code{b} to describe the line \emph{y = a + b x}. Horizontal or vertical lines can be specified as arguments \code{h} or \code{v}, respectively. The first argument (\code{a}) can also be a model object produced by \code{\link{lm}}. See \code{\link{panel.abline}} for more details. } \item{pos, offset}{ passed on to \code{\link{panel.text}}. For \code{pos}: 1 = below, 2 = left, 3 = above, 4 = right, and the \code{offset} (in character widths) is applied. } \item{adj}{ passed on to \code{\link{panel.text}}. c(0,0) = above right, c(1,0) = above left, c(0,1) = below right, c(1,1) = below left; offset does not apply when using \code{adj}. } \item{fontfamily}{ passed on to \code{\link{panel.text}}. } \item{at}{ position of the equation as a fractional distance along the line. This should be in the range 0 to 1. When a vertical line is drawn, this gives the vertical position of the equation. } \item{x, y}{ position of the equation in native units. If given, this over-rides \code{at}. For \code{panel.lmlineq} this is the data, passed on as \code{lm(y ~ x)}. } \item{rotate, srt}{ set \code{rotate = TRUE} to align the equation with the line. This will over-ride \code{srt}, which otherwise gives the rotation angle. Note that the calculated angle depends on the current device size; this will be wrong if you change the device aspect ratio after plotting. } \item{label}{ the text to draw along with the line. If specified, this will be used instead of an equation. } \item{varNames}{ names to display for \code{x} and/or \code{y}. This should be a list like \code{list(y = "Q", x = "X")} or, for mathematical symbols, \code{alist(y = (alpha + beta), x = sqrt(x[t]))}. } \item{varStyle}{ the name of a \code{\link{plotmath}} function to wrap around the equation expression, or \code{NULL}. E.g. \code{"bolditalic"}, \code{"displaystyle"}. } \item{digits}{ number of decimal places to show for coefficients in equation. } \item{r.squared}{ the \eqn{R^2} statistic to display along with the equation of a line. This can be given directly as a number, or \code{TRUE}, in which case the function expects a model object (typically \code{\link{lm}}) and extracts the \eqn{R^2} statistic from it. } \item{sep, sep.end}{ The \eqn{R^2} (\code{r.squared}) value is separated from the equation by the string \code{sep}, and also \code{sep.end} is added to the end. For example: \code{panel.ablineq(lm(y ~ x), r.squared = TRUE, sep = " (", sep.end = ")")}. } \item{\dots, col, col.text, col.line}{ passed on to \code{\link{panel.abline}} and \code{\link{panel.text}}. Note that \code{col} applies to both text and line; \code{col.text} applies to the equation only, and \code{col.line} applies to line only. } \item{reference}{ whether to draw the line in a "reference line" style, like that used for grid lines. } } \details{ The equation is constructed as an expression using \code{\link{plotmath}}. } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{panel.abline}}, \code{\link{panel.text}}, \code{\link{lm}}, \code{\link{plotmath}} } \examples{ set.seed(0) xsim <- rnorm(50, mean = 3) ysim <- (0 + 2 * xsim) * (1 + rnorm(50, sd = 0.3)) ## basic use as a panel function xyplot(ysim ~ xsim, panel = function(x, y, ...) { panel.xyplot(x, y, ...) panel.ablineq(a = 0, b = 2, adj = c(0,1)) panel.lmlineq(x, y, adj = c(1,0), lty = 2, col.line = "grey", digits = 1) }) ## using layers: xyplot(ysim^2 ~ xsim) + layer(panel.ablineq(lm(y ~ x, subset = x <= 3), varNames = alist(y = y^2, x = x[x <= 3]), pos = 4)) ## rotated equation (depends on device aspect at plotting time) xyplot(ysim ~ xsim) + layer(panel.ablineq(lm(y ~ x), rotate = TRUE, at = 0.8)) ## horizontal and vertical lines xyplot(ysim ~ xsim) + layer(panel.ablineq(v = 3, pos = 4, at = 0.1, lty = 2, label = "3.0 (critical value)")) + layer(panel.ablineq(h = mean(ysim), pos = 3, at = 0.15, lty = 2, varNames = alist(y = plain(mean)(y)))) ## using layer styles, r.squared xyplot(ysim ~ xsim) + layer(panel.ablineq(lm(y ~ x), r.sq = TRUE, at = 0.4, adj=0:1), style = 1) + layer(panel.ablineq(lm(y ~ x + 0), r.sq = TRUE, at = 0.6, adj=0:1), style = 2) ## alternative placement of equations xyplot(ysim ~ xsim) + layer(panel.ablineq(lm(y ~ x), r.sq = TRUE, rot = TRUE, at = 0.8, pos = 3), style = 1) + layer(panel.ablineq(lm(y ~ x + 0), r.sq = TRUE, rot = TRUE, at = 0.8, pos = 1), style = 2) update(trellis.last.object(), auto.key = list(text = c("intercept", "no intercept"), points = FALSE, lines = TRUE)) } \keyword{ aplot } latticeExtra/man/panel.3dmisc.Rd0000644000176200001440000000701313077627551016243 0ustar liggesusers\name{panel.3dmisc} \alias{panel.3dmisc} \alias{panel.3dtext} \alias{panel.3dbars} \alias{panel.3dpolygon} \title{Miscellanous panel utilities for three dimensional Trellis Displays} \description{ Miscellanous panel functions for use with three dimensional Lattice functions such as cloud and wireframe } \usage{ panel.3dbars(x, y, z, rot.mat = diag(4), distance, xbase = 1, ybase = 1, xlim, xlim.scaled, ylim, ylim.scaled, zlim, zlim.scaled, zero.scaled, col = "black", lty = 1, lwd = 1, alpha, ..., col.facet = "white", alpha.facet = 1) panel.3dpolygon(x, y, z, rot.mat = diag(4), distance, xlim.scaled, ylim.scaled, zlim.scaled, zero.scaled, col = "white", border = "black", font, fontface, ...) panel.3dtext(x, y, z, labels = seq_along(x), rot.mat = diag(4), distance, ...) } \arguments{ \item{x, y, z}{ data to be plotted } \item{rot.mat, distance}{ arguments controlling projection } \item{labels}{ character or expression vectors to be uses as labels } \item{xlim, ylim, zlim}{ limits in the original scale } \item{xlim.scaled, ylim.scaled, zlim.scaled}{ limits after scaling } \item{zero.scaled}{ the value of z = 0 after scaling } \item{xbase, ybase}{ length of the sides of the bars (which are always centered on the \code{x} and \code{y} values). Can not be vectorized. } \item{col, lty, lwd, alpha, border}{ Graphical parameters for the border lines. These can be vectors, in which case each component will be associated with one bar in \code{panel.3dbars}. } \item{font, fontface}{ unused graphical parameters, present in the argument list only so that they can be captured and ignored } \item{col.facet, alpha.facet}{ Graphical parameters for surfaces of the bars . These can be vectors, in which case each component will be associated with one bar. } \item{\dots}{ extra arguments, passed on as appropriate. } } \details{ \code{panel.3dbars} and \code{panel.3dpolygon} are both suitable for use as (components of) the \code{panel.3d.cloud} argument of \code{panel.cloud}. The first one produces three dimensional bars, and the second one draws three dimensional polygons. } \author{ Deepayan Sarkar \email{deepayan.sarkar@gmail.com}} \seealso{ \code{\link{cloud}}, \code{\link{panel.cloud}} } \examples{ library(lattice) cloud(VADeaths, panel.3d.cloud = panel.3dbars, col.facet = "grey", xbase = 0.4, ybase = 0.4, screen = list(z = 40, x = -30)) cloud(VADeaths, panel.3d.cloud = panel.3dbars, xbase = 0.4, ybase = 0.4, zlim = c(0, max(VADeaths)), scales = list(arrows = FALSE, just = "right"), xlab = NULL, ylab = NULL, col.facet = level.colors(VADeaths, at = do.breaks(range(VADeaths), 20), col.regions = terrain.colors, colors = TRUE), colorkey = list(col = terrain.colors, at = do.breaks(range(VADeaths), 20)), screen = list(z = 40, x = -30)) cloud(as.table(prop.table(Titanic, margin = 1:3)[,,,2]), type = c("p", "h"), zlab = "Proportion\nSurvived", panel.3d.cloud = panel.3dbars, xbase = 0.4, ybase = 0.4, aspect = c(1, 0.3), scales = list(distance = 2), panel.aspect = 0.5) } \keyword{dplot} latticeExtra/man/useOuterStrips.Rd0000644000176200001440000000402113077627551016777 0ustar liggesusers\name{useOuterStrips} \alias{useOuterStrips} \title{ Put Strips on the Boundary of a Lattice Display } \description{ Try to update a \code{"trellis"} object so that strips are only shown on the top and left boundaries when printed, instead of in every panel as is usual. This is only meaningful when there are exactly two conditioning variables. } \usage{ useOuterStrips(x, strip = strip.default, strip.left = strip.custom(horizontal = FALSE), strip.lines = 1, strip.left.lines = strip.lines) } \arguments{ \item{x}{ An object of class \code{"trellis"}. } \item{strip, strip.left}{ A function, character string or logical that would be appropriate \code{strip} and \code{strip.left} arguments respectively in a high level lattice function call (see \code{\link{xyplot}}) } \item{strip.lines, strip.left.lines}{ height of strips in number of lines; helpful for multi-line text or mathematical annotation in strips. } } \details{ \code{useOuterStrips} modifies a \code{"trellis"} object with \code{length(dim(x)) == 2} so that when plotted, strips are only shown on the top and left boundaries of the panel layout, rather than on top of every panel, as is the usual behaviour. If the original \code{"trellis"} object \code{x} includes non-default \code{strip} and \code{strip.left} arguments, they will be ignored. To provide customized strip behaviour, specify the custom strip functions directly as arguments to \code{useOuterStrips}. } \value{ An object of class \code{"trellis"}; essentially the same as \code{x}, but with certain properties modified. } \author{ Deepayan Sarkar } \seealso{ \code{\link{Lattice}}, \code{\link{xyplot}} } \examples{ library(lattice) mtcars$HP <- equal.count(mtcars$hp) useOuterStrips(xyplot(mpg ~ disp | HP + factor(cyl), mtcars)) useOuterStrips(xyplot(mpg ~ disp | factor(cyl) + HP, mtcars), strip.left = FALSE, strip = strip.custom(style = 4)) } \keyword{dplot} latticeExtra/man/combineLimits.Rd0000644000176200001440000000667613077627551016577 0ustar liggesusers\name{combineLimits} \alias{combineLimits} \title{Combine axis limits across margins} \description{ Modifies a \code{"trellis"} object with \code{"free"} scales so that panel limits are extended to be the same across selected conditioning variables (typically rows and columns). } \usage{ combineLimits(x, margin.x = 2L, margin.y = 1L, extend = TRUE, adjust.labels = TRUE) } \arguments{ \item{x}{ An object of class \code{"trellis"}. } \item{margin.x}{ Integer vector specifying which conditioning variables to combine the x-axis limits over. Defaults to the second conditioning variable (rows in the default layout); that is, the limit of each packet is extended to include the limits of all other packets obtained by varying the level of the second conditioning variable (row). More than one variable can be specified; for example, \code{margin.x = c(1, 2)} would ensure that limits are extended to include all levels in both the first and second conditioning variables. In case there is a third conditioning variable, this would have the effect of per-page x-axis limits with the default layout. } \item{margin.y}{ Integer vector specifying which conditioning variables to combine the x-axis limits over. Similar to \code{margin.x}, but defaults to the first conditioning variable (columns in the default layout). } \item{extend}{ Logical flag indicating whether the limits should be extended after being combined. Usually a good idea. } \item{adjust.labels}{ Logical flag indicating whether labels should be removed from all but the boundaries. This may give misleading plots with non-default layouts. } } \details{ \code{combineLimits} is useful mainly for plots with two conditioning variables with the default layout (columns and rows correspond to the first and second conditioning variables), when per-row and per-column limits are desired. The lattice approach does not tie levels of the conditioning variables to the plot layout, so it is possible that all panels in a row (or column) do not represent the same level. It should be noted that \code{combineLimits} actually combines limits across levels, and not across rows and columns. Results are likely to be misleading unless the default layout is used. } \note{ Does not work for all \code{"trellis"} objects. In particular, log-scales do not yet work. Fancy layouts with \code{skip}-ped panels and unusual packet-to-panel mappings will probably also not work. } \value{ An object of class \code{"trellis"}; essentially the same as \code{x}, but with certain properties modified. } \author{ Deepayan Sarkar } \seealso{ \code{\link{Lattice}}, \code{\link{xyplot}} } \examples{ data(Cars93, package = "MASS") ## FIXME: log scales don't yet work pcars <- xyplot(Price ~ EngineSize | reorder(AirBags, Price) + Cylinders, data = Cars93, subset = Cylinders != "rotary" & Cylinders != "5", scales = list(relation = "free", y = list(log = FALSE, tick.number = 3, rot = 0)), xlab = "Engine Size (litres)", ylab = "Average Price (1000 USD)", as.table = TRUE) combineLimits(pcars) useOuterStrips(combineLimits(update(pcars, grid = TRUE), margin.x = c(1, 2), adjust.labels = FALSE)) useOuterStrips(combineLimits(update(pcars, grid = TRUE))) } \keyword{dplot} latticeExtra/man/USCancerRates.Rd0000644000176200001440000000334013077627551016424 0ustar liggesusers\name{USCancerRates} \alias{USCancerRates} \docType{data} \title{ Rate of Death Due to Cancer in US Counties } \description{ This data set records the annual rates of death (1999-2003) due to cancer by sex in US counties. } \usage{data(USCancerRates)} \format{ A data frame with 3041 observations on the following 8 variables. \describe{ \item{\code{rate.male}}{a numeric vector, giving rate of death per 100,000 due to cancer among males} \item{\code{LCL95.male}}{a 95\% lower confidence limit for \code{rate.male} } \item{\code{UCL95.male}}{a 95\% upper confidence limit for \code{rate.male} } \item{\code{rate.female}}{a numeric vector, giving rate of death per 100,000 due to cancer among females} \item{\code{LCL95.female}}{a 95\% lower confidence limit for \code{rate.female}} \item{\code{UCL95.female}}{a 95\% upper confidence limit for \code{rate.female}} \item{\code{state}}{ a factor with levels giving name of US state } \item{\code{county}}{ a character vector giving county names, in a format similar to that used for county map boundaries in the \code{maps} package. } } } \details{ See the scripts directory for details of data preprocessing steps. From the website: Death data provided by the National Vital Statistics System public use data file. Death rates calculated by the National Cancer Institute using SEER*Stat. Death rates are age-adjusted to the 2000 US standard population [\url{http://www.seer.cancer.gov/stdpopulations/stdpop.19ages.html}]. Population counts for denominators are based on Census populations as modified by NCI. } \source{ \url{http://statecancerprofiles.cancer.gov/} } \examples{ data(USCancerRates) } \keyword{datasets} latticeExtra/man/panel.quantile.Rd0000644000176200001440000000712713574370776016717 0ustar liggesusers\name{panel.quantile} \alias{panel.quantile} \title{ Plot a quantile regression line with standard error bounds. } \description{ Plot a quantile regression line with standard error bounds, using the \pkg{quantreg} package. This is based on the \code{\link[ggplot2]{stat_quantile}} function from \pkg{ggplot2}. } \usage{ panel.quantile(x, y, form = y ~ x, method = "rq", ..., tau = 0.5, ci = FALSE, ci.type = "default", level = 0.95, n = 100, col = plot.line$col, col.se = col, lty = plot.line$lty, lwd = plot.line$lwd, alpha = plot.line$alpha, alpha.se = 0.25, border = NA, superpose = FALSE, ## ignored: ## subscripts, group.number, group.value, type, col.line, col.symbol, fill, pch, cex, font, fontface, fontfamily) } \arguments{ \item{x, y}{ data points. If these are missing, they will be looked for in the environment of \code{form}. So in many cases you can skip these if passing \code{form}. In fact, for convenience, the formula can be passed as the first argument (i.e. \code{x}). } \item{form, method}{ Formula and the name of a modeling function (as a character string). The model is constructed (approximately) as \code{method(form, tau = tau, data = list(x=x, y=y), ...)}. Currently, \code{method} is expected to be either \code{"rq"} or \code{"rqss"}, and for these the corresponding functions in the \pkg{quantreg} package is used. In principle, any other function that supports the same interface can also be specified by name. } \item{\dots}{ further arguments passed on to the model function (\code{method}), typically \code{\link[quantreg]{rq}}. } \item{tau}{ \var{p} values for the quantiles to estimate. Note: only one value for \code{tau} can be specified if estimating confidence intervals with \code{ci}. } \item{ci, ci.type, level}{ estimate a confidence interval at level \code{level} using the method \code{ci.type}; see \code{\link[quantreg]{predict.rq}}. } \item{n}{ number of equi-spaced points on which to evaluate the function. } \item{col, col.se, lty, lwd, alpha, alpha.se, border}{ graphical parameters. \code{col} and \code{alpha} apply to the line(s), while \code{col.se} and \code{alpha.se} apply to the shaded \code{ci} region. } \item{superpose}{ if \code{TRUE}, plot each quantile line (\code{tau}) in a different style (using \code{trellis.par.get("superpose.line")}). } \item{subscripts, group.number, group.value, type, col.line, col.symbol, fill, pch, cex, font, fontface, fontfamily}{ ignored. } } \details{ It is recommended to look at \code{vignette("rq", package="quantreg")}. } \author{ Felix Andrews \email{felix@nfrac.org} Based on \code{\link[ggplot2]{stat_quantile}} by Hadley Wickham. } \seealso{ \code{\link[quantreg]{rq}}, \code{\link{panel.smoother}}, \code{\link[ggplot2]{stat_quantile}} } \examples{ ## library("quantreg") set.seed(1) xy <- data.frame(x = runif(100), y = rt(100, df = 5)) xyplot(y ~ x, xy) + layer(panel.quantile(x, y, tau = c(.95, .5, .05))) if (require("splines")) { xyplot(y ~ x, xy) + layer(panel.quantile(y ~ ns(x, 3), tau = 0.9)) xyplot(y ~ x, xy) + layer(panel.quantile(y ~ ns(x, 3), tau = 0.9, ci = TRUE)) } xyplot(y ~ x, xy) + layer(panel.quantile(x, y, tau = c(.5, .9, .1), superpose = TRUE)) update(trellis.last.object(), auto.key = list(text = paste(c(50,90,10), "\% quantile"), points = FALSE, lines = TRUE)) xyplot(y ~ x, xy) + layer(panel.quantile(y ~ qss(x, lambda=1), method = "rqss")) } \keyword{ dplot } latticeExtra/man/xyplot.stl.Rd0000644000176200001440000000422413077627551016124 0ustar liggesusers\name{xyplot.stl} \alias{xyplot.stl} \title{ Display stl fits with Lattice } \description{ Display \code{\link{stl}} decomposition (seasonal, trend and irregular components using loess) with Lattice, like the base graphics function \code{\link{plot.stl}}. } \usage{ \method{xyplot}{stl}(x, data = NULL, outer = TRUE, layout = c(1, 4), strip = FALSE, strip.left = TRUE, as.table = TRUE, ylab = "", between = list(y = 0.5), panel = function(..., type) { if (packet.number() == 4) type <- "h" panel.xyplot(..., type = type) }, ...) } \arguments{ \item{x}{ an \code{\link{stl}} object. } \item{data}{ ignored. } \item{outer, layout, strip, strip.left}{ passed to \code{\link{xyplot.ts}}. } \item{as.table, ylab, between, panel, ...}{ passed to \code{\link{xyplot.ts}}. } } \details{ Unless \code{strip.left} is passed in explicitly, a custom strip will be drawn, where shaded bars are comparable across panels (representing the same data range). } \value{ An object of class \code{"trellis"}. The \code{\link[=update.trellis]{update}} method can be used to update components of the object and the \code{\link[=print.trellis]{print}} method (usually called by default) will plot it on an appropriate plotting device. } % \references{ ~put references to the literature/web site here ~ } \author{ Deepayan Sarkar \email{deepayan.sarkar@r-project.org} } \seealso{ \code{\link{stl}}, \code{\link{xyplot.ts}}, \code{\link{xyplot}} } \examples{ ## example from ?stl xyplot(stl(log(co2), s.window=21), main = "STL decomposition of CO2 data") ## alternative display data(biocAccess) xyplot(stl(ts(biocAccess$counts[1:(24 * 30)], frequency = 24), "periodic"), strip.left = "strip.default") resizePanels() ## two different spans xyplot(stl(nottem, s.window = 4)) + as.layer(xyplot(stl(nottem, s.window = "periodic")), style = 2) ## components superposed xyplot(stl(nottem, s.window = 4), superpose=TRUE, screens = list(data = "trend", trend = "trend", "residuals"), strip.left = TRUE, layout = c(1,2)) } \keyword{hplot} \keyword{ts}latticeExtra/man/panel.xyarea.Rd0000644000176200001440000000610713077627551016355 0ustar liggesusers\name{panel.xyarea} \alias{panel.xyarea} \alias{panel.xyarea.default} \alias{panel.xyarea.ts} \alias{panel.xyarea.zoo} \alias{panel.qqmath.xyarea} \title{ Plot series as filled polygons. } \description{ Plot series as filled polygons connected at given origin level (on y axis). } \usage{ panel.xyarea(x, ...) \method{panel.xyarea}{default}(x, y, groups = NULL, origin = NULL, horizontal = FALSE, col, col.line, border, lty, lwd, alpha, ..., fill, panel.groups = panel.xyarea) \method{panel.xyarea}{ts}(x, y = x, ...) \method{panel.xyarea}{zoo}(x, y = x, ...) panel.qqmath.xyarea(x, y = NULL, f.value = NULL, distribution = qnorm, qtype = 7, groups = NULL, ..., tails.n = 0) } \arguments{ \item{x, y}{ data vectors. } \item{groups}{ a factor defining groups. } \item{origin}{ level on y axis to connect the start and end of the series. If \code{NULL}, the polygon is filled to the bottom of the panel. It is flipped if \code{horizontal = TRUE}. } \item{horizontal}{ if this is set to \code{TRUE}, then the origin is a level on the x axis, rather than the default which is on the y axis. This is the opposite of what you might expect, but is for consistency with \code{panel.xyplot}. } \item{col, col.line, border, lty, lwd, alpha}{ graphical parameters taken from \code{trellis.par.get("plot.polygon")} or \code{trellis.par.get("superpose.polygon")} (when groups defined). \code{col.line} overrides \code{col}. } \item{\dots}{ further arguments passed on to \code{\link{panel.polygon}}. For \code{panel.qqmath.xyarea}, passed to \code{panel.xyarea}. } \item{fill}{ ignored; use \code{col} instead. } \item{panel.groups}{ used in \code{\link{panel.superpose}}. } \item{f.value, distribution, qtype, tails.n}{ as in \code{\link{panel.qqmath}}. } } \details{ none yet. } \author{ Felix Andrews \email{felix@nfrac.org} } \seealso{ \code{\link{panel.xyplot}}, \code{\link{panel.polygon}} } \examples{ xyplot(sunspot.year, panel = panel.xyarea, origin = 0, aspect = "xy", cut = list(n = 3, overlap = 0)) ## two series superposed: one filled, one as a line. xyplot(ts.union(data = sunspot.year, lag10 = lag(sunspot.year, 10)), aspect = "xy", cut = list(n = 3, overlap = 0), superpose = TRUE, panel = panel.superpose, panel.groups = function(..., group.number) { if (group.number == 1) panel.xyarea(...) else panel.xyplot(...) }, border = NA, par.settings = simpleTheme(col = c("grey", "black"), lwd = c(5,2))) ## missing values are handled by splitting the series tmp <- window(sunspot.year, start = 1900) tmp[c(1:2, 50:60)] <- NA xyplot(tmp, panel = panel.xyarea, origin = 0) set.seed(0) qqmath(~ data, make.groups(baseline = rnorm(100), other = rnorm(100) * 2 - 0.5), groups = which, distribution = qunif, panel = panel.qqmath.xyarea, xlim = 0:1, auto.key = list(points = FALSE, rectangles = TRUE), par.settings = simpleTheme(col = c("blue", "green"), alpha = 0.5)) } \keyword{ dplot } latticeExtra/man/postdoc.Rd0000644000176200001440000000136213077627551015437 0ustar liggesusers\name{postdoc} \alias{postdoc} \docType{data} \title{ Reasons for Taking First Postdoctoral Appointment } \description{ Reasons for Taking First Postdoctoral Appointment, by Field of Doctrate, 1997 } \usage{data(postdoc)} \format{ The data set is avaliable as a two-way table of counts. } \source{ Survey of Doctorate Recipients, 1997 } \references{ Enhancing the Postdoctoral Experience for Scientists and Engineers: A Guide for Postdoctoral Scholars, Advisers, Institutions, Funding Organizations, and Disciplinary Societies \url{http://books.nap.edu/catalog.php?record_id=9831} } \examples{ data(postdoc) library(lattice) barchart(prop.table(postdoc, margin = 1), auto.key = TRUE, xlab = "Proportion") } \keyword{datasets} latticeExtra/man/ecdfplot.Rd0000644000176200001440000000566513077627551015576 0ustar liggesusers\name{ecdfplot} \alias{ecdfplot} \alias{ecdfplot.formula} \alias{ecdfplot.numeric} \alias{panel.ecdfplot} \alias{prepanel.ecdfplot} \title{Trellis Displays of Empirical CDF} \description{ Conditional displays of Empirical Cumulative Distribution Functions } \usage{ ecdfplot(x, data, \dots) \method{ecdfplot}{formula}(x, data, prepanel = "prepanel.ecdfplot", panel = "panel.ecdfplot", ylab, \dots) \method{ecdfplot}{numeric}(x, data = NULL, xlab, \dots) prepanel.ecdfplot(x, f.value = NULL, \dots) panel.ecdfplot(x, f.value = NULL, type = "s", groups = NULL, qtype = 7, ref = TRUE, \dots) } \arguments{ \item{x}{ For \code{ecdfplot}, \code{x} is the object on which method dispatch is carried out. For the \code{"formula"} method, \code{x} is a formula describing the form of conditioning plot, and has to be of the form \code{~x}, where \code{x} is assumed to be a numeric vector. Further conditioning variables are allowed as usual. A similar interpretation holds for \code{x} in the \code{"numeric"} method as well as \code{prepanel.ecdfplot} and \code{panel.ecdfplot}. } \item{data}{ For the \code{"formula"} method, a data frame containing values for any variables in the formula, as well as those in \code{groups} and \code{subset} if applicable. } \item{prepanel, panel}{ panel and prepanel function used to create the display. } \item{xlab, ylab}{ axis labels; typically a character string or an expression. } \item{groups}{ a grouing variable of the same length as \code{x}. If specified, ECDF plots are computed for each subset defined by unique values of \code{groups} and the resulting functions superposed within each panel. } \item{f.value, qtype}{ Defines how quantiles are calculated. See \code{\link{panel.qqmath}}. } \item{ref}{ logical, whether a reference line should be drawn at 0 and 1} \item{type}{ how the plot is rendered; see \code{\link{panel.xyplot}} } \item{\dots}{ extra arguments, passed on as appropriate. Standard lattice arguments as well as arguments to \code{panel.ecdfplot} can be supplied directly in the high level \code{ecdfplot} call. } } \value{ \code{ecdfplot} produces an object of class \code{"trellis"}. The \code{update} method can be used to update components of the object and the \code{print} method (usually called by default) will plot it on an appropriate plotting device. } \author{ Deepayan Sarkar \email{deepayan.sarkar@r-project.org}} \seealso{ \code{\link{qqmath}} for Quantile plots which are more generally useful, especially when comparing with a theoretical distribution other than uniform. An ECDF plot is essentially a transposed version (i.e., with axes switched) of a uniform quantile plot. } \examples{ data(singer, package = "lattice") ecdfplot(~height | voice.part, data = singer) } \keyword{dplot} latticeExtra/DESCRIPTION0000644000176200001440000000155513576700015014423 0ustar liggesusersPackage: latticeExtra Version: 0.6-29 Date: 2019-12-18 Title: Extra Graphical Utilities Based on Lattice Author: Deepayan Sarkar , Felix Andrews Maintainer: Deepayan Sarkar Description: Building on the infrastructure provided by the lattice package, this package provides several new high-level functions and methods, as well as additional utilities such as panel and axis annotation functions. Depends: R (>= 3.6.0), lattice Imports: grid, stats, utils, grDevices, png, jpeg, RColorBrewer Suggests: maps, mapproj, deldir, tripack, quantreg, zoo, MASS, mgcv URL: http://latticeextra.r-forge.r-project.org/ LazyLoad: yes LazyData: yes License: GPL (>= 2) NeedsCompilation: no Packaged: 2019-12-19 13:11:49 UTC; deepayan Repository: CRAN Date/Publication: 2019-12-19 13:50:05 UTC latticeExtra/tests/0000755000176200001440000000000013574423535014060 5ustar liggesuserslatticeExtra/tests/layer.R0000644000176200001440000000146613574421035015317 0ustar liggesusers## Tests for non-standard evaluation in layer() library(lattice) library(latticeExtra) oopt <- lattice.options(panel.error = NULL) xx <- 1970 xyplot(nhtemp) + layer(panel.abline(v = xx)) layer.test1 <- function() { xyplot(nhtemp) + layer(panel.abline(v = xx)) } layer.test1() layer.test2 <- function() { vline <- 1920 xyplot(nhtemp) + layer(panel.abline(v = vline)) } try(plot(layer.test2()), silent = TRUE) # fails layer.test3 <- function() { zz <- 1930 ls.str(environment()) xyplot(nhtemp) + layer(panel.abline(v = vline), data = list(vline = zz)) } layer.test3() layer.test4 <- function() { zz <- 1940 xyplot(nhtemp) + layer(panel.abline(v = c(zz, xx)), data = environment()) } layer.test4() do.call(lattice.options, oopt) latticeExtra/R/0000755000176200001440000000000013574420252013110 5ustar liggesuserslatticeExtra/R/panel.tskernel.R0000644000176200001440000000146313077627542016175 0ustar liggesusers panel.tskernel <- function(x, y, ..., width = NROW(x) %/% 10 + 1, n = 300, c = 1, sides = 2, circular = FALSE, kern = kernel("daniell", rep(floor((width/sides)/sqrt(c)), c))) { if (!missing(kern)) .Deprecated("The 'kern' argument to panel.tskernel is Deprecated. Use simpleSmoothTs directly.") if (!missing(y)) { x <- as.numeric(x) y <- as.numeric(y) stopifnot(NCOL(x) == 1) if (diff(range(diff(x))) > getOption("ts.eps")) stop("'x' should be a regular series") x <- ts(y, start = x[1], end = tail(x,1), deltat = diff(x[1:2])) } x <- as.ts(x) s <- simpleSmoothTs(x, width = width, c = c, sides = sides, circular = circular, kern = kern, n = n) panel.lines(s, ...) } latticeExtra/R/segplot.R0000644000176200001440000001241613077627542014725 0ustar liggesusers ## Want to plot intervals from start to end, color coded by decoded, ## and several in a panel according to source ## since there are colors involved and levelplot already ## has a colorkey, we'll use that prepanel.segplot <- function(x, y, z, subscripts, horizontal = TRUE, ...) { ans <- list(xlim = range(x[subscripts], y[subscripts], finite = TRUE), ylim = if (is.factor(z)) levels(z) else range(z[subscripts], finite = TRUE), yat = if (is.factor(z)) sort(unique(as.numeric(z[subscripts]))) else NULL) if (horizontal) ans else with(ans, list(xlim = ylim, ylim = xlim, xat = yat)) } ## prepanel.segplot <- ## function(x, y, z, subscripts, horizontal = TRUE, ...) ## { ## isnum.z <- is.numeric(z) ## ans <- ## list(xlim = range(x[subscripts], y[subscripts], finite = TRUE), ## ylim = if (isnum.z) range(z[subscripts], finite = TRUE) else levels(z), ## yat = if (isnum.z) NULL else sort(unique(as.numeric(z[subscripts])))) ## if (horizontal) ans ## else with(ans, list(xlim = ylim, ylim = xlim, xat = yat)) ## } panel.segplot <- function(x, y, z, level = NULL, subscripts, at, draw.bands = is.factor(z), col = if (draw.bands) plot.polygon$col else plot.line$col, alpha = if (draw.bands) plot.polygon$alpha else plot.line$alpha, lty = if (draw.bands) plot.polygon$lty else plot.line$lty, lwd = if (draw.bands) plot.polygon$lwd else plot.line$lwd, border = if (draw.bands) plot.polygon$border else "transparent", col.symbol = col, alpha.symbol = alpha, col.regions = regions$col, band.height = 0.6, horizontal = TRUE, ..., segments.fun = panel.segments, centers = NULL, pch = 16) { plot.line <- trellis.par.get("plot.line") plot.polygon <- trellis.par.get("plot.polygon") regions <- trellis.par.get("regions") x1 <- as.numeric(x[subscripts]) x2 <- as.numeric(y[subscripts]) z <- z[subscripts] if (!is.null(level)) { ## col is overridden level <- as.numeric(level[subscripts]) col <- level.colors(level, at, col.regions, colors = TRUE) } if (draw.bands) { if (horizontal) panel.rect(x = 0.5 * (x1 + x2), width = x2 - x1, y = as.numeric(z), height = band.height, border = border, col = col, alpha = alpha, lty = lty, lwd = lwd, ...) else panel.rect(y = 0.5 * (x1 + x2), height = x2 - x1, x = as.numeric(z), width = band.height, border = border, col = col, alpha = alpha, lty = lty, lwd = lwd, ...) } else { if (horizontal) segments.fun(x1, as.numeric(z), x2, as.numeric(z), col = col, alpha = alpha, lty = lty, lwd = lwd, ...) else segments.fun(as.numeric(z), x1, as.numeric(z), x2, col = col, alpha = alpha, lty = lty, lwd = lwd, ...) } if (!is.null(centers)) { if (horizontal) panel.points(x = as.numeric(centers[subscripts]), y = as.numeric(z), col = col.symbol, alpha = alpha.symbol, pch = pch, ...) else panel.points(y = as.numeric(centers[subscripts]), x = as.numeric(z), col = col.symbol, alpha = alpha.symbol, pch = pch, ...) } } segplot <- function(x, data, ...) UseMethod("segplot") segplot.formula <- function(x, data = parent.frame(), level = NULL, centers = NULL, prepanel = prepanel.segplot, panel = panel.segplot, xlab = NULL, ylab = NULL, horizontal = TRUE, ..., at, cuts = 30, colorkey = !is.null(level)) { level <- eval(substitute(level), data, parent.frame()) centers <- eval(substitute(centers), data, parent.frame()) if (!is.null(level)) { rng <- lattice:::extend.limits(range(as.numeric(level), finite = TRUE)) if (missing(at)) at <- do.breaks(rng, cuts + 1) } foo <- levelplot(x, data, level = level, centers = centers, ..., default.scales = if (horizontal) list(y = list(alternating = FALSE, tck = 0)) else list(x = list(alternating = FALSE, tck = 0)), xlab = xlab, ylab = ylab, at = at, colorkey = colorkey, horizontal = horizontal, prepanel = prepanel, panel = panel) foo$call <- sys.call(sys.parent()); foo$call[[1]] <- quote(segplot) foo } ## green.red <- function(n, gamma = 1, power = 1) ## { ## m <- ceiling(n/2) ## c(hsv(h = 0.33, s = seq(1, 0, length = m)^power, gamma = gamma), ## hsv(h = 1, s = seq(0, 1, length = m)^power, gamma = gamma)) ## } ## segplot(1:100 ~ rnorm(100) + runif(100), data = parent.frame()) latticeExtra/R/panel.scaleArrow.R0000644000176200001440000000300513077627542016442 0ustar liggesusers panel.scaleArrow <- function(x = unit(0:1, "npc"), y = unit(0:1, "npc"), default.units = "npc", digits = 0, append = "", label = NULL, angle = 30, length = 0.5, unit = "char", type = "open", ends = "both", ..., col = add.line$col, fill = col, alpha = add.line$alpha, lty = add.line$lty, lwd = add.line$lwd, col.text = add.text$col, alpha.text = add.text$alpha) { add.line <- trellis.par.get("add.line") add.text <- trellis.par.get("add.text") if (!is.unit(x)) x <- unit(x, default.units) if (!is.unit(y)) y <- unit(y, default.units) x <- rep(x, length.out = 2) y <- rep(y, length.out = 2) xnat <- convertX(x, "native", valueOnly = TRUE) ynat <- convertY(y, "native", valueOnly = TRUE) panel.arrows(xnat[1], ynat[1], xnat[2], ynat[2], ends = ends, angle = angle, length = length, unit = unit, type = type, col = col, fill = fill, alpha = alpha, lty = lty, lwd = lwd) #grid.lines(x = x, y = y, default.units = default.units, # arrow = arrow, gp = gp) #xnat <- convertX(x, "native", valueOnly = TRUE) #ynat <- convertX(y, "native", valueOnly = TRUE) d <- sqrt(diff(xnat)^2 + diff(ynat)^2) d <- round(d, digits = digits) if (is.null(label)) label <- paste(d, append, sep = "") panel.text(x = 0.5 * (xnat[1] + xnat[2]), y = 0.5 * (ynat[1] + ynat[2]), labels = label, col = col.text, alpha = alpha.text, ...) } latticeExtra/R/panel.xyimage.R0000644000176200001440000000522513100315270015764 0ustar liggesusers ## Similar to panel.xyplot, except that (x,y) data are indicated by an ## image rather than standard plotting character. The image URLs must ## be provided by ## Support only png and jpeg for now. url2raster <- function(src) { ext <- tail(strsplit(src, split = ".", fixed = TRUE)[[1]], 1) if (file.exists(src)) file <- src else { file <- tempfile(fileext = paste0(".", ext)) download.file(src, destfile = file, mode = "wb", quiet = TRUE) on.exit(unlink(file)) } readWith <- switch(ext, png = list(readPNG, readJPEG), list(readJPEG, readPNG)) ## Try best guess first. If it fails, try the other r <- try(readWith[[1]](file, native = TRUE), silent = TRUE) if (inherits(r, "try-error")) r <- try(readWith[[2]](file, native = TRUE), silent = TRUE) if (inherits(r, "try-error")) stop("'%s' does not appear to be a PNG or JPEG file.", src) r } panel.xyimage <- function(x, y, subscripts, groups = NULL, pch = NULL, cex = 1, ..., grid = FALSE, abline = NULL) { if (all(is.na(x) | is.na(y))) return() if (!is.character(pch)) stop("'pch' must be a character vector giving path(s) or URL(s) of PNG or JPEG files.") if (!identical(grid, FALSE)) { if (!is.list(grid)) grid <- switch(as.character(grid), "TRUE" = list(h = -1, v = -1, x = x, y = y), "h" = list(h = -1, v = 0, y = y), "v" = list(h = 0, v = -1, x = x), list(h = 0, v = 0)) do.call(panel.grid, grid) } if (!is.null(abline)) { if (is.numeric(abline)) abline <- as.list(abline) do.call(panel.abline, abline) } if (is.null(groups)) { pch.raster <- url2raster(pch[1]) grid.raster(x, y, image = pch.raster, width = unit(cex * 10, "mm"), height = unit(cex * 10, "mm"), default.units = "native") } else { groups <- as.factor(groups) cex <- rep(cex, length = nlevels(groups)) pch <- rep(pch, length = nlevels(groups)) pch.raster <- lapply(pch, url2raster) g <- as.numeric(groups)[subscripts] ug <- unique(g) for (i in ug) { w <- (g == i) grid.raster(x[w], y[w], image = pch.raster[[i]], width = unit(cex[i] * 8, "mm"), height = unit(cex[i] * 8, "mm"), default.units = "native") } } } latticeExtra/R/c.trellis.R0000644000176200001440000002225313372532456015144 0ustar liggesusers ## Copyright (C) 2007 Felix Andrews ## GPL version 2 or newer xyplot.list <- function(x, data = NULL, ..., FUN = xyplot, y.same = TRUE, x.same = NA, layout = NULL, merge.legends = FALSE) { if (length(x) == 0) return(NULL) ## NOTE lapply here causes problems with eval.parent and `...` later. #objs <- lapply(x, FUN, data = data, ...) objs <- vector(mode = "list", length = length(x)) for (i in as.numeric(seq_along(x))) { ## this is what we had previously, but it seemed to cause failures ## in complex call structures (e.g. pch=pch ==> object 'pch' not found) ## (use substitute to get reasonable ylab) #objs[[i]] <- eval.parent(substitute(FUN(x[[i]], data = data, ...))) ## check for 'data' to avoid warnings in e.g. qqmath.numeric objs[[i]] <- if (!is.null(data)) FUN(x[[i]], data = data, ...) else FUN(x[[i]], ...) } names(objs) <- names(x) ok <- unlist(lapply(objs, inherits, "trellis")) if (any(!ok)) stop("FUN returned object of class ", toString(class(objs[[ which(!ok)[1] ]])), ", not trellis.") ans <- do.call("c", c(objs, list(x.same = x.same, y.same = y.same, layout = layout, merge.legends = merge.legends))) ans$call <- match.call() ans } c.trellis <- function(..., x.same = NA, y.same = NA, layout = NULL, merge.legends = FALSE, recursive = FALSE) { objs <- list(...) if (length(objs) == 0) return(NULL) if (length(objs) == 1) { ## only one object obj <- objs[[1]] ## set dimnames if given and only one panel if (!is.null(names(objs)) && (prod(dim(obj)) == 1)) rownames(obj) <- names(objs) return(obj) } if (length(objs) > 2) { ## merge first two objects, and call again first2Merged <- do.call("c.trellis", c(objs[1:2], list(x.same = x.same, y.same = y.same, merge.legends = merge.legends))) return(do.call("c.trellis", c(list(first2Merged), objs[-(1:2)], list(x.same = x.same, y.same = y.same, layout = layout, merge.legends = merge.legends)))) } ## now exactly 2 objects obj1 <- objs[[1]] obj2 <- objs[[2]] ## number of packets in object, i.e. offset NPACK1 <- prod(dim(obj1)) NPACK2 <- prod(dim(obj2)) ## first panel function panel <- obj1$panel PANEL1 <- if (is.function(panel)) panel else if (is.character(panel)) get(panel) else eval(panel) ## second panel function panel <- obj2$panel PANEL2 <- if (is.function(panel)) panel else if (is.character(panel)) get(panel) else eval(panel) obj1$panel <- function(...) { if (packet.number() <= NPACK1) PANEL1(...) else PANEL2(...) } ## TODO: treat 'prepanel' the same way as 'panel'? ## flatten the trellis objects (make 1 dimensional) flatIC <- function(index.cond) { dim <- sapply(index.cond, length) ic <- do.call(expand.grid, index.cond) if (length(dim) >= 2) ic[,2] <- (ic[,2] - 1) * dim[1] if (length(dim) >= 3) ic[,3] <- (ic[,3] - 1) * prod(dim[1:2]) rowSums(ic) } flatCL <- function(condlevels, newname=NULL) { ## paste names of variables to their values (for strips) #for (i in seq_along(condlevels)) # condlevels[[i]] <- paste(names(condlevels)[i], ## may be NULL # condlevels[[i]], sep=" = ") ## convert shingle levels to character strings condlevels <- lapply(condlevels, as.character) cl <- do.call(expand.grid, condlevels) cl <- apply(cl, 1, paste, sep=" / ") if (!is.null(newname) && (nchar(newname) > 0)) { if (length(cl) == 1) cl <- newname else cl <- paste(newname, cl, sep=": ") } cl } obj1$index.cond <- list(c(flatIC(obj1$index.cond), flatIC(obj2$index.cond) + NPACK1)) obj1$condlevels <- list(c(flatCL(obj1$condlevels, names(objs)[1]), flatCL(obj2$condlevels, names(objs)[2]))) obj1$perm.cond <- 1 ## make scales nominally "free", so they look like original objects makeFreeScales <- function(obj, npack, x.y) { obj[[paste(x.y, "scales", sep=".")]]$relation <- "free" .limits <- paste(x.y, "limits", sep=".") .num.limit <- paste(x.y, "num.limit", sep=".") .used.at <- paste(x.y, "used.at", sep=".") if (is.null(obj[[.limits]])) obj[[.limits]] <- NA if (is.null(obj[[.num.limit]])) obj[[.num.limit]] <- NA if (is.null(obj[[.used.at]])) obj[[.used.at]] <- NA if (!is.list(obj[[.limits]])) { obj[[.limits]] <- rep(list(obj[[.limits]]), length=npack) obj[[.num.limit]] <- rep(list(obj[[.num.limit]]), length=npack) obj[[.used.at]] <- rep(list(obj[[.used.at]]), length=npack) } obj } ## set relations to "free" if the first object has "free" scales ## or if the limits in the two objects are not identical xlimItems <- c("x.limits", "x.num.limit", "x.used.at") ylimItems <- c("y.limits", "y.num.limit", "y.used.at") if (is.na(x.same)) { x.same <- FALSE if (!is.list(obj1$x.limits) && identical(unclass(obj1)[xlimItems], unclass(obj2)[xlimItems])) x.same <- NA } if (is.na(y.same)) { y.same <- FALSE if (!is.list(obj1$y.limits) && identical(unclass(obj1)[ylimItems], unclass(obj2)[ylimItems])) y.same <- NA } if (identical(x.same, FALSE) || is.list(obj1$x.limits)) { obj1 <- makeFreeScales(obj1, npack=NPACK1, x.y="x") obj2 <- makeFreeScales(obj2, npack=NPACK2, x.y="x") obj1$x.limits <- c(obj1$x.limits, obj2$x.limits) obj1$x.num.limit <- c(obj1$x.num.limit, obj2$x.num.limit) obj1$x.used.at <- c(obj1$x.used.at, obj2$x.used.at) } if (identical(y.same, FALSE) || is.list(obj1$y.limits)) { obj1 <- makeFreeScales(obj1, npack=NPACK1, x.y="y") obj2 <- makeFreeScales(obj2, npack=NPACK2, x.y="y") obj1$y.limits <- c(obj1$y.limits, obj2$y.limits) obj1$y.num.limit <- c(obj1$y.num.limit, obj2$y.num.limit) obj1$y.used.at <- c(obj1$y.used.at, obj2$y.used.at) } ## merge common panel args into panel.args ## check for identical() args commonNames <- intersect(names(obj1$panel.args.common), names(obj2$panel.args.common)) identNames <- commonNames[unlist(lapply(commonNames, function(x) identical(obj1$panel.args.common[[x]], obj2$panel.args.common[[x]])))] obj1Common <- names(obj1$panel.args.common) %in% identNames obj2Common <- names(obj2$panel.args.common) %in% identNames obj1$panel.args <- lapply(obj1$panel.args, c, obj1$panel.args.common[!obj1Common]) obj2$panel.args <- lapply(obj2$panel.args, c, obj2$panel.args.common[!obj2Common]) obj1$panel.args.common <- obj1$panel.args.common[obj1Common] ## the actual data obj1$panel.args <- c(obj1$panel.args, obj2$panel.args) obj1$packet.sizes <- c(obj1$packet.sizes, obj2$packet.sizes) ## some prepanel functions require a 'subscripts' argument in each 'panel.args' fargNames <- function(f) if (is.null(f)) NULL else names(formals(f)) if ("subscripts" %in% c(fargNames(obj1$prepanel.default), fargNames(obj1$prepanel))) { for (i in seq_along(obj1$panel.args)) { if (!("subscripts" %in% names(obj1$panel.args[[i]]))) { obj1$panel.args[[i]]$subscripts <- TRUE } } } ## recalculate panel limits using all data if ((isTRUE(x.same) || isTRUE(y.same))) { scalesSpec <- list() if (isTRUE(x.same)) scalesSpec$x$relation <- "same" if (isTRUE(y.same)) scalesSpec$y$relation <- "same" obj1 <- update(obj1, scales = scalesSpec) } if (identical(obj1$strip.left, FALSE)) { ## turn strips on if either object has strips, or names were given if (identical(obj1$strip, FALSE) && !identical(obj2$strip, FALSE)) obj1$strip <- obj2$strip if (identical(obj1$strip, FALSE) && !is.null(names(objs))) obj1$strip <- "strip.default" } ## TODO: can use 'par.settings' from obj2 only for obj2 panels? obj1$par.settings <- modifyList(as.list(obj2$par.settings), as.list(obj1$par.settings)) if (merge.legends) obj1$legend <- mergeTrellisLegends(obj1$legend, obj2$legend) obj1$layout <- layout obj1$call <- call("c", obj1$call, obj2$call, x.same = x.same, y.same = y.same, layout = layout) ## need this to allow further calls to update() to insert arguments: obj1$call <- call("update", obj1$call) obj1 } latticeExtra/R/panel.qqmath.tails.R0000644000176200001440000000257213077627542016756 0ustar liggesusers## ## Copyright (c) 2008 Felix Andrews ## panel.qqmath.tails <- function(x, f.value = NULL, distribution = qnorm, groups = NULL, ..., approx.n = 100, tails.n = 10) { if (getRversion() >= "2.11.0") .Deprecated(msg = paste("'panel.qqmath.tails' is deprecated.", "Use 'panel.qqmath' from lattice 0.18-4 onwards.")) x <- as.numeric(x) distribution <- if (is.function(distribution)) distribution else if (is.character(distribution)) get(distribution) else eval(distribution) nobs <- sum(!is.na(x)) if (!is.null(groups)) { panel.superpose(x, y = NULL, f.value = f.value, distribution = distribution, groups = groups, panel.groups = panel.qqmath.tails, ..., approx.n = approx.n, tails.n = tails.n) return() } if (nobs == 0) return() pp <- ppoints(nobs) y <- sort(x) qq <- distribution(pp) if (nobs > approx.n + tails.n*2) { keep <- rep(FALSE, nobs) ## keep lowest and highest points keep[c(1:tails.n, nobs+1-(1:tails.n))] <- TRUE ## keep points spaced equally along distribution qqkeep <- seq(qq[tails.n+1], qq[nobs-tails.n], length=approx.n) keep[findInterval(qqkeep, qq)] <- TRUE qq <- qq[keep] y <- y[keep] } panel.xyplot(x = qq, y = y, ...) } latticeExtra/R/zzz.R0000644000176200001440000000205213077627542014100 0ustar liggesusers ### Copyright 2000-2004 Deepayan Sarkar , ### ### This file is part of the lattice library for R. It is made ### available under the terms of the GNU General Public License, ### version 2, or at your option, any later version, incorporated ### herein by reference. ### ### This program is distributed in the hope that it will be ### useful, but WITHOUT ANY WARRANTY; without even the implied ### warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR ### PURPOSE. See the GNU General Public License for more ### details. ### ### You should have received a copy of the GNU General Public ### License along with this program; if not, write to the Free ### Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, ### MA 02111-1307, USA ## .noGenerics <- TRUE .noGenerics <- FALSE ## .First.lib can be used if the NAMESPACE file is missing. This is ## useful during development, thanks to C-c C-l in Emacs/ESS. It won't ## be used if NAMESPACE is present. ## .First.lib <- function(lib, pkg) ## { ## require(lattice) ## } latticeExtra/R/panel.xyarea.R0000644000176200001440000001327613077627542015644 0ustar liggesusers## ## Copyright (c) 2008 Felix Andrews ## panel.xyarea <- function(x, ...) UseMethod("panel.xyarea") ## Plot a series as a filled polygon connected at given origin (on y axis). ## With groups, acts like panel.superpose, but with polygon style settings. panel.xyarea.default <- function(x, y, groups = NULL, origin = NULL, horizontal = FALSE, col = if (is.null(groups)) plot.polygon$col else superpose.polygon$col, col.line = if (is.null(groups)) plot.polygon$col else superpose.polygon$col, border = if (is.null(groups)) plot.polygon$border else superpose.polygon$border, lty = if (is.null(groups)) plot.polygon$lty else superpose.polygon$lty, lwd = if (is.null(groups)) plot.polygon$lwd else superpose.polygon$lwd, alpha = if (is.null(groups)) plot.polygon$alpha else superpose.polygon$alpha, ..., fill, panel.groups = panel.xyarea) { plot.polygon <- trellis.par.get("plot.polygon") superpose.polygon <- trellis.par.get("superpose.polygon") x <- as.numeric(x) y <- as.numeric(y) if (length(x) == 0) return() if (!is.null(groups)) { ## NOTE superpose does not handle 'border' argument, so pass it as col.line panel.superpose(x, y, ..., groups = groups, panel.groups = panel.groups, col = col, col.line = col.line, lty = lty, lwd = lwd, border = border, alpha = alpha, origin = origin, horizontal = horizontal) } else { if (!missing(col.line)) col <- col.line if (horizontal == TRUE) { ## actually means origin is vertical. for consistency with panel.xyplot. xlim <- current.panel.limits()$xlim if (is.null(origin)) origin <- xlim[1] infi <- is.infinite(x) x[infi] <- ifelse(x[infi] > 0, max(xlim), min(xlim)) } else { ## default case; origin is horizontal ylim <- current.panel.limits()$ylim if (is.null(origin)) origin <- ylim[1] infi <- is.infinite(y) y[infi] <- ifelse(y[infi] > 0, max(ylim), min(ylim)) } stopifnot(is.numeric(origin)) ## need to split up the series into chunks without any missing values ## (because NAs split the polygon) xy <- data.frame(x = x, y = y) ## order by ordinate values ord <- if (horizontal) order(xy$y) else order(xy$x) xy <- xy[ord,] ok <- complete.cases(xy) runs <- rle(ok) ## assign unique values to each chunk, and NAs between (dropped by 'split') runs$values[runs$values == TRUE] <- seq_len(sum(runs$values)) runs$values[runs$values == FALSE] <- NA ## expand into long format chunks <- inverse.rle(runs) lapply(split(xy, chunks), function(xyi, ...) { x <- xyi$x y <- xyi$y ## drop ends of series to the origin; the polygon will be joined up at that level if (horizontal == TRUE) { ## non-default case yy <- c(head(y,1), y, tail(y,1)) xx <- c(origin, x, origin) } else { ## default case xx <- c(head(x,1), x, tail(x,1)) yy <- c(origin, y, origin) } ## we need to catch the 'fill' argument from panel.superpose, otherwise over-rides 'col' panel.polygon(xx, yy, alpha = alpha, col = col, border = border, lty = lty, lwd = lwd, ...) }, ...) } } panel.xyarea.ts <- function(x, y = x, ...) { panel.xyarea(as.vector(time(x)), y, ...) } panel.xyarea.zoo <- function(x, y = x, ...) { panel.xyarea(zoo::index(x), zoo::coredata(y), ...) } ## A slightly modified copy of panel.qqmath panel.qqmath.xyarea <- function(x, y = NULL, f.value = NULL, distribution = qnorm, qtype = 7, groups = NULL, ..., tails.n = 0) { x <- as.numeric(x) distribution <- if (is.function(distribution)) distribution else if (is.character(distribution)) get(distribution) else eval(distribution) nobs <- sum(!is.na(x)) if (!is.null(groups)) panel.xyarea(x, y = NULL, f.value = f.value, distribution = distribution, qtype = qtype, groups = groups, panel.groups = panel.qqmath.xyarea, ..., tails.n = tails.n) else if (nobs) { if (is.null(f.value)) # exact data instead of quantiles { panel.xyarea(x = distribution(ppoints(nobs)), y = sort(x), ...) } else { pp <- if (is.numeric(f.value)) f.value else f.value(nobs) if (tails.n > 0) { ## use exact data for tails of distribution tails.n <- min(tails.n, nobs %/% 2) ppd <- ppoints(nobs) ## omit probabilities within the exact tails pp <- pp[(pp > ppd[tails.n] & pp < ppd[nobs + 1 - tails.n])] ## add on probs corresponding to exact tails pp <- c(head(ppd, tails.n), pp, tail(ppd, tails.n)) ## must use a quantile type that recovers exact values: qtype <- 1 } xx <- distribution(pp) yy <- quantile(x, pp, names = FALSE, type = qtype, na.rm = TRUE) panel.xyarea(x = xx, y = yy, ...) } } } latticeExtra/R/marginal.plot.R0000644000176200001440000001413513077627542016017 0ustar liggesusers## ## Copyright (c) 2007 Felix Andrews ## GPL version 2 or newer is.categorical <- function (x) { is.factor(x) || is.shingle(x) || is.character(x) || is.logical(x) } marginal.plot <- function(x, data = NULL, groups = NULL, reorder = !is.table(x), plot.points = FALSE, ref = TRUE, cut = 0, origin = 0, #ylim = c(0, NA), this only supported in R >= 2.11 xlab = NULL, ylab = NULL, type = c("p", if (is.null(groups)) "h"), ..., subset = TRUE, as.table = TRUE, subscripts = TRUE, default.scales = list( relation = "free", abbreviate = TRUE, minlength = 5, rot = 30, cex = 0.75, tick.number = 3, y = list(draw = FALSE)), layout = NULL, lattice.options = list( layout.heights = list( axis.xlab.padding = list(x = 0), xlab.key.padding = list(x = 0)))) { if (is.table(data)) data <- as.data.frame(data) ## assume first term of formula is the data object; ignore rest if (inherits(x, "formula")) x <- eval(x[[2]], data, environment(x)) ## x must be either a data.frame or a table if (!is.data.frame(x) && !is.table(x)) x <- as.data.frame(x) ## groups and subset are subject to non-standard evaluation: groups <- eval(substitute(groups), data, parent.frame()) ## note unusual cases e.g. ## evalq(marginal.plot(dat, subset = complete.cases(dat)), myEnv) subset <- eval(substitute(subset), data, parent.frame()) ## apply subset if ((length(subset) > 0) && !isTRUE(subset)) { x <- x[subset,] if (!is.null(groups)) groups <- groups[subset] } ## divide into categoricals and numerics if (is.table(x)) { iscat <- TRUE } else { iscat <- sapply(x, is.categorical) } ## reorder factor levels if (reorder) { if (is.table(x)) { x <- reorderTableByFreq(x) } else { for (nm in names(x)[iscat]) { val <- x[[nm]] if (is.character(val)) x[[nm]] <- factor(val) if (!is.ordered(val) && !is.shingle(val) && nlevels(val) > 1) { x[[nm]] <- reorder(val, val, function(z) -length(z)) } } } } if (any(iscat)) { ## handle categorical variables ## make a list of dotplot trellis objects if (is.table(x)) { margins <- seq(length = length(dim(x))) names(margins) <- names(dimnames(x)) } else { margins <- which(iscat) names(margins) <- colnames(x)[iscat] } dotobjs <- lapply(margins, function(i) { if (is.table(x)) { nm <- names(dimnames(x))[i] nm <- deparse(as.symbol(nm), backtick = TRUE) form <- paste("Freq ~", nm) if (!is.null(groups)) form <- paste(form, "+ groups") tab <- xtabs(as.formula(form), x) } else { if (!is.null(groups)) { tab <- table(Value = x[[i]], groups = groups) } else { tab <- table(Value = x[[i]]) } } dotplot(tab, horizontal = FALSE, groups = !is.null(groups), subscripts = TRUE, ..., type = type, origin = origin, #ylim = ylim, as.table = as.table, default.scales = default.scales, lattice.options = lattice.options, xlab = xlab, ylab = ylab) }) ## merge the list of trellis objects into one catobj <- do.call("c", c(dotobjs, merge.legends = FALSE)) catobj$layout <- layout catobj$call <- match.call() } if (any(!iscat)) { ## handle numeric variables ## construct formula with all numeric variables nms <- names(x)[!iscat] symbolStr <- function(nm) deparse(as.symbol(nm), backtick = TRUE) nms <- sapply(nms, symbolStr) numform <- paste("~", paste(nms, collapse = " + ")) numobj <- densityplot(as.formula(numform), x, outer = TRUE, subscripts = TRUE, groups = groups, ..., plot.points = plot.points, ref = ref, cut = cut, #ylim = ylim, as.table = as.table, default.scales = default.scales, lattice.options = lattice.options, xlab = xlab, ylab = ylab) ## set strip name if only one panel if (prod(dim(numobj)) == 1) rownames(numobj) <- names(x)[!iscat] numobj$call <- match.call() numobj$layout <- layout } if (all(iscat)) { obj <- catobj } else if (all(!iscat)) { obj <- numobj } else { ## if there are both categoricals and numerics, ## merge the trellis objects; keep original var order reIndex <- order(c(which(iscat), which(!iscat))) obj <- update(c(catobj, numobj, merge.legends = FALSE), index.cond = list(reIndex), layout = layout) ## force strips when only one panel in each object if (identical(obj$strip, FALSE)) obj$strip <- "strip.default" } obj$call <- sys.call(sys.parent()) obj } reorderTableByFreq <- function(x) { stopifnot(is.table(x)) df <- as.data.frame(x) i <- which(names(df) == "Freq") df[-i] <- lapply(df[-i], reorder, - df$Freq) xtabs(Freq ~ ., df) } latticeExtra/R/mapplot.R0000644000176200001440000000603213574420210014702 0ustar liggesusers prepanel.mapplot <- function(x, y, map, ...) { list(xlim = range(map$x, finite = TRUE), ylim = range(map$y, finite = TRUE)) } panel.mapplot <- function(x, y, map, breaks, colramp, exact = FALSE, lwd = 0.5, ...) { names(x) <- tolower(as.character(y)) mapnames <- tolower(map$names) mapval <- x[mapnames] xmatched <- names(x) %in% mapnames if (any(!xmatched) && !exact) { ## lump sub-regions together (strip name after ':') mapnames <- gsub(":.*$", "", mapnames) ## only replace values which did not match exactly mapval <- ifelse(is.na(mapval), x[mapnames], mapval) xmatched <- xmatched | (names(x) %in% mapnames) } if (any(!xmatched)) warning(sum(!xmatched), " unmatched regions: ", toString(y[!xmatched], width = 60)) interval <- cut(mapval, breaks = breaks, labels = FALSE, include.lowest = TRUE) col.regions <- colramp(length(breaks) - 1) col <- col.regions[interval] panel.polygon(map, col = col, lwd = lwd, ...) } mapplot <- function(x, data, ...) UseMethod("mapplot") mapplot.formula <- function(x, data, map, outer = TRUE, prepanel = prepanel.mapplot, panel = panel.mapplot, aspect = "iso", legend = NULL, breaks, cuts = 30, colramp = colorRampPalette(hcl.colors(n = 11, palette = "Spectral")), colorkey = TRUE, ## col.regions, ## alpha.regions, ...) { colrampNULL <- is.null(colramp) if (is.null(colramp)) colramp <- function(n) colorRampPalette(trellis.par.get("regions")$col)(n) ccall <- match.call() ccall$data <- data ccall$map <- map ccall$outer <- outer ccall$prepanel <- prepanel ccall$panel <- panel ccall$aspect <- aspect ccall$legend <- legend ccall$colramp <- colramp ccall$default.scales <- list(x = list(tck = 1), y = list(tck = 1)) ccall[[1]] <- quote(lattice::dotplot) ans <- eval(ccall, parent.frame()) if (missing(breaks)) { x <- unlist(lapply(ans$panel.args, "[[", "x")) breaks <- if (is.factor(x)) seq_len(1 + nlevels(x)) - 0.5 else do.breaks(range(x, finite = TRUE), cuts) } ## regions <- trellis.par.get("col.regions") ## if (missing(col.regions)) col.regions <- regions$col ## if (missing(alpha.regions)) alpha.regions <- regions$alpha if (colorkey) { keydef <- list(at = breaks, draw = FALSE) if (!colrampNULL) keydef$col <- colramp(length(breaks)) ans <- update(ans, breaks = breaks, legend = lattice:::updateList(ans$legend, list(right = list(fun = draw.colorkey, args = list(key = keydef))))) } ans$call <- sys.call(sys.parent()) ans$call[[1]] <- quote(mapplot) ans } latticeExtra/R/utilities.R0000644000176200001440000001146713077627542015270 0ustar liggesusers ## update elements of a list recursively. updateList <- function (x, val) { if (is.null(x)) x <- list() modifyList(x, val) } ## common operations that only make sense in certain contexts useOuterStrips <- function(x, strip = strip.default, strip.left = strip.custom(horizontal = FALSE), strip.lines = 1, strip.left.lines = strip.lines) { dimx <- dim(x) stopifnot(inherits(x, "trellis")) stopifnot(length(dimx) == 2) as.table <- x$as.table opar <- if (is.null(x$par.settings)) list() else x$par.settings par.settings <- modifyList(opar, list(layout.heights = if (as.table) list(strip = c(strip.lines, rep(0, dimx[2]-1))) else list(strip = c(rep(0, dimx[2]-1), strip.lines)), layout.widths = list(strip.left = c(strip.left.lines, rep(0, dimx[1]-1))))) if (is.character(strip)) strip <- get(strip) if (is.logical(strip) && strip) strip <- strip.default new.strip <- if (is.function(strip)) { function(which.given, which.panel, var.name, ...) { row.to.keep <- if (as.table) 1 else nrow(trellis.currentLayout()) if (which.given == 1 && current.row() == row.to.keep) strip(which.given = 1, which.panel = which.panel[1], var.name = var.name[1], ...) } } else strip # This could reasonable happen only if strip == FALSE if (is.character(strip.left)) strip.left <- get(strip.left) if (is.logical(strip.left) && strip.left) strip.left <- strip.custom(horizontal = FALSE) new.strip.left <- if (is.function(strip.left)) { function(which.given, which.panel, var.name, ...) { if (which.given == 2 && current.column() == 1) strip.left(which.given = 1, which.panel = which.panel[2], var.name = var.name[2], ...) } } else strip.left update(x, par.settings = par.settings, strip = new.strip, strip.left = new.strip.left, par.strip.text = list(lines = 0.5), layout = dimx) } resizePanels <- function(x, h = 1, w = 1) { if (!missing(x)) return(update(x, par.settings = list(layout.heights = list(panel = h), layout.widths = list(panel = w)))) cl <- trellis.currentLayout() if (all(dim(cl) > 1)) stop("layout must have single column or single row.") if (all(dim(cl) == 1)) { message("Nothing to be done.") return() } if (any(cl == 0)) stop("missing panels not allowed") if (dim(cl)[2] == 1) ## single column { pos <- seq(length = dim(cl)[1]) heights <- sapply(pos, function(i) { trellis.focus("panel", 1, i, highlight = FALSE) ylim <- current.panel.limits()$ylim trellis.unfocus() diff(range(ylim)) }) return(trellis.last.object(par.settings = list(layout.heights = list(panel = heights)))) } else if (dim(cl)[1] == 1) ## single row { pos <- seq(length = dim(cl)[2]) widths <- sapply(pos, function(i) { trellis.focus("panel", i, 1, highlight = FALSE) xlim <- current.panel.limits()$xlim trellis.unfocus() diff(range(xlim)) }) return(trellis.last.object(par.settings = list(layout.widths = list(panel = widths)))) } print(dim(cl)) stop("shouldn't come here") } ## utility functions to extract components of a formula. Don't work ## reliably with unusual symbols .responseName <- function(formula) { if (length(formula) == 3) as.character(formula[2]) else stop("invalid formula") } .covariateName <- function(formula) { RHS <- if (length(formula) == 3) as.character(formula[3]) else if (length(formula) == 2) as.character(formula[2]) else stop("invalid formula") RHS <- strsplit(RHS, " | ", fixed = TRUE)[[1]] RHS[1] } .groupsName <- function(formula) { RHS <- if (length(formula) == 3) as.character(formula[3]) else if (length(formula) == 2) as.character(formula[2]) else stop("invalid formula") RHS <- strsplit(RHS, " | ", fixed = TRUE)[[1]] RHS[2] } latticeExtra/R/doubleYScale.R0000644000176200001440000003221013077627542015615 0ustar liggesusers## ## Copyright (c) 2008 Felix Andrews ## GPL version 2 or newer doubleYScale <- function(obj1, obj2, use.style = TRUE, style1 = if (use.style) 1, style2 = if (use.style) 2, add.axis = TRUE, add.ylab2 = FALSE, text = NULL, auto.key = if (!is.null(text)) list(text, points = points, lines = lines, ...), points = FALSE, lines = TRUE, ..., under = FALSE) { stopifnot(inherits(obj1, "trellis")) stopifnot(inherits(obj2, "trellis")) if (any(style1 == 0)) style1 <- NULL if (any(style2 == 0)) style2 <- NULL ## force same x scales #xlim1 <- obj1$x.limits #if (is.list(xlim1)) # xlim1 <- rep(xlim1, length = prod(dim(obj2))) #obj2 <- update(obj2, xlim = xlim1, ylim = obj2$y.limits) ## TODO - ylim only here to workaround bug in lattice 0.17-15 if (!is.null(auto.key)) { space <- "top" if (!is.null(auto.key$space)) space <- auto.key$space auto.key$space <- NULL keyLeg <- list(space = list(fun = "drawSimpleKey", args = auto.key)) names(keyLeg) <- space obj1 <- update(obj1, legend = keyLeg) } ## merge legends obj1$legend <- mergeTrellisLegends(obj1$legend, obj2$legend) if (add.ylab2) { ## add ylab2 as a 'legend' (idea from John Maindonald) ## draw both ylabs in their style, if specified ylabStyledGrob <- function(label, style) { textGrob(label, y = 0.5, rot = 90, gp = if (!is.null(style)) gpar(col = trellis.par.get("superpose.line")$col[style])) } is.characterOrExpression <- function(x) is.character(x) || is.expression(x) if (!is.null(style1)) { ylab1 <- obj1$ylab if (is.list(ylab1)) ylab1 <- obj1$ylab.default if (is.characterOrExpression(ylab1)) { obj1$legend <- mergeTrellisLegends(obj1$legend, list(left = list(fun = ylabStyledGrob, args = list(label = ylab1, style = style1))), vertical = FALSE) obj1$ylab <- expression(NULL) } } ## TODO: use ylab.right from lattice 0.19-6 ylab2 <- obj2$ylab if (is.list(ylab2)) ylab2 <- obj2$ylab.default if (is.characterOrExpression(ylab2)) { obj1$legend <- mergeTrellisLegends(list(right = list(fun = ylabStyledGrob, args = list(label = ylab2, style = style2))), obj1$legend, vertical = FALSE) } } if (add.axis == FALSE) { ## if not drawing a second axis, nothing to do but... foo <- obj1 + as.layer(obj2, style = style2, x.same = TRUE, y.same = FALSE, axes = NULL, under = under) } else { ## need to specify padding to draw second y axis yAxPad <- list(layout.widths = list( axis.left = list(x = 2.5, units = "char"), axis.right = list(x = 3, units = "char"))) dummy <- update(obj1, panel = function(...) NULL, scales = list(y = list(draw = FALSE)), lattice.options = yAxPad) foo <- dummy + as.layer(obj1, style = style1, x.same = TRUE, y.same = FALSE, axes = "y", out = TRUE, opp = FALSE) + as.layer(obj2, style = style2, x.same = TRUE, y.same = FALSE, axes = "y", out = TRUE, opp = TRUE, under = under) } foo$call <- match.call() foo } as.layer.trellis <- function(x, x.same = TRUE, y.same = TRUE, axes = c(if (!x.same) "x", if (!y.same) "y"), opposite = TRUE, outside = FALSE, theme = x$par.settings, ...) { if (identical(axes, TRUE)) axes <- c("x", "y") if (identical(axes, FALSE)) axes <- NULL opposite <- rep(opposite, length = 2) outside <- rep(outside, length = 2) if (x.same && y.same) { ## simply run the panel function in existing panel viewport return(layer({ packet.number <- min(packet.number(), prod(dim(x))) do.call(x$panel, trellis.panelArgs(x, packet.number)) }, data = list(x = x), theme = theme, ...)) } ## else ## take one or more scales from layered object (so new viewport) ## draw panels and axes from this trellis object layer({ packet.number <- min(packet.number(), prod(dim(x))) ## axis details... ## this all copied from lattice:::plot.trellis ## TODO: this is horrible; can use the axis function instead? x.relation.same <- x$x.scales$relation == "same" y.relation.same <- x$y.scales$relation == "same" xscale.comps <- if (x.relation.same) x$xscale.components(lim = x$x.limits, top = TRUE, ## rest passed on to ## calculateAxisComponents ## in the default ## case: at = x$x.scales$at, used.at = x$x.used.at, num.limit = x$x.num.limit, labels = x$x.scales$labels, logsc = x$x.scales$log, abbreviate = x$x.scales$abbr, minlength = x$x.scales$minl, n = x$x.scales$tick.number, format.posixt = x$x.scales$format) else x$xscale.components(lim = x$x.limits[[packet.number]], top = FALSE, ## rest passed on to ## calculateAxisComponents ## in the default ## case: at = if (is.list(x$x.scales$at)) x$x.scales$at[[packet.number]] else x$x.scales$at, used.at = x$x.used.at[[packet.number]], num.limit = x$x.num.limit[[packet.number]], labels = if (is.list(x$x.scales$labels)) x$x.scales$labels[[packet.number]] else x$x.scales$labels, logsc = x$x.scales$log, abbreviate = x$x.scales$abbr, minlength = x$x.scales$minl, n = x$x.scales$tick.number, format.posixt = x$x.scales$format) yscale.comps <- if (y.relation.same) x$yscale.components(lim = x$y.limits, right = TRUE, ## rest passed on to ## calculateAxisComponents ## in the default ## case: at = x$y.scales$at, used.at = x$y.used.at, num.limit = x$y.num.limit, labels = x$y.scales$labels, logsc = x$y.scales$log, abbreviate = x$y.scales$abbr, minlength = x$y.scales$minl, n = x$y.scales$tick.number, format.posixt = x$y.scales$format) else x$yscale.components(lim = x$y.limits[[packet.number]], right = FALSE, ## rest passed on to ## calculateAxisComponents ## in the default ## case: at = if (is.list(x$y.scales$at)) x$y.scales$at[[packet.number]] else x$y.scales$at, used.at = x$y.used.at[[packet.number]], num.limit = x$y.num.limit[[packet.number]], labels = if (is.list(x$y.scales$labels)) x$y.scales$labels[[packet.number]] else x$y.scales$labels, logsc = x$y.scales$log, abbreviate = x$y.scales$abbr, minlength = x$y.scales$minl, n = x$y.scales$tick.number, format.posixt = x$y.scales$format) xscale <- xscale.comps$num.limit yscale <- yscale.comps$num.limit ## maybe over-ride with original limits if (x.same) xscale <- current.panel.limits()$xlim if (y.same) yscale <- current.panel.limits()$ylim ## do panel(); need a new viewport with scales from 'x' pushViewport(viewport(xscale = xscale, yscale = yscale)) do.call(x$panel, trellis.panelArgs(x, packet.number)) ## use axis components from the standard side only xscale.comps$top <- TRUE yscale.comps$right <- TRUE x.comp.list <- xscale.comps$bottom y.comp.list <- yscale.comps$left ## axes viewport (clip = "off" for outside axes) ## note: to draw an outside axis at top when there are stips: ## should really do it in strip.column.row.off pushViewport(viewport(xscale = xscale, yscale = yscale, clip = "off")) if (("x" %in% axes) && is.list(x.comp.list) && x$x.scales$draw) { comp.list <- x.comp.list scales.tck <- x$x.scales$tck[1] rot <- as.numeric(x$x.scales$rot)[1] if (outside[1]) { ## use axis.default where possible (i.e. where outside=TRUE) ## because it handles labels well in multi-panel layouts x$x.scales$alternating <- 3 x$axis(side = if (opposite[1]) "top" else "bottom", scales = x$x.scales, components = xscale.comps, as.table = x$as.table, rot = rot) } else { panel.axis(side = if (opposite[1]) "top" else "bottom", at = comp.list$ticks$at, labels = comp.list$labels$labels, #tick = do.ticks, #draw.labels = do.labels, check.overlap = comp.list$labels$check.overlap, outside = outside[1], half = FALSE, tck = scales.tck * comp.list$ticks$tck, rot = rot) } } if (("y" %in% axes) && is.list(y.comp.list) && x$y.scales$draw) { comp.list <- y.comp.list scales.tck <- x$y.scales$tck[1] rot <- as.numeric(x$y.scales$rot)[1] if (outside[2]) { ## use axis.default where possible (i.e. where outside=TRUE) ## because it handles labels well in multi-panel layouts x$y.scales$alternating <- 3 x$axis(side = if (opposite[2]) "right" else "left", scales = x$y.scales, components = yscale.comps, as.table = x$as.table, rot = rot) } else { panel.axis(side = if (opposite[2]) "right" else "left", at = comp.list$ticks$at, labels = comp.list$labels$labels, #tick = do.ticks, #draw.labels = do.labels, check.overlap = comp.list$labels$check.overlap, outside = outside[2], half = FALSE, tck = scales.tck * comp.list$ticks$tck, rot = rot) } } upViewport(2) }, data = list(x = x, x.same = x.same, y.same = y.same, axes = axes, opposite = opposite, outside = outside), theme = theme, ...) } latticeExtra/R/horizonplot.R0000644000176200001440000001066013574417547015642 0ustar liggesusers## ## Copyright (c) 2010 Felix Andrews ## GPL version 2 or newer horizonplot <- function(x, data, ...) UseMethod("horizonplot") horizonplot.default <- function(x, data = NULL, ..., nbands = 3L, horizonscale = NA, origin = function(y) na.omit(y)[1], colorkey = FALSE, legend = NULL, panel = panel.horizonplot, prepanel = prepanel.horizonplot, col.regions = hcl.colors(2 * nbands, palette="RdYlBu"), strip = FALSE, strip.left = TRUE, par.strip.text = list(cex = 0.6), colorkey.digits = 3, layout = c(1, NA), groups = NULL, default.scales = list(y = list(relation = "free", axs = "i", draw = FALSE, tick.number = 2))) { if (!is.null(groups)) stop("'groups' does not work in this plot") ans <- xyplot(x, data = data, ..., origin = origin, horizonscale = horizonscale, panel = panel, prepanel = prepanel, col.regions = col.regions, strip = strip, strip.left = strip.left, par.strip.text = par.strip.text, layout = layout, default.scales = default.scales, nbands = nbands) ans$call <- match.call() ## add colorkey if (isTRUE(colorkey)) colorkey <- list() if (is.list(colorkey)) { bands.at <- seq(-nbands, nbands) if (ans$y.scales$relation == "same") { origin <- ans$y.limits[1] horizonscale <- diff(ans$y.limits) } if (is.na(horizonscale)) { ## labels <- expression( ## - 3 * Delta[i], - 2 * Delta[i], - 1 * Delta[i], 0, ## + 1 * Delta[i], + 2 * Delta[i], + 3 * Delta[i], 0) labels <- parse(text = sprintf("%+d * Delta[i]", bands.at)) labels[nbands + 1] <- if (is.numeric(origin)) origin else "origin" } else { if (is.numeric(origin)) { labels <- round(origin + bands.at * horizonscale, colorkey.digits) } else { labels <- sprintf("%+g", round(bands.at * horizonscale, colorkey.digits)) labels[nbands + 1] <- "origin" } } ii <- round(seq(1, length(col.regions), length.out = 2 * nbands)) colorkey <- modifyList(list(col = col.regions[ii], at = bands.at, labels = list(labels = labels, at = bands.at)), colorkey) space <- colorkey$space if (is.null(space)) space <- "right" if (is.null(legend)) legend <- list() legend[[space]] <- list(fun = "draw.colorkey", args = list(colorkey)) ans <- update(ans, legend = legend) } ans } panel.horizonplot <- function(x, y, ..., border = NA, nbands = 3L, col.regions = hcl.colors(2 * nbands, palette="RdYlBu"), origin) ## catch origin, don't pass to panel.xyarea! { origin <- current.panel.limits()$ylim[1] scale <- diff(current.panel.limits()$ylim) ## ordered for drawing, from least extreme to most extreme #sections <- c(0, -1, 1, -2, 2, -3) ## these are the lower bounds sections <- as.vector(rbind(seq_len(nbands)-1, -seq_len(nbands))) #ii <- round(((sections + 3) / 5) * (length(col.regions)-1)) + 1 ii <- round(((sections + nbands) / (2*nbands-1)) * (length(col.regions)-1)) + 1 #ii <- sections + nbands + 1 col <- col.regions[ii] for (i in seq_along(sections)) { section <- sections[i] yi <- y if (section < 0) { yi <- origin + origin - y section <- abs(section) - 1 } baseline <- origin + section * scale if (all(yi <= baseline, na.rm = TRUE)) next yi <- yi - baseline yi <- origin + pmax(pmin(yi, scale), 0) panel.xyarea(x, yi, border = border, col = col[i], col.line = col[i], ...) } } prepanel.horizonplot <- function(x, y, ..., horizonscale = NA, nbands = 3L, origin = function(y) na.omit(y)[1]) { if (is.function(origin)) origin <- origin(y) ans <- prepanel.default.xyplot(x, y, ...) if (is.na(horizonscale)) horizonscale <- max(abs(ans$ylim - origin)) / nbands ans$ylim <- origin + c(0, horizonscale) ans } latticeExtra/R/timeseries.R0000644000176200001440000000322713077627542015421 0ustar liggesusers xyplot.stl <- function(x, data = NULL, outer = TRUE, layout = c(1, 4), strip = FALSE, strip.left = TRUE, as.table = TRUE, ylab = "", between = list(y = 0.5), panel = function(..., type) { if (packet.number() == 4) type <- "h" panel.xyplot(..., type = type) }, ...) { stopifnot(is.null(data)) mstrip <- missing(strip.left) sers <- x$time.series ## ncomp <- ncol(sers) data <- rowSums(sers) X <- cbind(data, sers) colnames(X) <- c("data", colnames(sers)) ans <- xyplot(X, outer = outer, layout = layout, strip = strip, strip.left = strip.left, as.table = as.table, ylab = ylab, between = between, panel = panel, ..., default.scales = list(x = list(axs = "i"), y = list(relation = "free", tick.number = 3, rot = 0))) if (mstrip) { mx <- min(rx <- abs(sapply(ans$y.limits, diff))) int <- cbind(-mx / rx, mx / rx) ans <- update(ans, strip.left = strip.custom(horizontal = FALSE, strip.names = FALSE, strip.levels = TRUE, shingle.intervals = int)) } ans$call <- sys.call(sys.parent()); ans$call[[1]] <- quote(xyplot) ans } latticeExtra/R/axis.grid.R0000644000176200001440000000406713101273653015127 0ustar liggesusers axis.grid <- function(side = c("top", "bottom", "left", "right"), ..., ticks = c("default", "yes", "no"), scales, components, line.col) { side <- match.arg(side) ticks <- match.arg(ticks) scales.tck <- switch(side, left = , bottom = scales$tck[1], right = , top = scales$tck[2]) ## only draw major ticks (those corresponding to labels) comps.major <- components mycomps <- components[[side]] if (is.list(mycomps)) { lab <- as.character(mycomps$labels$labels) if (any(lab != "")) { tck <- mycomps$ticks$tck if (any(tck * scales.tck != 0)) { tck <- rep(tck, length = length(lab)) comps.major[[side]]$ticks$tck <- ifelse(lab == "", NA, tck) } } } ## We can have ticks even if labels are absent ## else { ## ticks <- "no" ## } ## Use axis.text for ticks because axis.line$col might be transparent axis.text <- trellis.par.get("axis.text") axis.default(side, scales = scales, ticks = ticks, components = comps.major, ..., line.col = axis.text$col) ## Now draw grid lines corresponding to axis ticks. ## Do this only for the bottom and right sides; because top/left ## are called from strip viewports, not panel. if (side %in% c("top", "left")) return() if (scales$draw == FALSE) return() ref.line <- trellis.par.get("reference.line") if (side == "bottom") { tck <- abs(mycomps$ticks$tck) panel.refline(v = mycomps$ticks$at, lwd = ref.line$lwd * tck, alpha = ref.line$alpha * tck / max(tck, na.rm = TRUE)) } if (side == "right") { if (!is.list(mycomps)) mycomps <- components[["left"]] tck <- abs(mycomps$ticks$tck) panel.refline(h = mycomps$ticks$at, lwd = ref.line$lwd * tck, alpha = ref.line$alpha * tck / max(tck, na.rm = TRUE)) } } latticeExtra/R/custom.theme.R0000644000176200001440000000443213574416342015656 0ustar liggesusers ## Construct a custom theme based on supplied colors. Defaults to ## colors from RColorBrewer custom.theme <- function(symbol = RColorBrewer::brewer.pal(n = 8, name = "Dark2"), fill = RColorBrewer::brewer.pal(n = 12, name = "Set3"), region = RColorBrewer::brewer.pal(n = 11, name = "Spectral"), reference = "#e8e8e8", bg = "transparent", fg = "black", ...) { theme <- list(plot.polygon = list(col = fill[1], border = fg[1]), box.rectangle = list(col= symbol[1]), box.umbrella = list(col= symbol[1]), dot.line = list(col = reference), dot.symbol = list(col = symbol[1]), plot.line = list(col = symbol[1]), plot.symbol = list(col= symbol[1]), regions = list(col = colorRampPalette(region)(100)), reference.line = list(col = reference), superpose.line = list(col = symbol), superpose.symbol = list(col = symbol), superpose.polygon = list(col = fill, border = fg), background = list(col = bg), add.line = list(col = fg), add.text = list(col = fg), box.dot = list(col = fg), axis.line = list(col = fg), axis.text = list(col = fg), strip.border = list(col = fg), box.3d = list(col = fg), par.xlab.text = list(col = fg), par.ylab.text = list(col = fg), par.zlab.text = list(col = fg), par.main.text = list(col = fg), par.sub.text = list(col = fg)) modifyList(modifyList(standard.theme("pdf"), theme), simpleTheme(...)) } custom.theme.2 <- function(...) { doit <- function(symbol = RColorBrewer::brewer.pal(n = 9, name = "Set1")[c(2:1, 3:5, 7:9)], ## blue first fill = RColorBrewer::brewer.pal(n = 8, name = "Accent"), region = RColorBrewer::brewer.pal(n = 11, name = "RdBu"), ...) { custom.theme(symbol = symbol, fill = fill, region = region, ...) } doit(...) } latticeExtra/R/panel.lmlineq.R0000644000176200001440000001266213077627542016012 0ustar liggesusers## ## Copyright (c) 2009 Felix Andrews ## GPL version 2 or newer panel.ablineq <- function(a = NULL, b = 0, h = NULL, v = NULL, reg = NULL, coef = NULL, pos = if (rotate) 1 else NULL, offset = 0.5, adj = NULL, at = 0.5, x = NULL, y = NULL, rotate = FALSE, srt = 0, label = NULL, varNames = alist(y = y, x = x), varStyle = "italic", fontfamily = "serif", digits = 3, r.squared = FALSE, sep = ", ", sep.end = "", col, col.text = add.text$col, col.line = add.line$col, ..., reference = FALSE) { if (!is.null(label)) varStyle <- NULL ## work out colours for text and line add.text <- trellis.par.get("add.text") add.line <- if (reference) trellis.par.get("reference.line") else trellis.par.get("add.line") if (!missing(col) && missing(col.line)) col.line <- col if (!missing(col) && missing(col.text)) col.text <- col ## draw the line panel.abline(a = a, b = b, h = h, v = v, reg = reg, coef = coef, col = col.line, ..., reference = reference) ## extract r.squared from model object if any if (!is.null(reg)) { a <- reg } if (isTRUE(r.squared)) { if (is.object(a) || is.list(a)) { r.squared <- round(summary(a)$r.squared, digits) } else { warning("r.squared = TRUE requires a model object") } } ## work out equation coefficients ## the following copied from lattice::panel.abline if (is.object(a) || is.list(a)) { p <- length(coefa <- as.vector(coef(a))) if (p > 2) warning("only using the first two of ", p, "regression coefficients") islm <- inherits(a, "lm") noInt <- if (islm) !as.logical(attr(stats::terms(a), "intercept")) else p == 1 if (noInt) { a <- 0 b <- coefa[1] } else { a <- coefa[1] b <- if (p >= 2) coefa[2] else 0 } } if (!is.null(coef)) { if (!is.null(a)) warning("'a' and 'b' are overridden by 'coef'") a <- coef[1] b <- coef[2] } if (length(h <- as.numeric(h)) > 0) { if (!is.null(a)) warning("'a' and 'b' are overridden by 'h'") a <- h[1] b <- 0 } if (length(a) > 1) { b <- a[2] a <- a[1] } ## construct the equation label if (length(as.numeric(v)) > 0) { ## vertical line (special case) if (!is.null(a)) warning("'a' and 'b' are overridden by 'v'") if (is.null(x)) x <- v[1] if (is.null(y)) y <- convertY(unit(at, "npc"), "native", TRUE) if (is.null(label)) { v <- signif(v[1], digits) varNames <- c(as.list(varNames), v = v) label <- substitute(x == v, varNames) } } else { ## normal a+bx line if (is.null(x)) { ## work out start and end x values of visible line xlim <- current.panel.limits()$xlim ylim <- current.panel.limits()$ylim if (b == 0) { xx <- xlim } else { xx <- range((ylim - a) / b) xx <- pmin(max(xlim), xx) xx <- pmax(min(xlim), xx) } ## x position as fractional distance along line x <- min(xx) + at * abs(diff(xx)) } if (is.null(y)) y <- a + b * x if (is.null(label)) { a <- round(a, digits) b <- round(b, digits) varNames <- c(as.list(varNames), a = a, b = b) if (b == 0) { label <- substitute(y == a, varNames) } else if (a == 0) { label <- substitute(y == b * x, varNames) } else if (b > 0) { label <- substitute(y == a + b * x, varNames) } else { varNames$b <- abs(b) label <- substitute(y == a - b * x, varNames) } } } if (rotate) { if (length(as.numeric(v)) > 0) { srt <- 90 } else { ## aspect ratio with respect to native coordinates asp <- with(lapply(current.panel.limits(), diff), ylim / xlim) ## aspect ratio of panel at *current* device size asp.cm <- with(lapply(current.panel.limits("cm"), diff), ylim / xlim) grad <- b * (asp.cm / asp) srt <- 180 * atan(grad) / pi } } if (is.numeric(r.squared)) { ## add R^2 = ... to label rsq.expr <- substitute(italic(R)^2 == z, list(z = r.squared)) label <- call("paste", label, sep, rsq.expr, sep.end) } ## wrap 'varStyle' function (or multiple functions) around label expression if (!is.null(varStyle)) { while (length(varStyle) > 0) { label <- call(varStyle[1], label) varStyle <- varStyle[-1] } } panel.text(x = x, y = y, labels = label, pos = pos, offset = offset, adj = adj, fontfamily = fontfamily, srt = srt, col = col.text, ...) } panel.lmlineq <- function(x, y, ...) { if (length(x) > 1) panel.ablineq(lm(as.numeric(y) ~ as.numeric(x)), ...) } latticeExtra/R/panel.ellipse.R0000644000176200001440000000676413077627542016014 0ustar liggesusers# data ellipses for xyplot # M. Friendly, 7/7/2010 9:24AM # - replaced panel.polygon with panel.lines # calculate one data ellipse; modified from car to do just the calculation conf.ellipse <- function(x, y, level = 0.68, segments = 50L, robust = FALSE) { if (length(x) != length(y)) stop("x and y must be vectors of the same length") xy <- na.omit(cbind(x, y)) if (robust) { v <- MASS::cov.trob(xy) shape <- v$cov center <- v$center } else { shape <- var(xy) center <- colMeans(xy) } radius <- sqrt(2 * qf(level, df1 = 2, df2 = length(x) - 1)) angles <- seq(0, 2 * pi, length.out = segments + 1) unit.circle <- cbind(cos(angles), sin(angles)) ell <- t(center + radius * t(unit.circle %*% chol(shape))) list(ellipse = ell, center = center) } panel.ellipse <- function(x, y, groups = NULL, level = 0.68, segments = 50, robust = FALSE, center.pch = 3, center.cex = 2, ..., type, pch, cex) { x <- as.numeric(x) y <- as.numeric(y) if (!is.null(groups)) panel.superpose(x = x, y = y, groups = groups, level = level, segments = segments, robust = robust, center.pch = center.pch, center.cex = center.cex, panel.groups = panel.ellipse, ...) else { ell <- conf.ellipse(x = x, y = y, level = level, segments = segments, robust = robust) panel.xyplot(ell$ellipse[,1], ell$ellipse[,2], ..., type = "l") if (!is.null(center.pch)) panel.xyplot(ell$center[1], ell$center[2], ..., pch = center.pch, cex = center.cex) } } if (FALSE) { old.panel.ellipse <- function(x, y, groups=NULL, level=0.68, segments=51, robust=FALSE, col=NA, col.line = if (is.null(groups)) plot.line$col else superpose.line$col, lwd = if (is.null(groups)) plot.line$lwd else superpose.line$lwd, lty = if (is.null(groups)) plot.line$lty else superpose.line$lty, center.pch=3, center.cex=2, ...) { x <- as.numeric(x) y <- as.numeric(y) plot.line <- trellis.par.get("plot.line") superpose.line <- trellis.par.get("superpose.line") if (!is.na(col)) { if (missing(col.line)) col.line <- col } groups <- as.factor(if(is.null(groups)) rep(1, length(x)) else as.character(groups)) n.groups <- length(levels(groups)) col <- rep(col.line, length.out=n.groups) lty <- rep(lty, length.out=n.groups) lwd <- rep(lwd, length.out=n.groups) for (i in 1:n.groups) { subs <- groups == levels(groups)[i] XY <- na.omit(data.frame(x=x[subs], y=y[subs])) ell <- .ellipse(XY, level = level, segments = segments, robust = robust) ## panel.polygon(ell[,1], ell[,2], border=col[i], col="transparent", lty=lty[i], lwd=lwd[i], ...) panel.lines(ell[,1], ell[,2], col = col[i], lty = lty[i], lwd = lwd[i], ...) if (!is.null(center.pch)) { center = colMeans(XY) panel.points(center[1], center[2], col=col[i], pch = center.pch, cex = center.cex) } } } } latticeExtra/R/layer.R0000644000176200001440000002317513574413116014360 0ustar liggesusers## ## Copyright (c) 2008 Felix Andrews ## GPL version 2 or newer as.layer <- function(x, ...) UseMethod("as.layer") as.layer.layer <- function(x, ...) x layer <- function(..., data = NULL, magicdots = TRUE, exclude = NULL, packets = NULL, rows = NULL, columns = NULL, groups = NULL, style = NULL, force = FALSE, theme = if (force) trellis.par.get() else NULL, under = FALSE, superpose = FALSE) { ## set layer to quoted expressions in `...` foo <- eval(substitute(expression(...))) if (magicdots) { ## The dots `...` are magic: ## pass on only those arguments not named in each call foo <- as.expression(lapply(foo, magicDots, exclude = exclude)) } ## FIXME: should we have ## ## if (missing(data)) data <- parent.frame() ## ## ? See tests/layer.R for a non-obvious failure. But not sure ## how best to fix. mostattributes(foo) <- list(data = data, under = under, packets = packets, rows = rows, columns = columns, groups = groups, superpose = superpose, style = style, theme = theme) lay <- list(foo) class(lay) <- c("layer", "trellis") lay } ## convert a call containing `...` to only pass on arguments ## not named in the call magicDots <- function(ocall, exclude = NULL, assume.xy = TRUE) { if (!is.call(ocall)) stop("arguments to layer() should be calls") ## call recursively with any calls inside this one for (i in seq_along(ocall)[-1]) { thisArg <- ocall[[i]] if (missing(thisArg)) ## eg x[,1] next if (is.call(thisArg)) { ## skip function definitions if (identical(thisArg[[1]], as.symbol("function"))) next ocall[[i]] <- Recall(thisArg, exclude = exclude, assume.xy = assume.xy) } } Args <- as.list(ocall)[-1] ## nothing to do if there are no dots in the call idots <- sapply(Args, identical, as.symbol("...")) if (!any(idots)) return(ocall) Args <- Args[!idots] ## nothing to do if there are only dots in the call (unless exclude) if ((length(Args) == 0) && (length(exclude) == 0)) return(ocall) ## assume first argument is 'x' if is un-named, and second 'y' if (assume.xy && (length(Args) > 0)) { if (is.null(names(Args))) names(Args) <- rep("", length = length(Args)) if (identical(names(Args)[1], "")) names(Args)[1] <- "x" if (identical(names(Args)[2], "")) names(Args)[2] <- "y" } if (length(exclude) == 0) { ## simple case mcall <- substitute(do.call(FUN, modifyList(list(...), Args)), list(FUN = ocall[[1]], Args = Args)) } else { ## exclude named arguments from dots mcall <- substitute(do.call(FUN, modifyList(list(...)[!(names(list(...)) %in% exclude)], Args)), list(FUN = ocall[[1]], Args = Args, exclude = exclude)) } mcall } layer_ <- function(...) { ccall <- match.call() ccall$under <- TRUE ccall[[1]] <- quote(layer) eval.parent(ccall) } glayer <- function(...) { ccall <- match.call() ccall$superpose <- TRUE ccall[[1]] <- quote(layer) eval.parent(ccall) } glayer_ <- function(...) { ccall <- match.call() ccall$superpose <- TRUE ccall$under <- TRUE ccall[[1]] <- quote(layer) eval.parent(ccall) } ## to avoid print.trellis print.layer <- function(x, ...) print.default(x, ...) ## to avoid [.trellis and to keep the class attribute "[.layer" <- function (x, i, ...) structure(unclass(x)[i], class = class(x)) "+.trellis" <- function(object, lay) { ocall <- sys.call(sys.parent()); ocall[[1]] <- quote(`+`) if (missing(object) || missing(lay)) stop("Only one argument supplied to binary operator + which requires two.") stopifnot(inherits(object, "trellis")) lay <- as.layer(lay) if (inherits(object, "layer")) { ## just concatenate lists return(structure(c(unclass(object), unclass(lay)), class = c("layer", "trellis"))) } panel <- if ("panel" %in% names(object$panel.args.common)) object$panel.args.common$panel else object$panel panel <- if (is.function(panel)) panel else if (is.character(panel)) { ## could be just get(panel), but for flattenPanel: ## do not expand original panel function eg panel.xyplot(...) tmp <- function(...) NA body(tmp) <- call(panel, quote(...)) environment(tmp) <- globalenv() tmp } else eval(panel) ## a flag to indicate this panel function has layers ## (used by flattenPanel and undoLayer) .is.a.layer <- TRUE newpanel <- function(...) { .UNDER <- unlist(lapply(lay, attr, "under")) ## underlaying items only drawLayer(lay[.UNDER], list(...)) ## original panel function: panel(...) ## overlaying items only drawLayer(lay[.UNDER == FALSE], list(...)) } if ("panel" %in% names(object$panel.args.common)) object$panel.args.common$panel <- newpanel else object$panel <- newpanel ## need this to allow further calls to update() to insert arguments: object$call <- call("update", ocall) object } drawLayer <- function(lay, panelArgs = trellis.panelArgs()) { lay <- as.layer(lay) .UNDER <- unlist(lapply(lay, attr, "under")) ## underlayers, in reverse order for (.ITEM in rev(lay[.UNDER])) drawLayerItem(.ITEM, panelArgs) ## overlayers for (.ITEM in lay[.UNDER == FALSE]) drawLayerItem(.ITEM, panelArgs) invisible() } drawLayerItem <- function(layer.item, panelArgs) { stopifnot(is.expression(layer.item)) ## check that any restrictions on packets/rows/columns are met matchesok <- function(spec, value) { if (is.null(spec)) return(TRUE) if (is.numeric(spec) && all(spec <= 0)) ## negative indexes exclude items return(value %in% -spec == FALSE) else return(value %in% spec) } matchesallok <- with(list(a = attributes(layer.item)), matchesok(a$packets, packet.number()) && matchesok(a$rows, current.row()) && matchesok(a$columns, current.column())) if (!matchesallok) return() ## set given theme for duration of this function if (!is.null(attr(layer.item, "theme"))) { .TRELLISPAR <- trellis.par.get() trellis.par.set(attr(layer.item, "theme")) on.exit(trellis.par.set(.TRELLISPAR)) } ## define a layer drawing function, which may be per group drawLayerItemPerGroup <- function(...) { ## Note: layer.item is found in this function's environment dots <- list(...) ## restrict to specified group numbers groupok <- (matchesok(attr(layer.item, "groups"), dots$group.number) || matchesok(attr(layer.item, "groups"), as.character(dots$group.value))) if (!groupok) return() if (!is.null(attr(layer.item, "style"))) { ## extract plot style attributes from given index into superpose.* .TRELLISPAR <- trellis.par.get() local({ i <- attr(layer.item, "style") line <- Rows(trellis.par.get("superpose.line"), i) symbol <- Rows(trellis.par.get("superpose.symbol"), i) polygon <- Rows(trellis.par.get("superpose.polygon"), i) trellis.par.set(plot.line = line, superpose.line = line, add.line = line, add.text = line, plot.symbol = symbol, superpose.symbol = symbol, plot.polygon = polygon, superpose.polygon = polygon, axis.text = line, axis.line = line ) }) on.exit(trellis.par.set(.TRELLISPAR)) } with(dots, eval(layer.item, attr(layer.item, "data"), environment())) } ## call panel.superpose for group layers if (isTRUE(attr(layer.item, "superpose"))) { do.call("panel.superpose", modifyList(panelArgs, list(panel.groups = drawLayerItemPerGroup))) } else { do.call("drawLayerItemPerGroup", panelArgs) } } flattenPanel <- function(object) { flattenFun <- function(fun) { env <- environment(fun) ## check if this panel function is simple or has layers if (is.null(env) || !exists(".is.a.layer", env, inherits = FALSE)) return(as.expression(body(fun))) ## merge: under layers, existing panel, over layers .UNDER <- sapply(env$lay, attr, "under") c(do.call("c", rev(env$lay[.UNDER])), flattenFun(env$panel), do.call("c", env$lay[.UNDER == FALSE])) } flat <- flattenFun(object$panel) ## wrap in braces, as in a function body as.call(c(quote(`{`), flat)) } ## not exported -- I do not think this is really useful undoLayer <- function(x) { stopifnot(is.function(x$panel)) env <- environment(x$panel) if (!exists(".is.a.layer", env, inherits=FALSE)) stop("does not look like a layer") update(x, panel=env$panel) } latticeExtra/R/panel.3dmisc.R0000644000176200001440000001470613077627542015534 0ustar liggesusers ## a panel function for cloud that draws "3d bar charts" which ## shouldn't be used except in unusual circumstances panel.3dbars <- function(x, y, z, rot.mat = diag(4), distance, xbase = 1, ybase = 1, xlim, xlim.scaled, ylim, ylim.scaled, zlim, zlim.scaled, zero.scaled, col = "black", lty = 1, lwd = 1, alpha = 1, ..., col.facet = "white", alpha.facet = 1) { n <- length(z) col <- rep(col, length = n) col.facet <- rep(col.facet, length = n) alpha <- rep(alpha, length = n) alpha.facet <- rep(alpha.facet, length = n) lty <- rep(lty, length = n) lwd <- rep(lwd, length = n) id <- ((x >= xlim.scaled[1]) & (x <= xlim.scaled[2]) & (y >= ylim.scaled[1]) & (y <= ylim.scaled[2]) & !is.na(x) & !is.na(y) & !is.na(z)) m <- ltransform3dto3d(rbind(x, y, 0), rot.mat, distance) ord <- sort.list(m[3,]) ord <- ord[id[ord]] zero.scaled <- if (zero.scaled < zlim.scaled[1]) zlim.scaled[1] else if (zero.scaled > zlim.scaled[2]) zlim.scaled[2] else zero.scaled inRange <- function(x, lim) { rng <- range(x, finite = TRUE) rng[1] >= min(lim) && rng[2] <= max(lim) } ## draw bars one by one for (i in ord) { ## print(i) xbase.scaled <- diff(xlim.scaled) * xbase / diff(xlim) ybase.scaled <- diff(ylim.scaled) * ybase / diff(ylim) zz.sides <- matrix(c(zero.scaled, z[i]), 2, 1)[, rep(1, 5)] xx.sides <- c(x[i], x[i]) + xbase.scaled * 0.5 * rbind(c(-1, 1, 1, -1, -1), c(-1, 1, 1, -1, -1)) yy.sides <- c(y[i], y[i]) + ybase.scaled * 0.5 * rbind(c(-1, -1, 1, 1, -1), c(-1, -1, 1, 1, -1)) zz.top <- matrix(z[i], 2, 2) xx.top <- c(x[i], x[i]) + xbase.scaled * 0.5 * rbind(c(-1, 1), c(-1, 1)) yy.top <- c(y[i], y[i]) + ybase.scaled * 0.5 * rbind(c(-1, -1), c(1, 1)) zz <- cbind(zz.sides, c(NA, NA), zz.top) xx <- cbind(xx.sides, c(NA, NA), xx.top) yy <- cbind(yy.sides, c(NA, NA), yy.top) ## str(list(xx, yy, zz)) if (inRange(xx, xlim.scaled) && inRange(yy, ylim.scaled) && inRange(zz, zlim.scaled)) { panel.3dwire(xx, yy, zz, rot.mat = rot.mat, distance = distance, xlim = xlim, xlim.scaled = xlim.scaled, ylim = ylim, ylim.scaled = ylim.scaled, zlim = zlim, zlim.scaled = zlim.scaled, col = col[i], lty = lty[i], lwd = lwd[i], alpha = alpha[i], ..., at = c(0, 1), # dummy col.regions = col.facet[i], alpha.regions = alpha.facet[i]) } } } ## panel.3dpolygon <- ## function(x, y, z, rot.mat = diag(4), distance, ## type = 'p', ## xlim.scaled, ## ylim.scaled, ## zlim.scaled, ## zero.scaled, ## col = "white", ## border = "black", ## lty = 1, lwd = 1, ## min.sides = 3, ## ..., ## subscripts = TRUE) ## { ## m <- ltransform3dto3d(rbind(x, y, z), rot.mat, distance) ## ## ord <- sort.list(m[3,]) ## n <- ncol(m) ## w <- which(is.na(x) | is.na(y)) ## id.lengths <- diff(c(0, w, n)) ## cum.lengths <- c(0, cumsum(id.lengths)) ## idlist <- ## lapply(seq_along(id.lengths), ## function(i) { ## ind <- seq_len(id.lengths[i]) + cum.lengths[i] ## ind[-id.lengths[i]] ## }) ## ord <- ## order(sapply(idlist, ## function(ind) { ## min(m[3, ind]) ## })) ## for (ind in idlist[ord]) ## { ## if (length(ind) >= min.sides) ## panel.polygon(x = m[1, ind], y = m[2, ind], ## col = col, border = border) ## } ## } panel.3dpolygon <- function(x, y, z, rot.mat = diag(4), distance, xlim.scaled, ylim.scaled, zlim.scaled, zero.scaled, col = "white", border = "black", ## min.sides = 3, font, fontface, ## gpar() doesn't like these ...) { if (all(is.na(x) | is.na(y) | is.na(z))) return() border <- if (all(is.na(border))) "transparent" else if (is.logical(border)) { if (border) "black" else "transparent" } else border m <- ltransform3dto3d(rbind(x, y, z), rot.mat, distance) ## ord <- sort.list(m[3,]) n <- ncol(m) w <- which(is.na(x) | is.na(y)) id.lengths <- diff(c(0, w, n)) ## need to reorder multiple polygons by some measure of "average" depth id.long <- rep(seq_along(id.lengths), id.lengths) ord.depth <- order(tapply(m[3,], id.long, min, na.rm = TRUE)) id.ordered <- ord.depth[id.long] ord.long <- order(id.ordered) grid.polygon(x = m[1, ord.long], y = m[2, ord.long], id = id.ordered[ord.long], default.units = "native", gp = gpar(fill = col, col = border, ...)) ## print(data.frame(x = m[1, ord.long], ## y = m[2, ord.long], ## id = id.ordered[ord.long])) return() } panel.3dtext <- function(x, y, z, labels = seq_along(x), rot.mat = diag(4), distance, ...) { if (all(is.na(x) | is.na(y) | is.na(z))) return() m <- ltransform3dto3d(rbind(x, y, z), rot.mat, distance) ord <- sort.list(m[3,]) panel.text(x = m[1, ord], y = m[2, ord], labels = labels, ...) } ## d <- data.frame(x = rnorm(10), ## y = rnorm(10), ## z = rnorm(10)) ## rownames(d) <- letters[1:10] ## cloud(z ~ x * y, d, panel.3d.cloud = panel.3dtext) ## cloud(z ~ x * y, d, panel.3d.cloud = panel.3dtext, ## labels = rownames(d), col = "red") ## ## for multipanel plots ## cloud(z ~ x * y, d, ## panel.3d.cloud = function(..., subscripts) { ## panel.3dtext(..., labels = rownames(d)[subscripts]) ## }) latticeExtra/R/combineLimits.R0000644000176200001440000001340213077627542016042 0ustar liggesusers ## also available in lattice, but not exported is.characterOrExpression <- function (x) is.character(x) || is.expression(x) .arrayIndices <- function(d, i) ## Suppose we have an array 'x' with dimension 'd'. We can index ## 'x' in two different ways: x[i] or x[i_1, i_2, ..., i_d]. ## Here, we are given 'i', and want to compute i_1, i_2, ..., i_d. { ## Here's what we are doing: ## For length(d) == 3, note that (for 0-based indexing) ## ## i1 = (i mod d[1]) ## i2 = (i mod d[1] * d[2]) div d[1] ## i3 = (i mod d[1] * d[2] * d[3]) div d[1] * d[2] n <- length(d) ans <- vector(mode = "list", length = n) for (k in seq_along(ans)) { ans[[k]] <- 1L + (((i-1L) %% prod(head(d, k))) %/% prod(head(d, k-1L))) } ans } combineLimits <- function(x, margin.x = 2L, margin.y = 1L, extend = TRUE, adjust.labels = TRUE) { if (length(dim(x)) == 1L) warning("Only one conditioning variable; nothing interesting will happen.") indices <- .arrayIndices(dim(x), seq_len(prod(dim(x)))) ## For regular `numeric' scales, all we need is to modify ## $[xy].scales. But for `factor' scales, we need to leave ## $[xy].scales alone, and instead modify $[xy].used.at and $[xy].num.limit modifyLimits <- function(limits, margin, ext) { limits <- array(limits, dim = dim(x)) for (i in seq_len(prod(dim(x)))) { ## index.combine <- index.entry <- Rows(indices, i) index.combine <- Rows(indices, i) index.combine[margin] <- list(TRUE) ## limits[[i]] <- ## range(do.call("[", c(list(limits), index.combine)), finite = TRUE) li <- unlist(do.call("[", c(list(limits), index.combine))) limits[[i]] <- if(all(is.na(li))) li else range(li, finite = TRUE) } if (ext) lapply(limits, lattice:::extend.limits) else limits } modifyUsed <- function(used.at, margin) { used.at <- array(used.at, dim = dim(x)) for (i in seq_len(prod(dim(x)))) { index.combine <- Rows(indices, i) index.combine[margin] <- list(TRUE) li <- unlist(do.call("[", c(list(used.at), index.combine))) used.at[[i]] <- sort(unique(li)) } used.at } if (x$x.scales$relation != "free" && x$y.scales$relation != "free") warning("Function only has effect for scales with 'relation=\"free\"'.") if (x$x.scales$relation == "free" && length(margin.x)) { if (is.characterOrExpression(x$x.limits[[1]])) { x$x.used.at <- modifyUsed(x$x.used.at, margin.x) x$x.num.limit <- modifyLimits(x$x.num.limit, margin.x, ext = FALSE) } else x$x.limits <- modifyLimits(x$x.limits, margin.x, ext = extend) } if (x$y.scales$relation == "free" && length(margin.y)) { if (is.characterOrExpression(x$y.limits[[1]])) { x$y.used.at <- modifyUsed(x$y.used.at, margin.y) x$y.num.limit <- modifyLimits(x$y.num.limit, margin.y, ext = FALSE) } else x$y.limits <- modifyLimits(x$y.limits, margin.y, ext = extend) } if (adjust.labels) { ## Drop all but left/bottom-most labels, and set space to 0 ## for those. Needs to know layout, and will set it unless ## already set. npackets <- prod(dim(x)) par.settings <- if (is.null(x$par.settings)) list() else x$par.settings if (is.null(x$layout)) x$layout <- if (length(dim(x)) == 1L) c(dim(x), 1) else dim(x)[1:2] else if (!isTRUE(all.equal(x$layout[1:2], dim(x)[1:2]))) { warning("'layout' does not match dimensions; displayed scales may be wrong.") } if (any(is.na(x$layout) | x$layout == 0)) stop("'layout' must explicitly determine number of rows and columns") if (x$x.scales$relation == "free" && length(margin.x)) { ## change x-scales if (is.list(x$x.scales$at)) { warning("Explicit per-panel tick mark locations ignored") x$x.scales$at <- FALSE } page.at <- if (x$as.table) rep(list(NULL, x$x.scales$at), c(x$layout[1] * (x$layout[2]-1), x$layout[1])) else rep(list(x$x.scales$at, NULL), c(x$layout[1], x$layout[1] * (x$layout[2]-1))) x$x.scales$at <- rep(page.at, length.out = npackets) par.settings <- if (x$as.table) modifyList(par.settings, list(layout.heights = list(axis.panel = rep(c(0, 1), c(x$layout[2]-1, 1))))) else modifyList(par.settings, list(layout.heights = list(axis.panel = rep(c(1, 0), c(1, x$layout[2]-1))))) } if (x$y.scales$relation == "free" && length(margin.y)) { ## change y-scales if (is.list(x$y.scales$at)) { warning("Explicit per-panel tick mark locations ignored") x$y.scales$at <- FALSE } page.at <- rep(list(TRUE, NULL), c(1, x$layout[1]-1)) x$y.scales$at <- rep(page.at, length.out = npackets) par.settings <- modifyList(par.settings, list(layout.widths = list(axis.panel = rep(c(1, 0), c(1, x$layout[1]-1))))) } x$par.settings <- par.settings } x } latticeExtra/R/mergeTrellisLegends.R0000644000176200001440000000321513077627542017205 0ustar liggesusers ## not exported; for use in c.trellis and doubleYScale mergeTrellisLegends <- function(legend, legend2, vertical = NULL) { legend <- as.list(legend) legend2 <- as.list(legend2) for (space in c("top", "bottom", "left", "right")) { if (!is.null(legend2[[space]])) { if (is.null(legend[[space]])) { ## no conflict legend[[space]] <- legend2[[space]] } else { v <- vertical if (is.null(v)) v <- space %in% c("left", "right") legend[[space]] <- list(fun = "mergedTrellisLegendGrob", args = list(a = legend[[space]], b = legend2[[space]], vertical = v)) } } } legend <- c(legend, legend2[names(legend2) == "inside"]) legend } ## exported, to be called at plot time from 'legend' mergedTrellisLegendGrob <- function(a, b, vertical = FALSE, border = NULL) { if (is.null(a)) return(b) if (is.null(b)) return(a) if (!inherits(a$fun, "grob")) { ## fun <- a$fun if (is.character(a$fun)) a$fun <- as.symbol(a$fun) a$fun <- eval(as.call(c(a$fun, a$args)), getNamespace("lattice")) } if (!inherits(b$fun, "grob")) { if (is.character(b$fun)) b$fun <- as.symbol(b$fun) b$fun <- eval(as.call(c(b$fun, b$args)), getNamespace("lattice")) } g <- frameGrob(name = "mergedLegend") g <- packGrob(g, a$fun, side = if (vertical) "top" else "left", border = border) g <- packGrob(g, b$fun, side = if (vertical) "bottom" else "right", border = border) g } latticeExtra/R/data.frame.R0000644000176200001440000002704213077627542015253 0ustar liggesusers ### Some obsolete experimental stuff. Remove at some point. ### Now, the question is, (1) whether to have the method for data ### frames (which is what's of immediate interest) here or in lme4. ### It doesn't really make sense to have it in lme4, since we won't be ### defining a new class. But most of the features would be borrowed ### from nlme (2) whether to have methods for any other class (like ### 'lm' maybe) ### data frame method: gplotArgs.data.frame(x, , ...) ## 4 levels of information: ## o attr(x, "ginfo") ## o ## o attr(x, "gplot.args") ## o ... ## the first 2 determine a reasonable list, overridden by the 3rd and ## then the 4th ## should we have a non-generic "gplotArgs<-" for setting the ## "gplot.args" attribute? ## First, we need some good default panel functions. These need to ## depend on ## (1) the type of display formula - ## o factor ~ numeric [ model: numeric ~ 1 | factor ] ## o numeric ~ numeric [ model: numeric ~ numeric | factor ] ## o ~ numeric [ model: factor ~ numeric | factor ] NEW panel.df.fn <- # factor ~ numeric function(x, y, groups = NULL, ...) { panel.dotplot(x=x, y=y, groups = groups, ...) } panel.df.nn <- # numeric ~ numeric function(x, y, lines = all(type == "p"), type = "p", ...) { panel.xyplot(x, y, type = type, ...) if (lines) { y.avg <- tapply(y, x, mean) # lines through average y y.avg <- y.avg[!is.na(y.avg)] if (length(y.avg) > 0) { xvals <- as.numeric(names(y.avg)) ord <- order(xvals) panel.xyplot(xvals[ord], y.avg[ord], type = "l", ...) } } } panel.df <- # combines above 2, should be called function(x, y = NULL, groups = NULL, grid = TRUE, ...) { yNull <- is.null(y) groupsNull <- is.null(groups) xFactor <- is.factor(x) yFactor <- is.factor(y) if (yNull) ## for factor response, may not be in use yet { if (groupsNull) panel.densityplot(x = x, ...) else panel.superpose(x = x, groups = groups, panel.groups = "panel.densityplot", ...) } else if (!xFactor && !yFactor) ## numeric ~ numeric { if (grid) panel.grid() if (groupsNull) panel.df.nn(x = x, y = y, ...) else panel.superpose(x = x, y = y, groups = groups, panel.groups = panel.df.nn, ...) } else if (yFactor && !xFactor) { panel.df.fn(x = x, y = y, groups = groups, ...) } else stop("can't handle both x and y being factors yet") invisible() } ## display formula ## generally, the display is determined by the arguments 'formula' and ## 'groups'. In the nlme scheme, the formula associated with the data ## is a model formula, not a display formula. The display is further ## determined by the 'outer' and 'inner' arguments. ## Let's try to outline a strategy for this. ## attr(x, "ginfo") can contain things used in nlme's groupedData. ## formula can be of the form 'y ~ x | id' (only one variable in 'id', ## although it can be an interaction). inner=~a becomes default ## grouping factor. outer=~b+c used for ordering levels of id by ## values of y. outer can be also an argument to ## gplotArgs.data.frame. If TRUE, it's equivalent to outer = ## ginfo$outer, or it could be =~e+f. In either case, it becomes the ## conditioning variables, id becomes groups (inner would then be ## ignored) ## In the formula itself, if x is a factor, the display formula ## becomes id ~ y, with groups = x (unless x = 1, then no groups) ## .typeInDF <- function(x, data) ## { ## if (x == "1") "one" ## else if (is.factor(data[[x]])) "factor" ## else if (is.numeric(data[[x]])) "numeric" ## else stop(paste("don't recognize", class(data[[x]]))) ## } ## should work with expressions like log(height) as well .typeInDF <- function(x, data) { if (all(is.na(x))) return(NA) x <- eval(parse(text = x), data, parent.frame()) if (length(x) == 1 && x == 1) "one" else if (is.factor(x)) "factor" else if (is.numeric(x)) "numeric" else stop(paste("don't recognize", class(x))) } ## S3 method: underlies groupedData() in lme4 ## FIXME: the following doesn't work in the docs. What's the recommended way? ## \method{"gplotArgs<-"}{data.frame}(x, value) "gplotArgs<-.data.frame" <- function(x, value) { if (!is.list(value)) stop("assigned value must be list") process.args <- function(formula, order.groups = TRUE, FUN = function(x, ...) max(x, na.rm = TRUE), outer = NULL, inner = NULL, labels = list(), units = list(), ...) { list(ginfo = list(formula = formula, order.groups = order.groups, FUN = FUN, outer = outer, inner = inner, labels = labels, units = units), dots = list(...)) } pargs <- do.call(process.args, value) attr(x, "ginfo") <- pargs$ginfo if (length(pargs$dots) > 0) attr(x, "gplot.args") <- pargs$dots x } ## S3 method ## basic idea: get defaults from "ginfo" attribute, then overwrite by ## "gplot.args" attribute, followed by ... gplotArgs.data.frame <- function(x, display.formula, outer = FALSE, inner = FALSE, groups = NULL, ..., subset = TRUE) { ## The final result should contain only standard trellis args, ## with a special component plotFun, and optionally a ## display.formula, which overrides formula. However, for data ## frames, there are some other issues. ## The "ginfo" attribute can only contain info traditionally in ## nlme groupedData objects. This, along with explicit arguments ## here, will be used to create a list of trellis args. These can ## be overridden by the "gplot.args" attribute, and then by ## ... here. ginfo <- attr(x, "ginfo") gplot.args <- attr(x, "gplot.args") ## equivalent to default method if ginfo is NULL if (is.null(ginfo) || !is.list(ginfo)) return(updateList(gplot.args, list(...))) ## First (longish) task: determine display formula and groups ## groups is by far the most irritating thing to handle. The only ## options I can think of: (1) evaluate groups here and pass it on ## and (2) change lattice to allow groups to be a formula. Use ## (1) for now groups <- eval(substitute(groups), x, parent.frame()) # typically NULL ## subset poses a similar problem subset <- eval(substitute(subset), x, parent.frame()) if (missing(display.formula)) display.formula <- gplot.args$display.formula ## major step: get the display formula, but only if it's NULL model.formula <- ginfo$formula if (!is.null(display.formula)) ## no point in jumping through hoops { ans <- list(display.formula = display.formula) } else if (!is.null(model.formula)) ## the interesting stuff { vars <- list(resp = .responseName(model.formula), cov = .covariateName(model.formula), grp = .groupsName(model.formula)) if (ginfo$order.groups) { ## reorder grp based on values of resp if (is.null(ginfo$FUN)) ginfo$FUN <- function(x, ...) max(x, na.rm = TRUE) respVar <- vars$resp grpVar <- vars$grp scores <- tapply(x[[respVar]], x[[grpVar]], ginfo$FUN) if (inherits(ginfo$outer, "formula")) { outerVar <- .covariateName(ginfo$outer) outer.unique <- tapply(x[[outerVar]], x[[grpVar]], unique) ord <- order(outer.unique, scores) } else ord <- order(scores) x[[grpVar]] <- factor(x[[grpVar]], levels = names(scores)[ord]) } ## display formula may be further modified by inner and outer. ## How does that affect rest of the calculations? if (is.logical(outer) && outer) outer <- ginfo$outer if (is.logical(inner) && inner) inner <- ginfo$inner ## both cannot happen. outer makes outer the conditioning ## variables, normal grp becomes groups. inner behaves as ## groups. outer takes precedence. if (inherits(outer, "formula")) { if (is.null(groups)) groups <- as.formula(paste("~", vars$grp)) vars$grp <- .covariateName(outer) } else if (inherits(inner, "formula")) { ## FIXME: this may not be the right thing to do if (is.null(groups)) groups <- inner } varTypes <- lapply(vars, .typeInDF, data = x) ## Next step depends on varTypes ## case 1: cov = "one" - grp ~ resp ## case 2: cov = "factor" - grp ~ resp, groups = cov ## case 1: cov = "numeric" - resp ~ cov | grp fc <- switch(varTypes$cov, one = paste(vars$grp, "~", vars$resp), factor = paste(vars$grp, "~", vars$resp), numeric = paste(vars$resp, "~", vars$cov, "|", vars$grp)) ans <- list(display.formula = as.formula(fc)) if (varTypes$cov == "factor" && is.null(groups)) groups <- eval(parse(text = vars$cov), x, parent.frame()) } else { stop("no formula!") } ## determine default plot function based on display.formula dvars <- list(resp = .responseName(ans$display.formula), cov = .covariateName(ans$display.formula), grp = .groupsName(ans$display.formula)) ## NA is none dvarTypes <- lapply(dvars, .typeInDF, data = x) if (dvarTypes$resp == "numeric" && dvarTypes$cov == "numeric") plotFun.constructed <- "xyplot" else if (dvarTypes$resp == "factor" && dvarTypes$cov == "numeric") plotFun.constructed <- "dotplot" else { ## str(dvarTypes) stop("unsupported combination") } ## other stuff in ginfo? ylab.constructed <- if ("labels" %in% names(ginfo) && dvars$resp %in% names(ginfo$labels)) ginfo$labels[[dvars$resp]] else dvars$resp xlab.constructed <- if ("labels" %in% names(ginfo) && dvars$cov %in% names(ginfo$labels)) ginfo$labels[[dvars$cov]] else dvars$cov if ("units" %in% names(ginfo) && dvars$resp %in% names(ginfo$units)) ylab.constructed <- paste(ylab.constructed, ginfo$units[[dvars$resp]]) if ("units" %in% names(ginfo) && dvars$cov %in% names(ginfo$units)) xlab.constructed <- paste(xlab.constructed, ginfo$units[[dvars$cov]]) ans <- updateList(ans, list(plotFun = plotFun.constructed, data = x, panel = panel.df, groups = groups, subset = subset, xlab = xlab.constructed, ylab = ylab.constructed, aspect = if (plotFun.constructed == "xyplot") "xy" else "fill", auto.key = switch(plotFun.constructed, xyplot = list(points = FALSE, lines = TRUE, space = "right"), dotplot = list(points = TRUE, space = "right")))) if (!is.null(gplot.args)) ans <- updateList(ans, gplot.args) ## leave this out? updateList(ans, list(...)) } latticeExtra/R/panel.xblocks.R0000644000176200001440000000555513077627542016021 0ustar liggesusers## ## Copyright (c) 2008 Felix Andrews ## panel.xblocks <- function(x, ...) UseMethod("panel.xblocks") panel.xblocks.default <- function (x, y, ..., col = NULL, border = NA, height = unit(1, "npc"), block.y = unit(0, "npc"), vjust = 0, name = "xblocks", gaps = FALSE, last.step = median(diff(tail(x)))) { if (is.function(y)) y <- y(x) x <- as.numeric(x) if (length(x) == 0) return() if (is.unsorted(x, na.rm = TRUE)) stop("'x' should be ordered (increasing)") if (is.na(last.step)) last.step <- 0 if (gaps) { .Deprecated(msg = "The 'gaps' argument is deprecated; use panel.xblocks(time(z), is.na(z))") y <- is.na(y) } ## Three cases: ## (1) If y is character, assume it gives the block colours ## -- unless 'col' is given, which over-rides it. ## (2) If y is logical, show blocks of TRUE values. ## (3) If y is numeric, show blocks of non-NA values. if (is.logical(y)) { y <- y } else if (is.numeric(y)) { y <- !is.na(y) } else { ## this will convert factor, Date, etc to character: y <- as.character(y) } ## Note: rle treats each NA as unique (does not combine runs of NAs) ## so we need to replace NAs with a temporary value. NAval <- if (is.character(y)) "" else FALSE y[is.na(y)] <- NAval ## find blocks (runs of constant values) yrle <- rle(y) ## substitute NA values back in blockCol <- yrle$values blockCol[blockCol == NAval] <- NA ## for logical series, col default comes from current theme if (is.logical(y) && is.null(col)) col <- trellis.par.get("plot.line")$col ## set block colours if 'col' given if (length(col) > 0) { if (is.character(col)) col[col == ""] <- NA ok <- !is.na(blockCol) blockCol[ok] <- rep(col, length = sum(ok)) ## rep to avoid warnings } ## work out block geometry idxBounds <- cumsum(c(1, yrle$lengths)) idxStart <- head(idxBounds, -1) idxEnd <- tail(idxBounds, -1) idxEnd[length(idxEnd)] <- length(y) blockStart <- x[idxStart] blockEnd <- x[idxEnd] blockEnd[length(blockEnd)] <- tail(blockEnd, 1) + last.step blockWidth <- blockEnd - blockStart ## draw it grid::grid.rect(x = blockStart, width = blockWidth, y = block.y, height = height, hjust = 0, vjust = vjust, default.units = "native", name = name, gp = gpar(fill = blockCol, col = border, ...)) } panel.xblocks.ts <- function(x, y = x, ...) { if (!is.function(y)) y <- as.vector(y) panel.xblocks(as.vector(time(x)), y, ...) } panel.xblocks.zoo <- function(x, y = x, ...) { if (!is.function(y)) y <- zoo::coredata(y) panel.xblocks(zoo::index(x), y, ...) } latticeExtra/R/ggplot2like.theme.R0000644000176200001440000000501213101271173016545 0ustar liggesusers ## based on some of the default themes and scales used in ggplot2 by Hadley Wickham. ggplot2like.opts <- function() { list(default.args = list(axis = axis.grid, xscale.components = xscale.components.subticks, yscale.components = yscale.components.subticks, between = list(x = 0.4, y = 0.4)) ) } ggplot2like <- function(..., n = 6, h = c(0,360) + 15, l = 65, c = 100, h.start = 0, direction = 1, low = "#3B4FB8", high = "#B71B1A", space = "rgb") { ## copied from ggplot2::scale_colour_hue rotate <- function(x) (x + h.start) %% 360 * direction if ((diff(h) %% 360) < 1) { h[2] <- h[2] - 360 / n } colseq <- hcl(h = rotate(seq(h[1], h[2], length = n)), c = c, l = l) ## copied from ggplot2::scale_colour_gradient ramp <- colorRampPalette(c(low, high), space = space, interpolate = "linear")(100) theme <- custom.theme(symbol = colseq, fill = colseq, region = ramp) ## based on ggplot2::theme_gray theme <- modifyList(theme, list(axis.line = list(col = "transparent"), axis.text = list(cex = 0.8, lineheight = 0.9, col = "grey50"), panel.background = list(col = "grey90"), reference.line = list(col = "white"), strip.background = list(col = c("grey80", "grey70", "grey60")), strip.shingle = list(col = c("grey60", "grey50", "grey40")), strip.border = list(col = "transparent"), add.text = list(cex = 0.8)) ) ## misc theme <- modifyList(theme, list(plot.symbol = list(col = "black", pch = 19, cex = 0.6), superpose.symbol = list(pch = 19, cex = 0.6), plot.line = list(col = "black"), plot.polygon = list(col = "grey20", border = "transparent"), superpose.polygon = list(border = "transparent"), box.dot = list(col = "grey20", pch = "|"), box.rectangle = list(fill = "white", col = "grey20"), box.umbrella = list(col = "grey20", lty = 1), dot.line = list(col = "white"), dot.symbol = list(col = "black", pch = 19)) ) ## custom over-rides modifyList(theme, simpleTheme(...)) } latticeExtra/R/panel.2dsmoother.R0000644000176200001440000000304013077627542016425 0ustar liggesusers panel.2dsmoother <- function(x, y, z, subscripts = TRUE, form = z ~ x * y, method = "loess", ..., args = list(), n = 100) { if (length(subscripts) == 0) return() ## allow 'form' to be passed as the first argument missing.x <- missing(x) if (!missing.x && inherits(x, "formula")) { form <- x missing.x <- TRUE } ## use 'x', 'y', 'z' if given ## otherwise try to find them in the formula environment if (missing.x) x <- environment(form)$x if (missing(y)) y <- environment(form)$y if (missing(z)) z <- environment(form)$z x <- x[subscripts] y <- y[subscripts] z <- z[subscripts] ok <- is.finite(x) & is.finite(y) & is.finite(z) if (sum(ok) < 1) return() x <- as.numeric(x)[ok] y <- as.numeric(y)[ok] z <- as.numeric(z)[ok] mod <- do.call(method, c(alist(form, data = list(x = x, y = y, z = z)), args)) ## use the limits of the data, or panel limits, whichever is smaller lims <- current.panel.limits() xrange <- c(max(min(lims$x), min(x)), min(max(lims$x), max(x))) yrange <- c(max(min(lims$y), min(y)), min(max(lims$y), max(y))) xseq <- seq(xrange[1], xrange[2], length = n) yseq <- seq(yrange[1], yrange[2], length = n) ## zseq <- seq(min(z), max(z), length = n) grid <- expand.grid(x = xseq, y = yseq) fit <- predict(mod, grid) panel.levelplot(x = grid$x, y = grid$y, z = fit, subscripts = TRUE, ...) } latticeExtra/R/simpleSmoothTs.R0000644000176200001440000000336713077627542016247 0ustar liggesusers simpleSmoothTs <- function(x, ...) { UseMethod("simpleSmoothTs") } simpleSmoothTs.default <- function(x, ..., width = NROW(x) %/% 10 + 1, n = NROW(x), c = 1, sides = 2, circular = FALSE, kern = kernel("daniell", rep(floor((width/sides)/sqrt(c)), c))) { if (sides == 2) { ii <- -kern$m:kern$m filter <- kern[ii] } else if (sides == 1) { ii <- 0:kern$m filter <- kern[ii] / sum(kern[ii]) ## normalise } else stop("unrecognised value of 'sides'") x <- as.ts(x) xf <- x xf[] <- filter(x, filter, sides = sides, circular = circular) if (n < NROW(x)) { ## reduce the number of points by aggregating chunks of 'reduce' time steps reduce <- round(NROW(x) / n) if (reduce > 1) { ndeltat <- deltat(xf) * reduce ## work-around for bug in aggregate.ts if ((ndeltat > 1) && (getRversion() < "2.11.1")) ndeltat <- ndeltat * (1 + getOption("ts.eps")/1000) xf <- aggregate(xf, ndeltat = ndeltat, FUN = mean) ## and adjust it so that each point is centered compared to the original series tsp(xf)[1:2] <- tsp(xf)[1:2] + (deltat(xf) %/% 2) } } xf } simpleSmoothTs.zoo <- function(x, ..., n = NROW(x)) { xts <- as.ts(x) xtsf <- simpleSmoothTs(xts, ..., n = n) ii <- TRUE if (n < NROW(x)) { ## find indices of aggregated time series in the original data ii <- findInterval(time(xtsf), time(xts)) ## extract elements of time index corresponding to aggregated series ans <- zoo::zoo(as.matrix(xtsf), time(x)[ii]) } else { ans <- x zoo::coredata(ans) <- zoo::coredata(xtsf) } ans } latticeExtra/R/scale.components.R0000644000176200001440000001424113077627542016521 0ustar liggesusers ## adapted from the Lattice book by Deepayan Sarkar xscale.components.logpower <- function(lim, ...) { ans <- xscale.components.default(lim, ...) ans$bottom$labels$labels <- parse(text = ans$bottom$labels$labels) ans } yscale.components.logpower <- function(lim, ...) { ans <- yscale.components.default(lim, ...) ans$left$labels$labels <- parse(text = ans$left$labels$labels) ans } xscale.components.fractions <- function(lim, logsc = FALSE, ...) { ans <- xscale.components.default(lim, logsc = logsc, ...) ## get 'at' in data coordinates if (identical(logsc, TRUE)) logsc <- 10 if (identical(logsc, "e")) logsc <- exp(1) at <- ans$bottom$labels$at if (!identical(logsc, FALSE)) at <- logsc ^ at ans$bottom$labels$labels <- MASS::fractions(at) ans } yscale.components.fractions <- function(lim, logsc = FALSE, ...) { ans <- yscale.components.default(lim, logsc = logsc, ...) ## get 'at' in data coordinates if (identical(logsc, TRUE)) logsc <- 10 if (identical(logsc, "e")) logsc <- exp(1) at <- ans$left$labels$at if (!identical(logsc, FALSE)) at <- logsc ^ at ans$left$labels$labels <- MASS::fractions(at) ans } ## compute nice log-ticks. This is a version from the Lattice book ## that is not very sophisticated. logTicksOld <- function (lim, loc = c(1, 5)) { ii <- floor(log10(range(lim))) + c(-1, 2) main <- 10^(ii[1]:ii[2]) r <- as.numeric(outer(loc, main, "*")) r[lim[1] <= r & r <= lim[2]] } ## A more sophisticated version that uses the same algorithm used in ## traditional graphics, via axisTicks() - new in R 2.14.0 logTicks <- function (lim, loc = NULL) { if (is.null(loc)) axisTicks(log10(lim), log=TRUE) else logTicksOld(lim, loc) } xscale.components.log <- function(lim, logsc = FALSE, at = NULL, loc = NULL, ...) { ans <- xscale.components.default(lim = lim, logsc = logsc, at = at, ...) if (is.null(at)) return(ans) if (identical(logsc, FALSE)) return(ans) logbase <- logsc if (identical(logbase, TRUE)) logbase <- 10 if (identical(logbase, "e")) logbase <- exp(1) tick.at <- logTicks(logbase^lim, loc = loc) ans$bottom$ticks$at <- log(tick.at, logbase) ans$bottom$labels$at <- log(tick.at, logbase) ans$bottom$labels$labels <- as.character(tick.at) ans } yscale.components.log <- function(lim, logsc = FALSE, at = NULL, loc = NULL, ...) { ans <- yscale.components.default(lim = lim, logsc = logsc, at = at, ...) if (is.null(at)) return(ans) if (identical(logsc, FALSE)) return(ans) logbase <- logsc if (identical(logbase, TRUE)) logbase <- 10 if (identical(logbase, "e")) logbase <- exp(1) tick.at <- logTicks(logbase^lim, loc = loc) ans$left$ticks$at <- log(tick.at, logbase) ans$left$labels$at <- log(tick.at, logbase) ans$left$labels$labels <- as.character(tick.at) ans } xscale.components.log10.3 <- function(lim, logsc = FALSE, at = NULL, ...) { xscale.components.log(lim, logsc = logsc, at = at, loc = c(1, 3)) } yscale.components.log10.3 <- function(lim, logsc = FALSE, at = NULL, ...) { yscale.components.log(lim, logsc = logsc, at = at, loc = c(1, 3)) } # major + minor ticks for powers of 10 xscale.components.log10ticks <- function(lim, logsc = FALSE, at = NULL, ...) { ans <- xscale.components.default(lim = lim, logsc = logsc, at = at, ...) if (is.null(at)) return(ans) if (identical(logsc, FALSE)) return(ans) logbase <- logsc if (identical(logbase, TRUE)) logbase <- 10 if (identical(logbase, "e")) logbase <- exp(1) tick.at <- logTicks(logbase^lim, loc = 1:9) tick.at.major <- logTicks(logbase^lim, loc = 1) major <- tick.at %in% tick.at.major ans$bottom$ticks$at <- log(tick.at, logbase) ans$bottom$ticks$tck <- ifelse(major, 1, 0.5) ans$bottom$labels$at <- log(tick.at, logbase) ans$bottom$labels$labels <- as.character(tick.at) ans$bottom$labels$labels[!major] <- "" ans$bottom$labels$check.overlap <- FALSE ans } yscale.components.log10ticks <- function(lim, logsc = FALSE, at = NULL, ...) { ans <- yscale.components.default(lim = lim, logsc = logsc, at = at, ...) if (is.null(at)) return(ans) if (identical(logsc, FALSE)) return(ans) logbase <- logsc if (identical(logbase, TRUE)) logbase <- 10 if (identical(logbase, "e")) logbase <- exp(1) tick.at <- logTicks(logbase^lim, loc = 1:9) tick.at.major <- logTicks(logbase^lim, loc = 1) major <- tick.at %in% tick.at.major ans$left$ticks$at <- log(tick.at, logbase) ans$left$ticks$tck <- ifelse(major, 1, 0.5) ans$left$labels$at <- log(tick.at, logbase) ans$left$labels$labels <- as.character(tick.at) ans$left$labels$labels[!major] <- "" ans$left$labels$check.overlap <- FALSE ans } ## major + minor ticks (e.g. for date/time axes): xscale.components.subticks <- function(lim, ..., n = 5, n2 = n * 5, min.n2 = n + 5) { ans <- xscale.components.default(lim = lim, ..., n = n) ans2 <- xscale.components.default(lim = lim, ..., n = n2, min.n = min.n2) ticks <- ans$bottom$ticks$at ticks2 <- ans2$bottom$ticks$at ticks2 <- ticks2[!(ticks2 %in% ticks)] ans$bottom$ticks$at <- c(ticks, ticks2) ans$bottom$ticks$tck <- c(rep(1, length(ticks)), rep(0.5, length(ticks2))) ans$bottom$labels$at <- ans$bottom$ticks$at ans$bottom$labels$labels <- c(ans$bottom$labels$labels, rep(" ", length(ticks2))) ans$bottom$labels$check.overlap <- FALSE ans } yscale.components.subticks <- function(lim, ..., n = 5, n2 = n * 5, min.n2 = n + 5) { ans <- yscale.components.default(lim = lim, ..., n = n) ans2 <- yscale.components.default(lim = lim, ..., n = n2, min.n = min.n2) ticks <- ans$left$ticks$at ticks2 <- ans2$left$ticks$at ticks2 <- ticks2[!(ticks2 %in% ticks)] ans$left$ticks$at <- c(ticks, ticks2) ans$left$ticks$tck <- c(rep(1, length(ticks)), rep(0.5, length(ticks2))) ans$left$labels$at <- ans$left$ticks$at ans$left$labels$labels <- c(ans$left$labels$labels, rep(" ", length(ticks2))) ans$left$labels$check.overlap <- FALSE ans } latticeExtra/R/theeconomist.R0000644000176200001440000001555113574420252015743 0ustar liggesusers## Implementation Copyright (c) 2009 Felix Andrews ## based on plot style used in The Economist magazine. theEconomist.theme <- function(win.fontfamily = NULL, #"Gill Sans MT" with.bg = FALSE, box = "black", ...) { theme <- list( background = list(col = if (with.bg) "#D5E2E9" else "transparent"), plot.line = list(col = "#00526D", lwd = 2.5), superpose.line = list(col = c("#00526D", "#00A3DB", "#7A2713", "#939598", "#6CCFF6"), lwd = 2.5), plot.symbol = list(col = "#00526D", pch = 16), superpose.symbol = list(col = c("#00526D", "#00A3DB", "#7A2713", "#939598", "#6CCFF6"), pch = 16), plot.polygon = list(col = "#00526D"), superpose.polygon = list(col = c("#5F92A8", "#00526D", "#6CCFF6", "#00A3DB", "#A7A9AC")), regions = list(col = colorRampPalette(RColorBrewer::brewer.pal(9, "Blues"))(100)), reference.line = list(col = if (with.bg) "white" else "#aaaaaa", lwd = 1.75), dot.line = list(col = if (with.bg) "white" else "#aaaaaa", lwd = 1.75), add.line = list(col = "#ED1C24", lwd = 1.5), axis.line = list(col = box), box.3d = list(col = box), strip.border = list(col = box), strip.background = list(col = if (with.bg) "white" else "#CBDDE6"), strip.shingle = list(col = if (with.bg) "#CBDDE6" else "#00A3DB", alpha = 0.5), par.main.text = list(font = 1, just = "left", x = grid::unit(5, "mm")), par.sub.text = list(font = 1, just = "left", x = grid::unit(5, "mm")), axis.text = list(cex = 0.8), box.dot = list(col = "#00526D", pch = "|", lwd = 1.75), box.rectangle = list(fill = "#00526D", alpha = 0.5, col = "#00526D", lwd = 1.75), box.umbrella = list(col = "#00526D", lty = 1, lwd = 1.75) ) if (.Platform$OS.type == "windows" && !is.null(win.fontfamily)) { windowsFonts(TheEconomistLike = win.fontfamily) theme$grid.pars$fontfamily <- "TheEconomistLike" } else { ## TODO: how do fonts work on linux etc? } modifyList(modifyList(standard.theme("pdf"), theme), simpleTheme(...)) } theEconomist.opts <- function() { list(default.args = list(axis = theEconomist.axis, xscale.components = xscale.components.subticks, between = list(x = 0.8, y = 0.8)), axis.padding = list(numeric = 0, factor = 0.6), skip.boundary.labels = 0, layout.widths = list(axis.left = list(x = 0, units = "char"), axis.right = list(x = 6, units = "char")) ) } theEconomist.axis <- function(side = c("top", "bottom", "left", "right"), scales, components, ..., labels = c("default", "yes", "no"), ticks = c("default", "yes", "no"), line.col) { if (scales$draw == FALSE) return() side <- match.arg(side) labels <- match.arg(labels) ticks <- match.arg(ticks) if (side %in% c("bottom", "top")) { if (side == "top") ticks <- "no" if (scales$relation == "same") { scales$alternating <- 1 ## bottom side only } } if (side %in% c("left", "right")) { ticks <- "no" components[["left"]]$ticks$tck <- 0 if (scales$relation == "same") { scales$alternating <- 2 ## right side only } else { if (side == "right") { labels <- if (scales$draw) "yes" else "no" if (!is.list(components$right)) { components$right <- components$left } } if (side == "left") { ## check for two different axes on left and right if (!is.list(components$right)) { labels <- "no" } } } } ## use axis.text for ticks because axis.line$col might be transparent axis.text <- trellis.par.get("axis.text") axis.default(side, scales = scales, components = components, ..., labels = labels, ticks = ticks, line.col = axis.text$col) ## now draw grid lines corresponding to horizontal axis ticks. ## can only do this with the bottom and right sides; ## otherwise the strip viewports are current, not panel. if (side %in% c("top", "left")) return() if (side == "right") { comp.list <- components[["right"]] if (!is.list(comp.list)) comp.list <- components[["left"]] panel.refline(h = comp.list$ticks$at) ## draw axis line along bottom (assuming transparent axis.line) lims <- current.panel.limits() panel.abline(h = lims$y[1], col = axis.text$col) } } asTheEconomist <- function(x, ..., type = "l", ylab = expression(NULL), xlab = expression(NULL), par.settings = theEconomist.theme(with.bg = with.bg, box = "transparent"), with.bg = FALSE, par.strip.text = list(font = 2)) { ans <- x ## make nice left-aligned title title <- ans$main if (is.null(title)) title <- ans$ylab if (is.null(title)) title <- ans$ylab.default ans <- update(ans, main = title, type = type, ylab = ylab, xlab = xlab, par.settings = par.settings, par.strip.text = par.strip.text, between = list(x = 0.8, y = 0.8), scales = list(y = list(axs = "i", alternating = 2)), skip.boundary.labels = 0, lattice.options = list( layout.widths = list(axis.left = list(x = 0, units = "char"), axis.right = list(x = 6, units = "char")) ) ) ## these do not get through update() ans$axis <- theEconomist.axis ans$xscale.components <- xscale.components.subticks ans$call <- match.call() ans } genGillSans <- function() { ## generate AFM font metrics of GillSans - for ps/pdf ## TODO: is there a similar looking free/open font? oldwd <- getwd() on.exit(setwd(oldwd)) setwd(system.file("afm", package = "grDevices")) fnames <- c("GIL_____", "GILB____", "GILI____", "GILBI___") for (fn in fnames) { system(sprintf("ttf2afm -o %s.afm %s.TTF", fn, file.path(Sys.getenv("windir"), "Fonts", fn))) system(sprintf("gzip %s.afm", fn)) } TheEconomistLike <- Type1Font("TheEconomistLike", paste(fnames, ".afm", sep = "")) postscriptFonts(TheEconomistLike = TheEconomistLike) pdfFonts(TheEconomistLike = TheEconomistLike) ps.options(fonts = c("sans", "serif", "mono", "Times", "Helvetica", "Courier", "URWHelvetica", "TheEconomistLike")) pdf.options(fonts = ps.options()$fonts) ## TODO: problem: after this, plots generated by bitmap() use wrong font } latticeExtra/R/rootogram.R0000644000176200001440000000571113077627542015261 0ustar liggesusers prepanel.rootogram <- function(x, y = table(x), dfun = NULL, transformation = sqrt, hang = TRUE, probability = TRUE, ...) { stopifnot(is.function(dfun)) if (probability) y <- y / sum(y) yy <- transformation(y) xx <- sort(unique(x)) dotArgs <- list(...) dfunArgs <- names(formals(dfun)) if (!("..." %in% dfunArgs)) dotArgs <- dotArgs[dfunArgs[-1]] dd <- transformation(do.call(dfun, c(list(xx), dotArgs))) list(xlim = range(xx), ylim = if (hang) range(dd, dd-yy, 0) else range(dd, yy, 0), dx = diff(xx), dy = diff(dd)) } panel.rootogram <- function(x, y = table(x), dfun = NULL, col = plot.line$col, lty = plot.line$lty, lwd = plot.line$lwd, alpha = plot.line$alpha, transformation = sqrt, hang = TRUE, probability = TRUE, type = "l", pch = 16, ...) { plot.line <- trellis.par.get("plot.line") ref.line <- trellis.par.get("reference.line") stopifnot(is.function(dfun)) if (probability) y <- y / sum(y) yy <- transformation(y) xx <- sort(unique(x)) dotArgs <- list(...) dfunArgs <- names(formals(dfun)) if (!("..." %in% dfunArgs)) dotArgs <- dotArgs[dfunArgs[-1]] dd <- transformation(do.call(dfun, c(list(xx), dotArgs))) panel.abline(h = 0, col = ref.line$col, lty = ref.line$lty, lwd = ref.line$lwd, alpha = ref.line$alpha) panel.segments(xx, if (hang) dd else 0, xx, if (hang) (dd - yy) else yy, col = col, lty = lty, lwd = lwd, alpha = alpha, ...) if ("l" %in% type) panel.lines(xx, dd) if ("p" %in% type) panel.points(xx, dd, pch = pch) } rootogram <- function(x, ...) UseMethod("rootogram") rootogram.formula <- function(x, data = parent.frame(), ylab = expression(sqrt(P(X == x))), prepanel = prepanel.rootogram, panel = panel.rootogram, ..., probability = TRUE) { if (!probability && missing(ylab)) ylab <- NULL if (length(x) == 2) ## formula like ~ x foo <- densityplot(x, data, prepanel = prepanel, panel = panel, ylab = ylab, ..., probability = probability) else ## formula like y ~ x foo <- xyplot(x, data, prepanel = prepanel, panel = panel, ylab = ylab, ..., probability = probability) foo$call <- sys.call(sys.parent()); foo$call[[1]] <- quote(rootogram) foo } latticeExtra/R/ecdfplot.R0000644000176200001440000000512513077627542015047 0ustar liggesusers prepanel.ecdfplot <- function(x, f.value = NULL, ...) { ans <- prepanel.default.qqmath(x, f.value = f.value, distribution = qunif) with(ans, list(xlim = ylim, ylim = c(0, 1), dx = dy, dy = dx)) } panel.ecdfplot <- function(x, f.value = NULL, type = "s", groups = NULL, qtype = 7, ref = TRUE, ...) { if (ref) { reference.line <- trellis.par.get("reference.line") do.call(panel.abline, c(list(h = c(0, 1)), reference.line)) } x <- as.numeric(x) distribution <- qunif nobs <- sum(!is.na(x)) if (!is.null(groups)) { panel.superpose(x, y = NULL, f.value = f.value, type = type, distribution = distribution, qtype = qtype, groups = groups, panel.groups = panel.ecdfplot, ...) } else if (nobs) { if (is.null(f.value)) { panel.xyplot(x = sort(x), y = seq_len(nobs) / nobs, type = type, ...) } else { p <- if (is.numeric(f.value)) f.value else f.value(nobs) panel.xyplot(x = quantile(x, p, names = FALSE, type = qtype, na.rm = TRUE), y = distribution(p), type = type, ...) } } } ecdfplot <- function (x, data, ...) UseMethod("ecdfplot") ecdfplot.formula <- function (x, data = NULL, prepanel = "prepanel.ecdfplot", panel = "panel.ecdfplot", ylab = gettext("Empirical CDF"), ...) { ccall <- match.call() ocall <- sys.call(sys.parent()); ocall[[1]] <- quote(ecdfplot) ## for nice $call ccall$data <- data ccall$prepanel <- prepanel ccall$panel <- panel ccall$ylab <- ylab ccall[[1]] <- quote(lattice::densityplot) ans <- eval.parent(ccall) ans$call <- ocall ans } ecdfplot.numeric <- function (x, data = NULL, xlab = deparse(substitute(x)), ...) { ccall <- match.call() ocall <- sys.call(sys.parent()); ocall[[1]] <- quote(ecdfplot) ## for nice $call if (!is.null(ccall$data)) warning("explicit 'data' specification ignored") ccall$data <- list(x = x) ccall$xlab <- xlab ccall$x <- ~x ccall[[1]] <- quote(latticeExtra::ecdfplot) ans <- eval.parent(ccall) ans$call <- ocall ans } latticeExtra/R/panel.smoother.R0000644000176200001440000000367413077627542016214 0ustar liggesusers ## based on the stat_smooth() function in ggplot2 package. panel.smoother <- function(x, y, form = y ~ x, method = "loess", ..., se = TRUE, level = 0.95, n = 100, col = plot.line$col, col.se = col, lty = plot.line$lty, lwd = plot.line$lwd, alpha = plot.line$alpha, alpha.se = 0.25, border = NA, ## ignored (do not pass to method()): subscripts, group.number, group.value, type, col.line, col.symbol, fill, pch, cex, font, fontface, fontfamily) { plot.line <- trellis.par.get("plot.line") if (!missing(col.line)) col <- col.line ## allow 'form' to be passed as the first argument missing.x <- missing(x) if (!missing.x && inherits(x, "formula")) { form <- x missing.x <- TRUE } ## use 'x' and 'y' if given ## otherwise try to find them in the formula environment if (missing.x) x <- environment(form)$x if (missing(y)) y <- environment(form)$y ok <- is.finite(x) & is.finite(y) if (sum(ok) < 1) return() x <- as.numeric(x)[ok] y <- as.numeric(y)[ok] mod <- do.call(method, c(alist(form, data = list(x = x, y = y)), list(...))) ## use the limits of the data, or panel limits, whichever is smaller lims <- current.panel.limits() xrange <- c(max(min(lims$x), min(x)), min(max(lims$x), max(x))) xseq <- seq(xrange[1], xrange[2], length = n) pred <- predict(mod, data.frame(x = xseq), se = se) if (se) { std <- qnorm(level/2 + 0.5) panel.polygon(x = c(xseq, rev(xseq)), y = c(pred$fit - std * pred$se, rev(pred$fit + std * pred$se)), col = col.se, alpha = alpha.se, border = border) pred <- pred$fit } panel.lines(xseq, pred, col = col, alpha = alpha, lty = lty, lwd = lwd) } latticeExtra/R/tileplot.R0000644000176200001440000001042413077627542015101 0ustar liggesusers## ## Copyright (c) 2008 Felix Andrews ## GPL version 2 or newer tileplot <- function(x, data = NULL, aspect = "iso", prepanel = "prepanel.default.xyplot", panel = "panel.voronoi", ...) { foo <- levelplot(x, data = data, aspect = aspect, panel = panel, prepanel = prepanel, ...) foo$call <- sys.call(sys.parent()) foo } ## panel function to draw Voronoi mosaic panel.voronoi <- function(x, y, z, subscripts = TRUE, at = pretty(z), points = TRUE, border = "transparent", na.rm = FALSE, win.expand = 0.07, use.tripack = FALSE, ..., col.regions = regions$col, alpha.regions = regions$alpha) { ## We need either tripack (better? but weird license) or ## deldir. Go with deldir unless explicitly requested. if (use.tripack) { if (!requireNamespace("tripack", quietly = TRUE)) stop("The 'use.tripack=TRUE' option requires the 'tripack' package to be installed.") } else { if (!requireNamespace("deldir", quietly = TRUE)) stop("This function requires the 'deldir' package to be installed.") } ## find subset of points to use x0 <- x[subscripts] y0 <- y[subscripts] z0 <- z[subscripts] ## throw away NAs, but keep originals for panel.xyplot() ok <- complete.cases(x0, y0) if (na.rm) ok <- ok & !is.na(z0) x <- x0[ok] y <- y0[ok] z <- z0[ok] if (!any(is.finite(z))) return() ## strip duplicated locations, with warning dup <- duplicated(cbind(x, y)) if (any(dup)) { warning(paste("Ignoring", sum(dup), "cases of duplicated locations")) x <- x[!dup] y <- y[!dup] z <- z[!dup] } ## compute bounds data.rg <- list(x = extendrange(x, f = win.expand), y = extendrange(y, f = win.expand)) bounds <- c(data.rg$x, data.rg$y) #panel.rg <- lapply(current.panel.limits(), sort) #bounds <- c(max(panel.rg$x[1], data.rg$x[1]), # min(panel.rg$x[2], data.rg$x[2]), # max(panel.rg$y[1], data.rg$y[1]), # min(panel.rg$y[2], data.rg$y[2])) ## check if any points in visible plot region #if (is.unsorted(bounds[1:2])) # bounds[1:2] <- panel.rg$x #if (is.unsorted(bounds[3:4])) # bounds[3:4] <- panel.rg$y if (use.tripack) { xy <- data.frame(x = x, y = y) ## add dummy points to ensure that voronoi polygons are finite dummies <- data.frame(x = c(-1,-1,1,1), y = c(-1,1,-1,1)) * 10 * max(abs(xy)) xy <- rbind(xy, dummies) tiles <- tripack::voronoi.polygons(tripack::voronoi.mosaic(xy, duplicate = "error")) } else { ## NB: the 'rw' argument as subset of data is bad because ## need to take corresponding subset of z ! ## (but not easy to work out what that is) #set <- ((bounds[1] < x) & (x < bounds[2]) & # (bounds[3] < y) & (y < bounds[4])) #x <- x[set] #y <- y[set] #z <- z[set] tiles <- deldir::tile.list(deldir::deldir(x, y, rw = bounds)) tiles <- lapply(tiles, function(p) as.data.frame(p[c("x", "y")])) } ## draw it as one composite polygon polydata <- do.call("rbind", tiles) regions <- trellis.par.get("regions") zcol <- level.colors(z, at, col.regions, colors = TRUE) grid.polygon(polydata[,1], polydata[,2], id.lengths = sapply(tiles, nrow), default.units = "native", gp = gpar(fill = zcol, col = border, alpha = alpha.regions)) if (points) { panel.xyplot(x0, y0, ...) } } panel.levelplot.points <- function(x, y, z, subscripts = TRUE, at = pretty(z), shrink, labels, label.style, contour, region, ## (all ignored) pch = 21, col.symbol = "#00000044", ..., col.regions = regions$col, fill = NULL) ## (ignored) { regions <- trellis.par.get("regions") zcol <- level.colors(z, at, col.regions, colors = TRUE) x <- x[subscripts] y <- y[subscripts] zcol <- zcol[subscripts] ## panel.xyplot does the work (can handle 'type' argument, etc) panel.xyplot(x, y, fill = zcol, pch = pch, col.symbol = col.symbol, ...) } latticeExtra/R/panel.quantile.R0000644000176200001440000000613613574370441016165 0ustar liggesusers ## based on the stat_quantile() function in ggplot2 package. panel.quantile <- function(x, y, form = y ~ x, method = "rq", ..., tau = 0.5, ci = FALSE, ci.type = "default", level = 0.95, n = 100, col = plot.line$col, col.se = col, lty = plot.line$lty, lwd = plot.line$lwd, alpha = plot.line$alpha, alpha.se = 0.25, border = NA, superpose = FALSE, ## ignored (do not pass to method()): subscripts, group.number, group.value, type, col.line, col.symbol, fill, pch, cex, font, fontface, fontfamily) { if (method %in% c("rq", "rqss") && !requireNamespace("quantreg", quietly=TRUE)) stop("The 'quantreg' package is required for methods \"rq\" and \"rqss\".") methodFun <- switch(method, rq = quantreg::rq, rqss = quantreg::rqss, method) plot.line <- trellis.par.get("plot.line") if (!missing(col.line)) col <- col.line ## allow 'form' to be passed as the first argument missing.x <- missing(x) if (!missing.x && inherits(x, "formula")) { form <- x missing.x <- TRUE } ## use 'x' and 'y' if given ## otherwise try to find them in the formula environment if (missing.x) x <- environment(form)$x if (missing(y)) y <- environment(form)$y ok <- is.finite(x) & is.finite(y) if (sum(ok) < 1) return() x <- as.numeric(x)[ok] y <- as.numeric(y)[ok] mod <- do.call(method, c(alist(form, tau = tau, data = list(x = x, y = y)), list(...))) xseq <- seq(min(x), max(x), length = n) pred <- predict(mod, data.frame(x = xseq), interval = if (ci) "confidence" else "none", type = ci.type, level = level) pred <- as.matrix(pred) if (ci && ncol(pred) > 1) { panel.polygon(x = c(xseq, rev(xseq)), y = c(pred[,"lower"], rev(pred[,"higher"])), col = col.se, alpha = alpha.se, border = border) pred <- pred[, "fit", drop = FALSE] } if (superpose) { for (i in 1:NCOL(pred)) { line <- Rows(trellis.par.get("superpose.line"), i) panel.lines(xseq, pred[,i], col = line$col, alpha = line$alpha, lty = line$lty, lwd = line$lwd) } } else { apply(pred, 2, panel.lines, x = xseq, col = col, alpha = alpha, lty = lty, lwd = lwd) } } ## moving quantiles #L.rollquantile <- function(probs = c(0.05, 0.5, 0.95), width, # alpha = 0.25, ...) #{ # stopifnot(require("zoo")) # z <- zoo(y, x) # pred <- rollapply(z, width = width, quantile, probs = probs, # na.rm = TRUE) # apply(pred, 2, panel.lines, x = time(pred), col = col) #} ## quantile regression with smoothness by mgcv # L.quantile <- function(probs = c(0.05, 0.5, 0.95), n = 100, # alpha = 0.25, ss = FALSE, lambda = NULL, ...) # { # mod <- rqss(y ~ rqss(x), tau = probs, lambda = lambda) latticeExtra/R/dendrogramGrob.R0000644000176200001440000001630413077627542016204 0ustar liggesusers ## FIXME: want a convenience function that behaves like heatmap() ## Goal: create a grob that could usefully represent a dendrogram ## can a dendrogram node have more than 2 children? ## long term FIXME: use better graph layout algorithms? ## returns a modified dendrogram object, with an extra attribute ## 'position=c(x, y)' for each node ## FIXME: should have and honor 'center=FALSE' argument addPositions <- function(x, order) { if (!is.null(attr(x, "position"))) return(x) else if (is.leaf(x)) { attr(x, "position") <- list(x = which(x == order)[1], y = attr(x, "height")) return(x) } else { for (i in seq_along(x)) { x[[i]] <- addPositions(x[[i]], order) } attr(x, "position") <- list(x = mean(sapply(x, function(x) attr(x, "position")$x )), y = attr(x, "height")) return(x) } } ## returns a vector data.frame(x0, y0, x1, y1, ...), to be used in a ## call to segmentsGrob after being combined. The possibility of ## attaching parameters exists, but is not (or barely) tested edgeLocation <- function(pos.node, pos.child, type, ...) { switch(type, rectangle = { data.frame(x0 = c(pos.node$x, pos.child$x), y0 = c(pos.node$y, pos.node$y), x1 = c(pos.child$x, pos.child$x), y1 = c(pos.node$y, pos.child$y), ..., stringsAsFactors = FALSE) ## 'col' can be strings }, triangle = { data.frame(x0 = pos.node$x, y0 = pos.node$y, x1 = pos.child$x, y1 = pos.child$y, ..., stringsAsFactors = FALSE) ## 'col' can be strings }) } dendrogramGrob <- function(x, ord = order.dendrogram(x), side = c("right", "top"), add = list(), size = 5, size.add = 1, type = c("rectangle", "triangle"), ...) { ## Note: We use dendrapply() a couple of times. The return value ## is unused (we are only interested in side-effects), but certain ## types of return values of FUN can make dendrapply() go into an ## infinite loop. To be safe, we return original node. if (size <= 0) return(textGrob(label = NULL)) type <- match.arg(type) native.height <- attr(x, "height") native.xscale <- c(1, length(ord)) + c(-1, 1) * lattice.getOption("axis.padding")$factor xpos <- addPositions(x, ord) ## version of x with positions ## how many non-leaf nodes are there? For a binary tree, n-1, ## where n is the number of leaves (join any 2 ==> nodes++, ## leaves--), but we're more tolerant nnodes <- 0 dendrapply(xpos, function(x) { if (!is.leaf(x)) nnodes <<- nnodes + 1 x }) xseg <- vector(mode = "list", length = nnodes) ## FIXME: add something similar to have nodes drawn as points i <- 0 getSegments <- function(x, ...) { if (!is.leaf(x)) { i <<- i + 1 pos.node <- attr(x, "position") xseg[[i]] <<- do.call(rbind, lapply(x, function(child) { pos.child <- attr(child, "position") edgeLocation(pos.node, pos.child, type = type, ...) })) } x } dendrapply(xpos, getSegments) all.segs <- do.call(rbind, xseg) ## number of additional indicators nadd <- length(add) ## nleaf <- length(ord) native.unit <- 1 / diff(native.xscale) # side of one square switch(side, right = { key.layout <- grid.layout(nrow = 1, ncol = 1 + nadd, heights = unit(1, "null"), widths = unit(c(rep(size.add, length = nadd), size), c(rep("lines", nadd), "lines")), respect = FALSE) key.gf <- frameGrob(layout = key.layout) ## key.gf <- placeGrob(key.gf, rectGrob(gp = gpar(fill = "pink"))) for (i in seq_len(nadd)) { addi <- add[[i]] typei <- names(add)[i] switch(typei, rect = { key.gf <- placeGrob(key.gf, rectGrob(y = (order(ord) - native.xscale[1]) * native.unit, height = native.unit, gp = do.call(gpar, addi)), row = 1, col = i) }) } key.gf <- placeGrob(key.gf, with(all.segs, segmentsGrob((y0 / native.height), (x0 - native.xscale[1]) * native.unit, (y1 / native.height), (x1 - native.xscale[1]) * native.unit)), row = 1, col = 1 + nadd) key.gf }, top = { key.layout <- grid.layout(nrow = 1 + nadd, ncol = 1, widths = unit(1, "null"), heights = unit(c(size, rep(size.add, length = nadd)), c("lines", rep("lines", nadd))), respect = FALSE) key.gf <- frameGrob(layout = key.layout) ## key.gf <- placeGrob(key.gf, rectGrob(gp = gpar(fill = "pink"))) for (i in seq_len(nadd)) { addi <- add[[i]] typei <- names(add)[i] switch(typei, rect = { key.gf <- placeGrob(key.gf, rectGrob(x = (order(ord) - native.xscale[1]) * native.unit, width = native.unit, gp = do.call(gpar, addi)), row = 1 + i, col = 1) }) } key.gf <- placeGrob(key.gf, with(all.segs, segmentsGrob((x0 - native.xscale[1]) * native.unit, (y0 / native.height), (x1 - native.xscale[1]) * native.unit, (y1 / native.height))), row = 1, col = 1) key.gf }) } latticeExtra/R/panel.key.R0000644000176200001440000000071613077627542015136 0ustar liggesusers ## extracted and simplified from lattice:::plot.trellis panel.key <- function(text, ..., corner = c(0, 1), x = corner[1], y = corner[2]) { key <- simpleKey(text, ...) key.gf <- draw.key(key, draw = FALSE) vp <- viewport(x = unit(x, "npc") + unit(0.5 - corner[1], "grobwidth", list(key.gf)), y = unit(y, "npc") + unit(0.5 - corner[2], "grobheight", list(key.gf))) pushViewport(vp) grid.draw(key.gf) upViewport() } latticeExtra/MD50000644000176200001440000001137613576700015013227 0ustar liggesusersf9e1dbca24d6dcde4f3220f16b3d2697 *DESCRIPTION 7248d4de529efd569a17d4c3aa1163ab *NAMESPACE 03020450deda223ac938dfdbdeb5ba50 *R/axis.grid.R 6276b8d0cdbd9c7e7356e0c295e74be5 *R/c.trellis.R f8d834c954229744c9bef1e720cb0c74 *R/combineLimits.R eca25b491b6103f5ffbb288c57b17d94 *R/custom.theme.R 10a9605c4032e076c867bf5b2d212788 *R/data.frame.R af7e3116d54caa314936dabf31e491bf *R/dendrogramGrob.R 2589015634f275d7e5636742467e7dd2 *R/doubleYScale.R 0af903de5a6eca3460cfabadcc69d231 *R/ecdfplot.R 5e71766600b004e1ae7a399d937c67f1 *R/ggplot2like.theme.R ce70da377945dbe96c4580d614549e7f *R/horizonplot.R 7ed6b0dda4685f514bbcfe718610b0d0 *R/layer.R cf1382511c804f65d9aa5d00b815ae68 *R/mapplot.R cb965b37aa7203f2eacc6c51a525e5c5 *R/marginal.plot.R b03e6425e1de2782fea52b27f408da05 *R/mergeTrellisLegends.R 5535598b494cd77db18629459b7cd39d *R/panel.2dsmoother.R 023f94714c2acdb2d5eb5efe14b12b86 *R/panel.3dmisc.R c0a9e0c2e30aade6879e0e8f20dc5d06 *R/panel.ellipse.R a11af6cee36fd67edc15d600547152ec *R/panel.key.R 60b850bac4fa224e53575e669c75026e *R/panel.lmlineq.R 07f4141ef94cde0b112b210cc5022e4c *R/panel.qqmath.tails.R 1af21aa860754e81b94751eda469b4ce *R/panel.quantile.R 812fc93bfdbd0bc59dd78537aea498d4 *R/panel.scaleArrow.R b80622773dc8bd6282afb253c5de96a4 *R/panel.smoother.R ebe4054659ec356b8e1dcfc1a7643e75 *R/panel.tskernel.R 6bc485fed90b250858f40e90ac530bb7 *R/panel.xblocks.R 979d5d15bbb8844efacb2611eb450b65 *R/panel.xyarea.R 7fb8ef924d08dfa343007c6f6dd3e9a5 *R/panel.xyimage.R 462c475ef5532795439920ec3c074927 *R/rootogram.R afbb9405eefd20f94227b82dfa0dd63c *R/scale.components.R c96f9f7f8fc9534f2a7eff49202754ae *R/segplot.R 50bddb1408241435a08503b807c39d6c *R/simpleSmoothTs.R 9f448fc8fe429657a6b2ede24217ea2a *R/theeconomist.R c6b90a7adafaf7a36b5abf0fa6b6e152 *R/tileplot.R 2adc922f9a51d3fe08b3dee3f756a1ff *R/timeseries.R d4cbed7e968b38c8764ddf23ee211225 *R/utilities.R 10b2c6bad9041c53504d7d1bfe382fca *R/zzz.R 5a33380975df0f592deeb6068360842a *data/EastAuClimate.txt 63652216c2789727357797bd8a4b6ebc *data/SeatacWeather.rda 63afb75328be2023095b3877895928de *data/USAge.df.rda 232baceb512d4adeebdec527dd975a9d *data/USAge.table.rda b150ca954136766444d6efbb0b18042e *data/USCancerRates.rda 45dd4354b7981097d73e5d1685cea968 *data/ancestry.rda 724feac279979fc4173ea71b7802f9cb *data/biocAccess.rda f195ed2b772f30d22d248a17edf80c5d *data/gvhd10.rda d5034b527b4575acfc86602a369dec0a *data/postdoc.rda 5390bd8539fee977fbbcdc252c98f162 *inst/NEWS 68c3d0b8a871ced2126f337f8a4e7c58 *inst/scripts/README.USAge 4770412bc48dd35d1968ea105af8bfd6 *man/EastAuClimate.Rd 1ee99b4cffef68ecc8de1571d0dca4a8 *man/SeatacWeather.Rd cc735f26c40fa10b191795c56b9c1f0f *man/USAge.Rd 11bef918fccf2e7928bfa48959452308 *man/USCancerRates.Rd 120733d0554ecaae601b4537ecbbc888 *man/ancestry.Rd d1ebc9afec79d4906db9299927f988b9 *man/as.layer.Rd 8c41b620f7dc074fa1659bd2ef8855d2 *man/biocAccess.Rd b8c771ff1970bc957b8545d953ab9a73 *man/c.trellis.Rd 608f562b96777338ae2a5da402b69652 *man/combineLimits.Rd d3502bd44eb21cfdd2dc00cad853a5dd *man/custom.theme.Rd 1bae8f134b7318a54ac3dd8f39f09c9c *man/dendrogramGrob.Rd 45faf2180334872dc86a631a01237408 *man/doubleYScale.Rd 63da0ba5a57717b927f5de5d1b0ac85f *man/ecdfplot.Rd 785dc8185ca9d223faa6b64117162adb *man/ggplot2like.theme.Rd 4227d71e9c6730666bc42e5fa1219e7f *man/gvhd10.Rd 5ffe9c86b922fbd7419a76dc108d0124 *man/horizonplot.Rd ba4775c3019b362edb2218ed9c62bc92 *man/layer.Rd a2a3e49635b737b98a84a91aeae7d91d *man/mapplot.Rd d623029e23f438c14945a62c25c43d83 *man/marginal.plot.Rd d77a17a40784c9309740f21783595404 *man/panel.2dsmoother.Rd bb5a3d8a939941ba176419a87fd1a842 *man/panel.3dmisc.Rd 2ee2100ee5a97f7c65d689c733158593 *man/panel.ellipse.Rd eaef288cdec8002ac6df95f689cdaa4d *man/panel.key.Rd 42c682f9e91829f597017d2b94ef18ab *man/panel.lmlineq.Rd 818eeca6e8b0176ae304e26cae2b0647 *man/panel.qqmath.tails.Rd 30536aed5a0f614a2e065adb71ebc9be *man/panel.quantile.Rd d651b28892a02a40872deedf5b5c7836 *man/panel.scaleArrow.Rd 29b3fa151219bcdf268865b4c0a4bbd8 *man/panel.segplot.Rd e3e068ab371f64fe785e8ffd5bc0b19b *man/panel.smoother.Rd c2e6266dc28df9705b1728e5da647209 *man/panel.tskernel.Rd 53d3fe9f0af0dba3e052e40dd70e44db *man/panel.voronoi.Rd 0eae975bcb44fe4aa57b4e8cd5a4faf5 *man/panel.xblocks.Rd b879872617a3f4c4bb2c1e43e48616c2 *man/panel.xyarea.Rd a711bd463b6e8a8012915ade3ca0b372 *man/panel.xyimage.Rd ee2d50ea725a90b01c629e55fef67d56 *man/postdoc.Rd da6cb2b7a3c207f7b4fc42bdb2e36704 *man/resizePanels.Rd a9bb300c77639ed5334b4002537bf9a7 *man/rootogram.Rd c94340a208fa116edb94fe29302619d0 *man/scale.components.Rd a63dcc3403d84ac749cae8a5bdc4ff49 *man/segplot.Rd 5477868f6f4ae02715a4b3e4d03bbaf3 *man/theEconomist.theme.Rd 34b7eb3fbf13ee43a7c11753962689d9 *man/tileplot.Rd b0f44a0d905734099cc6160326877d2c *man/useOuterStrips.Rd 4ea66854b1d353feef7306d7f2ac3a25 *man/xyplot.stl.Rd 0698eca24d99ba7af4271236d10e355e *tests/layer.R latticeExtra/inst/0000755000176200001440000000000013574411142013662 5ustar liggesuserslatticeExtra/inst/NEWS0000644000176200001440000001321513077627551014376 0ustar liggesusersChanges in Version 0.6-18 o combineLimits() fixed to work with empty panels Changes in Version 0.6-15 o graphical parameters vectorized in panel.3dbars(). o new panel function panel.ellipse(). Changes in Version 0.6-15 o panel.xyarea() gains a 'horizontal' argument. o layer() now works with splom. o panel.ellipse() [was introduced previously but not mentioned here]. o changes to panel.smoother,quantile,xyarea to work with the new 'col' default in panel.superpose(): now "black" rather than NA. Changes in Version 0.6-14 o new combineLimits() function for per-row and per-column limits. o new functions xscale.components.* and yscale.components.* where * is in {logpower,fractions,log10ticks,log10.3,subticks}. o horizonplot substantially revised, with an argument 'horizonscale' (actually for prepanel), "free" scales and colorkey support. Also the default colors are better now (thanks to Joseph Guillaume). o new functions ggplot2like(), ggplot2like.opts() and axis.grid(). o new functions theEconomist.opts() and theEconomist.axis(). o panel.mapplot() now takes an 'exact' argument, similar to map(). o new function panel.key(). o c.trellis() and doubleYScale() now have an option to merge legends. o c.trellis(), as.layer() and doubleYScale() now try to combine 'par.settings' from multiple plots. o doubleYScale() now accepts an 'under' argument (applies to 2nd plot). o marginal.plot() now has a default cut = 0. o layer() failed on expressions with missing arguments, like x[,1]. o removed the deprecated arguments to layer(), 'eval' and 'etc'. o simpleSmoothTs() and panel.tskernel() used an incorrect (reversed) filter in the case of sides = 1 and c > 1. o as.layer() was not keeping existing scales if x.same or y.same = FALSE. o xyplot.list() now applies 'FUN' directly, avoiding some evaluation issues. o the 'style' argument to layer() now applies to the "superpose" styles also, which fixes some cases with xyplot.ts. o the 'zoo' methods for panel.xblocks() and panel.xyarea() now use coredata() rather than as.vector(), so can keep factors intact. Changes in Version 0.6-10 o support arrows with panel.segplot. o several changes to panel.xblocks(). o layer() now has a 'magicdots' argument, which is TRUE by default. o use of the 'eval' and 'etc' arguments to layer() are now deprecated. o new function simpleSmoothTs (calculations as in panel.tskernel). o panel.tskernel() gains a new argument 'n' (default 300) to reduce the number of plotted points. o panel.qqmath.tails() is now deprecated as its main functionality has been moved into panel.qqmath() (in lattice 0.18-4, from R 2.11.0). o glayer() was failing on plots with an existing 'panel.groups'. o panel.smoother() now omits non-finite values and converts to numeric. o panel.xyarea() (and thus horizonplot()) now handles missing values. Changes in Version 0.6-6 o xyplot.ts actually removed now (forgot to delete it after lattice release). o new function horizonplot(). o fixed rescaling bug in panel.tskernel(..., sides = 1). o mapplot can now take colramp = NULL to use the current theme. Changes in Version 0.6-5 o new panel functions panel.smoother() and panel.quantile(). The latter requires the quantreg package. o new panel function panel.tskernel(). o layer() rewritten and now has several new arguments. New convenience functions layer_(), glayer(), etc. o new functions theEconomist.theme() and asTheEconomist(). o custom.theme() gains a `...` argument passed to simpleTheme. Added a variant custom.theme.2() with different defaults. o expanded xyplot.ts() and moved it to the lattice package. o improved handling of colours in panel.xblocks(). Added several more examples to the help page. o fixed panel.xblocks() to handle cases of no missing data. Changes in Version 0.6-4 o as.layer() gains arguments x.same and y.same. Changes in Version 0.6-2 o new functions 'panel.xblocks', 'panel.qqmath.tails', 'panel.xyarea' and 'panel.qqmath.xyarea'. o added explicit 'layout' argument to 'marginal.plot' (was clobbered by the default NULL in 'c.trellis'). o 'c.trellis' handles 'subscripts' argument to prepanel functions. Changes in Version 0.6-1 o fixed 'layout' argument to 'xyplot.list' and 'c.trellis'. Changes in Version 0.6-0 o new function xyplot.list, to create and merge multiple plots (and not just xyplots). o c.trellis will now set same scales properly when x/y.same=TRUE. o new function doubleYScale, to easily overlay two plot series. o new functions panel.lmlineq and panel.ablineq for line equations. o marginal.plot handles non-syntactic variable names; also now coerces to data.frame (so e.g. works with a matrix). o changes to default axis style in marginal.plot. o new dataset EastAuClimate. Changes in Version 0.5-4 o marginal.plot now handles table objects sensibly. o marginal.plot now applies 'subset' to 'groups', as it should. Changes in Version 0.5-3 o improvements to marginal.plot including support for groups. o fix to marginal.plot: failed with only numeric variables. o fix to panel.voronoi (with use.tripack = FALSE): wrong colors were used when xlim/ylim enclosed a data subset. o new function 'as.layer' and a method 'as.layer.trellis'. This allows panels to be overlaid with independent x/y scales. Previous Changes o several new data sets and a few utility functions o dendrogramGrob to produce a dendrogram that can be used as a legend o new generic function 'gplot' -- like 'plot', but meant to produce a `grouped' Trellis plot. Methods can be defined for objects that already have a 'plot' method. API Currently unstable. latticeExtra/inst/scripts/0000755000176200001440000000000013574365303015360 5ustar liggesuserslatticeExtra/inst/scripts/README.USAge0000644000176200001440000000345213574365303017207 0ustar liggesusers Original data source: U.S. Census Bureau, Note: Subsequent to restructuring of the U.S. Census Bureau website, the original URL is no longer valid. However, the data files appear to be available at Steps: 1. Download CSV files (e.g. using wget) 2. Preprocess using a shell script: for f in PE-11-19??.csv ; do g=${f/PE-11-/} echo $g grep ^[0-9] $f | sed -e 's/,//g' | sed -e 's/"/ /g' | sed -e 's/ /,/g' | sed -e 's/,,,/,/g' | sed -e 's/,,//g' | cut -d, -f1,3,4 > $g done 3. Convert to an R array: readData <- function(file) { ans <- read.table(file, header = FALSE, sep = ",", row.names = 1, col.names = c("Age", "Male", "Female"), as.is = TRUE) ans <- as.matrix(ans) upto74 <- ans[1:75, ] above74 <- colSums(ans[-(1:75), , drop = FALSE]) ans <- rbind(upto74, `75+` = above74) names(dimnames(ans)) <- c("Age", "Sex") ans } Year <- 1900:1979 foo <- lapply(paste(Year, "csv", sep = "."), readData) USAge.table <- array(do.call(c, foo), dim = c(dim(foo[[1]]), length(Year)), dimnames = c(dimnames(foo[[1]]), list(Year = as.character(Year)))) save(USAge.table, file = "USAge.table.rda", compress = TRUE) 4. Make alternative data frame version (omit 75+ group) USAge.df <- as.data.frame.table(USAge.table[1:75, , ]) ##levels(USAge.df$Age)[nlevels(USAge.df$Age)] <- "75" USAge.df$Age <- as.numeric(as.character(USAge.df$Age)) USAge.df$Year <- as.numeric(as.character(USAge.df$Year)) USAge.df$Population <- USAge.df$Freq / 1e6 USAge.df$Freq <- NULL save(USAge.df, file = "USAge.df.rda", compress = TRUE)