From b7de0bcc78b6bd7a8c36b29f38131c4a9721766d Mon Sep 17 00:00:00 2001 From: JoYo <> Date: Mon, 18 Feb 2019 04:11:51 +0000 Subject: [PATCH] nasm waf util handles yasm builds now --- Dockerfile | 3 +- docker-compose.yaml | 2 +- waf-2.0.14 | 170 -------------------------------------------- wscript | 9 ++- 4 files changed, 7 insertions(+), 177 deletions(-) delete mode 100644 waf-2.0.14 diff --git a/Dockerfile b/Dockerfile index 16cd3e6..c8abf02 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,5 +4,6 @@ ENV CXX clang++ RUN apt-get update && apt-get install -y \ clang \ - llvm-dev \ yasm + +ADD https://waf.io/waf-2.0.14 /waf.py diff --git a/docker-compose.yaml b/docker-compose.yaml index c0e48ee..d56ef09 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -7,4 +7,4 @@ services: volumes: - ${PWD}:/app working_dir: /app - command: python waf-2.0.14 configure build + command: python /waf.py configure build diff --git a/waf-2.0.14 b/waf-2.0.14 deleted file mode 100644 index 9117e95..0000000 --- a/waf-2.0.14 +++ /dev/null @@ -1,170 +0,0 @@ -#!/usr/bin/env python -# encoding: latin-1 -# Thomas Nagy, 2005-2018 -# -""" -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, inspect - -VERSION="2.0.14" -REVISION="e67604cd8962dbdaf7c93e0d7470ef5b" -GIT="353ffefa21e6f8795469d118d8059aa16ef49109" -INSTALL='' -C1='#(' -C2='#&' -C3='#%' -cwd = os.getcwd() -join = os.path.join - - -WAF='waf' -def b(x): - return x -if sys.hexversion>0x300000f: - WAF='waf3' - def b(x): - return x.encode() - -def err(m): - print(('\033[91mError: %s\033[0m' % m)) - sys.exit(1) - -def unpack_wafdir(dir, src): - f = open(src,'rb') - c = 'corrupt archive (%d)' - while 1: - line = f.readline() - if not line: err('run waf-light from a folder containing waflib') - if line == b('#==>\n'): - txt = f.readline() - if not txt: err(c % 1) - if f.readline() != b('#<==\n'): err(c % 2) - break - if not txt: err(c % 3) - txt = txt[1:-1].replace(b(C1), b('\n')).replace(b(C2), b('\r')).replace(b(C3), b('\x00')) - - import shutil, tarfile - try: shutil.rmtree(dir) - except OSError: pass - try: - for x in ('Tools', 'extras'): - os.makedirs(join(dir, 'waflib', x)) - except OSError: - err("Cannot unpack waf lib into %s\nMove waf in a writable directory" % dir) - - os.chdir(dir) - tmp = 't.bz2' - t = open(tmp,'wb') - try: t.write(txt) - finally: t.close() - - try: - t = tarfile.open(tmp) - except: - try: - os.system('bunzip2 t.bz2') - t = tarfile.open('t') - tmp = 't' - except: - os.chdir(cwd) - try: shutil.rmtree(dir) - except OSError: pass - err("Waf cannot be unpacked, check that bzip2 support is present") - - try: - for x in t: t.extract(x) - finally: - t.close() - - for x in ('Tools', 'extras'): - os.chmod(join('waflib',x), 493) - - if sys.hexversion<0x300000f: - sys.path = [join(dir, 'waflib')] + sys.path - import fixpy2 - fixpy2.fixdir(dir) - - os.remove(tmp) - os.chdir(cwd) - - try: dir = unicode(dir, 'mbcs') - except: pass - try: - from ctypes import windll - windll.kernel32.SetFileAttributesW(dir, 2) - except: - pass - -def test(dir): - try: - os.stat(join(dir, 'waflib')) - return os.path.abspath(dir) - except OSError: - pass - -def find_lib(): - src = os.path.abspath(inspect.getfile(inspect.getmodule(err))) - base, name = os.path.split(src) - - #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 waflib -> export WAFDIR=/folder') - - dirname = '%s-%s-%s' % (WAF, VERSION, REVISION) - for i in (INSTALL,'/usr','/usr/local','/opt'): - w = test(i + '/lib/' + dirname) - if w: return w - - #waf-local - dir = join(base, (sys.platform != 'win32' and '.' or '') + dirname) - w = test(dir) - if w: return w - - #unpack - unpack_wafdir(dir, src) - return dir - -wafdir = find_lib() -sys.path.insert(0, wafdir) - -if __name__ == '__main__': - - from waflib import Scripting - Scripting.waf_entry_point(cwd, VERSION, wafdir) - -#==> -#BZh91AY&SYCUT>5ģ 0E(b|s׾#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%[y˙JՅû#&nvkh3c5We#&[r}O4+wa5vyogq>y}پuOmJgM;ݷ{E۬@$!^#(wgwvǽyc$]Ga\bRΦh#(H)G :oniJ]Q!{z }i7olQ#&#%S4Y`;퍀uxs{aw:=={ٟ{85ͳlu>{bvɺscuj{77.7r{{oxnGu}}l4fwϭwe=0ޙw׼v/sݬ굖lgh[;)mNX7@!ݣs]k=f=w#%(r8y5^ؕ#(hM½ݭ#%ڼmvc0޵ڹ\eۺ.]i'YM;5f]^7gZ{{of(ɼBv׽"vέ׻r٨﷽w=7 _i#% #%&FBim)='#%h67~ 44&IȦ`$#&2yM#%#%#&#%#%#%  24#%~%?)iD~Q6Q#%#%#%#%'RD#S OTG{T~0=@d#%2#%#%#%#%#%D#%h&&@F=#&'?MM&4 4#%#%I #%4M46OO£Sj~5Oԇڧ#%#%4#%#%Ow?׋mNU &LWƫ]$ ŦO}UʫTUVI?I?_elM׷45#8t8|,O|@@A" ֹ&ɪck(GJi:ubᑶ# ]U"ruNްp] 2SMR1mg!_r"WA6vMkY6ՓRH*HȈ#&#% Q$PÍ-"IT `"T b#("{nkZ[jjbWګm֩2J35#&3M&0HڈK#%J)a$J2Z3IdHMJPHjXѢ)6KFE K-)@,ff1#QڌA6C-1L4iec)KF"[JmhfĖ32fBh mmjJ6Rjkc-Mf̴&b(6#fdlHH)0*$lRT3J16!PH,@2#$!X!fDLS ̂VX31"Rɬ5H R4ZSLbJL24dѓ#("QI#(lh,E2E3HfIhfl %Iea"II"MIE$IQ "QE0c$)%&Ѭ&ɩ"ID%6@"l@I,)2J&؉")Fl2$YJ#&dM461Y,D M$R%M2jIeAF4)&beK#!RdM)Fa3iBH$$Rf0"HƂ%a1A$ʙf()lJ"fCR)R#6,YM$QFM14Lbe$)332iD`JM52i!) 4EM,ԩJJh6FLdȦY#)!H,UbI4Ѥi(ib1Qh4lf Ib,i!fD%)Qd%ٱdY1Ah$MaH!ă#&IcQe(0ZҁEd"h,!(M&R"CDjV֌(MLєҊIԥ)f1Ie e6hS-Q Sb!J#4#HJm~ka͢lV*6LiI4hii Qj6##&CI$YL"f&fl)lmE!hɦ,Mf,hXԂ&L5ʴ6P2ȪU+0͌fDkd+"T)R#[#@dmEk,Ii *j5hPQUQFQR%4DbZ1bhZLX*4J) LJXcFdi ڪ* KY4IR1!MQdJlbU,LjDFK"e5MMk,hl[+,l  D"Ł4`b$HhLbPJ-Edh2i( ,R)4l S1(RQL1Lͦb#(a@Ć1%bH#!4LQJdRP5BThcL%*eQh@QJ6e$d#&#(CSXI16KY"QCAbIEMIK)YJYƤZQZ3DT4Ta*X-F#!&@4ؒ26SLllmlY63IFD-3Zȍ4*fK HAf4mF k4%1 4Z-Tj5bFfaB#cأ`KAYd3(b!RJm@F5D(LATl0,#(jiM2QF"Z Qb,FRȩEQi0DY4E3(ZR*lJ"fڢ5`S*,FŚQl+֓"[&6IL)QaAQh#HRL#&YSflLE5QS+&#HSI5EM6[)%VFK-C-DTUI*(HȦFdf4Ԉjf3Z#b,[FeY5f-DlldU4Fѱ-3J!,V%b*66*)MiFbHFI52RVœlQ#&"IF-#((T0ƍi&%Xش[F542Y6!mF4eDhIEY5&f*"#&DLE[R,bd?vCa?R_*t#Xt9h- M ;o|oNoCKze5#q/U6#mz 3ӌJ04P`tqK႒A0U#wcDHǬ3ZI(R+RXH_G=ŷ8=EZMb8wpu-,룒ferpC65%"8'%Gv͚ZFFcH.f2cDDvrhw.Լkse>Y$uS Ś&U;1̠R!Ha"F(M۩2։M^< -#+sI` k{,?7p (R;)L7acƸW)-)?o=Dz6"a6"%c\ț3sm46'3۹rQjXж (D0V+=No.U!6ժņ{wהc.\ۥUͺyhب5Z4E}ү[LmC-֯|~BXxxf{y2FmӲ!\  ƨ `9xIoR#[aDMu;GJ̔et9̅5wu5JAТE)c.8b_U膟Ƙڟx _ه=0Z@G!d%lՀIKb1ha$ (BIʋ|{+duG^zCU^?<#(q-e''Vv%Ue[}|H:Z6LT >]Rm<_(W#&^adMCRL Ɋ_>tdc#&[bVDF #(hӣ/8Br"cʥ^V6V0RA@P e$Fd#(doA` d2xPPc+) U>mzm"cR|;+ڀJR)trRE\5yn e*P5{o\clPxwG\ţd}At'=.^O~KȲ"4~$P̠#l՟rIC>gݔ25b/I\$ZA`նKi(bCiZ¡CGҊeJEvYթ.嗧u XEF#((SfZjASwPJ *Ó#(dKMZҗucg"NVlV'Tl$#&.TO7ǫ0ma6wXbۈD<*!<9k7Xaět`j̰ ,1S~s1y뫔?~/g #iJk_Jg<>_D!mmNNky)%Ȗ7$a4,X}n0gԇMwyl Sd#iRT#(RJ#(˜(>N<{eD&gF밵_ q\:fp,wTe @%ǽ l5{{ Ii6а#5K~F^Lz>TsyU'JO9q{^Ns{x(lo{O֓2 zQ(Rj͙]Uv 7uvC#ߔƜqE;yN&?31O]\<'k\3Pcq{[ խW+#7&!{]\kۺ1ictky뷮֛I",P>aSם) #&`!~dҍ,zcK}c"ʈ#&;=*Ab1*LvLvӄ/Cc̈!]A ZۍoavceLy}nkS}jOO]ߟDIRum_[Ƽq#&u>m_!7(Ϯ-U-Q_XRWx꒾梾D(*Oh1TPUJgXnmUkr6egsrHھtj]Rw ERr6ZɌ'ۖzGv(J|kO7kLtf*E{y/?$qa,Fep&*W}#&X}(TWL ߳7:)x1H0W~#&ZTҬ[(C?&'L;A8FŧS#Q왯F#(ciMv]|$WHm$s;>-2v'ffD:wì;FZkC>kpf0RŅEA$ 3HaP2{*0)SJ:xL䔤Һ^͏S!1*6YSo$yZ#&tdqj+6B,`8hݔ(#(E.U<*#&:-<R唠MѕY\ׯdt,K)M괿B`RO5bo ,ahgeN쏾?_*Yz%x>]$Ebhp"ѭp;wy;̙Axeh䍨fϞC7gTƾ+g1U 1!Q Y>Pj]ھ-8r[Ҽ!Tݺi=,D"p^CTa#↗.\2V+U׺ZuU}f9HDUY,p BnJʹpt {\#(PЌ/o*棗tS$5T[K07/>=:%o.6ow1^ އq׶%Dv ~jcn!e=c/U]o>ٶuToNtH]-d8.\ӳSHٺ2$*:`OA"/cۉL/ݧ=O:qbuEWZ#&&5OׇN{r패gv͝*E٭JUQ'u\>^t'W8Vb|35@,:#%tq"%V2&0'i?6{.mSRtk֮O2*ӯĒTGq~#&.r> qǟTi6=_#Go2je斛ϕZX.^w*ODײôayFJkA*E''Ni(c_:ĸpB9PW6j'JSq˙VZ#&Eg=ZrK4[wU--WPGk~O 1(%1ǐÜPLpS:cUi0G]cݼζpSU֒ڴ-G:H~O#%Ct8FP#+T T.1bUУۚRM3,+kSLy0 ]I;1Q'x1"tгDmOUBSaWڥZ{=uBL&3k1"ZZDbd{AmG1as20з^%UpʌL-GqUG_̘/@x5Tk5PҧFc8IwPjԔ)TJ(2TU(+*jۻsxE.::/>X Mod?gNl6:ˎq@I>2\#P)Ӏ1O_r@:?UP}4#%'F?7#&ig?'^`^O?8ۛb'ǥko=¤3 %_f$Ւug؆V^Ql+{#eJcdٷ;&>rjdyìf#&rldiɫW^-G6Pg疸iSGtJ*m//Le'LVj:#&FI#&J>JC#(%ȇX̮?]\](aqNyYˡHL*kh[hhhExl&6۪u\|",GmبYF?OT+틞yUT{;tQU~2,(r籑3?Uf"j&ƛ5Ygk qj"ڛ뚴gJ)Hg;߆J$6Ҽ}/$J`, Յ,gڨ2sJ*+p8MH~1Ijn8ntm'ki?VcE`|2r2Noxy0mR:+?)X+4ͦixӺ&XZ҆%3+˾8uV:7Ͱdw 䵚;.Uqi96ד۰#Dx=1FdV?b#&eÔ Oq"!0yP)sj6.vx"V nys>ɒ[( NXص+cÜb'0$!!"QE"X*=$wkkpy.Vzї"7ٺ-|t #ZK)2)1A8e𿎭ZocAy9:6۷mݾ|a#%Htv:n(#{7)r>>w2c}z^gc[yAo(HXNюmv_>0$RF@]>nHx3h$i}- =㶜v#Ll܃BT`)64<V:ww& @ʎTrJ&æs/KH}"2|AqdG/ zvNWl\.`z}jv-J#kʣ?Mrڻȋ@\j(er[@Hr~E\uay4d.vVAvmM.ytm4AxLxU4K u<$ܣ(gZJ^n)6o4CȲ-G%nG5mV*)D[Nmf*٠;=.X*[hD,U GRFwrO[\E) #%tY!/~~h~7==ǧŽ<%@!&)82CFX 8fF*?k^l}۷p#%~0`]8PP uzNv8xxWUQHMHvʎ`Q9'Nh}`ƜJ m`#%AtXG:7L7>DEDIp糋a9y c֕^/5"mW`4A&c#%%;#%1oO*d?n_Qz4_!#1QwBd ~M.j#&taeڦX,^t#;aD4x%@)yFQjis9>~+y6(R읙?)33C07lڎ=/0p}\+~7wZ i`sŜ~?o{j$#%q_cVS#%03>Xy32nETZX$gb~ :yĦolVEvFᴶѤ? xTh9(D4"rLSysor`עVv^i& _ͳ;Hx XqU}aMxs"7Z֘'DlȅEBgc"徯Bl1{HУ/j8"fa;DOz߬I'#&c+;$n;#&8$v|^>MUbD$h7SQǤRNԯk`ި КI(\Pb0`C[!&KjJYsK~E#(*2-¯2aLo&#%N4{4(eL$0OOǗh-eMGҮD^Ug/];m9)i5Zn0dyw՜?hǺ#7͚yx/dG4i 1`A {Bg%mb昦J(By\lKcHК65CMCƌaX@ѤS"4V-,KXX6@#(01NՏkٿApۚ1Rx1jm4ȣ&mD#&-ȡT0%9XвpX5XAa $@U9meםj)~l= ,M&Kt@k=[ha^=S!uo#(o gctnmca,CvAq`հ\8r&AڨN#&6}I-jOfvA8P#&U'̈́$a'"+v 8Y)q NCw=~MtSnc 'vH߾(:Vﭧ[0:ɱ.z?#%52IAGKh3UE' SGڳ5J J ,8+ Ilfҕd&ưuyQZ(b>6(=b"=?NP MPg[d%Amp* 8'uJU'Mw V//yQ9"z`L6Ȇ(q7"#&tjbaT0Y% 2:a#& ul#&dQE$6Tu < #&V#R#(RIH]#(R)DaJőУ pLʼniRa:ۃC@F5j#&Ć!L .7{w0BJ=#&H58j3>\[A2w.#(W<%ٞ#ɶnqXP6k_;ERi\Dx9iȦapp6n)ɱǥȏm@nP$\GgGK %Ww/\+2Zd|PN,[&!>PrnC#(6^tjH!Msxl[fCCG+dYF0rE$ sl:-'Zt/<Ԕ,v$ & NlĄY`/k:"#҇jc(b^[3Xuǥ;^>m1315) vd./{|y#%>tsV 85͆bcMԈA׭[YsO6{-D)C' ֧C#(7rҩۀTD$/,W?i:kc_^ǿ*fV צx{IvNF-9iͤz{{ѱatFmZ-mmZ,B02;Kd<,F lh`P5f.^א;I*+Pji+6l&uc>8#%JPlq-8Vg 썿ho9xit)vc%4 M~nh,ڠx░̞x uGG #&Nn<#7?P}ZA_нknW)ka7.,e~"*&Tz2W4+,PD-ݲiX-9b~~ߣ#%6Cw/۱ٹ}#&ޫtq,am?wv,yဈij`;N6.HG{$._!'.lw{= J sR̪Q21?b2|3Ç`X#&?Y1ⰮygWKHmӊJۖ~ #%#|/5`QIˀ#%  *Rnnpaȇ?$?7_wm6> qkt䜰1TSͳnk5GsYx[OsJtkBtzwN6oGtpP6=E)#&}Yy4ahG0B.`s6!p#&9JsޣO+3ǖ;;mɿM{K+]u'cfC"yY;d7Gttj!èOOU #&?:[9)=6Vh&AuiQT|1^Vɥo5?؜E226-9H2(nhPa!\#&!|b@#(P( 1^s?Zw't>kh?Gg%ͯvݏzDv_R}:h]ZWH]z9~APhq<]=w >߈{GGXa(\&{w#&N #(/OM1-@U~oջo8fn;fæ?G_GJ|OxiP#jtrx/'˚#(>,?ۙl;;?aL4p»8cm @D3 ӷwv~_]>[;.g~sY%v4Q0'jrJ0$Kr B koAp9pxh^?CymY&CI$":> 8xk:@hP.e;Yׯ&jB=Q?n /mop(7j["U5KXIғASAQQ)7ub;4OFe}uWnr_J˹7Tjߪt-ϙ2f>)ofq|\?8pFL<^q0/Sg[ka<[WCWr3|>&˹_zI'nPo|d"vձyr'.ճՎwA3#&`4 5t$>C-1Q?%Rx_uD)//X {Ll/1VAz>r*s#j%ePr ##(~^֠Jbqx&(vh1UVn%l.`Vj5fYЌ "Vإ91LVDRE,h5b9OX,mL0lRDuC@9$mhi'~෣"?sД_?%n o/ɍ2)M vˤ{#N4 -glLj]uuo]tWVװK=#(}ќ X׿(&e;eԊ#(#([7ʇ=Er/Ae@&U{~Xx<|k.PU"`g\z&H9Y~+@Ll$#ipkvp3 ̱A'cծQV!Z#y#x8#3 (4Ej,z8KہM3Gγ<+ A÷AЬj7~20ՂSʘYsdX2.πee:G5h|joV#&jhfk|L%E%٤(E&I`#%Z7rƣ-u#&1llX -m(UzFXf9ۮ^\.}Nu(IxZnwf<)J`٭Ҵױ?QS#%Hh"޻ss>.r4y$.#(px!i ~Ssc?yPj:9~qBߎtz8GCPy`Igm^Sh v-#&..TYm1bҪU0i YԎqqJ1J>sU]:R7Sq;oI745?4hݻjGzt(qPGcE|'X#%Z)tA#(ql4hQmm]*EPT巏x2fe q!*r zϛ]ue2O? W?n|ɠrҴ)12 N9yrezwNj0 FG[qN𮋳 SqF⎌1ǕTR5qѸ!K[0C'MY SP-ڌ#E!dP.kL/! #%PDJ)(U@CH췑~C6J3%FHp,:y#(ixpMDˬdna7`hN0Ȉ긑;CN0iၭFjF26P2-c+P)22 Tߴ/.?\|ZAn!A򩍧NyfL+/ Z}$?C`M\}w*gc H ^(#(Œ{bPw[mf5e,f$PAL^-3`Qw,Ј҃9i6!PSXU{j5O#Ś<N=,9}'pF_smA#(#&:M-ɰ{򱍣N438!bc`X/qRa'j#1[یas ӗvA#&?qL7HI m(_F:Ƶ-#%]ڗP>Qc*eTpJ]#(Ы;h ,nv.#%% F #xLRx-nJD}J#&n47Bx(6)x\xqCFQuVM%p`gt)uB,7moˎ{HX뫣NLS(ij0;5KM1dፑXe '91#(FoNvJ) ssZ+ݰ,+NmO$Ԛaa69qׇAߦrֆ|amR:Ƿw#&{DiC:xhy-a}v>[S#&='#*}yfյᯡq9"'aMmM?"OnBjmND\;'{ FrI5Q&㨇RVLCLe.ZFUB@␲|6|†LH5Q[)uIƟz c\+lMgW,_CvODܳ8jG&}/&EtE6K#htsœ5mwDj1Dnl(!,qP 샙df_Ƚ[w61s#ZO;i HQUO(i%uIk]HڠabM9x"p5';zd~#X8=|=rظ>\>] 2倹iߩSKē,My`ɟ@HQH G O*_ m f0[h>7 s]"ef!P^ْX#%'߁5ldw#,l#%txZ#&XXbJ9m(37lt)gqAAXrD`)>Pv[ɼqN9K֪xήv#(]mHZ.Vvڂ6Ӊd)J{ϿYw<3%^i7gՇ,H #&3O?#&ȥ%[YpF\#(Q*ی[&-hK.֜xg}ϦIb%0&1CIIeX;ݪIHBL+,pm=Op{#%I][mRĞBwGmm3:O#("q([70?Cv,׋к7r}9n:N/\ep(Ds dSy` Yv\tEn=y5L|PdɅR,6џIη 7jhėoB7bm>qݦ/(iagƢlD-\5^xi?+K\QW˯ZI2C I^|Xtt{2,K!v[UA\k$ wG<'€O\Olzα9&ZLHDa1⠣h:0>8 L:- @~n^DqӟwjGEzDY?5cQ3h#2л#Zgq#(d5lL>+BƂ>?#S 2TOs;q+r`qLÉЁWHqn#ywM˷ah?HyYGW7I.kSͨ#=`@c#(ondH:s`߮aUE5,e즑۠lΔjȼ3=5L^<3_/&|c sYk*+s#(,g"'ٛ{xy%`qG1'-v)#&u= 5uiʐF$yP֖뢕@)էjS|TbEřqj"WC])V2b#(NMnqflKS;Kk$sLFFJ2>Eۙ ih#xոٌBl$->'ni;6sue.V]Bf~M鰌F &ւQnnϼv]H$bQFAQ.y#(+г.^0bHn8ljRrQ1k]%gpD6Wd[l2o(Վ\VӸfL6$E)}'}'ncg6|$ PMSAͽK5/]m7 $r.ͥ بzi=J7NP<ǝ/)7ףQRȽ=#(3j+)\Gc}n|6pW`neB{ =ԆBKʽs.\LrN ^`h1K&:r5bh[#(xӑD9yR6ZViT#(3XW (]Jl_'AZ|YOY^g;r篧u㲚^Ot|S3Λ\ EV; ܇ע=EMK>qnABZde'/"vSvغ1dIa(OQ9~T$#(]`{#([2f6/eۥ=}Q'w {K<1ɳd]n5=WBĩcht'P9@ZpA-vxCoY\TUΩee2޿b P##%(R#&N&MnyN!6S#&5͂t%/27LJQd^E/{éWat381+Ow|${!=Uϖ2c7PizN~`橓OLosvPI]0fo)2*t@@Y(~Z#9dC3P]aW ѳF'y7۰Z\8 +kJ%i*wJQE#PD8Jm+IY)Z<[ce+ [ٲ!\iR-A b g=2KiWƕܭvѥU_NR.=pxmUWt 1X~h2v5 '4;tDžb/N:LyPBr-aXjsov>*,;Nfc E)[ȴ>,3PU9LxuD#(w#%{KU`_<ݢPB2ITVDsS’7_ъ }g佞^\pd(W6UAHYI< ji1[/_ bȓ{S*-p<6UTrMa#G):0T&^7&vΥ(b4SHiXIb).{,%U0×#(ptV^8 rr&&o!j{+#&@%yp/X:2aN·XGSrHL^5RJM,uL7A&/#Aj8TјM"L1ʗtA1%#(,J ͳf#%vCK>klq5#(O3&x]p]{dz 6JTn|ųUNǤٳk}iшDK#%C9F qIJ#(5y#&6 qt}+[H5LPK6gb^J莭SD﵀pp냏z ǥ'#%M3W+y ㍢\97`]'M,JtNU:mi`BNTo!L%Zx@tjyFAON?{g*@u#&ctf)9Ku:mhEd/(ΝJ`Q l#(ISel)_Ou sdh浀v+#&>QaGQ!63Gyru|/Su VY, keI,a}+**q[ݩe 19ł>uHFبvc|m-|bRH2?{?Z3_uN%b->YQJ`sȰdzBn>5&B#%CFМ pg :aO7Cb[Pljr|+Nxk_grJRK|ZaW$&0Mi?!D!@7>od5ю]jvDY5D/ul-vmo$^lI4:76eUw /dN;j]x5YBj/e%COښrIw0O];ci!"`zX?#|a%Ok9)#Qժ̖87J'M϶fqJm7!buGSMl-=Q oa>57ܞuH}$!yO)M3 st1bf$"ك:>n 3m;;􋕟$^#(Mgݻ\=w$_pkk(tU(3ǭ~*xg#lImyLƢxռ]<3ŴM Vh?ئ#&i>[I,#%l~crgz(U Z u:"D [ azhΚKL^v*1.)Fo:sC It#%EBbp#(ӱݳw׻U:-&A4!;N f̹KKSZF⽣VH>N2#%yBSSI&n[eפ{CUnei!v=kj⨫0Ynz!v+iR~=Iャ7kUC&ֽ7e8UKu9K|@咊 /g^$ٳw#(4#&Ǐ'6( PۏiGAI^ݑ#%P3ĝ-YH$ dJl,1(PqɆA,a3#uA 澿ĝ?.|-+P#%SPO֊9dIhE=~Ljg$ ~ߝq*+Wyl./9.rؒ}FH!"#(HQAabDD(ALWﱾ$f{rk'C;NdUR,B,Y T̽^NmI14WųeO6dZa#%cL z>Тb D>嘈aHUVd[t| Hʅ2m?{(Plr؈fжIsPEpgH:B|Aڞ} |]KBռs6]wg/!l-^fO~B=V7c1:DؒJl]!gTbpbO?2"~hq,!L$?B(5.ݬmbd͐'B!ñ4ߗNo^UoAXuQ*x.%Zn5ά/_g^;CgsZ*'d eQJf#&?7jc#&7XǾov:L,c#(7AQdS_4:!~=I+#&iPeK@OFP;\CgdS,ҰŔu$ɄA5#%7EWPe?&}0#&Qf.;XOT:bXFbO4JBa_0l|a:qǵ]_lC*rh#&njfEDn~8 G#=wc[]3X(}uI=r(-Jnw;mDQGoz~z5a؊ULc#(H{' i8cms[9ut&4^tM-Sl|HXM'kH8klm"᚛H),_WMyt0˦gDv.#%\5#(vBݑ~[Tl^R$#>v^ ,etUݹkЩ~r"V¶rw`!n:7"c;#(YܭC+){Y,uiђj]ɑoFYM7׼(g:{qxnH;4JLmP? Fo6Ca7$&Q@T0RrM(qqoO}n+*`ë!#% K "/>^-yuRkTBs^luĞ@zlxh o| hy@bR8-a!+W#&Dt#<x4 fPݵ>CHoIgASjG#&Һqm̰Bfb [*sI(H!&6)7"p4c4I$$:\9>#&٢f\N1]oQ׵2KN\CogǏLS}/zY6ļZ@pǚ` GIvvOYD(h9r톸¡oSP!x5!ֽ(ӱkV;3d<.̙"Ɇ2$I1gy]=Ns@xYf5wM#%B0ʥeؼ#&Ĩ5A_|3_untLX?4(a%R#&A3Bl{qRp=g=Qg¹-%̓˙@k$[sy!0#%*+BnS݆XJKDHK^X^)Js#%k^2?,HC>YeS|<#(B23zȎ/I4sO*V"jTS#X9CI>x;8]c5 ռL-8#%m? *$~JN:B+\i|"$R5#(.)iV8z{nbSJ^!#&AZP)Kq:3Vs[9.% 1$VƼa+V1f6)8wL7/>Salc*^T7D5d~w_Qsj}`ua(0.UM<#%KW&"gLzS_mTܶߝZm2t-#&.5ҭ9-m1Hnd^˱͇j/2M4mb;8u\MJ"cct&Imǥs#&*035TKʔ֎C1iJݻ'nwaq%!)U|y%#%k,P!~B1F!#(td|{k208uyߌ{}ITgׁ** ?ZF?@#>7>Vjwyf`OΑ5a5|q(MriuJZ2T<#(@9JF/Rw qRb=ltr>6'D gXuS*#W;{lW@*J!qTSlcfU%F-{q3j2zH:!-]h#7CN#&%#(bc߉,9Gnz.8Gg1S@dnEAR9O kEsHIfoTC2<}YG8T!C^?BgKޱnW > !e(a@E9 EVu(0sY舶E#%_PPfPL4`4R~[1M%%H) ;j7h,E#&\PLN p )@BQv !\X#ÂD#(Eģ#&HBl|D3#(<#W}S:}a_ ! M5,K*yd&5p?GyVJ\8XEM1!^$DžT/kLdfi!mt֨yB%Ϥ%ww{Nm$59#%$ۚ/eJ̑[Wcx)oI02DucέdDU}>#(M+tRlL)F"P%ٳHd_Tq^@ih!{,rgb'B|p`6:$X}ɼp[W" Ҿ3q-Oxt3|nI'40UE$Ec#%d5s )e=|t Oz\R,\ѠcUmFhRF[I)-|*'<64~w5#&>}xqBYˈl#%MьI o>%*NXd9:ឯoתjG5͋Wu J:U2hDd Ge(*IADxAUfPq daR"h :RK]#&e+;۞ِzAv!t&'n!4'7L>58Pd(ʹ'䩢WRJ dȰ,ruE@9<~&)r-dj#(N_Z#n4uf޽Y6vѝ.8#(`MŘ$ 811i}..7叉R`]QwْfMWO6#%ĢZjT &dKlܑ|wz^܇>CUtJZu\pҎU_S#&/s˲:d,J&=@C~38ћXHNh=y~xE^kId}uxѺcSK)vNۨB)|"n 4ao;ͷ:靝EqAOͲUNȰ<7QUٕh*2-)m-#%jp#&V ‚\pfdfmH#$}ywٝ.W) ߶P.C26vsgLdq= q#(PP`Ȣ hB]@MuZvs=hf粻_*=_'VtH@B]Vb9_|&XُQusPѷ 9:Y1-HCĕN9fо 0@)HP86ӽx⦅u74|JK砟ُE#([=>nE@c7 Ѐ}Ǥuo!#ȃcTM[ʴZn9Du L; !}JC$AeEn&&SeP+ѤmRT2rʼn7>jC'!Ahg@p۰0 L5)/42bڏ8Nt)#&*yH#%5^eD](U;eP^q;aOd&~0$͆=^ud#%ɉ*iK>XB0X7ʽE򯦧̡ȫ!h>ͼ3:)5#%?zN~n.%$+D+A:p^Y #'m#%Lq#%MoME.;#%1Ui1_AJ8)N)*0GGwr^)* b?}-}hubT3 s׹_e{eq_cbT !41Ah_i[sX~?j +IUJzbz0?!OC`Q+ 4MӝUXAW|~?+X%d.Y9wYAaE]Ftol*NgG`[3^ֈ֚o,Xb6P>mTTV~c\vuY;tC7 3Nw$Y%Q#(7Og G(#( 8Cda$hs#v^J,gVG$撙 nK^vc<~_qO}wꛇU|oJ-y.'0ׅEiL{9uY߬@o=1uP]ji1*8s_wKKPw[<&1RSv&[/6+j@#%`(%vVʝ)XƷNA2ʏ/CBe< 7|]Hvy#&wJ03CJ2>3m2BGcGWPωT'LD!#)(qOr፼2Z[ן?+jɾhN`Qשd98:Nαw6og(4f8zϫɬ`:ԎïG9q㾰2Pdeҹ+f*hf^mS$!/Dd|B6?.{#Ve+33ms6@=(#% dJHW::,y>? C%^ q hށ0,,Y4wq>6sz+׺Q[@cʀ;PTqP+c=C~?̀_+Wvykl| R=k#&[#+;5 *;_#%;FLjp_?*faoώl5ܒnu:sޒ(ƀӳo<1<z]\DE]#(~a6#VD+ fMK 1pB1XzR#%oI#&;6x7VnOL#%4SC 45NA(FuG^yGj{U²*a$^g$)_:a!vOF\\a}8G 0(" <}j;-C9gt][2[r>\÷6&a0#,579*f^~K_3FZ &F-YK-ݳB"Y0}sOg9dd]tzsV|Cץg#%i#&#e*m~#%1pcs[(mȚ1v[z$S_1:ɘ$3CEpyD>+YN6 z|=3#%F٠7mw,!㘿A,6hsSeb9]jț6#%0v<#Qc70u2;/OqP|"|#%yJH n|lXg9Ox g^]^;ֱ5%8 zsz$Cz`}|; WqXF#%)XmU傷fA71@!qFnn/Q#(W"ĆX5:WQ{q鳖<&Ve{S8L\mdtzA7N/4uy*-AVY+ n+pЭe/aHI4>$5[n9βC#kA;֍gE+Kx>qA]l~S#(Syu,Ϥ靴VrsYQ~jq.-5zλ\ꞠDŽ3N=|G^QvZsI#%ّnPBQcKe$I_6]/TjK9SC5 &`SpPh AzFL!=Dz3/ʊI*=Woqe?Vr}c;f=Û; q9:G#(hiS$]xnkTo4zS(~>>ʩ<~XFZYvywRjթ)Iӎuˊߍ:-'B$KH_)tT˺wE \i5S=kt? )Λ8w39ӘXw_8 ̪@&o1ԠAC?v>W签YK]רLc@+*jNՈ# ް"k92Q\,.׾5GQCkgU3fc,~TS64k/}ud:|/Ãt[`P٬TKdTh>̒㶉rs9佧AWWW\iTmM h#(b<"!A`vN9ÑBw؋ă='sʒw6c#(/ zq߶0ʼne40p&t{Gv:"%^#(U<^mՙ}U\+첼t8b8jj9dhu17 m5!W?3BY7;fMOou47Cri)aY83[I•e>LG)Lŭ<"vp"#GG,A'um#%H$qt)3c#&aU#(%;KxkUAf4,KcnaYcc߬XxuI˵TNy ÒSMJ督o?Y0^#(9/a/Ej_Bk\/|WiqwۍN{TXPT.sw!6F=i8W>m_7Ӕ*U#%ebXDx$6a*}H:!}ܟhvoR|z2rCu@#(K3͇ѐ/R`!"]:q7s[JJ+GXʥfa`pq1pkQL5io%lkT#% JlS #W1# cnGEWEVs/#%gzD[wi,o:)+?!R.'ﷄ?Y#&~KA#$,7߱OG50prx(#%O鎌_xZRvuVFzn-'#(-9j]|pPDo^Wd Ozz;#&D`Hv@Wg/ޛ);O@!eѻã1g"~֔`We6繑[6/Tٔ6Q-q>X?op~wYJ-*:+GHz?cqs=1޵A/zD,sO>R::CN7u>|Q)M_2.z"/B& wշZX6'dtI?U6V_>l#%B}H#%sGǍtGBC,OR-▦֒ 8>rL#%:zp.0}jڤbW#nX0W2@ >_#(ݍSA5*x*#(Fq-B#%f;E$ATY፴EXZ$$$ǽ6mRHy%%53^[JoCP=(": /k>SoMq6STH;ehH||TFfkw>W;9CT59#%l'zk@6ǝWspCouZn{'(vۄ|^2_NςY-Z*ƤT#%XVUӮ  8g&wFqeYj~ieׂfNÇep?OA E)A"t~06l)ȪNXL^zձ `;" yR"h1Iሿ0P8%*Ptx?L6҈7UCO5sCּp{܁A/oKu!ˁ:q++@%)FR`N:$U] E IT 1Ot<8*_oj{5p{_,aE&ubľ\.5 eX*AD9%Ke(<:ת4Ѻ GިTt6k^mݣBdP*"QI/nClgTl{Fl[l$8@@=EjUYM@#(m-z=Ŗ~}_MrסI~vSP>H? ]EK%L2?ݫ!Z9`d8f{Y#Ax'!1tD?BPmݜi$d"Ϸ%4r'_R¥1Cg%<N#(#rA7)RZ'[p#p1Bm_]o8<htucu)rj-s1W(9|Ni(s#n4<՟V*1 Na6^DgZՎֿKgm3=;Kx9%dj%ALS#%dTLP/"rWPO}#&,Gv's5lέR 40̡̅ACkݽCJdb0)\mtm/^DŽd:0v9ozmz_Nc~,p.5!ţ&0ՖǸT` #(\@ְR#2P.=BgENXQ4zMη YpӺ+wW4u脉ne_[: @eT`BLw3lb%֋PW}}QENsV-h#&D@|iձoE~6wpķёm8hhNfCcZu:*l V"V˥|صۖޠ "::b6ů}(^(mD|G[uER gW3^>z't.>U#&|ٲm~w:h2Qx=(Dx+7GBFWlpsTNǠs\42@]ߔ Mu^Q`tmclR5;F<0yvvYO]q"qi5wl^3$?(", s?մ4QऌEP:Jh0.lJ,pЛH#%3І Vl~izn>s2ooeJ?ΠQN@v#Fϰ*hPLu%`N^fԞG-av$0ITB"QPj[0%#%#%=rQuH06}A0zܟ~B4ҎE*p{&iesa{?M&@6ɶ,PICP!9~'}Kt(]Q(7kD ͐ny#%:O+#(>bA5H[;έ|~M{. q~=L胋mD:B5_GmLYf=(gQ t0E=q LRRZ5#CtKKP}jgK ȉq40H݂#&uo?\|Mf!f K$H,#%>P3rd:Or)H#&Naj+]m!w9)?c̤4)پNc!%,IC #(˩N sCE(~c'uW xNw$yh'x#(ĄA`fF}HWJY2FmT0U9a7X:#%Pb1Z%Yn941sYesCmFÃl`HB 54DQ S2!4=}GqCWs hEyt)؟VzG::Cl%#(At(~ֱ#%#&C!s`8ȧ?bRŇٜU^2IpdEM40:#(hLddhEa v+#&M#,م@Xy5Mu}A|'``G0yHsNCe'[` fI$GdCG?}[}PZ`Up~l#(t*>>F6Tђ/]&1`eXj\nx2Z]7=i=A@ٚzr@]:2JD4YĎI$TiRb]jjKK[m<\ՖYL:P^kh5bSL.pm,FT*K%g~B#&DNZ6U [~φV翲}Ld Ȩ?h/i*7sosrnqXܟ6r7#:4 '#(%I>z.DDc<2R__][.J|Q|Nqh}8،#&B2۶k'^ھ'!BPAiNdNWz`$AMLqgcq/KUY|#(h)"DĢ|Drk MPRWC* P#%n(PcQQ(stE2+3يO XciG#uӆSbmbH,dFHRE\ܤAARH_vv}ޝ߄}{6i&zb'󕢌/ B-{$.M7ꞀFČ?Z0Ӱ,RQe1C^|/-zRϚ*%<,p0>X,by58zqw}`,fiE,B AAFoq>9m(EiΟIjr럌KWj}!N*PD]k{c1J4o.u<{#%ly&ݼVu#(`{ɹB-ŁH+ FB/@Yү 1(ߢbo{͎d>Ʃ|XK!^:>ğ>4#&#( KƇ>n{~}!u4S%BC̈́dIqTC .c`h#%|{"bE$AN#(hB: LƾGIX0;ۧ`D]2X_#Crv@9o`7"9q}bQP=% !*ȅDF)(d܌CTT2s$qrp`'G/Ңq֡CJOg@aN5 {23B3oTiF$QGB(WPj㍰p4Vt@#qRjiuNk`}0o@"<_I!Ң[~%#&m!dq;i"ROH8|ߠW2x)"U(FJ;ӊ.A6$vr'@]s=|P\ i_豄Q+/@#%PEv<_-) (R!.&/0"{ wa`s3{D Q=:#&#%xY3As[T+zzF%F%LmV#%I*.[hAHK#%@eʀP*@26EU&yWkl 0R(@#?((m @Wa#(6fך?53Z*'QbXk#%)S)$SRyN͆24%dA(X!pq-r}IֽP'`oU"_+W#(aZ)dVDV%3(.k\zW7HL6T& I*6QMXs7唿#&ɴxA|'xy>; J#(#&u A#%'YxTRM 6Nx#%nHm( qkVq,Vo9#&"1#&C g#(,,`eaw\OfRbKHp-.'-O${}o𨐭SWn|}yT}/Cb~ЫKLoLa 0_GIJJI#sуM٭HP #({p%$(њ|v)ykQ.(_.^Q!RT!4`$"= P:<ʒ3`tҏ#%;&z9DEa$!I>{1z8{<\$wˍ)B0c J99|A"1#(K;C%p$X47l?Y&_@5W^#%lBY F˲%O3<@ŔQP|JUZ*1c8Pd'aNT}粠ȿ#()NX QXp#&QB%N$$"KC@Rޯޑ@pϝ#({ylx{sԫH,A A,26B, #I f W#&3 #&f זzx"O\X(&Yt1Sb5i::Cs8ZH/#%A, it;]^w9N#%aq.( 0`'ւ"(̦7o>=DߊM!{G'?ou2GY"#f}>+VD!#(`#(%|yzIIJ0ĉÖz%UoWJ9c]m&nӏJ=8:;@Bcp`ohJp$TT3BL$'GCbn}SyPs9$/7c8C~}ZqՎ$b켆5/NP,` #(˲(6Ckn`'!BftF`; ą#(CG`U.L>_RXPY DcQ.ax''ZcC1WH 4g-4dz[4#&κh8-%yK8Rbۙ>zJVCU5 6#&M‹`@YH^` HB2|j^3"x@DbɤnEQ=3t6nqYn]C9Qpw5ZJ!؈3IX}~!Jc*#xBֆ蔈`:If6l@b(,X+)@/LҐ>hxPz ?hDcAd_zY N>x2#&A&znޘm~ѳ~4qT$$]:P鎙"߉Nt[j(#֭UbEEUTC̹W*HbZ#Es0ٱ/XӬ#&#%yo0]wKv2|޵I$IğۅX= MP!u<&#&">܉'zM4JQ&š-#%9BnK9YN#&!Jp0@uu@|@LJaa#Ec׻נ/7VySY*y #%?ۣUMPh`b>~2l?6"_~&D"xTʅ  !V:1@t%9]vIϧ? ǧ{@k>h !70o~AbOc-˹[b6kH`#r {}?g,mDe|HNԪ0V( _/R&@$tjV 3]5=|Q٫zsHEAIhZKHJ=p@-罭iTZ#%^9w4a)X#q'Cssq[|~|j=V21UGqkO~2OO FYA[,o>x˰ݍayPca#%c#%3 oTj,OA)3-@$զa{ j?>9[{<#(.zԡ-;PHN_(Ka{Ꙃ_l-ը^=LC;0|:o#%s[&Fbm?8f_cp[XG5{H[#&_zc7Y$ȳll3Sտ❰0Q5TL S`Wgڍ%3"+FوrQ>üۃx"#(Oaq#&w[#(N;^ONt{ w(*7収Owa* |&WaHFh?J#%y>m[mQE0jp|yEtx~* G1G43D\&V`S1gou k@mʡU6{^#TenuB;45+[Z_o48>2#7wTd]*%&>~IW^]syWspFz͙ZvKاg8vpEhwy$$ߒbхLsgً.[uQȼRT KN`lH#%jG#(4nQſfg} -TwdE_Mx`q6̹7C^=3Ezn s˻ȿ^8hLD+I+7@%K|}irgp1׻`300#(D@fߣzGC[Jn{f=F;~:3$HF;Bf#& i3!l&" ~Z10HɳZ <2{S3\p>;zdo|~9ߓh3oESCGNތ980R!Ny٫(Fz *QHHɅd.q蘫o!b֙`àHeQ#XHȧ<}_gG~fe!^?MݸL?diD#&338#%ay#(-Y2eN'\>c?>q;Hg◃o< C#&K#%:lۜ H;A`6?M]Qi )1B#u':)STp4\d`Cm ɶ[wU<2ylb@,ܷq H4_w&8onnxxwV(;\Q$1=JLMYafd52gzDb JRI uٛAo94q{Ɇ09;!(N=?ĕ|_ 8`S $,#wN\}"C#%&0f0j`,Mb D”j>RH3AfXWy/li^ͮ*$#& h9ګ 0# ZRKA4@'zӈ#(x 7ynĐ^}d\oUzj8ꨳ=wzȰ<{Z-"I=1)UB6pҋY mR2* h 4bˌ&RUrInL_?Y#&f򱵧DȕD0}kO`S'Db-]vmxj7#%戂(56=4#%`LFΝa=z+|N y C%ȱ4 Ú$`0EaH⇹{bՈ9X.^D Z<[~CmT~Pt#nKn0 $Ļp4݋q(!UG)2Lcc^ng#&WWГ d`[rln`##(ֈņu*wh酈s.ewpxס/K#(_~#(C1MfWY1!,TG\v8LJ 볺HnYpaXSη\v&gI< 8p~N0OI<5x~}INN 9f+mohFq9-rqz6,=5!vl"ՇaC1zqvLLcl&Di hK.CA]^#[ A7rT=O_A=a) 1K.#% w*oïn~|*4atT*D{-,7<tm1I2DZͽ3l>m=E0l%H0u&sZw,A" #&!.N= }Q1sojE 38V9G1z4OCWFrq(M3PzP<Ěh5#(u  aW#(&&ewH@V4IYݼyS[94ױmD#(_=N ?7C=Ecұ#(C`p7k&u&E[>AYp,Dr#&#n#2:v*0#%kES6C(\z\{ZXcKan#(\Ss L;33#aP!ܞ®7.2Y|&CF6S ;xTJlr4XêU!#&š|k c#(WKoTݥA.}^bhcFRq*4poIȕ-#(Róyrp{";%0Qz7Tsry:XM$k :8}W_zX:AWNjf DC)S33.ffeʳ,̒Uٞh_UΐR]#&B1AdڥKXUL=t[6p6#%B<`~qnz9wLs)ADeQS*%Hֳ}0˅t'4:#&5f|*FC4H,!#fn*#&{K+,`C|Fw#(KłE .eEEb,|9^g]jFfgI-}9c[6ˎ3JlEV,μM9$;r)ADF8/='aAb_#%Bs'QQV#(!5SUS+Ot ݁^:KIA̷oFE!U0pJps7eZ=9q6_'=>jO!6YaN?zٰGt[69gY-CZV->7AiHH;OQlskBih#&b$& DӦ+lyeˑe1>L#&QD^&&fNwO?BpL f1ъP>!Apƛu&JN rL2j2!&|tlj,B#&#&EF<#%%x#&u+yykp†-b##kk#&#(N2Щ &R]2?M4q[&CϨH=_/&,0JG3aaу1M>QJ t70n3]Bʑ4)!EK#('6) $/Y$#%l1c@&KDr$ij#&|и5ϫ5QCgpy#aevEkDbY'iαw.k/}S2LZ65: =#ϟQ黶tL!=H쾂z:D[6?ɭdM'Xvc=o`؝,UVso3Yd7T_i8eN}e "I#%lFٲ=Iڂ_imQCPR 4Áj̸+r#s9DzڇeDiW0(@ Xwj}=KJ-J"Ǹ{(;z,d_I>>!"@# TLJI[v")ݫmqKV$J_f P`>C"+>.|9^>]ZW}hr{I!!%-y W?"]H5GU dx& #%ߍt*Q:<)"P>0(pmfBmT}EI55Hv[fm&hR!Shr1#%OM!@"H!#%dVt>l-hF)w]!KV.0Somڽ6#%PL72i7CV&4wcFtq6DNP_&U'Ox\ d$@9ȏʟD$ɕ=)#%1p5oMw!+E+[v̺#%mLJ#&A 2C#%V Hz^.om\U-%H!;PA\DDXU4Wk5Mp` z-lcrG\1(FZd6q*lA3"&A`b!y^YWItרE)$Ž]Ǧۛަ /.r7mtwW7,ݣ[(KV-$ 3oWYY&4 C ꘡p#&2,l!$$Ӥ6uy?ɁV!KQqB><{ʺ1yI C?#%nӯ>2.d%rjۈVxc2FdUT4ąߔ޾BFS?Z ;`MvV2WoB,*[lhJ#fi&$bڱ4%%k#*4ٙU #( #(y&'o"w#%(dA#%XG@XÙ x8jħom~s!CᡱG6J#E['h!Ҋȥ`v!!";e⠰qLU@eQ 0;YB#%ZHfT#>B#()Q(UT1=.1]4J9x.1HM_,|_H~h,-$PzPB^+&]"M'FIPA#&lZb #`DH=ِly4yvX~BRp6_AmCS`JU*NK2L1@|2mD(& .5x'#񣥂8c+ [#%?j#(aZ#& bSy_I=`KۛEaGs*Lt^*` >o |=J#ٻkwӉ|9#&#(a?sX$#%NSx;#&y#(QAHutCKԘQ$}=Bho#&,jFAr_7vk:.!B)2m @l@(OQπ@FOQIQPxw#%oE$=5tp8B=kK#&)#(#&YMUj"#(>އ#(R@aB9xV(&J1c#%XĞߧwnv(,C< 1_[K fp j &ahUd((>#%d?/=u^H#&ښܣ#%d{P ̡qC.I /f9_d*Zo*_]#&)kc72)軛'pblLXLNPXQ6x(GB犉qG-ڻ.+81Vce>#nP}\ux͈DP$S x7m#-s$D `ྛlɶvj z;7~56lZ#%|p}PtG--fE0`-\\!L#=#%[Hݺ.͇^ϧv&CuplpC$NWr5ne>5G#&ZroB,pHN9Vr{"&@9FnfuhgsbX9 ]PM:̻[[rM5#M1lpnX{(2(T;eMJuERa{|ӆH}.D`viYTP'߹QEJ; vr:p»vӤ66.5c^>9M0;1oGdIJ(C+xBQp^r :!FJr$jhMMH?gFDxH;IS#iҲ#%ٛ-seV 5DdSGϻ.*tzkNBpq/#Ū"@H#%Ҽ, -6RwWSg"Ѷo˖n0`Xq42 IM$]&$Gl4X#%6V #ptZH )J(k翔` #(ЁXmo$;M["W[\Y@6Uɬ}]_j<p#(@"<#%&Y=iWDr?t]y 3{lDi,#&-:zl98**sB(xKQ\Z#(":􉙨$$[ CYL/`UazsFg~; 䮞O$קxnF;ݬH)FR1"!(#(,Nj)G17Xn%\8HdEY*B 9u4hV5o$ ξUofc[685_0uO2:׊ܙiianNW3 0Ρ)"D^·hqўY243uv2c[Q,R7`1#%2#&$f_;ԙdC%s $"Éo:~$VzC}O,y^`66FP7gX,PsOMEdN#&Ɲ%0ErlJc'HC-&#(TH4:矬@4Tj=|Kb%PX,G$gJ#&#(7NfL|#%A&ʗSp1<;XXI 9#(EDҁUat/-0U/B+8تSh ƕ{L@E#(jyqi(D׉ˑ:]H86`&7eM =萍>aDOL{io&sp8tf |b6`m ƐJs$!HPۭu9XԕZ@xug#HƅE8m&Umey $4\d3%Pqf#}/ 4@ OEޫ,2xTpю =s$<vcjM3ie6i*rlSI1j2EHgqzY!Gקb3PQ{2uBs0?{#RCQ6SR؛z?G"M(AcNlioX+j0 jO |f>-=#MjԐ^#&Ж;M:x$@8&(F{םҢK:A0h덳Ůa!*w:9E1#_*(V-4bWѫynwr\˲ $0W6򴸪o\^ RY&K qJFan'#(62b% mZ74IТN!I$@CHʀYW-2tp#( 1i-)l.ᮌȆHg"KC"J-#&#(%dAaV::DvmEəʤszRDm1b1{\(#XF1yu\N $RHpx#?<<)4+.b$e~mS>^O㍳*0h'~Kfjw@2#ٜHoe!]Іn!Keo2cCH#&#(pluopE: K#(@|H9~R@58Xt#&,"HUQ$.Lh$M4`$@ *l`qV#%# {YdPĠct31$@ hM& <#b^i#(㐴?KT,=Yߍݗ'j) $:׆z@mG?96L[U)vSrF犢1x? EiTלjJpc2YqYX9;" @0 !0z>V@z#( _ۈ,#(kQmxkQ5"D4.ߠ|:Ā=S(ي|WM)e|:GmaxIA)2idf0 TM5(d(,k߷0ɭ&,LɉfH#(4"MDFY)PT%ңELFhL)l&%!MAALcJhowʿ#(-~mHx;0&=͕c(MJḣSV+$%8LUea9c!q$K#&m$Ŋ1% #%b3}NytQBA1Yz[·;oЎ:.${LL&7=0jkm/_!IB~+6& pʪK,@آd`0!6kAFFXDl HU=ufbb@ ֺ'oŝO2ro78^#)9Ih-fǷVzݭR:W$0&QFYN'$j_!;o!. ¨ Z c}n\Gbe3ܱB'1i„Ehpe!#()H%" zS<=+2(7J{K3q"JkJX>11m`nǘXk=- |Y\M8\QpptV.*FUyk4₶0#%fdÞ1s$csj5LZ]&PvLe~Kt+(q5F6A^y(#(M*S!|9=晚O#&`m{2vN#&"!UEiR{B#mw#&|Ґ8e7azら5Yqī6ȓhc#(Z7o6̚ `)%87xy\cf,nj7NsP24c4FвCѣQEMJ5)ֱ,KY3#(m]Y561bғd8t/N{S\mi[#%CL!AeLqR~N\ a\MLhzIY*4$^tpxyD!z>T[ar,lG.==+&K֣QYanIvbNJ:~z`B1d!P. `ʒ`1RDV OWgm3ONX ֣U9ב$38v:Low4(q*/qnWd/WJn2Na663#&G#&cvCpTQti 2cXBc 4B,֯0iAuБЂՃZQ5iKZ2DZCȹiawPPe#(0qL,})y[6ۉ_°Ɇ%+a[*ɾU쌦!2(ƪcfz9Rx.vp~Yw2W<,Qa۝[Li4֖ Xe4II+/Q4~֞6#(6amxG(0냫"MSrS^mTs4#% p;EZ/#c~' F̧]bT.n 0M4vEí'\ PN7szL[ ͝eg\e;j.4eJ#&M.cFnncrv#(*c#&]z\]:a+MqiG\AL`Zn3p–Dk#sq#(y|+) P!Tcw{X1qLӟK7mppԚJe){n4RNqm>{nMlm͝a$b0aCb&fe Jgsi|B #%CW0O.Za5ZO#)ET,\(wT3msYk5G1QLTLT<51Œ3Ԋ-s2&j"55Ria ^] K+r|ˣ"j󒱶"m5$c+l6Mb}3VIAצ6pnf_S(WG12p8MMՃF9#i$#&ٜ]kc-ޱ&#)XQ:h9֬LҲC.|p0}pU&d]8Ϻb+a'gj0U☁rӊ*L#($ 3vK-#aN+(0e#(n#%61Sj#!S59X@0%ײÒR6f}KpfǕ7LlV[̸GE_b]ٶ*.z$+PHk(Ȗfl rH$*C07V )HɢU*gE* ;|"IB8#%iF=B8(.)lb8F"hlT3d^MD?HuŶTm"y0jSL 3 @û3訌[h6L-.5͢3 &Y&VLh-Y#LM(%S6R.S=gJ,G5)8AmDe d9Zf)tvN,-"S#&['2`Rsf d5eR &9D~Sl8 ;q>kUr?aBu6(x:@3AӄLUAlgQ)P16bm:y5603#&x%d^8ƛYLFjfcO:[!͎ @:4cC#C8#&&';R`V#:N_#&VL_uĿE7#%ІӔ&QOIܙgAWɄ&tREֈCQPOj|"ǭ\!P'v2SIWcq\~$)/T#(a2b+`aQ1++duLΛyXdgb;y1F6o0\c8,EDvJd) }53$#%1/l+:5ê#HelPKg lDqT#&;"Bp5ѥN,=+#(vurf"F9] $t6 /"#aq/;eU 88  qLLNg`i sFq6@dA$[3б8 g:V.H BѯFDuֹCH湚Bbd &jjı%qwԙ;nld0LĻ-g8f#%b0;#SzKY3FL՚ѰRH "i&`fWҦM% Gؔ0;~qpA#&ԯY@TDFH! UYd0I#%8M)?:#RD D4TC8 $i햳=.O.ޝ}(=pcE8qispj)Ѽd lr,eom4/6c`Cs*G]#tR+p-`b!#xF##Vy1V8!B@Gf7נ mIӚ8;X ¨CMI)*!)Tl@#%BȻ{6T#&#(BFh;/nH1Tc;k$(ťWhTCk:~A#%6|6)P P1veMl ,}jxCN#P(#%v(mqUWˁ+"e V3=E?]e鱤1?EWcu,#lIw bބ1 ң##%l#(pM(.YB::M(3M# # YHbޢUJhtpasB\7 x HFbdȆ{BpؠlwG|yDcFePQm5fH#%D#5N+Mڹ.)bK&GP ؈Ad#c1"r6`8'su=:/c#&{>Tx3%#PiE"G7yZ0#%ysYxfWY֪) Ynk @ /eC $@38&2l|]'=b L1f-6~QF5~(#&##(5[Dda2.>ܣL#(SNHgD{G]ֽ]DEw#& 2]lH-ҵk w 3FC"U,1)hBnܢְ2A}99w`wA23Le< ,BtvnN(|UdQ$#()ۇ+"saZmC7RمVgp1PNywvMNFHl4(p2 Yccvad$0K)rPN#(#UD@J&Pljd"$jAKnn]́ѽJ43$0@ B; :k=R7ٓ?rqHP0zVA@b?*KMjeڅ @QhWYLM$2_6H`!$1E*رTmdV*MWp "BCS$>#(pUz.>kyCPZKq5:[:#%7VVuVoj9l9VW"ɽ4M2eZR,NڴI6I+|]K^3fF4]2mHm|[ by[̚yvėLg$I+ӑgpԛ'y@#<Ѿ<Q(KF%@+bݟ,lߘHLc숃h5)a=`C8ۧ E2±J|4mi#9S9Vfu;[x2WtMd|0A9 I2dž9lmRBAH*ѲlQC[PǨр蹀XJ 2&_V]X5Wenm,`hֲ,B̴,EJJC#(\ & Mmyyѣ]n[ii,B)U"B* Jt(cyۑ=`{ey.rWwWhs.A#&Rc,2F.)zktMͺvM`+뻊Mkk-;O7]UؐᱮQi*^go7H6j@jAd`AfU$ț55"ɭ,ʚ45j-P`S4m*-JM[64hM9Q#&v #(Y)v%(z"dC=6>XO9u<~F߈!e3 >_ "Z:$$ ;t fX N3ÿ=30jbŸ@1i((:sՅFIq:^aJ~CJQ! #%K?u(o{ 6!h(T]:Mn>zR5޹%da辛A#&~7@!MiK#0yW ZL@DP2H,dnvGnCSYwa@|j.\*;u5k9OF#&fNb59q:O#7aQ:bBqJ%#(`|(Kp4j\ H2WHl7Q"{3(BEۨ﻽2k֞LR駘p\&r#&#&,G̬KJUl@[C}C{ KOPvjAQ:R`*U>T'ݶ5640^+9mE#(|9տlzQ|jyM ̋ZH]d@zZgK{{vX#%Bp#%#%[cUF#&*CzQXҍn )#"#&bN4MW*7f, OLٴBȬ#%t-GPh#&$Ka Ԫ ST`OI.!&*x 9鷽]3o8[ѯ#&Cx`z K(Ql#(l#(PPR)G$0Ȃ,Kv+-1VR@TbќD1h@mZ#&xjI.m9m&iE)ԜlG&b#&Yyacg5#&mR(lL2!2 SRF[K#(@QI&#(L*c#21ߌK hs#%zvdh71B2a>h'RkjudZ!ƚ V`,Io?ۓ)v>i;r!$8s5} tj) RipD٘FmC\ĀNG5Qb VCL~#R=)^"4+[qiuoB0+ῃ_ͺQtt&fX#&@&%!%eL^797ƇzNJO*Xc0=teL16a2h6Ŕj#(|\ZJߥs+ cj!؂ͬ/0NI{P+`2kL4Z,`$6bI1$RɣQ&,rɔnQ4ڵ9*3*ttE@mr2Hk3Tmp?tOYB9ΉtZ5$&Nf#&&38)׳g/؄PD=8DJ̫JN7~R(: 2@Apl {(UpM:LQZ.d.Pw#~z~=Ӯr48QpGrǚpt$ rxIQ0dEr?n bkZO>|9Ȍh#(nh6DND#&,jp^?׈rCk";-^`&&W$z1hmlHs`h#%c)1;(%V"^1eܙۯ-宻W^\"h}'hhm'DHAp,6H]:&"H*o@:d) 5b`ךF.=8eHƛVBI6;ˮIHR*ZDI4uԛ3,`ފB$,60v"8l`G ܖis:x]ibe68$#%AVgшUJ3v#2 CtiȄb>#I^'^7 -F EHuiD|2ؽB&tGJ6#%J%H$ qoxem".)Fjh#&ԣn1*H9v=ӯoMƼ2{+tĄd0&-6Yi&3TVFOуA,,=;X`K4N)/2]I"B a(dLHNzzJ3v_ פ[ZF{wtS%\^LT5hҌV`>QwrvE}%ٞ՛d>?>o#%F vi4ܓ۾[m⢷6QTIusn&$6+Ѫ#&1Z+_QUz^0bEXED/#%hJ(#%0(sB̧XLfq!BЊ)*!C$@e:D'چf #%pYi[U`C#&b͐2;Sblnp&$FzvP6azޞ(hQ#Jv&ଅ0mOT2YAPM^aQ,iAӥsQ]BQ#(DTV"IUp_6e)&qd9f{*v]p[yEP"I1o5ݽ#&o9id%$X Yٯp&Q3˻0EH\ m 8}0Ph#(Q4aIm̓*<`HxfZ`bh |MˉO~G/pm|(苮[1#&dО;xU<^#(*柟G0pvv>؉$!./_D7̣wtݛ?;:xCAx=Ƞul))'b7:0'D@d:J]-ŭjmR#`^)QY,$&uC3pAii]+K#(p2~{49'#czdž`)&OJQ&qq+o$$X)00!~%2ZPQ!|O0*LV|ZAt zI@_sK{5ۯ'-nJKG,4V;N}yR'YBDNB>s$Q֐ޤSaIK: @XDqML)U$);Vha h]jiRD@]C*H̀]v#(,}$M:tn$p 0V5ƄFiXПQ J&&:A72chlc2VR5 mV5(ڍuʣ|{W+F-Pnjd aYM@Z%zjsm1fm^,io" ddg9\  ʉ4fZZlTXޞ@mV0h7n #&vfJݹl\FһErr7IzҶQD1VTf#&ꉫ1NXa0#ѝaZ*&FBBԛ:`m e17FH-kjVZfl`!)$&tc!Q! q# ckKmRxT\4vI 'C`۵LjcxxF#& HƆqb{~?e%0s2Gsۍ//kxvfÀ#()C)İDEHX$ ?i}/Oh?,"_v6CqC3͠0T) E"O슅c_TMc(2*_1"uW[%9smy #% U$U`SI^s\+,Y-]LeW5o[/N+XlTt,WUQklfADF BmQf&ړV4n#%mi#%UHFGt+.Hu4CIIWa*Ȧp#*\R#% D ,e rIcQ-U{=S  и~NJC7N%t2lXo[,'}R@!%dzLG#&ʕ oiL0^ UR(AW?jDaꣲN#EBѻ 5ug#%"W$ `p{\b=#% T6pPHz#& iRJZRPͦvƚYOR(DI*!^= "ѪfoP(VrH>8!x~#X~G˩:ϵ9,>Fi]*8ܼsf$1H6[5*l$ƆM2kX`uPA#1#;Pmo49@l{WoA;uVA$H0y@T,nbyqkyp/8!}:fQ DzM+C$ZMBBND rs3u%\9#QCS&=]Z$F#RY#&#%\ɋ}6ׁ`j$!Fh$2JPAb$%%ʙQR @xv?#&I"a6a0tsgsohX8(η*?{WYHfqnffzJ2IC'>b|P<4f#(ݤC#&rF jn$ȋb-Z%f565#M~y]IeL[6EY%lb*Zmfk2,IkESjf&Vhjckl[Z)bQSh6M.!1TqMߥ(%k]NkjkVټyF#(צ^#ݘ&#%5Ѫ#Q#(yE.V!-+A c*T[G gP!dE8Yp\#(:vmHQ!;pw's1P$P)QW;3<\OH} ymr -7R/g+X2{wgz͚ìBήdЏ,ijC3fΐ($2KYq8ڥu \V{{=#('X4<Œ.yH#(7Íֵ"Ƞoyd/1h xroP '3Z#(R#&'?{ ZEhHhh8F,-]#&7&Nqu[=J<\1βh(hn^jkOG>-M=8A;_q8^0]鮐_H(7oO6 p)ߑ3STӂ JYIBZ  >|+U8^YXTdXwߦs'h㙦IO$R4㔥014##&di;A$m&?`B#& uS-6BT)T*eI0BL(^Cę@1Z\[ǴC#&@6^BG_d c#(dQgJ&) C@TH m#dU'ԐD~(tq`gxf4m0K p\2c\њ#Ad:hS~{[{xפm\5&+$l) )\^g~'%E ͐ RlYX1EF3K:Md.(m$Yeq @85CeE\HaBR0!t1vih#]̚TAЫ>.)bhsLȃ3ؖ؉)ȭʯ!piqᡶT6˕,E#%ѣK`*<j"O-HEeh ˋϴ#zJXufgZQNT#&¤н!6g18V (` '5Sշ.=LӆT5#(dbUS`$#%"UzuxƺmKK" 0·L#%Y:][|⨯ieq^΀W\a4y2aΞ&#%!ߙG!:7"͡}:'!eV[Z#%h_t]ϭ#&yM:C&"_Ѧey=Ҙq`vz)Y^v^yu皻muY6ڤI!уhC#(eQ(X!A`s5P[. @#OFClzVƐƀ%kN#&5ԉɞ#(mv L\X>`2V*껬sx,9@kK-m*Eh`B"ZKɶ!0Ĉ) Sz VPCi%<y#a Hْ aX%V 4%qĢ6G:Rǹdlpw/fSzF24! K22䧇/2l#&OKKX2;b]%#&0 T #% KV1a &L%svs@*:%^ѪmyK*5&Z6KIcT#%A#%u[)#(B2A֝mXr Y!PM78otxS1GKGPL!=>ouY*m$ho]Z]32IN^ &ɲ0~)Ǹ{חmvCeHT@LŘ<3g3љ2Da"&>ŌX=L;f3#`M1 ndA+ni7 mD4R˽n|MunvN]Nv8C2;|8ھ2;)s_5L5s;;'p(*p5kM'ɛ6p*]vx_ہufAH_Q:]%,*ck>9\b5$2L#F65gc)d-Y``μ?>D=I#%#&8νMybkLoֆ6t{M @yM5*O|ބ,b]㇣H[Lo/5 #%oEo7Lu'_5V#f7˰?ebٱD:xK a5Mfu=eC#%'?o`!(RTn$]'v5Җ!T.;bK$DA&?Y-`65t=jW6h6#% 'oNL7 ^}:i>sbp;<-oK{]m#qqq#%J#'U(P]Հ$`AcDC[(žW51pl\_Ha#(c}BV 6MV1f[F94:t#(;tB&(yBb=p,g($qX1Cs8EupvJ}`cv#)^IGaPElգzб}bXFxxu|RFm A+tcmZ}{[%y,FF9dlת"{|80aA^#%UCƸGw24DTGN %CڮmtMjj-m[cF1MhKX[slm"u orTi.D%)#&2$ѡhLB;#(:6n߳oaX^BQIY[oY&_M g_=~>cM]oMH50\7vG0ǜ "G\k@(HAெD5@`#'wQ+Û&~l?ٲAێ.s#%~G ~)|I1Men*( 6jTg6 |j# "5J٥k]0JΤkP,aAwff>T(TMJjIURPx1=zgԅԤ$KCKd-5[)t WC#e *VEj4BGe| &N1dglʩUv~fSsv?9 CXD69 SA"' 分R~evT,Õ51K vo&='4vgC*+nQ.w!#%`fmٮ #(#(7.z/s'wAxfL!DVS?}Rz%]P4T#&uFB#(db#%ܛ%'\x4|*8ɴP n܍ka` 1iK0K(HVmt|;x4m$%Hd-,`Z$JăFC %!@͘i"Xhk#(]T- D9 ic$Ii%ehCV>=ךj;,i`uuQL 8#(!a>`6uQZƍ K1&wWCJ"%2M5 `)6M0̑e8#&R<-wjЄ$i1bH`E(I$U{qbftxגշ%22LiR)2,`y&}\+p!&1[Z|}UyW=xyyurG*F2#%4cl Zf#&6ZmC5aV@#(H**+Xvg#%"Ϫ`#(\ *e- ew#zeI#%'wBg};[Aϡov򑓋.$ˉx$ьctkןn[3@ur"H#%e0 jk[حM;= r#(FV wB0Қ5q8P|h7$c$hIc'94 #6:D,-E#AthY@˸[.^2#%1QfgG*^X/+2"d7#%Ј%(fi9W {ͪcBb[k8(HTķ*OZkT79lލӜFpwOP#(/8#%bO!#%]뚫je9% D*Ym%TZ8i[5CTVHF)OHYԾȲ,^iwYrJ:y#&NneiȚI 6ɢ%& snW6to.ul:+H^-ɶ9My-˹TQ#kj[F,m:ܦ̲l;7NZHNrYh,RZ"4AZ?})dP<#%#H:Ap#%hWXvBA`j 'S,-.QM%7OP*tlH7; H |xQk3ľ6]BOr5^VXfըcEPz` PD ?,DdX)վȊadEB(@V0&a>cWǗhJsN:YX-x$ߒiC>#&]K$JCZ2չn)&I#&֭}=n{U^F"Bx$)R,LQ@L`BAh.sl\)OE+*wAءQ0abC*4CiL#%#%U !,DbE#%H#(@Hyq΂#%#dF&jP~2WʫMW諸RZf1~BF"I#%Ebp`#MTbW$h*iBP`iI4y|o/#_/f'#(q/{2ܺ#%.pVkNEV" "@$$g6؂ TPB @?)Aj2f́.cGB?6r*$#&6D2f#k*dXTD#(fR tnL>AH@1Ѳ#&@*H4JPATHҿiW^;fU[j TNP,bF"0wO($NN(Hz#(3v^B9Rh .Xh5ʾl6"#cF$KdMqx] $iuj5P/#(½a[s/U֌GfhE;N-xR7WTA?#(:;AD#,I衦#()R $;#(D9*=A3Y68[ưn~^P?ßA0 bQ@#DO"=A#%MNǜ1OPc+S,TE!D"o3#M^12%A"wZ8,3ʦ[U5d>!ǞGsBT94ٱq\&l{LU覉,a)- %QWm @ 2 &bD~@ڂ#&N8>msЋb۲J y>gn݂M$O0aeupgϤcc{N[Z*)&*͙$KU(G}o_>Ic"6Kj5U:C`1N8L-14Y ݊SDDJ )sF'Z3xm-1I4϶x8dY9[Fu#;ec\FsDe&fRyiΔK=i<:İc=I7F>Gf;r-^gmh=eu y[wn/󨚼$SIivfI-MCvvCQpyk H ٌ#&j zn͂#(u^'zr´B!@6Xň0̆#(X֮}|#&4륔^GG{LZ\#%J#&FeU#%^y*~bEtrdƻ#&Gԙ!:J%{D$Fi0׸!vxQ Hgbh1$nQ*0x$D2GS862&+j戅 C%#(gޘX`Pfʪ*SLh} I>mp+$E$G0+.jjUq_%IC T؄\gU&wqW{=># e'|rќL\nYqC5߭ԉaC\yÀM#&B - "th#(LHB9o_gXoipaG/ƛ{xq#(9#;?sJC~{wU 8!kĪ̘lݍi;ᢩBSe=sE*W?g\puFx0ۖJ)74/v\O@r1_gߘVUO!7>$E[I;Rz{`BDE"ftJͼ0*GOfF)_IxuzӪ\@=牱ny#9mgDZORW Sնh24bϭ4A^E5V@Rx$$x}#(lj WD<ɣDžҏq8cY|(Ba#%@#MCor5nOfD+8ƎAZ1@q+Z3+)"E1m2_66'#%#&T"A#%y0 Nщ 4#(#mfg9>7|us8d#&14@%oCwuVٕe ?iq:^=%'sŖA+_9 :eۥTjmEVVw#(>qI@逍,HD De] ^Bk#(A ֆ4m٘UG݈{">]xUMG#(U1ȹI#O~\BN yx$3}-%?[h $![ܳdi޻M 2#&`hR9Хiΰ:cg$8xnw؅,eJx>-BDy9W*Rh"eY-%j:vj$ 6!rXY>e;(NjD$Y#%|5IòM2"4fMQ5IIDiJbhRl6%# תw=s̒Gi(Isoבl۶e1AdH8D#iDg DT4< usgcЦ׃Mq#(Y>%} 9(.P0ʀI봳$lMEƷWWMJ *$B,e5/#(SZSf,2:#(#&Mwfb0ټnJ0A [P'l->㌊L6-ڇo^ەnwBE)0|^{k ' i}YJ+zZCM8TtiOqLnяXnGwS䓳Ok+[gIX9 }9B_(~AJ 2@TB#('HfΛk QNНy=$|fSð%DScehiuP;y{ۄtm21BдXɬdK>6QW{lE~,HhE,@4%iB0ƁZl'y3cAa@Gmc0"+#%.g^ӛY-[-˻Xͮ[tՐ66mk&r\"6xUM{+;e݇r+{Ok#%Q÷=7 Y5;2nD#&w7|q"H׳mW'AU~x(>)GrEIdH ѵ6&]ƈq뻎I뻭}ip-.P;Pl&P*[IUV$@NZvEB.0$HDa @#%!#%YGqTf(:#%O8ib:-ȣ T+#%|ļS)T潭(:7(rJ] `x@OH1"#(vxұn|*@C0`H#"&1)T(PcF1RIJ61idi6,ڒōɴhR-QVmEmKJ5MFT`,0yeU0Y+dDlD\0+^]99W:u'r#&%@؍0.5T +J$F1bM¢62"$ T#(6#&LHT 2B44#(E#("E!E FP YX.uӯ.jnًh0)/LT@Uղ-<9 9?uMՇ? }U-R{#%􂄐X*l1;T.0?Su442iU"",lt$)yQ#(@|5u1CHc10(0b 4zru!غ9!D㼻t]J̡~޵5H#%!*+RB؀8%AeCjYSՊp2#(%gS eJnM l"J6T1ss=nnբ4/!(KšET5d5\8Ӽp"}rC"lƪ<ﴺ|,Tw+ZF/SÂnQs.{&uz@`:K]_E*x'4*mٞU/@:G~)g>|xX͆jm_Gq`-8o.lўǦeVs W?bGGI#J{i'[lǷo5fW`qH}Z81K$=E4#s%T#k|Fļ6F⚭]Omp{7'e=2R>״Q303H(ma ˕SaCE8t\E^ZBH/Aۗ֓FsN;:8㢦:+!-c%KpwPQґssr gp\=קLwIL|izJc'k8Y‡f+e<+D=HDWhLk[+s=s阮QM. ^8ug}:猼'قVK(9`Q%m0eg)+jwX.-$X`UWd"Rm*ޞyNgsu,3\^L&rY^hIf=g?\L6F#(X$,14 ]sG&qרLe"$Eg8채 dӊ;dcNRiϤoY0Pڌ/Yys d)7TrGU429rk@2Uԗ.Lsa*$S0N+͗W=izpn¡|TXb09a19"wp2q!sxso'^"a$NYx1:,!1*`6}@$$gL"&!#(y#%@ #(@@Fn6@a#%PRԏ#&hG#ӯr#3BԳtҬ#&^Si]38a ,'Lt,\0, 1& UoU7PR BPTtMcB'!DijicETQSSNFj,Tc[-r{ZҶwܜclہP)΋9K>nUY PXLKC b_lBz߉hYO3UVsloMkEmHϏ2-?*jPĠ^n5sN+bFJƾLAc(F!wia و_XBG]a/Itr⎻::9}fCw;˛}U0˥g/l*#ۃ,JXZ-4 ̝S*#(x#([1fFsMW^S@lp"䈀CBkv2*-oFNFoY8Vn d\!0kG ej#&!O'Z&8d^9.XHC+mra0ɘpzVGfQXRb#.0Q[*CC^#(zK#&81-nfJAHl2>?L^23 E$bubt!шq9aULH [x>Ǘ\`^5MH)ϖoInoiF̿<#%D6RZ[Um"BQn̫-K˫mw# \"T$ )~̋fn,[#( 5Qjf##&.V4CqtuQGJ5$r[lbb9dѲ@2h8RXV,I.*pkl'g5kь-+D#(2 BRJoA1%4#(]4Q#""1/U}k}8gk$C8 )Au*^6kv\J#N%lh2FNa/j-/^)Wo dTQlUE*Y6RPS|Ntȁ)ia8ڶ/@Q'Ks9-4~McF2=X33p01IԢ-7btr<-8:-9`xx]JjpN(zが @Y夰fv[TtP3!(#(%P'&lS̓"]<=Gñ} cQ:oh&f00}{>tnP#%q'xEAdUL^2}_Ѷ#&AďX{/OmQ.aϾ0Q;-!:ݕ5'5dGϛ`#%|}VD~TH%K<+"VGNhՍbT,SwFP8˶٬#$l#&=#&|״R-al"RCxqbr53=L$ AD#%!ȪCU@}6m QTNr$|rkFo9&cqJeB 9'1Yr#%q#Kn Ҋ5a|j"3eh@ e /Ha\v~$rIvE)t=! )#(8 ]haCRd"q5j Lb+X$ i p-]ѪO-+c=JxߍB.IWW4xb "`^];;^X#2i271Θ#(h;8CQbYg7߇LwƑCFs,'#&2N6^b'*U$q8v5I#&m#(bQF#2ҒnɕF˖:M`_hȜ䘎v7^M) WMmNYNlmtS3 h)q%ɝ˗Ozg--<2E)X.]7HBM~3·N®:ċu[[iTGyy1MQ=fU̜L3lс"p4Xfzk0y;8kO 9W7HJ'R-0!e\mh&X%<@G@4E{U[-mycD)nt]ʁz#WC]&&b(nH&lx5-遥K8E}hnLe}s#&xZb$#gʎ[^LL x2lf4#& V!Q#%D])S1jn~lXNj ࣥ%`Tl63g( b$F{(#&6*8sOCl'h&Vl[Mm64oÎZTKk8ks'!\)(30};g$iScۿw6^@ca㮞DW?՝#rȧ=Zb>\kQ/AR/6XZAlphoX,.̓#&`ҡZxD]AWa С0'ק m}$m1;;8 9/s-۪h,D℔%Ҕ1qaY%j7`a#%)b4"5 ׎F]i;@s rmSM\ m|7Ƣ/X5\Ԧ'8G &g>k@@hڲRK; ؜&f?(L89ݓM7G ы֮\U$|9XL^$1Mm$\!U:`TnFIHIj(Dd ocB+#&SY5;nٞ.AO{4MP+8`sLX!۫`:"6aXTi"vj^0!( 265p4YCa bIfMJ8lQ(Ssa`` Ă#(B$#(UD3Iw(в؊):͋6cf`#IDL: J#$#VUm@`&# `*h<$a˥Ij`6%DLGFqF=HA9'NH s6#L@twQ*hXVB*E"A}>F=r("c^<9Ö#& ( 4TTC>ݿU#%AX[ŠI~nVjd~T&go j$h-i./a;ql6̎\ڛI1vdSڪ.I\"h%rU]9ij"8&e.+H:R ) Շ@{Ǯh6M2p#&*J;dw*D#(D*Adc#&zhV}$M2dvb9M]7)ҺNs3P"mxMUVA^G#nv#&{󳽚Zcci7wt'}4_B+ OMOz17Ѫ=hzX#&vCf.a+Xb n *r^rjqƚr'FU˖z[MO3&ܣ&Xn Xx Sy*&k]i! /N#(`e~0PւcAy.&aXF+=k8a4&t'zTDTaZʵ!+S}}IMj6"bРDKʵ#%n\(DB&#%u#%$cƊB!tD&fk_Y'luEd XAY$!#%t^ݾ׼9>JhU`p" #%H P=N]>Gֹ`D(qC}#%Q3ryQîu%9Sv:vgF K!Z+%ʫEEDLNAF5XC%`BLi#(1d,*K4(zΚkH4:mٌ013ij֟Juoxy%$ ݖ#&TƆ.;Ҍ"W,j5#(aޠ65T#%H#%5@% E{Rς1`q.$PuS @4DxAz&tYa`i`;LHW <-d.O?+1 $:#(%!Fm4)m!+]fvo՘8`¶^tYq0݁M|| ODN%(@ R34N qYk{@}{1[ '"8\$F"S6RMK-1)AY6EMiV3hlRc;,Up#&=zQQ#&g)hr3_#(:\TE&{< ۿtRf"u!=wL#%#(e2 $f4sV:HUQ9IX3(}Ezrl-<8A2ɝZ$VRw%DMS"&$haH$e#(k`f8Ci uRv8|¶5FNNtʌm;04Fe#(e#&c3.6?#&.T<# BشiZL TkAԭh`f-V_`3Lɉt=ihYC9d WbH@R#(%*Ȑp u˖ĺcxTN!N###%@ U5cv1B]#&'#%/I,I#%9MB5?'~졈 49 [ߡĎ~:L#( n&E ZH%+{>(mX,A#%Bb'w}"-G[nS40#(U%5?n9/-T;Ч)#AfNXQ!6"4i%]+aW79瞻g#&Sd5Qy7s]Uv!]ݼ[+!*#%aJĨCD$#&f:|=Ggloq{3 gp )+Ǥ9 @IbTQ6B{8KMEJFd4%Sf}QW3H( TmiJRֿ.$oUj/%-j=K Dl)Z>D?Zn"U5ebQlbzmԪ(@'E(]4{oMf'9IگhA4#&F/XoƜ,x'H #HPh7 e8#(9e0ITpUoX%D l] 'i0&7mOO 644@X&$+P$#&u[k>[MjK\&M&9n}u#% !"B=*Ȱecƨ~lxgb1H>3iQ?5-cm9М$r[liAshwڽD |ɱr^#cIsb>d2\,z؇ Aޮ}H&b[0TF&#(Z7mƯaQe/.&71Q RD't}s\ qQE4LZ4n|cת^˺ @B@D,"!# mJBU,EPB!>D᎞S;YcPC2d#( f5RB4ŒjyE]}p1}]2*AZQ?C,bJ8,-RFvc#&I8A+Ϋ-i54P,M&D"b$h #&ɭW%Ef̪뛶vm^]Di6T2%4Bh"%N#(U˵ܷ7Zaj4SRezV]y[oeLZwn,elkZb3C&:0f'к#&R,Y7fl&#(^֍6ώJIJ&Pb#(r5Dx)(c77Am< %E .IďWx|F" co'QJ:Xo-ĸvs] z45U*qu|gLlo{ao!No($QG)ļ.#&Lo-~BID*hߙȋ,?pv_:|䬻'ҋbN =8BR!*FiD 7(6ւդIlu ƜJdzSM@BN,<CK3\k®KҍTl(ޮη~_0׌_l=ϣGbuwt/8ځ6^HòPNlhs-okQ;_#(%2ArȩK t_M`g(9F%QPm@_*j#&ROf i+^Dm]xSG~t*hfFj1#(R8ɳy!"1O= 4bȓiEKHHr;f.7C"̍#%(6?'O̠y y9k2*DSi#(97p|BBF@`QU{[=wQ$&hb*p@eV8t^4ÄR]mg$*dSB-װ8+,#%#vLG=em-L`3Z$ n_Lk/3RGp'|F{%5!B gK }ƨdԌ!,Mzv{*Y":'RΥ(⨊g-W 50>>{N@΃++7n<#DZAw{H(wb~KP'7rWx5#(n$ Ksi$a'yVWSc]BA#&V -#<== -#-----BEGIN PGP SIGNATURE-----\n\niQIzBAABCgAdFiEEivIt5aBoIuNHTzxwSbTGfAUneqoFAlwfbtMACgkQSbTGfAUn\neqqeSg/9E/RgAhaR7IretWLnTPFE7FvtcwQ3XjAZxyom09Tpu/uWPY9EwmHd2e5c\nduXjen4E1XtJq3FBRSGom41XSKVbpsLxxK3nGdYkYt7nVIR7RcmuYRCu+P3rTyBg\n/2cALYfEDSsGFxkoV0GdSlKbxjKzyMahG07b1fC0cewpFKFdEZJW4iDhekFaIl76\nNGz0uHKF3hfmbB+vUbvwVQZjj2vVAXRZybFqcKNX6lhQZ1tdsgt5PKorPWKdzZzH\nkGsw32M/deiRkq9dBNtJOLhjTMfulZwtMvTNsN6jDWNL9ltcHjAxUJh4TsDuOxH0\nyTxzBSqNa3KmNNURCdET+bdKuq33NceEZEwKf+El4rzfVbEPhvUBq+vObNVvkwWB\nHMTEiJ59zb0qjNKtVS/uFU77OUFLgi65DqLfWwD7KFrcY5tJMvbdSor6YJeVlyW4\nqWWccfl+nvssUL9SlK9dQP0QN6oRa3AEaoEHyPklT1nc7n/Rf0oBg9qx/1tcsEC9\n8GuEV9jWw/SBPtsFq7Pv5gYYC5pt5b1ZzKF+RpbWYTHXiuugQ5/1fV0lVsLQn5+3\nOYkqiEib5ynLW7J73Tj/dfNR6fW3LFf/Rhbcjyj2guSITbtf950y+cF95qEwvmCw\ndS2DOqX2CAU6OnOwMRqsFSEVIZhYySYCdVfRet0hawlRcImLMYw=\n=AByx\n-----END PGP SIGNATURE-----\n diff --git a/wscript b/wscript index 9ba73f3..9c70527 100644 --- a/wscript +++ b/wscript @@ -4,17 +4,16 @@ def options(opt): - opt.load('yasm') + opt.load('nasm') opt.load('compiler_cxx') + def configure(conf): - conf.load('yasm') + conf.load('nasm') conf.load('compiler_cxx') def build(bld): - bld.program( - source='generation.cpp', - target='generation.elf') + bld.program(source='generation.cpp', target='generation.elf') bld(features='asm', source='seed.asm', target='seed')