From e69f0a5c80f081ac1091d6e28cf408b539bf55bc Mon Sep 17 00:00:00 2001 From: Abdulaziz Ghuloum Date: Sat, 23 Dec 2006 05:17:57 +0300 Subject: [PATCH] * Assembler-output suppresses printing the closure-size; it prints a newline instead. --- lab/optimize-gc.txt | 4 ++++ lab/sudoku-2.ss | 5 ++--- src/ikarus.boot | Bin 2041503 -> 2041697 bytes src/libcompile.ss | 3 ++- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/lab/optimize-gc.txt b/lab/optimize-gc.txt index 9a0278a..014bd63 100644 --- a/lab/optimize-gc.txt +++ b/lab/optimize-gc.txt @@ -20,3 +20,7 @@ Copyright (c) 2006 Abdulaziz Ghuloum As of r127: 3.79 real 3.15 user 0.63 sys +With engines (r139): + 3.94 real 3.23 user 0.69 sys + Note: this is about 2% overhead. + diff --git a/lab/sudoku-2.ss b/lab/sudoku-2.ss index 4766c8f..c39d9a3 100644 --- a/lab/sudoku-2.ss +++ b/lab/sudoku-2.ss @@ -414,7 +414,8 @@ (if (= count2 1) (begin (let ([row (+ (car (sub-grid-list sub)) (quotient loc 3))] - [col (+ (caddr (sub-grid-list sub)) (modulo loc 3))]) + [col (+ (caddr (sub-grid-list sub)) + (remainder loc 3))]) (grid-set! row col (+ i 1)) (row-init row) (col-init col) @@ -603,8 +604,6 @@ (print-sudoku) (error 'sudoku "MIS-ENTERED INITIALIZATION")))) -(define quotient fxquotient) -(define modulo fxmodulo) (define do-file (lambda () (let f () diff --git a/src/ikarus.boot b/src/ikarus.boot index b7b47a12add4bdee4a0757d411b12df3a7f18f8b..a506169067057859e5c368765ae2303e41bb6940 100644 GIT binary patch delta 297874 zcmeFa2T)bX(m2k&mvqjMvt$sn2pBMc7ce2lixCwi8$nP(F|1+^7*NzUhc&L*MFkZV zv+JUwqH7kjD6Y7xE32;jdcqa-E$`b`_3Hms{p+KOGc!FsJv}`=Jw4%^yY|9_2Nx$~ zxGTv!Sm>Z~&0J?YcJGnaN>%mH+L@DWmt}r-G|BuyRae)^DUxb$71AN|hL7DVAofGhC!l`OV^>3vzAUi*@QKKog;Fon=Bk zD^we9@vJSz?gld!*HPpI)rZT+6%JW1jpr&K3E zXtPau_?#BypwebQ<^_94NnWR;INQdfY<^anU6Mi(lli9FEydByeES+o-Y#}HDKj}YV=oJ&stk! zlv1@}d{YG3WqH>A!ASSfgr*8moHez~dezucp?H*~@Exa6HTte8>^*5~m9?m8ic%G$ zO*yxiqflB-$lB)Trci9i%J zO1jU+jPK(TieKt>>5NROyYjf4v zwuWW}mKeC21^%KsJH1SyqjO_9!lxT5b#%gJ)0iE`nysQSSB&kMMq|w|7Py+mG#E<- z8Vkc%SSuPEjIoU0k?izk7&H8n#`+B3U)EoqX0fvftRa`LGgFyC8h(8!>^u8vOG2pyeSO&=pt zdGEg_m)!VRUOs!8Mr7V?}O0%Y_eKlB{S7dfs1(o#Pq(yjjLT%uu+(EN@ATXlE_0;0uU{or*`txE1oiK$nv^2WSAp(YA>b)yE_;`5)g*$=1yVkS~mKUyOmcrv=OT= zr6OY^&&cN)zf@$bgHT_|8@w8`5-l3DYQq~#fym%$o;t=-OPhSDWicy5Op}m@Pw9+@ zn2OvCPVsOPM)6EV#$2A^?8{~0%Vpuqs+!AFyLjrguT(=djw9{}FLQY~ewJ;Ti&5iI?tl&-k{sZ3wxVfP8l9$VT$ z(qEDRq<4^iFIKJ_ZP`fD6V%?pb2Wq?fJBO?`q zaSYSCS~A9S##hN_LT5>~tsszAL10m30;8%V@Ty7z+bR&^R!Ia8NG$E!+ z02PY~wpP?Y7Tl= z#lgdWM&MPI1eBGBY`v;E2$N)+zqPI(U|yKyShclyg(c}=@B42Dd!MQr7~K@+he;0q zhJKYrKU9`Y^{SiJx2n1=94d{{stLTRl0d8fiTQ+nOgO3ir0O>{NQ7WaJv zgCeCdEMEK?9!E-GOv!e7-n@KrN&AoG(B(U+rO~REys^(cpEZZeQRs0~q%oN29WCk$ zdfFV0V1kj_{sN4aN$zkjTGEG4x1>g7LK{J0=OvgGBlTuzsfq9;M(WAp^NJxbR*GVT zdp&LrTVn-M*l^H`lP0r_Ak3H-CwQ-O5$?oEDXjG9M-V>@MJ_jsufi{BXtljEh1jKJXwlzo)*w+xYP!gRd)qc}W5%DH>jB;SDZ9zz8Xl z>Dlu;w3g=|%E9EI6iAv)6g_wSHoPAp#V|Sv_aJhlWTTYTkUCOo&tT8a!I_aF|Kc_9 z8YOuuZ?%L0ql9kgoP(XC1RtLZp?s7SKpPpDEVac(&PbLD&yXg^OmPFq%KXydXo9Q&!88ob9! zZCDMBPQbXaV#qjOg8O5!mF{YIKUQkXdUqJ35y^Wu9HJtyzv|DInvt?~LQcId!mOFt zfS<-mYDRM1DKH){y7>3rFjN~~+M5pgHe}ysQF7)ru$dtBV1@c$hNKBnB#Xbl3fHyp z)dk@Foq%sS1WUE?H+kT76>D{#C=FnRI{y6ac>lCl)MI@fo=+4E+4X?7lcX@#^M|^( zK>7Hih3OAcb12v*>58sSF$O5$ z+8CT@`Cgem&Eq+k50v~!c&;Gnc?i-bOHqcjsLk2t<*?$8iC z0_EFaj^tsmr^WjUX42=dS$OFjX*g^C$)g~ri=n&m2=qx8O1CB$j-^ZY8BXy|*f>`- zvqw9S=1I#K{MX}r;Iudh$L2|G8LT?en=f$ZAA-dBg5In)aBaS{mElv z%Td~(FmN3&wJ=j`#Z3$E_o5}sjzE(PDUzvNbPh$+jz?@hsvH&Mp-W6(9>e+tQWN+! zL#T?^Vfc(iS#8U+A$FnEff}Jb3z?|Px1y*G773$1C>sVY5)x>C0QN5ua3*JfcH-Iy|8VW z7%r+k@L?G@#F{&3#Z(0-=)sOky4^N$xs=Ely0sgEw@cyBb%o$?!!GE%f|oj0gry7$ zvD9-nR_fjgDUn&qal2^GP%D6rls5$KMU7my8J&-S%~E67y;9I>y%P?t6mxppreL>9 z#Gm<6-=Hl?u0zS9LIkgZGpj_?*6jh$)gs*ge)t?5$l}q?Y<6%~*4A^jX2iNT~^_-9k`W zu^hTw#>PnN`7~X7JyV{c>&3`F$}2)#Fo)@^M7`!UWeLWc&_YNOEw?`>$cci%-~ z&pQfY+cKf+E97`@L?uh+LbIKsknINQ zr-qY);UaU-TCR2RNdmBU8cf?Ibx@(*hs(R9R&=go<{sAU#ksEQ5bXYOyM=LTy#nU! z76Y^Ta=5iyc(G%aL$5u;X$)8fNB0N=73dC5d!@0glh)6mo-U6+TnY|9iui`Mk9F-Op*d2 zH(N+Xu@v&Ng>Pw?22FB=4|~oYmgEShWYbb8&5>e^sIAbor)pC20oEr;{-7C&I=Aki zFgU*fY(FSy9n7RY>j0uzC;CgX6uvtoGM_Dir`ov980dOfsLd~n;J{(2GZW9Lg&^fh zG0Z(rpG%win7iji!aYYfRu`7#N*;8YIhxCSUEL$X*A1Nu6OIT<4brLKJDyS9IR`XH zg;-`BWs88Hk4ht%S)DV7)>6o8DFD|)IJ)DGNv&8x&1~3t?2DU`4|9%6zTlL{X7<{7 z!lmjw57P34L*0E0yvP%a&|@jk?zq&C5jtQFTaJt25SR>lCq(?=D2O>B9HhLFaQcMc z^5Y5CvY?YvcQ!3IVqE5OE^{!zX?YI@^XiwQ%aQW|qJ~Re7Ukszo%D2c0?!EP=O@9R zCk1uflj(O#>cY6`l?b~}eQDNKC_f=J1=rK8S@lj!-5FBIESPp$ievG13Gn)~&`#f3 z(EE%azj%ZZ=#yD-C3H=1zy8a{|Y07VJ1D;QOb6-A^L^ zU@*mThs{3;+5IsQ49-i9Xovfsmx6ILOgk?nGkTXM!sqj%T;_K$^k)&DX#m%Mmbx;W zk<+1GzEHtGC&S`=0e_qZ#rXn1bt?3{AmXd^;P?gUFU892V;7~_N=74iBAuf8v-q6} zu=lcX8!n7rdPRz4ZY+$ZdQ{2uVh^ERE&uHyOuQm|w%D=o6XG*67gOj0ql0i7{b6sh z)X->>;vDrC^i_@LFr`q6WJ~sx&&{E@P&&tG z-x~|r*95zxQt70~w?bmaz>w>r{strA(sf*n&54C)*TrJ&V=}F%4WDcRA!#9wg^K-+ zTq{v;+z43q%NN$0QPvxQ;|-=hwQdL}$7ckrx*_VdNP?F)#Ks5t&>Xto6pSXPfZHu; z0BfZot6WS)Ep2zWiQ4`g`4v;l6W21;j17*H2^0f&a;RrSxku5{MN^Bb!ekkA&Niasl(?EdAHHF)V;%P3%YM~)6iy#b9m;;yKQ$JBosz;YI?1|2gCZ$_0p<**K8-spDUxc_F@hc>WgPuRTd4LxI5oWnQ_4sS z%vVTilG;+#=sO6`J`ntSy=e|!4+a0r;^D7{V(D9d7(_i1^Qhxc*!xI|Vk-Y6mJ+2( zj&jH5QMr3#p!5Ro$AaCxgJ8mAVd(8+X<2tjN<%qIPq>`Do-lStJ`u|PG=>sIGB9E# za@wq`;Pgy1G<_;KJywGIQ%|LzSo>=YhT+eo0c;c;9>_M&0?btTIF26o5@ol?(e-tB z^|UYnNRFhHP?nK%sw&8NeGH}~!usce^S~H*^;~fNLj?75+^N5<3*(9O-5* zmh4FtWe10W?K{3Ud{D|fnl107p|IeMa3UIo0d6_8h5K57Wp8-#Ml{^$L38N#n`n4! zIQaZ7y1T4zb8s4jE??4Qbka+wi^`t&p_TES(mHcz3h3S*q8r%yiTAk&2II7??fN@T z?(5zP7wNm+u;;C4?bGg+xmW8O&122QCh+F&?asI-Mj4{6h20?j4^eo|9k}|3be{Fv zZ@po|d(mq%dQpCA!{vdvE0_bKbyN}Wb1>y$%CHX7&IKrgA*kOI%Us5M!*b*@L zEcxLAMiJ~_4H2IuJu{rCn1?>KM5p+@WjR`)BTjbuIeS#}__(~9kj2Uo^u^fiw-t$0X!csr*KxxWS{dlmC z2gYU$IM7V)gXQvgU~kS+$vn8ogW47hIE4pyc;IU(_r-Dxc~HWGU@Hdvo(F&NAk3Np zvv^=)Blp8{LwRt92ky2EIFSdpc;IWtfQxwWtDPK<Xk|@t~C}1FmPmQa6@} z;K5NhIRcA0yR%>-5AN|mU7Z2f@Zd8K26!;wQ4cv1%emBGK^hMp@Ss&q2Hd~{-C8Ua z$AdGqi8xc_;=Y z_2t1B^z>vXM?6`oW&;*1XuwcDG?0fNO01VW9D}P~EY;GR1zUJv?!!{!dGLe>T^lms zK^|0Z#E8vr#DHauXnom{jb%q`W$^bfF+}FOBxBH%36Wb^PFa7YJO?kO>68!pYxV?> zGP?ceR?EoRj^43ruQe{|6FhXLmXsBDNBg3<<>;h8LB*~Ig?EstGqkpYyhL^G()-L2 z>+PUxM>#~fU=Xb6D0fztzJlV8vYYaiC3K!>ZU-KnWM?eUx|8h9Jc{-9I#BxA+77(# zSQ*3GPO=_dQ$H`T)6oI9KDxHh|1Vu*C_p$v-(sT!U3IN$80X+Rj5+CNtPnG5w5cVy zb(S4i;W9G>x%%1I!mcP=6B1@1P)D1>C0Em0My`ee@YYxdTn^Z}g62n}Po8VRE$YFI z&T@TbsKaW5+(q_b@z9zO)J4F1d%!4de7ZYq(&DIH;Z7IXli_c70n@G`UgiX?wDB5_ zkkVCd$Z%c_gPmPvZxqSBuCjx&%Qg7eRSr|tcD90E8rem))yWD{HF9&hmS$$2_r$84 zm%cN*E%wAJs2%hOwzpVW5Y@#T&-dN!<&0z&0#V0g>XMnB$`0g^*mr)Bft zL#Rx5K-Ar2dU!XL2j{xU^pwk_I}NgXbVnspX>RiVz1~A^plp8--VArJ0{fnFFI88E z0$6iG*B*`q>)RNzZpm~14BLCkwOFs+a{CN7F%dw!_O0vZ@~I`CX5)3;obk8u2HRP@ zSX+k4PsMJSg$bHhn%>e7kFoJm@29#CSy;C8It28R?Q!yR+i7ZVq7?|zD*o#;Odexy z4}lRXT_sL?-}jRDt0sN846e8IQ1_xBt&d#YOG|Kt{(DNeY}eVhO02FFt9y&-(pORM zlsTp4_&4Y;It(5Zo7tlf)@?GubNev4x>>`%qr5^it@?yDb?a5LPg4)*5hkxx-Z%tr z!sH>Uvw!mX6n9}#AKBweb=#c&zPh^+RafWHS9Uk^?KmjbC$4qxF^#%L$F~b>488iw zt5v3=8s*&xc)i!WqFIan<9hIDyPrH!)w}F61cu`vMT$p^O`K4|lfzNa=y3WOH-o}( zd92m@Y6az!+j-!PULDhE&iKqZc^jho%k)AjB3pyznSzOaO@Fy>y$95w;NR4;Po~os z*j}k9idSlN{05qt&R>F&^p>eFAT-ay+7lD)D|Kj2_eOVAR703HoSa%@Ftto!I$gc> z2r9V>T<@B@t7s3=nk^?(HdIs_qRW{!*m^S?^~F8JW~>Tf5fbDjXglyV@SOu23QSZ)r2o5B#E4lxKYn3KI3yI705Cr~%;-vWs;Na?9%V zr$P>~!&ZefgIklF9l-yli4`o5kZr4vsoV{Cqk_wF2u5(=BY(4Yyobp#23C;q(LxtH zFto3;C6q_V)+(0ct!qn%hj*mhRF(1UJ@{PGv%<{~y0&1LOCu4JW<(k3T0&l5XFa5G zHd1aWdRadgg@XiKqtK-MWNvE%U87`*(=!U^teS8tO7_BFT}Nj}rMebaM9bb#ZG?d- zynb(_2fdI7s@%*~T?wZV)z6gK2dge55*?>*y3>OSsa!H-df9^597scu~8p z+4Jo*aJ{jS2Hs}tXwcrwmEJO6hGoyWSzzoO#>{jm%n->K<|EQ{JB*p-(O4jj6-~w% zo_y<+UZ=3F7#mzjV+Ay~fX3*p^{vloOb5GQlG&c?7{&co9nB*OJclu}(rXxt#Ll;S zNMW-uW>!RF%P^Mlk;do=pxGXZHyCAB_8WzzV$7_Rm7p;*%Je#ng?Z9g9>%=uvxZ=- zc0CKKKH2uM@-k$|&zF@>84yV=mfx~FoITR(1)X+ld42l~*YHR|M zV-2BHTe3V_Q$kddMy+N^%5`g$P}|g`ks5z0Bw9lkjXD6M8g(EP^>DIM1i{+TvVC+A z!g^6Tt6SlNi+nT#XqfmD{Ano$VCf+mb!!TsE%B#?HU6|#jk*m!J9jt2CzlxONbHuj z;4nt6>DrEE8&_nHjv5&?a*)QK3Pz(2hA6}`Z_ltOZOzEISdBUamW`3?)aby#R0Oe! zo&$%ZYSbOSK)Me}NQy_%cY>#5p0M&13ZG8%Oc zOoPv3l{LhSmn{@Mvqz7Y%@vAXFl&Nb+NL+=cJ5BQ4izwNWK?pTCmnzqbr{Q_V>fB! zkc5$O13lvtV>IeM42&+fPEt&?CxSKVzL5K!++NWS^d`#n72(iuqTJW4Kf|NSJ2U~6 zcL1!KD7#FGU{E@!hsJBvkrk;y8g&#)u@Zx@{^*J%)qt3aM0cZ&%jOoNL>4e15(HeD9S#yhL7e*qaOJsor*>i0rn7?^f>^jOq`(Qz@!i6b@Y@n5hhSfif6(zK%zqlaqL z-+f6A8IH1@m~B5m(*64@np@F3vM5$unkfT+A?yIt_Zv!l64E7S58Z zE2hBySvb0=_fEI4T8u zO{1O(`)11?idk@THkO+WWwT`;*Pe)~;U+6NDn5R!=b#~@<5H3|{wza12SVn^Efnc6 zZH~M|F&FI9Wml_ttP-l*DZ`VZM$)NjK6FW!7b_OPqjY(gA_Kb4m8}(?5I0wzpjZeG z=gKn;7SU4bOh}q1uXkC@NKiwW5H&2$6LmiZYuBikFr=m6Jzq|Cfv=GUrVQsu)Ya*% zUJfVc%XJki;Me(b(`qZf#ucsBs8@k{fxK3+8tyHSZ4K72l56490y##p4k9yf$+;dD zW?)Br&$2eaz6@OCZ3M@KvV&q1G+QVKx@~5(P4LN>rIWMgkl_OpHR>&_&{kN!P;P4Z z14E+*dQ{v9&p02AdK)}ih(molm@Pu0J0NwD>}jx*mDvS57Rh@RyJ0}4JlA#)D=OiW z)et>oc&w(gdM_vz%Lfd8WCgO|=wkV?VjpZ+B6}+K!{sH|F9*PADQ**HL-bO)rb7;+ zLWe7(LhTU~SZDP?*sxUoRdFbL5y(F(3=T7jxzKUB9By!gC62`48DV8`5<5ptB&cK$Ha)9D2JXJLa^2CWvqyCBF zcBi%i{Rs-9b}(*a-0+yVSadJW!>CoVx5Lj2i%R!v42?P;j;@k}6c?7RmXi%GQZ)4? z7{6K$wl831zO-kYQ1L_-?qwx>?m;C?U#D=6N{TJs+#xI=({{xzn z{;RF|4=NV*PWlh|{cp2N?ec%l^?#3Ptp9(rdR!L#uU7y6fBn}kEx0xL7sdGx#^2vi z`Ww)HI6(f-{`~J6fd8{U|7U;xH>ZIAn}7dzCqSFOuRa^MJSOR9@A*Mqsi)sXeG`oo z9M^NQg}nW^;<^Rb_sfl~ZzD8y2R`T@+eZeQE1-B_Vhd)cWqs8Y+dm+3u)Pz#HP22h zE`4;u?dzpYO>H8%HeE|tU-3{4$7ez3_U2jC^IY}{h(Z3>9Gp-9K`mvgh)Tq30~@& z5J)pK)zeQ#XC8O)YafzbJg-==s%e$9>c_0=(YH^1Q}t17MNUsJ@h5R`^N?(Vb(Laq zrECG_hh+!5&%1EDm>yt!VYV$Tkpcr-l3FnAuuPO2%pvu#?5_MP5>_3SJ17^q!Slni z2isNtZ8UT`BG)&5Y#~ltvr_QzIP`lXCo&h8M(mXEr)1c9MD`-dRswJ=5q9RvYDFt3 z$z`XaPDkWAdi2<^Hkjwip2qpM0&{G#mRho%04*3rsWoP`Pah7?j>u|*ac*Tw)9Djn zPd#D_8L3A4`eqIk9l9Qs>oCke!eHW2IoOJx4q|hQsMP4`V6STm6-kW3VuE%SFdLCrxOk)?Aiy_ ztu2l5jWl-b`U&AWV4iMo!<%5OzZka{+c$-aXSAmn8OLqt8J6lS-W_=eF=yqPibpW# ztlZRvc0h<>_*a6<#T`y&5BzUK(OKE9`C~-lyK7NNN%3Pt;=5@Ps9ZzrXtF-W{F&VI zyJ&NZz~`Loq<8>bF|c}q7^$_e0kk1g%XCbqN34LfbF!LVh0HrAS3?eI!{F69xo%B5 zB3Ay1aywS}J|rr%94mk8H(b|rUSH&X>S@L7 z=ZBSn@0H-T*9Om8bB&C^?1+Uf+G94k%5320 z1bf<<;oJ21IW$xh)K*J4d_lHSJcoh{vbC~U2NZF{(k#X&wPlJ=caM(Uhm2_0Gszp| zi+Gy;0%}~uV~CeXwwwQHd+xJQtme3)#Wh1w?C<+~Q2|hZr{hMgE z@fMrP_kc&?Rw+9J3YmbXM!d6LA#Umz>?{wAOf7qBI=yL3rBnAP>>1WY^L#OOwyjP< zFH<~0H8bo%gW6^q8U&V(r$Ly`I2xqZ9)rR345YU##WY)SNtP6fKrnN)b=Jkp8F)M5 zq`9?zCobOh1x&8#1JTLL@wM!j%_ z;{!~r?Ti>VUtN?bDIWJ3uLCT$andj1yl%ZJM_9k6^1}Dsbm;aNlh>u9LWq1|XAi!G zXkS*3$fGw6u+%J>~n`JgsgVI8|4x8f}Co94An(WRpwyUB2HMym(!~H@mySu|21?u9gI?uTOa*s^^F)A~1`0*EEZuN7}pdi5e2AbQakZ}X| zQ{TXm8)$VO!to%y=}>k9XMo=*yL6kG{xNoYpSeo!^SCR%xz00A@9*!|%&Yo3Pkl9= zTe|t5#b+>kvSHZTH`HfrK&a2SxFKEJc5NDf63|h<1-n~#>Tm|uKhm{ay4gfe@jD;- zQMcsU*6$GI>v=EY%GF99=LwVlao(H2$&K4$Y6^RA%Xa4e)sbk(CzKoS$m$%S-W|D~ z3LX_gpF1eBW=q^~{NWcwXeX_|BTr%4^vhpR=dN6XsabM6CG@;2H)e?+yp@n~SMJE( z{F;PsHgV&94mJE7y#C4Bwsrvy59XA4*VGO@>I)U62TK)0Z~TKo@VqCxlUiXxN~2w7y4179e;Pe9)AzNWZd{V;|o zW)(}|e1srJeBueeKfM)zK@tx-vOJ1G^XUAgQGdWEKer#E@$Uz2kK}1h0%%UfsW3hL zuSoHe;Z}&kV%q((09Y7rYHb>X@Jjgb`4Qejqx9G&nt0&bCwLkc1YwWmEk3NW|744e zo?W+w&dC;rNMgbhxfZEJAKXlw9Blnt(-!#C!)<@`o^(QzTrhSEik_gqbRRy`;3+sh z#TCLJ==>BHV4Gm_Q@OPYEg2~K=vwM)m`#Sz7B=?q;i+uH-Y50xVPL7BhQkU+O#NrF zgKSxLgz3lOR}lJ4_NYIQ*)w_{kgl8P(ygqx?iscU(oO-mWTSpk&OBKEOl~bq=i>^~ zdC?Vf`A~wr&7JI6#f+tOXuA1OwS>Eyj7?zRGugz`EADUV^gI1+oo#8IdXVv4Ze$W$ zQKI-%U%32SwwCGDMZeY`QRTtsM^w~f&t(0&r8%lZ>JnmGSeuHw?)h7~7b0QdbGat; z*Eb_I>Q^Se?q3=|kTP-?(u?JKb+Xnohx6#dFSj-;t&&z)^HtKsLR?0TP~cnX7cc4R zn}4~3DYAcsz}x0@5ydVT<)iR`eMYqF)}%>-Z?7h;)gi4t!2Va+Ta~!4 z@_KBj(f>3r!Rvm+3PN9_`3sg|_G`J0Bs%;+Q#kxu4l>`)`k$F$95KbK62Q1rcKsGS zECJM|azn*d7*WbDl?Gi!y6Z}1D;2KdKoMhOrH6vRp;1sOJGjTJ;A4_x6qM5enDcEd z@nHN0S3uu@qwtPfj^NM9_wyIYhaNSxu|;Wqxn0WVy|Q9s>^ydpeKGf-cD_M({R+5fl3Qgu_=DImKnBB6@L2el4B6m%E4OIG6}!?IM32bKZzTDw!YjN zYG>i#S#nJH_;0^jUYzb*2rhrhj!NeeX!)n?>2UU?7O@bOy;3FDU&8c1@n#clCLkVj zz|!&Fg^QJgvgJ!~{vdlW@1nVG??mr&N(rT(WKZV| z%%*Novo=@hkSby;!I#*ZxDZ_T5d8j;=wBe#tYV$tm-`84n$|nvm z`OG-#_E}z|EbjroeU_UKefxyUh`L`9HH7!&^Yj?2_U7#?wA#}2V7H3?S;g?_0;?oF z*r@_O?F;;QdT=$&ew-d$r^5fV?!mj&GQO6F=pfM_{NR?k;T~ zb4ssnYFkoiH5%CsLKMVFbfaw>+(7xp*t{){|BLSf+VMWlRuKBu%m)S8%|}&!e7Frk(`bNn_9-J^BoAmEf+i?R-J&kQ) znjx`NW$zUmjD7#@24nUq*$TExq#7F3(-LW~S}>*%%w$r-Ezyvz5T=%OHJwhU`maak zSi?N%ONa}k$i&T%&ekypaliP%IsAxg*?rkmrH2Te^-QXnGlz{kg^1;7s)V3nwoXPK zT5+UbQ-Bj8EmSE6jAVURX9Mlpgqj1bV~BeLdOQPm{wX^cJ=W?Lm5ySvk-h4PejdC) zo|s?<-&BB^5oyE{YfdVlgAwV#7>&#RicteBRl#T~DiG@>XJgJNm>Ls3Mr7Vq1vnU! zhFV38$6G?}zwWBH#ovG8iWrEl1v)uvjF}=nFlHTA!-S=hrdP9q2_|G8+8G~HG6O}Q zV@muQF#BJE`|m;vX_tPY(+u-iQ0*~>*ZKIYb06Hy$QZ3wX8dGg3Wv=|Q>68~8SzrR zeq0FoznV61`89=^F1Bp@Bn(I0(cE5L8HOuqZwpJ4#SDq<#^k(Q4@JM3TSM2^rux`a z>NY}PkTu=V9P!$;xmh(j&(1~RYsbo=*QSBc-GbDHxIgT~n+OXmNK=E?lw%_Uh`Maz z2*nn}PN}&D>#}T|EPm&XtrV|)t-=+eHag=bF%#OZTQ-3(&yrZ$xjZhcc(cU|$>kho zC81!24Swj`l2|BQm-v`!3x2jF9hLXJpraKDR!05`3*BApA#J?M5Dr)o8|Bj9&+*b&kp^ppzqOq*}H=BF;-NuKHKBgIeUXHjn9CM9LNY&@VhIpt|xj&#~g@7 z-H|hnmQQ`IYnnC$BVVa=8UpA%RC~f@HV?vxMb4J`SV>+WUtPFi;K=;iu1Bh#R&#+6B#%UNl=+ z!n#O98wnS`qY)+N3EcB1?TyVV=H=zSxHC)|%KIb5I@AIJ>yR3-t2uEeMOs^$-yGJs z68hrtM_1AbgZ6Gjt!M%>-AGGiV`E6@VC?RmdZY#Q-fv7jb)y)ql+I@ZsyK5|-aqgx?2FvQdA>)XoHBitsRL;>hfXODVkd~e|nKbyf6J#A*^rzT)lhtyQGg{F1L zU}n_z+xS7+ZsKITu8ycJe=&+SXo#^re7DNTlFX_r;3qO*eX5a{QBpktn3dTAT(=lG zz<|2Mj&a^41H6_Qd67U*fwChR?kzNOg!=iUIvLzRKtIe`T93rp)nm>1`b7NM)ou87 z23@Oaqy)Q^_5Je0u)dy<+nnxjqaNWq_SNULfXiv5f!s(S9-0k-^~o^CNyu#2TOakf z4wTj>R<>7ANMD_r*TkWf(;pl>Ni&)5Nwa;L^>En>_i09Y3KwAakrrTHOq@tgb5TXj zSy1Rng4vD<5@fv7bLj?9zX7S)G(}6vhIR(J&|i*6{AwGQ7r!p}mJPaZh}%}P8xRKz z?JmqXOTI~?J^^bFo7kbzd2r0e#zy@&oEly4WcL4mT$Jed;Is;rGTQ5XVI0Cd7;N&o95ikS3%Ni~H_}@0(!uCYoKB zXwYG09bcQ_G$4&}dCLGZ_u=n|kU;sGR?I75a-vB!3|Lhu2jEa+(tx<45o08cvLK)0+y&!ign#!~H5n3`3Dz3^2%DRcZb}_<_|S~> zR&~SISVwGA;7h7~>~vw$2op*FBGsh*kk*{^G^9RlLeB-|5Kw^bs;>50MC+alK)(eU zh9+iY3n3HVm9VV^q2Hy@^+T(pff{~jmu@VmWS62kQ+i|ZHC4VpLPs&KysRs3fAE-H49*Xn%EgEVwXEc;4i6=>ab2Nrh=3bFbyUy#%;9L{7Vq{0%m@-VQN?gfi*s}*ywKwO4p5^N>92C@dl)nw ziJe8AzK4~w`1QW=Jlq^pkg?XN8tiOGJPr9}m|s*dQBB;zrL_>)AJ4eJ0{sPd zJ$8I0u-YvJe9A&9u=XSwZ2(j0vs&znW3@{5O)y&ER zQJ7`;UNsBB$HK|4|5o*$sBtq|~&OlZ`OgsQruklr{MSA%u!&>xO=gF7fJ)&=H| zsboCZU`yQkl~8g!35u)daiJJ?5rBsqm@3sM)dFsO|BYmBPRv!}06Ui+(FD9Z7};~7 z=->u66G|JVT%JZnTEHFON*cDUJ=3t$?JES}0)`>Pm2o_B9yACcp6vT!ljdsc-G{a9 z!^vaodaRk&+K&n)t*5B4@p{-8A|#f+nQEFVG3zZd*KGpB4nkr})e1s;M`hLnzE5XkF+*1QP6y+OPckQf976#29Ad4Y4`Y6P*4p(xxH;gBWV)ajx?P-$w?)>6Y z2EIY8@xKV)^+s3xE_~k`w*kDg*V$Yz85=0kO8yU*Gw0vNmEDanoE*M`S7FG_8z6mf ziWy@Bo_&Zz7Rt4+ve0^Vq&Cw%k7(jVPEoA6}+v|ISV-UL(iqk z%cec=;{7>QII%XTE>D+`aQyazcK@VKINJvd4o5j1!&mg#bv%oIyIZ!k2+7Uq&vwf; z_Q%Cw5x5P&mHA!hKY-YgakN+Vm?(7ozk{>^OnPeukPacYDSVdVtKKpzrzfzSE2Gbt zkG4q1pKasi{DsMievQW?XrB8Nd?K*6B1niJzRve3Ro7>fOl2Joe99njJOXzWi$D>H zCGJDZNTyo-Xz&2WV&HL?mQOwZRb7#1kO|g|qLUc=4i3=*Z{S8GQ7d2n`0ww_)x$L# zpV9e!xqf5V@#S0e0dc*FAJ6y)_vK((G+N)Mur?ZZUd0u#`_aVOi%ZJ!fL0bvQs?%6 z#r=dIwYg8BdJL0PL=5r8>tjn}h^zC=PnB+L1!3#icT(aof~=__s*|Zz^*flNbAQ@jZ6CjT@Xe(RYkYxh{v&xmz>9@{is<18C@A$3OLd%YEzB?$3<0a07>G4BO+-Dtr$Gal&UM+d+|y z-gA3omQ9Mv%@8z@_!yt4Mu+$!q>&!c6N<(fITL!rh~W&|#tYGpyfQ%aCU`KA@NZY{ z^7Dt|BZw#QN4{CE-eQPI#67l4_+g=`IOT7)6435V!)r z)AAyom=ZJX5}{}dT%Lv%ztsY47eV|G(v(fIAL_%e-xC*-fuvYHX4_$70%=I5X}2y^ z=#C{2F9;YaJiDlLSigw`kj1$8V?}nahs8t5NW6LBqcXCrwcy2eY6VM`rc|hO#G;X_ zw4>eN>YtzKnV#Dp7M69d(70;$aqZW5_EA6(-355gPL$5AWG6~y-li~d7#V?elnx`# zO8m7eCbL#o{)9U5LT0V%Qkhj}?b^GLiA#w)Ux(s}y|R*MtQdmnMlO|R&Y~6S+0ZgU zNTp64E|o$Tkr}XsN`;H8A-ZA-gx?6yn8{^vL%R=hZ#BdXM_H(uEL2CIZiioo3!nZ% zBcUvLH3eCZxm;O(y~vfNsFujkz0Q^8RBZu>Sp`LjM6H_ha~ZfL5o^nb7rv3)-(3un@)#RZ65)cGL2W#BcE5&Ub{LOdX-kfSIj>xhjAlGFN0-2Q~J1J;$mn`T$>0I zg)g9g3USp9#auXkAHM_TJ&NcNv1@2LeJ%ddZDTYiKc|qIRx@reM~*Hb3(?{}rh7(9 z?HsK1%kaJiS|pdzxJh4tdRUP_SBalays!MMScRX3SdhzY4g>EF5M*>l?qH#h>hLv=e{BRkOGi2YjuuVP#ON5 zwc2v!x9D@u;T?72h+ARufb;i3 zktznzwPjr0Tsw-)RmVXy)5t-2{WRq6N5%p>iHwqb-d!G@1)yUll%$^0uRaME#);K+)_K_53HJ<*dI==+h0t(3;XmfGVGVVr~n#be1^7$?r&QCg-68;LUf0|E!zdd{9p$4wlD`eIvwO#~^;9kcib;i298< zLg#jL`!!Znf{Vz@SX4RT82mbs)MS+{JmUuoyBIYfiw6p<*K?uABy!YJ|L8XrygR~G zEN!U33_s1gKX#Y^Of}_}=kyV7d8WmSjN7NUz70+gfEMW>O-A!}F!!5Ew&wCm_9Y5T z(^I^XWk~{XeH5=GHJ4YCGeTtGjyRj%SB(^aSF@ql6s#ov@Hdt8J4`F#?=zh^!RQ<1 zr-)L``?P?_M4Yhd9i|oV4V<78oOZz&fwgWHY?z9)T@HOi+vE_n6}I~R=;7eizBKy23KTGVaO7hbL)=$Uypx8HA0BX$u#~EYe5#ygA9! zMCO(!AxOKf@ed%HZK1N>n9jF zSiar=jbt9}hZO~s#W{jP$Puda4M|?Q0BoEJYiFT??%EHzvxMYN<-*$jIJnQv6G-k; z!EH8~W0|n;8~WkkuzK@0E>2U zJH0B4+v(a%M8=PYxD?Em3V_*UXp~MyadWs6cBBi5)SV8+>BN`8f8EJvxEp)F;rJ{C zRJMEm=xZ@!?Rk*eJ?`zyn#4`sqP@I}HLC^E)*Rl&&DIEj{v>EQkEF9o+fLMH%fa6V~9Up(5gnON)Re@}BDa+Hw=N!}o^W=`Rn5w=kPCT`<1!>rwWW=P#6GS(d6 zLJQw40Dnz@b_>X4C;r~SoeKZhS&2TB&hxDl4;JR&`N)FZM1qJLIH%A3L6pXi0#P>x z0yD&x;kh5gI8^T913hEAK(*U1w0DO9j2RF48HE2}SicSsxKK!L=_HQmxJMxN{LC8z zJ9uOK_lk_2S-df>xRzrbU^EVzF2Zwt{9W2KMo;Amraun)7r52?@MToGjTzSsJ zDM3CCHJ4aRFob7nTqj^xvA*dvOE-pJ7v)NO1?Iz1ME(2;CVLFpRd*4eG(gR0wF zKBzQL1?J$*d{8xhCIDySVZvH6`%C-o6w?fFTZip4;=J_O553n_(zwPY422Be~Z(5 z2q(M`uVyfA@z*#UHwwZXeq)54iRPoojZA{68_6KnLDl1-bfZ}N77vHIn}n^~F^o?J z=WvIQk(4!bVa$I{G;AQe+(g1`^-ccuu&>+h?a+5KaWZ%Vbb2a>j77u-7H>wUg3lE6 z;Op{ed@1tYX3~K1pcu$iAaILNfwEZWxJ9t<@S0x-Acpw4R>n!g1lWtYtZ0oPd;)ze ziOiS7Xd4=m8?pfG8q6D#hgYjvaih+(Ajyh`kajGw ztyl;<-$|hQbcNk}s8i)E0Q+LN#J9Q#z_@|1d?%^T%A0xO{e+>odl2R(a`BUmdb>z- z+V_FG*pXDfUE=CQNPSqeOY}jv0dRbmP{a29;o~kckrDKG#u(x+L2d|!t-D1{ih68S z;{bUJjdUSxI_{4xt|RL73J0q_B%Tp)dMa9^Q(xq6>_}V0)u$FpkFNahc#6zd(NJ?Q zXE$muV>hr3zHOedm(*qY*1aFoCj6wfP}PvW@L?}$YDoJ#{xL53);+dyBIgPJyo$^fo78ykyEzbLq&&HUV-_O2I6^A(xlt*AsCVOW+}wQUQ7q;$tNbWcSh$b0WX%W&E=tFQwzZCC~Cy1Ac0lA7q}ikSEz$2 zBpe`(t72Khe#e`#+>EquE6Q5*qI~m(jntE~d~(J&EdNLWg5?Z+m6h>kH@|{qTc#P= ztp&G}XYh$;F@9x(;le!5a%u+w_@g^?&LN|#V)aHRiubK6I-#>DttW&X*+l^I(;)aD z-cjN9&{}_AS5_X4q7~ddON_Zr=N=^0SZ6is4z~{q-ye(G9wPil2hR86R=*P-nK8bP zhq4V3<`m>BiwDbObc`a#A_;zQ^W93yb0Cj=c9qj1?ozV4bb z7(*%DNGnZ_wN?aSmDIV|HRsBVo|Hs>VKvj7> zfur1e1(C0Sg7m6j0|gZuUJxtTv13O?#fI2REZAa+J?a=Wwisg@xME_=i0beSU;5ex zPc7D9zp3!zs37OkZ^?EpEgm3}<+Oqh$0Ys)ZMk;v>X@j2(}W=KO%k@N9TD}pUs}(R zI9^T-5ot#u&W0qZzLYwdugzzUl0o;4>>$Mq6DT4q)QbgyWt{W zU0WD^T;dO*w{E%o68i9!7$M@`jE9`#V$N<}4}wkzqONJfIL4R!eesEpy(a|aecEsl zl`%%-(7i5HIw^9v5)LCzO8ogfymh(9U9?SyP7sJq!nrZ1%|vDl@{*z_iim#GApDf* zQ^&(#`YDM&owc_m^f@hvwRKbwtUfJ>Wo&6mteMk9K8DdawVXje(VpXl9jxPc2w?${ z7{DwWX0d{L<7bF8-?re?>oHRV90`OoXGC*G1%l04QL#Uob0wkUY=M|x6KpQvmdKFyc zhQWqEM8gLS4}z3GM8or%6>0cVQSwQ|p@zGS77e!>4O9NahC5;aYk1Nit>I{^prO#L znP~WO5imJ`+e$x-EY`U*S%9g{AZdk2(rO~~J}>J3)E|C0FFH?fQ%! zGt6qhCRA4#dqMcObqOU}$*F4ucFzWaRs%;cT6s!&KWcRx&!@nQwIU!T1Y#~q^Yz=D z;Qd9RU?pV*G4D`EzTDrxQJ^L^VneT*wDKnr@WKz4|0QbNuo20S6_+G)OEyoB_v3b3 zSEzhRD0Q2IVb2TPom=yZNWas_GIWK#m&Ekj&&V=yg}h6mWmk-_`;O!xzuhL1+^S!n zj&Rs68CHzQ@xz$N7cZy_9>T@eqn_=L3MIc3w=HoDYw?I09_JS+YRQ*IJ z&|ejuCue97s0P`~_xn4f5){2es?LnynS zU2ZFQ(Td5%4k3=H_Vzf)ie~44!l~QtuM3N=34(?N^X?V-tEk?TieP?S3UOIV+pY(3 zr6Ms2S2{8k?RxFwAv1!iYj;ZU$59&M`2 zM?nUjP#`&wQVzBx3#L`8OQS$Kd{IR9F9-4IQizoPmk3C$0RwLf?BR7_(`_-WxYeX- z<OG#3+z**R#fTj)$4=$18&F9za?_p z697w7L~c!L!6n3`#=H(-l7r`#i^pM7h1#l2eG(JlNjCBDeUC7xB0h~uoo{30<3*%8^BFIEv zHuZDe&oKZ#rwbyS@g??nz7%OLRDp5#1>RtP*m_^!Ir@^ol9FEuME5FuCEWOd6hc*= zUqvv-@~uEwS{e2{zyn!zpjw=ahfN;{zxsuJxqw>#ULfKVinwX!3Zoth@z||0V~vM& z8DC1Fz8F;r9zMha2z9_ULoEEe_n{RqOwAChsb4FyY+YeC9@u{2H>0M$GCAM;=Rl2G3j8ko{PS(4SHu zj)ezi~34VrRD8L3r zJd?iFCy7A&Y)SRG6Z}C>k~?ey`gWhn$Wl;dl5mZ27Nu<~!)eq)&7IJwO1G=WFEyTZ&d@1L??u=sGon(+3+<74glQl87jUOReRvX zHh#Iv-`1H89=rsumR5ihynHQ2OO_i{c_V(?8=(IiapK{;9uld@m})v;2THFxIM27Ht|dTR7>3UHCx$;wSeWo&tOcphZXOoT24$i99dSQ+9ssh zCZyV8>B}C?kTt)QP&rh0wu$s-v_B8^&giuu=s;8h>x~Q zy!1gDreiH3BmSW_R2gQGc9^iQaDKt;m4_z}Izv;?^kg$c6u{!4-d-SJWZ zlLU3~`6FyDmC*Iy68zl_c9|v^-$_eg3of4}A9qg4e;BzhbY^&_E^4E@P>BA??6PE= zkRu~Sz|s65IP)0|=m`o0DJyEoz!Ml!%f@Z*GwCo zS)TnYN1^PQuizm1sj#1e=_fnX7(Dni-T*oi?doR1PgRx-Hww&x?@$i++0W_DP~nTT zNoNh`zo75LPCPwjI}#l8(NU1~n;#CD&h`-lMU@wqrrBN&j1d86KL^2)e4)*`l_ohR zn++DR9Wi!Vx)dyV4-p~fB_?KFmoJm~agQc4PWD`x?D{Ty~VR-}*0ouYY@JW{|nZj+05!GP2Ehk$XZYU$!{7{96Xc+CjFK z!Kg2VWtWk+OcWVdi44NWZ26ZOIJM&z@NOsBm9DrUQf%IisaH&U=z{7s^RQTlsOVvl zUP2Bqtj|`#)?7B)+FVu*bDzvO?KvZf9V}1(E;tlk9aLRy|MBkRlpCjW%`DdULV-EfrB7RikoanamP6@FGXL?Iat8Kl~ROhXGNe32dk_I^BxD~B>Eb_!8Q(F zNR*(uOmSm4_*JIBJpL7`P~1!o&M7iG@Svy^*p7qc9Ngx>&6?u+aPTt+SsYZgp|}wo z9N^$12f?K&ZW;%tIVe?z0$Z1%Vwdu-n;baXQd}=vs_q63GB~JcM}dRw?^ze{f42uTdfM5?f(0fiUzng&WC}DSzq@(7L})auH9kEHqj1yVjrUGOOq|g|L2t_Rl1fJfeBvnN#-+OP7c>EN`%?vEYgK2r8HnvY)gBK)%Rz=KVM$PZrh~f`z6{Pqh7BzK^2lYh9t?6ni^> zAbiu8d2h(6T2!rvW)Lt|sR{|+vN_EN(RT2=x7-?sQMn(& z*WY-RxLswrjp1>E$#D>a)&IP9OBW5*^KI;4a22^Cza}BiQfo#UY^Wl$BRI#Z$X)dL zEx^%Nu12hH(nb%hedPdlt;AGcnF%F!zqtd>4#mltm(>T^TH3+gq6u~clvq!EiJHEC za*BRsG`~u~tExQOa4Y5-R9}xbv*Js&&?nQ}neixAWj*xrW^2~W>gTYT`@7+xoaNPI zU&Fd>oLD80SkFPX&bq9q$G=b~@n?UzyAHdtuDTq9O&VNX_G|TkanX37l<9GkC;Rc! z4tAUqN8R2XVnQu*ZYyh8Y$b8A* z+W@?4%KW%|V0GwTQ|2z?EmpzunlfLPd(MKh8qSgc_@d$b@&nWjlt+5hyPA)a!drF= z2=)p02)s|~oIg8*RXSmOTXY%0qV2(Z58NR7o5UkHM zf>KY8*3BR+eJdmUQut}Lw?0qwRE6e2a&z5u_-sTy#kW433zFN3PpeHq9P7`=kR2@7 z((jlC3+u~)ULu$@uUTChW5ZbA~ky8IajPS^HpHrb!>eAtBV1;m6Zz-x4luJ3CYx9+ znbr38yucdP5YbpRk`&dQf~Ae+Ncvs>KIAku(I4xQ2R-0^H}`Y6l}x&$>{?&Q>mSpE zeS3DPPespoj4cJ(O@ua?Y6GFoaU(k>SR@O&1?`%O;jtwRcCbjt2HG5u!q>QFp&}sq z9(cAuj3-(^l@w;g;UjI%F>W48Xd#!EavO;xH*b(#NS|I3KDUs)B-bV);++a#w4@zw zK;1BTt0mLb?Ixi8e?(sgA88J*d`T~!eyS)jQpwGo5u=`z+(IDjy3Q$*)KUbDP7xI8 zWnPRTt<4!lJf#9Z_kA)W3*T}peXV}MWD$F1(RrZi!`ogeax{9Yzu!sk_B} zMn<<6k-dK}APINw-g$*nBhkR9!4KYEuwsPpm$q~gsj6IoJ}u=;qDHgdHEMWjzU!_@ zFtwFn**0o4FFo!SJk!EMuJctxyzp3mvgQzUX)O}rZ9#Keiz=_Y1}C-O?-RL=)~Sum zYun^6vddbuF=GUTxNi9FLv&wJ%YG$caT}4#@r&?h8+i{=%lQaQYpeAradsmat@^~t z*z2tB6{YntBEWcsuYu+a5&^3YK-UP7+~zQR7a<1{Ay!;QLd1pR1prAsWmWPVD)8U# zXBoJHOFL2NM(4?A-q7mrk1(*ESdH~90ZZD6$|n5@=iA9^DA$FtjJ(~kv#lQ~GMs-E z*0mQEn1=*tFOo%E0jYxscmIpXE1Tiv2h^@fdkZ^F8R?uB{Q3}V?I6;RzX%Vt-#7Pg zO4sWsDvcL7GjDy1YM@dcFI$Bz)- zUADKzMJq0t_{~4ovwFb%NZGLjlXZ{~Dmy|_q+CYs7%xh2_=NIw3mP4bm(T{fz6TO` z(lilg{ud1Ei7aa}T?AbFldQ|K-wY9;OW>P^b~8Q{TfL3^@DW~h7CcD)LPN)W{49|! zcDH7txr|foWfbm*gK$%^i_8ssyA%0nGR_wGr%%C|F7kl#;&6GvD<3QHdRnq0;h}Oi zsjhmQ3vDCivW8agIWa8u5;0&#r0i9c27J-n?885rpEO?-8hD;Je~#vou0Kc3caK{r zFamaJ&A5)uxQ@+8!e(UmME(C*SD_$}IKah5;9`;Jtmpxr-DG|jPVj!}0d^(d7Ng<& zHy>eGH`#}D#O|NPhR9IOo&DG2aJ8E}s(x{z>?%f->C|B&P+dgT#$?K_iP>X^al!LW zYr4zz4Nvxefcss`+WANrlY5gNMAK5<;6+Dt>jt}e zC>2r9Aw9bH5NtiXm)S|V$l7=oe(fPwFUpfLa>5#smD!trFeX`Zh<|a0F@`I4hfgw| z1d@&L>6WjsgZC=mJ&Y5)_=ZQJMK8H)jpDRBQ;c?liFSM0dJ!AM6cE@`7YEVWzH(_f zTyvgxeig(Hr@DYoZ!xMZPeX^^qO8A;lb~}C{YA7bZ?jg<0y3d36UpQxxo#0S!MnK_ zFR@hwbT|xkqvV!l+Eb10a89H$Rj05FCMWt_u@`A-}I^ zm*WoFa*I45h&E*lwC*Pdm%sY<9hwd+U>U)K@3NmR?58t3H#^gY{cK?kJNwD)$}u%$ zww2Me7qg2@3vOp}?h2mKvYo>As6~b+oS3Uqhd_Pp~NIX!Vfx23DfD*%G z?r?cF6Cx(c?(U8#R%jml>yg&un1Li4o145X7?!M-o#eL~P8e>zUik*^0ZSMrJJ2k= z_Bvi6hDY_BnIoL7oMbL?dyDQQ{`2Ij@+Qqn@vL+ZG>nyNQnG1Tm~3jcg4>dK<-ar< z*Vt5vUu^IU4XOl}V}zYn@o1SKl=lyVp!RUNHan<%e7dC_Odl?Df4ltdyxHa}zhZ3d;~-e_1D>yA4**d)*RR0KwX%yt8@poT zDwqW{1eSz|aY)Y90uHJ{U_VN(%2LqDpt?8;a03EQ2JuD=MPg~} zL3cP;kx@SxecMKHiqWa}GxKFTX|%hD?(GQG=3&btJw(9Kd;C<@IUBgLNcNP+dy0sA z4)x*q21JeW5+Rc=!pqSz_xZi_fL{s6-p?QkE|<8c<5cTn6pXcoYSU1OU+*n2uiG=u z`O9;BL_m$ZLGWpe{F`83a-r||+7is%kXMNzGIw{rrpip^v|3X|WU#;rc`#0{jVsWc zjIxffaGY#U({Pqu{X!Z^0aXQlc#1e2p{y7$I2MDLX-nj)QXpCts6i$Fgy`|2wcXGf zG+r>=(~`S5I$FuaTKZ99eI*~#@ibMLFQo#o>Z5Cj+37dAU#R<0pfp>UG+Lk zXg67`ksYjI(qu6&j=2E`C(FBun2T?7Vh#-#B{si7{RJ*hki(K4UDvWqbf*ZRP~o~I*3#& zufVjQ@R<2V1EZ}cT%IQAf5?gv*k8)k7QFUXpzL%xv0xK5vMbAiS>Wv;Z@Mho$NkGz z(g9a+pCK3SysqqCm}vftuO#wug_%DjxhB6Z4nl6i(lf9K-aG1)^d zp{>k6#BP*^vc3Y5OM*C$Ae;u2Sx3QN_-GP!;WLJ{N0W{-<1Mw+MZ* zduR*x{(3fzac{m;=V%5q{DoNGjmDNmjTaea=)@EjK0$;uItN+v zZ2`Y4p9G2Isx9D^GvK~}vtj#!0yaSY0x>>co#t$a`&N{edy26E@2AyP;w%1u{tG!T zRxSKDUf3#g=8DAn(;7qk=82$Er#M4SzAM(yz3+%2yu&&E&9y&i^n8(S+)2)nX^6%+ zA}!Mv<&eiE;UsNQj+f%rUM$Zc!CmJp3GNk3MEi11Q2X3RFBSQIIQ})c4N+R6xcwxz zmB3{p(b)tOxy{$`Zf6*!dGE1%0e#jmQ|StUzwI=%TPmiN%h~YVQWNX0_YVw-c?UrL zQjH6zxF)oJmB^stZdmvucJ+SW%ijN@k$#U8p;`DEh72!$#E#bFN0HDL?;mHk2WM*m zPRB?x+g-~kM*kBz_(I$=G2koZ3T?LTdXdq$M@gGCEJieC9gc`dTm_O0*^CyH7t2J` zOB{uY%jNloGA{37$zr*Z6#lb7D|3QRq0yT~!1*H(utMk~R}X)U3sQ!*Xl}V17OxQc z$j0p^46v0Fv^8>W67TQJwuwSsKH;pGq^*l*CGp-8y+dGZe+&s=!jD5cSp@QfUj%aD z7-I#u8R)lhF3dq@F+sL#C5<4Wc(QiF{KapK;@lDB?XR5JyPg#z_K(kq*dB7mK2Z$= znmcg)z&lW%UpcXdAQ}-nTU*agdricyCS5-$5~dx3R;%R0)Z3pQW;Et^NN+yGd-|H+ z1>(-cuh5tqM=EUNoxH~pfj@b35gIq4)8{B