#!/usr/bin/env python # encoding: utf-8 # Thomas Nagy, 2005-2009 """ Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. """ import os, sys if sys.hexversion<0x203000f: raise "Waf requires Python >= 2.3" if 'PSYCOWAF' in os.environ: try:import psyco;psyco.full() except:pass VERSION="1.5.3" REVISION="acc5828c66ed33800741f39f185080dd" INSTALL=sys.platform=='win32' and 'c:/temp' or '/usr/local' C1='#(' C2='#&' cwd = os.getcwd() join = os.path.join def err(m): print ('\033[91mError: %s\033[0m' % m) sys.exit(1) def unpack_wafdir(dir): f = open(sys.argv[0],'rb') c = "corrupted waf (%d)" while 1: line = f.readline() if not line: err("run waf-light from a folder containing wafadmin") if line == '#==>\n': txt = f.readline() if not txt: err(c % 1) if f.readline()!='#<==\n': err(c % 2) break if not txt: err(c % 3) txt = txt[1:-1].replace(C1, '\n').replace(C2, '\r') import shutil, tarfile try: shutil.rmtree(dir) except OSError: pass try: os.makedirs(join(dir, 'wafadmin', 'Tools')) except OSError: err("Cannot unpack waf lib into %s\nMove waf into a writeable directory" % dir) os.chdir(dir) tmp = 't.tbz2' t = open(tmp,'wb') t.write(txt) t.close() t = tarfile.open(tmp) for x in t: t.extract(x) t.close() os.chmod(join('wafadmin','Tools'), 493) os.unlink(tmp) os.chdir(cwd) def test(dir): try: os.stat(join(dir, 'wafadmin')); return os.path.abspath(dir) except OSError: pass def find_lib(): name = sys.argv[0] base = os.path.dirname(os.path.abspath(name)) #devs use $WAFDIR w=test(os.environ.get('WAFDIR', '')) if w: return w #waf-light if name.endswith('waf-light'): w = test(base) if w: return w err("waf-light requires wafadmin -> export WAFDIR=/folder") dir = "/lib/waf-%s-%s/" % (VERSION, REVISION) for i in [INSTALL,'/usr','/usr/local','/opt']: w = test(i+dir) if w: return w #waf-local s = '.waf-%s-%s' if sys.platform == 'win32': s = s[1:] dir = join(base, s % (VERSION, REVISION)) w = test(dir) if w: return w #unpack unpack_wafdir(dir) return dir wafdir = find_lib() w = join(wafdir, 'wafadmin') t = join(w, 'Tools') sys.path = [w, t] + sys.path import Scripting Scripting.prepare(t, cwd, VERSION, wafdir) #==> #BZh91AY&SYϙ5[`@$8a}#(@7}RANYZktY}{렧F j^}Ce/{/^A=2C l=W% m (QB*$(( 5MVfvZJQPCɖ9o'}&cz1[og{޼ SX$ISdEJ(zm/=wMͰ(SZ{Ȋ6'a}SI@[+SҾKm什=3+ݎR'}uڞlfћӻn6fUz:w9޴|xY2۾{OFah-p#|;-enjYۥeo> ϼAAC;5}َqozW@{gYxCˏz\kb%:>x{}uyΟ{۞s^55nh vۂszi=xa)hha52)=M1A)B MODS'ILCC@ii$@FM)RS?Tz( !14Iꔒ&!zSO4P@=Ah#&@4E1& fI/_QQ겯y&FCy!5QE[Y={'Kh *DĬg57OZc(%:F*yqj ,,DS`VtH1.8QjD[H#( i\ N]Ɲ//Lf1DvBg{'{̑) *eY}=6pc3zD]=p/Dj3l **r,E*:V"6e -dNb'vu:ŀ~4,Q>Q)+³Ng:?u!Kv")Ps|f[O?i]nm_:bu#(_#9B5^`~>fN5"-ks6bW<2m}8اye?ѐ|CKe֙ݙ? yA#&6藤Aͽ_朣9$~<#(%pNڲC~x&tlQVPQnBrE91w[%>kL1!۠.8b_DSƫ>"g𖠹dx:K(~)T7_M->=]ҫ"[`JFg䷏K ?%xh`#&}Wdyxfh< Ct>{J|b}0<7ۚ\zV[Mf{czNze0A+Uw:[T9x-t}K)n|v6 [AMQ-beGNeTP/7J`uCcЖϴR_jrj8y Ď)#vyLGǗƝmE.JUw㓀,QپV%QՙG>p@t8{ Iz=č&꘎}4]Q#&dje_߂)˸^}^u$ )qw|q(Mؼon_9b]d2rIs&*؍#(L>=iև .P嬦w\,+Hxv?#($o#[  lKÝh G'zm ]|#&6}:H0EbV+ 18(XOqAYyJROblo =wyU"Y2?Vyw|2ek"g!ňkʱ#&J3<0X"{n9rzϽ:Pǔ`Ny?%TYy0V9ݳdz$!89aEb}+GG ef#( S|OVtX_!{fijrvB\t]^jZ·"ܖʅQ١uUGWQ"!{QDmcVxΐ(+>q xe1/QOԼd=^rZN{(b ?^ ~#&,_8hT #(R%($QNzy8}׍M'f2cXR~򿐞z21貘#&?NO)3j|Y=g)?}[s[t[fB7iJߟHz It@~\b8%mߍPUbOyȒHǢЖ6]߶%\4ܭoXީE oޫ+f+x}tʯc$z>ɠMcA*ϸкMp+S9k6,;(i6COgb(P7Z^6cM֦hTacI>Til0ulW$c>jbrôb?܈K,T\+"I sir;z#|Rw+L~/[]j(c9=M7Uc1:hRg>w&|xKN7j}wFٷ */B+OT~j۳,yz6?jC*;kF3mɍnLz/û~k[u9Y[aOnvuD`:J8+ax: ޿N`]6h,ŏD7ՖᑸDED)dMcl>^UCŀ-;ZQwYH~ߢLp;Zݫ>=lwN8s\.O]L&<(FE4rsCoa#(B2_F%y\&fHIPS7W {k=Yٷ^CD˦qQe6E0Uc'Ke^F]i#Dā3ar+{T?{o|[u'g#(sh-J\\q"2J]-G 3FJjqL ՗5cۍ#Mw1?tuŗlZvcW-l>G [qiގc8d89#(!Z%We*%'3w69]% 4[,BB/hs)iM0Kbm+GC?Ҍr4H? _9\j*j$=,&~'}ӟ3gI[mH'f+UNQTAP~,:{F#< 5`"g[OdE>Ăe>m&O[:a8*;J0;NCMkc_j̗'P@X,2{!!Ѓ'h 7S f,NDV2*]]rgvIfHGQEZ?B`v'R=<ң6^X%QU#&~y~[>B#&Kϻ-1x =URpp@P)z8~WWoy\l%V遰;7D!Cd?Q1Џh>+U)ñ&g8#('\YX9Z/EֽnQYF2DzSJ DJ!d$[G(gvj$~FŞ}U@XLL eQ#(ψRyGҼq'qN'L&&&$D\i .o+dzsW8_υ4#()tYQ`Lg{:hm fZpçnMk 8d[=:Ϻƻ4\tN#&/ౖx~QT_#&4[ā.Xi]d]JJ6aYߏZwc2Wu:ѤoI%n+;sxYx-rkN7輙0$@{?Vt4Kپ~2Ȳ?_V5 DG#(4{105R>܋m]Գ>x+ ݘ{e;]ʶ;t"IYoļ>wveGg@l1?{v1@dU|{!<D1i$DqkU_F&^"E`MFnzwƙDrţNVCG:{ʪ~y%|"%igj[Vq2]okDMKΖx{`eK&o $wPG.X^gxC}ڃb&Q|iJw5G~.s]/=&T|53J.|s=v\%e9h(l)C$*0&QIC\4hhf#&#(\_xI9K<[kXDtA04D+ \{gۻaJkA2.Sߘԏ:#(v }j##&~Go]eOgپUKW]mޯ*Sק~T1Es*^zspx7vvWoT "R/|[)A͜}̂Ƅ!#&&qM!f~7#&b#97eBX .V`U$BaS0Yn\1T2D>ur\13G?Rؼ.M?FқIu;z}%&6qGm&|>#F=zVV~C}j'R |?cqzI$QwJȼ{0xgǠMgή#%~2L&M,horP_=+ځ ' f5s;@. o2\S%a^;QVZ)Sl߫cy#́ݽl$[Vg7GɽRd@.Q*10_#T$J Hf7~Uyx) =i|(=@꧂IɢkC4͎MeγqVtﳣEun$!#&Fӎ$GQm1b'.VY@r?MLNRT#& .!(Z/ iq I#&jT=|<zg`@ݽk&AZz;'Cvu"tyxxYrۿBIȟ٫^\X#&C]2&DL2&~P619}ziS5V|#&\͕q{V\uO7ji9oD-نfQ->/4lKϞ'5>)%I6,ziF;y^#(M!R_73Ba*dnQu<i*5?lIIXOj2U)$f;װу=]Hf8r>.@iSBοV\"6t bǤ!,\s@AjeQJ:SAg㟵GgvytyS۸pBڿ;rf2l Lvtݓhih<:C$ lpL'i#&hf_\w0?Cx3;$(pcgI<#< 0YVwcakh"B[D#&Ņ,h%zMJb*e4ǎmE+NZPnEKyuyg^xÿZxx趥O_gYa|.vd?HͿ>[M,닸>:fzofg&'M߻˶jdV?{@^Hhn0 -ԣ0&y6;k0W92rNS&?K0 =t3 ckLsH|3D$t.r*D̤rNz3l#("S#FPgg=on_g%dV(6/f#&uƢZZi'|+J7fӺ8睫ORf2<$а)TD|7>6g՚Ol-أ{Ք݂e-C?-0{!{1ȣjSS#b_?g*l/rj|cMů5+ގeʿkfWsbR#(2=w#(&o86uB7]j9=3KlGo붩V7U'yـ6Mno>36E^(sE&eP81xYەav=Y=81kSbyѽf|N< <:ڣP5|W##(<2wT1nX8n jvI#(Vk$8gYTiՓuU[!QD|5Mᮁ5^w]1;ѴhHQ;*tٴ#(Y} 9Mݩ% MuN}ѡ{X,^E*ܬ埬ʲ>+0E=PM{;`Wm_3bX4<.,#0Ŗ(}S5\Y|zMyc5#8s\z81>I$-2,<%WnUyzS>Ԫ."ϽBVo^;{_3Ǘ{;HL>e߷ "g#35*Sn_=T4ʳiʹ'|S(8/@m~?^nRK-{2~x } ÏwX"[ƖÞ0<\4O랼U>;xb(+tϷ$ivϨ}{l~٬?GhȈ1=>[Q)|5k㲩xކepC8X.tetم]ǙtҶd)'Y#ĮDŽ'SE qduxL+7՜R<=t0sԤCcu%MDwQU6D6c6duk#8iIwU*Yz/}ZV#(5C{-8u>JmzJP\ˬp#ߘ/a蔨R~;qFGJ|uFţT|i^θ[x g6ݣxc ΈPlUaRtxBS^15*mE5aY(9 ˎ%UؔES~sg7:߶wFw]dMU㖙=q݌T݄Ul#(9LrxԱĭLE>=ҳWu"G$`7;Ҭ7S gG-LTYoX޵Q#^+6HYots'0K櫚~ж=+?cxv1®k*#`XX׷KJr*AHlaՐnaSvG0$U{ȳ`UdC%}|htmawLHoY<'|l/ss{ӌgm]Rnن#(E_q'5sKq:xვ} )1Jh'aUSbv~?k_mJa 7["DjwvCna+RI0aT$\QviĪ58 >o-ayq-h3݄s#(5K#&U5TF炄cW,z`·ZNq%*Kna=}i5τyNBu0붲d'Ok`Kjh(S,>qL< Ћ‰|xXg(bNh6#eN\0)/d""Ljm:4f=ssSS-%>5Ҥ!|R_'ZOƸS1a"i ~>*Gʬ㝞đLjF$#c4)f/\m7˦-.O67#(i?ipI\trN_'gWdsץ*XGɁ:;M&ӭP.ũU0u;Q#(_7h{Nd̓ݢ1S娮H鈧)"4#(:PM32ªت9vOɕ oKSo >Z-$iwWBIZxTsՆQ2+Ī\$(A1dQv|~9:qxezN1{],XhW/PS{t7}7l4KқS$lfGY!ϡ9@6D'UIP3J3$YjQJn% 콱ف?+yvGGmPؖ=TsY9pU;㔪(CUlgjTC}ĈXd(h2 %;8ehBQn2&aj)${j{f?!oO޺,]10qAzH=|)5~ԠG뇟4P7O{~.g\ wjfr"{cr4jLf&>& ~(@Ra-AxSǡؕ~,#&:M׹}<&#&Ѥi(f#&ISP=tuꞗvjTCl<=VC_s)^$&(lh7@]qkx:"j%_ѓr)`ןo]:MX ce^VHICZxT5s>4,GH>奐gR\}>m#(1׫ݗR3j6ƲۆsUi/EwϷ<]*!a &GͿmx[y&w) /a*1roޟ}Qa:[9B$ʄF[lfԬz02_A(5X_dʵ_'(ɰET2LL1H{)k*Np]5xn#{yc:1cz^ !$$E8=1>ŝؖyj1̏T F sFEXx~]6_Avr}^IOؖ<^U,jYW4`nOTF~m@L$cUc+EjuLQńҷθx"cj{`c? o Bti&Z[$dhy$b.:яԦ" z}g.*;סOd*ľ2P|0asUΪ{ te'Yv:QGܟM^7z:#t=86&+f^zBA.bw:wݛN3ߵFH_pfϔf#(TDIǬ̊Ҙеy+x9lPjWCˍM3%cd՞Yoi&Z#&[m"\#(y$3.[]cWvHjW*HMoRLCۘ\,I6LF#&4߻9"~Tіͪ0,cHU/>mT/ޢ_G?"$,t[1L~f.dB>11!3@7-K r8y9ѱt<,!0#&1?f&b#(?BvD:UtڈbR'z>[Z:j.夳xZְ@HC򐞝S;J{WL^#&/XLs^(#(E=}~2 Ket-BwɃ[el*^Pd5!+5u^G3P9+vEĴ.8E=b{Ժ+slo^INtO.b? K#&{܆MW3]ʆ8>ʜ" $fBeWb[!BS+F,ibQ*?G#t#(7`#(VQXgGrD>sDʢ[jY$τc'*Ip`#&05yՎ'g5"顃9N%<@Ϝ2l|hyR&|whR@ԒT@D' S 7s&.jo!|hm}b`! geVKC~‚s7̏b'AgC"#(8 ѨAt|syODnzd=$9kZ+wƟ"frL/'oKBre#<4/Ei= =ƔeArr{g !IIS/ӝowMk{ڼ8Ǯ;%gnz^\L=QB#([>ΐ"gA1k($^mqp0='L:S Y7Ttߗu88 &slNP .jՙRI<8 5nz8瓐I^oiE3}$?***yͷ#BfbW񼜗n" kTO&)N @X'xjw噿Uf}nDX%C#(G藒?Wg8p*ZxŀfQ)ǯ}5FxZh)T *#(_G_ԡ*&Y'?\_,o7 `< x0ʮ XL+b(z {`ßz3xOq܋ Q#(QjZS5(((SN#(o`?"rc|ff },/Ica)\bYˇ\4_{>/9Ϲ?l=>JB vRđ4W5:vA&R*ȋ?g9R=V;v9~ŝ*֝E΋Y3X`i$[^o,KM"I-5>8Æ?ZmCRUɩи goU_߉=| G-Y ä>}+i{yU\twvʹ::߾Jvƒ&(lj炓uxa\{㝴_m=ohǍ誡}^ }"EGoI1<4~WSk˯Ny_* u.#(P[U^ra|rB1f)4SlXkx|$.htsFHy\(5X1UkHwm/Jnڂ##!, ++tֳzVV5FPgߡPqrzdyOns(DzEnե5OcPy;׻^pi܅W[,F!? xvڙ@c]KH,-<|!~6.Lã@: ~O>cvO#&\Y^2.*(~{}$Vѯ{ GN뾚Ӭ/I>hN$Os9Ѻ=V`k89 NyP8G)a2muU0!`쏚M$}mǪ3lH,л'I%tplrX2{(; *ĊɝjL5T+Tak(VU#(#&]fXQRᡢ3cІBHzcz:"ap@ 3֜lj'cI}KІ%xb& a+И!dC)ȎM%#ȇz "ό?-17rt_o4M" Fu(vb\7֛Xuc4;_\Rj*7ge96H\A;9zl8:#&ھte,:J%tЦ3›_eyUMLss_HT^>E4sl\M{yb> _*_?R>{HHBHE!kH ƴ4=#&)EA`8p?Z[dÇƙS֨J J4nT]L '/2#ﶃPR{ЙH1R:4dB),Z?djϢ ΒֽCņtcJN ȏֺx[_ tyCn(Ͷ= p!wR9[݇NLU1B&d2Q{#cGS:X.OBZpVW_}mK-㲅USTn@/V!#(|J a4DE.T]h-lf#&)BPQ0MGKCIvvn#|=g.;wcXK˴4uXˑ*wW#&ѥWvJ4CNXjɃ}4#&ѣutN:!e-{߭> Iz>Į'Gܮ!׏ƧKtPm|溶"[]gn]-ѠMbDҠ"#a -?-՟ۉ^·#&W%`=ߝ-Hӕ|`ܕۧ:%~8rHɵ:3=Ⱦw#V0b#&3vM%sFDn{,2t*:H/cg#&ZUz,@%Ω;2gSjMMk4>e#.5n]u召R)r KA>p6/1>v %VBB\OTzgjz=B׼J"UQʹLͷ".iÜTMPV>o#(M=},u#&LT8V^]A7{vf/+1g삺}~'y>=pa*`+Cew]>N|wB,B.|nkHt#v]sִA%-IN~Fς>.B맳?GSbV1?L\ϼ#&: nAIOԅg~g:sbW7+Cqs: tv:h!tWX{_>GM{D=i:&2cj2:Xau'4CaMn~BVe^B=rFZsnx6`;K0!2 ByXdAE$@hJ=X VۨO^`6g{IX#(3<տ̛ƒ`Bd&@.pq"!#((./ONW!ַ[uЏptN2)HFK,(qLIWjr;S[Nyܲ%VI5x{KCvݑhc$u{ !$Ky)D")5ȲH`5l!:knZ#Gϰ\PV~3?wшZ힌 ;p8m9|Rm'?g huHBfHQ!gB"@i,k>4/ wN$N*貇EѸ(#&)*ptj[Nd @/b7={_$N.]dwP:<~&PP| il=jQܥH636^R1K琗Ya[90֗d.՘^۝8T瓋lB|DDZ42^>P*[(͘/:r!~3o#&'ʴ*U*jIkm'-%`7iB1izUҙZ,#&#&h>Ѷ&(Nŵ(Ddt $blyny%o}V(}} ޮjs#(WIcY:{ uެޭ6 a"Nm߂]ͻu̺ۗ#9aC'a$xA}l(='bkFapp 1̕{1=F``fh@>E$h.P>SXn{΀ g̷'|V#&ޢyt4C044#&90%|$r>yoM WUrQ|)ئY/)iI 05:#&G>Bzۍ|N6%tR#(jO5L.! Ɨxh@$Z@ZqI*R=;CrMMbגa_5d"O"|#fOњNėSȏ̗׬#vt" Y+uhYȞ6Wn3?ASoR0"#'!rv"hw"PM`.FK#&TLw`?'"Y {S^w.R}vhtjS1{{]RU$ed[46)7"0geS۽#(q?7JTs%#&(c$d;Xro=c#&}&,ެ8tp:C-~OϚA)YT{lV9#Y[!_+O^?Yɀʩ1r|BW,dl2HZ@Qa_#Y=96$e^s^ ۲= 2A|4زTPZFMt`8.'HH'΁_Wiw'! @i1788+/ "ضu6#&1!.idQcę'JRǼLD12!}R!WAX !#&E 7/:qOBw?ճOsӰ҇nzXs0y2XĒw]B[?ׇ2 7b02d(~ ?Ek-y3AѢLЅuS6^#&W h5[fRb|/naWopKǫU`ȠrD-|OơtB'.g$bB >[@RDnWq/;&D *՝\f#C+D~'۰K뿍U"RFnV@H ^ Ko f2aD`ÛBGv@OB]p`D\@p`Ab*NOuN|SO$-_o~%f,\O(V}Ϩ^R:'["ٟϩ琒|ɠb,̀eы]@WJbjHo1^u&Tru`ILS08HTKA-(8lϬ{=1tvEG$H)(O"Ҩ쭇/g,Q̧Kt.gEca?ݴbHldC!IJ jrg1r-j!Wv,94^Gu#8zSL&B#GB}tLYl£)[s]ȻwwwBDe[u?6LNm'SBb[O;{i؟`C<:gOޱ|#&T7z&?fIC\K5Diip{#(#( (=kgDžXRF\;D^'Om\s c/%x\y7eEPSgV# *lГ ULwG<>VPL>#&]S8pF$Hd##((WT,Y bSHh/ͼzg&qf̄Ձc}-*;@ܒIC!{P !Z}XHBIq2z te8smfggBQ{>㾲Q7KpDӭ3}S "*N@ 0lv| OҠB# $/DM4Q1rH6` El({ǿ7-GC<_I DG>mnH:€r] -y6>,$.QOѤ4 i,o6ڵx%Ifea~9$fL4СLNJ.;rye4B¨I{> z~Bi}A&b%3Vd#@xu| h{ ghv#(ќNIkDb12-8ߔ:I>#é>dDhqW@p0]A09#&abW6J䩃C%#&ZYg)l{ g($RQ%BFzaAie9|8ZDF#( MseR>H$a b|JǼ ^akf0R"]7-f`tLh`#coQdB@r1Nԡn m{32Yʉ/d$yٸ:E5}u@CJ4#v*%Cy 5Fgxec|0sĚ:H&H1 T#&Í'p$ p6"j!M 0wX~T^*k٫(`F@; D@D$VH/Ͻf= od/.͍H$¥QTf6"Cv_Mmxrtl[UཞK{8֋+ :#(;E $"fd l@}́jUpO4CE2(T,XIaF6OBBMS7V:\f>x>YQTR-Ti䖔Z[mRVgD`_$V_hb]rHrqV};!=Պ҄(1@S$@4E3V~<3JH$’0y72h*Wݼ#&zG:S5В|Gn˶,8D"" :x#(uDྨ u;1yIȄzR7WbsQY=LjMMbEE b@E,r@DXz@8zdYƽf0S%(mϧboe1%-#R2tLa#&0$RI:HBMuJ mŔ,1Kt^ | Bx;}P.mr1RQjuaAp;DE$I3pE#Gzo7/ZI!.-b_`q^Se$2$* ߊ%Rb,DSty:b?>- olʁ*;aۮOGfv#&3&e~J~h9N"|mN@,Y(/*ߓf8aW2kSfms1nq3.uE[vw&tfo׭\g;(s'(Jw&x ѓQx$j@yeeoZ`w'sU}dkԡ^%]ˑ8gL!Q%Ơ [Ř#(+)S qCvD1Pr̞Y~_0ñ-.%CʼtegxiR:߷p#&T2|3XBcAcܹ ؐHRsNwis x:|XSE, !9ö}fѸc01$#&&/b:0k\D|["AIqo9,`k=I3k_n.9=լҋok\)C[5#(u[+i.G@7OR}2 vUphQ̌;aHgJx{#p87fA'iTvۿz=s)wOMfZZ{80WI4l腆N-]]%sf(_”#&a"韃w#5L#&%K-3V;z6i`!TN9cNr}oW)4\ tNas#&#(ͲP;t+^]Z\}#&Q@PF/HG/?8v_I#&.6*APJ"ՎP6ԛ[[1g$f)MaI4!4a3g9ZYd'ŷ]O~;3<6p#&cꫩI'&8v*y)TH+#&jz{iKJQ#(L V—.7ItPUI,(BcܱdšB+!S׉){=L*GAh>4QAY@„MJ|6a($$&*~n؉fFYY,d$*pllBHM5#(#&99~. > o_=Q#&.s'#&DKc(9v g[9KW㓣DX)s3 3!fd\(k#&8ɐf%ƈ10Țc # 3<҇ e#(#,~y,_vxxԈ&#&zTshd㼀O:xkZv{5<<3y|Cs1`u#%UɿQi RYIЖm');ohRP<"1R#-_7'(0@O#&b8K$kjp RpA,3"4NĞ(RTdS4qMSFpR;F#& /HWP o#UλHZ65nZj ǐt=r83&7o [(=c X,ch 1X9HaXHlݽ XD0VR}i+*!Dں71K*pH`*sn n{O=gu'NGXN׷~5xQrk94m<5pu֍ѡ3EhlԾƟ+i#(8|^֝h[]#Cg^5G?jf!;#&F=Giz: (96MOK ԑȈr5[@BǺ_< ronygW#(hH'$) ™s7e&ܦ\@!46\\;=ڦVw{f1J`]B4דm9 cg]fCchS҈rLTXF+w iZieK2I6&X<1M u8m/}s6#&㣟TW9nbtEr199G=P\:S4)ZtB{#&FvEP&1l^̳+_#&#& X؇F-8&*xmh[@8:XsLTP:v[Xʵ8|V.\>sߥ&!7.)ΣFNณ3%!ef Xy=آÅ |D~#&ØۊͰk!\oSYyc$fLA֓7g ʗmNO4ַ rP*M1w&B΅s\f[H\ٓ&>1 { vtdb:~'Dl|7VU<σM2D{ø=oD($!6̷:Nސ! upsseKG[_sQ;zczxǔYĆ3tu#(Ҙacٹ7 ը&(DCڛ7WNû2dShTUo[92rkdYVM6'96z4,k#b0̀|eLNud6oL4N󏍅a%;D0nK !Q6K2KNqFR$t c]{^U.`Ȑ=>8ݲ#(),Xw6Fr.9ľdhufME O7 F/j_O\YFD#(!W|mm@#~iSPXjd]\ Zl& ̑2jw l|`qas"`5R};mqE_3ZMʗvo#(c;H6#(!T-6%W'oCNE:2s+˧Y8dЅf.\CcOX@)2H;jX<,pP7䐂ާ/joNF|]Hphu#&L"x[t@+ij|7ҚSfI M~ H`8d"P|`ǵ##&f>ڇ>qb=$Ȅ 魒~fOgl;IҊ$)N u 2JshT`rpN͆oM42&hɎ%gWe#(=X3?"_Őz"Ԟ}3&ʞ#>i餡Oy:J3mmP"r X*W!p=$I# )ҙP^P6#Sy0cg`WB)NBÜG~ wG"c#(51 dR#(k2زk0uՐSR~-'BYJ&uf 0,8.TCzZT3t'!x~L@rEa8>XU|r#Ի^ȕ!{0"#(#&j4=fڻȯt#(/Ħ#˒Ml}Eh6NٝPU5èx#(x6[8m{Mx"=!3i OXä/悕샼-cX^_tK|aGXsm{ "ajm$"7ga<<!+L1tp?Ms̢&-(م0]L7t]RN]4P9Ԓۗ4\nI<#"7g4Mv ۫kL}@5sHhN;/6khkM3 RH:2=q@h@" +S6IslRe`Z>J#(\rfCX?'8¦ł!a"j#(++g{;]|)2c*@C,t鷕PZS8bkI*1|ߵKAA#( "<5!D&ۥ[4C4-F4Jf6{0PA.;rE\f5oܗ- |37RlEUVH,)`hc "\x2C5I DM#(p}1 J\@W&K糄"!PІcLbⱠu~0#&xhD?=mDl,A`X@8>jSfC! ӰSQz8_8n^e!G*6BJt A8!f<%3}jlZPG#7oW,q#& /SX(!ӰDPYbtv@=,I3Fk#xE@[ R L9_E`alڌ H:5g@"QNm!H;"P6M⚠ŀbMQm*U,\T:jO!dG;7-BMB48XLR#&D 2Zd"L$9p~re2~bk 6=6=V"h\"Șf; W#&d`@T,H+ E-xFV/6a@6B{kO&pY3G4}5+g~zM"q_gԂdZIcYi(ę-Qjj]'⑈z&Bb\>BAa nDBD#('5ϱ#g35F|.-U, k=]t9MmOֹPi$PM6™#&A8 !D$.Ad()!(A{刉"T9Fpjk8U#(QkՈ9ݭjA)8涉-$M!Af̑<3D.ϕ4   s.ӲK)%]Qb#P{#( 0pS * v룴AO[1S䌮.]nT39?Ցa'%6"X릶Hf,)3óktݙ>[iܼ&/P8ڑ^Gs=5Cq jS{fH-niNA:}$Є,J'׌6:-xgj޽|5& 9"2VD`!8d0~RL jO,$;ܡ}0)OQ+4aѠR6+3+{k|)c. s#&`TʔHas8RVwާ:PP<bkSfZ\i̻X[.?u/$=n#& N2j":da3$Y#(.Z#(Cb,R) `v…O`:UH4LM$0#ET#&QcӨ=T~<:EYEÑGV%g@΃ie+.@"/LnKJrI&-jZsbαI[uk_l}knZ8I1/UkCXmIV]HU`k#(X;C#& 6\l2Kj˔#(H10s)Xn]kPsUAMb!z2IL,8J̶kW,&iffM$ ͔+[wd$ H4NGם=av\kr5[7p̛XI'"A@.YQr$RFPI!si#hFz\f-}S_3lX)R*p>cqT/hi|M`~7:5{6Kݷ 2WW%<ɾ[pCXj,oR^_^hP8L x9q$:4[aWfV}~At5&Fo(z s*J*5!!!]R>3vBrhJu91!ꆈ' PJ&9YUH+&''&mYJnG:*HY]Bi~sPSJlp"T&qb qD:ޗ>]tKUAAP9B%4)Yey[Iaf9(uKɬSB#&#(; ty*vC9<пce6IRi"0KD-F0;:L:L#(g=\a6P ?R)y(e= P)LO Jk1*9050j~>k1sPCX!7߽D۹C7tӮaY"r|YE~vp>Vo0wq LT35)VSC0<88~Lv7ZykXDP $Xkk4I$ٔzs9dكdZ]#&lmg0{G(yHA{?Iij p&>Nڨ($X,)Xֶ65fؑD/.OR|չk,#&i#&4:<z[]5]R# `e aB\#&f[A){8GOДR ,l~~|V8f|(Au#cQg0W`1xzyfJF@̹'7$^8Arz^=uX`}VxyJu]*.<12L,#(\&(pB#.pXY3n[ dLr&rekZo(lxZmfrZ!]}[>B9@w|fE%{NLƒ1x`vtnz[5 M&-#H54vq yմ) D8z'>^00t`#&L3#&(J=ί-On"[n]B2y p'r$$2L#&FH0?hb>ؠ3_ECMv灵#&n?Z& pGC)"mZӳSGóZ UYuO2T%?vڂ?lt"rYavkq^5XA[/CJ9icsvGڋoWlۂZGGA@ё)(~Yxn!_4/,8t;cɭy8'`(L(.=cw:8X؝b@ EXB\ !, 1@#AR(TB$M]5#&$ٕ\DP:q"2Qs H,1v.ԾNq,+)kiIY5ѤoIL)p Bٳ2ƪS巊jTTM"w]63HMMdktJi&M[Q3Z(AɢiFH8XX9E0,@FEFEo=4 ;ߠ뇷LAPBzR"TYEF@AH!!`ECEo+(:JXj.QKH)3Dg`+$z [G"DOfOly/ hpaDi L쐍 Gue/l|p]Dڹ _r3Zn4NVϷ`AKK}rGɠ?ؓ$N}X^Q*d{+9U$"0"X@̛}l=r )#&$X:z΀tA`,hA:- x5tw=EjJ/W#14~i~[}M%ߠPZ-}eTDsih$J!IV9CbZ fSkZ#(yƴxVY o2D,#("ʛL(V#(qt& q+5T" "ᤧMsz H*3(QjnQueGwm;&aI>r1=P-#(U}t0Ɩ];C` #fD$NQ7 P3 ޿vX>kbZԒ XM Þl1Q2J iĩ3#(T,(^I2^zu!Q6@&0)#$B_H[WrCT !ȡ/⦟I+Rw%"r#&||FjZ'3X)bH@Ig("#$˻i5;+Ztt:L5F8d=>@^?@Ѡ\^8kM!hM݋?Q>#(;A#{Iec&}B93҅E!Ў/F BObDbI3H}?gBoGEl̶%;L#&s=uC[)c)L02fL[h}?uatyxfّ44aaP|9\L@RE$SXd6y)de N,o{IuRcs9lk:ӧsq(L>~XDR D%9/@d"VI!zkh2=Fחãyft#n ؇bZ=t1#1v`Pő!H#܁)|̑Cc:M*˞G9#(ȣx 9g`Rl(͡r<ۆuh?~P%D $JzT !e"qZ!hp#m+GMG4}=6Z+dS`+f0#(|4}}mO)Wp~q3IPAZ=l1#(M{!ɹ}01бQ(a&4E#(~l?KQbF1-JliEEv.jioM"tC)8BdѺE@Κ-JfRkJk,UM{oˈZU<"oTi#(!`$#&Y W#Q*XB@u?V%dпOMj5`CbͰ{ K4R}2ovSF'Jq~F-C[Z3pS{~gfiyIÐX#`+##\k6i;[-"31#T,RxzL '\J/T"wVԠH34' 7O׏A|匆v#WJF#3#VJ/$MJ޹T>pb2Һ\5bĦa1r\䥴d#(beVX仄&ܸ(㙊\2`BTr%LTAq3'\(q4Oч3#(3RwzgxTUUi.!R#&<+by;"y.fWS"ڝ74ښzyEx~9q{(1` TXgL4ه~ozU4o(,P w:̢.n3a*cOu/jgB5nA;vûlBGI$PaSj#2Gw**g%[CAdC#&#&cgYɧobw2ʯO.UcIL⺂FkVl, ,AdDO #&]q;Ѫ$Ý2f$A=6%l]0qP0,ĵ7 ƫdJaZ{#(8ghFbxA_JA.)q60Od#&j#&Q>}gkF=|rh*B1#A\iܗ$XFn&H`%doI%W6bQjCpeeacqbeDZFPzR-C-hV:?wx=%{3^#(Nҷ;_%:tžiFP2\.dT;ލK÷#&#(G [, pG~sz}LN:wNJvi.G>lL;TK>›D5iOۓ1#hVӠRI^!#(99QC7fplmug]ǠhLrI ٻՋzxoc^):Pρ#&()B<+b "jl&bvXih1< n]&W |J净I"Н eTFMeL/NU|"x6R$ ;j[i33l!Iq@@b7u:5#(#ϕiϤ-n0w=ޫDD#&M!'l[,ʼnV}Ȯ"rv:p:邻;ٟ~nb]#(߰(uX#(*#jLh._/.kn %%l|a*ݨ2sAމ/f~諨6>-Ɯ:LdߢxR1DDDB/p)r1!]SJmC!+Y8݄ S?.[DRBujk"0Р?tt]|mXxa5#Js`[`:F,4lso0wZ(bcg ):QÀh,@w>gǃނ-34Rw Md ͅұ#&kN^=j28]~T=sKvf/Dgjy*nΫվT}Vzz3_**Rnt/p<"f_=h!c7 ,l6pGI5ްK:ͼ'N iln95;oZL'wZ[C#{n'\o=pwg9q>iH2@yqDIsjS nQaaWg:;":h8nÇ<lȩfε%LfDcq#&TvaO Щژ:#(XA8l[;&Hhcq>h-0灨2!l4bBۿr&Fm/gy.[=8Xlb:Ţ5U!P7e#F#sҙ72S6N9iHzIIS:g"!K5,\UPՅ<&^92ifp=a38F̴nӐޮ<v& g*veNp&rih6d>) tymKdM(s(6_04iY\C:WC5r)=p<(0H 02"F0ó,KzQz:8pTxD>8I%&PG%`ZE0rp- B@XTЩh7#&xqt2P:,TDbyPX0'PA ,a#]F$#&*eA jfwKu3`щ[46_! :rT̫H(a6PjxEB)3YbSW'ݸg!ݫN!SS8:N_/7?/J<;JI;[X9y$t9)./vSQ 4uZ+]?-:yf[G#(dJ<Vz0aȅ$e[@TsUΣsiF#,,;[+<Gؾ @3&2-ΏU#($OHtA kU JZZT0!DX-'W[R=cq6e&KJ1`rٕ0#&&GtOt]~HgTSёCg;LjgI.x#( .R #&j>h`F>!eÎ Ϟ2.Ilô,iNlE#&Q`ִ:O0*iԱavIVۚWhHA/{D68Zk3\as"d$:"-Jд(7t&Kz^̤Rji=K6h4P#(Xơh#@@s#5YfךoU126|~]i26Rk~Oz-U|yxyf׿ T.e(TdjlT#&qRuP|1'wsS S[ߤz ת͉X-f\jHH.w1o.VD%\ XxO0Q<&kͭSWQhc#(Eyiq=a 2KX['?j}Z~GtԷuFJb4$! ˪2Z-Ewtd,5;FA GaHP-9aA@p@°>,!SEbmi#(;^=SYW:IAbugY?$b#(ä aFBȓ2K@ y=XD/eaԐCk@NV'/<: @X!7b#(CeܔsX)#(+m# K\,Ea`ņYhTpD QQd6@6m#&IP $g VԘKŁcӇ1.ԄtEYLn8;K&~ۗx> mK;EX~Wn]()݆91eHdS]g#&vfO>TTj*8'w#&cy)0-'!4CFD.mix{$.C0RB1 yeUX??_LI/ aQLnL@{Gq/3488و#(޾oCՑɜ50^-KJD{Npк g2q)o3h:\Rtwfp%?K9&aWH@M܍Ev{1tFAE``^e;wJ1c,__=^a~__ᒊ0G"h~1 'ECrs+_#&|}oo PCվ9R@Zq>08N񯷼@~_,.4sǁW.B#q JB_^e̠zj]AQYY"S+3#R˻U♛- _ G zvT H5OG=Jgv{盜#5}*)„|ɪ #<==