#!/usr/bin/env python # encoding: utf-8 # Thomas Nagy, 2005-2008 """ 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.0" REVISION="5547843b3b641570d7513f093ab6814a" 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'), 0755) 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&SY20A$0a}$v[P>Li6RـIZ6jMzqcݶZ[o{vy#%}swa쾴KU(H$"T%P"}rmRz=}}{ݭNePIE[" ąHD:]*_][GSJ{}}zҳ*o}}ϻ>}/vFׯC{NJh/}M9/ַ[)_}}5=׶7'ʓ.ݼC7]9W|Lzg#&7GiN;^ܛfr|w`w_O۟;o+|=W}={wwݨ@o8{c>]׼wӨ*]B۸W7}yu׷7>/|^*XS[}﷈t)@#@F@@ 5i MA&jz4&yMzFh##  OHi4d&z#j# OTISi)zI=M$B2ɠ4hCHdhSbS=OS!=M$DaT#M4ѥO=Ͼ7>ؙXuMQm7e ~@HKm-bլ֒(4(!@%mUk뵫m))J TI)LZ) - Ia1X a&% fh@[M[$m&m1lŊT̲JMH1#$ZIbIlTdcI&TE&2ii$lJ)Z(`%2M1M4ٔ6lP2#%mAZ"4EH٤0L4R!JcED5Ͱɲ@BlkD,Hi6iF,I5!`$2Ld$%lTIHP (*adԢ-#%&(0fd%dŌm$VIi,RhS"h$$-,LʒBQ6j64m!2HJ5JJ*X)5(Ea1MJ $LM"(hъ 2FHB`EfVD)$Q(M Lf)/6Me$lHԕ4єJ TP6iKElăf2dI*QI FeK(X[&٪E6mdj$hB$S14EjT[2EffPhP#5*QJ23&ESMLM2ҒŒa"K%d`dQ4QQ,$ȴh% F-)$Ah-IFEEE$FdV5&- lRTTARH%bY)%eMFf1Jj&`S0C,Ũ1MlZ2m%jYQQ"X@LIA(ڂX@%2&-#%HYc)IY#&(Ȍ4@&$S5SP(j$!Ti$jح3fhe#&6LSM&FDdʒ$Ũ$*(%,fLIKEcRʬVE(ȚƵm)cQ2F*5 LLY3I"&LR4DZJƩ"XY5&5TZX4jSI%/ޛޙ\wz3*3n]roAwRo4tq0N+$hًOm ,Qmcl}RdcAKi|^RZdVAonR_|JIks{b-a0L#%4dIa6`V/jH*?`}8f&23ejf'LWI ҂=30[ckt/#59/ ^/;$P[Y[,mȔlG≪8? k}:ɉ-3W|zɘ*^cI2~D$dOB7~W/ #@]`zݣT'(2\#Ad$]%@=d#%mC]H(4S݁Ac#|oRU#&ɩ65l_/gF-\D'y4ŌqlCj[xinlN~PcI#;\1Sy)m#%' o|l@ePQ[rRᖶڊ)=}Ӷn?r)-g3f]vS!I$w'Vjt1uzIUF2.;F3f]>Oף-a͋w{,k21Ƌ҇6csYqH&cr{v0fAO+X #%N龕5LڑjOdb!}Ly{\n==ύ+|+|82sI56tafV)"oJ)t|E?ghĻu'#&18x|&ce#&::?5 WB@:ڠtHb5__0ڞ#%]ϲQ.L q a#&(rh?H~7Zn6J |y\\˖^mo #&ƽysϼu;s|^78!!LI=3Y XB(Ϭ1Wދ6x˨Lcu%dZxbvyV=tҴr^$|){ט#%o7:n8Tlk2Xo~,:M0+M}C-[3,er͓٨Ҍ+98 Ei}c?wNhRzqv,q›LmDӿZ245#ûDzj7|].lN!;yu_Gq *(v:_:PRlP̋ȁ]1Jm B] õ;6jO>5+@! p}Қ{u~hz}qǡ?hXúP#%HISMA31Lץ6kS٫‡Šm3$T1K NӔKCϕH&}%y=eL~7:#%zgG`=c/Bu@NnCC#&*(=Z/_y#&k=~,ݥ8HH7<Ž%&x#%]UQ{t'N{쳦 {z.Bzͳo]d-C "@&SHFz]faQ*,(?6_+~>L81z`m_>Yf 00̼oef).y(eܟBZ<[Ti#%DU>Ohv2 #%~fȌ}/1o;KQ 0bb#{F\Wы{vAs⣌wM+SNx\Mdt=WDׅm |2_x?`>̴m'E l$:mMȽ/}nl,tjW^7ߜrӎ6r%1ԕ΢rrr'#&Y^#%]CRd._HB4_EZQ;r7hv֪jNO]DPgP< :E[q1; }LX_POOn, 5E ^E-V>ZX`9`q#&S{WBpm@64yv:we?ZۧJ(#&Wx 3k߷n ՇrR, DS!dTZ&.Fْ0.:đeySI1ىd%dq|Iܛ< #3x;#;BZH^hӲ$AW,lT_Qie]m9m,}7@9 <[LLoDjl܍[m=9a#ܬ^YL)b]BlS}^v1gs}BI*v1qS=fonNB.6`; ChL3A*a&lqEɨfWծ1Nt$">5uG ]_$6˘6eL!nMy01C105YΝ<>J[ubM:%s ʊiu<+q@^v)3NYm)A+;6=(k6Ij~e7N#&N=޵l|P#&ے}V5BIs]3CnRbP an;D/m$n#%yM A$1=J10в\Z'Py'4)ߞ&W躩4X'zܻ#&l~hk1LZv^<!K#v#%}rTIbָh8QwƗ/q7|iI<յ=3W=Q|:?kaY;uI3F6qx&'/t i`4Q#%$ɴC_-%gz~UǬ79"xtr*dwdμD[L.Z9}p:-'̚w!lNj٬+JtJ'm, ]$jYcm(M\wNcI2D$XF*!D0>v 5z#&lx#& NveXQ]|3ًD;lPI#&`šAQacvg6i=Vz+84HO])$:<*JddkVpt L`9'hwgA9m=Y7Ӓ#%_^_#&-=LxG6x#%!%1sE5]49鎳o5T$mNL1滯|o-(RF/Y#&c y#Qzw68A}(ފnYHZUtn#iz,;x;g^z;Eqa9"rW]zh8㶗.~k˰f[ϕm.jՂHё|^wȶDO턡U30cI@v?:jbkν9GX2lEe]c#ZcrsEmNܚ.N*QSH-?L̵NCqO:o׊=slK: f/o#%yM{=XHl6.p_D/\5edk{m{.D&9%RR[IYx)xTQĜ+o\$a| tv3, 2'2Uޕ~—Bn@dPzM4ecO)E4FӁ#%o.((DDF! #eZ4ȉH>#ru;{y@⺨랗oǗhP~\#&RH2̔E~c$fe~D{cn-vFƆ1w/aCݻ5w]M6l62&~FN"F~yLGo/d6i|vzkF }n^/5-4p)"Ǝ汁2&9#& @ a+XO,ާWy]'':B dI{!G4(M)P͛p0$}NRIv$ *G&8,մ0S8 P5d"ԏ2* wGī.=Q(wBVz=H1CSo#|*M}^,Tg>i-3wvL_a8|T( Og-a~;>{O< !B].Ǣ귄7h*z`bDĊ:pQ$\4âDI:ADݫ8P!v]ȫ.A4^w5!,U'}DOTCchQN~ǻFI孏HC.$4DIB&yH=}F˴ANe#&J6B9I߿9t_V|e4nO+~bԽ!CbrX1W:Iff]=es?NG\{|`_gX;*nedoь}u?H;tWgG#%qžUYaE7O(}4i;4!SeD|`}#n#CCl!1Lc\-}޵|ݾoW5\bz>c|C/OkyPy)\y~'&FVBa|u#}+g("~$9ĠTHPg-%^LD;GE77K2ez|}ٿOg-(r3ze+4{}=hQW^]wz Bᔫk0qKƫ}h߬|YLL,CK o$g`oѝ,Vn~>!-mD9~߫}3vގUiGU.g“Å|i#A55lvtsp4|~$-(vC0 ԡT!BV(UF 0 AX'<h6EX䒯ёޟa򞩘֡ޔB ~{wYm_iDF F!?_žC[F>>=vwCZ~|(Ž:ݍq:>zyjf)-U{e=\4꥽t!'=?g}oJI~AK9{Ѳ5HnoV?^QX3B:h*Ҿ@DdʣBUrjLbc)2UAcי6Rچ0juyuk6%{#&Ad#%΃1<21I(EgKd!-q#)^Ʀɉ꒜F)vTer{(cׅo\=Te!yï = S9bXߖ`ϑVr7Ri^5W<~.ȎBEe[ 80b<_nTv@츦H>jA}y2^ĒI$J¶v/*(s+W9H*ߖs606WQ*n;?Ns?e7}mF @P*yl5 #&^|2G3a}i%4~LЇFk^*lCJola^ѿ T/dg>h䢌J|jTʛN{hʷ8;h7Ěi5H!0!^c~3)aid#%!o܇YG, t~ol"m6bJ@f'aZ[7o7I 7'EԛD@) !BKjL / 2`,INM-z5M{W5ԕ HXoDf2W" Dx4 !|3#% T,%E,H:bdqmfyxU1Cc.&F2非lܗ 4u -<7vnh$6m}]|F΍Z/*6ea4T>;"ł8fYQys{2|5 Cб1OvkWE|I] Hۢ6?q96$z&um +iymyMRG,!T[$Rܷ<^Sev,"--*xxFSO ϋuAS:\oZOw&zF5Ͻ:E Nq͒l&Mf#%+{~WW.Kbu2-aơ?u݁/,K'j^ Ako[v;4 i#&On_o,:R㞰xmԼX@bGٳlaXC85W~]ev6#%}ř9["HH,9IUGîkWScOo7T'!qX.y_ L_&j)#L˞q|xQ`쳷Z;o~frf4%l0Lu:j&S:&c%4)Y"r5ns5_dL#%Ij!Z9]\(Aֈ X!l 8!,ݬ@gZBbS2Yxf;Z߽o۔~l#%#%Lwe}$`T=:)S-L[Y 2DN±X"A4 Qq{g@`l唩]2#%̂dL#&f.ܘ4ڧalАƒ=AI>x6 ?=N!'K5'©"x>m85ڢBe>\_F!IYLCFfNY)(9W}$;snw|oRf2̈J!2Rb7H4P[rv"_@n|ۭYM&Ra!J=iQ=mm3rNT`81Dԫǚ|PKGgݏ/QfuUZI㺬YJӏNTƫo*SqZspi+|nі#v+iߠq9;ǕY#~$n!CAk⭖$Ey72pA'q76p7Ov情΍\HtO,7<y#%4d{iq+kXs 9t:`ۋ/_U}cϦ1;Ѵ8@$:BqiklĔW_sjHA5cJXkM9p\aM􆮛;j#!>xhE99JK;"]PM3u½m)sٸ[&VguCBs`ah?5ȶ ntτRbCA+KBK1|Yznթ+;x4">5|{䞞[/_LR< z]!xY2<#&T!Kϲ~ W4hXB]<׼(tIUgcQ&R%^ YTT:e]  ۣkV.o:'cK%<~_mdNWB#%"TJԢ#%.oXACiv^{fiHbc3r\*{aT#%PgV9vvTg;-$^U07MY23SZ(Bfw*3k;yd.6Θ9#=XOtz~m,q<|_c%mÇʵ5Ӽ"up/M_#&e"<P40q<|JhT;4J_9r^+m-8|7bż3ʩ] ݔeSR#&"EF2Ǧ Q|G:`tsH5,A#%t~D!OLQy%DMrڲYIm7>wϧqC=/'Em9f\xjLVJ9UQ]P"U/udve-2{mWT?2F$af @"3\oTruDK$(I# @kqc[wUjAkTk?d#&L#&/hm{k-:qX5ԓ#:;/8=]0:1|( 'ӷ\6VޒZ|ݰs,댫|Gݫx~S#,&wpe*İBlgGFPCW:'_$y#]vk}(qj#&N!6Ceq=|`<=m{q|Ѭn#%FyY10%H;XTl>p#MvaibK?3NhzgYכg*xT3y۠C^þ"vW7T}?/.5NW11ה4uLvR_.' qWɤty3#qmD'BU(<\m#%RDx2SwYB*kzƅ%Xʪ̠Z3V,YF@NQoGc )sdF_VW{竝}$#%tl\&9[j=6cK1]Jt..’#%J 3y;]PX#h2\g{y{pY4Y"3nP98YGw띴)WUXG:|m~}<+袲Sڴ =^ C8[^H@.d'sxW٪7{A)jKfUL$B"oBl4 R).ߵ`s !oҝ`cG,ziH"Uў #%cBEvE!ĖFT4_2^n{1&:cw] b "-!LFPs3f2BW,1ftd4zqhh{uS9>J6]֞A2xd5g%-"r4=N:kJ<9Aѐš LP(=!zulAۧV[ۮ ֧۷<9zP`(.} \ đWHb <"m#%\ߪb!^,Ez!|rqRhq/t.MEs%Sw`ۨI}+Tw@a&7z!6pXonGT!#1=X-$غS0"GMNMPh-+Z'HpjJH:&~Vޝ3l6D^1_ӼqϪa,; N;A8N(nA.DЈU0Wbs֜&r#&Î]LM̜dS޼L˖8ulQ6$LgF11b9Ab塐gRx!ck2F5#87J]F%k>ܮ#&)GAR.0(mL?vXohj-M)#&L&hkX9y~h&#%\@T#%s؋(s1όc}g&W62"a2d.XH{&Z^D\,5U:T qgw E$rI43:H(uj=P@ePMdz*fܨUbXWAfDy9Aaano85ifM}ё'IgKtQmU}tDLXѻ⣡:bhDEgl*oƪHGc>xf&B |g\~N^cS|c W ը%Tb,YB^fZ95r&d¯I /n%xs<XUqKkJRR!Wm-vF)…!d"#'}hiL &Fj_v圶DrC}Z6#%g[Ӟ^Rv##&wu#ljb"tmH`h>~a¿"_"YBddpӶ7;h,Gst@V7.VY^:B)tH,дiӧ'r:h ʼ&Km:{eש:"vڠ$$:n'iۑ̮WoSd!0`?>U:(odp +"~ǖ~l-;X|'I7ALzh]ۧFk:5ј `? }wj^WS>Vu`3#G!xl6_Ac9I&ǔA n$qzRecLZ'Q}M<!_6sѠS5|e#%Ҥ"#&IK/rY@H"1^} 48bYxP 4.>y`jEci-Iϩ\vkCa9TګFLr>;F&H3áXDٹj,(' dnvA,#g5!^^7Mq՝! BTw*N<Hc:ery>πvG2ʍř[bހwAgS'"H@l)I#"Ҿ e=;:ڸmHD7R#%Ԉd-#_!9vP սI:qРL$$v-=+Hd;u}MƾWw>EkFZH&V:#&EM!^!!n㰺MwC2 <\cXD8iD'Gsjqy^(k`mP$hn+<#&*;'vw>ECxtm}a.vȖ[&3Ѭh >F<#&_2P\M5q;% *Tb7Iz?tHJdne!΄IyQP;tJ:.;FF,a(}m-A.ySpiw;dpyYs(>d ˌ𹽥mrf#&\Z(;d$T©cb qN#%#%T7w\-aAP4r`thgKYY4iLdLz۬aܜTLݏΙҩW2yo:F$f`Q,S/047W6.rߓ^QIc;ZT-BM/#&P;XH.Dw0#&:RND^;~\f ݲ"d%hKdP~:2ʚ76K/$=kv^4`=B[d`ef2ph<Ӳ7y:$ּ#%İk ԣ6#%_*C Tf4cF,#a39X>Қ6NNR.jԎtCH[tlbZ:Nwve;k0&(AFln$1ZHa!  tMSuRj@!ZJ{r}X":HmIy0õbl`2wD6N- &i¥膂m=N8Β"|i!rnqY6rwjye!ܖFnn|:niבKm@zh!7+ʊ&zw_K663v9BD&#&:hHݵ;~&30MF0[кώ3#&tH#& nD` XVOAL! x!;CM:L>-IeHЌG[dCa٠֐w:M6v[F?]:#&'O윪(㖿n?A1zA@ @;?4L~@0B#&A{@)_eg9I/{=nDꯕUXߎ#?G֋uxLߧNyo-~Јw!4A&=Tt\RJ>u$5|+焔پ#%3*(tUk/{lpf9o˵`&]h;F|VU,Mf#&P΀B#&LA v iÙ{op:I$$$ps}}7$|=gåaE|gwJ-V+翺i9h{S Ԁj!) n 2UiwPl996R*yQɱ+vfW?Ao24o0tw`p<#&e#%i9lg:?K~J#%Ϟ|88Ký/ҬqިYV0z/fa yr\@J#%6ck<^zw)_,9S"gɎgp_OPο//|%1Ng o(Y#&1SE^#&Q $|&y;#&tXNt}z)Ff8ymF_#}qO(Pf9H}QAOkO꧹m n”Iڕ@"ǡ `6C{S7D&Hj0BunϱUWm|5pW;@e0r<v^9esm;;طTؼT/#ܓUJ+Óplv>q8t#)I"jp+ShLURDT|s?K]9?);Lۈ`uԥHsxq!lW#N5DުߊڵGL#%_nv=LmF{pNO,f%s\֡Yab$//aQ~jo-𒪢ϳǾ5~x/l!PG0JJUӆ/7Q:M{Yw0s;9ȘʈoNB4=O?fk$%.rg_49"w}0:{T9s793s;''ocnE9UwDN1/'i(ϓd7tyc0ĕ0!Nf$gk~uי6(C+)*tHK!ښS$r\#%*B#&̊i%TSkz[]xSbqe '·_מu &Y%Okƈ~®y_"w~M! a;x鬡,oY,}sw8?:pNUd BT}X|J,˗K&mp룪g1Ǒ|d!M`Ь*DNzEJ?LvZBfRۨy vʅ|7yg[YN>iG#%mUdݣn,U`s;>{ "9z[27;||Ғ1M᳣ ,ʱ)ʼzP:]8ʼnT40v{.aI#&igDx#%yi2*&֊MЮteNSQ&#%192*(n5{8z{#%LS#yOH>ē{/8_9x1vF<75u)%lbv};kyC)dsw#:6_j&̳oNEނNy$GJ,Ҧ *evdy)iHS+ܢ̼TQtfCOaE3;.gǧ]#%evKdrDcrbNm@aU[qalނE8>e(Q%>ſ?$Y<5 pʑJK3\w^y~|>S|;#%?R3URl緸9qu;"Wxd*Y%S@ZK篾w=us:u1M3F)z#%I _Cj6d=F#^#&`UέڍNAi.f>M85P:qC)jH91~͎)hƇ8=(8RV5C#%l"c:  )i)a]ȄC.!_窃6$uDe)h&ZY'gtJw2Bov"ZB{#&:s}B!!|NA`<4-y"\@mӨx_Nb4ʺ(HCY۵7rkRR&w!rbLjv+jG-A<{u#%BP5OȂ@ԒHU[yI)f8`˂nc$ $*.TٳI3YDK|'%HAd B w/(#% \DhuiR4K%V/Kma==aPaNz$)"97 7gYT~Yݝ㇪t󃧂 yGM#&mzn)iMdnHk4͡>; j*VN} 8i jվgV`@ p;bbJ!ꜻ] l{a+Lc Ҫ h]vYQA# T*JBEm#ߨ7O3s9rаii( 68O2B9 uDU 5ӡA+Y^աDcA"O>"cDj̸3yD mHF-1Լ锓Y JU30r1/mN;EsLa2&d"$c;l޳hR8P[K:2fڒ6ȑIy$ (wBJGtSIY&ρ֘: uRI BnZ2- )1?>G2\j'@{H;^s=M4;t<5UQMud>D'K7.]_}^A|w@#%OQJv{}^aIO`|Phꃿ=WpCj:VH:)f-a#%Apde&L*ftI$^{WT@P y~s='f`OGP"?W}U.aouQ׼vj8#&`ƊV)ѹ3_9U_Z&t;Wf.bw1ȣ-8)%-T*E!@J\#c/&HFvFmP{%ѳ1~LiGk]+N^#N#%$b Hz)'Ԗ6=I! 5}gʺ7+IxR#iwQG#% y{K4PTsh}슏kFȆ6hn+}56}mE4$l/#%LozONd",:C^&#Z+=T`Cxhe(L Y40 HBFGҹWfD!p"k@y;]HUh?q/b@rcPvlʹ )+ېJu%RI&J5#&'! BF$Ȓ#v}#ifMr"us U]4Zh% MpJ601N'W/9ƬN@lh+s]Q`́ja6f!H}\]؀YX]J}HFe*.||vhzNNL*/s3D̀} kc#&8M<妙ji{)QۍEʐ~ ُHPO{RBQ(u%bHbT@|=} Q2+M`m'1s  P:`1PJMa1&-#&9&HmԇqP[..qcGN/Q;^jKC^r+eA@1>#&"!hzC3!ޢ"ެ`6ȹ0 I TzwpPeEV;! ͻ5({D= "4:'{5[e%$#%ѕEZzR>w~:t_ D$If(qhlo|O8t\ROX}A${pHĒ O١hJVU!)s-iamط|귡60Uޅl M' RQ@km8cw&=S{?Nkg_Jıl]iUv[NA_N@%q@p_k/9IKD`]ٶ,^KWKUʫUeV#%/wmH~b¾ v2!ZEX8DȶK2n?7"#%b-b LNDW #z-cUZ>̆iz%;T"ָI~|e=/M^iɧ#% J]]oA"BVmj9[zpFq1NncSR@TL`'Žʢ.>~=KBBu0ЋP|D1^鱹OFy;5A69{}8Dq3Ibr#%~ j39&8;;!dys#~2;hVLq2;Gj\4)sB&ǡB8rmVNflr(#%Ѫq?Fv&2wm܅`ih7y'/]B6wJ;cjlF x}oP\<式f/avk@?pn(s]c99OE>8q-.QςAJH֯l T*q#&iMS)0ʴ7ܩ|8WЈtWZ7Ѯڔηb>}9؈FN!;n]KQ)U^۰( ʱtk,{{?9~q#%(|1zT9cָD&YFÔ=a^>r&:Ʒ;(>:5wi3Lg|i.W\zb\ﴯ\1#J#&`81wc2&a(^`Iѹh8c&NNK6 Hԉү~rZm%h0lhqX9 #%m:"X]qQ! Ol@5?G'΄ A%8 `(ܯ`HUUQm[GHMAM$a.<y?yFs3" %G?CCkh#&D#%!@b5$I7acyysQv+MyTRp΁2z>h $VTdfE&ru1x>yP6 9d!v=nD 2&zI8&|8`T`͹ٶ 1obF$LmБ7I̹5sNqLBIecmAZz- X^M2;ƍ#%$fY;ѿ/(%U0kZj:<!pk 6ZMlzxR^&Qe]RQ` `막 #%$ֽZ H@kӱ "#%GB R#%J<͖{^&8<T^֎zJ#:,IRRwoֽP$ B(t$Asy$! t d69i-AnoŎZSw﮾HHHI!'}|gA: <ǒ>ܧ^}}=-vmOfvk$lx$]gc*rD4zqF0i{ef#%؈YLkZh!"/ F\!brƀ9sH^`wA&kd-{[ %@(PD"uqoaۡKj#%.Fd4!%dˏ MB =` !`;LGaۉ!l&B¨y1Ycq׺Q(x]s3LהBIb v'BUz{20#Р߱# A$X#%u!MSt*!,!7x@5Ǩ8a`ۈ2It !p|0-*6#&_B(H+=)!3`*ެjBXwQr()!5MNa m!PQ 'sHJ>g`wBXQSƼлg%}$W7q1BVlKQ㆏ٝ%y4Q"%$YblYtP SsrI_#! !)xOt֬P*H}TG6M,Dj6mI)HH6E#p0gbR?q@> neF/Pfm6Ɔ\R^weώB@,8?b#%lt414igaKxq9;I[o@kYYd9!rhuu=hk!h*vH܏)`s$ p$$*v!#%Нz#%sǍyUI }AH+ѲƳUERŘ`6GzdD9:j rmlXx,, GgΠVogXBA4IjШ#&haQ^Ƞ6@K$Ɗ"@#p5`=fZ6>,x.y}"%F@ jPXp$H#&r/%iy% Yk[<|/`Tp>-t'7#&PiS9+W>VCArm_!" !y~߷#%)!Ak𗄄1ת\BL*7aadzq#& -M,8!csͮcwԔIU(BpSFOT+;7(*H`EHub b@]I]SV&L0U#&wP#&YR 01LC$Tn]򯍦"4q9#%PF4;#ELӏA,hV_6:DUzAq~dp&rn1Hu J^۵@f@Hͭ,L#%3v"$trm)2lv/,f^HJm"垂zdw`(vho9#,\B7>b&vvv$0wBu݊L$Y"}W5M#%Kѽ6}dr)TO4rN!֔5hlMm]vK`H-4hcvLnD=~[G)jWn28nV`k#%o'ҋc:#MpbF뷰!3nцpB#&b$!#&yҤd64A%J|~q Euk!:jpt+7qn@1O@]|pr fRIXq3SP'@"dH!E(HD$ Sp/(#&+|c@68ˉt;pw/dR2BBp]#%4d!5Q_ޞ-VT/AvMn{i3 t?;(댕RLͭvlz#% e0< PIb )bYXC@xAYp2t`@7;:#&*AsqnNڄc7m[Rd K]p-X_gvǔ\ iL[59&?_V=H;4{86ՙU{MJҪ7~0c dRR0~pa7:Πlϯr-FM2 N4I#%S#&9]g?FkMCb)|_tCK]+kp|Z-y$0lH;#%Μa cDʯ1Ы),Ke/#&b9~m^8a)|rddg&h!zz,<#%@((#&@ن*Da؄$V#flqA^Emj[J\KrG39ŲiVl3ZYDF&,#&܅1<hD[5080ƈ#&(: H%:;: (MVje5#&* hQj"bSI2)GBcL4\$"#&"irX(3K2:fuo6v^﮸P@ߓf-U3" X)ئ,vGDL=j&Yk+D! Q:&><I"?\ijp—sW>,LV5 l$Cq :&l1IQ7f,QCXQ0P&i2$THM2"1Dƿ5LfTLI#\x7bᥓ:h#|2jf|8d_d#%1\>c#&WGh @5_I(P5ʹ&l ڵ-&F%u(E#&a#&PɄm,chQ7fT`/nrsa|7W*~X-~Y:sjM^՗j9 ծF`DywϨ|cFY}!;#%F> gz9 IԉdOJ¤{ªH9@6tlh-#%mZs'B `@g2e5O$TĐN7mE 1!Q!h^j&2#s`ѦT髲e}0T`Ԍ \A_zc]!2R|^#%MI~ 4@FbZ&EeZgvuiڒútΕLK +P5T#&*SMBou2zH!`iE?T/8{9a4L*tȎ!\HSn/~Q({v+Fi[~qZmyַ3dZc}G!MCwƵ!4ƙ i`è 5@a},dj1Gn0l٣}(4ij(g1ręÔ66~XX̮XG}0Gs o|+n&>f`}@>;e*c !m|)yT*'3aVTjtm8lE@PYٲm=#&~5$M:5D;~śYP`EH%DžIrY3s7|/ruRa lM2Brܺu*-cU".%uPQ61`&a+)ok-{~ة98v3}[4hxGCFE2(MCʾɤVޚHwi)4:љ#%oنDŽ7z5daJrDO#&\!saq k *<[@U)[B'ڠ&Q-eC~Ds٬WGxs9S ,Lg}fXLE'{9UhY`#*®0B,gdCC"-D7혴aVL\l71f(3/5((04#%E0nf-塱yNp2]6XΩ+#%(r!8 vf̡bZeSBSUYA_u" Ъ۹ŵ*t V@H P$Q< 3&ɵ}`zZoip5ot#&%.+I668pLlos2ґ+UTMQѩs:VjCS5)tml#m鴦W.ӂf6ePݘj7U'ba͙ })FEMZ\c#n\>2 "I_GZTĀ$P qĠm A$4KOA) |u6Mٻ7Nk2UMgWkȕhY-fٶm6'vv2+$`,d ȱg`;TM  aաJ/lh;kں() RHgIkm^#% k)y2ZW8(jl+d$*מ1+#%hg`]ؕ&ۊް~@OwM9WwO#&+,֊-f$֘Wn3JŲɾ=5YM,-uvȱJW:jQvQ麙]%mmVISJidXKTԦڦԚ0+R56Ҽ]Md)6i5.חn-WqʁL;`-KPQ)7iΧʭ-F* ז7 PD#6%.=iW5m* Bl#%qU„ 𺉟(ZA@&{kxM[*ֲƨɩI*+S)f\վ&mUW*( (%It07svZdRA߭@%cgS 3rǩ#%?fG.3-.l.bw14Jts;Ӏ~A*0LX;wBGQ@n^'Ү gO~˔/@ Gyn^9JǝLOw }Uȣi"jd/WI l7E^]3+ !t^vv]3A~nV8!ِk#rcyvRP;FJK@ُ;'4-g9ՙÈc%cT0fDbkp2U i"r?7T#%6Kcʚ7ekL|^Wn W6K>p΄?,UhaiF6k#&26!YbC^e"hhxڃd#!YRTi6w5DPϴ@{>t@`r~~WhP~()#&e(vXf[1"qc#&;o(ԙɸA2FSU? M;+a$ykf( z6[g8=~e?&@JF 06#%#%ރ|";/N9.#%#GNRl̕2Rhdޭ eo7$+re9p_5> kb#%2- 9HS|yJuX1j)4&# KQ11Q}7#&٩lHQaO7$t[mx}|w\Ya {}>v؟?ui(z{}{dI$I=ȇ@@ #&"B A`G's链}p^7D 5>q)r(ʹUdR6p4k֢.[J-JF& kP) #%̂5Kfݑrj#%ؐ\`c͠4b5vad5(^)sBH8ZM6Wï9gG@$zNihJ+*ohIiaXK5„A`}ys Í!{I#rK`>ѵDAL,+l#%tWjox+EV핋֍]5{QW5M_WRHq &g&Go VA{zܔ5wjG6MҎPcr6#pTxR0oO7y>H0F@Gl2* tJс"Hme\ޖ*ZZ̵T+ddRZimΗxg * dB@*%2 QLD"$じ@ͧ|ۙ}ķMDfvcMp6C.5VD҇HU`ekÎFOx#%R(ddJJULI-Jdod[<[\AF+vC(z&f0ڑaB$lbޤPwSmEiXln~p9#%X?O%q jrT8dG'Taa#PI%!q 5َ#%T:F$mFEʱlJi\PCZ1H!w"uޓ٬C)055Qf:R''Qst\#6 aYĄRD-`ߴS %C>a䥟cL`@"W}2;/I-MZ#qpu&)  jkf{vW-h@#glHbN@\,•p*T#&Kdha7<>U`3b"耔G)dT Ct@o#%8mOyse8ql1%`$oΉ}{7DSP/#%#&6qJ"Ogq.@g``F%I'OX|;а:jmy1lR|RGb5HE7WmI"E#K\hyamYo](1ЃʐwiF4J(6zZ!B [n1Te=-aޠ#%8tp>ر 8fB%rLO#%#%]ȵ6d62fdhcVZE(#%!1TK@#%*㟼Obh6hka;H+uνbCCc1J`6KFIPNlY)BI$#Df5#&Awi> UUzӃXs`Wn46D6&f`BhAm-t(~NSKMd pP)K_Y6~z+\V N@#&!1EA7IM5bssB-n9"x|Ogd Faًkn\EDđ#o/yzpprۿ)ː<DMDRL 꾷{pjhP<0) V"!۟JKI,f[2!w$0hmW:ZTdntNL_L8Wű7u@ [s%u gCZ|Tp'hAX/[2B-gɴ~>y#܎mn#&u1]#%yAlvNYgvL` 0od1OH7p1-B[9=IXw=/=TLX4#ˬed#`;:V+kk:d=Krd$CuxnF#l B@n-XAL! T߼r[$m*3)_"ǁVm ՎI$w xs"$-gX.\5 -6ܨ~NsJZ(TR9K6P77둯#&!8 Q#&@A&׀/ix]l)X Ex9<+Y~puk2Rˋ$5cٺ4`6~?r\Aգͯ,lflxf1ylVllFi'5gd>ϲŪٶn>^Q{)zTIP-橾 jq~/ X yt~&Y1 a8-XV&U]`gʇZP&| @o$s`^g|*=J+!A|?dcAϳŨl$/hԥUVFJmIVSo>͈3o:#%#&|5fvت}T,BuCKvOۥ9!` h =JUسl>{樚@ap'$}T=(mĕ@kؕ`X{7ԸFuI F4(ViKuM@@04Bi21JTVaR[RW*~P"$r()$OؽM/yḯX@8cbT4ѯR@+ذY xR{nɨeꥸ7ڱ_l F a mX dq@>n0exUѹʼnNLlJ$⊴GLd#&TouzNk?[-aUD FUbE]2R=ZXa+]|nHmv#%STTi B5en$t{pcX0c6h²e(ʼn0#&Y`6 f$ցWhAi0Tc/s݆͊1#%' Q3XjY[\")RaZlYuA0baGpV!EԔ" #%4d1ףYGJ!鷓pogEPoR J-dXY#X}24_?LtL`!G.udw!T)0 X0@XDe^tJ~ٵ@|(wE4UT^l5S6b{Xun0 cBQkYF ;"0ğT^28NHC %:#&ih< 2ubŌ@ttxla@0bX4ၠ>% HvJKC܃dwc,n8Qm'^y!"}ˡF>#%9YmgB8pqc˦L?J(7'H9gCUqvyw=vI z$u!#&anObba B-*Z(NV^ za>ab$ɘ8p)#&{0-{>2C?vnNA+TȊE;x6,tŃqh ")ШOsC,!JP*E#&,.R65uۚ6Mu45x¤v[\[kRtS.sF~&ږ$ KI53߅GQQ~d0R,TlJ\ 䘊"IieDJ&ڐĆY&6ZŵDB!tBf8 (diF(ѭ&ah}{}}^ %BKѿS|@y7B(RDT6("Х("4i|)TSDʣBf0ulL,=xrڎ"ApƅvzAlF{1Or-~LɏUe{,ƈ\zMO[[kfB?ni1vkLF~rT<垎}hí_Sb7Sw!6'NGr0_gX5ɰ4/jXTw-︀?%Du'mPDjrAR蒨>~FGi_ ;M#&$Q>VHA. EuQE[f ;#0ˇH$xMD#~怛LHjHh.jFZ""Ș#% xUWyb%ypD(ؔZRleQFtFIq$ F3{0J}X+HyìMߣZ#%~#&XIJlZ*껛FvbnTW-ۮlF[Qtfݒ2č)[?ꦠ`#%uUbX~v#%L$E$I#&#&{Tgrb?*ʶF#%"Ȥ"/Aۓ>j@ךXOwq5#&hF#&FGJ#eBC& azO8[Y5%m[~2*+)RTz%M%[^2jܶ6N$JT"!$-B,([+DH3oě~vP-^(5Bo?W뚉9I"E` Dr5}#+.+dB#%$$< Ge[ |:~9!z A#!#%рq&3Gu0=M"%@w #%Y?mXq(Eb blFD-US#Cl2c`FA6!ǎѭsYcήmlde+1c, HI&,geM" iIZRm?UU@RAIEÙ@ (q(Wwey ǎᐰ5<^u TP#&!UC΅Y`i25qBHWT8$@3pѝpd@]8Tᄣ 8[nk3>^#DAiaEYFTCxePcmϲք UЛ1Er&]OZ"BZ~oZ/dw#&*)"ȊAϑ 7H:~V͏Љ}|2A?S{ (x]XF_bYSb9F3)RL){bީ!\Ii]6z4ku!Mƍ2d -۱>0Bz@>%"ܷ|707UZ:ԂPҥ9=N14riG^ؓ !ˬ!VE5&+*~w!ha\d9ZM?<ѭ6L<9Ih{YCU6!$˧Hޣ{M-wHi^s'0Bm#;l٩utk·M#S0 #%BQ@a0a)}:|ןN{=@:\ΑЄ= beBky#FgE`,dρKa͘\g#& U;%6!'$'!CGg]v,R0q"@FGu|z - 5&PM4- *oIK#l۩Dll/\N{6Zb6 N,;zS?\Ja)y+I&d#&¡ 4to-gPѫ}B棣$:LV, IF/@:\D˻iuo@%7o|$@~MUƅ3ʞg^&MHE@m,ɦiI++"0"(c;)C}HV.A4њL(K34CfMi #EHI?GF6a2Af`BMe3=sm-676NP] f݃UK 02u%'g5 2[c6t1HF@ ͤ#&E*p0R2I٭d2II P}jXb7ZQ D^ʤw$E…CZDK3vmK1߫/Ojc83%cH̜wې[$ l!n\b:<'2P#%,C5cI0Z R Hf0֞'2#&`;htu8T1Z)aL6iN;j%.3jʢT pLKnm :NtDbnG6trXUh:4f81)DeEfH 8гK96VpjG\f{]MXE ٚ#j+Ic[m$ `0aFX6#&0SF6&W =*# L.A6|˚$[Ae[1`[ʣ+927)YZ56Muy.~ߣ}ưTjAP!tanŸp2#Dȅ !hL#&h̦3i6rVLd(0@2lpR?X,QYYYYmT6'%Ξyik~G[y uŒAYiL"E3x^]]{򹻪橚U66ݜuwu&5oo?UC͎9ed3@$S}5`8'.\Y ֵ<- L` (Vk6JF$T;=/#%gUh)Reߴ?@ hPn-Z}Lܻ5\':0wz4=;88_`%8#%t'{-.$iG5Y tt xqqaVJ#&Hҡ2d+#\C&BmG5sB*Π&襳Wdbβ0 zR*PC} *Y\N%L _`:y.b񣆛+ۦ75EXԽ6rъ4lh7kKwv33,3U"l[mzD0# gx~?#%H@d $A@X u@;[J\ #% 6xXqV88:QUC$b EN#&L ”$Ub$] raoEDUd Y )m2B:M{A@$0%Ɖ#hLس[iSV5ZMZA X ([Pc#m1#&c`LɈf@V66Ŏ1̠ (HDb. #%D\qi'믦U$ID#K^|u$و^#;˙hC:1I$aAzSn^39^aLLdU5Tp`5泹wjkV r2Fm(iWqƨU'w|q9;7q7*mOv3ɚ_$)%;̝,g+AFqҖb^xe,N̚3XO[QSj8'T VS^hR;uXlY(l%ߙ9OZYnuѼ0mn]c9ѺB\t+l}\>s2ar890@hk*8yo60?M>mawøtox+Jui#%876muc@g;2zi!Z}lU'q:mLx9 DnD!2s܆&铊[QvH`%{-ry(wbGț0lkw8]J*>SRk>C>5a_<~Ğ?Z\1{Q$p*/Xe\뽯o^e{KKoNVw]땼]mjƱElEeүkWj^SgXo!Y$f~!'+bAI&;u6S,?zb#%'Cg?]އHqM}$66 LZp5#&HŽsĭBgs#&ңI&@{ei+%R2UQe`LفI{DQs.bka۸#MXm'sKDI$IY ,rQbgH@/7hE&)AEܜ!1e!lՕ \Jxi p[TE;+TCյ[H#& Û2)Xy5l2ԇwZC>n7WdxpAJ,ܫUQ8̌<t7#&t6p7FVGp\,d΁VlgP}4El+J=˙{a5m1Fe`C.Zm(bp&H1 !c2s"Wak p鰆-[:;1u/4n\c#%ܑMa읦y>՚fV♨c~Gٍq#6*Ȥ b*}K8i5ѵ>1 ;3Nu\q M[mz'Y9FiezͰa+ZCcIN\> bymVBB6p{tUV֐Hr l2P&_fh)[4$-6$ugJ4hֿ<>mV#]ygϴdRH߽)xK bݡ7j$XAlV>fjx6}%!yp0,PQ$.413@$a&q#&C#k$3jsI,f镋~׷_`6^9L:fFA"r/*-A#%胃k|kbt( B[C\Bm5'6C ߘ$vKrBoT2,m8DCͻe,|,5?9#-9;,Ja^˸X3LIiXx>p)d=z [cCՖ²cUvŧk!8:8ITTabeAUڳ<;1b+a87N8TܘR9M]d7FŽ3AZ+ȣ(Δ4-9kٍ9t6t2()1*rT#\R"O%U,4ly+4  h|z4c6Yv7ګ&7-ƀ0Q noĒ2Jvj(EЊ,0brTzb\„z#A(k`L gq,#%`f$3"A"12jH됗Q@؁Cr-a!۹5tP@ilxH,[mSCd< AZx!\Q ;,l l $"u@DJt5"nѬJ=s.^gߔUe#%#L'|#:Zv^b-/k(AW.g9Q#p]>ZV,}c EjC *ªԬ~$1"j`H|'*WO^vstCv\I'x/"RQ]gG)eb\ACo*Hon׉8 B͒`QU]] Buqk K^<7!*!& j%Im+a(=\,ʳLP[@3ӇGX@ؐ|A5ۧԅ=UõRYj+c6`;s+4* F`jA#7&-;GB'/CPi 1vcoomՕLZ6RDD;Ȩj@ХT.!ruGj#&PV!DsV/c]Eh..42$+VLC8Eݹ3觳!Lz*H"!hsM/P0!lapx}1hKNܛ&RhS{#&bXՊb9q'H !;BX=3 !$LPzK)^_h{_7w&A #TM&i+ A>ͧ\뮠y%s&d$$ۻʒEK,a?ޟj#%aVI9/om5ڃ1Iu9@M̢R'w^1 5$B$+=;9½õ^Ё޷#%ѨH5ؕJAmzQp-e=< KRuQ JibԷ[E#%|qEQ'F*:L#&h@B2HIZ{LU@4.A=ߋ/CZ KXThOW_ekR[wMKsSLJ`(N]hQm}yDȲXƝҋdĂD @h$816Hr׬IZ$ #&"Hj6I5]{+OwyJ3 C3I#BlBc`YHPi#%~!⚂8D#%aIF4dC$!M+j4I2P!ƢR8:DFELȏ&O~3l}AthOUJc؀r$CEJ*W^K6ƳJX<ݼSPZJjTl2i5hm=R0s6%݄ [cj!!6E|qd2Ӭ8,*wЖiw9/IPF8Cس Nx70cnTYOUD8̯k4#!i)ҎH]6٠Cp|pdI %Wҁ8vJse]Sʓ%ݖ8'UX*D_{߈4&9"X1.Q 6$~mQFeS<-̬٢71΀xH} h`s;Ƌ#%&-E呻g,}#%3`~-moǯnm"GBs@w@=~N1$ayԑ$pM*RI#2 rS5=9!M_V\Dv"C$΢BCM?RCa0#&K6ÅfZf}uG ;[hRI󣱗8㵢r>{xd; sgz#V\\ +,a%oVZk 0Lt:B{6PHf/ɼJ” P#Ou7##3ue/sDc{iS4$#&,)h̍#&p'_=ۉOͽ3C!H_HQ1#&=29EA(jU(7!._3 1w$S .L #<==