From d2d28e238b646e0bb5b505fc77ee1dbcda32e5ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Wed, 22 Aug 2018 17:23:27 +0200 Subject: [PATCH] Kernel 0.9.2 --- .Floppies/A2OSX.BUILD.po | Bin 819200 -> 819200 bytes .Floppies/A2OSX.SRC.po | Bin 819200 -> 819200 bytes BIN/ARP.S.txt | 2 + BIN/CAT.S.txt | 9 ++- BIN/EDIT.S.CTRL.txt | 1 + BIN/EDIT.S.SCRN.txt | 37 +++++----- BIN/EDIT.S.txt | 6 +- BIN/FORMAT.S.txt | 10 +-- BIN/LS.S.txt | 10 ++- BIN/LSDEV.S.txt | 19 ++--- BIN/MEM.S.txt | 6 +- BIN/MEMDUMP.S.txt | 44 +++++++----- DRV/CONSOLE.DRV.S.txt | 4 +- DRV/DHGR.DRV.S.txt | 12 ++-- DRV/UTHERNET.DRV.S.txt | 8 ++- SBIN/GETTY.S.txt | 5 +- SBIN/INSDRV.S.txt | 5 +- SBIN/KCONFIG.S.txt | 32 ++++++--- SBIN/LOGIN.S.txt | 2 + SBIN/SHELL.S.CL.txt | 5 +- SBIN/SHELL.S.CMD.txt | 28 +++----- SBIN/SHELL.S.CSH.txt | 2 + SBIN/SHELL.S.IO.txt | 2 + SBIN/SHELL.S.txt | 1 + SYS/KERNEL.S.INIT.txt | 75 +++++++++++--------- SYS/KERNEL.S.MEM.txt | 2 +- SYS/KERNEL.S.STDIO.txt | 150 +++++++++++++++++++++++++++++---------- 27 files changed, 300 insertions(+), 177 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 7eaadf616e33fdc384ff0a6e61aa55d01514c663..c4f508efe6e9cc95e3282186fbdd3a2d4ac74a3c 100644 GIT binary patch delta 18540 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 delta 19056 zcma)k30PCd7Vy1ulMwc>X#|zY%90QuZm4xZK|yg}s#e<|&qi+QQBGyw9j6xD{i=e(5Jj~v&(DcKXY$T+rIz*epBwuoH=vm%$YN1 z=FC#7)oitzT^~y%5xS_L^3Nn1#z!~2{NIvQ5UwO7v13CSI4sMp#$zl}LAO6WH zN>2Ae#`H!gMLCTk555@i8LJq=P%o)t6&mU$g@4hG^gTFz&vUfmaRgA42>n^h_?4fl zE>j$m0Wd%Wey=r!l|R2XFSuC(z~Leg_&WISy>q0BArSynia>$M>9wPac2Sg3GbC83 z>3gkAF_(&&Jbv2L37Hdn`I7n35~@Q=y{5*2UWQVF=2E(e>9c3g??s|0St-p>p@hSM zVij_oGGZCrxFwB`iEBrG793Lc9A_#B#fkx>Q zqhqSvREy##o4k?R;)ua525zV$VIx&cbCe@wBPwP%wc{6jRKd44ng6f90qGYhvCHKZI>M; z^5u>>;)K$i2}r&VIIZ@*@O4G!+i#E(j3ZviH)b~~ZSkvPMm&Uo!U|VXi6&e80@{B>A0pXXc4GRv^sE4+H;1`)6>ymT#g)$Z(4=prU z>=Z|RIIrCJiISdIp8iQH-BSL_C(*`eZ{>KA#@2o`F4(W;$b|TYi6TeNieqt2&6_=i zTp~d$KmAGW5N@rvga!ImM8g|2uD-U;qlDoahqdbGquj0sNFN9#pa0ZA&nSQA)1}f@ zBFpmd<3s7!$|oQ17ZB=|j?#iJmajbCPx-x9*Z`QRbMQ93oHG-g^4-V7=q2Tcj!*7y ziE&d`@?v;ti{g8$Uk6=HH#hOOQ!LfAZAN+j&!XhxbX=&z7mq6+^I4zpnYxpnuvn!f zHpP^3tEkiM#OT{{<0@_w#fEsz;2g~)2Mr&Gg4==^RdTVN&r@7H1#eMYFp>}kn+5lYc zH}LVmCFkR&_&(KCT=2gt3?5l`g`vBmj{zI>j!&#oJV5XG_yB7F!JYKc+fRfRB{5lR zbxI4x`8vY0=IXi8Vz5CBdY~0M4BW$%vVgIr=>Y};NY^_n47OSW?&+c4HMsl^xD6nS z2s~GBDS6vqt28)SgKv^;rvcC)c54X;O!wtwe8MP$J@5M zM;(F1XO$N232#QFH4swEg-*JBVS)Z@LdyP;pyS*{=>HE$G@SdTH|opzISdCEUR+5> zE?l*6IhB_8TtQAAo|3&h`)_%xOePb7mS1f(N`#2trKlnS599GmSL8f{$7ip~#hEi_ z;MAPLg6Fae^Kyj}6voq6EL~c#{BL;5irhRAmi}Dc^1?rnrlw~X=Hm$kOA8;=M$OJ% z{mh@yX0BLKI6}7?>Mk$2WD=SA=u&LtvRo0moSKkburx0hkHAl8b@_`HuCiZ7{ce!v zZ&v(NtHw?ZwkkQs-DbZ9B49uM8HFF5e{~;Su0X~FXn3l5#p-!a%qoOt4_Y*0{EB5O zm*y3E86TgYm-7s1%lPSYOs4V~ZT-wshl)Zh zXqzJPeYov)dQtg=>$8#Dz|vtpQ8^`#8*TH9`L~JbuGGJIgv%!`*p`@JZMRFV=gfNzAY|cYkWebA)(Tk zP??ZmSNt3lmtcxdkaJY*hlYf;hJ+o41bI^#LE+nwU)R(q z<1c4@W5~y?zmq=_wS_0x`X}Vu!V+vz<@ay&p}#4QxEW1H9UO8qiKe5a4RtYA}L!GM)jdS0+!;~Xhr*c=HJ&t)%K=Tcu5hRq%wbpye;3bWzctdCP}9f+dL9ICB+&Es znrIX@_9S=oG3t7f4}P%W;z0t5ei5^8q)sIf1SAv|`_mb&I`ZC*+Ol$U<>7=5J zy2~AxZHt*=N{Hkz#dJQf=IYoOP#nlncFIk89Hugtsmv>4I8wvRCKw0PD|b^4Y_n7L zU;sVUbY;mYj|ns%Muy*k-4yQ!S=O7lu){SzE;z%voAUEp1|QpQDjz}!tS1)07{L=y ztt)-kk~QaR7%Jg*8PE!Ay0Y$+IEuD4Y&eBYUzcvNte9*51Sw#*VT}0ZHf!{clUn;ebxLxj-;Ycc=fK0yYZVUgd zC8bnp7v)z)Rqmv$VFW-ETw9e0-$_;OqAEGcsv=p;AG3tiE)kKVO8YcaQHl^)Q&drz zJp~k7nM3FXirTs^)Mm&A4De{rldp5WTk#@+;ahX+M;7Nyrd~@t)M2s#jAmV^F zUyr;N%FCU0(ny!Av(1nHQc0RweWm!R>dVDXDhs5=m+e9Lb68~Al_a1(M6^c+=uP~O zN1pRBsGsHMFp}f)7M;&krPBvj7W)MrVe?AmHcwr z0ZV|2)5z1O$&EZAgdH_$Tj!Uc5jT|<5?4Un@|$yK+SzsNH-I-*+_H~ zfAqC$fRhSt4)jE9qdF)abgn)-w-(ubz4JOx2l&MQ1Yb(^srMLS)DlT+61ZQOp?YRXp{)pdjwE zLQp3L2gTt1v-aZ-KOB6tbg0pNR*~fR)aGQIb!Tk{nA(G9o$s?XYBZGI!(LaTKK-6O z?|RbS<7Kx1SPWK>}=k>p7m;tN`s1YbKPvg+d*au!tf>#Wlb^3l>CU z|JYmiLqTapdFjrBPWJS8X%BLM%Rs0|k4(7mVGVO+@&!VQ{}$Gh1m5JVWBi2hAQMkQ2Soy< zWk*ksMIx2SeFqO2YDyF&z{>SV8z8;rN-ZhBV0+`jRwtXHM+yDQFO*4|oNvH)i&AJL zSYH}Xyy=SB+Rkp!qk*dS3wY5j=x88AoH@`lP7c+l-E^fBL2ONB8v%`emc6D&{nV)! zAF72{HG0iDNYdkzmBvQKp!oP{7b~Y^h1I_JnlLzL-)lcG8M{0NMFsrha#IWc!xsFH%Xm2ZW(-P`gk3&4o4pc)`WF4;67&%8jeze9 z>lHW~b_#T%Td1+HiEselz*kg1s#cjx&E@8|%?|THv(6lEHkr-lPt0e`CQWT}aq<|= zFmtfJIOdy}6R}5P@9X?xkLXKc_vv4Wi63;69i@IZh3t0M6HYHBjkXdP$`zWGm22C+!Ls@OWdtpzzTHG zJy4T=W;`$+f2&bi_QoT`%8Y0*JJyK$unUbSzJKx%VS-g!$TBqvx8c%&wj!R%TCB-B z$J&i(q})f-rUbxTw%v%5BHjc#pd+_D0gj@wTTSj;{7?8a8=ruF81R_Zqi)8YpPDtE zNXWvF4sFK#4?>(BX+kg4JbTOpZRFWoCNw;_URN5#`MS>uz5uRgjfp4$%-MoO6eYi_ zzi6}x=cf+H^ciD*QK$LyMjEqV`TMw<2mbH?KASM%H>;*G=vj|kto#@JK zeu)pj>l0m1;3bJQ>-XU1KV3rNtwBI z?$#RYjCaL4Uc$2zT`G&6#uwOKgHgoN3yClcpyu@)&YGQ=!9DA41r%R_7O{bAS6|T4FhW15b{%%UD72Yb{{|M?@jvrfJOsrRK~@?R9ZQOi1j)IEf`CdB z@U8?`B56fT^GHu5NGh5jM3TlSK~ki~K#-I#K!JxBQv|LF{^KBsS#@pPi>F%oX~26& z8?1DQN+uBk!wG?5r2Bbfy$?ui(-0I?1UY@1jRODHvjoo8eOS)lfgB{>W4#}D-PQNOTLCh)P`iKQE@*9b-ulXZ$M8H$XG zcM`3EWQ=jI3TE<6wrME3O~1psh9TwT+Ci>i+!}Xl27V`TU0G)nNQrzeB;tFCr9b9p zK%#6-nLRbmIq==z$umu!%g$LBZ8I*ya*@o1?29RA zV9~?rkDypXs*!Tp%!|dS6m>8sXI$hz!DW|R7O`NR#4{fDyF4KNJ(sNN<~Cjq5xnn` zwGSQ#v*hJE31st-{lO(GgO6VV4pO>k+w6Fb7b1`uCMUN85dcvwDLOn&2(wYvb zb+5p^o#A{MW?n1{AT0xky=O~SRC|VV>P501u+&bw=$w9$ECYPDzI2S7Ehdm$2+` z6czf~WrwhOa|{&bKNWtBJw6e`I0n2Z zQrl+5z5GYBBzvl=cUr*5Fkov3Sfk@timSLD;$!qBfY1!P1Rn;{E&R{<(yHPr>n){) ztd)*m5wSGH4;{Dw({HlzBavPPxC8KEcJ4?t61?nfBT>3`>Q!s_W`5unPZXYdwWWay zYEI;ThUgX#(_%di%bK993G9DIqMTIN3i#($+mWmJ`Fp5pI;*D#)MFJYz@Q(;2?YEl z+qYziDmc_Mc(fsqDCxdx`wx_HetVVO^%%+-154O%1eZkyOWS9!HNkh)H3tJ;3ukdK zb_xhvO7>l|?Z0;5ZWv4gLpX(lvdeMi&61jHws+aoQD_Z)nynv&GMVf69X50{nn~BP zd81Jh1lvcW6bQZ=jjrfA6HD(^!1Ub&rddjc7Nm$l3dScAOZ{NDxup06duj|=w{OhC zx*){@Ml&?2v`_O>JW^iBQVNT?r^!kZ{ymLZ{0gS1S_O87h%=l+FDS_&;j0tA!tSR7 z3vrfwYeTU!4BK~-i7v#p6_?m>Z8&yDVBw&_lDcx`Qg+E$q?{$}aY}@$C<=~rgxH1k zZ{t%qpn?2iQ~?c?YLsfC$_=qRO`)bi^Sb7cCRF{T=Dwy`Gf5Myjn^*HuGg|!iYiXn zXk<@~Md2fU#7%Ca?H+EZ)K~TNz<2^vtV*%it{-*K0hRhnjlS|_edR`d2A|ho)%s9tNM$IGyv)ULdGzvi^uaWNoPkO9TepsVG6+p|W-vU)Cq( z8ng8ZCM#3}dq{Fyw!U()UTMj|YRw|p82D{(1fq-ZSK9pMB2S-YT$&t+^_bQj7^rWX z=3%-A0xrZo(vt)A*1+0mz2`rUX|{p-lhJwy2GlHCXO~@BK$ueeEUp0E*tk)jq-%bH zm!E{@ZvqM+39_Nobn$DQ$G5Zd%dd6(_e#t9W4L>h{=g=ELe(aH^H^6vn}U}SiM>pU zu=>hky`9R{=IS~dAU~-Tb_`s`lf~@*G-N0$)+@pR!O^ov$D?X(Evw&Aq3>q(1a+im zk4Q$W^t@Qy2Aez3nX7MB^5M=rJ#+-@fPHvV zhxh858vXenE3<(m{JI9rol5WMYf~5L9ab9#AOwV6z`mj*ovRZzK^}-K7(@nIZ|M~p zG;E;0GFor%i%04loK4!u#gyUAa6BdHjkPGi;NS}yKvY_wcw=9Wv^yH&2UL0})QKnP z?m+$g548jJ_UTrCXykOOl%t@|t-ojvK*w+ku#XP*Vte=>pp=@FY9XamPzV65-V@%y z>R}dnTx0cV_5q<|J#43nS;iJV&RL;vmhoyw6tu_j1bm#)`bb=$bBrYMfe_(e8m&JGe1-ye2LVrSo-TliOq?(}ij2Z|@yH;-hY}DhNwqqgRv%~0DGnC7vtG=0j2;>KivNGc}n&v!A<17#S5??n;e0A?E9*oGP{4c)q8 z+#u5ztAwbUL^U?4tPwEqQ|#=CXxP|2x@s-i)8Zvs7-^U!$<|tibBJEKY^WY)vHU8X zzI&+NlHwey_k^7ssy{G9-=NcHY>9;3{vqra6Hzi7oPqYSM>5b9HaHUvNB5K2NttNR zA|DO+46MBFCs!!*+KSs?*>D{L3?{6$vRnKw6)^L)!gfw;)@iUXy{>XDn7OesiW-P5 z@LP;?@g_`Bf-jojpzU>FHi;FjV24gZvGhFlDF}okjrvz6p|v!7e=>Ru=7W)0Xf_0; zS?DABbp7NhXckTL^}D8`t28~B{rhxu3TC|NGr%j0V$aM#gM25nyZSqu&f&qVVkU}! z&1d~gWJi*yc07UoayGh153b)k2Q3ch`yM@k8VgLS@eBARRf+07)hX5Ysz5e+F`5DV zJi8e6H|*= zveFA#!)i30p1`hOjeZAFuPa0+=|VPh4XUq?dJeVI+ZQrXhhISQfTCBBKc#?n=<#U$ zqm@8rCaY z*T>C_C&v0uPRg0wtppKv0y&0@e~=Il{RHoqY*Uch29esH_+wMdf8`+gub`yAf)f7< zGO=$JBh%>rzeXuYqofuhj9O@8C?t!oZ)~gGy9pu1K%qCG#rbu z?TpC>lSg8^Vk+RIMvM15b+~}Cz*@dT#QG|Rm@PPW1P`A>lQJ9$rA)(lsJAJeL#M;7Z(>exH) zqZoE%6^cbQI(F0{G%#?4yH!~*e!sgF&QWXF(kira`RnZ|dW@Q)U?LU{p6xY2-#gSumpW6`DR;-H_dCa_?~YZIE~p?MXPOXq zju(S*Vvs5ZBA#=Mkg65cV;*Zeih>`@1Zoq3+9dVe3?W;jmL(RPEC!RrAX5xPJm*9; zd-W)aV#gdsec4=y`8lVH2-DQ;$Yba;w*43iW>TNa-rI;!eds5snZ9Wgt{B(L>cKQi4T2U7Y z&_QD1U$n!5*qtX3xeFE*#C}HdbIH}N!M*uIgV?ao0lJ2v{;rPm7p^|Zbt$22_UCAy z_DNbRbd4Ho@dDLC)srfR>YS<`OgMCl*JQKCCUC!wviVJD68k|DnAjgwtg#tI`^rTT zTV<@J8O;^vhr`Wi(vWOw+~YH|rlx03BaP{uIX{){qQ=72w0K;Et2Dbby#Bv>znG|) zte6=wFT}Xmm==TweX76mDXdCh9Ztslk!Dy7mbF^H+|yQl9Y<+heXSpJplkdiJCkrU z+=6uUlPuSQhR0{CvVO-|Jt~fjU@6YmxDTWfgJSzk$!~S3g9+{t35nt^V|KFy@Fjs&BduP*9j|J>Q=^(HU zYAjlYF!rl2Pyl-!c0wb8qmVtfs@w4&E8U4>>tnuzX?%NyM0@xok_Q#Jf>uxpKZ@Fd zk7J~gs9dHSrf$=BrXEuOY_Ka62P6(lT%Nc+@twqjiH(Vy%_kEtBwkB=GmekD7595w zpZF5}R{d4|Px>iwbWCJST+FDL^)Y{samRGU{2mh?+b1?H_W9VN*wq_5~q#J zh__c3vn$%rfH2Ms_7qaEdVF0CE+3$>yV}rljor-4o$r`E@{{kFPuk7CJr-^u$ma=> zP}jyzJfBUvjv|VX-jz~YV|Ko4w!LF6v750`$1QTV+U%q~0K(xqoTlTRggw>GU|YEb z&$dF9TgX>w0eRs0I&eb3{oxk4TT=??3@BDWt;0Y!;ZJm-vDzU{3cTKcCP}`co_FiaKgKI-n5`s_24w4j3YbDL@|%xG9);U* z3-&qrA3EAQx~$zog9tpdt`mgY34C>di0^i^Te~bUpN_bRj74j7u09L6eCWPq`^~l* zvx8dZFx%cWuLD^u5j)maYu@TKSME1gI?R9IqVj;b@;x(5; z5{qMin-7{Q%8anW&4*=#Ae7r1J8C&IsJl2qe2J9U)LW>Zvc}9k^PmfZpi8-BLXur| z3k@zJ1E`&mV1X!WPRbMA_cy*hwq8fpnBfTsAKHYYGU0aIah4CHNtzTlP(M4Ob zo{tqZh4^ViQJ|-PjrV3$!x5YE5tL7_-w0x}wq|VUqS)abD1!MoH~soW8NX_m5f-QLr&7%91u|0 z1EW_5=U8n(Mez#}p@5hY3qBoCFe_GlFLz!M(zj8+ha$vb z8kaxmOWA|ofu3IA+z$!`{pcWFolmryBi-sS7f=9zYZB1u3jC=CrfVq6WJ!&nB7f>E zohyX&0GKwu1Iz=2aEoD$j!30Q=y-u)rA29heL3G|?80!int^e;)}@EzHXlNH093Wm z0Qc6Q-60mzL;fT!!zW`!@pGxY{q?W`%?uylg+nnP3lIaF1`IyP2o`klVGbM9iH7*R ztuBqn2aRk_CyEXI;!%-s7I*6i_MJ{NC>-E&qO}aLXMsBh-9}do`%NdPWo;~W#);#| z!sUYT-Xj?9YA`o2PjK0SId|?cAE-7H^@xJ$0KaH(4e8!x?%rdDtB%!VrsA(;jZ3go zwUC*W;8ND=u`|XyIQ;>WU|a_b3zyeBBmGU#Ia~xZeHU~fKE&bebn9ZarD^Su%rO7J7{8NhztdDlY*VYy=8MBE%7*) z3d49dyXG5|zy{ip|1)rzU<5vIbSWOKkAc>czC@mY>PvzZ6UY+sq%&?2Dm6#qaf88I z$!Ux2W24Z6BtP8IBXBVoJBN4?NXyuyf1`fmlVRtGFjT8h2(twj$uzOq%Sf>Ee6(h=8D_v&mH%gM=o_ZEmQp9oz zc`#TYj}5tlwEix$q7}bjDm@Eaj=h5nG60;$L)mBVAgp(pVQ~!u#h;8286M}gO5D>h z;7AjQK14>c4R??_0~ExMTMS|XtrM8~6PD2AN8Ia(UL7OqDu>M?Z@Kz}yXb2PxK@8Z z{2i>19~*)Kyw1xeJV+g(9;d#czOB9kJ|#?>WZVmzajp?$8iJ$Q1RgwNciVv>>MKLk z>jgiu7<{vs8KLMU;^`DzkyCGe#Uut|HQD1z zv6L*AT#qm0Sc zWQZ5Jyk7~)bNG^PzCDSodIGVpI%6+lP=LrpK3TD5*GEa1cH*f9Z~q4^?{@@^q7<;N zsl}J@tLoR(i!~psAJfEZ2C*s`GcxFi`pOZtcs`PQbSzJGw< z%)NN%?5`b<-(G*a{`SsJn)l(|Upv2^${YE4UsKcvXAYgcezx;$SAJSEbj+Tr0drQD*^*qTb~<^4ob512?QwETY@$??*F!@}hsCae~56$20Lk^&#~Ib+@{|X11n8)2-2H=WCzWmTBMDzN>A} zzNb5=AoDtn~= zYSl&LeSlzmIgjHgX4H>doq5Dk3gd%OKX3!@HHUa+HHYybc%Q0tk}%i>BM1*s!g+aJ zTPCxu&3X*xNI$sk)0Sy1YqPqW72ecXNWIgXT+5%znP);`DcJK8{-w{(7)Bx&*7s83? z%mCFKbrT$m%vCq+)%G5G!l};VaN*$-ZRN+>1J&%ZG)8IsSnHsxUTbtHtF|;Y*cy+N zG{%kfNF8GXKGwozHEe@>_waSA?GX*fSa%vTuuh32q%+a7y|6V1Og)v(BnOcAMqI3t zzW|WRbS6y`u7z6yaQc>Ch7VM0IjTboSAun(feqHiGIbMpOPY?u6PRM3#|F38DHQX- z?kYx)1sQOT z($fPsNIm}Gp>?lq?_ST=EN7ks`{BES8DI$LfRiqA2DYARv*!|HJaTJV2YEb*e` z@Z!oPJ205dUd2S}quO1O1i3DtX8qH**WG5%lRxrX2PsFaaMK`)-Mxy53Ey}7KIFxA ziuq}s`JKT0WylG+ahnFH!JCuXxr7a0&7^9^bds9Kc9IJda9x6v8R2SX0J(n>KyF;* zb=sb0Us%m(M?m6@PTQNEBs+5RsQ^zvQ(3@%xLpnchM6|QC|m>wUeyn7WPB>nKF*$7 z&BXZL=(OGJv{MZ|dkYyED_h45EBdSpe{iOhw%AT|Wq2>j2v=9~@!RKNEgZoFhBJIf zZ7AamV~n45Dg2svpGaQf_|p0`x!0Rr@_Co7scWmN3-XEWa)ydQQVICx$jJ;Xt4HgZ`*i*Nm*57oE)(gfv0z)0@I;)ho~X`LKd*jCy+gfE z{gK+E4%Zko<23Wxgq_S%dKCNCP9~Z?wv&luuaQp=`H)2}8^4R`pHOSW&IHl&2^*t6 zZoxI*EC$dGk0#lIUCaP_9s9~IMxWgWtWBG}7Bsrl|B>0_k-539El$E`!n&oc_(l_a zZo;YzE>k9H;3`CP6aRgMr(g9=BE;$&-EcGKf z<}11$u8IA^m}hO6WtuW;cIs>@OixcqpJJMjl{#_OYo>9tHVmiyV(7G4ru3<4lsuN+ zVM>QEj;>FZ!2#gm{fvBZ+*VpJ%v7n$sk)?!P)pT;>hD#bYL9C_)1J_Nu5Hp%RLNGA z?R7TUPhu)ksJEnaDQY(J7rZxNgv+2XD7IE>9XEFTeAGb^n~X%8Y&)uLC~34cXz_R0 zH5X1Z1x<+*0`YQ%l6=uyT%xF@F9~(he=Or?}D4T(z+gbO2Yq(wNy(9J3i>n@CL0KEW}% zzCvNoK)1Te+9;ZI0aDL$OaWa_za{C3mQ3fT^N05`ztMY-NCJ{PqlE`~X3ZlH@&;*y z2YLBqaoPJIZ<$(nkhg%Xj6_LAPpH93U8ok{<2|ol2Zyr1tK}N;Jzj!lt4ULtsHsfS zR3>Z4d%OgV$)pk9<0Wd=CTeyhYX1BlFHs}D#~ZA9@E&ilMtF}mNCWSC;62_T&HfJu zYrOCAfZg8rcxKI?-s5$v9=ykcs7t5>dAzB&)@ZIOf*O;`mr{Q(WfrjH+` z%Z&p{)E_f4SL12R;bAL04P8zsK@-!a&BD3jyV=!*f$ZntDQfoOr2wTJ8{ z!|C_WzG%;Q1u8(cZ~4s6(kG-(v~}~<6Ko#7dZO(=JUsU5=5Y%T?`Amphwc0hiiT+Q zxDjBv7~IOw{}0cPB!}h_NKEPGp)foO+t0^TcJnC!!W2EFNB}qS-dlRQO5&%$h%Id}>zKhLx)dmKQ!v;Z-dEt8`#Y$m%~J z52C^g{|EAO1i63Q1S;hDKcEk$!e96w=<5XZ6!^ady!Z$7AyoMKzoJWDqIOX7zf(I_ z=jBiXi>Mv!>pw}AeiNvHR)RckJR9<>G$N3aZ=iOp%+IFqKfEXb6AZ}|e)$okfdG(i z1hl1VDQPi~4cG*^)91{}n4d~TyuxnyO&UIY^Iuu;f0f#?G&g&LCW-RhA~3R%lD|gn zSXH>1l9y2Njrs&iYhzFTCRG=OZ54527fhc%duDQ+aV_Qly0?~8N?uCs$jw_zg_Zpk zYuf`XX*uu~@diOzyFmj}9L#J$47d+_^RMN$KPV?>sT`4f#b42OJV2Aa1?2m@{Ri?h z(8#Kcx={`X6-%pv$N!ypMUPZx{kIQOTyvsdK6DPXPF*Q6>G9dW8x;5+aOs!=6tw`NNI6}6*aIcO^X7tD}Tk761klPT$Gs59VeZ#CK^N_qwWW6r)=BpaQ3 z4p_^3c7rK7nesmm@nr=dY%1^qwIgTQ$_*N=If+tT1UTtebMf*Og`yE6(?X-flrTCU zdP&|Ya^ru=+fJZ$1>~5#y>M+drMt?iXqmR?8dTb^&D%MTdt37ItU|D9f1?7fQ#$~8 zQ&!$`%KwHJ35NYmh(0uj$);JeXHx#Rpqf?L8%!xwPzR_aD~K<72&L=<-C_lkF>Zs{ zDP}>txGNKu{O>-XAJ8rI)VR#4rBuX!DAO>p zE^*KUlnV3wr33nY%evo`Mid2n=WPZtU*G?!B2rfR17YDu%9O(XMHlapte>Dz=G5_^ z-dUMb)4lo~^0T*Vrl(F!&q|+4`Tqj!k}e!h$$u5ip7g)ejv^}fH_9{|7zWd*odD+l zcOVDLaUi#N*6eB1Dd~NvMBYRCE{Ezv(Y?8kR3@cqKtZ%hF>oAV#q{{U>|yX%q-K4IhnJ!;4aqv=g_s1xmDx!7I~(GxoUb#NPFRl5qMcR#Mg08jgrm@z3F7^knv7 znq4f^87OgDgP)|`o$>r=JF%=KP*RpLczgQA=_i-iiTj!f+LnyajDJkC({g49N+!EZ zR$4oMUR$`fZL#X<@Lb)^p3k$3l`TShuDh?ySm~I!tZHZPrv7!Y%^h8vI$6%++Wy(C ziz4%v#Fn?VwzpMm7n$818#-C$6a1n_l7cghC$;@7?I~5Tx*;}|`JTpCWLc!9st>UoiS7EnHc-@8k`=v6>C5!*yFbSB2}^+9J!E znfYg}^pP=>nEx+YJgc^OHmLc%O)sNTS1+?((e|U|Sh$=8 z{;r0$B-R+NZ)y({6wG=R1^PN-;R+UdO$(QEHBGVz0l_lg80_$ev^Tl?Gs{2mEezlL zHi1&RtO~OUSgJRzVV-v+Byy@Y4fM0XyBh!Uf>A#IdvXHu-cJm!uI8@5Ts@;a!(O`Q zRs~9CxCUE8!5I@%?8KMW21+We6gD<8zpk+{fnA3m(9+obnRc_O!Ag2!c`H{Z{8~ zT1MJBBon#;iz-;wdLFyM71Dht^LI}j<;^;U?PtC&Rboj)jPSXxxt0Yt3_iLxpmp;H zpU^{E&)}D9Lj}D<+HdIYukG8+tc?sy+8+y7vcf)|_M~1A?MI8=0TdN$f~Bhs*VZj& z-c3VlH!Ywf*A^D82cA@Ar zX6|JB#opM(_S0aDvuRGxVMFn^sj6lg^PGzj$c^6^M#@y?**!dE3iF&dJf(tp&L5sq z&O8?+QcP;7jOAW9n09hb^rA#YI08!1Tu<4|y9eoNi_k<3^fBMXNV2I(fB&kE?lsKX zON)v9Ig=TK7=!x~Id#Pg!gXOmJ}zbZiBh=sF;E<_a9l2&>oQgo3Hu0h()Kf2uRVmI z6>QSwJb#9fIr#F)8O|bB_iO(A)244wKV`B$;R?R{=H#(R9rGK0_5YlsUFMatvFxh` z_neXyy_)R@S%?*v?VOKQYpiQy?rY*n)r%qxwak5OJOKzr3D?PlvYjYEDB`{z2?WVb zU^XS>-@qhBhMTLJ>MjgdEsqt|wa=eXw1d7`$^n!I5qu=6t&ExfCjoN*mX!|H_O0LC z*%zznS>4IZ8)b(7Cbqn_p{1t1ac{V8AqWsUVWFFm2r`6eK0ls1p@Ic(;VZ674$Qh$ z*7e=SXtQD3BJEXe?dPoOTFugLXZwk6j|-Pi+&Z4Q?;s?iNkEbIMG+Rble=$C_G@>^ zKX=m~pC{uUIp~^}=JvLhMi%&;NS~Q{P^P!E)-|)VL#j|?OQepa-YdV_>Z-6}_sNeX zZ4Ds8S-&52Kj=5w7P6fC`Nk8HvWp&&0EZrA5{wJ&Z74?0vL0sq&VyEPjPH^7b`&|| zCvIcbqrj=ojbb}K2AnE zN}DgMZT^bf<`Z5W9M@ACer?!LDp}6!YSUm0HPzwfhMI7swXUuLi*4`Yv zq9?2TEwt%*TMih=8)`&R*%=cNM=l0J20bn-E`doA!4EnxE^lfK`z7(CC##hwt*AfElKZCP3hQ@!x z_IGrzj?pMoaU2Fqne}Y~n(wIA_kboV>A!JET!)dG^#iRlFaN9V*M5|X`@i@CVsU>` zi~F<4o6R(P;jvsA*aE+<#c@fl1MtakASc7A*~?xdmfg_!U!T!)qe+@v_)*|O-{H8y}iR#(;1Y?-Nm1T-=^O;p*z%yh|eWM*h;gYF%% ze>?=~w%975z1TP5n)bHFnwHu+=JQgPIN;(ts?Z0RKqHPQ9gfts(^hi(0Y6Sa8%SmZ z0CiT77%DNJ8$w66nwqI5u!43@mL_*j_AeC7i5J97=h95)Q7O4=6EmHUocscs=|`%q ztkSeXSq%UJEzKe|)y46tHb$d@S)%RdpO-j-#YD6AoZJt3E9jM{R6;_y)V5V%>5 z(_6=B#{8pH2hHN16XhE`MKL8B9O ztu>Ur4V(ls*5W&N-QdI9a#GjJO06BMPU#%D_Egv8stGuCx369gZm4f{tZi##pkrWD zKXYFs3%0dGNU0)#_Mnl1iwA={@(cH>rtPg;y{x^irnw!P$QVQ^-z9?`JH7RnlGN0} zQuk?soh%-`20{v#JEEp%Q};k;AJw=FHQf70^k!a8dj-eXuc@i%6FC za#&N$yqW~A4rW|KAY3~{7+Tvou%UAUv#!IwlWe$b718#Ow0eFk!THwmb2mN1&P$c}xtN`Sza$LW@F8`|*PPNN%&I@X

zRCZySC&=zXR2M{l8btNMN6!vsypGiTH*m<5?Gr53wdY*O?|;+E(siA`@}`w%IrOH; zJP4QVb#40sTBh#Qd3HdX7BWP7eM4j2`GOlSDX;7=VpEd%x`0-ZJW3am;W(3D7tqFP z$^6-XmJ@a9kfb8*ZLy;2hUOxcVa30zB2D;CiGNpDMev;(|6W|xhVQiacUAiWe5c31 zTN{?*J0t#G-$L!X80j^^b%gIa#jrwbiM$3Q2E=jX^_te$irq-E&- z8~MB2EZ=cA#f9CQB|n{g3#(~_6tdt#$Yw&5vSGE_eEwS@oz*n8l6plXc6D|$>o&zV zRWbu|0yFO*76^)(J9+Ck%~x_4(o*hLELsJ0ED#IgB3|pJftqz4eP{8iI+s_^J;bjZ zr{#>fS3;6|A3+jX)Y{s1{xDdm+raPnJL5F})ceuA{{bOL4hPo#AmD=522Iq~HA3z- zACk@HJpEARB3jus(6N<;zUL>_YQgsZIwYm3WaeQ9s4)~_KR5&( zHh;w5tsN}*KXgcv85*2?nI))DS>r5 zC6{R+F_h#K5NC~YN{CI7xr>>}P62V2i%+Q2GRrOb8BB4~0OoZLw6r#McAsM(c&X0c zFjtxrydTk?P`YzJFW)xGAI)&u#MAF_?iZXEsyFnvv=W{$%Zq%et22B6$K`iI;aX2j~a(q zMkl=a4*-JW+5b-(gje@}AP{$=`7hbI`Jvpi7D;5J=`3gIAKOxB@z~f{=Kn<0SYdoh zU_u-_Vt*K)BPaL;!&!GETwf}?K~h*Mq_C;tJS)a7{83aIANYw@vXxZObuEqInWP!s$;_XnTx>FV5@l-|Z=J7Y z=0XsQlOd(IHXZ8Javu89X{2k={2zPZSWQosJW2Wu+QCNcJMBQTmK41Uq*t*fz$MK0 z-8zPHkB*^$rJKf#-{ISTP{%SULV#lBgeBfXx;VRlI#g32&b_+8D(gO7%6Onw_v>QU znGeX5CiOwRG`1KT$Z$9eQfA83{D=9rb}cXM5p-rgigrN*WB$PeHzi-zjYftlWi?o8IKOiaiN8Y?h3q+sM1+Ey+BF*$Y}ItjrWe_YUZmv2 z=|xT+&pTDio{*oQ5Cudb3gZ-_NKuGlNg)bH^VO$n1zHJDKTXTc9Frh7g4`0lX|87Z zWBL83YI*tNWF`N2o2)cT zlLIp+D;UZY4CVZs)3kzUg&IaBOP>O&OLBDil$|wg%$l0WnP%sd?QE=P*7QWq43#r; zXM0sOvu4I~%t}eat)rY$r;VfKXxVk~F^Q4zv8QXH=qywNWm5E7(A&UlCmrTw!+@q< zC=bDEnR68MbL}Rm@P&y3PnLw*yD9-mwS>g1kuzY_VsZR+1eVzRO^rpQuBdCNXJ)-T zTg-WCvgV_^v6EP+fxmOQ7F@f4jt!b4f>a(1{lGV?QFS(xnN3dYCnPl^iF77_xkWYF zs`_6@$k9f~L0aja=ZfQ1OSwNqCK|au~jIZen>k* z`#E^hNwPmWuUAm94z=K8mygAIgjW7CIH{}cVjXC!Gu}q}8aw?|QGG36xK9gquBXMI zy=I(@K0>Dq8v};76RLF_^j&g{SsPTonv}EUAj{BGccP~ryQfO(DW})Ts~$|wD%j|} zoVoh!{>*;0&;w{1cEEy7d=%I6_03Mcaf{|J+Tt8aYr*Po1$@>vr#v>wSnyPS64wIB zrxCJlW0|M(Gq@J=ok4R6Dkf|*M19$~D8GqoW20x%_+n_ap}A%Wacx*fQd%@`+Q7Wq zok|ZU33T~*mc9c6B9U(T&bpp@mcG;86rxdU7jkJ$r!e=~Lvu(dIfqv3Tqh1iF+HQp zYFXB9-g=pq*?Jyjolk?ZQ;4c4O`fCVvn7nf2p3K?9@4HOP zUcA>SPDY_t@L%FoV&9On#=6uV3^Vu12}|W_l?XiRvPAxVr{H7!mvik7%{T7X_ykL2 zU4atBCE%3%4GrQ-XL!2Y#ngcRDk|+wPrX_#(CD%%=D$WHE-|h}1>-vU=X(6(yTKk@ zV!-ABxl_~s&mJe{rh-|&Rd8W@-w1XU?2PMXXLtrDPV2zsIFi?OcCYGO!Ti5pW!zOTO7zdi*0LlUUv@&IRH6 z2om=a7us6iF1he#7+R`W=vGMT3h^=&Op%)FgI z-O6(AQ0coLuLjmK_yb&R87nTL-`hZaJ{Y0ZRUFyzh(*@M%?h}eGe-ew?oYphA7|r zC|8*%SKnR@_8%i8>F}R&vXeh>mQE%@oANKrdU33t`VN1{D}OL1t^YTYN=qBMk18!? z=^r^u&#H>eimf9(2uu4|a5G^I?5Q^a8{U z^YcBvv;WJFxmwFAJ!~%_4F&4%wgt3)KhU~?Uj2whBo`3;iJy737RdiO-mIk=@fLLh zEjkR4|2bD{!Kl*^YEkT#A&pvwp^$)?Nrr5H6q1xl&O{TgWJ7TkE|;NP3H&L>kajL4 z+wT;XoNCB*NKG@uI<$9ob+K9L_-N}K;0vzNrW+ZQbKrpH990~vVTEpkUvQ0cCd&N9Hd<>^^eoBdpI%@{d#|oAf5S7$Y`h)mt=>~0tq9Qh~tEYSIc$OS8 z$QS%#3%hY~@tcG(7Bc&!$gm4kUviwx@q`im~sjS3Akt%_R%6E46#8#1l#RL1Vv~PuL=2x{fG?S_! z4!+d-k?R(-NYx-Wl@D45kMba~yJuPd>Pm2H&!#y*EI!Dx&{j{HJJ4ke;9p^ zhju}fs9>qKZejFHDDuB$skbPeWb7p9G;S4aO%zAA(DdM_7UTj)wWvOW8Fvzmxr@#i zIld9RqJfi{rQt{xxx$kvh_hMpoN%UrVi|l5yxf=%XLNl2ZFK_kg%fhb{z03g)^C-{8hdp@P8Y z*n4=^8`>B@>=I%Sm6bb~0h0tPhAo2sw0l&5pYn$0s=gQb#L~`S?)z+QKk=a8H{7sG zC|QnD#8}YX23$havmgeMB$rSsPrLZsXY#h1WSc2LM+w;6F&nVLXq-&|mr6XN?LrzX0K$a|ysPv4Q?;zh_egCb+!2lU zk)Hhz>ZW5CI*(Noc@|0(EDU7Te=3#D2Pl{MF9IX*p#tOINHRZy#s>PwijR5tZLK`| z2{rd=qPdQ>9qYT}?J@H+UCfy0bE(V`QV8|NykAI_l}K4E+(oS~N!2BYx$mnH<$*)~ zuSeFHQ0`;CZ-yy-NUe169qo7HGM=tu{^H4Q_#ak=$?^8klcs*O7A3KdwE8PsJ2v&h zzX@tVv7}H7(wcb=laA6>61Q!FG2#cJA(%Yu-5)_iyl~DC$RrstVoxl%Xb5DkgxVWc zE2u}wDZ_51uCK4Buc?16Ic3bk6gs8p(4D00fpIE7O4$+>l{Za^QskRKuw`2OHWz#p zQ~1*^eOxq6^#IRT;YP^38Szb~6v)hSV-wIe12+v13jvYxlx3DrZIGGF3dovdHx2@6 zy&=u!f#bj_w+Z_QGLOkpn;~0m2DnSG)LdY@l-qF7z+FPnQg}!Z{APjDmlkTgpw=0h zU=;xZBKVce3#SMHoiIyub#}su7A_KMR!hh7Pc40Xbe!zc8c*QD4+FYixJxkK1Q_E) zuj6_Nx#)!3&OdPFAI}8nYw>Tif3QVwV`KIY;HpJtC({<=_MuQKv@1QY&G}snc+nwl1lK(#>W) z*0r|P)i*3<8TA4fE6#uf=kZ>sQPNW8tAk}3u ziTA)Z=Zu7F8u{Ebz1V1~WhE^lk*`S8M`^9%_b75UU?mI1M>G<~lrytUw&9Axv(jy!H<=z-`ujo1lPZE9`bE!rL(D}v*+NTvbES(shYe|+EZ z-9@bMWSP^}*3x#KD1Y4Ol65B>RT2ry0tKh27BNj&3S}PdpJg{t+$HiQ1GAf74Is1) z{7{Bo4FBubGxV{^Jrc~4Ua{n64KX_`ev@HJGBeb#)%CBU6Rl(Th!0t=Lcfyn3eW^&msi>yCgwtY= z_K{Oi+J0Ie?CJ}{b=cXL^YVAK1qXb3)}c$odQ|rY$<_%6*;?}Xlb&3Be7XM0zI&4R zfeO7KRM*(bJhO*L2)z^)F=@_V`QxPyHhwODcTCdQs8t2or&4ffX0;ROfw-_!QyTwsZr^JhTSvGwhl@KR^U>@eH>;{=_9ZT6X2v)X$(H=u2MXTIQi~2j( zcJjB|^pLZNO=#plx9O!?6W_R6|I5L4eRh(&oZWjO3l$fnf^(Vg50s2M)UsT^(?~`T z%`CxK9bBQqV7OA(qb)@c-QclJ$`9*Ca&4B_eiMF5Y`>Ysu|4A!1~;~F17;SQf^wE| ztN5| z(YKuF_7snpd%pV#{XMOmZ+KDlNvDGk3;&A0^p-v;>kRz%MNwGV7VS6^7Ce)8^pEn-@x_L8 zKst=t5eS5J#Xt35sGK9)w;H*8{AEdVLvqekeHjp z4OKNw!jqMv7$lF0r10XpwrXZvfd29>ObE~0mvkI_M?c;glQtEl)iBFgU>d%JbwNsc zjV<#aF8ii)t;pf!*%zDXdR`^J>|;H*=qM>vH#D~{Y7e*7k=`}+m_!H6KZ`&AiSCPH zD@fL#Y;0t*-^#pm6}y^{(Xk(-`~+)IHDC?ZpsDhG#F5D!l;rNO9olVULvtPAv#>jC z@uD7;)8-|{I85u_2nTM<`3SnWt6(GWvhL_=GQrYe46XiJ9nZ4Yg!-3K$4 zp>oP{1#S5hru&a0F9BcZcq$`ClyZWdUB>(;irmpB#dD1nXu;EwSYi=i#eyptZ@t^_ zEwxr9impacvy)sJU>#qBDmM1n7`&EU!b}7_^>)Ecb3K(lnM%W7?iBh9M~5y<3H){Z z8~CGFC3&M}Hx)*D5B=?Bu8lVOn|+F^^$(?c%p8!akmOB*x}C+$&8pm%;nZ)dqJGVKt_N^!QB-vDAvi`TFe&lpV6y!kv8G=X!y*OO`)d_LSh8t#dHr8`cZlz!qnL-TYBB z96e78g=yHz&^5!>p|zvGU+5b=*N&XP zMb>oyKuS*L^|ICA4U!D008ZtP$IJtAZH)gz4~R3ueil=poDy(+iFT&IiY8WT&CMe_ zvu;skFxXpZ7`Ms6dTv+4h~pGF43fNI;Cy24yU2k^_9fjM?osW4efpi~D~k9bp`MDj zka7rRXkw?7ix47#p+e(#-w~btUUhaqJCB(UptJJJ;9`r9Q4f(%5i=eJ6xJhZyFthD zsKm~q$C$*GM!x+kJ=6R6NFc^M!EgUcFL5AZ=+cL*fS&gU{`psWuJ%Ws`ZZYQXL$M7 zdSU6avNh{Z2?pTLaR%To2?k)?bNuwL^|5Q8SG^M7x2c~vMsNe6zp7Mwv3JRI?+a`l zM3puQ8MAr57umYjsz_u>OIxiUOEg~)%~fD5^Zacj!dQshvdO_KXg>Mx zRo~ay zNq*bLyEJw02^yeSGVqnmdSBJUg8XyHY^>_)=`V)T^#jy${VUFgeJJ;o`ENNBxgQPA zt;*3qW_)9-(;NL{%KRr$|kdEe)3NyqvD5v~oCJBOHfH&pt==kLoS=I^Wc{Ev*^$N_z9*XPy30VZaQ+bpZR`#=}hDInT}kC28}u@=JW4ON4lnSGubgt zbCAql7Ig~k1R<0ZCFmEl6NVCZp-!{~04Nfb0AMD>-C(jt_#df;MZdjDNCDHQ?qD95 zNG3j2$$4%|q+nwx0WBki5<;k|WQVj=Z5M81}@LrE^|?L&tx$2FGMJsa~?xo-$h zJBP={B>DJPA1C`V+~6|>DOG{Cy!FQ9fSy^$H|{n<^XgTmptE2ihac|Nd@K$zayUdA zfGxpe1xbLv4b-{y>$^IIV9JUY@RpFHDB4Ixni#w}6bdJbq%_;hjFY4V<=d?&<_??gos;FXj)Dk}uZjvx;blIcJRp|&zS%cEzL zxqIXNN%sH|bx**+fY*ltfqp?(8b*snM})V~JTTt?Erwz^uwckw#hdtnEa1UrYIh6e z%f%x56WqNhb(`A%(r;rt1LvyjL@?#$ou+23d}md6tfzNieNXqqSpO;Odj+_sQv+aT zF|vd+m;qi^2%}QmM@psJNegqOP(V<5zHug1XXVv=#&d6*is+ZQrmsbcAd++n*TM=ksG~cB&kjT zFDi}2uvuKke#1OqKWTGOqy1vcnKz&a@o?o8JL@*|4s45cK}8muBUn)iZO8;GDp7rB zOLy0{SPyb*+EBpz+c;*(xh;Uj@5)`-_X7G6dEI5 zY6P5r7y)NgxUK(@{vz*|pnD1o~cpx^ND#p^lP}xTtqF=#P z*@G8`d5UI+i^C4)drc@iqOVhbQrYnanzY_jU10X!!gt!+@t^}>75J&dzExt=4(Syk z+emp&j=C7`cn0_>7W@Z;n`C^i+oG2BPt|P{+x7!?1@nQinjvES5?jvmq2vt{`z7Vy zs3wRln*RvRyAZG;JxPpD2>MUeX#^2Q@mayoi4`LCmmnt1i<)-Qxkd5wggQ|&wAx$Q z`V!3(>L9)X%$1~OC}8KOeWMbE(?jT6(FAC#QiVa+gyxy=JEYsBUU@yZz9%?^f$6`J z&=ejPaPbR^9oZ9qP_t3VJURM`_9{=^ z0nf>XFl2__$T{;Y0L6numIHZhlnUY})W^wmxhTrFh0hji@T1XM~%rAb+ z3PiK>$izmgD-va-l{~IIu;~ga6PK8+0%fiR@hc?YVcaDMt>X9yJuvbPXBQ|8o}l!N z89IG6kO?3Xw2wtIu5p^eK@(PAvBsqme$NDgZkU=LHeXR^4G>VF43m)p0SS1=rn1nQd?S@vW_c>oB)n{x~vwM zp$U?AkqXdkhL0``b+GlSgh&g_j~TG}+TZOIad}kyyH0!`o%n7cLmv#kC?BPe&${M? zNSGBbP*p=AoG|~Y2CM7PVLFVz_BTar8GnM-evf6j|U@x3Vi-A37qr`na9ZnEHW7@%MF=}rR8Sri3!QgbCL#*R){yYDQ<-p7iUxt86Da%bE9`9 zzSXgttaTJ(U+)DBE^I4A4SRi7X|fy@(S5Sr&C9dt=(KH!8GUWhYg zg$zIobnwD5hd;U!PD^weA@qK=ih*nG>j57}CQ{h8D<;9mt9 z(!2G@9=DAgrg182_)b$LhfdDv61Ymzt^MkVYGj|KEZW(~&Nye-1TpJe zcBO3*m%1x=4=)yTHHC+C%UVpv=5jdaGsZ9p0BY zNO6VRn0bltOk#NHB5y!L?gPWO0&e5d z2RlCO9D|T|Qztm#R_Fl25Gz{6(wyq2;FB^9e!?6_D4H|`p%hzWjf(eYnCQowtS}|A z3c9-PWng+eu3-~L!^Z^!#DJSAGJe#PdPIpdxs(04NFU>WX`h+;?rpqqT{q8)p5K1bH7a~z($lDnhVB6FidV zGu|ie@E=IV?oa=xDoh<>=0Ct^6#Q(WIrqPY^@uVbqU!J-|DEU&`5zt8r+s73oYw0t|W zzE0%+2f10_Nd7)j)7BiG*E7&VW2e=^9boa2=68}kb$?GRdE)3}=6@w8kbRiHIU6WC zd5$Bq)A}E=8)C;BKcS1XpN9>S9f6`6P*Z9|cCLacF}AvM^ZHetLRob(gqt*I=4_z` zry?omiZ<{w<~ni>T;x>Lt$voXf*$&r@9IT~u`m+jF0C`?f;oO@uEWy$C@+(KkDA1c zeiSJn-5bGKM`}XlLZa?iYN&;;#U>QW+f4Pcob4=ki)bMkiYL;+WpCr<87Z030JLoa zuc!g(ZZZL9%ITE4HC7CH8M-#+I)fAfUHu5?j!L;L6?!$HFd^@I3z{`SX{Ing^lOw( zV!3Q?B9sc-(S~maiS;AIkZfq(gmD~NH*(mA{|Eje+81iK1Jw?5aVxxb)TKx{Cu`!i zH@b(5Zg`5cha0-r57a_?1a<-|Wp!c6=_CaAumRs@xAZo(dQ>{}kG+I68~N;GA!+pC zqNBbMS5x&e{x}ZSL%L4zR4Ky1eR4nJKRrqs##WwbK1kdiHi+u)vX}@6ZP4Yz*kf z?&R$Y91RP0#fRiQN7YUEMZ0zrqKiv>&Xe2SJYNpQxB#GxxlmK;E^&*|!A8f&(=*bb zjx3^1*N2J6r3g8 zN}z8XVlS+&YOk5k%v+S&<5qq)$|sTXG3$1I>keQS)Q*adrNR)7=w;03$HlmwxHRO23^z-1Ya%i83gShae!&^QVh&>FeN;NB@U z4Dk2RJ2ES%bd6w#z0a_4tZLEH7~KwbaF^pdW8e9X8GaAcC2@vaxC{n@8rQB(@*Y}! zzT*l+^f7OxcE~-`@j2PF-G_`l4qPLFEpHxoaId2(keXJNK-`&!>VE5}(NfbQL(|T` z(NT}I&Y@{9-{i<}9MW!c{A?Ubx(8-7G@i8Ypu;$19dvx7C6!f`mF-w{;9iHzAM1#% zAx7Obg(Al&bZ^#Fga7(E?da@jGDU>$O~-FLbT2T&;9p*+`RZmOafK8>db(DVN9YO` ztQ3j16w)W6&k)9UlxP4}Q;Nt;KH3g+JI3J0UXMVxSt8IaRGKkcgwZuNE`f+fjxBRA zN7h^wbcYkB3g7wF22k$7wOVGBSv3fHDP%J|LLzc;2Hx4 zgUCoz)l%}|X4X7Zm9n5QpO&J5!Xf*i(YI?d-?0FPB&>!+TIK?z303rhFn{JYhcyFX z$4$cn^xEpgZMbH$jL$P$451S8w;D1Au@#!arUOqnoPov$p)pKZsKyPK_duJ$%dgYC zWS942K%i=l~ z>@@i8O_o1(4Z4vW&@t;|BfR)#ZH%?v5F%>mWMeTU7Q|1I%lamR_=QQpvVh$^4^ApaClO^JjuuQ8b{FhezZh*eGH} zlUA=>)z#nM3s?7`j)0-MNCdYdBcpH2R{1})J0U4Gkc43?XCPrHm8ZiIbe~|$%XhA(7NeqJ_;=>(FdM|YLXELNh*-3&}#_o3uIh(kxr@x z+ySCwgN$N*n0CiMT3-o!%!ZzRGRr85BE3Xk*@!?}rKa(W(cx0QYExf-Zl_Y~c*f~9 zJzYaJNhPH^Z_PD={0qOs^1CL)g@TDnD40aD=&ugGjs*w^jHZhDeq~jI_nmlo%7GHSS5z4Y)q7j8~PrLGlF+Kwf*`IUk zTSwLuSYPOn1d>(MKt;>4zfw~m_;z6I4idpApBZ1HUf@4+{>Bcq%gkiK5q25ORUIrN zzVC#=Yu@*X8T&69@f~L3x)9KFg^JLe{b2K8w%exlBWg*@kO6xP^Z&#j%^l^-|JgQL zhQZszCZkRdaqDqV*SPyThkrf{F!mZb!BqOm5JOZDCOaCCP}T*KqF~`qQzRqqN+o_)SQyeIE1s2ZTS(|O z0~t9b_k#yE8)+ap@V!Id_le;Qh_EyY$Wta_5Bdmr_Z@cl8q#3Kv2nD5`Th17r0q-G zl;9i2p~zP;EClP>gNJp8?!Pe20QW$j~U+B?-1`IklH`Bg#1o8|R za99vF8!62bHER#kHCuEwMyUXvV_&fns6*FPQp^X?Et+HUav9rdgtg$LkFc<{IVXuvRkRMeF!msm?;jdba;ynsZ@(M#yi!dGX7jG5w`LhrCb@h z30Odk)fDmtnl+Kuor2ja=JM{~7xg-GlkPvSdBc!2bGGde( zm^XDu%DnoeND8KnNJ114l}sO+yr=<5fee+z7e}2p?K{i4>A;yz{m`bfoD-aGPc<;b zo;kuiesGs_xi|k<>5niZeCbfh+0M^3Zwb(aloCU7`1o_3H+qAcK^#X!JpJoj=hRI9 zX~I8YXeZm5c{)zWJAdo)@uuBQmp=JS-u&*qa~a8AmD2E`^(=VC*p?j9_SPGaSI_}wo!%c2*LI6St~g@H?AV`7jJ_M#afCgVzKRPkIQn-NMm zQqeGr6a`ADw+|(}TlE4p%-B3R}UMMbq%t~%zU!Ns~F`^_xvBt zdECx@DCs39JgGPCBoC^CFFPO0D@xx8AV>uVivV0h+i26$O|r{!xPW}?6XkBMsLh5dG*;UyhMh4(gjQvRCsD_ z184tIkA7g{aPS*i*|>8Dt8ULbk)F}2s;ytmGRT9lmB6=i$Aac9GyO1jWUT8ibSr`{BL?q-2@Dp@}3-eHf#wsj8U|I@UU2 zDsw@1MP60gSl}w$GUfE?!K?XI-#G*H=!`fc6iQ}Y$FDlh;SWrh&RoF9DYDKDY8DTC z@6^+)=^9`f37tow1N#m;gA>5@i&kI<{4Lf^9oNxkK3Qr!Bc#{3N^!9&3c>5m<9hO+WxVQh)a$_VcBi0|( zidVAaKhhMEqyIA!&P1t_XE}WQi#_I_RCj-t-DUn|@T%KG+H->^J{`z>UJl*9FvxsC zmdSllxZS^`-0mSXjnJFFtlE4csL=MaR6~4sJ*h+F)jSciD z{oWZ=jP!eRqkQ^%<{aEDnYfuNhTpb&&wmy^Mdn>l+V-uu*g(80F+rGjaW4?>SYs4L zGd>zpfUJ5SqjL5qaluf&ER=Yj#P?}j)QLaQ;fJ+Xc7luC*AA=`{iMSBOK;%G&<5Cl zsf5s#iAPJ!uf#Y{Vm=su)zKSo&<}zRg9?~2$U<+p6?`1>u)=%}O z{z&^-EbG5yiOcjImN{gIQ#qj@$PVXCfmv9PQ#|b_?83P}sW~tR+iy^b8sWCp z+orZ}ZEjh@GGH2}4I%a^h0nmLgk?H(dPGY+o|Wz7$E}0EkD-tOj4u31m^n(_Ar9{m zwV@37kTAcC5Speyy$D620^~R%Onq=15o{0~M+C=|h8mu9U3I=!0FSNbCNv!K&Iz+T zlj6AO@d`hSA+v9htBAB7800Dv4DiDBMj#635SrKcJ19`x3e$pc4Iv^hg?XX4l{ZdH zXMUW~I6MGU4*3-g10h#IfCmfnj({LP0Rh}cpe516Q=>K$CYvTU$O~VR1V{q2OgNN~ z63~JhiJC~S^dtd85eLeGQ;9vzW6^}}TaVma zy_0k(X5|BG%JswytCEv-T;DR1M52b zx;qCZ*FtPLq9x zrt^1CHiAn*#$}ayx<-Pf&$Pc0WxoIpvi7HVK8|G`g>P|dORTo3j_z( zjLT-NW5k&2nz^9PY|hI5p>E#$cP9s3_0=ri)x5r&R@(9#VakaS~J6%^831qT%{ zgS1=;j>$Yo932Q67((*J^MD^5Q3Bi`l`s%%!Gibm<~>FL5voHP=BJHL%8ZIu9#*Zu z!a1T9Fo2?!$Iwb9jG75}?bkbjs%}JB3-Rc5WLl3qs9)q4UuDL~IZdFpMk%JR%JYobx~*%DKQRUIspU2cx@OD7+qgwtA?N`M*`CS>jqa+#33w zE^09Idqq4|Vkt0xhOKWvi z+c}h(_+%xc8Lzs-DAr3DUxUBe82;`FMzJGzEaP|FfsdYJLpokpfUnei*=ZyDoTZ)XtV7T>2c+ zWHmJ70zDDVGFOq7Dw&;K9ak6!Rx8`T?;bq1+{SqMyd-b&P>&EC!|lV{6g!1qbECtbV=N{Bm#F*( zb&dhwvX(NQ{yQV+PFpq%yyc8vd=G-Ck3*_0*(pchoDh*e(5to10S*u0ae^Hc01m9j_#?sX_4#k-}(2AZYrVarG)n^`^79TYUU z+_D$o(27*Cv>}R8Tud}vPb%*7qW9xTUrHA)c?Qr1tt(ElP3XtJ89V);;hnuj0f1-i zwkchPJvE^3r^=VKi@|uFrViIcZt!%*-#KXbqvX!$6Yh*s=98nVVNg=Y(M>sv8PJgm zr$)guBWw-|Q94SYbCbkVXx-q{D8vlO>D0pytE~mbaQ}{xo#P}4?vz8S;U63{(xba* zRERNFPf38vie+eJDd#9CrUHs{35wm+HMEI<;=EsgB6$7?C|bp3SQK$A*o&bM2ch1l zc~wA=c0XeeDdWUUj4dCF_(`bwhv;DmyIAU8g$iS5j%7Y*Qb(dw>LuVO@CzV)ZUxNGBz%%hij35_kFG+1{ z#&1Zip4e7!5FDzP6u8BFSBYIU@oJ1X^_sX28DcUl077QEPEo|`B}FW}f$_`lHS*yo z80WU)M(yDLi3`q-PWi3EZx}N@H{!Rw`y;sEg{9miCrVf^Zbrw+@D;p_IxD!9@%;OY zyy$I65EulJ5+Tc_mx~`BPVV<{0ha)%?*I@j?WfRf0|p|C7qZt6U;Yp)V`;vWa7L5 z@5O>oi&l>Dg4?#0`f^*6I#zM4&&UN8@4~tNBy0piT@6FcbmspvU%1!dje5ajk7z+W z+fC|N(K|8QBYL-9l1N-Uoq54#58q_CNLnEjSZv|1@Tx+n*KC4KR8ku8mW*wPmF-Y= zbe8!#`cmiDuqhq=1}{M9>)0g|fL~z|;u>Dcj5o0y{W{!{#s@Ax#! z*jVd5dyZuwv-cmQweQ%~Pwcih(V6!H1qf7|<ZQUp?jQpr!DmDX5ajZ?s`mxegVEqiSx;805n-t2SE|g{YD)j3 zmh>BR?E03@d+K^vTynjvYDB-sEp4v<##PyeY?Y z2&XF6AP~~QC{m$Tv_=DZ;qAc;IN>l;xZfastQtCmJ$T?S*LZTJ5N}47BESGd%!Kz% zM}HSH;d(>ZZ@~M8HA9 zF4vyPGN!3XsuJU5Y10#v1~2#-!zYaf!F&`UZ68whoKI1D4 zVvDEci0ZAXI+(46qI%S5qa}@y`<4)$+7;}JBy6t51RJRUGnQxqQ!WyMG9<~R6kQCN zS?-jG5HB;AjYx!ei3=O+SZMi(41^a{wbind{l|^S5Mri?TprRkiJ86=MwE=S!b5pP znh-Ki8j(ms<_e8p{Fvd*?ii7$HZRLusqu#&GlH&Fa^T}uYy6$Zj4^tr#?8l#x%wK7 zAN#m5OJA$;b00S<^>rG5;&Ee(zFywjMg{d z9qOlyvHE6>pZXNiw`lyfr;PFXR*k<(>Dx4}KMgof)p+UCM)rX}7%mTaBd&qjCsu=J z*m1q~X&PVhG&BaMYkcd|Mo#Eg8qqDnIC0_zvXFTUT0L!fORHKmAv>j zhMzKg{H#RuIBu4XBb!nRdv?eqV6Sov4(!y3T||O#I969dr|lZdt^M@CONKs9c*&=~ zDme|I%R`XiYmx_1sy!$xgRk?nmyN(ASaFFXk>yC={w8kd2@sn=tcCC&S=`eld^2<2 z<_ljovRA#MGSzEl6)f%D#4!h62^_;v@=IC-M$g2Iq$Fv$69vjZse@z|xCj#QabL~U z5BXCs8&jg-6;!4PHbD@`Pv|em+ozJ>@_;>1{8n|>DK*^#!x;roCCm^yJ)8(h@6HSy`K%~iv^{v|^`VJC5)((h&_?3Cr@tN? z@`A68(^Uh7aC3B9}A}&?qyIwckC3Dpmy+3b^#(G*uUZ9b>5O-}f$|w-#Y10(B6Vx>d*)Jo4D-_9aB4Rh-M%1pU{iq^7 ze2XYSP7!8=Om4VYP?Kn_0zUAHh1h^1;Dg@EsA+FxX}FLCR7k~%yO(Lg?uYvFO82zo zT9OR>KJb>2lGopVc0;Rlk?HR*Vl)3iPBi7xiDq=kzK`(0%0KypkBn)nKVURJ?KQ0p zt+s9PUs9eyd_p`PCgb1ujfmJ*0pe8V{z!boekaB?ow+||%B4vS)b$C~7Ps_#N|(mw zYf)d`2wMZFgFkq-{>JtVOpT=VZM?fO{p|%3~VJ*VTc_m z%p%gTA@hkmjh8LDN*xNhjR}q`n0KNBe6|v&lv!mG+6SAQ9=7|Ybe2BZ?pAzSWvWL^ zQn}qB_*NeN#3(&ssxsri7&vWML2Tpc$Riyks?0zY*GvaY^Fo(Y>5#3mokr(-^5a5c5=zn^dsXnC}=K`_%AO&l+l363;O~lQ~=U3$4o>v~A8MD-opR zDrw}Q=Iocb^Q-ys8%E_E_{>Q0E`bY_j6V}keNJT+7xDe?o8_za$cGu{wNiFX2VEz3 zas1W9%)Rz2XTxg4_i)gDurm1)+m-54cq-wM$@;EM{p*-(AAOO-R6ggEGLrHtE|Uo& z9&$f^+YVFdm&2zi@%Uu&uWg^EEBLQauL)1j60mb@C-sSskMfDZexwolPUGWN zfMpdzE@dEU+`MOm$1Ms3w>FZfL2&CRg}R|Za6Uwajt*jpCwa@4&_$`VvO@mvNV3cR z_uM1)3Om8A$&!$DsLI}XnhZ6%F}~@{^|Ma}Jbl%AdI(4FPDxmAnvW-eo5--No%=}m zuCW=*C*>?{8!f4uzdWvN97_;bbBZFc|Eph_Eu1_RwaOQE53p05fI z$QSywHHFmH#JA`*zg4aI+-)MX&7R%h8XQK^c2MNHfa*Cb)V$iNneWgQU8pPCsVmwg zK0`$w*Y4PgM(+`>L3_FFVlj2lK4R`(+S8=x8)F}B8T;kd%-jd46B3M!h?Xni7@MVE zqB>zc#rGUU)oLJT>F2;KQ^eEbRrjIo_5=g{%(_gxI%v;aa(SecE6|GbN>zKf9KVXT z$<54hwH{A^;;)GxvRat)TIx!apGtn6qSbeOytr>)yeD|WPy&q`si~V{nsVG6Zo+*? z7m(K;X}LFUK^gC@@i1->>sbUs;l^)MHhuT)!wNa>ko&GfIyS!(6_np4KHq5{WxGeD z?6Qvy-WxRs+L^fHzVL|neia_aR-CFT9v1UF5LF05IKAX?JQyzIJrYw0Cq45#bc`|& z$2VCs?0qz*5RgdB^Vsl0NsrT^B*noe6hDoAQv7e1y?oMB@#P^X0TIRdLbCan)K`Ya zh8ke1d0OT3J`+ESa7e2ICqU?!(?U6z?^$umZo4=5oE#>Uuj`xvwUYCBbvD9LBM|A} z7US0#JI@R8Is=erJ)x4P5}>eo5hbyKwXTza<^wq2UZSio$Lo~+O2S3pdDkm6M$4kI zroF0;%Hm07Ql{pwsik84230tJYgG}b-9@Kx;_LD&yqmod4<|cwSizg3{33gP;_p-k zr@SRPFS1Xzy)7<6s_h+d*G2ZMLwoFTws*yg7uiQuzlUM~Lsix^S8t!$iK7XRj<-sC znE!qCsiI<#a8;8-fyR17xGMQTl*{ipM9?F&mwKV zeO%%fszk+K#Ekv+K-{dqijDj2GvErn_)GEY{q}tPRsNOudcS>S+=#D*|A4&+DdWBo zbqDOD@mJNiV*LSo0DqN!CvHDrFC0-m z=b%*K4k z(beRilqpVsK~2^d{E07t_yn=;Qv2xm@`MDj>LAA2NDv1O+Dqc>3F6^{_VVT;Qf)o(55)-8Jokcpj-8lRjhhwaWWhaTT!k%Swh!$b5 zM*PWhguNK>pzG+LRPmg^-jpW35%#*4bXAwfnE*M7JYQE-?2_t7L^O1%pz(E89bF40 z${@|HQcCJ8DiBCM$%CKro`Yxm8!xlt*}ksLPqh)q-l`3+STd~4&P=P`{&fq<{Ncz_ z2^jXIY?TWUf^t+{-dw6n$~P4i>Y|A!8+le`JYQwYDM)B;3sN^R}8k)wZrvgCm!sFlj`Sn;q|DeSSO%BYon})IZISp#US!vk7CYJl|T?qY6^Z( zkwBMH=}Yv~ZBpx&T!uvK0Z-XsDITfl%N_;#0+^jW!>KD*l}1xHI-I1abC1yplDflJ z*!}hyId<02ro7%Lw0smw#A8DHq-`nkOzDFB$%m@H=t%J=Dx6MY5~;dyRd7g)_bJKH zV5O#L4Hm>(DC|=sH4@uf3j4IEO0{i(r<0xx);cFuIsh+n^e;3aZl$jCdUS*%FXcnJ zkN!nIzczkmsB5Y-lR8MJL2LUid6CJMG>~pAyqO!5lqM{aQ7GqD=R4km5(6t6`>&Smzprg6#0?Gl2yt-ln%RVmZ zTUYB0`K{`ygogQ9(-OMo;0-Feju-9oP@H6XylFpP9Dj@5=a{bOs$|)9V#zJo z)au3Ax7hPXGz=|8R!>{VSs!jRh zS>{f0@l*DU;I1fbtYsSBO-ei|wWsWX7Lf#X3h!WCOq$8PWJi<$kbU$`!jCYc@(H?Q zKT0Z;y>S4U`6Vzd0(r_WRffW}gGwg|iJ0DUrwQ9U%P>GOv>cbI8UaLhULKtj(wp-N zrTvvf>0O=UO0=a_9aj-yS6kMwjB5^@;_)44T!+-G>nUKT^aB+@P&~XWAC&!po0S`f zk}~?Qf@R$lcX*D8*o~cL z)^W^eh`*Y-8%czg_7KvhKrzFdO(Z}^-AjyS2$qf+>fTXY$ue6-V6~YMoH_L3z|v+# z>xP)4O^L^NVCjsc2t?vL0Ds&SU!jDA}}G()kTn_6FGR7z72M35qBOEv*(jA zzk0cNezoZdEC3M@bNNDjUtFYQChrMS+0?bZe{C;?wWH{*ESg&;E&~It*aU8Zz0Oma+&$76ThsE5pO@A^#P?96Dt2`>dm>K{j_MC0{ zlAq9@VQGI-ejX!3H)K6cn7-&{x;C#_+P@mE;{kb+6~eUqtSk{QfN^3;&xc*;|5_28 z@`5CIK?^X|Eaye}qqTXDczV6*E`JHN=nVr1Cv{sIi8JyQq)VU{GhRilS+6m%_Y<2( z3~VtIl7AB}a-|s9WXA3E{$Wqi^&yoRkvbM$)V4YNRqtM(t zk>&t+Vp;F0=IW>rOqJn6uv4l+XQL1RP8N+YQ!+OYObP_t5@=lqX02djKM}LeHOH8r z;&bs)-Gxs#n%rN83X)-$v}!hBm1H%ai~G(sCnW;IL{dfeAI10QnprMb9>duHTw)Wy z5V_}>6DnbUwA!0P>dRz+mckjognI!Fb0l4s4VWX@$Zwc9tA689Y-dmr2I zqTT@mq$W z{cV67(I(+AU~*GIcfBUeK`nt3QvXmJL%QX$nWqq^Qq zvUQcX#LefM#fffJ=OmAK<9u^sCd`YnLq2T-^sCRg8KNL$=9I#$s4UzdRhtmfv!a>+ zVAYo`dP1f*2sn_eDaM+ZOxDDfKvNsS)g=|kzZ*LsTgtzhJ38T%SpM0ypp|?)CKtDZ$CU{0r%Kg_j`r@>_IXXr2YVtN)5Ws(Kv&YD_HMj$;s6B+=Lk3(%A>#u zEpYZTqrItdr!^>gy)g&uixy|W#HcunqQ=0^XssKV8d+9_EwZ*}!_KG+8L%-jKdg(E zR3h7w?$_{wAu>YHVVu5U05>HEY>ie~SQ=Sojd*&CnPG=zk!4Jl9Fzq-kkqCC4}_Hg zZOT+N8wJxu`c^Z)99STWW&nXAGz0!)(Oge7H$>A6{EyXc6Vcp!Y?^@svc@Pvb8Dn5 z&_675mUv<-Xl^5#XDgavD3mmJNSZ@9Wfjdib4AKFGaEKRxhiRRB;Yl#OHAHo=AH&< z53Sa4dKL_U$b(o-QiCO@6$UnhZgS3#$(pl3W}SzRyTdHd9iZRL2_VprdUFyxdyD9I6=-p zx(}YNwwvC}byhk{S#MD?rHqZ4Zs~a(1{j z;~aeSoEzzT(MG3f7HPUwZfv7j(v#n*5E;m zXJuE2H9O4_@etTW-be7Zmwc6#p_YxlMm)dMEO%Usj8bARzh3;b(;QWCgU$na6_PqV z%T;=G$gA#~2?c50J>)aGQHMm=E^}nut!kd~+UsR(won<-b6c2B<90OTzeC)!%k%~B zw32b%xI1zgko9HUqdO$mU0{CQ8bk^UA?gS{2yu{40(mijl@%{@IbN{R;Ahp!hllb} zfOY90KhQW_CabrG`BUP;*Ad~p$n-2aE?kuhjtJ!aEDU+_z#l;b+Wx32AmTx2iy`^yH^9^Yxo*P-5%3Zn%zWivxiWG9-trCG@BJo*)znW7nxbv zEmX0@v}=FFmg557OsdP9I7{WvY7?n@%*?FWk^D`Y;7y6Qt5NWEsO)o8_TstXls#rq zIvf)Kv8Y~oZ)U~aVjohSa7Ca6T4R3P)ok1X@!TFWkh2iUwES@MAU6b#6T%J-#-1or zFE+=dE>=&djg#=X^kmU;v02h^iXtFwiHbR(_=TnQs7IvoC%9>;sw>P*j%6x4Zk>~s zi+e6MCnojk7osc3+2vb@_nLF#)2=IKSLS<@i`nN(=J-nOV#xvXqS};vR$LJ0N8%6N zzS42&CS!r_*{xl($qzGz_#M68-c{?3zo!;c{`(^15;Jeq2joIv+4j1rP=I|%7jZfK z#Bxmw=hS!1LH9ob5Z3px+{K)qSPaXIPr=8fN5$YJX343a>14b=`h3WqLboi(AM{t$ z^+y!S{!=7NjPc*`=WzWgU*J!9xvt#CjK83q_pc)TQqwc{%jn{CWH_ir-v{%kRG;$^S-j%1_pIMAw4<;3KWp8kX|2l}?-Lf5Yk0bAtDmNSm$eI_5}V zngf0m^t$rGO+vH~gZb%V-gt_eB6<&+=}rXVu$CY^C$JHAvHhS~3iRBa2hF?=I8A`u zs=~SW5ohBVlkI`e1nUq*Z>wO)Vm|m!u+sD~f$L0RipUgZftiX*Gt%P3(JiKL3PNqr z=A8^z3QDdHF#{1cSdu#q9*79??T6QdVeP_Imsji)ra!}{J5W8y@J10mfY;klU++d? zyUg^ILB7Q!W|{>+!?9VzjRMr8C?fd;2Qj=Qut|C1Kf;`tfOoFd;(8RD=Yews)q%P| z1LE~;SdTX~h1O8P<1hRp4DVnHTqG!HS_NX>k)H%=1;;4-B(Tg8;+o6MjAnR6P|h>a z_(-IC;1@w|bzPCB4ERW3j?psgiaa3U$X1#j$ExkAFd%-u%q*~t6S`wa~v}s5~`MSy~%+ z5D89rIKV7OpQIA{gVW)1^6i)jPc>1~qv{3Ziy1g2n0G4r7&TI@jc``N+&DEXxl9!x zr!`}*Fmr-97f>5Hn2%6NwRv$?MAg$Vhw8~{j3RU=V6Yb~f*&M$vTiid2*RO_e2svi zo`K))7TU>&9Kl7cphTXEg9t0Ks!zOlh3O8$=?&wvRNNhJn~cvRU&PlFGf~3^&JmVF zX9wN&)UG^gYZrnl(Pu>8babFzIt<{+49;&DhqoK~LY__(FHV%9q5zEPN%M&N9y(p$O%a>cid{9~ zWO3w5b9@lTPVC(;8Ap(0U&M>|;rvnJOPB)4Fs@~wu~G_X`kdm+)%tbf^daD+H5M#w zh1Gxpik+(Ku3^rVs5%%e8X2oVdE#mEAl%N9PA8Wk#Ii|i;GG28J(x}Uh#b7=KoBdI zHV}OnGJb|8VQnl42wbK5s7P3^NdQoB19pue(wPigm9tU&a+R4K+=PtU)Bk3)mvR=h zr}fE6XU8Fiic}?^qsXwjOcQi2O46*uug!TV$%AT^`1y*&^icF6A7W`+hEljyQrJo& zgmYUAg^oddl)Dx)wxjN(3rI+kwxS)Xc7CB=={vO$vrGK`YO^S~TXB=VbTzki)O9n* zMY1U=tn5K;85d*Sk)9p+BdOEW`T*Zvq_-(o#9>Zgp8d2+wLFKoU)}x9%z=1S)}eEW ztgNlAnU--7yA5r?{8Bl=j2~2F8UpP)FQX-CY53vzG2@E=hmb3eMTiVy<+(bRnl|RR zCQMDxd#xs?P46m_n(Gubj_YX{!ELzQ-k`?Kcca`@PUv0RkDPFbjOz%wv(%dj*ym== z5VS?fv*i%F;<<&oLJSw>vgB55tWrIF8@VBZ9_x0{rG>;hP>A2D=j<-kcK+Sso@>p# zx_hWgQM;|@KI(o%$=*2ww_$R;={!AJ^Gka1)ld;xe{aQIb5LS-! zGqhfOt=5aLL$U1j;>p!!R^|q+5kFIF#5XF9c-|(l^Exxv2PBwOPf+)}1B#(C&k~QL z#UL6;Q zhU;Y*wB)=%8x|V6f@(rM7m{6o0N+t_u~QGmEH7{5%< z1Mpx}cfnP{dxM!D1nO(p7(0OfvM2-ciy7C`e*p1f9Jnqym^Z0f{D)|G<+74%Q1hwx z7EBDS@^B)AHP@|VYtW0i89^p-_l)nd*0KR?7Xr4(a(Y4Q%98H15K-xOMLIQm9>DH* zYijP%Q+qG!D7a79Z$!uLKUT+p_p&+$kQXx!(|>^HV*DXp)x)Z)j7P&Ai!284myaM@ z;in~XU7~C5$B`PfYLKzr^+a@c8(Zfy<4J1hDb+yw(@}ltz+1FuBEP#@+F1It(Z4$n z-($4rskOwwFuLuJ_U*EzO4SbNJ9Y z7~K#E1@tkTO=7<0A=p$)6CffEcrTD=8D5cGj{5Sh5O+La=9Hygi2~Z%i*Pvkbwc#vQ3-GuHmt0NI%iwz^JQUOjG51%7JFff&QT3oXYTQjI zVvT155VPxhaV0WtMsCL;kfn5g{1%17D85zfd=O{oZTOsVd$=*8hhVeS#&Tp1@B?8_b?=! zM``{c(LjmxIKBQ3%R=xxN%lB8p>Vc5NyZng!>Y#F;(#jxB`w2eIi7`kpHaT2l|7ww zP!NLL@I4?;L8ZH(ByvGO=aA!hRd)yJNPdk0aJ~@L0vX7iFGeL)QIlk*(+B3uC;{`F zIY$J{}|0sfmsdIGO@2yKQ9cA8-?tkqe!|X$o`A?<{>jH_}7@hrFVz&Ec{Ay z+}E1psx`;y=<42YS=Z)uUCR{8T;ImX@~8RFfaQ;6{b2DC7A9PsH#N1BqbriAVgDnJ z3&ICt3JibpOe`5+!IJ+;-GeqAGGhvif9k`8W|j=|pX@h%fC*4N0jq9i{-43=6$fd) z0IHC#90}3jfgMn$!6QU{T~}KL;7sJPfYKV;I(5F_LS|StLgM6%IHh|XMsK{<&rD!O z0x5M2t-O&m+woD-T**>Q>jTjYtD&M99}=x+YeX}7BB%t-V(<|&EtrfNd5Xe&@KpL2 z5@j07(!BuC6eq!4q`X>!06ac~SRXG1(joozK)pv}5ZzxG3WxR=-SwfdG`~&8K7j;` z8u2hXV|ZaBlc<8-kf=${Mz;uVhADF7fHGRT;~9^!8`k8DlOHuF1q-D9ke+(XSqG(x zHeONqD{SWtv%mw)Ssc#OMamqOT8ad{PXZA$B3wuUrhpZ5l~DdM$X% zY2q}BKP#}ZYyEP#=f?v@IRF-rKYxq}JZ9#Vjg@1)y;#QHqr7k|%+doxGZ&1b%vodT zn-4D+!5>j2Xva>6X_3a)s=lB~mRLaF_;`#M6f8*-V7^cQ^NHGeG0E02XP!J~fT*pg zx*&2M1n_~mYNGn7&YfCJMZsh-=5YvGQ&gMkbq4ZF1D$akawJc+SPU*t;fFvvR5)Ha zRPe#}NaI5%oGyd~kpUy5+z=zF(kZA>kLp|vv2;+#^$9XRT(-kJ>T1>v;t3so2fCSW zhGu^&CD7WsjCosx?FrM<(u!I$XND(M(-Kg=HC?k}oAb}6uAZg+i&=grS!TO9ef5*6doxa3cFvwkw?66O=?4`s}%VIjWW#q(BEPa{IKSAe*jgsZ|#^et+cFeAvIJz<< zi>yEq)#1UB<59(__)VQA0@0*nC4N(1p}|;1#GXbQK$zImZI_4tULE;6eN9ZQeNnYe zrk?bpuA~79KTBtme{J-Hfz8y+8nAe>r1iGIB>DQ!zd;0^GJS1lA~QMasKg=7Veq7T zR^}!(=!(0oDaYZPvRUOGN4XtmfezYmA!nYAy8Y*fy{IwkTx#C(s~T0>-%kvp z7;UMOSZ2ru0g|S7XiF?}OLQGp7eGMnRjS1mXXx%_BBE*1K{M$t3)3D+V z{(pJEJE`0CM_`N*mi_|#A_a^R>QS3o1~|AqJMhWc=PaD@h1zJdQyXn|MfMQj=Xa>8 zf^vD2lSbF>=sHMfmtjp^dz4v0LF_4`<6;_0iLdnSjqW-=N{=WGm|<1FnXw;Z4I8YS zDeonEd8h%D&O3t4Mc~Tt6yS=?jDskY3X`n0w?hee8Gc3jj+RJX@mwBFvc5iDp>4xg zqLPfOXeW&+IIDxXuC@vW$)yl=mS3ZX>smEjN!KB=4>^x#?(1#pnPthuiZLPDewpWn za8e~D(Yp!Hjp4K^N~4z(o}0pH)s#kWC-}{(fwDt3jHwv?tXWij3x=R~IZL@!4^RnQ zgYnzcX^;Y&uY8DJQUMUu9hA77<=rXHf7Z;k-7T(p)*O*_50#_6h^5|354z{*wnpD4 zK6%zGA9cT#NQ7qn3iC&YaqS@BN~iZOFQgt2X}$+V<#T`=99GqpG}R4C7glEtgzz`Z zJ|a$e&df@G$X0%tYJ>V1cvxKcoH^F^h&b|`S)Kl9_#?HI{h0U(MaDc%bG(Ua8C;7X zNx)Htbfu0b!rWv$i7E3wC8j@bdV){m@1$pF`bfE*@~rh}eW$sU{eJ)IN%27JBi={6@$O$mmN-^d4 zVKL=%HOK{j5QQ(8`FLSf_k!u3_9t3oq`Aa%Uin;>`TiVP#z>pp){jrj^F?$HNFCwzOTjWFPL5%o?ua1-$qwKPji{?yCH2Y)NOqqol&>-H)^ZI zPL^BG-$l=hrrY_WX0d;&o{j#O7<|zzxBXk(`=S{*`6rc{`yX5D+B1&vZnm{^E_1U)VZWqho{D7U{h^zV%kf9R9og+5`oc5OWlS|Z4E3P z23s|#D!bdz#alyoh)(%frag|Hnfl@~xw!KsGov-pQh>wwl>|+*A9h+|pdl~Q0ZU0% zCI}Euc&zq$@Hw5Tyx<#YD3+BjQeHMQYn-||u)hnKhZH!sr`n2(8sJtP7Fy!#@Ree8 zH4a?zaG&WDC%cGq{`N)w>vzb}q-j_{(&;_^lF(U|jEp8Cn zdXT3S=Gg_LZKoS{WHJJ?`!}qE&l<~63nGe$R+wcKt@A-E%(BC2Ekz5y5j3bSdDN=G z50F@xQzmKe8TtRvJ_;@P%c*GikfyPuqOQ@yx-y2kf*1i(SsT!Xka0-Ntq||M0{dr` zMe7{U3P1J3X@xzPWlR{>;G7O9)?5>ZwFuL080*7f#HC9+qKgpFibS!b}aKwQ5@PZyWHYL=6sRt{^Lotd;x5+jKdI1z2;q-pJ0Af51g$Eww~I%K2*}s$C6==Ra%4< za7{*b+)dl%w+e&_fE`v|pB4cWB>#XxR{jfXEd84fgDeccsz4v^t0&P=Z4PN32_VTh zndpH*Rw{sCgq0T*7+_i6QZf5CW^Qnq8s3s+6*UzYpfobNVz^7jPpZL5mDa0&PFg`f zlVNI=Gcyt4&Q_{V4WxGLUbXD>Iq>U*UVB%?q*J1C8k$T#U6-z`WErbfF5!O5bOzVN z6sfF$jlT~?y!|vu%R;gd^h;`k4H#*qX_lDGfN7TTb(-yAhn1S64T{S=XGU|GTEe3@ zQe)QXx~+Td=8(AURWq{$rr8MB!8kjV>tLvb2QqQ^w>Y=YRqTeFENu$(3JYW7hEmT~}`Xt@-2!!%1{X0ac!Fzm9DV_}z-|H3XS|GiB8>xM-( zx(GOyU!|E9mRB$s{|&SGI9OI8K2y(e@g*hn?2dT=d?(+a5FDhjGj2p4 zm$ayoDyB(i8GW<({tdG{1?E)R*(qnqtzzVxW^vqYapJ!FO!wH^QP6XTuDq+MbAFSm z-F@ea*iXoMqUKq4#w^6*oVYLsOqt z6F_s0%fK_#NDnifMV-#)s27_sQecN|*sI*ntDai(i^`>=6eUuQg8Q** zJjEr=p#C!?@!zWjk@LBj^R}6N!XH3z|JogmU0q#xz6qov<@pmTTL-P)pY^|AsDGV* zmFLC|JQAn;6)gQr`C$i2QUXiXA^uIL9*@s3$|{NM52^$#^J)(*6lrTs`L*4Bz3PDJ&;6yrMn zt!l%SGWRF3_Z>6G_8+RtpNIA-obb=c?EJ6FWL3#Ze-Xcb$1FLCMeOM|SXBLS%3DeF zh_@oHL%g=zTlxUH?9gVESE|$G(7N273Ch!&( zfl6qPh^if)nwTR|R|MHF2}Gnh$g`E&{xFXz$=do{(g2l43i1-C0;83RywlReAKx{n zI@2RnIFUTcC92;8oX#T_zh_SOcoq3kCrE}*-20yChmiZ?duDMkL&FO)Q4NVKumm9d z2ykisMxbR^~!D#%4{x}Hzm4w0i`($tEI(Bx3~5iuO^q6&Y$YFmx`pe3Jp3gDtk zZtyE0W^f2C*wx1tinZ^XV_ZeLj}suc7o(1eCF0)q%?Y+r`X^V!e}ESsBaoh1CJOO) z>ByMbf#*}lC_Nx}dsQBP0m~dMPDa-3F)>-mbE+{Gbpf8Z?*p?SW1M>3sVACNRt3K1 zREn2AFtZm_p;md@#Y|Ky&;*$U$0Lhl0<8S{4I-R_k+k5Q6dyI!dTql~nD(~7YZbnt zWU`p@p;;`x|Io~IFn*j$9WhmG`4FhqY2uU*&8)=ZRchIE@ydth2wNScW=!77c)j|N z-4NXty0u*%W%Qhw9=pa)U6V-v*v#Vwy>ZQ)5ibe?iQagY-69*C)~f2vni*YZ*PII? zRpQNSOqIM%p&mxf79V_Mj!bP=0~w(Gzo3Jf%P*OuN`+Tp3Ld`FF^x<(_&Y&MewX;> z6Em0R;OQ%U5z}w6d$>UlU~}iki^6PM<`m|_>sM)9tQhQq^VAJ6!z@%OL!O{B$0AIZ z(*GGJpoZcT#TOr&MRq)dWtk_5^iOc*JbBoXMA*uDOdB)s6qY3|u>d2yM-7T^Y4o62 znTwW*Gd?j3?aNUnznA*p7x#Q(nrSQIBR(8UPmLFq@0dRE;U{K_eI;dGMOpLGPK(ZU zy2_PGPAEoKZ|U09*vE?2h~qys3(`~jG-gC9T7CVZ=Tp-=Yaj|9qLr!!uu{ykmaru9 zjt8$5_29q|bFYueJbM=Plmj~@rQ0*(%MTqji`saCGLU8%tbCSoP0<{f)3dy7yYdr~ zVIP{_pwpcuD{pC9SU;~>`WPI~YB&>9#`B3eiK;?Z5>wx0sG(*A7t3}qanX35*_h0t zTWYv~{1PDptk|v;R^QNwN@XF!YA2?$a^=4)4HjJZFPj7RrYtvIoD$EyVr(2Y9ZvdC z4BvFsE^&MuuL`acMw!>iXG_-29W%ZH>zNLsfZSc^5VD9ZdQ zKqq3o!mmZBp#i8}?InOEX0r0dgkkV!p%;>x{lvWxZaV-WBrd~v`Q_xeGD2ZYTX|7JS*Z%xXlJk+ld1!8PGFHI>_ z3DmE=A{v0)U@?-c?)gjb!|EQzI+gsv(n@8XaF<5l=g=;d=`LlCq=`|~?uzadp@rmz zFx1dE8p>|DHNZSdI0^$OA(lT@q}h31S3udhWrbaVT9#Ttun^L`k>5O{5?LKpR4r7* z*jKCZJ8yiX{lLOKnw_nYEuJ9GxAP+VL^6JF5^s#=*(RhBk{0Mk)>!O5?i%0#a9cv? zdFh50G2|0#^_VA5M#trtcd=1Zgwy0B9mi3U9O9{>(d4B;gi#8QXY%ptD~-2nI{sdw zDFUx7VP1q(igIo@0A<<|mR2vzhsU}BKZlNWqaN!~O{%Y52M|KnTT}sFFEn#Y{xpM{HUjm* zn#EjmhJ3{EI_6SQOc<;Po#J}V-7Q_Z8-d#0w67#~Tg!DGx~`UM7xT}@4>=(rz;TH+ zDeM$WT0nVd_{T34KXYCkT%;1@$~^&pTdeIm5kGVoURtV%!Mm7JsOxIwE`cjXna8p? zt2~xXC$o$Z%pNi?%Gdx9mg_E1I5;@V};Abr&ADX?bAfgvwPL3 z=(%yM2sF>v?TGI;F_38O6|9JK(3Yn zWKBMU1|Rp)iY?5sR!;=v`gQo`T~9Enm}A-jXr2@xap0aw4R6#ir%gy#m?gfMk~Xn& z=UGv}COXF*XCo7dyrB9V6fQZJFfdRJ>4kS5bxp3qtU_9N!Ql(HM5d}XBtK?cD)y#u|CodL&>Yo( z2p5;sUPeC^wU?^~+OG)bh-$!jC8g4YYG0ZeSIKMEVddCD(|WR9QYQa~fW{-zt8S#!L8ZDnpBSI+bVIapJRy zw~NelKEZZ}=txJni95y4bUuaOrSkR3hQ%M#c{)c>B%-BVC3&6j7I2R!bMgScSAFRc z0Vns1^-i9iix5f3ym%>QO^$A;tiG!(G_s;*6f3-6T<_!sK}1TTEGr^enwycOq@rO= zC7=uia1%n``y$`l)c3kEl@<7oXiD^bZRC4Hr!3z%rm}hz^8&nx?@uKx4rf>lXCkW5 z;?hvEMOi5u@sMb9@zTJ<@?+`pt&>CWWVofQvZ{<_Jfae-mTyODsJ1Lb$rrGUN5!=+ z?w|jd`dnGLZVSHGK^$sop3$=|0JsKN1#Lw<;qsf?nXiXQe+&98a z1}ZF{u-4h-1Y}avtwgcn-;uyjXc}*!b7S5XyF7ff{TN5|M=vp*I;dwAANz#$2CmjWoHMEaGL!ifn`kZPMH1r58B z`2c;SwyaT;Vm3vMte-KN&+-nCIk`@0+obBaBV*z)J+1TL>T$@vCWn3m| z+5iHQReUL4_G0(^O8n&IS&3gOw<3Aph+H4fwSS8oqrVf=eZ1TWgrlSlx&=Zw&ip}~ z?c=Ta1ZSj^0ZM^?AUX9%1ldx=fyG+>DL(h{8RG$GlqUlq-9J%GIf)}}nhn=3($^~spXK#_JFPE@{(kf1EtMSl`VrIyJ!3mG0VYt#7YlG5Au7M2Xaqa0#nOb5mh+E>L^ zi@{bI_(pRCqq)R3mS%~(OkOfJTUp?vG(X9NaFk|u@JX&j{;3d28Tq0=lluwZsC1z) zBorzjK{8N|QZIzSQ;uT%t!01`n2B>sK}xlJU#IBpu5YUfbj*WRGQ|94zzc)2Jy`Cw#dBf#O+|q$N&%&qgXB=jg^A5 z3;KKg80(LERx(i>pT&!_Cs9~}aE>M`M>ET=5$9$BS6VABLq6MN@fd!UOc|2B%gPQ7 zDx?{SeJ`CVe#*jLJWb?h^K9GkVoEk27o4uj6_+h8+qQTyORuwjm*RIRR6nY4L4(zo z`ubf_L#_8MxG2Dkfy2W62y}L%Y2Y1coSncqMir`Oe1;l2_vtNEZdte-nAO`FX^LvO zK&lO9DmwCKg+K0&sxeGP+p);d@tH(=4(>P|;Dw|)Gy&3>GgncV(y2J1xD5M^w@WQy zpc#9XFQ*7TYd13wV31KQN*?3$R5yI{kJT(+pdm5~@l}hxi-0qg{W(GPC-+3FKdrmL zdKau)b!s0VaqCvXLn2FCjLC>RKOS+C_%w%?u0EMal~_x-qfkt004>Sdp+HBAI{nv56vN3o13of}DF48*%bqc;Y!J-mTpL{&)aR_X#gv6z7EJh0v74hJc?>+vO%aVvOz$*$dqIdK;XL;tQj+S0qJs*#M`yOBNd zB2+{cI6^fl`GXmI@nPIPF*%TW`H**A;x3a};KA}%lBdBIze*bF>^~}r4{4X$X)w_xVVVdWW7X4X9yqL z7lzjM^qtxpsvtc|Eh~9hd{)GZgRhV%0y*$ilyL$LNEC)UFEN3R-+~kpKLDP7oqG5N za*;9cP5tlh^uGlAL%Q)cGNrvk!jCr4BT&)17UmJ5k0Kbq>WXaU2CPr^bkeq-&{=q$ zd^|IN@M9exiED~^`}mJhE2%GNYxe=vM=+CU=?t%MKSd2BZ@@Zs6eY7h69pwaGw=7h z;+k!8wS;3Q1M+O~}`JMWd+W8)P9SfB^h0O7icB39t~qmr{$=aQ#iLju0#UK};y+ zMYg|-g{8bZ_z#)9h2{QeZC6clyK3%Vi|}(rO`|KTidfn|hwNAB|FZHn@1|yQe;UF} z*rJ+O_xG#^q!RDNq|X&eK1=`E0t~jcH{!}|{MVLnHJ$~Do)O%g^^2+mAhynq+2qrR z84QNeDFE^98Nq9VabzIH4u-D?GCQxEx#Jb2Ai6{XN;nM4Ng5|+*vYhNS{NyyG^?=e z99$dIF<}7oF;9}JNN;NDa84#q0mz%8;Uqz*qf(JMDUBQ{P`8bAcvngy7c1(4iA$N- z3*2$m?$~lHVaM%3jgg(ZB~Z(_myjQjbbLbyK_nT!f+e^!;)2l!ObZSeo~hc)&kDD9 zETP5?fq zcZ~WMK^+153+Vjf=8-%-IL?9+RfBaasCIb?a8v?FfO{E&D*LJ=MiT1!A^cLU`kyu4 zYQ77O_P~TV?6x)F;V*MfQ0`!=8V2dDNDm&6W={-f?gEk;xq~GY72D=ec7M%~DY4Fd zN3H5HxF&6K6bb>{IR(A(A9w6hQ^Td4)1pg}%HVjg@%ZVqW?;=+Jc^GUQHR{L`D1<5 zqtcWHDzZ5wEu}^yvgg8=Sf$u^lxLJWn~_<<=h=y68Y4FPyVID32HzP`(?-I#&Q%@`y}txd(R3@AkKWi4_VSmYwJl`72b7D zQ+$_kIB?w~^0eunrIg zkrXS5yEVy4z#;0BV^67~&V8{(9dY&^YSP$?{uJ$_c9adn>jwOg#O09#QeQ|G%%TG# zbu7=H&K#F$jsa_4N&|LK517nKVylRgGWa-4{ph$%mzcyxTp>n}fkyo*F?S54>#OBd zvz%+hxnp>C+_i8mHU(&$0tYv!6{P)CZqx!w@Mg}V#=CF(5Va}eh zyxexbcz7(IY5SE(2=Hdx17cQyS2!M|jMB({SZoi#$bLj6NK@TI_}enor9X@xmZ`39 z2}^$@>NiZJ&PVAtZIM=#u*YPEuw~=aUTH~v9I2LFBg9gkh%4W+XiOap^-vN%8CRYe zW5s(aPMPJio)&Y)@yy_}faQ_#PCI_A+zMFv^E$1L@n2)=>4NnF{)OBPgJ#N$YC@%3 ze%DKiHKaznYFl9+bG#fb?07{Nf&~0(R3Xo6kwU?>@D8vQ<&59Z?EY5Gt_O%ix`IaQ zxs%_Zok1%F-$dqAzz-w(cjwztMH*nwb-ZKcXU4n84gexf5E@U56I0)hyF4iMg$;oQ zc-90I(K>`aL;)udhm!4;x_%T(`&jav^;XF7iDqP6#Q-&o1`b0krwTr!?L3?gJ>l++HVsr&&AgdoWOO2%IgQ4rcxhKk-9qbwexGo`^_y>Tz|- z50cYb`zDu{<3T_8tPcvE089JF5Ds+xh%ZAd$Ep8}E8j|?4hc@e691(+Fz?^un@XPB z`jfS#NpQp#miQk{S@O?e%2>vKhmr-V+R0l<(*GzAt+(P|M0XW0TEP&<3kh<)+3>fu z-qPaYb-=~;j>aaI7B9br?cE9ZI+SW7K8orTdpy>SV{Fe;*<)Fj881Gn;u)g>UL=;3 zY}ydOkp#13*P$MIbtg(&EGWT%sMIMJRqG zPNN4*;R14z76Nb@($5263a*$o)7`2ni>sZUc#9rF8VoX^*wiML>Z73vb#*Q4>1$@C z{&?}#cwU^Gp$4phP0x%M*%SD*nk_8HN zF0Nx~C9px!+lcyj@sCMR4L0aT!PNjuvNXg33DbnF3@Ax0$~tF6f1#bM1>dweq!mT8 zXM)5k=n%9Enkv=&Qwaf<4A7*iW;}BOEg8u}F&2y3#nm;uFt-Dl=ypJ+7T_gyy9SVw zY*eTCum)E4E|E~n$BhLjGF$})ZobZ31vvx&$;c;EK4OtrQp-zCLP2Jn7=Oe*jsFyH zhdLP!?hn=TxS0fIzg2rjf%Tpy6t061ynF7vR`P$2%M*pnK!|llu7hYfN4%6d;5tar z%)EEW;1;>Y-LUXw-lMFek;3GRa>IZ~IoHTZKxmEoW#-8S{01@K1InKYWo}r#YM{Qq z2kh&5a9Cr9bz_LVp@Mdd_dZNvHx!Z0t5)~Q`1Yt_DQE|E*Q)u zMN7e?%GVT}2MrxJJ{_)vq@@FfbTT1klj9(H{tZ&FxK({2SPesKXzw>(#u%l*dai7K zC&H~RjOIt|%^b0E+UgO9(Q&AS#|bf$PfztieJTO6GJw*NKhNZuUTFl? z0c@Gv8)2>^4K^^ba%|xDdo;-o?b)M)vqiuB1m?>K_MI#!{2y?_9NCFg*c z5~@?*WW1|oeKD55HR80%JSPKiSQ1-QRxg7_1zFT6rxo&IC1lBRSZE?7WFq)Mn=1tomye!u25SEJcG9 zZZJmVO^~0Xv!6RGd+vEUdn&z(hKDNoW^aDop@lroBYkR>Nud%>RLPe@=14JhLVU)` zQ6&Fa9@P{JI?72}A|VmMu;mp7&ytqmMRDIEEP2;hOVnso0n%VvmG3zihZbge?`Gzz zh|S@v#EYdXxhJq|31NYgY&6 zGQ8b{U+;e%TFldr*jE#$7Tz6)^>C<kUFn zMDIN^ehr5kEV`$<0qT%?q)1&HZn5M90^>nT%=NCWVe)`AE@9tSa%tfOq6}3-%Mkqi zk%CUDl^sC6tl(pD^;tYW2zUqcd`dfmL3W41ric7^Kz#g(16|yKj>X9NQ1F+Xzv_=ipbpnI8i`FqRGWw z`$y2`h6}9NjsZFnGuv>7C8v{IVUb!eYB~WUkrs`gfh|M?(Ac5|&?LOehgKb7?wfI&!+C zGb}QOcCQ&AqyrwVQw45qB?*rM*0j(LU-Uy9Enn4GWsHH9!<03^avGGP?6 zURII^EaH=N4HL0i_i%+Effu|?o zM|utAiJG%o$}w3(YXJUWp5w?~7Bfpzty${CEKSq1gy%}fqd>}Zj2F!kG}d@NP^YJ< ze&`tR1~vM;QUBYdN4t6GXcMAC&Qgo&j5UV5RnO8)U2fLUa_Mchpj^b^0<-lrwd-ku z(Xa#Lx`5f3B>QLObk5adt!8Hdqp&+M`#~2CQ#X=n!OT<3fX`QE=KKXV3YyR?t~sA) zWG#ecOM6cnzYP&#Tj9bN;ig%}BJuk9+&}sR-Pp>A^mn2fst7X}i_x6_Br&kj<_#Jr z^fn=bH3om9mrw-xOL&4nUmCEE^j-N>0`Jay=rwC`H#6c#>H` zNz1mwdlf*BpT-~B7GPa_$cUySL$lfbAorAicYCxo$&h2^vF3@d2&%Q%W0I9AJ>=NWUFN{i% z4mx)tbCC8K?25b4nj2Akh=H-45DU@Frd<@>X-3|qhVn1JSheij8=a9PuYIvurE{s| z1Ih#&sI8IlI!DXx|5CmE9|RQ+0fTald{dornW|Jyo%eE4H#5OK8juXq2jh+Qm1qI0 z#v#2%;owKo)q3GvV=S zDad&S9-Nk8K{b%OJ?V?x`oSE}YBt5|i08t5BQt_?mN=frX9><^?qAD;hz>mKv-<@i z2d7gwk!8JTK`&qkUDI=VFW#iVWmP+(aRVD7=>l)OtOzT91yQ&FPI#66$rVp-=XTp` z^6yMIFl}f2H!5EeBCmD@n%Wy#^Xua0?LZ2?A?h#SB^htp!k1zd4}Ed(G6bIgojC6T zRQr~=9{#WOo#LitF1u>)$5kA?F>{Q5*px{!~seJW1A5c0}V zan6MhUp^C;U&yC8e^2ZLdvB=dspPRmtn72~N6PyLk-QVg&_9Z4^v|Efz)mFoS%{r@ z>hOhlb|)(Ti};GZ{Z-`c0(SaK(Y^~{*ssLEF0}Er*t3i0!=cmNyC6Y*D_+{gvk&j) zUniuePJpIBuQ=S@CW>$O@(kM~VJnJv2W#kZFRyDxEu_?x$?A2DvinXUx%D_L&gvZx z;r1XzW1Xi>Q-ZKcXKBYP*;@Z}Ot-WK%vq=E3~zmodVEv2YkPj9bSzzX3D26)6sCpa zVHsT=oHIzF5q)`UQ4)V)D{G+ZT>Tz##u4r>^~_XM;z4Ghp<~60b-nAEYZj%EFxI=e zi+o;-&wQpk&No|3-_O0-?L-wWoE@=uf{Zz0U_bYdof{#iQCRhaAKSYmyrsNO8mz3GX~ zkg-(u2D^wg(R{fks5h3N6^fv|Q`O)$tB?(mds_1<(BN6AX^NyX7oLj^J&26cz&p98 ztBWcYvUsW4a0gdMh`>8CIm3OiMD!~nyaS4e86ZNRfD4)H3^hg(35wpA=}Wr<@5@M> zg+jo!K9-)G4Io9_e+SPv<;*Y;*Z5XQ*8C9IF6I;ECmYizB2o4ySXQng^(?M%Ml zjv9vx!sB4a=nzH$Of{n zqY|C}qeQxe%E#Q5Ed3WsfNUf)K)b=>y4OG|&Df=$lqBsYy#q~!aS=w_w@2K2C4fg4 zYaW2qvll}PABk!EXuKkvwm){_i~}goFF`VGewRk&UL;-i54}k_1TvDn7NXZ>u~qS@ zm+R$v#jr`bQkMf0Ulm)7A5+E4@QkC*4AOASB~QGBf21_`JrKB^DqX%`AAq_ zFBcPYLA^e7V)$cdX`oi8jnDPc(Ago0NKH@1E27{^ym^5tJ%;qx^x#7~DF^?z!*&6vB=v4+ zyn$xPIsec)q;r1iBc=t4Nz$b!y-hoiTq5tFj1S64(us@1SMoI1dy%<%A0IP5&~x>n ztayD7t~*=n#w>(wSq->x1H?~?*{M!mrTK-2Dy3J5%q9G|%Hx+qMwcp3i0QOmB02IQ zu*)GFKiI!veW-s0P{aeFrLai$t_>vuvI|+B1#TDRPbB7wKL!)igAn0|cGiEVs+7D; zH^7t*n{_>~JuV3JLpNm(v0e%TknD$6;ed=U*D==PeX+$1$o$MhLO#%aOEX{|>Fgco zAtS2e0VI;snrc@2pxAvCuL(l%mv@0`mIm2BN~Vz@ZtufNXGY>mL|u*xz)*7NCLq}kWByNx%a79Xll$Xm#2>mc?2l6C9IYa!s0!Bp7^QJ;k{rd9 z${FXJR5=eRM;d3^S1})73?t$%AR_0lOx$}1&sz3ncnOm7S?i>~)~oNEVXN<3wfeHY z(|h3_S_C9dLKo7ust-z-?;~sBZ?qPEP-~%BDwrb!_m5bza(+}4&4Qj;Zwg8O3RCoN zP0>%oDEg10$o;dTsG(EEe1`;`IW<36cP&;fB(<;Q~fGlsIE!qI(SI`udeN!#k#y$lInoHSRap=_w~0SY;d6t7K%XcpDl+ULi>vh;m@M~p<&!9!)W|#t z`ZY9HD?Fmdq%}4&_k}TOZOpwhCTSkrE9{C%Yhj+dPwTo7 z%$0GOvh{|C1nKkZ5Pa)$P0kgO8e3Y}xGTjgsIug$cxk2ZT@za;9!N3cTG(4_t`oWQ z`6N397t6gtoG>5WGj7D+88=Z(HCmmTkm@Qp$_De@Ot$UK%za21V-+a6niPr-#2eF^ z+@#yW&Yx~q1p4oY5ZI-RUu4Kjx{E@+!VU2k2Ri@_fKs0ZJ zQ}z4el~$D=eLL>gWI$1bNMrI0#jPF|VQgpN{)j5zd^8FrLTb^Z$H??f5>w*i8b+1!1VBH)f|7<1v6b+H{tESk zR^YP0lAc0>DG_OlpBBbj{KU#sFI(h!U~?|e-3|ZI8|$?XTzrTn+JN~Fz0!( z?=9}}{yO{>R&N44EMenb5RbeChI&!_6V#3?d3%w$iz0F5KlXcPC ze4_s~lwP}KYN+Fs&c=@Rwnc2jZ;-O_;5$5vcX!TfZ(wD=6+getNBCZ+oTDK^QPu^W ztn>}aC{B8ZXX>0I-V}@8;idN9#h0^^x5T!0c=5cqk;(G&Lmj7E68!qSgJcU36=I%u z6{>DB+$~L2I9BF-kJ7pTw4$`82A24~hD+stAbx%ak3c>IFzQBIX68r0(GfJY9$Sdg z$Id3?UdG3w{ax-~{)zs)Ap99|fK+spPr(W~NAVpH3>mB(|ITRYCTBXW?advm=rc9* zR=t%KTkBTCuN6cFgcDy!2#w#PiZP#ym)?c`>kr}|@A47$KO(8*PonTWUOfKKij#(T z;jRwVEnC*R4o>dAP#kYnFNrGri`euYFUa{T$dYgx>#Id|(U+BTay86< z(6E-jV^~ORtYlODKMox}iZj*S1Y>pV$T8=?umPy~sog~@B?mqy-{;vC|3P!u;oLu~ zMQDvxH(nY2S3yV||I@v!U`4;gi{LCrP7qG7{47D<0cOKlf-(gK7S-WOW=oI)Ot>{> z#3cZ48J`e^w@gh)z|H_ysx^R-FvCCwhdn_J4Wtp1{v;_k0Pk;|O*5Fmks~QFL2g!? zm^YY2IS3?7@SQnz-7OfPbO%*Rf?#u_w6G*6NP*p*k{}zp7$T`MRRb4JZ*~1nS8v zOAvED0z7hLg6R8*7q*Q;qQ9I-AdetwQs5%A3+@s9qmPjcpQ2-qkvyJ_9-AOO{D_Y_ zEr9k(1qM{0F%Gq7Rbcij4@M6WHVeXSC09lbQWdghR1Y0Wa(P_WIg6!@Pe64Cm3R%o zZvy3=h#q{*eQ}c##P*MQ{)siZ-}qjO?^ zgrG>8ERAn~r|>DtfF}cil}#1TG$)Qoo~A|p8kR9#Okb4f57rI2Cb;UYYl4OIayCX~ zpbknG7#J1`^%bL}XwjFHR((kULSkqRV-`rvX;UU$vYrLRBX{uhg|j0!kam3o=@@zg z39+QP)`aj*RexGn)Wj?zRD_%u_dGQ*bN8%1)RGvNN(T;4QLmY@QV-5d%nYXKhZF$J z0N}||oa(6+g}!4Bmxl4-*mUC~_uz>b!Fs$32~ATT*gw}88`BRd)CbO20X89BJ>?&rRO+;CP$9{!}w2QU#lb7h5ye=$Lb z#j_G~(hI}6@{1@sxgfLDo+u`@B^KBg3+JXpx96nTa=9nl z#M8}2_M%h5ykr2B!g!CaZ>eUiWkVSYYR%<}Z}NH--*m-Vl?WQZJS$|wvrmm}*jP!6 zca`o~1Ong!8imA!s5N^!NR!7JVt1pEe+}91eZfAmlIsxQz+R{rYR&;&Tv;VYA;bc0 zBe=z^MN#iMTIRBP{T=rk7oaIa*BjrUR;1%hw5-H7V^Zz6CV%`_HaZ+l?gz;Z;# z?OLyl=DXF->$1U8G0@rv6|7E4kBft;GGfc{#>YXD2(&4CrZ#YR6J(+`a_U5%A&zfP z^scnaZ)6aG!m3K{{Xn#vaZ4krNo`1R^SGsG3?ZF*m+t~WTd?yaDjstr;ni~EyxFrC z!J!oX?C1;u2$USx*aaE5uCtqsND+^q$A|2Eb2&3} zX6BqT?>S@M&*Y;WOz<+*Zouy}!RMmah#3>N-G$2S~D%vSYC*d)-Bs3 z8w!M-=~b|{w!n=-RRmXh$>n zb@>S#S%BsCR`%Cdn!ZbB@hefV- zv!oEPq&^ffO+A1&@K*j&gI?s{rHVj?0vL%!cZ+kbbdN=hpms0%O`EudXD;2x>r(pA z8MmorXMNCaCn90vyCa)OqZ>`Bn^KOZf(K|(y3>03#K4{XsyQsHF^-@RZT`3eJgN@v z9}=B+(UQDky&g*6ZTA586yk0|i2pRuO$65u;BF#oYr!pr0R7@Nk1i_upuII*REWz1 zTu5XU`>84hz2|pr&}{}}@YwiSnbbtlvQBFARvD}3xiy(ILi z98d9ik%)R$_&46XP>*_Evqn1lx|oi@8&=AoH>EJf_ihFYvjCo%%iKsHH~g>T5DUB| zcM(yq4ASwoY`x$e`K2jKoPJk!)Ly9CdrF*sUy0KnWan`GV+0NS2^s(>HXnjUb)onX zB|%dD7~i8O9el}p-0GfIeSr1vj2d^b(pcb=?3%TI$vOl7&K}gfPh~4&)S8%fR*n8= z{i^ssRmJD3is9By<2nbj^1eVt=Ik^f=p)ifzTzcK`VhxAVk;ZQNVc-Ca~#T**Q%#D z$0;tDmYiovZ<eeuZb12(P0-gzZ_Z zJ9~34*U!0fmyup@Eq`mNKBRZZmHLF-QlHz#bRhzs(bq$a-U{knw@Sao(Q}pV)FGdb z7FS8#E&7vQ-(VMEi=z&r zIx-%%s!(ADEK_;r8MuftchP}z7X=_t=u^dm_@2%B!1Q3rumXAK$NiJwL5q4^KlMFZ zWEjk);<0ZfY0kqF*JdwpA7!2n!-?(7Oo3LwqYbQJHBi2h@=u*yyAZ?feA$tiu^JW{ z^(`G4ZB-1rtUL}b=(`u;oEa;-7K!m2I`r^m$$p+{ktud)Wmn~;sg1VFpmO83>MKZQG7!AyQ^s~+Lw9vu+mA8yf& zv~QOEy_|(+<5z|QCt#>7GzV$fzH>=yY()f0Ka}+hF2HEjNpkGnnzVL+fnkpj4{>`_ zB7-ht^oAROsIGMc)AQvSX)LhoUx=Y3U65cOMibJN#dI;!jmu;+G!~buj>K8scS(XG zCX_6+#QNfcPG~MtEO@AeW^d`i@!C56*j7C^4Mj1#!>%i-HK8$LN^DgzvfLr87qzWz zt%>#xi|~I_7xS%9!$C6q(!^aLt|P+IMyOQ;Z;Dl!F$%-|@D z;ZYzUw+*Yi>jX;q84(cXcd>FnE)sEn|3hNVW<IBZ$%?+cs*1KIo1#T!X!2goeR|N&Th-KhdRF3&PckMaCRVZJ%gtGlBT@d zR92-`-Jae3p?9e6k26t68&ZV1S_4(0%dXyR0nTH|V?b@2_GfOQ-0=*gNwp zB4s`U?n?T!B|r19i-!&HBQ>=$Qsy)~Y}A}Y-MpEzYGWxT{yX=IGmi}!$Zjny@gmz> ziy~!VzlV)ZT~d>T=Q$qzkl9|&$zg+?fIN(HBiq|oN6PYy-YK2>6W_T=dko_VYj@zc zQc$)hzyp;)Y|-N(%0Mj;a^mmN=Mj(dEr+$Tflp-5g!Ux5i6uGoDgNujT1oxW7{5LM zu@TRxsk#UOn{b=Cg7mj(cmPLe=s=3KwY9Egu4mCm;5o!81z|T?7_jo^2{?9P8u~!r zbCqIGnyOwuy?_Ey3RUl=e#QP|sRn_U`_28IK`BARY%>g^;~;Il2X}q2lD+~OC%($x zeN>+?=C7((lM&P%f6~$z5ApsrWO2Vv-b-{BkO$46W!dq^boY42!+4SB)9z1oH_zSZ zI@@zr&(#4PS=0=UU0@w1+5xF5}=sF(nbO*-( zvMe^4Iq;cJH38_829ODD={E?3(hfY~DFI1?w()eQyLdcc%BG9~d@_pyoGh%HsTi)e zV^!^|Tb3o7frSHDS>=n~%wOzu7fc2=*(|w}3H4QbNS^WJCnEy)9asPMs(&9A|MCgj z+~X)N<0BXj4XP>KAb20e*h}|Oc>4cFu8tsBk-CFWB-OKOXVH6vh2Toskl;XEU59(U z##r^tWaAhBvB8|=1%r(TJ3Y=JFecfg$@2yO(xpul{7Gz)g!?f+w9W0+i9KO2EP9F` z+vYC380;z721sb|rI0Y5l^gkx=Nzz*RZ^rp86QyC(HdiPX@eDB@I2qw<&F?1BK(r- zEjUk%0{Bh*OZ-OR48diz^z*@D)H%B0p|=e4z+kX(#^Ke3TA2&H#SAc&xQ~YG+pG8; z24l(Xl+1Xtc~$@xql(U7%nx?CeF5UKyw_DmR5hle_v*K|rcA5B9n_EU*hn zmJ~y;bQ?ffQ-v^KXuBoK%|3ovmw_7r<&Uq6DuA-a|id)~a%2aem!P9lVdl zR#4C>$e=wEM4bO4NkdgKK5q_YEAZoNLX4lNHo@7zT(byZ) z(*lcElBall5r6QEv*1G7k2HX-1&S6rTi-5f4@w$b09~`_FWJGKhuq8J-9py6PzCxZ zm$2eM1*(@fFVI5;w5(Dt`22Agr*YjPnl#N$4naQ-b%hi4lY{JXP|Ch9|AaA7;>WzB_6Zhi90R2v(|+{R=1f zzLUbOhaP_l*NC)r;ab5qG?j_9%V19iE(v$1)VB_1%u)rAf3_N<#r27~)yOCC z1apuNLS8sYY$g_xtOU3k=9-JK^TJ<9FcM9EK^<={G$JeNWlR9=QrUwL{DbHP1d6&n zyrSyH<%rDSX*9b52ANM4Ey$=Sw9snLG>bzlSG6|DTEo3x7aGn9X%S^e1oYlcri8Hx z=DFOg8^)C-){rNX4R|P!9cGa$Ku@Klr*gb3wTOA(BP3S`cD^e?kssQ>nw-@9`g#;z zhExySgJ{xQmSRI(!4ArczLj#02Cw2R^~RvcY6%h^hQT8BIW`w4kzrTyqxDAVlokb) zU)zr-TgB@d%(WiPxUVKA5}^P$NLc&yjr@yxV_LdRa&EZ&+vaPN%u6pti7<_u)%+y_;+7CurADM;|kXB3>4m)Cb zWwK6BgE3-&Ya7+uB{*?_i%!Gv_U_F_Xg1D1AS|u%6)_^=R>;Unhq-UD*1%4+2JlD} ztpWcohP8u3hw0o4kO|?%x4_Q z4MmPv%xo{7F-LhrhcViZT~!>4c-M(KSadi4euq&w8M~;svxBvTc2Dg-npX&r*gE@e zWG-x?%)rhmsF}oiwir&G@JaRUEiLuOuQfh%^jvQg>l@pWt*waXwBz_8O1jgSk%p|q z+;0lyh|bWzOG!fn?)JVV&p#0%-FTZsFPIT9F7L?ncp_1gq7&BjE-DGVM$iNtk+etam!+zG}F(O=nx}E15FrYe(Jsw$-icl0fI}R32UNWJ7byhEg`~8y)1>AttX5ND4GQ`QmC~;go_7Yqvu1zIY6%c`J(C}3;I>P(5xCr^Cq72u~F(+ zEC$~>@-ja4V`D_lcO3_L`6(mhSi-k{Y!nuMPjcJhdYY9K9=m1Q6>>}>&HUKMM);yD zrEDBtnw=B!uCdILls(I>d1Mg)08Sa<+?D7=*(x4BX$*I)R&-p&FFk3D7zlHXkP>U? zj3=QemH=cF0cncX3c^;b%WjTot%|Vqs!_Gd5>(u}^AB&xE=Y84wCQZiptD`lxe0U@ zUc)aqWkknp{!fHy9csNPn@+)2-g?T2q=h{PvSXsPMflOPz;%)WTVck|pc`h}yveH_Ey^b~A1(H%mYh~XcKsx@GgvwxzN;` zt;{2AJ7jK!K(L0mAbJtF=_vHQn#f(SYKC#u1p$_AtN^XX@dg53Xd9A-s7Z|#9g`bR83HPwF^22Ekc7{_y)fx=IFumj-Ii2Rpv#%Ct7w%-402=@^%P7gs|C&l;y~K4u0nQ148Nd<%|vf zzyZN2R*n;Qda5|x2|eY7eKmDhddBHOA%?K0XTZ*gLpwX z#I+^UPRaEXKCL!2s6Md;%^QTqo0o==K~jyxI6MkatgnkGec20bALG)k- z#0{Yf<8(TU-{H@Mu$4hP;8O-<4?#Xw^XHQ7yyxUjmKK*e;@J>lZp8BWQf+bcaEj5%ctl9I8xR@ z4mE&BqKb5940Qk{$$~&fX4e6fq}exMB}LzWm6Uaqq7DEiO)>~583s_2jL0_U5Fvz> zq_Kqz2&|;2WS~{aAk^Gyy72!hzHq#XG&K`MS6YIC6i$-#{-7C7(&m*Qu#-ZBm)uU;zX$Oo#Sl&e z10$>?JO3hz@tsLZ*SyxwP0br%3pyV0c%A7a^F5xENL>=Es;f`MYFXYB_Afjbo%f{u zvlc&}vVYcG%JQDJf6l96`OnxtonfX^8acj>>@K= z^lyAgwIecJdrdfIF#}FPYWM?hNOu-nN`N!5P~SB8|IqMjZ~-C1fL$U z-@c=wu)dqKgSp=$hc?O;eP21F(73_|UALg7VPfR&YA!U{8_9=Z9UMLZZ!zCpzou8(DY{FMs#E zP?}CBQU$Oc=yVE_wNe^}kTXU(ML-B;tR#t)(m`<*^T1XqxHeVA!lY~4auf0(QI}^{ z7a(nP(2($i4^;Lh7RLDnW6T7S1?WSvuC5-Ycf7JJrb`@bsz9o05Az--^U1Unl$v@L zJ|bw39kpl=+|`F{wC#cslNrKzDYW|1dwKpS&(I(gZ|3bGV}e=Pk3?mKP`SlG;Nbz7 zCPlwMEE{$|zj~CXv>7%@hBuSt1^ol~QSfup(IMQ@c%-V}TG|*VXchk0SdLfhmOA@*TNrgyALN-(z0YZ@wLJ|%Y)bp%oIqU!X%*?x+1pa>fkbS2-^UTaM&pd5rwr;K3y0z-g zCa2R?7H|)=I!hg?Wzz;WIrku8v}?d?lsf%o!Hl~PGxSv5+&ZA?VQuT(i`*Y;S?)AO z|CO@8|M$cnMmSsptr;`2YK!f}2isg_Bhv=1%m_|B$z>;=y+$h=>q}*2)orbjs7Mw6 z{CI?(#-7cvi%seL--yH020qKUJL``l?8K&)|BaZMF>pubg_&(-cH-^Lgl|h$XzHhv z?XuhA2BZD?klsFIZ`{iHg>YSM+dTe zxz&$pduBA%Ev}9?Mdn6lMOxb$o7?M~7ck%B$cQeE)>bz)#d~_!boZ}h#uM5e=6X_# zOykSDmb1`PT4XxskL*nK#-72?>AO!{*AuT@w<1!%xpR4>zO5~~xS5&HYUK})9MAmE zX^E`5>h}6G`#P7i%;&W|k=fDs^os4vmM>@i7m{V#8|T)aNzIrqYI}NC_b}f}glc_t zWLCU(Ze65(&ALwJd0Ao^6KIMg->XP!ogbaOFutS}1#330WaeK0qN|5luW5VGPCQb{ z0{@pN))Z-&+a4jDnDsge^mfD}RV?&|7OCV4k}N_fvGCutNR>=a;xcf7-_YLVmH)B) zv9~Zt-nR)?8rB33zIP<5g9kL{UBaht(3sWEZi&=4*Rk+>5|PA^)l*Jw8#CXR!&&e_ zVyGDV&H4AH#u_oz?Cy*}m7X;w%bxf*mYZcE|3GUfI5o>{Cw{rgS?0}fvr*C6^-WDl z+WheWErZ<_wu?oVq?AoJ2d)g=o%P=`c64Ee7xeFL7K^1LJR_^ZVC{ud{YZSd`kLp<0xieA|jaRbl42@>0Wn=$EG9e>VtBX>%cSY(C zXe-@+)9z|`t}x(hWe1UX>zSCC$aGfR!`)BlMX?QN z!`q9ZYPB@fMe6DoFmKbnl4~Qwy6EliW9B9%Xg}{HR@b>H(%RA6*IC`Ws_#q* zq`GZZlzBH3fObJD$ZKtHW8N)nPuGf$_~<3AGGz?2vQGv^-JL|b#wkE0cq)J80>kHE zf!_^et?_H84V=Fw#&t0RzY??YdpR4f-3%l^^pU|C&A|mkhE=Tc z5;ix=OQsruf$vVtGLP*&w!4JY@8K^$W%>pR)=tnTTsqLQb`*d4n3NQKcxg0(ul7i-AdxHC9+6nFeRg$oT~mD<%f2d+R5L%?SjV!jP9&fT zC0rvDDz>8l5k>a3NFY47gSsi9@H(_Okl&Si%=O3t6MZkvh4M9*7B|uEb}(DhuHq;NaeWAV_5d>L^{-4EV1_aQ5Lv^XWy3Q*Y1>m_R$|- zM%G=jceO3e?QJas8S6sR(*G!vT3YLyS;n7Kep5@do~7@XUv2f(n6m@&V_{n(7p3w`NypPJoCm}}aYHOJB7!lp$1YUIZdpFEMON#4~`$xXrBaW&Z55dcl}i*q#-go0;`0@bBrOZO!-#ikq*gRsVl- z)sKB+VCMRA&tHf1ayrZV+rX*ob4%Wot)bUr(a+kNNONOtB-&bEU&nIaqP&v_9_jH{ zybZvfcjSP8hNDd_?VBr@@h+0R@5xR~Xl;!&t?BNJwzHh~2fpkH1-u`~oYG`Y=tIVf z=Qsk6kJuibwHmxE{Eva-dqQLX$@X+~uZSm$60Ef?bC~t75{qxC;&;FzU^HNqz9&pvKOiyZe?$#@-T})O^Zh8> z2AfY%VERvqsRa%EtZ3kuLlpcqQ4o{*8$kP+mLNtsNgzl=gEW$*lgJ{dqgGIdLyJu0 z{KaSWoHVB$1yFz9p~fK}IfVr@4iDE@IV&;>Wi^m9CeSQWqfiVi)jBCb1+!F>yWA;|QW7L(g(f2_pyy2; zsNNKIu-s__Cv3{`PghcCV;n7`7+8AFVFSB1g|)*`E?+xBlsa;FsYxtnhA4FuO652w zvD}#`7|u1Sfv>M7i4?76(brlVv4F2GiI|-osu#%3n>8@=q*iSpTn05{a6Dhgg2iAHFI!D4)KwLSfP%ZRZN`)RC!v}!cdCX;qUmPfkv-O%ro+ zKJnZ^j3`RTw=B0HF}2-U|d9(Zr_Xl;p@t1-t8lx`WV z9YR{;?YeG6K9kFsH^ZZ^GtX;pcyT7xS>hDJVY(A_l^AcJvTbOUpApl>B>FU_R z(l3h*f}C~v5Xj8Dk`%HIW?V)1T|G!MTGiRVu5%r;u92D%1aRY8l<{6iWu%lW1r?Tl zJ;B@z36K!I0fo%H)Tu2j=MRK1Z-3Uxra|!CcnCCal3g%wmWcRnIk=2*D`0wVBUpn8 z$-0A5#8i3q5kpziy&N)@7&2zvCHY(g((v8jTCrpvFtPrKT#_#!wEl^DwVxOU# z`VS-!k^LmO#Joo`KEDM@h>ez{z4X2KN)b4``7|Nt9xpz07)0)q)iNkgS!Q zVe8LHlpaQX|07yt@*tGPLabx{M-PP*Oa~;PSdT04RS>w8roF zFf}|-aAxZCXKD0%And56{JdJqFQ}#bq9(+=^X;jZGF<3oO-NBIeXmH$98B5S(En-Y zum?sc|3Z>_?cl;*SOEqXrcs0mfLU+ISudT;LVxA0D_njLGyaB*!Z%?RsMsy`(%mZ! zpA*`C-?eA$$~`wyy(C^zx2CsqdH?#}Er*r$N&R8!uNq$(&?bj|)5yNk(AZSJQxq+$ zoZeT$CNh3oK&wjAbfGAY*7?T)ZItHVSwSr?=G38cMcdorB{hxBB`nKGd{;;3;yWer zT~i&!cWUB$L3JCx&BS+g`y70yCB9o57vbBL_-<$+_*UW@+ExkE^WFS5;Gw1SXM*GNq;{}c4Ni(vSs7Tw#3V3A65pON;7%ptBw+1mfpU&wLW@&q&gZe8NXuL z@~*zVy&)~DRf^}iH?i8LNOSd^UC{M}NoU;(wXXd)L))vJ+e&sGk=WJQ&8%CLa0PyF zD})^rY6r-l`ETbNMr*#q?m(LRP9@7#!Mw9?kjmJ)vA=e8NAKy(byq?&zgyyw|407k z(OTZfKdI0CgjRHZYirxiA&3zUfdgC{qxmP@L&Da*LQ5TrdG>uk64oPtsH<;+rf%LZ z!4^Egj~=7tr#+}T{}AsPqvdFS7VvUO)9^oX2zY@aFC0>+`O+a&{?OMBuAP$_ zh<)RbLf?NyI)uJ&9fBwW-#Kcdvm>>uJD0DG_CxsH(cb}~_j?EF>0$(sD>4WR>j#JA zanqUkKL_>+Snz&yh&{pl34b?tu;9^n$Qdh zEvSWOGXHBl-k|vohgN8tnqCL>m~WsgZPw5ang4IYD34Z#`KBc7qPO_V4O(H_+w3wH zd`B3O4qC|22gMc$X&qW2?3siJ#s!KX$qoJw578z6-+A>c%{LYrAt7S^LoR*`8lkY( zRtZhi zy&$PdP|E>bkdk$eF7+a?wEJ|4!u@i`N`F8vk1v2>GZMjCdQc`7KBUuHs^;glYoUxk zqeb&!00%2L@)3S_yLLqIQKY#a1JvbxSngQwk0YVt37#@vo1i_(r_9%iVoxC{_%ybp zB$uI%5tA{W(dCRhi!#3FhLowUt!>8=(Lqj|nePSB?vAmQ@s%)wwr}a_WWE>mJsm3` zvjN5SXycN4NH_&A*|<#G4#RYO{mS@sYAhb@=~&*$a$XtIM0Cr#W$U~81SYRaO#H9u z2{y2IfmUR6!{&C({!Q9X+TP8YUZ9v=Ql_(V6D%YzpN~6P%WW!1GL1rF8bt}FQLLCo ziDVkZr8d(bZqr$oU9e3jgqzfqxqL7YrgQ9 zB;!K8=FZKkZn>;Gmg)xdoN@FSbh7YxCx7W=&F^JqM4>Z5p;N(kpMnXiR6Ux`GONI( z!Qo3QCvJz+!kU=OnPlfwY;S5{*5qW)6qPe=dwX>av!*6;%xRM4ThpD=u#UayFxhnJ z;r2*0ck;=nYN3fopc?iN#mmKL1dennSsAGbaoL=qus@1#Jyk0zo|$Z~TDE7_$bK5N zm<@j&f8u^cQyVTtPVF$#rafkNhSc5g~Y zRipUvC{DW?*6Rt*J$p~nLLQd6R88BcC8HodhdQY3;OOOcY6t4ANYu;hw9`)(rC0J3 zP`Yz9O)T*TV-1=Ooj3&Fw)W_Da6N41Yh{0Ox>UaE@R_nh6=-Q)vZZdjrRmgC-g+mm zelRVksKl;|+Hk-5sP-{DKNrIZlvUd#5A;soQ zn$feI*zv@8ji{(&IcM|ZFVVt>okLmYQl~aUaT1_>J28Ge^qE*REc-m!Z&?H|1H1UX zOEiD^`D)lJw|B4akN2-$(--f;NIdL}u=ER^V)qjYvwwhpd5Pwme6igLX8v9dRQhf; zU4)j!llhl8g`nc!oOD}Pc62z%L)4{oRKMVlO+iLD`{Gk`&!BW zEd44qZ6hkGng41hk3&XSaSdu4*U~@N;UC}ib{CV~HgAy2GjlKgE+d^ABUHt#KPW7* zrf+l#>BV)kGcuKvV3mH0YHQSZh$DM1)l!`6Sm;)M+VxtnPFkFw= zEXnn#V#Un=xN{JkUF4#g$kLv0mQSGdl>Q{-?$UTeduLY{JMt-fv~}{wZ_uW?pQen` zcr7b_#>rD})(T_K$`q)!Ed4qBE-!EFKCHZ)d7j6|Qj(wg`g=P&)-7d$7bqn$zbpFz zeJRU$QB=bAO||?l;j5(^b)d1tM|Z97UNwfLz3ePMmhdWgg|H^9E~34&wV^%27hkWr z!>>w)8f~v@Y$0W!t#c)<=g?oo%pLh!VtkGNqnUeM&2j}y2AC0YkXA!brmVju$NxO0U)1waW)UQOYz4m%V zE0~<+vW>laHD{{Wj{F`Tf7;SmhV=< zdXMwM;VOoacG~!IvNe#;RXU;~WZ-CQW8 z+uz$Y9_>QaR)l3jv!=l@p;i;XoUix`XtNwTwJ1@=(xFU?ff+Haf_b1(W0{d~wXC&c zV_)a3QV57)0~Ll4?4Dv{#0DzrPfcu~m?PQ2VIq}r7Z^tn8>$q>WYinBdPJ)+ANJQo z*Hz4$iH%lt{eTn@MQ9U${tqdW?#|MuY5VWeo+)-3@QEFG{V!U1N}43`%p0`5Zz4d6 z1To`I*o|HLUddVL^OK$q~ZPFu9x}SHvt(DZk3m`b!RF*Al z|4Qf}R+tSZfS_n8g^giuxB_J1xby+!2_L|OceKzLGW{z_1EznL4r{*@md8O@hP_|5 z&T<~%*KAJ>Ww>GJ7gAMK1DjQ@iPz&M1h$f$UmtROt=Js^z00q_XX<+>llQ*P$Dgd_ zO#guF15kaiPke~<+`m(U9XkLpUPA(gFcv^81a2QG+r&RmF8oh{Q1D+0p^uSfegfMB zY;IMb>U;vsnmqcRmJ|CoLH#TVwPRJsn(hQxX8uPPW>3%O(s&`na%z-$zmRqtk+ML< zc3NMOy$AND3g-K2Sb0#8|Lfs3##WXv-+zbLID{F+|E(-ZY$>|`eeF-9v!1AD{?ZBA zi1|A_;w$rH9eBdj57%PMgw;z#lELIf)8;{>Llw6T6Kxw|!$-V>7(=X5ggG!T!W#rR z(e6?o5%Mb{9Rw*)hw)b$-Ta!CFs#(~_O9=p+qa4tI?<6s`tGs~ZO;TDKSv|2;IFlC zj7YbR&CtzMNmZsPDK6~d54iM@g)j%f5T|Xg=Sxq}!!c4=Jn5=I1hR^VJ?70!tT<&! zWmXodN|7VmlPoX!tXHj=Y0UD=n&j3+lmqhyH87^3xQ3FrRtuwBSS=4kHVFEspoa83 z(7#k~u*D#lL2%ImWezNq?y}q>jThB9Lu0LC)v@W!TdJ@V*88r`PDH_uP`FQLL_0JoreR;4H@~r62;;LG@v#xxZuaEl)XRh^Dgp7oBEg)h#%h`Z zIbDs!VVZPTP>0Wv<4r%u!YzBan#@Fx%p;DM&R`EBA=ZOQk4|RIP&r2(lrvN1R3DUs z&4A|3td+Rr)$y(AdTw^T-L4cef(^W5Zkm6Vdlo#~q&Gms^Uqel7a|-RQP`2zg$RIX z9ONFiH{_#L8*^kEBbxZU486$N#LDK1U&h=zR@O{ENAOnU7>zBgtd+hCr(%4Wse&b3 z2$qnskY-eZ3bt#aWk|=;QAu)N3G>hAUuNjO*aDdwt-MIM|5~Hq9KnSmadykxdRc{j zl`wOWgy>tWA*dWHCo1dI)|If#B?$Z$9#e!}pU%WBp}bhK{%+_{UHYZHF9w8bl!`y`6K zhLnYf=zo~+W~`av2c`A^Z7$#R|8{e=+#p}xP< zmI2GT2tQSk-&v<=QjSw4GGizK0sDLjC37o2m#<#0KE0=F%i20SRuBNy&Pe|m+OjC* zi{4JkvB7NDqO`h2y-6%^Cg1AO{h_lo&|GA71GFqsQO}f(gwE!-dGw%m4u8U<7sk#N zh2Vqi7dVQ6XlKElBAMLWDp|z-dvj3PZ z!s^Cug>d$O_=Yl^qsBS=Vv&LkP9>D>7So?QOH9AP!HqL6NruVSF>?>E{6Jg0*Qe+3 zwdXm1zdxeKbbpv)I1zbTM}c+}FGYX(MHTuRd#m&!ck(R9_!$G0kCi*vn4|ayBU47j zteH?(rVD|~td>%~t466S%u`Fh>RRd-)Hk=EBY1e7(g^Bh*~|tiAy~K&0%ob~*)rQ| zq-=`tXOoUbl=Z9#&K5w}f4ZF%x540@N_ZbJ$mg?VYX?^`o>({T{*mLIIWjgdZo3L+Y3Bu00g&`Cy z(ugAlf?%@{%8c&@``dq;_(ph{7=ICH#(cMn#AriP^{nVQRB<|U-9bPpc-%y|K?DJ6 z=04d+p&8&GKH)aUtMJU-v45q0((ztj=^%YdDi!>!$Mp}j$$ae-dc;X#A_w+7p?75M ze_ekv#p|1QQ27IIysbY8ZDI?*?Oi>bbMiq2zS_3=5sgKXtH4TYrNY<10= z?q;(31Y^9TFV%mPZ|ficB(bz2qArd~uG8)C2-miRl8XZYVmI3%dpYq;e#(1#m3EfU zN9P0)@=w|UW|#EZ#_HO+Ep_$GcP=#{6gMPA7Sy-ZFk>g0C^#>v)Sj`h1C&Z`Ih2XF z?0;WB)`|rt3B(fzlA2m(L8J9e9)z;e%&aN0=?J_LQwj7mr8!n?Cngf_=<13u@96DV z4wpwC^G%mpa$|Gr{C4Qy*c@2;;Ynne{|IV=Z~u!kbGrLT0!`9B>>D%4F}<02k3t$r zd`Zn4Yes5Iz@Qo!glc%@XJ9S0y!Ai2FB?n5RvGG%8*bpIex`>OVQCCkGOgKElsuu# zXhhNUqg7W%m5*Y+IR|5IG*PL!Bw^1`27+cWA@kfVs@1A0X0|HSK~e(ss)W(NYC{s4 z&(UI(P;UpUs@){6%Mnth1Z?}%m;41bRAwwharYvHVC6*SU(Dku5?Vqd6;a_BRBug$sNpm^r0r2Fm7&LA+)poLrnYohO z@0*#iib}7h(ugQqBee(fL<|8!PW)^6yw7!Cdl!{O1i?D`+rwPzZHhO0BzMSqT|r;@CD`W|&>=E&i!4%lGXLmvy`J_$v1R!e%hIic>G4W?&zyfC}T!tWEVp$U(&o~D$_i&Yq>hKWB)?s*PZ>wZkSkMGq zWJ0YBoF@xUNP;>RzWVH4gKMFjaX#A3y#Ou1y;M4)s$yI1`tJVT^<8liXpUmmg+u{Z zeK0FsgreC4suQwZSP?Ep>geC|-+!r(TD%*DX<34hIg-swWDrL79yL;SCG%1lU}9WG zr7o9b;k{yLsc~DFaV7FYS0U*CtIu`+$g2+;z-!Q;RB6m>C6wTGy!9(RP=39f3gZSq zzyTaAPSHc<1OJ1nH<1Ny6qCch_|WN}r)((3Eriys5_!*U3a!MnnYSz0cM$A5DQrc; zmR|I`6l@4Tcgu1Ze zD|nJy-{|?;Q+&)f5Q(4WbHCAx%b$_OtY_)yj}%{@OYHK`CwKYLFYrsg(MM@7@`u0C z{qtT@*tB-^^$}_9kbA%PWwsh>L>n3BZJF&Awz{=C8eQ1ZR;Q9&uO>EnSaiik{~8G- z@5AmF(Dr_(yHi$xn9Wo7>y96_qos0e?xzWal8iA`1{eX(_WG@misaE%-L7MTU3xxfwM{?VZRFYj7Eq7U}Yf1sA@p9#U~ zUy8;*mI&p4GBC3`PyZAFU9C=U?BBz?V}7Q}|3{Yhea=We66c(uD4a!7cQ(xCLkIB7 zg9Z>WYH9$@uO$3U!;B}6H-b*al`d>-Y8qGCUf%>-j6`Quv;1Eq ztQ7hv{FPs0;+WBIA}wEI{5=!CB8_LIIYw(b|0z>1;0x0no|r?J6x!?C=1MJre!-;R zREjK2el{n7txqYksYyjPXljGVRtWu5CT(M$G?7g5s8ZmvT_Oe8D#a_yqJ)v4c%>?2 zxV6=oesM??N^QC(1nM~Eq-NuO7uNoMx8pKP56|EoKe&QN_#h`HC`yT{*)!!dB@d@o zWBSPtQX?nbs0HnW>-dIqjL@ulRah|RhT(K#&B6qeCQ04LN@eLpLoAi$qB! zskWhtH%h%7axTMcm%C!td}NhMC4e+$mb!q}2FqNCH7A74*TcdK5g!KpRjX&?~r+oMjw~ z7S;vk>!ZL0g$zdA_>?X>Wvm=6fjFTvJvtk;y11Wur8ZC-dDL9#D z<-(^9sg-3zP!$AW2L%}rSA}jV?fOFJ69;y!81Pkev6X7ZMawjRvP0$>axTqnisHAU zlnV#Vs}L^J!LrUod3AbU(B5Ror7{6+E3ufQQj*@ikV+HXZXiPtGtLD#|4#lvuEQ5T z55MUc`EcjL`Frym`VneiLGutnnIFRDpw7tCd_wGW4J24O^wA|_77#%s3pcgl$}Aa61sgiSlj%Z~6WxQf45fYH8sI3IUk z13X2n4_pV=vMZS9I$4B(_K7}+A#Vy+Us<)ieq9e@7AWQ_eiR)7r%jWE_o}{DZg1)C z+7e%n+}bu2@ctn|0di=I;6=Pq4H#59>n6J*Gj0avMYr(F3LS;b5Ko2ffa6QIAvqmF zsT3pW@E9c1p=*N9V@OVgF6^W7IDSD#p@m~A|88y;Ir35yRnB^adM-4l>{o>0(eWUW# zB|0QEHP4?5k1En__N>Ot^)2Bfl%MY;4#nRyep9KVaO@9>PQ!PKwX_+m6Siv+9%TL~ z?HR&x8vL2Z?lS^8zbF)H8sn3;A#SD-H%_!KYG)&U=lOSuRVs#!?Ak zPaY>z^2hT)EfZGl@a3m#SbyPb{%!lA0Z>%})5tM+#bxznbL?--p) ztZ$x&gu@aAs%z6B~LQOpy%se9bO-B^rVpZ7)@<%ottm?a|0iW=*s?P;zEfY>w z_1QqV@U_a%SV=9;H)g`qsG{*I-iQSB);pT1?G}|TFc;{=0rDxkZ z7HA2cX(ufdNrPQhw)56noYb_)XDeNXtBy&kTApJy$elv#u$^MZX$dVuwUBkZHpKIX zqw+fWv()HdNY6&Tc@7$O1%vwjzfGYdTMAUEkY3 zdmXGRo+0CdUKV;$y(cX%X898JO~1q}J1`unpj?=_Aw62#)*R_u4zEI2UH6&7XjZ$i zcM}8e0RB86n31m#M7_m~Up3j06Ellc+2TamaH$BJ6BP8gqnZA5^-H9;0dpjKgpT0=A_^Ltj{0Cdxuy;B@1F~xiRdHSGfu%i_6b&1;| zWg5#aPzj3_XU!!Q+ZkQdYs(o zK?G$#vpz-|=~hq&KS7z$ry9?0Fan-`BV8#OpCP^IKS-aGMpxolpC_}vKvvF|QZN=o zHEVtUdg`?x3+t;yN%Lzd*=2u25^Zw7VCH}2UYz@_Hi#O8y62GJd3@@EB72{LZ5sxiRw>RrJ?H(J(s{RnBi^KJ5@xsV6DN0m|_@ z4<=1xINh1Jd_s_B>f!Q`u*W>8NScgU^}7_jK{UoZ7Fyb~d!{2;Oa?QnOR0k3o9mQb zgOfDf$SPUSD`q;1wI2FY;H+dt8|YWQn;E^x9@R%y1)f>$2)bd|jW)J4V=ci9_V7$c zNeY?4iZ=0&XF3W~$oN&Tnd;^^+gbh=`V~%VXU56M$UTM6t;Q0Eg-Z-Cg@?$0Of`D;ZdnEcs$YaC__R~1FuBaPi_`s-lC!6``)f^{NDkM=R_ zQ)}^UcFEXFYn@7mfw-H9cfAJoFRU&itYy&ENYx(P8fn1u_{@>^h5gjB|nG$eo(9Nr@|XF4`8_-{koB6g_8`2(}q@{vlNO3lrw(i=+x)KEMw@ z!!f1_c0!sFrGkp<3XR`msh{{%%vAS67T?N$kMb#G6U@1t-@nZf z4#OI#5KrGn>(h2`-X+3R8oYO_{A4su=AV=euU3YFlQEE5hoP2?f#gROhT10km`mh7 z-mu*@^dn2vAzIy&5mUF$nd#7V6 zpZBA~7YYZlr_ed^#C^%~hTj9n?{r+D9mt;M_=4_t$Obuhr)&E!aQvk0zsOM?a8jtz zf#w?>wVIPccMe>6lcNDYJMr_Yn;lsWRLVV|-R}6!Fe<7mDz+W??QYcFz29MIk^TGO zuiAT$!!@0mMa`hl&*o@%x6)l+w>X283aX|Yl^(k%d;|`|- zR*U^T#xL65XCXnEuLUMobydII_|%{C{*uX+{c zm#|Lpppn|%PKZ)MT!Oss&5^0l`h=c}r0hJM6fs1g+1|x`eTW|HFVL64?!0b&ADN$( z;FVdZFKfbiRV6xkigd)mF5igDgO&d4_mt?h>$?W)++`zl-kNU&`Iml&o>E3 z>VJn^x5(`(=T`a*=7qru#4al1X(KgFEwyu^*p_o{7vOA1$NLaqAcf6A~DqfOQ2hrii%Qw2bO%}xKNA1h&{w$T?hPpWW=_0 zR$K6f`Pycruv+7Eu0jxMH>}po^%gNH3f&04t%hJpE6J~Q^2L>=)_cT> zC+?;y?)SmD=wxZ-bY^{!U=QiAVvB8;Zlp2)PIAH)=Ko0C8B+r5H62(IHfy0UL1Ti= znoNVn$27j5@DILqqI?jxYr%UZt-}03 zrWzkK5eW~Qk9AJ%P# zKmmTuR}LS4b6#4Gp5x~4e(wmE!k|5@D==-_t}mPhVu7r^KR9#*E);_n12A$A_L>L} zuFu2wJ)GiQXdec`Hs(XcJXpC0^+_sYw3ZKwpwG;PeIOi2+{m*CLW1o7$ z|3*y7;2q6rDoYw&w;bXJ2%(N>ZHSI%-D-w`~P4ImE@^wZ1!X3;_B@^8~awrH|_6rj&<{~lXO3yd6(1aq}MI@+;K)5AGpVn zGw@Sh8sE5CFVu_D2P)qUnX?)eMH<14k8*P{cpjsfW#3^BeI|nnk(%*Snl9 z{>5p|%lB?|>ipc8bL0NgonxJPu!dh)0 zbDXnN<;P4u_Z;VR_0ho3KF4{KJTUO|InL|!y}O*|fwbLDoPdZ!zKqkwsrxT+W*t_T zzg=zcbiHE2G*yR7LU1=$WCuU;RpS$g9qZ*agGb{}~k7zc4;Bj$0NkRE!;9E?rz zdXFKveyb8HbWvxFV2*xv$6K$57sU*gF-)m1}|ph z0y&1$E*yC1u`&F!@0=M&fEE*>92C)RfG$}!NYP$3u-d>e0fJ0)uV*9XKMYdj8=4%x zW@bQhXWl)ubcDnpm>%wFB1#lo9?>RH;#nAUs3c7>7S|>=fn#Nluh?u9tN}H|+fZ+${4)XK<{o z$iu$@YGgSO*N3;<-rfXZJa7|KQKvr*y1i)s7J}uUb}K6RAi#^+si7+=DBK@0dAB1Y z8@o6SRluSlj4qX#QgI zAC{A!`-qH3epJLGAN{x*nM6D?bo*g)A5?rXjni4$Q#4Eziu|-hH0kyzdxoNrM`S;% zT6<2m7Ji;@{n;7PUKlw3sX+Ke*>&?JRp@0|DE}1^7yPP<3;xS+*z{I|=z_XL1lrBP zalvm4?+A39VI6_OqdJ1yI>jWA&ZFL`Q9;wLcM@^I`S0?1zcX_6!uR-9zc>rD_vyKl zvco^1!+RAMh{Lzh_Glc0bOtV#kHb{b+u7H5W@D@UvxH6ikP27I!XwJ|{_1p>CN5OU zTB$Dhsovhu)-sowtLO%;%`9&%N!6zkX81Wbe*5P_A0 z0M*WiCbos&agCN!hRfgtDZ>$Xio8xF`*(wiQuIg8Y5enRv~W0P_lu>+>9Q@ca^b-_ zofloJ6?k#`8#8g|8!aLOm%XvP9em!kT5bj|ccTS`b%tB&#_e?*hv}gzzVGO?pnGD% zx}QIZ+@*Q3$%zzmigKk*9qvk-rhMGfb?L8-G^~MZMtD)-mp%*-3-MU9g zR{-4+Fk^^!5+1$$qXZJGW+suSR-VQh9g|i&!~tHX8UhonM{a5Z`Er>#TY47EMuq;- z!_l83(GTNb{467MHEs z`^x(MfwaCGA3}om{GBv}Atv~bkUaJuymzHh?uB!VJPqxeaU@z?=|1*f{0?LU;2cY2 zkZ0l(RLcD{@qmC2PBOKxC0_LK!&@fn;KJfn{i_AM^#2UH?%(sdEFlb3;voSO9yHox zeDIeIhv$XkY%n~ak^T*!RoUUzS^pgZjv3zqNw0F5k#nJDV_&rWbe8jd;;{ud&8Qi2 zEvU@U|BxB*x__b^vem#H_%q<-|3WV<fk)n)tI~_Tx1|&ijyjQ$?H=ogE`(#Kv=m;*?b{O$$KwK`LOsUzWG9<2!|GJE7xkgC5Tt0a$e!Tvz(!r`&CGG zLKFh)f%wR>ATiP`30VLIU633vfxxhh1z{OiVz+#(4lgj^g2GIQkA#${fY=NnJkAzZ zN#V-O?{ra{ncpj>^n-pmv;GG*Hf=W|c%er8h~G+G#$6@2%Bh6}x}Ov;`&m{qf02Y& z{3~B|kx{htH;O|Td^CmO#(%%&P}Wg#6TiISD_f`M12*rV2(UQ0?z~RNAa#qbFK3pK zcy+)?Awa1(if?#h*=FLY0TPT*FipKN0PV;{Zwy!j92DTDTIr4?V-)4VgUk$i#b65y zWhOu+u7(w!fvhCNY=Y>KuNGKd$DRtof*`y2kdf_ohoXpv0jx`WQSJC^1-~hc&I^47gE%PUwINVD9o2XsQmtm4J{N)!2!Ld z#%O!IrJ;dkfWB~0G(Kf=ZABH!$f2*cI8I^Xx*Pupe6=^kqj+v)!kpTc=7z>u@BvCf z3`|32V{;8I2&kO^nZKxNQZ?y^qh!bmVA{545)AR6zF^>R_9cbF z($%ycXWFdiA;J)2huidZQQsSh&~u0HBVC#+^FAd(aF9Jl5mRJN3k&?J^U7H%z7=4B zEC8l7xR_Yn%m=oSv}~zIo=2j%uR;}X#QsX}#)6`94zqc)G{$XQ*MoZ-R>BRF)9m2c zC#8jAiw*`iq6?45hzf1>trU;9V=x*G#ABFm)4}zOtw6(jjzR-WqE>JbmUHp{4~xK! zF}o?;2GoOhKjqD-cMSp#t0l=C%=Z9zHilNAM&+6JWy#-5E2nN3M@Hx2K$F^4AUJwT)SUYAscFE79IgmyNMUJ6D7UNQNgwbX5bVKE?z z89Ea%-xI!Xp_GMdP=)e=7ff&y_|Vp|Nrs+v^1=h? z3oghW+Bhn*W&k`gP($dN5}(?yby?TbxDnlh8bFPlkGDfWJPpOcSgf;}N(3M`n4hUopYK$t z4@(i7VX-TPhwn8CgT9o60BQ$DuwX%ocqid-_h{r&%mLVerwYGqKS2~Xt1U)jA$kqrwU&gGrQzTtYL8J!y zU^|<>MB(6%DSYdFhCdf~YfDpkV|7Cc@+@x{EWMJAkmHm$R?-c%*J zpPDM|2|H3DhF*|L;<})a#yE!Cf9W6uz#(zYAHhtw9|X?02er*d6)w*Y#U)0_SnsC_ z)=)YHSInmlTY1d<6-g9KW}4EX?J*^V<(X>r5VPDR#&Tg}ykZ-Cnqn5hBh5pP@Q8{; z1|PG_uz2eOMrPh&CfG_Ha)u2#3pSgAT4Tl{6!9)Y5qsR_VMwdXRD;fpO;lv7Nx{84 z`bhH-L(aSxt0sYA<&d8kY7?b$s9K zwKTZ~Va^Y~JG3Q;c-1vcIKk!q7==hYs;pvpU#Ic-Lq<;EXW*8Z;zHVPn@t6?T>Q@u z8U9#~D>=G$xLCxMKyMoT9D-i3#x)c@x!JgzTnf91EW7|f2aQ7#yQL^3u$#p4P6R>| zdGyalFxKw^f~VnoQUbxiSwmsSR(uy7jIMDxYJ2u7oTqP(cHtEkOx2x8_TLAfwz1D1 zVB>Mhd66p6>*Y-?vGypviGUZQJs-N1I6xA96b3izGoUO2R+#Y}>Y2=fLX32mCHqVI ztp%zpuwVidugZ#43UV@T4CSIUvh|i zkxlmL6@XxNTaxxS<1b?G&C@Nh2CSXfS&IW;)Q*X!mR{^9gaKh=$%?r@7qhn;)SLBI(ck|Wsezw z(&lv0H(Cx2CUSSy$(Z86~WsO%#wceva@3AKQ6M)uh9xRp3Z@;Mfd4 z?^VO6ugu`9UNvU9dNRbAStn=k531b-2Xdb_{*ks!UgNec!;ZV&m63?M_Fj^apj!KI z@U=1tQih6w4&0hSvLzBkXtlbyH)B760e!->bU<6_zEa!!nxW527(?M12*MLia`*)C z(g=kN3L|JXyyB!PNFyk@HQvIlD}lFF9E6CaU9i4O9I4HFhp&Cz$X)WT%3P>w;rSle zU;Xb736YRCBOl^|6Vis_G8rF=C>3eEW!6X1ppC0XCjFCt^13l`&cAHSF5V1~;lt*q z^cO4-!N9`uj9_3T64rFBr65xCKNNt05}(sw7&gBEN=0AtRc{!DVTAvx){L)_Y<@$~ zHnZaY@~hr3ikiNaRkIM{Ys;A=)`?dvtsfHT8HnqJ)fa^lQO5Sjl>DSp7xLr(W&|Cq z@@MKw5wHKNk>&oy4mc>l1z;V2HS%C%Q+oj-m1{ftqvSaWA*fdh7c#M>rymXxL|y61 zmEe$uxl$*;|F1@gX7G3aYUI};s@InIq=DRv_};{jOK*f_!n-GI<;+Nf!y?_K{Dh+r ze(bkk62psNmK!-G2muDTfqmD9#(@~j40*)PMDQ<}Y&}`hC7EV4l$w6wmUC>oO?(S8U$cAqvGM8L38*b}920^PV>iUpC@?Z9iNokPMFC zzxFx4=FHEE7&7sXmK``7Ah&l>BSKeIzvGDKX}%BCD%7U^r3UxRE{yx!o%Oq@sbP;~tA7 z#3@4|PE`=`{=zgHB6Cfr-iTftCVSyJoQ90{GV=(T5-n&&M_8we3yfWD1O?^cxWngKuNVUZ@G*XiYROT%Igrk-B36 zEEz++n651k?S0p9^MX%}a_#TD@l#{+ijNrezrD7#u~o5r^B>Y0k0TO^ogwRA_>F^* ztpcA(Ec;{e4R3_NdkV|`gsEUI)e+aHiEBLnZJ!T1cK44CXCYR#zhJm0h4_9UEPehW z@*nw*D3MMW94<&YVZajM&%pWaL6udSRYrD2D09S`$K*XI#5>?*qQJ?j2HbFgcYm4h zaABh*qc=JKmdvAsUyu1_O6L_-x8LI}ti}oI z)B<;n;|k`jr55U|_kM1;om*J=EPmRxTBrnXRtg_1o~;xSGI+02*k^DpgmE4$izU1G zJ=bc*+6Da0YqcErg~+Cvna%U)y9ZSH=`46LFTM`%BH}4ZIeAcMb_0To+wbuC z_Tbkv84+y9n0hZo3>lt@sH)vgA>SR#aLM>(D5gB2RIH)B23HNkB1%?|E7X&GSE?uZ z+*ct43{NA{yEl=m@tg0zPAiXHgJ1U9xXf#v<)>HUL1%e|QO0#5PradMU60J#TD-W# z(r<8@i7evfmb*D?8HAg~)y8YNjt7^<#xC{0~1G1&6oF1o4jG zJkbOBu487~klv-?aa(bKu&|v_6VUjDmf>p;%|8@6>sVj`Z0U%iu^+)~Xo5w8;niEQ zS*0x^{L1hKs8+N~wY&OaEO(z`^2r0DCBo!hdi3wFv2@nK@fD{GWxnZlG*cH!u*3+|h&ugCL)Vuq6r>FitZ)U#VE%6`7&Ueb2{^q^Udk;TU{6pX) zPG8Xvcsk-AF1AuT5I%Z2%qA8yZyzPnHn&1oE)g}?*aB%wsk0!iV43K;#+ILfxVSVC zI_~5lud~3}(S+xz>u`+|CYyE6o(O6wDQz6bf*aI{pdMOeh}c6y(~VjMT-wmY!qBJ? zGnfiL{pZAK zRLlo+1RL55oee?S+E$sB^Qf+Ci>_;{sw;n+$QyL#2K|FWtE$=|W(_(k5nSf^~5x)_FpJZCUR#wONW7E*?UuD z;6fY{Is5QAZuKC9YIjd-Tl)g$+8=B4BDCp&&WYNhS`KY@4vSDkNyaaslXNq49nb?0 zb5Eg^Q?n>?D7j1ZTuS|mLpkt+iu~YZ3FPaBvo25Uf#V8l{mNMDvSHVhLb9Ch9 zxM|Yvo?W+CgA}~Y8fXOaqOe62TGM}fTp?|Z9e5(wOv zR0x1A=D%Nf&UgBJhw0*y4Bi83l~p|`CO}^hc_^ha3JD@6_&j>dmp0W#M@O5XhIv@! z3p|oCtAE`<|ElU^!F+Vjq#P{xXbO2gM4|n3nZmCgQ1C44F*Q!|6Sk-4adn-l&vXYr zfzk6HQDwX40I}B>iIyH21_zl>qA0{@I!-q(BFAqj?^7u{WxwKz5ysm4G!4_zxU8Aa zs2jDULNd+#S+$=W&!Gm-^JWdz4ZG>8N&TJt3VW3oQs6jcR5u&`VyuVNu!xo-4Xe+{ z_>vll$uEoD7dR)uf%>x-I1BS$MRDA4^>sBZH8tBiTB0KeYc_He0>u1Y*!DU{X1=C! z)J|-x-+pvY^w1usy;Nc~wn{}<=ymnIre=^zPKs8yGy$AZ`Ui3RUS~<#8?x1HEbmRR zYp*l6{H>JPYY^oTCX6$7%Z4Y`POPa#>*L`FT;`3k`gg>Od!2Q*cg4?pog-4;Q-n`@ zUyRx3oND_(tlkIuKNL6ZbJp5E67TJE=Gs0M|F_S13?S??_dCa=eyU2;{85~{-&t+% z`b^xl-#J4&z^?d{_;J6pQ2(m@vnaU8Il^A~7cui9XR%JL|En0d$XTU-jsKgt@*-!o z{x$M*@#;m+qKGozD*t;5iCtRf!MQXs`|^m5&h8sP#G7?+{;P78ej#(Ub?98=@R2+@ zLn>qCDf?39nbSK<)ikGX{V78#8vd2c)V;1>oOrP_Xm9yioPM!$iYBe?AL4s6I(!)~lgZ>7b z(ry~Qj$&D{`T0lv88yq#_=-Qxum96u(Te#Mf9kK5Kc$E@2QaZer-*|GoTc_(Qp6Kb zBihTE_~L-GK-}?Is(P%bdYjWbhKUH-ITxN^v4a!t){DLF+%I+rp=kmxB1h{yznfIgNs z0hP6trMdAF?ZRW87; z0;;Y+5TV(f{z%9y&co_MUiL761<8Hneo3$tn}J=#D8S``sapg8Cqe};Pg3g5_ zPUx$P6nVMDL>{I?uE&xD>Pl3l@zj-CNs2mOnNCpD^&Y;=8FEf6cCzM<>TW{BD6<9& zwIZ*#UYHOYBqNKt-X>ey5T_6}!Lg}Is^(9N%cA+DkPB&XDhN|gkS>jAS;A(zh47i#rJydO7IModA#`thWU{0~P z;#z0+s#4g)O*laJnHi=Ix|{SevqfCJR>!Ho0kn!uRE<=xTMhy$Qz=ss}NLWEpZCq_Ns ztPIr0eb;uSqYxeK0cX{S@mL;``)^>mz@HLBiwRl3ap_W6n~jPt*|>p1wvKF&)_x-< zsf81oLUQK#ZAQ`Nn18C-&Y=gL+(DdD=7A&5ow?cPNm;M7lcxLH4A{v0yQB{X1PL@5 zQ1=CpXwtKz6fVyldq_%pAz8djY|38xCN;&FX=(HC+J}+^8UfmPKQi-+;BgC~fBD4_ zA5;66DETC~ca#7*N~$b>!iGVp3QvG~&2wpdPB5CDgYkKh;JOTLX+h5AMA#Lk_%?hc z$&(YD4JkKbS0h`_HR9SQo!NQU4I!TYMma1fzFxfbq_fC-1L~&(qoHAN{pJB|!|0*k zI=NE`#ty$g&(xQk3&hI%o#Jq*u`=b*2*W8>Rv1FK#~7IpWL6u;+78zk4lV}982b-T zG*;RUO)|Jx*tXd}ifJoKZ^FRd2e&*}v?*heH1r{DyZTROMD<3n7 zlC$F!pKnUel;CWUZWvF7})9A0z@Vhu3Ia;oa2A&~pb74gFcSGBPLJvqhDlF7pZ#tZ3@ zz#WOl0)7>i2j0Dhaf;4o}r%>k)+xJTb?_o|yM?>>ORXUf>W=WAsT{Z^U| z*ovqNjRjy{Y+cT6>%<9P+nx6CgW|+9jZpeSI$Ir}5pxYowQho7r*9QY|GoJci|93w6MQ|ENyB10n^-ywNX!G*4LcImE`@u4 zGuAGwNLUVRMwA~LX{piKFQ$HIOP!VuXuVY)idI$rOq7Ru)uj72ts-?v5D#Qs_vfHO0{sXSRCQd}V1dYST!-^pyH(bgK9~ zVvI^nQ$Is4QE;viw55y4xkgBIoNE+W5z|qF9NL@=`k0*yWvMxIl)eRwtkUI`dc?iw z8YQV-Rp$hs`1o97d^R+uvI|g`N;!^>1dtyR)lnm_ENtF*AXO_|vfvHLY62kcV2)T5 zH3AW6M`cZUx~6>9PpdvrtE*+n+)$&cbwyE4pi4D35Y(wGXN?r0(ES`~F|zee56Sl)J`?r8DSR!|4+CkuBd z>Sk-|Iwf^c#=F#z=5>qQZAPy57*v6MMzbK1qXj);<~Ae$s)+1KQ1r*X3%vewwJd+yh?N|OiC{}R{Rfic#lg?KVDP~8u_*p zMf;$UJ9TkvSghsHha!>#X6_~N1HKgL5{?W^91VEC9B}t?D|=uC42VuMeCaE#q|#Hw zUj~g5?5n*u+v<^ntu$>bo`T&3nkd%F%wM|A)wC*r+TccEVORTIlSX<3v%)QMd2XwjyW8`c{*^(W^8jtzV7L?b^?8%Jp zM0T?N!Bc?tYH&ABN(w!s7e^};@ZF4`uXi+F0h9|5fGb!S4*+e^EqDK+orb*@56;dx zFm2^{6UdWypLO!`{c6n)zep~uwgI}IcgahC4Gb{UnftB}z_9De0Bg6}p))?BOefa3+TZ)u20bL_j` z2Ij|nyhuaIkvE9G-Np#pjWlziNOb)vE7wLVh?tu!A{{rQ`p_*XTcg~`(%EV<9JiX; z@OZgB_PCIhhwsq6QyUNN!`d5LfWULzDQR@WK00>r!8CeFgcvID-SB0>d}HmnlTBi! zYZ^a{p=AMRq~Vl+aC^)JgJ|_$VI0QL=r8k3ROaMlfho)J26AG(nfc()!mMz^I{9?- z!L2o^&{WthfLB%K zB4-!W1uSPcyFlDOWrLmrXBW7Thdj-2Q?@Acv%*$8d59IW&o{D1@6mDQW{q>!bTG#(wC?IaJ?czx%!Xr%U?(iaPP6%r%k3iP1PRoD zdh`MJK({uBJ4Vt&u5h8|K^WET)cX>$Rq^&vYtlSHdm85OnL)cMI7c?%Po1kO$(bi+ zT>$=Ieyl+2CU^nk3v~X4I{&dMf5~y;iVKWl4;*N)wBwcUgUzhu1iLbqJ-f$|?sc80 z2M5ag#r7-Nm_A|KV^rrYK{B00SUgLq@5?M#AEW!ltUbo4jOEIofDFG;wn7Z`Y{NEMrRtJDX&bp#tL%8MPZ$ti?lHz^tkKqlYh_O!_~(Vj z2`QQTOW5Uwfpo;OAL#zBl#9g|85dNIFJL9Z?I9$-F!#GsBgwx2kOxFz;%c@%O7E%mVGQPy4Wa-< znD37XM<}5=T%YN$7%uW3lKbaamL%YZ>n~RQ?!V$sDSD{g2KS{X7xv zfAG!yU-M|DchL{{NIQEXbN^_j)0G3?B03!&k})7Z$GXU#E7oJVYDzqqmz`DAXs}a3@$<;`?LtK2oD1+YN;R8lN19=(Y@WoHBh!7l$=q*W= zwl3&Ky%1i*&xko{=zSg3oGj=P9$^H)*H;K*xPj;$j6!$Vb{WCR2;D&oF+EG3R=D}1 z@VAEyX15QO)c}P4jjIul!^fKu_Bptyw z)C$7M3U487LcU17)EI9o5YsO;!bOE9!Hw0;h^(^_a*1^K22tyK8w(Z@@%}=0F{OdC zsjb<@T<{7a>%^f8Zy+qYOx%XL+RBkk@gOMV4t#+yKOBL`Gp{#RIUv+HD=KliYe7Vn z-pASlNYQAKcF-7Zs}@xUjT{d`ZAcEkMx9q9YsI{SxI61atGEr& zDI@zz?;VirHb8of<>;Rfm!-XBCmo`6c_m1`=<*_$quIE;;>KQWEZ`WK16LReOrh@S zO@}3~d@A_pCexg0D9ZR9ULMkUo2XcVVjX84<%<4D^DYmXfZ0Z<~h z42~8WGk9r|MkN?rTvyCDgN|$ShLo3o@l5gjWk%5mTv)(3s=zk^+)HF>1p=c@eM?V? z;udEP+*2%Xw(wkT$1!U9ahgt760JsrTn{cbUDR0Labb9ufW}(MW~xhsaa>Zg*F3nV z=;k5zLylTzzuADo0piw@bx&lTlTdX;y1y}jfGa?Hs=C9rv$T_mNud>(wu-#$kVJyx zrlS8H1IU?)ONwU5Bw?*4;nZXj)+Lg#UXuX)=mzZS1ddV$iOM@oxUa;u?;uQCG1?W0YlwS|bGHD^s5P)1ZjzT5*B;d3{%o^5fG zZho=iLHH$#3daEu=@HW4Uz*;*0I`OJ52|)9qjvle8Su$}MRIE$aDf_Y?JC_`M|^8n ztJYlC&?v|wo?olF9lTEN_+$Imt-)oXA_S0IRK3wL``7FFZ0^A&L)WR}2GHt1M6^mC z+A>(;H_|L@X8a~{j|Iut%^*v&XSdJ<->QfFHr00F?c%Ykje^EIs7G;9fB#)bh!bu1 z%)o2>?u1O{UN{Bf>+Dq`?;0aqyP8DSXnjCS^w(GteZE!;^H0^n{B+iKN!~66Q?N>wOyC|hOcCGFqxrTj0Yzuh4EUTv$vLj2UI7&+ z>jx^1>JQyO123Oa@!K(Q2vbJ;&PoK+Dzh33X?137peqan?m-Hhr3w}{_ghn;z= ziB8M9Ek^(BxgCt(uGvq3;KBXul4bsSRe1DKHg9N9L7KV z0jwd}$p=*<;fJkGw#F%-Snv_u%UCM9>3fuxYb*)t#|t2wb)vO_MCJe#j&Z=>s1sR0 zz?riMPYf(;)RVD<-kBYUvl9Osg4d^FzdH_JZ@iWg4gwEgvcwWb)zbqBt$(D1N(`%n zX6VpOhTVbIc$I|q-;2m6w!^m>&pCbmjd2!GW+vzQ$&x zU!WAsvzj0(-2+j(y0W|%D&zx_5nZ9Hsg;e`E9&kuDkkmI;&>eS`yqi3T%_r3mwtR^ z!y$e@^Itr)q3lb`>^B&apV0)vGWiRf)6dNO><{-H8KQu zQLJ@WPiuA0MzD0ZQIOc)2&uW3h0-mSi z66&Z)_>D7fy=PIv^_(`0gPi4g)v2Q2v03C^XXQ!s>{h;q)ViA0ECWlCvteTEy9uP! zwy=>!(xD2Z6hOk52iib_dX#9i8S}oP5-ju?b3sd}C)y8%AYCQa$EtD65B(tB-AGda zGteD?c2K9u_{udkNOV9=$kN|rkyztU5SookTD?#fQi4?%0tW!^UJ1j*p)QoiEX*w- z-ms7&@qCKcp=)64O5y&UWHa{RkW4}8ITH?Qwq3J3WsH|)yRk0IAr z*6MV8jh1u%A@)9GWJgGgNQ)03EGQ1;wN*M6&WfQq)DKzahW1c>7}v(qp+A(f2Hwy8 ze?Ub^i@5qW7Wxm?JUK1yi^7Mo^w&r+r~J?($}~7oZffl9r~#AUhdz8)y=X1dXOjVJNOTF|^&>`Lyfo6}LDhPC2>l^M9Ol9m1|`I!j%6I`M!5!Zlqhau zuGsO2F(Cpqqhe3jc0+eipy5PhcYqVQc@{jpF;AhDr*{KhxTI=S3A_7+ysM3M-&_#5#z}Og?V2Mki&imbDM3Zyb6^VldKb zNgE=^s7~uS>P6mTMnS|6`%SAm=8Z89b1{6p5{P%s482qXs9a zW|c9EMjtcBL=;VLFjrR_<4|2njNoKotiWdmr>GGk)&Yf5Ng;^EAD$|XJZ6L@PeXD4 zQA0_}Y*e}m*c8sBXk<;g1@*fco|KwJ*5gJXw*_;7or|hvU`FZhz|o3Yv)jb<$DuOu z&lp;JsGa(9hBnOU0cN&qHsH9~NB>$f9j>JP}K^K9foxJ3ulpDd#bdr6Sx*}Nt^ z@47(^@hfoY*h50mB`YKP3+X;d+*QZ?bE#`s)Nm>WamI#d2T(ZkRClekneEImAN6|{ zs6B@zRzEnR4*p#hQme<()*D!}b~`1dA1A#!%fGW0p&hwPkh>Du#~+XUxhK#!k+qz* zvqjcPwu9E+D`J0VtxT%*Vy=qLn9I2h^l2ZLJMTD3a8K zP8G)-F@izpNTu_US~$|=(2~*`%-%rX{8KTL?v3jE82auy4K35r3D)m))E3%AEp18~ zCYHUKl1220;hP$Q?ld-%7BQ|fQ4^h#6Ik}yq}8N*TN-ahJZXf-MX(+v)1_kU zppNMJwfzX+gLM!(SFHnUlc~PuN5v^m8oBn|EwrYC4!9rmZxwexY4{@B^iepdwG!KH z@mqmjEM$2_yN_H)`gaW7433@Xy7#>J-A`FvyJ&EvU<7Jdc|0kq@KL&KaX}3`tx>U$ zjtfu+-=l^*aG_qzD!=kU;w2R<&P1JtBfzl_WrF*~-rqvreUa=-(26_jS6D9^c>%F$WCGHxNG@^0N|)vY4?X`^!fZDt}- zoO3&-gf@4>Ah`_bUsgn2AsU0w*h0p-ee=}1=;&$D9@WF}U8?rd*2Y2UJnM|LQT)wv z?-rLmZRBL#W2?MWHA#K1zE?c`v@zOtpZM-+qrU2X>mxOtdsrUpRD2MNV&(E^&zhyD zoZi1`70Z1{!(i{l|oU*KVrB-nXPBSKM);}LvGdz2=Y^T(;Us?^1Z4h>*5Vnaq}Ba`IeE=^CA_HCsglCd+5Zws_+F;dTwc+pBsk+0RjL#x z30|tNq6w+aV4mNrBjVWZh!%c%UQ=1EI^C~hF_7=V(&mXQ;}0k*Up|A)y^O!17tfpK z;sL9b@s=Wr+CnhBw^2Z`WR7=;xOdGHC)U7wbYGTeHx2xKRcG1<7FY108o%KmiAB#D zg|N*kdfxC&`-DyhlJCK4vbqfc(OK|QB!pjnm;R2 zFXgqjx2Tq$e%n`-&<_zG3ae^1P>TmB+Gqi*?2YPqD!@f8Nc|FvpAp4X(X z2a*^1R`t5-J8|TBqtfr`y};ZFguNdv%TjS=KnuxH_1KK z_h^s*M{@=LMZ4e%vVPEHN1=>w1EBOro4ET0!{0Q!8;dCfeWb2=RyA6i*|>32M>EU% z$?TOXSTaH#k#yVd;2j1<#8@pV(M(l!gDD&M=N7BVsQruh&=fI-x zMJW5Am1NmjBnOr^jp`O^pje|U&m;D|i2djlx4#Hp4C+aijUcaygIlfg`k|g2GQ^~& zv4RS_H zYGC|`yKam)<|QMz++Xu6wboLtfZs^Tq1Ix$#z8?)1JCbkS=xBg6%Y@UIzcuG@r4c> z6KJr<4UwMJs!8I-myF5?)RJ;COX<{`60fnLQxBR+mN89f4T<@L*kSswsP_WE(a=ez z>L$||(ib&pbwWMk%{l-_3z8IPOu9)NUoNRcB;{oF3=w(R7(IQaA}DrkTy}*m12Mnyptwm-zB!TtnT^Mah@$a`;yv?c}EICqbQAT7zH?fX2wTNw5AN z?yco-XeR0ZENCKuLsIz%@EU|Va{Y$QQ9b9?NOCNorlFpcViV{l$Wnb+sGIqNn@#Ro4L*`-iS##YpN zMUgd|jtyw0XruW2Rb%+7)74VijBvPQY24LD9u9rbN>cea&7&VWN?Kl)K{B$r&WNop z=qlv}PYO!Cy3UrXOD-;`DOq(yF0MYPD5-9X95-~7))kyi8cJfUY5`{52EsAod{FP- z?Wo1K!wigKRgiI>>L5fZaGRgKOB{LK2n@qtyTvc~D?-{DlyqN!wI$ahoDlo=s50h) zqBVJ;UW0q}|NHd+&`Z*q^g;hfYsD;rHOQfYl*>;LrFe*5igsokL>KT@gLHm&Q|GKY zao20c#3`2%?Uz&6v4=@$JG%>DF_sS1BuUjMAeZAx<3Z z(|BQKA5foN58-&j84AIt@8Ka-WIUn;jZWPA|8k6CYXQXA`zAC1zjDOYR8KpH|Hff$LVEjl{Sx+m#NmcbUJJJ ztNIN1y&^jQHG50{jMILFGlGl^66#;Mvi^WpGv81>L8fM)v~%8+9T2wn4PS=iEo8`h zTU{@kWLll)9V>rF?;LD&$Ggbneh>RV?w>aF=6$5_57f?p`@iU$M(%MRf!a0ecDD5P z_QD_&&i^RSC#Z{Dp?#|V|D*cf^Cx*D?1Vu#<*#8`f0iG1q9i52zqHxh1XlQ0(f5{- z6C(N3=g5ZR1APHxl@6=nf2WW6dCc(z+Vg*z@LhUPE&hsf6dm<7zI*?nX3so5wzAA` zD8)QP5fYrJ{!T4q*FRNlcopXVOFa3Ok!Sli)fFm0`=G}0f5`0lUS%??WM%&qzPF9i zdo0c|1 z&|qkNDKJG8Bw<>r2)<)X^`ynBa3OhQx>)uO&|Deff_IGR{!FD*k2_<+S>n@ofc5Z* z|Gs0CM7&yi?n5Vd1R>4nTzTl8LhKG=wdNzK0Y4bqMgsC+(@a$xn{xU}x zRfMutIW_WwlDohe;Lm}_FvWR*gK#UBV|1?UsmOcJ2#X`{8kyca-P>_svhq>e_yY0i zyT&+MA^n#x#v)_$aHMA!rBsirm4NQJ!G(8Kf3a%ba`B2ZSBV}hm^PKB>>!Zcg{Y{w zJSi)AY;{zi_M#Cf61}}iyz-F|&i0N}cA9b0nM&l!s}euFXXMTwh1%ug7PB>4;RZ;} zR*fw1gl3`hYLwPFP@57*vEKe^b?`dTMBWp4y@D8&!ZXhMMu}~l*!#YblR93dmQN7( zzHgM-CaP5J^sHi%_}}|Rxw!CsBYVdxl`j?LgxU3#zjX~!MeN6A%WaZPO>0(l=Cs7u+1tG%RwZm)lddY>rWE=kX9(Aa#)yoWY8b2O z#u(mC%@vly;x&=;fXyr2=*WaE+5uV$XN$s*jr`KQPW2_pGFj-?l&;`;n0| zcOjC}jy3TS{5Uln!A0@IfdHdTm|IqSJmC&VQUI?HO_*YYA;Vwzqgq?oJ768l3Qwet zg~TTx8Ait9l$fu`vOXG{kVya7a66Y!&ZU&IAY)m4rhb_zgPcxO)o;5L-p?UnAAg`7{%e#VXSftxrcT;pooMcIrvy=X8BI>qn+ou z3`!#}Z1r3er*I%q|HQ))p9{&2I9Ldi)VCBKW>{7_k`^LKc_@Rf4ZkZZm6N$B^Jd^D zyv$9FYNLCWn#q)(won#>pEhcBKdmafzqS63>E7pfs7Rt}SD! zK23C{AN7_*^(U4F*AEf-wG;dT!7@f=C}3-LNLARaow9d^LTu zg>vx2>>y>5W5+UcWge?jdH9*wseIk3>;iNOREhhX+?x-#7IG6N>dcCiw*0^_UVV|x z{`vt2uNL-=w$~%3+Raf64R2wIs;L?DR@X{5d!}D7NavWRR4H<0YrWMCETfzd5VW$_ zB50cfjxm@E2pB1(#gPZ67_6W&uF3@_D8L-}l9VbK%|5|-p}lyNaHsP^&PqpC?uGBGlO44gEDsoDC84%3>GWZBr9VO8+Dz6t69MdvZ z4y1D6mp)E?r8)AB$KQ+f!pBmAL%azx#S&d1aQ0%BIZ>9kCZYj96DMMlo`{i?RbP7% z$cF|6s#Gj6@gnE`$P{y=)I|uH0R{)m?ypVOQEIZxsqs!%YJIhGQ6=*y%-ae6DhEhb469x&dvgpU|r*9#1KXX24rQO}TpWZ31g&1>!s5Y{qW5vglZDFxE zz>U1j^W6UCh;EYP`GqGVT2%|p^cSmFWo@ftt20yv*gWnnx0``MQ5k; zeA^~*N;=PRZN|9Exve=v>`mumY-fri>9DmuOZ=41r{$cjKFgU#96W2L=S0L@H}B0m z7int37d9?tt|cnsuxD;Epo1O?>O-!BKb*Wv|M zeX;|4=%?zyg{sBQy;hF67CrkYm1b5t?Oe>l`(-w>!R2Oy85belyv11Q#UeM8m)I^5 zM`iM|oCEmQyS9Jn%H=B&Y!zNn%LP)ZqGe0OT^=4bn%X;~to%}OB{IXp@~KStwZ2UJ zBa>I#E*Aw^d?LR>3uM|78_z2ro;_fV7YP(vzm4(9Bi2r5rar|19 zygQSU7X;7OY!T(Y7d`m`;EBSgC%gic-I3M#SJ3O%d7bzRi;;XygVf4dwEv= zjWTJ`63m$#%4kJXZ$)%O&BT$c=q9nv%ZJ-;7B_f#q3ss&4E=Yj_%r^ix=oflGHj7m za1jgKt}0tpW+j%f@;k&BA1`aWQ?!c|B4Q{EZt*c<+yHsM`vh7HXHdI6@c?S#M ztjS9lu=t0Mm(~H+Cl4NN=~%l}EkEXaQ0+-vpb`Q{d-Eae&5DObtDl!o zhU1Rdb(#(Q-mljJ6rbi&R4p}Z_;1A_KQ9~w7~ij4{=o9dlSLzJ9Dwp6u#foG&wc*q z;+u3l51$hGzZ2mA&+`MUr-@NaQpt<@sx}-z?XgiWi-7>Iass4h-qz(fA<1cnI^?#o z!0W$qsOA1a{1o6hM+1UKur2qSrXz|n_{#taPaSMH7T;!y|AUOj8 zIc2o3k_xPrnGkCPxleo_;$z1GLnoj4bu9P|10+R)2jMhG8v#n69P0VefEaRs*0I8W ziW9@Uzz;MXSsF>T^vVrn%2V@iu`kTWS-D~5>i+f7v24_TnD{Wv zD@OuNhb-GwI#>XTf}ogRy$I!)hW^JyO*RiienNKW;S)zZ`17xoDg4Fk(cnpIqV%*M zfU6P7s1uE8Ho#I;a2-3q4&)OJkUNso@?i@6;BzP-g(d{ybl7p+N&YsV7cro?T}n_r za_gax4yn)~h7sFzqBQu`rKH#8EqD~zNI)sY)D?@cmfR>$mn2lejtmqm%M@dBcXDtpu?Py&(eAJd-oSVZ#wE_Jd+!dkiXoV2kPKruu>lE6K1UT5v*(jEu zBc9LUd0lzXgDWd@O=>fkNW>9GN!2k#IxwA^;OJ9nWM9lWhDj*_WoK-I^04&>b;np4x<|Z-UZ}<{i@IdNn+{CrudCz}Q$l z)je~1BRk|Xbew9%H{SYszHY=Z0kaU8Xr))z?vgAn1Z)lXk~RrTMaYFXSyAJbz&koo zuxSHRHJYGiuy5HiiZHWoGoq5k=$*Bpty)ec2N;iN4o)YU*GEm7n}|xr0n3vLmnMAG z>{_!{uD2-K^IOHa1w1dS4Fei8r7WKzZY#jUWhSjuiG5px;>xpCJLvZw4UIQ3woTEQ ztqYpwwlNPdcXUpwpE!p79cU9vQd88@LTht2%I0;Nqtf0^o_BYwUwP61@Kiu#v&^mp zGVEpDB3g(YbBv~=b`a5bBptBq=^;XTH6im&Lh|N{NyB+=*}MdL5aDxv0zGpXU>p!4*tsQc~*C@&#}Bt?snbxNODSi~pK zU1HnKa)8F8D?ybRwP`DzR@8MCS_aA>^E7u(|E9VY$n_;gFLgO^J){M3t)Sw>x`SOu z)niT;pBM4!qffD^Sc@b?bFDI$4fCv4xC-6cW{6JIslwOjC9zgDO0#k*>MLC*`igl; z>Uy;-#==QSF|SYEsD8pG@pr{MH+_>HlCiAp4Dn4dFU$!C+G_ z7Nbk~lsdrOreV5X}CsAE8`P$t|QzgZnNzRqU-twPU?@=kkF=q zmHtNTE#oDT>*;R81#$z8`XSYV)p^H_NVVLN01A3De)C(9ixe=o>i=)k|KG0ucie$Y znRn7{s&{ov^JhdIn4&k7ADdP(#=KVs<(29D5kG z(psjoF8BbgRPqzA*FTs6xE6R2HE4|l!P9ac7O$4`?1D#h#S^#5+|j;Or}u5fS@0`mg@!U#!P)t?v5xcc}e`Kf*0Ff7RCrZC-RC+-oo-SxLX2A1f4N7MbTJ{-oeOu)^E|59~BO^0m$52z+|9SZ4c zpuyT2o0;!JwV(lNLMjD}V2+QFck;(J;Tp*s$Sa0brmbu49OeW5jF`&!5&)ku@{nPk zUVp-G&!6cmAj*M}tHZ8!{l%PE<^b}H`TsU_FL6N3h%u7BFKBy`(*8?iPWy@&G8#3< z*YM?$_74j;_l-Kf{NI{`J9DPR27IU4fPW^mgisj&(rm!LK~n4jn~9T>|DUSQ_r0ty zf?Yn-yz#yNvD(08PYj0tzX>&Wc2W(%n@Jwy$Arq|r~m27e=;lTH0uuiY$c&?YX?UB z0G`E>h!!A1v)T1V>g+W8>a)kvAXSw+9q=>x|1kZ(L;de?LJ1i*;_}z+v0_HKxrxH4 z2d*&{Kp2yaOoJYlu(QCnx=2k-5*(t z*@_I43x0VN&(8LGptB}!!}8nX@WKPnSf6-s6t6GwYgIaUD`3)?J4mY9&ESP;mxPcp zKP)mv^Ssh*t!k~U1#}ZlI&vs`uC$Kd-c2dFd7^VP&xz#gDzU%{kjGVsKGhzOT={VP z_7y2@tm5F6)7s)#krMlE1UgcB-1tFol_8HjbyyIvGg|)frydLvMyN^4G!(29 z-;U;i_9~=n{%w>*O~9$M22E5WTX>9#^-8L*MiYghsik~%qN|#R$hU?(A(1>5$)RyW ziD^a{@A1FVg$XFCx&YLg+KvsHINYL>P+Qt$@|-}sF>Q)Ai)VbQnttCjn*MCq-bwa# z55+xo9EC!~(}@Hn84UOumHK_eTKVoLo1Ee%(OJg}r!yB2YH}z*dkYGBS{3aoD=`sm zcF7TqF{RJ08M?#-R^Bd7sfC1Tme^MdUZ;bAIep|T<1rFQ!lBbAlWie!#NcURVMX90zb{%r}qxYLShBMM3F&qP1ki0ve2kG#D}<>alv_j?-|BMQTV2 zj~55)ctPj{yH-q{XqQs$8T}i2S=D0kN*w~l^@;!1A+p&L(NfRbY)i%NdR_ykOj;aT z-!Go6=XH_gDnSZBPr~1(s5@%~ewd=}0SFdX#{GtV!E-YGrsb#wguzo}21`H)R+ZEc ztB`7n2N6GMwY_r7!cmP-g5mW)V6V(h5{d(pCPNeDtQC95^6bdE#9dsw6>eWQ=(I-0 zH)7I>(LD|Sga3gxzXv%FOGw6~VA;vsIWtX0i}Cku&28`Ok_KimZbb z=~k4poMO;H?2o8L9@(|#}_1q031&G2k?9tsdAh(){$1w6YInWjX5Wde&vYsyp*0F|a0QqP|FFLc5I zk%sW(bO2Z-AQ0H6OVl&ZepMn@jU0-&E{ZjOF-rR{5sl-yFLD6MN-W?INKU)d+{liD z^z$-_%p$eMSsweRL_L~*mTCKH(rQV_`OTX2kjD_JvBc3c!)k#L_X}41zQZ1F-AugW4iBB_oh^cD1y!%zNZFOMQ3m5UTHsr`ml#QSBPtcO-W-%QH(UY^|&u+^s2EgAHHwhxu+#usmt3xgPjJ-19 zD%!5VB;jWh)0=g=-}9WkQoU7W2*R;!;`4UVVdvxXey3{mzF=41WgH&jPIF(hi>vHB zyX_?qp|4qbJM5r9J;(raZ12l<_3n{{$YEFND|*H=UZu&4_VzCA8)#!?zqgC_240f> znwrvPHvM(G*wnzMP5gsOk(2y}oJh4Sy>H@&d8n=>{h{kEN>K`#x9y}+3Ps+DWs0eQ zg6|>~68x2r?XO>f7zI-H;dxJ`E<>u6v}C=n655eK!V%90>URr%lS3sI_)sNuAc5SZ z$Xwo!RN`DDF3VT>K2}L9kc2^0wFf@2i)$xwU-PHxBPkl7j#>$CE1o|hX--#57m~_q zYu2;O&yb+>)KOdn8Gpi0^CDnnf3}N^$-Kn%7rom?{M9a|Oy=d&{-)38WF>?H@H|%V zce(t4^s1`ewyqzM-=ZDztrI0hf6*6qam{2X<-dX*#biD_^0jqj5fsll=^*a^7GET9 zgu5Szyx1qK>Fj?=#!ZQ2%PIyDSfg((Tud_8zjb}!@cs|f1isgtEd=`8de>51=c8Eq ze{`nWx>V-)FS3>YU>7T=@Y2YSx>0OI0QOiW;CWWVIDHA2r}#C`FY#aK@MRkNg`*q5 zJeF&RZ<;#rmin}>Q_WL^hIE4E$!f+j4{&+0JPuS;>=d4YgAw5IcaualhPl;;Sp*NEFeMd+}VUnl91(z2zR3pRpeCx;TDSA(NJR17*iNCFGxl z&N}_F4V21uwl~2gKf*k#g`Zz0KAOk#d;r_U9>Lq-on_Pr;hxW{{0KU#Z!TV`a7H7l zM8|wy5dpA{meL4S{YXYpN9B+px&w^CB*Ko5A%8y*xB*^A4+dYYhN0;~U}iG`uA`>q zg^VGq2km^U&OUBP_WbcWdkJ|ps|OPUek=<2uX3ljC(u_scd(CGNrMQy!HbI~X>UQm zf5-#w=-J)UUC?CJpPngV!5jP-+f;GO8$3S(>>UZu&CJz^K5|r2640g;aWpYo3-dK5 zrFAf0Q&Q4g8H+TbB;wq)#BxRG2(E_0zz4)$LOw{a+Z4r_Gg2(_+IO+cnX#WO_}L!& z2}%*Q!phvz!ZK#Xes-`i9kE|?A(Zcnif7*B1*2!DNDWtS-)a3A+YX3k5mh_brSP(d zFo{TeboY{EHry?;-r}L~F`BlXSdHk#m|k(zTfEv0{2sk7SnjK~=B~rj_zx+Enz((6 z)UkwbM%;pG8F(76o@fchVptAbnHPRwh@@DAY}c*Oa1pBrCB$tqFv3*n4kjD!V2HzK zEX&sh9;84Hs&xci>z4uEy-*}45lV1!c=TYdI6{XAv-LmW%E(>#7UWR4^uI&%EL4I>+CdVbvY={F# z^XXY3NK9$X!b1c+9W~B*pz~<>yExRr)AEBrZPIZTTRbyyW;*6$w@+Lk_Pxa?I0?j= zf2?@rEuQB*4u6LiiEps78i3a%0ksdPOgbpkyP%%BY4&4cLEUnK%e=bogF|<@n ze;X%tKe;=ThtG0-nke3%DnL+@F4Jis(=2}%;|8xPeDc>9u83$5RNq?_t5?fImPJ!et0T2S|rM&U0!xPv zAj!PI*39*80oEwJ&v2(|&p&EERHI%t{C)Az8N4t8uRqNHAsr5~VBG{_dWhp8{DE3H z-cR%jx3-S^Q`I%~(uVh+L|QmN3Di&DpN4J?02JagM>eyxztS$Jj>GGZy5BzsQ3xuI zH>wnj0;V8$mV;3Bc={l30+xaK{ynrOKr$pAUmTDIIe!Q*BBh&g^9M|W)Ug1{ zz`Q>um4sh6_yl4eAQ?zLj$$-X;Bx?CV1ZxE$uZMmpW?DXl1nFL9piv1NTwzss1 z@Me+*jWoA&R<9*Ki8->U0*@BhTV2LRba?S4;)fR?6(u(|S8hM5#x5$UATQ1)SOJ<7 zU=^4<1kHnKQ^&(f>`pOAXtd2%p(|8Jb*}zDPZ67yuhbS+zDR+}kX5LZ7}kg3O0v$2 zbiv}pf>|X=`AfAn0cbVJL_(!l4rG~2^vzBUoZwi5AHm~MvB~eqM(Nseoq#SX*}4OW0_FyUfUNyi$e`GLRD>|y z7)tW<%$MkaS&CBXT+dx5u8r~>XFs*KTs#@&!TyuXIw5LYfppJGvmV^Q6h4oitdLQj zQ_QZIOwXzz!?&8K0+4`)T~Z~z`h?a}*Mbqi2o!~~W*ismkUev~%C4z)Z-~Py@Qn(D zG8QXsT0GsSrZ7g?ir{#?M&LJ((Bn-Gz4S76v6$=*?NJUL&F1cas=P# zU`43Rb5%u-C`t#m9N3DBVyo_>8Vt!ZZqwsBsK*tqdbi8Eh=oD43ee}-5tkr+6YfN2 zdWqu5I}f${cB$2gvw{`|%~$5`_)aqK`P6bGp4I0UsFpo@;&Y-oFK`J-ci3JulD<#r z7poh9Hm#u&EXRlZsVE3tC35&nvHFd&^2-| zoanpGqyxe16ffuc4F*#0f$Px)^20+cgX0i>1a8z#&W8_Xb6g!a;fwF)STlP0hHjCK zMAC27h2ZVcaT`^6yIvu8=&J98&e(rfJSo!310nT@7KQ)2SFKcjpDuepm4#El!|}!7 zhGTs{?3Hz%2Wc@;q)Su(flYyd!X&vlM$s zx*(I@q|G19^`u^?FjV=iwQ^)etetw-Q}|39pn>_GmKP13Am(Qufgj-S9kJSVBFlMJ z3~cAwf#+gt;CZzMN`7Y(-T96{Mr%v^99WhR?yK|#m6oZ~n&-yg&$ zJ9ser4VkyIt7oBXQ|@KsJ6X?mv%D_IyGs2I}Bw@sae= z#jN5}1av^&KZ+5%c&+U-aV-7!CviR{{#o3+3rP3Bh>v%n^1mWz5Wf9QOxg`Z@8{y= z-C#%lF3#VLHog$I>;}g2OYy>Po|E^L)y5WjdW`OYthF-Q(+^H}>45`~-+yg8c=&w& z)i8VZIPue79v0Cr>?IL*gXF{^4#3yNbV3L^82ZpA&YY^aR(%?0PE(Aq z{^>eOKPGURO;>eV$D50cdz4(Qu$g#y`HF4s>8uv-wmCdwVcuiDqgoY%?`fmQdi*sw{1u z^`x1vt6h*>?Lt)Rz)1;9pX`hH@CmT-p?fmEuURnkG5gv&09niN$sGxvpn7_u?&;#> z4B7SEKhzn8yxmoZYI~QZ*i&}y?x}p}+{kkcS2OF^ydzET0@S_b^2z8mFcuC;|MC%uvU?Khtk{8=X%@ zkn#(qv=873OeuAAIl(szMmBhXT79&mAc^e|7pzS+B75}gg9o}0g9;nk%)K;Hu{qtB zJY~}HIKK$VbWC0xmwO@eUNU5u4xhg*OQoU0T4k>q;E{ElNd2%_&73fgG zmEy}wd4B3ux(f|r(YLnn9M5&hYxXy4&8AH#Z&GzY?834q|a>3n}OfJ7&-U7^Zhh9|xt3i}Z{B`&)@%w{3#|$pMG_ zJ3aC*i0aER94`)O`X#;DU)E#)%8<T z-lW|Dc_H1?VsLG0rsr+l54`$dz{JAus;PR9>W%G;_c2vUQXT?ptpGHG08}hr2hc+k zG+JIT*NOK42d6FX;9C@{88^*fv^56D3qCusm;+2V^A88hONGu7>YKlSphitw(^x>H{{+Y?KO)9Go?4a* zZd~aIEhPk)auV?tJta0io;ti7OgIfwtjh9ds7ip5$3ck*HgGvz8;7pq!<w1i~1v4y&p@1TRP-EiJN$AFD>qktBhp6`jCULH*xYf z#J)7=6Ddq|;uyOAqRZisgLztFIccSq2idRq=2D)$XHSqqBeI0OTd##1{Ftw8+1ci@X#P-}priac?47dH>cFMIiCjyFKlDiy{bn zrGI!?20~%#6nCi{ zp>%Q8El?D>llKJdYt^pF)Vn4tIfugoT6|tg#tyW04dXs^gg7LB^7`fh_0T56HQETS zkjha~6H$h1N~a+W*E|pdTaza@HsryH(}#DO+|YPZNxgu#AUTJl5F{c#wOp$h_%mVPFws!E~+APSu&zJ7-XE6+xff(}7=vYh<2FJ}I8;uBW` zakiL^iHPcVVas-|IR0I{C!^wmcX_UDi@5n+JaV^+x8LO>ZQF$HJwDzyh|=q}OpSJ( z*wfP0*|Ct7Zx=_uhllPCvGzS)9^6UatALE74D)+f*?CAfUA*=l&*pP_=61qa#V+wO z3OIMCRI<|Z#ed%8C37#3G<7I@c+J`Y2)YN!CjKYN{1>KF5)5w=e27d{5K;gVDUD7u zN^5OqsrynC8nke~So=ONfD7ph-{(2C7sF+XG9-iJ1XAKvBl1lv3tuuMUB;%)Js{pg zF{gmWG4E3G!}}PIgCh6=FLGXnq*0fPsUP4ueuY^10WWu6iKNo2#3diVT=8o0&<8v} zc#TqsnvKayi>?)4egHf0>xBD5o^Ah43b}6eizy%S^x*X>Kh(RB{`NxZF{cH=j>HKc z^5DorsNQuWWq{oT*#DdG+jleRUg?l*X`IvA(FMIr_ATPd58+4VRt=W94JuE%@Zewe z4)hYR7&5J(I3E!5cjFvbH{7q_DXzo1V>PV!0nzypFS0+FB2N7X_O}mF>jX8_ z?J>v0=vc-h^W zt6Eo-5n&jotf!=Ecs}m9wiYRheOhB;o`Gf;TpqK%^^X>;Uwd0s}MIuTUEj#p45^s1%42PCo=K_I*E@_>1{ z8Xl6m23}8`zpn1qPL}?MSO&)%sHo)4SZBo#AM>#NtrXFR6&89siPCqFd*Zt(;;2sm ze0&c-0`Hqe?q5GD3iD~$kkLnAt%w6*j!#ib=#MD}MfbHfzx^}#vig(_>08R1TtiHW6vy>`6Z&R)gDkcH5l5jDDT%uQ=!Jqbt=z|l%jv6h#x-1M1P|P z2L--G0rz)$fl$!p&_C6{Cv*aM^M9Fn;37Qq?_bGNj~KU!M0U2$r=U@g+<7}AR-rP1!UF!B>N~Dn@YCq$F(6C|VkkIM2Q@zBq9pd=UczCRHm_krw z7{erjLRIeN_$B|eFchiuU80@S#Lb`a;^{7xAc3&y_}jeTGTp;8+PSU0qm^Z3$Zrbm z48K>y^s%2MTv^V7S`TQ4K2Y}2?;R$eEb-X;4BxQ0VvuIcqETo*vDCUNmb_SDzRV+h8<+yLX$Z1Z%!&W z$8aRW2!7umc@D6}#rO_}9AmA&r*?=X#wL`D`5xzZTZP!; zab}-9B5n)=Bk@CniQA(~Db5J|5mm+#qY`24siG9RTueiaQ8J6EN?g7U?Es%U8mZ>} z%!1XzljaDdjnOkvP$O#69Qoc_>OU?nEI`70vrwHlG0hPS*PAP3ENTJmN*Mwv^aW{- zuxmUe(z2L7LEM$*II3r&N|4KK4+5oLu>U48`HHw`sM}e;?)+-sjh?O^shg^;_TZ{PE1s1cF z{tG(Bvbq_=MCi_xnsGDLJi}xWBhlQ45DBh!ECqUyH6X?emLu^$i3i^J2Y&gC+m;}D zm-#rIgLrzHw;rXq@9vnOQ!=un6+aq#bAho_yfzR4@`YNHoWoH|ymp=DUgLP}di4}& z_Kr<{pSs5D_bHyI6ZG?RBJryYr05}48io8J-IW7q09G+Y{Jt%<+&xwEy%SmZD4S@! z8E=E>2~4xMF`3KuG{5-mMjw}4lqE60U&;%dgRaIU!f=+w~gJS(S*j1uW; z1p7!lfiV=+Qe-Pto{&yd_(oj z{#9$$wun0nw9;*mMg?hm(6rb7N<7YX|erOI|j7zJ3!g(C^!YYNnxs zY3)cIZaYrcW~ci6i;~ObA8!+{wmEVaCP6OvVqIUKUTjMe7aQK#OH~U6%hX!xRck5M z9nz9Bf4^*a_VVP09VgL_UZHnROeOAJNlEeYD;IDXio0Vn#8POLLRqXPtue9TT9M}% zK#iU?y0}V&5^yb@EkFyMim!onwD)E8`a5u--u20}@eOL1x;CO^^+0i)hT?^%6PS#a zfT{P%*+knC!ul*`hte!2&JWl`ZD*=~l-*8CU90%Cs6Ut@6G{9J=}oQVOW=rTm^igF zHPGX*#|Z_s_Q2<~FG2N)Z`QwTH`tghIAaX8q+A@7}HBWf!W3ygqyJ3Z>HR*A;pEc8&GcZHEHls;<=F zilCiTCm2bY4m0kMJqF6wga^ZR3#W~odIUY$_Fjoco3E?%DD~x9*NZ-KqA7 zyxJVV(=ZMsjT8`_sTcfNLl*qmYQcNXQ44;KTJVsn09j*+Y9RMNH+el}M&mL-=(xqq zP-=-rw`yVXHuIDDC2vs5V-^B=V;*BW6osChi4-z^o+2=Jmm;vOcfWbQS(3utx*G6y zz}>L$1?r9~-V;Y5x&WL_qU^SKuQEgXUp?cKrxhj$>2~9NSQyh0ZE4xv;h(si=!I~ z0adKgEa!kmfMr4#5VuTRx2rnnu)o7BVHLO&1q$x6iLWl@d8gd1y8-#5}spjCVLAti8iKWruCKceo3YRLc1^#{Sf zlnYC6j>Y#KgGMz-XVm}Kb>;CnOQ?cr+XsueY6_-{)t=0Ga z{mz*?ODO+@x%b?2e&=_7=lquQTMo&O=2_zsPm+9vqZf965&X59E**!BNsou$XpE#h z9-hj^MEL1J-;sp%j9!Rmv)dcL#bD-hB>p5iMc{e7?^?2L+yqKH*%xhtk?wbDrP2X0 zUcg8BzfVEKJ_#>o_Z|MrTTbX14apY~+ z9ire*iUzpb>)HDKjvBo1&+1Kw5=ESC`L3F0nuPwI-j?s{ZTXk%7RCpzQ9%4rLIC{c zJ_LlyDy5Q@K+66ba9s3}OTM%Rpnj}pfaS|E>7q!zSLdZHYdj_HNFBwd0(TCTs<3E)7B) zjzWuO&KX$dMu;)p>~tfSNOG49QNm_{ktqve<%cTHojc6UfSZ&|6dHd&=ql$Y%@ z?B;rkrT_3|OCW50G;>7oy9^k*C4q)88q$_|pfXAwR9UkXm)iK)L)wwp-(pa;N^j%LiYreRt z@kcV|0}t`jvKhWTUXKTNk_p&73G8al3rIewr(+7fNeTs=`7?9|3FA6$Et!=)O9Nls z4X=wS3Unv;pU#gmoo2%1eU_R*$=PZK$)(>ul^26ujA!V95kfrE!JCh@bh5XCJ=itQ z^TJwLewh_^MH!2u>KrT@F(RN@3fnb03a_CVg<D<|=rVVK7hhm;aw7}UM1xM*b${c9+Ak20RYIhN}1KYnC!{sh>)%UFLS=h0YEKrDOPSd-2 z30lKf$?Psw?@Z`*%tBT|NCh6C4`l9i|K)oA>M%f)E3!Awh$}US6LrwGtiRIA zPb7el5VV6dGFrF=mky$!FMAO4YDEqOTe6v6@EUruIn#AyE5;*>2<{rTVGz%DA`fCK zP!gQsRv=Ud&|a54mT^5k@$X1AL_3f-^n*-~4|2<=BQ9^JZb}>*9p02Z{gJ!mISFe- z*UcGSqU9~wL;rj2A$Z$KrU^BIr-@tz5-%4u7d)BY-fo=Y209x=2l4WA~w>kbxJ(toVf|?-#bEY!He0S1tBL7@@{$w&sKYJ+Y5{0%YgCBSLB_)v?eDG zr1Q?85&xVqBAP&I&ZM2(_fjK1cF6KfLcNdUyT7nJa_DzC z$NP_4LkFyHtP?J4Ar-FeS-WY>W8Ye%x44Thlbv6B3eO2%J~$fO5C2;}_vavmM7#r@ zEmy*=2LM}ezr|U&U6@GkPY#eMzI|h#r)&~@ZZ(1pINORMc-pcRGaiArL!`EMdH2$2 zC*05Ad8^wMZI?&-JcX@rv`u~q4_n0YI6@_rIV=8|!XRQ$>soN9)E=pu)!0rMUmwHT zC4)bFKL?>uG+ovBS+e?S&*=&H2mAsJ?8oVh!qE>#^aR=<7q$IM{!5pGMTZo9HByMH z?w$h9%qJCdDfyLJkF58^`+u#zgkEj_MzII;Da8%SpLR9%$m%VgQr9zb%`rQ)#7St$ z833^r_%HSW{{{8)Ur;~UB$R@P5I$TcQYp1O5I!uBHHg8%m8&p7^@5Z^zDz=F7EyWV z75U^APtbLk$6IKC#6=!xn`sqa0bou}>3N;`4rLw%ZF8UxC|dYH#k|^-R@DXpv&S9s z!Ge0}c}+ALivyN{Z?|~dk);u;^h!n6cMK*R8=k}574QQ8VImn5F2lq=4fqQS&n|NF zqLFR*32W{gyv12^?mO1jcI$Wdh4M`J3X{u^2`6FnBwskgQz{?-si!Cb?_Vvx*l_#h z0Vkcr?KiZKd^UAJ)cl@q&YMuOUw=GhD<1W(?CK*A>b{;!gzo_Lg*!Tub^>?N5AwNE z-&F&Lchd|GqG~23|AL%(k8;$@hjTE&P}^A3JO@iw04L#0la76#9ustXKRO9NpuSKQ z#o8O1Vr?*S`hTo8P0d7#U#`LN0{7v}j!ZZbFJDy+UIPDN<|XhS&T7JL#E^`jQBmcC zJ-c@qA@U$zv9AA7&(aa`C`WRmq7Lof{P951>AN`%YZY!?3Ma^#B0D_xbi$l^dL~jG zPjcYTI|Dt@HC!VKTA|YKnX<3Q4wO!%b!8QEnp$pix;`Mzk`ETyWudc^O9slAsbCMC zBWvnifm|;FV0aDTc@wIYu3|g5vW`iDs6M)KDJ;R1rO1qtXYVFq&(iJDyk1ZLyw+$_ z9on%Y%WSlRv=?e10_ClvI_bt0rg1LN;+vy;pp`}~o5W_+BsH6~k9V`0L9i7#K!SP7 zP+K*j_L?q){d?yorvY+kqn_evJq6pH0h1POVb0UN&R4yL5Xk}$4es^yt)!b*M}@aT z?6DL@!&WiyZL#g1tZzFTQ2@G47>mR{#IfSjiR#mdlhn5hh4=g`@-sGgr&9x%Q07Yt;4$tv%Tq zu2XHz_0$#Uy;ra4rE=F?J2(yjCrJfnBL)d=qN8HdwvMwMa)FP?X1obsCSROuhbqC* zXupJrk*ORXDS|P;)gUu7H4ZcS=*QLlZT4t6a-$tQm-tzb_?e=5&V2@TR~X=B!n4gG z{Oua4*D9p?uOp;l@s!yMTWg0*Y_!7(9FcU>gqJEEOWsbE7zXNB)tR$I2=NqyAT)7W zl8h9>QAt|`DN0h{+qY_D;K;^N$$Xbs7V4R!9Ik>UAPE{8aCkdX!SeNA;P&j1MByIZ z3+~Vza?Po(Kw$`>6oa`SCVQ-ZpPul3HAKms@+X_@;^{a=`6dnK6P%&K#HmRF zeZfIJnq$#2aDKuRt~U_;yZU(ryq^0Ar%a&t_iwh{1J>pC3D>RpZma)FyKKO^1HUZf zV4C0A-PGy??YUtEj~qM zMb=vJ2WV1!RPKG#E<#`-vGGo_F%qZt{Vk1MazlGM85KiftJb5!f;j`2hxX{1>DXn?QF95_(40wdq=;wo?2HRv zEg@Dj=dn>a{X=`q`E}^qjzOpykBn|$$g|XHhw9ZL(BzR565kV7hN&f!IJ~g9s6zyD z)Vb)&Hz#e3>PGpi5AFYGXreLT1;H7KF-D6XqxEEC!0wVYMq6@>3H^Vy-8rJNT~7PR zu5isGWQVQ!cuh`)6XdRA_9=>xz>B3v*04! zDJNhH3|$Odj9MZakHMC>lqcZolGh%yN4qYT4<56N6U+WBoG{8{!?{Akc}XUmQ3YqW zhI3{1ha`T(Y@;v2ygg}Px>hrsAG+Ckoi413{2}ldG60fL(_VVdo?>HxW_bjN6>O{{G7_NidE|FizaiH;UrR z6+uL0;1kzbM z6hW09SO&aNV|J(B&o?F8@=-)Wz6kGf-F7G^7`Qnb?7~|(lR%aC*0hEFA^xv#8k`f2 z66rqt5r%d=YykDsj&;*2=U&iwSf&Dx@ZAtP$ppvBaoeH^#f^&xs$eMG91g3iKCQA_`;GiDx9yMUm zy{?SYRF%!esnhS;Cra*i0&?MQazWst{!dWsl!mib8ff{N4x(+5L~-Tb<|^L{;%wjWzXgDuL8j zQM;h6u{qYzQh}>99qVaBb4xnGJP?URXSZM(SrmhEGI5M3hIqk(-O8nr*v76U+=TK^ zv%KMlyrFOdry#T!K?oiiC5c8=0~XfvzhG&DAGjdJX7=Gds+Nzp=ZDUhjZSsilD}ef zn7A^(r2G$jC+htu`8~Gsv8?Y)DL-`Rs+r|F5xhGT$K17B2r8+u7U+I$_;%#Jp=UP_T^AP*Y zd{sMP<^MD7Q(_0-IPAdxuk@B=`1lqWwZEeeaE4>c;bK*UT*;K-=`{s#!OGy{Aj1_a z?L8mvSLyUl@comGq78~!3m@t>@UhM&lVNyHTN9p&xL_3lxJac_20477VuL~rg2Hs) z-eebXSY3R&3+zESMG7C>A^9|}ngRsoBWwCeFvuQ~+8|FJlKBBjORm6b{oWQ~!&8#s zf+P-SNtARS3|CK;Vu$=5%f_?eZWI9dv4?@Nixh-VZu|A`zTM& ztpa_FNP&S$4kA?H=BwG%)*%GJZ8F&jJSVvm)NfFesW=6_kkcefN~k-GUQD=5l42Md zmeu$Y8ioPsx#K{QD( zA`@{jq~DncgCXmTiAWgIvI-IN!m=<_)%a}gl#Mfpb78;{>O!Z#@ovs`;dzg8YtmOm z@9Urtf&{kbmie)^S&a)s!bGSG^8tjpFxNP$W>@~9noQ5?TTV6y8=)>qxl)v&_0GeLMBkU4#9N{wDmNw zF*YmhHk5Wge-N*BP?nAHjtr2p?z@*v70J%}xwB%jZBl25=z&?2=Y?5_${))s#&|1M z!iFixY{}+kSS=BTM}6ZkCVa$ekPUSHBI 10 >LDYA L.MSG2 >SYSCALL printf @@ -172,6 +173,7 @@ CS.RUN.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.ARP.GETCACHE >PUSHB (ZPPTR1) + >PUSHBI 13 >LDYA L.MSG1 phx >SYSCALL printf diff --git a/BIN/CAT.S.txt b/BIN/CAT.S.txt index 3b936fd9..2b8a8b90 100644 --- a/BIN/CAT.S.txt +++ b/BIN/CAT.S.txt @@ -59,7 +59,8 @@ CS.INIT dex bne .2 -.99 >LDYA L.MSG.USAGE +.99 >PUSHBI 0 + >LDYA L.MSG.USAGE >SYSCALL printf lda #K.E.SYN sec @@ -211,6 +212,8 @@ CS.RUN.PRINT sty BytesRead Y,A = Bytes read bra .2 .3 >PUSHW ZPPtr1 + + >PUSHBI 2 >LDYA L.MSG.CTRLCHAR >SYSCALL printf bcs .9 @@ -237,9 +240,9 @@ CS.RUN.PRINTNUM clc >LDA.G bLineNum bpl .8 - >LDYA.G LineNum + >PUSHW.G LineNum - >PUSHYA + >PUSHBI 2 >LDYA L.MSG.LINENUM >SYSCALL printf .8 rts diff --git a/BIN/EDIT.S.CTRL.txt b/BIN/EDIT.S.CTRL.txt index 3c025223..5d15110b 100644 --- a/BIN/EDIT.S.CTRL.txt +++ b/BIN/EDIT.S.CTRL.txt @@ -50,6 +50,7 @@ Ctrl.A ldy #PromptMode beq .8 >PUSHW ZPPTR1 + >PUSHBI 2 >LDYA L.MSG.HELPLINE >SYSCALL printf bcs .9 diff --git a/BIN/EDIT.S.SCRN.txt b/BIN/EDIT.S.SCRN.txt index 631369ca..9cc106b5 100644 --- a/BIN/EDIT.S.SCRN.txt +++ b/BIN/EDIT.S.SCRN.txt @@ -7,8 +7,8 @@ SCRN.Init ldy #ScreenH lda (pData),y dec >PUSHA + >PUSHBI 1 >LDYA L.SEQ.INIT - >SYSCALL printf bcs .9 lda #12 @@ -54,7 +54,7 @@ SCRN.UpdateTopBar .1 >LDYA L.MSG.NEWFILE .2 >PUSHYA - + >PUSHBI 2 >LDYA L.MSG.TOPBAR >SYSCALL printf @@ -96,7 +96,7 @@ SCRN.UpdateMain ldy #ScreenY ldy TmpByte jsr GotoXY bcs .9 - + >PUSHBI 0 >LDYA L.SEQ.CEOL >SYSCALL printf bcs .9 @@ -173,7 +173,7 @@ SCRN.UpdateLineAtALenY .3 sec jsr SCRN.UpdateAttrC bcs .9 - + >PUSHBI 0 >LDYA L.SEQ.CEOL >SYSCALL printf bcs .9 @@ -186,7 +186,7 @@ SCRN.UpdateAttrC bcc .1 bit bSelected bpl .8 - + >PUSHBI 0 >LDYA L.SEQ.NORM >SYSCALL printf bcs .9 @@ -195,7 +195,7 @@ SCRN.UpdateAttrC .1 bit bSelected bmi .8 - + >PUSHBI 0 >LDYA L.SEQ.INV >SYSCALL printf bcs .9 @@ -212,11 +212,11 @@ SCRN.UpdateStatusBar ldy #ScreenH lda (pData),y >PUSHA - + >PUSHBI 2 >LDYA L.MSG.GOTOXY >SYSCALL printf bcs .9 - + >PUSHBI 0 >LDYA L.SEQ.INV >SYSCALL printf bcs .9 @@ -246,7 +246,7 @@ SCRN.UpdateStatusBar >PUSHB (pData),y dey >PUSHB (pData),y - + >PUSHBI 6 >LDYA L.MSG.STATUSBAR >SYSCALL printf bcs .9 @@ -254,7 +254,7 @@ SCRN.UpdateStatusBar lda #58 jsr SCRN.ClearEOLA bcs .9 - + >PUSHBI 0 >LDYA L.SEQ.NORM >SYSCALL printf bcs .9 @@ -262,11 +262,13 @@ SCRN.UpdateStatusBar jmp SCRN.GotoCurXCurY .9 jmp Ctrl.Q -.2 cmp #PromptModeHelp +.2 eor #PromptModeHelp beq .3 >PUSHW pData + lda #2 -.3 ldy #ScreenH +.3 >PUSHA + ldy #ScreenH lda (pData),y jsr SCRN.InvLineA bcs .9 @@ -290,6 +292,7 @@ SCRN.UpdateStatusBarErrA .1 lda #$ff >PUSHA + >PUSHBI 1 >LDYA L.MSG.STATUSBAR.E >SYSCALL printf bcs .9 @@ -319,10 +322,11 @@ SCRN.InvLineA sta .2+1 >PUSHA lda .2+1 >PUSHA + >PUSHBI 2 >LDYA L.MSG.GOTOXY >SYSCALL printf bcs .9 - + >PUSHBI 0 >LDYA L.SEQ.INV >SYSCALL printf bcs .9 @@ -344,6 +348,7 @@ SCRN.InvLineA sta .2+1 >PUSHA .2 lda #$ff >PUSHA + >PUSHBI 2 >LDYA L.MSG.GOTOXY >SYSCALL printf @@ -364,7 +369,7 @@ GotoXY txa inc inc >PUSHA - + >PUSHBI 2 >LDYA L.MSG.GOTOXY >SYSCALL printf bcs .9 @@ -508,7 +513,7 @@ SCRN.scrollUp ldy #CurX inc inc >PUSHA - + >PUSHBI 2 >LDYA L.SEQ.SCROLLUP >SYSCALL printf bcs .9 @@ -543,7 +548,7 @@ SCRN.scrollDn ldy #CurX inc inc >PUSHA - + >PUSHBI 2 >LDYA L.SEQ.SCROLLDN >SYSCALL printf bcs .9 diff --git a/BIN/EDIT.S.txt b/BIN/EDIT.S.txt index 5421ef2a..94f4aa70 100644 --- a/BIN/EDIT.S.txt +++ b/BIN/EDIT.S.txt @@ -130,7 +130,8 @@ CS.INIT lda #$ff clc .9 rts *-------------------------------------- -CS.RUN >LDYA L.SEQ.DETECT +CS.RUN >PUSHBI 0 + >LDYA L.SEQ.DETECT >SYSCALL printf Send Query for term W & H bcs .9 @@ -186,7 +187,8 @@ CS.QUIT ldy #hBuffer beq .8 >SYSCALL FreeMem -.8 >LDYA L.SEQ.RESET +.8 >PUSHBI 0 + >LDYA L.SEQ.RESET >SYSCALL printf .9 rts *-------------------------------------- diff --git a/BIN/FORMAT.S.txt b/BIN/FORMAT.S.txt index 42f5f10f..df79663c 100644 --- a/BIN/FORMAT.S.txt +++ b/BIN/FORMAT.S.txt @@ -120,7 +120,8 @@ CS.INIT ldy #S.PS.ARGC clc rts -.99 >LDYA L.MSG.USAGE +.99 >PUSHBI 0 + >LDYA L.MSG.USAGE >SYSCALL printf lda #K.E.SYN sec @@ -136,13 +137,14 @@ CS.RUN jsr CS.RUN.InitCat bcs .9 >LDYA L.MSG.OK - >SYSCALL printf + >SYSCALL puts lda #0 sec rts .9 pha >PUSHA + >PUSHBI 1 >LDYA L.MSG.ERR >SYSCALL printf pla @@ -220,7 +222,7 @@ CS.RUN.BuildCat >PUSHEA.G DIB >PUSHEA.G VolName >PUSHW.G DIB+S.DIB.SIZE >PUSHW ZPPtr2 - + >PUSHBI 6 >LDYA L.MSG.INIT >SYSCALL printf .99 bcs .9 @@ -320,7 +322,7 @@ OptionVars .DA #bLL,#bLL MSG.USAGE .AS "Usage : FORMAT [VOLUME.NAME]\r\n" .AS " -L : Low-Level Format\r\n" .AZ " -1-9 : Catalog Size (Blocks)\r\n" -MSG.OK .AZ "[OK]\r\n" +MSG.OK .AZ "[OK]" MSG.ERR .AZ "[%h]\r\n" MSG.INIT .AZ "Formatting %s (%D Blks),Volname:%s..." *-------------------------------------- diff --git a/BIN/LS.S.txt b/BIN/LS.S.txt index b51f3257..be57080b 100644 --- a/BIN/LS.S.txt +++ b/BIN/LS.S.txt @@ -162,8 +162,7 @@ CS.RUN >SYSCALL GetChar sec .99 rts *-------------------------------------- -CS.RUN.DEV ldy #bLong - lda (pData),y +CS.RUN.DEV >LDA.G bLong bpl CS.RUN.DIR ldy #S.STAT.P.DEVBLOCKS+1 @@ -181,6 +180,7 @@ CS.RUN.DEV ldy #bLong >PUSHB (ZPFileStat),y >PUSHW ZPFileName + >PUSHBI 8 >LDYA L.MSG.DEVEXT >SYSCALL printf bcs .9 @@ -210,8 +210,10 @@ CS.RUN.DIR >LDA.G bAllmostAll bmi .4 >PUSHW ZPFileName + >PUSHBI 2 >LDYA L.MSG.DIR >SYSCALL printf + bcs .9 ldy #0 @@ -240,6 +242,7 @@ CS.RUN.DIR >LDA.G bAllmostAll >PUSHEA.G MOD File Mod >PUSHW ZPFileName + >PUSHBI 8 >LDYA L.MSG.DIREXT >SYSCALL printf bcs .9 @@ -270,6 +273,7 @@ CS.RUN.FILE ldy #bLong bmi .8 >PUSHW ZPFileName + >PUSHBI 2 >LDYA L.MSG.FILE >SYSCALL printf bcs .9 @@ -310,6 +314,7 @@ CS.RUN.FILE ldy #bLong >PUSHYA Type >PUSHW ZPFileName + >PUSHBI 16 >LDYA L.MSG.FILEEXT >SYSCALL printf bcs .9 @@ -401,6 +406,7 @@ CS.RUN.ENTER.MSG lda (pData),y >SYSCALL GetMemPtr >PUSHYA + >PUSHBI 2 >LDYA L.MSG.ENTER >SYSCALL printf rts diff --git a/BIN/LSDEV.S.txt b/BIN/LSDEV.S.txt index 1f7874c7..e7ea3c20 100644 --- a/BIN/LSDEV.S.txt +++ b/BIN/LSDEV.S.txt @@ -42,7 +42,7 @@ CS.INIT clc rts *-------------------------------------- CS.RUN >LDYA L.MSG0 - >SYSCALL printf + >SYSCALL puts >LDA.G DEV.ID @@ -92,12 +92,11 @@ DumpFD ldy #S.FD.DEV.DRVPTR+1 lda /S.FD.DEV.NAME adc ZPPTR1+1 - >PUSHYA - >LDA.G DEV.ID - >PUSHA + >PUSHB.G DEV.ID + >PUSHBI 5 >LDYA L.MSG1 >SYSCALL printf rts @@ -105,8 +104,7 @@ DumpFD ldy #S.FD.DEV.DRVPTR+1 DumpDIB >LDA.G DEV.DIB+S.DIB.S bpl .1 char device... - lda #0 - >PUSHA + >PUSHBI 0 >PUSHB.G DEV.DIB+S.DIB.SIZE+2 >PUSHB.G DEV.DIB+S.DIB.SIZE+1 @@ -140,10 +138,13 @@ DumpDIB >LDA.G DEV.DIB+S.DIB.S >PUSHEA.G DEV.SFLAGS >LDA.G DEV.DIB+S.DIB.S bpl .4 - + + >PUSHBI 12 >LDYA L.MSG2.B bra .8 -.4 >LDYA L.MSG2.C + +.4 >PUSHBI 8 + >LDYA L.MSG2.C .8 >SYSCALL printf rts @@ -159,7 +160,7 @@ CS.QUIT clc rts *-------------------------------------- CS.END -MSG0 .AZ "ID Name Addr. Status Typ/Sub IDString Version Size (BLK)\r\n" +MSG0 .AZ "ID Name Addr. Status Typ/Sub IDString Version Size (BLK)" MSG1 .AZ "%03d %7s $%H " MSG2.B .AZ "%s $%h/$%h %16S %03d.%03d %10u" MSG2.C .AZ "%s $%h/$%h %16S %03d.%03d n/a" diff --git a/BIN/MEM.S.txt b/BIN/MEM.S.txt index d536895d..55a97659 100644 --- a/BIN/MEM.S.txt +++ b/BIN/MEM.S.txt @@ -62,7 +62,7 @@ CS.RUN >LDYA L.MemStat >PUSHW MemStat+S.MSTAT.MH >PUSHW MemStat+S.MSTAT.MF >PUSHW MemStat+S.MSTAT.ML - + >PUSHBI 8 >LDYA L.MSG.Stat >SYSCALL printf *-------------------------------------- @@ -80,7 +80,7 @@ CS.RUN >LDYA L.MemStat >PUSHW MemStat+S.MSTAT.XH >PUSHW MemStat+S.MSTAT.XF >PUSHW MemStat+S.MSTAT.XL - + >PUSHBI 8 >LDYA L.MSG.Stat >SYSCALL printf *-------------------------------------- @@ -98,7 +98,7 @@ CS.RUN >LDYA L.MemStat >PUSHW MemStat+S.MSTAT.DH >PUSHW MemStat+S.MSTAT.DF >PUSHW MemStat+S.MSTAT.DL - + >PUSHBI 8 >LDYA L.MSG.Stat >SYSCALL printf diff --git a/BIN/MEMDUMP.S.txt b/BIN/MEMDUMP.S.txt index e1a5a7ab..7a3fafc2 100644 --- a/BIN/MEMDUMP.S.txt +++ b/BIN/MEMDUMP.S.txt @@ -108,18 +108,22 @@ CS.RUN >SYSCALL GetChar .10 >PUSHB.G MEM.COUNT >PUSHB.G USED.COUNT + >PUSHBI 2 >LDYA L.MSG2 >SYSCALL printf >PUSHW.G MemStat+S.MSTAT.MH + >PUSHBI 2 >LDYA L.MSG3 >SYSCALL printf >PUSHW.G MemStat+S.MSTAT.MF + >PUSHBI 2 >LDYA L.MSG4 >SYSCALL printf >PUSHW.G MemStat+S.MSTAT.ML + >PUSHBI 2 >LDYA L.MSG5 >SYSCALL printf @@ -132,6 +136,7 @@ CS.RUN >SYSCALL GetChar ply >PUSHYA + >PUSHBI 2 >LDYA L.MSG.FREE >SYSCALL printf lda #0 @@ -139,18 +144,14 @@ CS.RUN >SYSCALL GetChar rts *-------------------------------------- CS.RUN.PRINTMEM ldy #S.MEM.LEN+1 - lda (ZPPTR1),y - >PUSHA - dey - lda (ZPPTR1),y - >PUSHA + + ldx #4 - ldy #S.MEM.PTR+1 - lda (ZPPTR1),y +.13 lda (ZPPTR1),y >PUSHA dey - lda (ZPPTR1),y - >PUSHA + dex + bne .13 ldy #S.MEM.REFCNT lda (ZPPTR1),y @@ -179,8 +180,7 @@ CS.RUN.PRINTMEM ldy #S.MEM.LEN+1 >PUSHEA.G MEM.FLAGS - >LDA.G MEM.COUNT - >PUSHA + >PUSHB.G MEM.COUNT lda (ZPPTR1) Get flags bpl .12 @@ -190,15 +190,17 @@ CS.RUN.PRINTMEM ldy #S.MEM.LEN+1 >SYSCALL GetPSStatus bcc .12 + >PUSHBI 0 >LDYA L.MSG1.INV >SYSCALL printf -.12 >LDYA L.MSG1 +.12 >PUSHBI 9 + >LDYA L.MSG1 >SYSCALL printf lda (ZPPTR1) and #S.MEM.F.CODE - bne .7 + bne CS.RUN.PRINTMEM.BIN ****** DATA ldy #S.MEM.PTR @@ -224,8 +226,9 @@ CS.RUN.PRINTMEM ldy #S.MEM.LEN+1 >PUSHW ZPPTR2 String tya Len >PUSHA + >PUSHBI 3 >LDYA L.MSG1.STR - bra .8 + bra CS.RUN.PRINTMEM.EXIT .2 ldy #15 @@ -233,16 +236,21 @@ CS.RUN.PRINTMEM ldy #S.MEM.LEN+1 dey bpl .3 + >PUSHBI 16 >LDYA L.MSG1.HEX - bra .8 -****** BIN -.7 ldy #S.MEM.BIN + bra CS.RUN.PRINTMEM.EXIT + +CS.RUN.PRINTMEM.BIN + + ldy #S.MEM.BIN lda (ZPPTR1),y >SYSCALL GetMemPtr >PUSHYA + >PUSHBI 2 >LDYA L.MSG1.BIN -.8 >SYSCALL printf +CS.RUN.PRINTMEM.EXIT + >SYSCALL printf >INC.G LINE.COUNT cmp #PAGELEN diff --git a/DRV/CONSOLE.DRV.S.txt b/DRV/CONSOLE.DRV.S.txt index bbaf42fe..5681ba4d 100644 --- a/DRV/CONSOLE.DRV.S.txt +++ b/DRV/CONSOLE.DRV.S.txt @@ -32,7 +32,7 @@ L.FD.DEV .DA FD.DEV .DA 0 End Of Reloc Table *-------------------------------------- Dev.Detect >LDYA L.MSG.DETECT - >SYSCALL printf + >SYSCALL puts >PUSHWI DRV.END >PUSHWI DRV.CS.END @@ -47,7 +47,7 @@ Dev.Detect >LDYA L.MSG.DETECT .9 rts CS.END -MSG.DETECT .AZ "Apple IIe/IIc 80 Col Driver.\r\n" +MSG.DETECT .AZ "Apple IIe/IIc 80 Col Driver." *-------------------------------------- FD.DEV .DA #S.FD.T.CDEV .DA #0 HANDLER diff --git a/DRV/DHGR.DRV.S.txt b/DRV/DHGR.DRV.S.txt index 24d8ea94..08786e13 100644 --- a/DRV/DHGR.DRV.S.txt +++ b/DRV/DHGR.DRV.S.txt @@ -63,7 +63,7 @@ L.MSG.DETECT.80C .DA MSG.DETECT.80C .DA 0 End Of Reloc Table *-------------------------------------- Dev.Detect >LDYA L.MSG.DETECT - >SYSCALL printf + >SYSCALL puts lda MACHID and #MACHID.T @@ -120,15 +120,15 @@ Dev.Detect >LDYA L.MSG.DETECT >LDYA L.MSG.DETECT.80C -.3 >SYSCALL printf +.3 >SYSCALL puts clc rts *-------------------------------------- CS.END -MSG.DETECT .AZ "Apple IIe/IIc DHGR Driver.\r\n" -MSG.DETECT.IIC .AZ "Apple //c detected, Assuming 'Le Chat Mauve' Mode.\r\n" -MSG.DETECT.EVE .AZ "'Le Chat Mauve EVE' Board Detected.\r\n" -MSG.DETECT.80C .AZ "No Specific H/W Found, Assuming 80c Mode.\r\n" +MSG.DETECT .AZ "Apple IIe/IIc DHGR Driver." +MSG.DETECT.IIC .AZ "Apple //c detected, Assuming 'Le Chat Mauve' Mode." +MSG.DETECT.EVE .AZ "'Le Chat Mauve EVE' Board Detected." +MSG.DETECT.80C .AZ "No Specific H/W Found, Assuming 80c Mode." *-------------------------------------- * Device Header (16 Bytes) *-------------------------------------- diff --git a/DRV/UTHERNET.DRV.S.txt b/DRV/UTHERNET.DRV.S.txt index ae3aff01..b31cb846 100644 --- a/DRV/UTHERNET.DRV.S.txt +++ b/DRV/UTHERNET.DRV.S.txt @@ -77,7 +77,7 @@ Dev.Detect >STYA ARGS bne .1 >LDYA L.MSG.DETECT.KO - >SYSCALL printf + >SYSCALL puts lda #MLI.E.NODEV sec @@ -101,7 +101,9 @@ Dev.Detect >STYA ARGS bcs .9 .8 >PUSHW L.FD.DEV.NAME + >PUSHBI 2 >LDYA L.MSG.DETECT.OK + >SYSCALL printf >PUSHWI DRV.END >PUSHWI DRV.CS.END @@ -149,9 +151,9 @@ Dev.ParseArgs >LDYA ARGS *-------------------------------------- CS.END ARGS .BS 2 -MSG.DETECT .AZ "UtherNet/CS8900A Driver.\r\n" +MSG.DETECT .AZ "UtherNet/CS8900A Driver." MSG.DETECT.OK .AZ "UtherNet/CS8900A Installed As Device : %s\r\n" -MSG.DETECT.KO .AZ "Hardware Not Found.\r\n" +MSG.DETECT.KO .AZ "Hardware Not Found." SSCANF.MAC .AZ "%h:%h:%h:%h:%h:%h" *-------------------------------------- FD.DEV .DA #S.FD.T.CDEV diff --git a/SBIN/GETTY.S.txt b/SBIN/GETTY.S.txt index f6163b33..a87d5da9 100644 --- a/SBIN/GETTY.S.txt +++ b/SBIN/GETTY.S.txt @@ -78,7 +78,7 @@ CS.INIT ldy #S.PS.ARGC rts .90 >LDYA L.MSG.USAGE - >SYSCALL printf + >SYSCALL puts lda #0 sec .9 rts @@ -118,6 +118,7 @@ CS.RUN.LOOP .4 jsr Wait.Timeout bcc .1 >PUSHWI KVER + >PUSHBI 2 >LDYA L.MSG.GREETINGS >SYSCALL printf @@ -243,7 +244,7 @@ Wait.TimeOut sec .9 rts *-------------------------------------- CS.END -MSG.USAGE .AZ "Usage : GETTY \r\n" +MSG.USAGE .AZ "Usage : GETTY " MSG.TELNETOPT .DA #IAC,#WILL,#TELOPT.BINARY .DA #IAC,#DO,#TELOPT.LINEMODE .DA #IAC,#SB,#TELOPT.LINEMODE,#SB.SEND,#0,#IAC,#SE diff --git a/SBIN/INSDRV.S.txt b/SBIN/INSDRV.S.txt index f8210330..a00603bd 100644 --- a/SBIN/INSDRV.S.txt +++ b/SBIN/INSDRV.S.txt @@ -44,6 +44,7 @@ CS.INIT ldy #S.PS.ARGC >SYSCALL GetArg >PUSHYA + >PUSHBI 2 >LDYA L.MSG.LOAD >SYSCALL printf @@ -58,7 +59,7 @@ CS.INIT ldy #S.PS.ARGC rts .9 >LDYA L.MSG.HELP - >SYSCALL printf + >SYSCALL puts lda #0 tell TSKMGR that all done ok, but sec we do not want to stay in memory .99 rts @@ -71,7 +72,7 @@ CS.QUIT clc rts *-------------------------------------- CS.END -MSG.HELP .AZ "Usage: insdrv file.drv \r\n" +MSG.HELP .AZ "Usage: insdrv file.drv " MSG.LOAD .AZ "INSDRV:Loading %s...\r\n" *-------------------------------------- MAN diff --git a/SBIN/KCONFIG.S.txt b/SBIN/KCONFIG.S.txt index 844b9f1c..1fb120d1 100644 --- a/SBIN/KCONFIG.S.txt +++ b/SBIN/KCONFIG.S.txt @@ -67,28 +67,31 @@ CS.RUN >LDYA L.FILENAME >SYSCALL ExpandStr txa >STA.G hFileName - + >PUSHBI 0 >LDYA L.MSG.TOPBAR >SYSCALL printf jsr CS.RUN.Load bcs .1 + >PUSHBI 0 >LDYA L.MSG.TOPBAR.OK bra .2 -.1 >LDYA L.MSG.TOPBAR.KO +.1 >PUSHBI 0 + >LDYA L.MSG.TOPBAR.KO .2 >SYSCALL printf - + >PUSHBI 0 >LDYA L.MSG.KCONF >SYSCALL printf >LDYAI A2osX.HZ jsr CS.RUN.DumpConfYA - + >PUSHBI 0 >LDYA L.MSG.STATUSBAR >SYSCALL printf -CS.RUN.REPaint >LDYA L.MSG.FCONF +CS.RUN.REPaint >PUSHBI 0 + >LDYA L.MSG.FCONF >SYSCALL printf >LDYA ZPCfgPtr @@ -107,7 +110,9 @@ CS.RUN.Loop >SLEEP jsr CS.RUN.Save bcc .8 >PUSHA + >PUSHBI 0 >LDYA L.MSG.QUIT.ERR + >SYSCALL printf bra .9 .1 cmp #20 Ctrl-T @@ -147,11 +152,13 @@ CS.RUN.Loop >SLEEP lda (ZPCfgPtr),y eor #$FF sta (ZPCfgPtr),y - bra CS.RUN.REPaint + jmp CS.RUN.REPaint -.8 >LDYA L.MSG.QUIT -.9 >SYSCALL printf - lda #0 +.8 >PUSHBI 0 + >LDYA L.MSG.QUIT + >SYSCALL printf + +.9 lda #0 sec rts *-------------------------------------- @@ -245,7 +252,7 @@ CS.RUN.DumpConfYA >STYA ZPTmp1 >PUSHB (ZPTmp1) - + >PUSHBI 1 >LDYA L.MSG.HZ >SYSCALL printf @@ -258,6 +265,7 @@ CS.RUN.DumpConfYA .10 >LDYA L.MSG.ENABLED .12 >PUSHYA + >PUSHBI 2 >LDYA L.MSG.CHROOT >SYSCALL printf @@ -270,6 +278,7 @@ CS.RUN.DumpConfYA .13 >LDYA L.MSG.ENABLED .14 >PUSHYA + >PUSHBI 2 >LDYA L.MSG.PMODE >SYSCALL printf @@ -298,7 +307,7 @@ CS.RUN.DumpConfYA sec sbc #8 >PUSHA Slot - + >PUSHBI 3 >LDYA L.MSG.SLOT >SYSCALL printf @@ -307,6 +316,7 @@ CS.RUN.DumpConfYA cpy #16 bne .1 + >PUSHBI 0 >LDYA L.MSG.PROMPT >SYSCALL printf diff --git a/SBIN/LOGIN.S.txt b/SBIN/LOGIN.S.txt index de347cff..cc56403a 100644 --- a/SBIN/LOGIN.S.txt +++ b/SBIN/LOGIN.S.txt @@ -49,6 +49,7 @@ CS.RUN lda #0 ldy #hPASSWORD sta (pData),y + >PUSHBI 0 >LDYA L.MSG.LOGIN >SYSCALL printf bcs .9 @@ -67,6 +68,7 @@ CS.RUN lda #0 jsr INPUT.LINEIN bcc .1 + >PUSHBI 0 >LDYA L.MSG.PASSWORD >SYSCALL printf bcs .9 diff --git a/SBIN/SHELL.S.CL.txt b/SBIN/SHELL.S.CL.txt index f9d0bf93..ca89d95e 100644 --- a/SBIN/SHELL.S.CL.txt +++ b/SBIN/SHELL.S.CL.txt @@ -3,11 +3,14 @@ PREFIX /A2OSX.BUILD AUTO 4,1 .LIST OFF *-------------------------------------- -CL.PrintPrompt >LDYA L.ENV.PS1 +CL.PrintPrompt >PUSHBI 0 + >LDYA L.ENV.PS1 >SYSCALL GetEnv >SYSCALL ExpandStr phx >SYSCALL printf + + >PUSHBI 0 >LDYA L.MSG.PROMPT >SYSCALL printf plx diff --git a/SBIN/SHELL.S.CMD.txt b/SBIN/SHELL.S.CMD.txt index e47af92e..fa228e22 100644 --- a/SBIN/SHELL.S.CMD.txt +++ b/SBIN/SHELL.S.CMD.txt @@ -275,8 +275,8 @@ Cmd.Exec.EXT.SEP Cmd.Exec.PWD ldy #S.PS.hPREFIX lda (pPs),y >SYSCALL GetMemPtr - >SYSCALL printf - jmp Cmd.Exec.ECHO.CR + >SYSCALL puts + jmp Cmd.Exec.Done *-------------------------------------- Cmd.Exec.CD lda (ZPPTR2) bne .1 @@ -390,6 +390,7 @@ Cmd.Exec.SET lda (ZPPTR2) >PUSHW ZPPTR2 Push value >PUSHW ZPPTR1 Push name + >PUSHBI 4 >LDYA L.MSG.PRINTENV >SYSCALL printf bcs .9 @@ -449,6 +450,8 @@ Cmd.Exec.SETVAR ldy #0 >PUSHYA push value >PUSHW ZPPTR2 push name >LDYA L.MSG.PRINTENV + + >PUSHBI 4 >SYSCALL printf .8 clc @@ -474,24 +477,11 @@ Cmd.Exec.TIME clc >SYSCALL StrFTime >LDYA ZPCMDBuf - >SYSCALL printf - bcs Cmd.Exec.ECHO.END - bra Cmd.Exec.ECHO.CR + >SYSCALL puts + jmp Cmd.Exec.Done *-------------------------------------- -Cmd.Exec.ECHO lda (ZPPtr2) - beq Cmd.Exec.ECHO.CR - - >LDYA ZPPtr2 - >SYSCALL printf - -Cmd.Exec.ECHO.CR - lda #13 - >SYSCALL PutChar - bcs Cmd.Exec.ECHO.END - - lda #10 - >SYSCALL PutChar -Cmd.Exec.ECHO.END +Cmd.Exec.ECHO >LDYA ZPPtr2 + >SYSCALL puts jmp Cmd.Exec.Done *-------------------------------------- Cmd.Exec.READ lda (ZPPtr2) diff --git a/SBIN/SHELL.S.CSH.txt b/SBIN/SHELL.S.CSH.txt index 1c6c22d9..ece985ac 100644 --- a/SBIN/SHELL.S.CSH.txt +++ b/SBIN/SHELL.S.CSH.txt @@ -171,6 +171,7 @@ CSH.Run jsr CL.RESET beq .80 >PUSHW ZPCMDBuf + >PUSHBI 2 >LDYA L.MSG.ECHO >SYSCALL printf @@ -1200,6 +1201,7 @@ CSH.ErrorMsg >LDA.G CSH.hBuf .8 >PUSHW.G CSH.LineNum + >PUSHBI 2 >LDYA L.MSG.CSHERR >SYSCALL printf diff --git a/SBIN/SHELL.S.IO.txt b/SBIN/SHELL.S.IO.txt index 6449ebd6..acc0ecaf 100644 --- a/SBIN/SHELL.S.IO.txt +++ b/SBIN/SHELL.S.IO.txt @@ -37,6 +37,8 @@ IO.PrintErrMsg pha Save EC for PrintF .8 >PUSHW ZPPTR1 pla >PUSHA + + >PUSHBI 4 >LDYA L.MSG.ERROR >SYSCALL printf rts diff --git a/SBIN/SHELL.S.txt b/SBIN/SHELL.S.txt index 1bb5d8ec..54250bab 100644 --- a/SBIN/SHELL.S.txt +++ b/SBIN/SHELL.S.txt @@ -139,6 +139,7 @@ CS.INIT jsr SetPWD bcs .9 >PUSHWI KVER + >PUSHBI 2 >LDYA L.MSG.GREETINGS >SYSCALL printf diff --git a/SYS/KERNEL.S.INIT.txt b/SYS/KERNEL.S.INIT.txt index e1e25325..aff6fb90 100644 --- a/SYS/KERNEL.S.INIT.txt +++ b/SYS/KERNEL.S.INIT.txt @@ -114,7 +114,7 @@ Kernel.Init3 sta SETALTZP jsr PS0.Init >LDYAI MSG.Init3 - >SYSCALL printf + >SYSCALL puts jsr CPU.Init.6502 jsr CPU.Init.Z80 @@ -135,6 +135,8 @@ Kernel.Init3 sta SETALTZP >SYSCALL GetMemPtr >PUSHYA + + >PUSHBI 2 >LDYAI MSG.Prefix >SYSCALL printf @@ -145,11 +147,12 @@ Kernel.Init3 sta SETALTZP bne .1 >LDYAI MSG.MMode - >SYSCALL printf + >SYSCALL puts >LDYAI STARTUP.SHELL bra .8 .1 >PUSHWI STARTUP.CMDLINE + >PUSHBI 2 >LDYAI MSG.Startup >SYSCALL printf @@ -165,13 +168,14 @@ Kernel.Init3 sta SETALTZP >SYSCALL FreeMem ...discard... >LDYAI MSG.Init3.OK - >SYSCALL printf + >SYSCALL puts >DEBUGOA jmp CORE.Run .9 >PUSHA + >PUSHBI 1 >LDYAI MSG.StartupErr >SYSCALL printf bra * No need to discard Expanded CMDLINE @@ -305,7 +309,7 @@ PS0.Init >LDYAI CORE.S.PS0 Select Process 0 (Kernel) .9 rts *-------------------------------------- CPU.Init.6502 >LDYAI MSG.CPU - >SYSCALL printf + >SYSCALL puts jsr Detect6502 A = CPU type sta A2osX.CPUTYPE @@ -316,7 +320,7 @@ CPU.Init.6502 >LDYAI MSG.CPU ldy MSG.CPUTYPE,x lda MSG.CPUTYPE+1,x - >SYSCALL printf + >SYSCALL puts lda MACHID and #MACHID.T @@ -324,7 +328,7 @@ CPU.Init.6502 >LDYAI MSG.CPU beq CPU.Init.Z80 >LDYAI MSG.CPU.SPEED - >SYSCALL printf + >SYSCALL puts stz A2osX.RANDOM16 stz A2osX.RANDOM16+1 @@ -383,12 +387,13 @@ CPU.Init.6502 >LDYAI MSG.CPU >PUSHA push CPU speed LO lda A2osX.CPUSPEED >PUSHA push CPU speed HI + >PUSHBI 2 >LDYAI MSG.CPU.SPEEDOK >SYSCALL printf rts *-------------------------------------- CPU.Init.Z80 >LDYAI MSG.Z80 - >SYSCALL printf + >SYSCALL puts jsr DetectZ80 bcs .9 @@ -399,12 +404,13 @@ CPU.Init.Z80 >LDYAI MSG.Z80 lda #A2osX.S.Z80 sta A2osX.S,x + >PUSHBI 1 >LDYAI MSG.Z80.OK >SYSCALL printf rts .9 >LDYAI MSG.Z80.KO - >SYSCALL printf + >SYSCALL puts rts *-------------------------------------- * Out: @@ -499,7 +505,7 @@ MemMgrInit >LDYAI Mem.MHiMem * if irq not handled, jmp (S.IrqMgrOldFFFE) *-------------------------------------- IrqMgrInit >LDYAI MSG.IRQ - >SYSCALL printf + >SYSCALL puts php sei @@ -530,7 +536,7 @@ IrqMgrInit >LDYAI MSG.IRQ >STYA GP.IrqH.JSR+1 >LDYAI MSG.IRQ.CLOCK - >SYSCALL printf + >SYSCALL puts clc rts @@ -546,7 +552,7 @@ IrqMgrInit >LDYAI MSG.IRQ >STYA GP.IrqH.JSR+1 >LDYAI MSG.IRQ.VBL - >SYSCALL printf + >SYSCALL puts clc rts @@ -557,7 +563,7 @@ IrqMgrInit >LDYAI MSG.IRQ sta SYS.BASL0+38 >LDYAI MSG.IRQ.POLL - >SYSCALL printf + >SYSCALL puts clc rts @@ -719,7 +725,7 @@ IrqMgrInit.HZ2Tick rts *-------------------------------------- DevMgrInit >LDYAI MSG.DEV - >SYSCALL printf + >SYSCALL puts lda DEVCNT sta DevMgrInit.DEVCNT @@ -869,6 +875,7 @@ DevMgrInit.AddBDev sta FD.BDEV+S.FD.DEV.NAME+3 SxDn >PUSHWI FD.BDEV+S.FD.DEV.NAME + >PUSHBI 2 >LDYAI MSG.BLKDEV >SYSCALL printf @@ -878,7 +885,7 @@ DevMgrInit.AddBDev rts *-------------------------------------- EvtMgrInit >LDYAI MSG.EVT - >SYSCALL printf + >SYSCALL puts lda #$A5 sta A2osX.TIMER16 @@ -891,14 +898,14 @@ EvtMgrInit >LDYAI MSG.EVT rts *-------------------------------------- FltMgrInit >LDYAI MSG.FLT - >SYSCALL printf + >SYSCALL puts stz Flt.Table clc rts *-------------------------------------- TskMgrInit >LDYAI MSG.TSK - >SYSCALL printf + >SYSCALL puts >LDYAI K.ENV.SIZE get a buffer for ENV >SYSCALL GetMem0 make sure blank!! @@ -992,36 +999,36 @@ MSG.KCREAD.KO .AZ "\nError While Reading Kernel Config File, Using Default.\n" MSG.Init2.OK .AZ "A2osX[Stage2]:Complete.\n" *-------------------------------------- SYSSCREEN.TOP .AZ "A2osX 0.92 System Screen" -MSG.Init3 .AZ "A2osX[Stage3]:Init\r\nPress Ctrl-D for Mantenance Mode.\r\n" -MSG.DEV .AZ "Device Manager...\r\n" +MSG.Init3 .AZ "A2osX[Stage3]:Init\r\nPress Ctrl-D for Mantenance Mode." +MSG.DEV .AZ "Device Manager..." MSG.BLKDEV .AZ " Adding : /DEV/%s\r\n" -MSG.IRQ .AZ "Interrupt Manager...\r\n" -MSG.IRQ.VBL .AZ " Mouse VBL IRQ Activated.\r\n" -MSG.IRQ.CLOCK .AZ " Clock Card IRQ Activated.\r\n" -MSG.IRQ.POLL .AZ " Polling Mode.\r\n" -MSG.EVT .AZ "Event Manager...\r\n" -MSG.FLT .AZ "Path Filter...\r\n" -MSG.TSK .AZ "Task Manager...\r\n" +MSG.IRQ .AZ "Interrupt Manager..." +MSG.IRQ.VBL .AZ " Mouse VBL IRQ Activated." +MSG.IRQ.CLOCK .AZ " Clock Card IRQ Activated." +MSG.IRQ.POLL .AZ " Polling Mode." +MSG.EVT .AZ "Event Manager..." +MSG.FLT .AZ "Path Filter..." +MSG.TSK .AZ "Task Manager..." MSG.Prefix .AZ "Root:%s\r\n" -MSG.MMode .AZ "Ctrl-D Pressed, entering Maintenance mode...\r\n" -MSG.Startup .AZ "Executing Kernel Startup Script...\r\nCmd:%s\r\n" +MSG.MMode .AZ "Ctrl-D Pressed, entering Maintenance mode..." +MSG.Startup .AZ "Executing Kernel Startup Script...\r\nCommand Line:%s\r\n" MSG.StartupErr .AZ "Failed : [$%h]\r\n" -MSG.Init3.OK .AZ "A2osX[Stage3]:Complete.\r\n" +MSG.Init3.OK .AZ "A2osX[Stage3]:Complete." *-------------------------------------- MSG.CPU .AZ "Checking CPU..." -MSG.CPU.SPEED .AZ "Detecting CPU Speed..." MSG.CPUTYPE .DA MSG.6502 .DA MSG.65C02 .DA MSG.65R02 .DA MSG.65816 -MSG.6502 .AZ "6502.\r\n" -MSG.65C02 .AZ "65C02.\r\n" -MSG.65R02 .AZ "65R02.\r\n" -MSG.65816 .AZ "65816.\r\n" +MSG.6502 .AZ "6502." +MSG.65C02 .AZ "65C02." +MSG.65R02 .AZ "65R02." +MSG.65816 .AZ "65816." +MSG.CPU.SPEED .AZ "Detecting CPU Speed..." MSG.CPU.SPEEDOK .AZ "%d.%02d Mhz.\r\n" MSG.Z80 .AZ "Detecting Z80 CPU..." MSG.Z80.OK .AZ "Detected In Slot %d.\r\n" -MSG.Z80.KO .AZ "Not Detected.\r\n" +MSG.Z80.KO .AZ "Not Detected." *-------------------------------------- DEV.SYS .AZ "/DEV/SYS" I.ENV.A2osX .AZ "A2OSX" diff --git a/SYS/KERNEL.S.MEM.txt b/SYS/KERNEL.S.MEM.txt index e0221794..7b6a465a 100644 --- a/SYS/KERNEL.S.MEM.txt +++ b/SYS/KERNEL.S.MEM.txt @@ -319,7 +319,7 @@ K.FreeMem tay sbc #0 >PUSHYA - + >PUSHBI 2 >LDYAI K.FreeMem.ERR >SYSCALL printf diff --git a/SYS/KERNEL.S.STDIO.txt b/SYS/KERNEL.S.STDIO.txt index 9e0a8fc8..cb6d504b 100644 --- a/SYS/KERNEL.S.STDIO.txt +++ b/SYS/KERNEL.S.STDIO.txt @@ -1,6 +1,16 @@ NEW PREFIX /A2OSX.BUILD AUTO 4,1 +*-------------------------------------- +*K.PrintF.PadL .BS 1 +*K.PrintF.PadC .BS 1 +*HEXBUF .BS 4 +*BCDBUF .BS 5 5, enough to handle 10 digits (32bits) +*-------------------------------------- +HEXBUF .EQ FAC +K.PrintF.PadL .EQ FAC+4 +K.PrintF.PadC .EQ FAC+5 +BCDBUF .EQ ARG */-------------------------------------- * # FPutC * Print A (char) to hFILE @@ -184,8 +194,6 @@ K.SPrintF >STYA pIOBuf Out Buffer bra K.PrintF.1 K.FPrintF jsr K.GetMemPtr A = hFILE - - >STYA pFD >PULLW ZPPtr1 format @@ -205,6 +213,8 @@ K.PrintF.0 >LDYAI K.IOBuf K.PrintF.1 stz K.S.IOCTL+S.IOCTL.BYTECNT stz K.S.IOCTL+S.IOCTL.BYTECNT+1 + stz PrintF.GetByte+1 + ldy #0 .1 lda (ZPPtr1),y @@ -261,9 +271,10 @@ K.PrintF.1 stz K.S.IOCTL+S.IOCTL.BYTECNT jsr PrintF.ESC ply bcc .1 - rts + bcs .99 -.8 jmp PrintF.Flush +.8 jsr PrintF.Flush + bra .99 .10 cmp #'\' bne .20 @@ -283,7 +294,16 @@ K.PrintF.1 stz K.S.IOCTL+S.IOCTL.BYTECNT .20 jsr PrintF.COut bcc .1 -.99 rts + +.99 php + pha + lda pStack + sec ByteCnt byte + adc (pStack) ... ByteCnt + sta pStack CC + pla + plp + rts *-------------------------------------- PrintF.ESC jmp (.1,x) .1 .DA PrintF.B,PrintF.BB @@ -300,14 +320,16 @@ PrintFTBL2.OUT .HS 08.1B.0C.0A.0D \b\e\f\n\r .DA #'\' \\ .DA #'%' \% *-------------------------------------- -PrintF.BB >PULLA +PrintF.BB jsr PrintF.GetByte + bcs PrintF.BB.RTS pha jsr PrintF.B pla bcc PrintF.B.1 PrintF.BB.RTS rts *-------------------------------------- -PrintF.B >PULLA +PrintF.B jsr PrintF.GetByte + bcs PrintF.BB.RTS PrintF.B.1 ldx #8 @@ -327,7 +349,10 @@ PrintF.I sec signed short PrintF.D clc unsigned short (BYTE) ldx #0 one byte - >PULLB HEXBUF + jsr PrintF.GetByte + bcs PrintF.BB.RTS + sta HEXBUF + stz HEXBUF+1 bra PrintF.DD.1 @@ -336,7 +361,13 @@ PrintF.II sec signed int PrintF.DD clc unsigned int (WORD) ldx #1 two bytes - >PULLW HEXBUF + jsr PrintF.GetByte + bcs PrintF.BB.RTS + sta HEXBUF + + jsr PrintF.GetByte + bcs PrintF.BB.RTS + sta HEXBUF+1 PrintF.DD.1 stz HEXBUF+2 stz HEXBUF+3 @@ -345,10 +376,18 @@ PrintF.DD.1 stz HEXBUF+2 PrintF.L sec signed long .HS 90 BCC PrintF.U clc unsigned long (DWORD) - ldx #3 4 bytes + + ldx #$ff - >PULLW HEXBUF - >PULLW HEXBUF+2 +.1 jsr PrintF.GetByte + bcs PrintF.BB.RTS + inx + sta HEXBUF,x + + cpx #3 + bne .1 + +* ldx #3 4 bytes PrintF.U.1 bcc PrintF.Hex2Dec unsigned, nothing to check @@ -463,16 +502,11 @@ PrintF.Hex2Dec ror .31+1 PrintF.E sec Force "E+12" .HS 90 BCC PrintF.F clc - lda pStack+1 - sta INDEX+1 - - lda pStack - sta INDEX - - clc - adc #5 - sta pStack - + + jsr PrintF.GetFloatPtrYA + bcs .9 + >STYA INDEX + ldx #ROM.SETFAC jsr GP.ROMCALL @@ -494,23 +528,28 @@ PrintF.F clc .9 rts *-------------------------------------- -PrintF.HH >PULLA +PrintF.HH jsr PrintF.GetByte + bcs PrintF.H.9 pha jsr PrintF.H pla bra PrintF.H.1 *-------------------------------------- -PrintF.H >PULLA +PrintF.H jsr PrintF.GetByte + bcs PrintF.H.9 PrintF.H.1 pha jsr PrintF.NN.1 pla bra PrintF.N.1 +PrintF.H.9 rts *-------------------------------------- -PrintF.N >PULLA +PrintF.N jsr PrintF.GetByte + bcs PrintF.H.9 PrintF.N.1 and #$0F bra PrintF.NN.2 -PrintF.NN >PULLA +PrintF.NN jsr PrintF.GetByte + bcs PrintF.H.9 PrintF.NN.1 lsr lsr lsr @@ -526,7 +565,13 @@ PrintF.S ldy #$ff CSTR .HS 2C bit abs PrintF.SS ldy #$00 PSTR - >PULLW ZPPtr2 + jsr PrintF.GetByte + bcs .9 + sta ZPPtr2 + + jsr PrintF.GetByte + bcs .9 + sta ZPPtr2+1 lda (ZPPtr2) if CSTR:last char=0, if PSTR:len=0 beq .8 @@ -571,6 +616,42 @@ PrintF.SS ldy #$00 PSTR .8 clc .9 rts *-------------------------------------- +PrintF.GetFloatPtrYA + lda PrintF.GetByte+1 + clc + adc #5 + cmp (pStack) + bcc .9 + + pha Save new Ptr + + lda PrintF.GetByte+1 +* sec + adc pStack + tay + + pla + sta PrintF.GetByte+1 + + lda pStack+1 +* clc + rts + +.9 sec + rts +*-------------------------------------- +PrintF.GetByte lda #$FF SELF MODIFIED LStack Ptr + cmp (pStack) + beq .9 CS + phy + tay + iny + lda (pStack),y + sty PrintF.GetByte+1 + ply +* clc +.9 rts +*-------------------------------------- PrintF.COut phy ldy K.S.IOCTL+S.IOCTL.BYTECNT @@ -705,16 +786,6 @@ K.GetC.I >LDYAI K.IOBuf bcs K.GetC.9 lda K.IOBuf K.GetC.9 rts -*-------------------------------------- -*K.PrintF.PadL .BS 1 -*K.PrintF.PadC .BS 1 -*HEXBUF .BS 4 -*BCDBUF .BS 5 5, enough to handle 10 digits (32bits) -*-------------------------------------- -HEXBUF .EQ FAC -K.PrintF.PadL .EQ FAC+4 -K.PrintF.PadC .EQ FAC+5 -BCDBUF .EQ ARG */-------------------------------------- * # SScanF * Read formatted data from string @@ -737,6 +808,7 @@ BCDBUF .EQ ARG * + %s : string * TODO : %10s * `>LDYA s` +* `>SYSCALL sscanf` * **Out:** * A = Number of arguments filled. *\-------------------------------------- @@ -1009,11 +1081,11 @@ K.FOpen.10 lda #S.FD.REG lda #$FF sta K.MLI.PARAMS+2 - lda #$0D + lda #C.CR sta K.MLI.PARAMS+3 >MLICALL MLINEWLINE -.8 lda #$ff Self Modified +.8 lda #$ff Self Modified, hFD clc rts CC