From 422da82da1b8504c557a0bc17e55eafa09b90d29 Mon Sep 17 00:00:00 2001 From: burniouf Date: Sun, 11 Jul 2021 10:56:44 +0200 Subject: [PATCH] EDIT:Several bugs fixed, mainly memleak & DLG --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes BIN/EDIT.S.CTRL.txt | 15 ++++--- BIN/EDIT.S.DLG.txt | 57 ++++++++++++++++--------- BIN/EDIT.S.FILE.txt | 90 +++++++++++++++++---------------------- BIN/EDIT.S.SCRN.txt | 1 + BIN/EDIT.S.txt | 54 +++++++++++------------ LIB/LIBCIFS.S.txt | 27 ++++++------ 7 files changed, 122 insertions(+), 122 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 6840584150b842cb92214cae9697ff029e5486f4..6b289dc0e6896bd17b0c1c67dd24d79bdcdb25e4 100644 GIT binary patch delta 37023 zcmaHU2Vj&%_V{f7l10f$ZHk(3#1V~R{Q%FL!B_taX4M|J_0+uC80-_=)X2cpf ziG~vmdIvTX?<@fYgLk$ZcY+16$A$_D|2Jhz5`X{mmd!Ww=FOWoZ{EE3=FPVof4>yC z5k4bl%6TJa z<(#pc@tp5+wp;JAer!D(_hsC=_%-p3$+yPKlkSTjj{i7bOejd`N$5=oPMVYGObky7 zO}Zgzed2FPDakXFuT1_&;@af1arD1<`0APynJc8mr(U1>TI%`K-&2>T?MQ33v{*VV zy_Wke4_Yo+OnBc9(nQ~*QG*Hl$0sJl3jEOz(&#iFv2Vt9pCitR1>%YsBgJBmZDhW< zBx+>NplQcA`NKA7hCd#Q8c7n5;?+M&6AK6D52M`^B6@MeXVba9Uxv|L=eE{A{qG>P zZ;&vk+c7?<-!Yz3KNu`N5H%P^{)r_2h~ysw`Nt$afdBcU^m0i87Jrfk>)wq!B5wB= zABrCNPJASDX- z8l3v8bgpC+U-PRpx==B5#9xe>IUT?;jtN9Gwk~Z-TlIifCW#$Zz)!rjTAThUuiP z7N5m``%Rjl1e)jDRrvI8(p-rGN1T_YnPDsjGM1o0+y3zo=x}GOIFt!MjpwC#;jx)5 z;_WtjY$oe*|M*~%`P%XAlCx#w(C4A^(xeCgf!PuN8atvHOrMc3NcF(c#TTT}PM{*0P!UHsDjsRrt~_%6h_qZh zvV1~$q;f*o`1$aqK@C|BS$0)+{S#ZoeYbIJW#W;P7C_k`Zm@2TEE7kw_RSGrKY7>5 zeY5FT3;BCkLjK*D1+{xVCx7laLqTRSNS_?~J!sfJa8YWUqnJr(QHrnHNM|B2H09pG z?ylZ~#U++fM~}U=-I2cxsnyb5D;v9eEwhl|FWuGIvL2ZN@U>!|K`jKrbK80p86?Fo z+f_!~QK3@meYH}{EZo)8jRc)E`EYz1O3>r>-=*<^2I;Q3)r)J(3d(z}NN>ca?=ICj zO>XptV5qkj9j`rm#=|~8X?&@h+hlEh+t|rHNqz#kqYHMofP3$ac=xInw zU5|_r(p^_iCp*%OR~^Ng#8^>eG=r@ztf{mt?rdu4!C#lF{L6h~-89EBnoaRi3PiY2 zu%@}Zy|t&Hp$iEKgazx6F_GY0*Bet?yvS0JUy}ykwJ10VANwHJG}Dwkt#OgP6bUK3 zajI8isNjv$Xybg7g*8q&0n3O<^GC|@lps@ekgnGrj;_oRNM%1GlzaLcXKPP^h3Z%j! z2|gm5&>!)i2*S@^lKM%u;nyxnV}x&0TL8j-3!bZSUgAX(Ic;cW4hv=PIjm-e4~ zd~|dakSc+$(T(TqQ8VksCuyzSRZHq0-#^aO?D@V6bPR)N|9R5rp6g{HPV>yO8-Jw5 zv^~R~?{2^U+zM#FVRX^Cy`#gALr25kok9~*+F*E?JQJ>Xi11)~hEf9i0HbsC&jIJn ztna(@I3e=f-Wvu)U3PEEE*3HLxG z{#mmmC?w5>1=7|$6GkjjGCl47zuf`6c_c?*L)w4NJSe<g`W*A<|F#LEu;A(16W zR%lnitN`0#D?7Jg$9N0Ox4GV2ze0SN%F*5pbg&aD=>O>G#-Ax$K&l4ObHg+FRQ?Pi z27N)%9i|Hfcri(E3XO8%e`K}n23>tTgZ`i01?bZ?P>lY_Zj&A()hXjheNO$b zlmHCMNW-9~&&-}Z`|&>p?)~Sh2NiPJg{ulku|hOjw}0W?h@hXajPA860qyo5>yI2B z)9gPpx_AE>(#^!tv2&vv|C=qDdAdc?>(7WX9M@qZu^rANSpRLy-u~ZvF$t zb~72B5=wzz)DL;E)9?&y4Q5u;UDlbjUJt&x{@oI=}H>Wy6PeoEhB;pBDIR{O495 z^1Sf{KyhaD-n-5aoB?Ofk8L}1VdGYYSt!HUAuChytp}fR$fDd20nIY2CM0eU4GWuo z==+h`b^pdy%`%g8NfzGFEQ>SWZiD@g8+NcQf#spf2FoKBA8eMDMn0UqdyRN3dr%^d zXOB3Eb?MeUU;vnL_$t}FG~d04(&#RCD3yK)u7+r1tT*`x55 zRWgU}+U)J`)yMv7%^0*2dt?8&d2paz7AxdrZ$C~fx}g@C5~sGy%mH9DsImc436_eu z1lP37(j#At9Wm^=B)*Y3GWX1-Grx~X&;0TF#j#H}ChtZ>|KZ*3vbfnhW9b(AZ1zUG zrxP1BF~k>Rw=2bGv+Y?~D~NHjVbl4LkiH90^5_K^D3)}{(&|&n1`IA>;p#&PjGasT+^K*_WnF$*!Jt4al@Yva7oXHgLYPR`)R2%Q)=i z1ojFE7#09~<)6b|#bDL-l3gpi8hS06NYMbz)GH;H?DPTX#fkhICA&JHE+)3niWE&y z8{&Xk>%gD&-OTZ=^5AQM7XGag%S=qH4KN){*ZesxZJh4agzk12!}wL%(2R(Xzs}j&281^Z>fRH3WBKZ{6xnyQ3Yc*8*6( zqt}v-6xTtuW}SC6*h=d4oc?qtQfvSS zC7vF)cD8gP;U?gF3!xtxn>I?Qr3Jm0w>LS~-O^Ih+U7v&Ug*SeZLh_K6gLBy{uaru zxwXq{3-j&v-V#o|Y?EZy!ArNuV8c$;${PbrvzsY80XA5InJxd+=s`A*5e zPPug`THbZgx>MdI3EGEHiMsnHA5COj#{8<~&G_kixl`7G^gPV5CZ;;@P4bn_!kpzWamSJ1H zY7IUuHQSEEKP~Ai-)aSm z(z3FnqvuFZ+Zc+Lp~|YF{JLTbY4OJDhHD(8?r1}2^Sa~R&hEyyQK%escQ>{kZ+G-` zAMfdId7A(cYK|g<0=1lIv5hq}t!`~UM#{R6p)e%^&?efS?O115M>9;{o6vjuab#4X zp2qH$S@a)4;i%8I@?m^fvSZ+buCy__{*gG1UP{C8AL1V8a zqp!8Ox3D%9UtFcMIrpPojjKC*V~QOqCz?VJ}{)wn+lm@?wpKMi{ov%%8c1!t; zs$NG|S4S5Le1rGZ($G~7>UosGf}^ZC3aFVUyRvv)YY)=D33Z)qE(Y4Gs;ZIVEudF@ zj8CQ&`M!<7Zzk&3GzQIyqr5bv*KQ#mW=(NzaUBXc!OMvQjZe)9HDJ-0C*%wNM!UKl zjY#`0^6-8u^}yd_;|YJ?RpVl5AJDfvzq}WitN#Em+Nsjje(0h9Ka@4g^Ltmonyi7H z<-cw+HUERo$o|c$l8|tU39RqOgnruVC#=`dPx1GySs{|oaCL+>!YO=?b~SXjA@y0t z3}BS;OWF|;@|Dybchq%sqTsKlme%$(^sMPdzTc28$WVoE(JtE6cdV=62{OP%i_7co zYHM2G8{=Lw>hIYkS#q2x;72kFQVUXr)IYgukp7%kML|R3HETMN`WH|2Z?5XXw${#q zj)tx#q(1Mi*8T3PCL3gB!)n+h|8Um^UgEVyuz!M>su42)EICLkB|9vk$0dJyIoYr$ z$2ZgpzTwV71{Ic^Rq8BC9|>WeuY`};QfM!PMcLoj2Aok#7-#(0E+68LFK<%@&j|o5 zER3TFgl#(@NWxZlp{1|}nKV!frp07@NTCJDR2?2^Q>K*YnK_WySzSwvJFUTc-!HBz zL29F?3llUH%wP>QtVil#h8#w02*Eo(k?R+SdLY99GAP_N>=;UpZzPP5iIT`h5fCLQ zq|0m@2?pt7pl{du>Tay)XmX&?SiE($G9)e@#?=XdnS{#{HeK$xtal#rOW^&dgW;42 z-9;qfBde9+l4Sh(YGr(A3bY`MOJ$5xqyb2jMPf-$AHZ({N~hlp&a3onShK0~@O$mb6n#DuCdL~JP=Le&Z0Jx%UR@~JWhtxeEwJ_#6xJf4i1E?47|6iH z4p)>wZ-J#8Wuc|Gwh*by_~2~Fe*v5BnAqlKq+dwpn(jp_-J`Tq>k~y(;Dd3H zUs#OP;6JcE3hBXna0UCy+rbj)$wz8%9aj1<*^amZEVj}tQ)O|L9jU>6;4&Wsu7bOt zl3L^ou0jST+DHILfyk5&d;|iKxWH0aS7T3I2b#^nm=@8DAMXTtX(3`0)+n^{`MR3S zE4T&RLkI#_fNDlQuL|N4Xu&0zyq*;u643kL8#H#p(oaWz*K(eugQL;~b>?mfJ`rLx zmaidmMK}RGCo|lgx{f&k%={L>2>`nsslg8*n+x#^zym-6nEq5pUeDw&<3{}GwXmmy zaZe5R3?zVQPa(jTCtB2S3z;WECiIjKMrJGYB!CT1*F_%#68af80yj&Ndtqg*TQ_I@ z`Whr`Va3{82}iqoHV}8EV0{lL!Q05tVT`c1-2okBV&V*H@0`jI|Lt4|6Xql!^$t#D z77D!^pXgSG%-RVh%**o~kXW){i(HR_?qyh9ed%_&C6vXE%aHAUJl>^DkAHx0sSz0- zaziX>bzE27(bZFigh5tWwHv2*D=TXrC4MJh-$Q27GZNp&z;&e5D;_6vIy`L%dtF1Q zfg${r4`C(>-A9Mue3B0#8)-*eKBb%V{cge-=}VFD44h)SHaN zhj*C)2t*8il@1>mk?<^|iD)iG@HcCeX1^1l zFu@=PX^naZYt|}7$-h{|zugtF@8TtEl`)d{@P@U@XvzEdLGttger2sP-uxl$p%4_$ z?Jg1)MkDh$zO+_pGXICxmRBzEq7V8$i7nSD&3XT2Z5P*op;uQ`Q{2xn?b3vHoG#@z<^mK;x6#uz|cqMhkH5G;V)!TT}fpyACO|TE5=6;Q%p{=^1 zr)4v~e4TQ=Gg8NjiAQmp+b3`VA+_FZSt<-*=Ie~iI^w9h9X&{4BIdst>^@?af;q@t zo`MDlh8Tif=BOuTg!G}rt|BKemi&@(OPvM0d^jBdfq3H=&H+_7G1xH1YrLECzQB1jR9b|Pa80zJ(8qFs>)f;M(qS8>z3%02Mh z&|`tld9U2^F4lbD_w&H@N;Q@}<@fV}81w&HdIn{$rT?s`ID!e^N6)y3?PX?(>e!lLLxG+C_ zqBKi~{}-qdRB)JxLIR{%BUhR9zCrE-I1M|13)SLFL8=gc9dDh3%m(Q_FRP4NBXn3; zQ4K;u?CoVJ+Jq}LswgKMA5PwB$=M+>xU_I~=(RC}@v4SXM7pPBppXbD@W5qLfO}Nw zSVzx3k=k{H2$nh=A#S?g5U!-T*a4#f2bH-TT= z(d9v|cEV_g^^}fuy(DC_vK6M()wSQvP`kPnqCZw-+yvF>1Dp<5w?ZF8g21ZR^+Uh; zMTPP1j=@aXjHqd)+2W>_ksoy{t}0ZC&fB0IR*k#KG9=v2>AYhKoqpRmoi-qJJBb=i zA~awJ6j=u-t=Y(UH$1sXC4JIVft^e$gnI~C>rsSc0Do7g3SWG$n>;qE)Gp0bbt!MfJ=btvI)cyF;P-Up&`#NQJS;17#c zk-CFZM;iYuR+p&aB+ujY5|u52MB2PZ0Aw+s&WMkgOvP1T6r(@ju}E%T;k<5Qn2{D+>kv%zAP;Ly_n3$#T%Gzkse?pfWkN zzY$fy55eg8H4u2?&#WKy1;9p*#UM-!VK?tO=u&r)EH`if2_1}9^(Ec_1}fpUP!95! z5#N$pc~%r8C*ITg-Ut_6dI-WzlB{LRQHTlm}~x3xEQAJT@03JNd$s zD^OoewxJRfq9)DFwjh7^F&-NrMCvBf3-LNSz$_H5AyF1QctL5BhG=n+9Lzt1PU5xA z&h@49unvHhKfWlIU`@_YgY6P52SJDpU&R=i>`udkJRnAt8SPPpofb2!)|c z%hG}<9@SUjgm$nfBBpxCLL_$^MQF~%mM%=YzB1 zD=JjM=^4ahT~7pq9IukF9kCV#2-}fw4TSCZ@`Y*;rSKfeDxGFF6Aso6DkA3K@Wra| zM2OE#;>IG4o*co(tr$cVb}M+;SEr-iUz$Y-%6p@6YR4`Dm9F1-yTeGwyslofI_ zPhHFy4C~hjfxIbAfF>hE_6YS}ji6L0hwi`*^I0G%PrjGzAAu0sqphhKhXNt0N1L%n zb%lEhG?h$DnY{z26! zPKn%pMC#?x6*0SVP{3u3Yb+S7zT90Aa-}EwSJ>icyvB`C8*!CnmxCBS?jo8UK*C~K z$g~naRi!ds*~FGO9A3D3^>^^D5-v|be$Bk6EGzPdTmTw`Oo)Su7N{U9CJR)?)quo0 zK+b9WU9msX*wlu<|1Q@MC_vPY75_>(M>TIJz zsG>q>x`D9AAd9?-&ZUW$I&uCYl~KA;!p+=X2{ChxJ~y*f6n6{Wxkwe;(Z?jw(}90K zn+h5_)^273<*8P0q5YE;Z`{gO63wE7*a%C6)Z9+IQnLS$01xrj?tm6dG)#9=E-w%u zW=LEY8ZKn!t@3UdEHdt7imR?;)v7iJ44R%+3iq((B@A%2h}js-_e$`~(ctg~@4^p) z7d-1eMjKVAlToN4j!5@JE7Cs5#^lLC4SSflJYda6Xp znD*exT9wiHn0v7>i&=oUB2hYO2rV)P9%&$q$QKm1h@Rj|b{`wN7NUw%jKZf#4Mc=T zU>HmUgr^x||G$wH$59LA2LKfqg=z>L^0EL37}7r>NH7zHLA21l-|?u6+kbiiu(NP` z_#vEHrwWt48O3kase+|P7}{{%n{HMx3mzi3ZxLpIk$;TpUd!84AVB+!F?MO*;S*PAVaEx< z|CZoI^Hrwkcgbc2+@fAHbOD!t+)5l^}YJJtUs ztbpAMLInQ<3cxY*3K4t+CEg(d^=W`+!s`18;SW8*{FGz=jB#a>*&1+$&;#B)>~71D z_VXzd4w3w`Y>)w8cmTmb{&ET+624;WiunfbUZRSw_!b^v9}vD{(jiQ+Z}s;;GL0W0 z;RgT#5fOgmRSfqxFyJN3F@br6No2$OL)?^lm{E!N#8zlDciqH3MuX_RvCgJ@Z_>11QON&Gs2ff zcKVm8`j-j)%Y6Em`SveU4=wY1GS0V;tOlZ{;Zy_Ebtm!xJq6@%a-U~J-->;e{!!Z7 zpdJ#wh1}4eA{>n&T$!^;S4GPd? zC{C7LO;=BsbX-EKtMk#}{60U^(K(V=~&_Cl%1?>o# z{^s2+*#-J2Rs1L=!SwfFVJ!>Rwx5w_}sj?y|37^5RqyeWyl4XHuta`tPE@jcLGNhyv4<>7Bj?rDI~v@nLF zo|zjt^o0MIn(Y+ktq>L+xFJ9vcAHnkbCR+PzgXHZaZgx`+YavkNvxt-cvVgi zzLZIpVJeqXh&!i2@4;|rp8&cN=Y`*}S_fq?idHnjE?;cs30)c|Y0KO&#rR>w7z31vkQ}G0FSVl)CxG_CP;pnF}1~ zE(dJt1-!2eae=PfI?E+pauvX>4Xlz4&*0+p_^JF*jMxo|2FK1ednThUI5Y z&K|qa0@n>v*IR-#E6U*J$~(t4VB>QE7Rg3j{9Hg}K#*m}{L!wN_vZrO69}K6gTFtgk&j0NTrOpY zi8HNzOHsfT{3$)XuMEXpiFfSOMoX^3f7_{z(Khh9S$!oPjgaFMz7l`2QyVs;k(a}f zrKP02vdCgfbNz|Jo2FJ~;PcQ3SKp)clQiQi?$L%xR^bisWoY4`R+M~V;A4c3>EKf)^Rl(l3#r&=n|Z^G z4VL5UEe~98A#zbB4#dL5@2T2-PDCF+u-;M+vY|eHy=6j9s)uJhupU3Z&79+0Z#g0z z34m)UOLoit8=W>G93A_0I3Z`F>`+{qP{!N0B-Zbq_s}K_T#Fb)yW_ zjv!xwyJh>!9vrZ2IU4i}WYw1?1x+Z1gYM|F)Q|2jTOgQQs~_yM4C`9agPSZ{68D!~ zO{D3;e#`zvWl50_Zni-G@Q3e%TP^T?>cLy#Yr##oT3nwiZ?(YxAKYT8ca-&&!F`VM z`oVe6ZL;iGuqEi%`r-Lz$AZ2EP`t2yUoRfJ(=5iXvFz)$?6$V8u?$OKxbWFj-M2_A zj1e!7*^Lg>GEwi}ZtmY6+`m0!XnW|GQ%WcKPD?>8oDphwNL@K;xAT&_rLLShUSilO zf zcRlTuwt&F%C*u>++W5NsI@suG+gc06w(F4ZK4}rlbr7C})mB`Dgr_iUhgS?7keD`` zR))bR96k~7iG+^`pD6f5!zTtlvG9q5Pdt1Q;FAcSB={u5Cj~yK@JWM@1wJzlnpRrB zm^G)=LNl@I3Q}Wiu=Y`K&lFAI%2ZUWfyJJ**0b2NaD7sq5nGb-RN{5K5#0ba>$s}8 znW&kYAp>Cp{^|j1V(RrADx;6|nO2DOH*m<_!iM%nM_X_7CZxC#`boYC&wJ3CByr-_ z2d&A@jhYEAv#T6CHk?$?=C!B^`k>4i5Q($jR9n$wnA>9cC zwAsd>m~(<&~KG`l2^I>nr?HIF$Z@ulQi8O zWSOxfQ7(MiZB(v^?da-p`_MzyfLxi&g;x~FVDl`LF;CEn48<~P=Fs?vrLwA~g2YHl z0G`-0naEToBL|g++2u02H>(#w71@U~kYXXA3bV_=8X~4A*$$R~?_JlyS29vm0D!p? z2R>mnB~{62GPI#uHXTsC$W2d3Ev|aP8th-kDab*l#f*ZOC7gn#oC2^lmO%%;%VjR_ zcLhEzRlGmYE)g~hPg>!Veo%PQ_G{H563!wtdYQ4vpk#&#EhCp%EVE`Ig^Jh~0=G3F zsN_prYwmcvrV2%>apFZ=gb&Y(4fDrU7j2==0A`iDL%B3JHZX`8c06jU*K*Ua7B*r? zG$Gj^p*n8AR6+V|G2Giosj@7sVHqcSX4g|9dB%ys@F#@pO%f-w^Sumkt$DJQ4l5uS z#-|G*zQ-gB)-M!r(x@1~gb^N4n+l9y&|MLXJU#+b+EV?*W9-1E|QvR zwW7ZVWlShqbZYM2^OSNB=O8~R4d=oD=%I)jvPG!z3n7mHnqPnvaQhtTAa8`2{E+hF z3h$^jJQ9$J{Iv{mOu`ijC|HO6l^JHKK}y4znMS52^d_oJNY1B)xFc0vs~~fkB{>8_ zN{LqzEo3iWtIW_>l5`T1gAPd~{XiQ6x*jZG(Ih9*GD^#nq~e;M_EZT4UizIzde}UXz3ZXV8?HUiOR>R_NL{ou+R< zzJ&r3Pmrl!$mka`hlH%TYDn5$N}Wrwd7vaKGHex}r5qI03VpJ;4n3JMU4u84WEs>^ zZ2&^0why0{sSH6#u^NyHU~!TxO;ZN}Ge&p1q2L-zcVkyaTN_+taWui%fdWiV6yAlO zEy)V2@1ER?0NWJ_qYAJ)(QxWo_sDgyDNPDAK@1UgCeo>Ty&EcE1OJnSwyvk|D9C|* ziHBdpZu0V8nb%H1)zJtA?y9cTJ+#rg6 zXc@Jc&S3fOzxfMbcgPsU<2yP7TNx#P-y+ zo>A3#Mg>96#hxb{5|%LZrlq*IEXyceCdIEP=joiw-6RQ@F@yp*H8d3j+!-QyUY+Z% zWH~!tMe3^v0tk)5wFU5T$Qg&H7PO17l40|0a%VX?7$q^y@B##!Ql1rA0`fGuAyR`s zLlpsBCIAteTnlJ@uO{hNG}3boLl@G9x0h!H8$ryv$-Na16-g+#1HW9JWzGO`qYDIP z9fFh~VD6X}KdilM)~s1`;8O-UrP=M#DD5oXuplcn^b3|MxvZ|Rh9zaP@DJo=eu-aM zkQHV&d_^H(&tQq4@JBSN{91z3H_g-Gz=c_}B;Vljg;{eX-{QW7Sy__r@CysGq9qgf ze+#psB;OCbmm4nm0Y|)-o9y!=3#di^gcrS+8xhygWU+y!1?eHj>A-0i{bpA-h5~YO zP}r>qpXk$uIJfc>?<|xE2{=^Gc(EaM{mmrN3rsslLr*U|Bo`n-hdTCAXy&N4b5@$?GW zI5gf5nK)F0vXNpBK&pp4JwPT73VNKRadC`r3?K}%qkq zEG5FV`Jq6_&}nUVdJg@_O*l{Lla0Rjhl;9zNV$%aR z>0oDtBpeGVfQbPsxkWskV%41}w6WNk5&av3Xzy;5NF}kFhC=I_{~ujfPND zz_#K7%W{b!5r~CQJz|U$aN!Q=PvC2-vUFFz0~C@x`G0Zw`ZutQ-3zJBUs6o(g}lpp z)4%8G4a~qT^gR82xYy~qcVqfs5{SKIs5&dmsgCEo&OwR<=-QY#X}Q3{CN`!niS0_a{d_tJB)Uulf%ra1kxv>Fuqjp-0wNYV3@#=aKyFWf zj?0E8y0hd?V+o^|GKf~to2g~fGk(eekQf~xT?kb?YtX^b5=mPp%Q`DL1VWS z_Hs)xoQ}hwssML0E^u{=(piGMrzcQaW6u;5m?ak^2qxKV~*?Nv)>0f@E~IU1eh zTAsR%0MgA#v6`^B{m)q3;byU-6M)p$a!~;;cTHt-HvkAdED26n!}+_G@b@|wf7Ost zJ8PD6fU6>g!*Qv zA_<%}WZLBB#)@K#y+d8Xj3sisR!Z!Z^+;RBEfKd?3@itu2E?7lUW$-%0oX7|yHHA> zse#RI^V*q36IFp1_GF3rN@k*Ypipo%cJ^eM6TlWE6VC7fE(6$vF1_zQYXZOhrJk%{ zNge*6Co4g+7?RG#v?XAE1}$Yh7g=&{Cpt}7CS@mj%X$ARSp5q8@C9XXE0~2uM7=VN zP!O1iBpb)IL8!q#3+Zub}>8u8m}vci2J_RYpNv^MK; zXFsf`n~@HZFiF}ocwaOrkZdF4FqwKt!K9};+;t~+L_$w;;rbKT9nv%1nufdX3P{mJ z`j3bd^EY&`eFy1J!+Lbu*>x4y7ODBzwY~7YQ1J=q1l^}@nPSCBNd1{xn*2ZK5=gFE z`hG!@w27GLzGQT|3QH5`E{x+2&8d*@B2T@T<3(K%-GR1O<95zoy zznI-G&g>U+`o&rO;_QBL&XAZpG%JI7%u_vberdwnZ-zS))FX$R638@@dgKOY4qdJN z-NYbW2D=^9>1H$8^=>2goWl7BF8# zTQ=FfgIf~Ry<1hpy|H5I{U8Ap4A_iF4cdh}`2r{ynz{jMg;p(aR|PEOe^UR}V23AH zT52tKbrcnZ3zY+J4q64Rsn5JG=W*0Ml8ka-pCCP0+m87Lswj6Xf!uK9}W4y5dNyJt*hycKJ1?cCsOC|E$`*V zOMbz7-^)#x{EAPKuitRM`%nlOChzB_NG{-p_jBVUzvIpCL){|s~xWQfO~dHf_+crhDi`kIF%b&AR%m_-7@e+0KN!b_7aU^q?4-n_{r(A zy#VqzAznhP{}3x&@5&99q|k5zn5=nrAsR)v*Yj9}kyl*7P7@ChrVHlW8^HzF=`3M=*;ZFiU4k@qC#|pAFZ^SrZc#Pu?XtabxiM zxzjpA=6N{%!(5XQa>^YDGU-*V2BGA8g#e-m_=m=GmAK3GbZ(j+?w;{bqo8IqhWp{s)45^6{v`NM zZ&kx}O}G(SRFGd7jUwSf+V{D|VM~GoNj<#_eLKaFW6ie~q{H=!AcjY;k+M)+ZR-Zd zR&oXb#)_7g!J!Zoz$T{S1#l5w}p@lkr#slJe8$k@` z@1a=oO|H=#=GDkTuCY>D%;9*(H@POC2sZARNL=+zZuCr%oUV}TvVF^tKZG**!*Uc5 z%^%p=H^en*6+8Qm#g9W{xGMMNH@Pv|1YYMp`%WB?=aDS$aPpOmXTui`ljmuKOnSak zn}6Wj-2GCgaR$w1>t_={Edh2Y-1=^W zl|)lK0<&1@+J>%92%za8yksnFtATPPF_Of?25Z?yQBq4=^Hgtu;6_Ch*g6(+h=Uh{u ze}xM}5}>W5XyqEn*TB_3~4uKal1b&rkO7gu*;(E77J&R`<8YDys(g=J}SHpD{P-iG? zCCLU2kp(wNa0j&0IM@jacwvfWz-L;8B|qjGFKc0g@}hat>luV=7_~wh|6a|$743jS z=->~X@SwSN3iHhPdpJZ(+Jp>{k?I2gg;J<^V@ENvEg@Roy z^iFaO!l;Hn72AQX;2m^^j4H)l@MO3fpOWV3b0M>l4AyI2g6?4}f!kvc`~wcMc$k2} z@B_bCaW7!d?HW3lD}^f_jOT7?Qj^?lVh+N~N$%%!1uuC)!4DAmHb*|hj@{g2CWkrX zKB?kiLe?N9tL2gDWbK|p)?YYTaMA?HkCd!EgsdUg`tVTn7^etMnjUviL{6H9B{)Et zVUqq;f}aY4>~hmSDy&gYPU~HO>_%#OjzAZt{W$1iuAx@<^mMpq*vu&Y25_3clX?iq zxX*$PuuB|X+!hWJ)djD4d6poC3`STid63jSWm3r7AZY(D0+?`!FOrw|_sjhIFwt>C z=X2$mfbbQ`PNe<^q;ktiL?;Elbse*fr^!+*;`y12y9_4*Q&LJ`#C1W=_-=tl- zt?sv=N_T8})8mXCnztu$VmZ={O`}F}f(-2)-q*k2LH}>ILTHvh5fd=G4ewD=$9pd3 z2EvOSh=lu*C878L8U%mn67g|(f;?~{;*BS#krnjcDYEoGkBEQ7W$6@P2t4hU?u0~m zVaUfG$^L{PC9f|+!Jksejz05$N%rT2nzPX2(LAZsBM>Z+O!vif`XDcyY)0-S_?1W2 zzvlFPL+Ja~E$azMK;L&BIiGORN96o_qVkEu44lMfWrkl+z>mDX5E34c=_jh;q^6&_ zraQ+pUAW>G=*9T!RP90)|8GR`hpNs4MDPU{-+w0~{e!LHi_^z-Y09{e$AkpSo~~gq z_}TUq|6I(f}uc;3z;%ktRS3* zGs8)ztxJ)H#);fo3od9tkcdnTJv=0ruRXh~0)j+Hs0ZeD!-*0^f{NmcO#FY zt*ADVchr%0k|`iIgnS+RxEjAC<{6`=C_FVB8gi#qaWz20xiq}X-sps5X|IWdvte>v zNQi@jX?io$9ryno zB>TY8v$VCRsRfzVGn`W+7jQN`Wi-O|JeY6;kfghDdi_nL9!yOq)QcPOHBoty87x0) z6AHfBEBL_sW@f-GET$oBV$_=Z@S&(YlM{}n!BmB7|NMIk|Gt%d>$Xns|29$u2F2|h z)3!h95=?jXovdjLoJVixEV_$hzng#WgfYGP0lbUXYX`!{^}v;2|~_3PR^5@6HhT=NgM%+@Uob^*uee7tB1Y#X#kITM#}8L zzcE<||GSjhgU$nN?uCQIS#LlQ&w?hKViywsx4fMihR?B1OwW6U&1#uQyug-&@FJ(_ z5Cb>9Gz}c=!oZh7fO4TPFqOz_-_(a;gv3XI%=uTy2>-$87hdH&e2ss<&b~w5z_-Wd z1^bM$$Iv7A$=JLQ+fj}M;(>1xEN^ix93v0M2`ot3+w96v$QW6MczbM~eu3fy0eFY^ z@h|pmes}6b+|oj>PYCZZHfrDJ_3kLW=>vEL&LN|ImgYlOXoM;SklFtb7OzLbe;KQV z|1rvRr@VE6Eomq|PwGuIl^lrWW>#^yn@LccZJz0D>>e^E9gQqLe&?(+}FSwaZ_>=nvVO zWN!y11IP(tlF?Hfx5-9=3h*i~LUN3I@UeXGacuCW zc$(x2L5Mka3s-!^92F8cHxoI05`)(zQ+R?J5@_kIwy+e)dWCDNPDLtorAgxnvdl?a zigcFg1DYYD+q00)2Bx!32gx8HVA^B?PD7S#dL+Uxo9Era>rG8LFm(LPkGZ-zvt%^c zMVL*w3Pr~1lM%z$=qt=;7}WU(EP3Ox+C+4*g8o|B z{7aumd}GxTjB^IoY>>{=4uD{4G8bXCH_aABmmt@wA+DZJ{1JNAnCZe~Mns(2ocd z2R=BOcfBr+U31Wl{k$=nU3{32i;v`G890V|F(HPKHlMb|cOJ=$2?x@iPZ-e?68#e4 z7RjUbJrzTh=6d@hvGzOh+eh-E;-82cHk!qI{Hn#r zBfgvLeM3j{s--nL^3u195=h*;s^HR4*xde^6`L0HE$pwXAGYVz59aP!HYO#vPxg)j zM_g$4o+*Q$aws3X1lK}#EExN3D|CP>cF&Ctx{x|%IJ@zSmIVv;9{M5mj%TrR_uNp` zQ*ppM@d^CM?z!<{>n&!u5;E!1$L`%?2f6m~ApT_c++xr4DEX}@!h=@Mzh-eAF8j;e zOn7JWjenUNqP^Kdem-NjFAPh(GZuapaq^B^ECh>&WAWPu z&-Wz4Tmawd=>;udbz#hI3!~)YG^ zX33Z!4&bgw=Oz@4rw+~#pGbwD4_Gpx`}Rf){Nm8b**i|c&90LnJ5Fx&-Likl9XG&j zAo%f*fml+hJvk;kaf4;wjh2mqeG5n${?DUxBLjb7v;@0o@!2ysPc@zjSIyw(#47g8 zP0WRXWpgqz29rpiN&A$90vBwD;#!0Z(E#%7E3Lg) zSsYb1Llr)gp`yQmkiU&?KgDph0e%r7ANhe&qx%me`x`)=LCP+}TI1;HYK51d`4Qbl z%*$ChNS()2sFNgIfIcHWoG_2|7LqRm5T^53eos|NiM_nC7?}#8W)@s*cp0B0~jJzTpW-7!Ec2`Xwj*t9p`0f`wJK{QUN z;gr@gN@vyKvh8q{axw1RKHrc6_c6#!YT-Tx>D{Y4xRya2MPUWoE{vDqSD=CO@+p9% zi!1n;u7W1y1p)O8sjk62q{`yDg7T_b6u8nwEl>w7o7k9i4)>T`keX(1NYYCS8HgXe z*{+q1#CkPu*fD>GpElNM@M`?jj``;D4$^$``8EpIqaOGr z3`@gX@JRk5#ZAZIpVs4WB8cD*$MII%Slx-b@-bvIqPn`V{KBzP@@o~xR<7)}G#o=( z6ROakD9EoZFFe-PGgenU26q<_#BH$Tf&5EkwYLu>7Oam;fFc{oDdhh zCDIu538H`CMZu2bgW?B%Ig)|quz-UB$pt@X;(KlVC2)};{2@6#Nj)rBZy`DBb*-x% z@ZR;-=2l3_hj$57=N1?wgSa`jAlc^;IlVU&yBqJyEr<#Hi+m@!{lxGXA7!9>@M!`% z#6aU7!}`2}SjppfRvx^|b{H?oD@Zl&l_%fLT9P{;EH63uulS~;1tzKC3A{hAK<~4U zBX|-YCkUQm2u5(w(SnenxdmG*;EdANS67o?S!=tB+@rm!vKV-QG~cSMEP-XaX0>CX1B}z3 zp_Fu*lG9hx*08D@Y0t@%@1@>YC%iKE@?`L`e!)MD79>Xe%7{1oCa{wkx5n0NR zVgH}a*3)FR%=%|Y9l2@T(bhzm0B=728?6cZyQ>C%ri9f92e|kg#7`eBh><=k$C6W} zX7M=}BZxR^o@Y;){rrVk(J$b@Hw&WRw?@<7EQm=tquBaGv` zZ0MbWpddOQtho&Z|3{9$g)Xi-$fvom8y7*KZ|I1rLLl2Fn|4lA+0e{5s z#H9DtI(pXdR{$DL;gOFE^wQIEyy554INy&MS5iKaQRSPD~S=N({FZ+})=%SRuO^}116ol))a;-j>7D)M8j{p5jX;SbvtoNjE z>70-(CGrkp+h$Aurv*cw7Vh=!g14r1bgf4*GMu@sD7s3n;2PCMo=B`*WM zyJiRJR0^(&idwtKFO@{2EJ1-Aj^>;2i`$CAe0!1`<<7~LChaN9} zX<&Py5@$D;=$spf8%}HsP=a77Sku$eQ`ez@>$w>U$0M~!aRV_jZsb1nP27Y9ed~mB z{YJ1i*+CRDM9Zs?&@-g27<6u8a5rIiVa)Y3c?jNlk z?Y*#a9W#h#M8EdeLG@5C$pk~{$9T&OWEdtvH`kF3SimG|7qJ(=)m0Mi{43!S#4(@X+}g*v1wR_` z6vu3{_K`X0&F=v}XXP6B5eMA}sbXmr9H0MwFsA9RKfv#YsGkNb#1qPa4VHm|<3Qdf zV5xvN!CQ*TYf!}BiLLB}bUZe#DP90zc>5l7-_3rOiGubyS#s}T)$)qoii(Qf!-^uL zf1Z>m%2uyl-Ag`);pT(z0)sZbI8AVXTf!k`W$Rwz11N{kIUj-WGL*qln(zvd+fKMX z#B6)NSGhxxV?`0KG5^3rGno*}^5XoO13e{z*7<`UGi{#~KM=nad!wSGN266SJ~8a4 z>%We>EdJ9t^52v37vt|qWPg7e_niALSIMEo!K9y)-bsEuh5h$L%DEJVBP#w*j^liM zTf*PnEh&yGC~_B)n4}MqijuG7C>~GwIAwY2HI}3_gr0a@+&3)lzL$iF!tUs?kY6DF z`1UoHJJwnT(Xf=ok7V1{S?c$#vrH)H`%Cuq;7|KYvLjB%ja=z^>rE|*Xo&o+H)Zs# zH#wV2uBg78MKeNaGy`Hj*Rgl!2xC9PgOfdIp)w(syh}$p?Oi&g#QR-32S3|f5~>Y@ zW$pJmo4J_uSxEf`pBebAj8SaAuSB#T<>LGn(<-`Se4f3g`8a48_}Mh!Z9d&&{QCs| zeusTW{tG{QUrB`XU3i=#>hHNly#$57|ECgBl)s$lpbxooH_pZG0xv&k~ zBWASRK@wQVMJad;10x3c1%ahTLj~|A3oZQ3Pi%&arP{f68{L@6NufbU;K;Qd4>F`S z$dlnkXC%tvV}yDdFf*}^6V13Ku{1#vg10A@8k0ihEMb2sjl*0EBSHGG$z@>WBU3nj z8^9wXut3x$nN|6w$P3v!XcANL>7>#GXPUgarmCn4 zF4WMUT-i+Bx*n2KA7B9km^gVWTj7RuzzqHbKfVc1R##m^H$0{DCpZ;?CmVl)-%^FA z4F1&IL9k@H>Kd+rr!2WY>!N!-poz=IJCjReV`qAiR8(TGW51pg3&)v44jV?uEPOJ# zG*~hlpGz*C`=rAhlE?b$V6V;72?vODpp$ifd6&DTA{1fn{7)j`U?5b&wU(=nG5Wl_Myy+yzrp zy98X~1?(~Qu)Jhb9r(!lg}k7oq@;Kg;IUVs06UbCU`*d)fC#8Cx=>WWqfp6)D^}sd zmeNScBEpF{a}9%mfT~{|NHiUl4Mi`;;WJ93EK58^hNa|hA_4aN%8LBTbc+>om6v${ z5|-n(8Kv=-6`mr)W$rc==@#2EtJMZ=F82bs0w11Hs`tB+Q(;4ftMDl(@vrv+YQPd( zsot>CtEkb1c*t5Ry$tx=YqQLoHxGW2sfo^JrDGL1DHcb2Q$G!Mz|Xz0;TxN2eJ#Ai z6AV@AH9~yDw2Bjup3%3os-_6SgNrNcP)G}n37DkjR{W5y)MUMyf!X>h@|X2iR4?Oj z#%rLQ$ObsAOA31{7Zc9`ncL)e5tuR0~y8k9=+$7q&_#L2nlqrlkitV%uMBj}Mon2l=yixPCqiykl55fmPor?2tfdqjOwX zvQO#wu;R`jS7MiFAhLD6x?wdEky0ti$t0n~A--Ei91{K)hVIcY+?KgVw7F=e0zJcm zi9!CDUSYY!plD3*$iVN3&DJLzmdJqn(%-%yYrL=Pf=lau;pRl9+&?_RmbVOuj;7$i z@cyLW!Pr3=0na)(te+IzQ)tMwTs@M{W|T$lPWv~4y`yD_JVV0?Nkn*9xHu_zIQQ_3 zb`GbKk-xv!Zxi{cBiHYFM}$|Bf;@>M|Jy@V?viN~%|9~b9u@5_!PhEbsV!4ddDLV| za;BW4!%8Ix>6oxti6C#zFuDh-BUKwUXv?dikN7;30DPQ2Qy6m94P)xt`)QmmF%E337Y zYPGT2TJ5a%RtKx2)ye8?b+Niy-K_3b538ru%j#|QvHDuJ`dR(00oFikkTuvEVx?I_ ztzp)1YlJn@8fA^P##o^>)_T_(XN|WeSQD*D)_d0b)(6&PYl=11nr2P6W>_CuA6Xw; zpI9@kS=MZ8jy2bsXMJkTw?4Bzw-#6ntwq*i>kI2kYl*eg`pQ~nEw@%!E3H-5YU^uj zjrEQ7t@WL?)>>z+w>DTCtxeWuYm2qj`rg`RZMS}~c3A1wPHUI7+uCF8wf0&2tskwQ zte>p|)pBaKdry46V^%Vly%xVW1Y3mS?8?_)3Yp%5O%BX|^#p)ejt5fsG}D2C!lKq8V*0+IPWiKp;1 zp24$t4$tESl*EfDg_rO$N+UoSltnp|$1A9Sig*>3P#INF71i(>s-p&8M@_teTBwaW zsEapI5B2dD8lWK>p)s1EDc(jiyo2Uwfn=nhC0e01Qqcx&(GKm=0Ugl^ozVqd(GA_v z13l3Tz0n7KVe~_P48TAP!e9(R8iryRhGPUqViZPW3_^^>yBLS@n1G3xg!k}1KEPy5 z!BkAcbj-kq_y`~46U@Xc%*Gtd#XNk9`S=W+p*Nl7XRliZvp!Kr+GfUyPSK@x#ymH&bjA)ukYup zfqn29Ij2y3k(?cP_g9MhWyo;%7Ue#8mK*O*QpG4fPYyReSF5Ty74%vdx-B{*2wnaZ zNuMUCYMy)Mz5VK-u>h2q9A`vVq4bMnWO%OWqc2so`*XEt-w}lC?ub9PIsTk*H2$3I z6CX#1xfjim5E_x5mF|riiuyX|a?a;DCVP@yZ4a@J=A_zZ*%#Swu(#P)*$>%A?O)q} zuADUYW7FC{EBBK4Nk=Tf&=w_0~w zAGN+{ec2i{JsThTPL}9!5Mhm~>$JPM;Hw z@iuAw^pR%ik@S)42MdPL{&5NYd8B^RrGX!|4w`q34Wr$cJmoW4xrLQWr=muZqzl;k zy)4oC?7xCEzCq%ke%IKbVb_?waWGhVEov}~{1Zw3k;p$r@{d`14e$M4wzPd-^hn^y z))S$ln&GR1LA%C6c8^&aPdG;9l~?0VNIU(d|l`Jyr^+4qTC=SqV?!)Vvo zvty3~USo&HjtQfF`{f_rKXY7jGU&3s@kHIY+TQr$Lo+RnEmsH8@xx;$W{xYR-{b2q z$Ry$S*l|G?UG`G!v8&_yL17q4yW>VQ(p|9!ukJomc`n`3I5_R_SdzR#9x`xMdMWlk zd+XJa-~(4#Lp?McmJVFqvg^#2pr0zw;d2*c@#$+~4~~z@UOWHVxKte11`s6R_}u*$ zfQy?x8~86k8H_qSRt}hKAfu&8ci}k~W$}K+ani;tI;ON5cSDJuK(hb$!oc{!^Z&g# zaNg1g6;EE2eIdMu_gs>Fp*j^e5-q)ioj=HGGhT{4_=WPzaZ!3Zene6EP_m^FMm7-E zJXI(iDw4=FwOrkg4qTP;vq!p~y)>SUw;s!n!pWCqCgB1uxGak0E8mU*gb#i(7_)2a;FrgDjaAlXvVu5I0pZcOnv7Ms4G&$GMMj>D9WmcGI1MH~ z*r?n0+Q!cX5gbg%JPIXeBnn~ss&hKB&-M;OsB&F(b8L)&?xtcEI+(9vrT$F zy|OlwA#!+ZFv+rdY^QLpd<>|&`-&_n0-C_&6H>H<30@TReIdPv$F9f{lWH@cx>GuI zmn7+@Nl#8Y;XjI`^V7)8!QAP9ri9 zr9;~|jB)_b27s1H_u6)bzjk`}Y3V}Nut5GeG*hBqGw4^JT{@o*fR6$kM{93oduMCG zBBb$^?OoQ~({Ig1qMvN@V9ptFpMjTGqdyz4hkWuI}FQm1#%}fa;F*C^AsC z_r{g0`s<78s;%=^wKVm%QdqqOm93qNk*`)}&BfilJxJ8al8?owq6EE+w(V)|?&|0$ z?%X`97H|GpW(+jIIJNWZ%L^;|ZOCB6AKzW3FEY9DF&#M;EzP-GNN{Y4g`k8vXz z%aAn3;p=~qnIhu}57r@50_n1@Kc>E9p0%)`E)~A(QE(#u_!pTaJBblQ$Sz#7yrQ$c zx45zliOIb0G_Sr;!TYArzJaL|`(o*=zcETm%OTS&CzC6I+)krwVO&k6s4ql%2M7Er z3)a!KR30;;lFkuPYy?%1`>QNI>Ft=2E7JWjBYvQNBvUr41yLmHxMX}(b@0oQ^W)!2 z<`}%?S6ON3tLY;a5bY7Yv^;Ypfc)hHUFcH8pZ_XLbktclQKiu~sFdu}N1CM3>_PeA zOEaDrmZajGlcQIpo2CycpkT%mV`r}p3WqN}!L$seBK^wA(Q^}ur9l;e6Fev$zBH~` za-S5NvSCDXyzl&=`tT(wC>2lz^%HzTK5jVSKOW?N!e>07oYXzuCXL{IS7k9`P-+`A ztb7t5zbcCqZpG)W%A%s*$(BA%9Wfrb3N4QxKMufEfZy@HOO;hQjnWv@-aAbm;V8}- zM2D}q>h1$vS^KTKE*;-G@6xzP$vW5fJ^iMA8RVI+mIU^|ug8ZU2k^t+e)j9Qj5Zw} zCeMT?o}oQ3KBCx32d?A89sj>t4qSa45CSINx<>+55WG_f^(9wF1^ckHQ#O1p3?cn@ zQsH%^unJET*%C$B(=GA0x+Os&={78qzQs8}t3=WC^!xt~S6PLR3Gxu(wxj_p|LYDgh(bb$GA#?okS z99EE4gL2Y4=vffz8IO}cl~S5*=jWugt093qZaw~lO$G3Fe&2ZF*r@jKrQ=V43fny(C+V7I%qSh9@Rm;V9`*hm=g8GfimZqB_l9suh8;_=vD zf|SRHeRo~DZ#>A-dS>9vP8dSEnl>W#y)~$#d-I)XEmvB8I(r3p1`zN!E%IR1rQ-*G z+I0#0x5_h0E*(D^bfxd@^5J7-CBUZ*K7D`P>O-FU{sb^C9lvk)B?2_y?3K~&XMgJ3 z%0P?d2d|DR_g?}N2jAK%FIWFScAA5i@awJeDEGtnt#Vslaoivp7B_u2@IA9DlQ*3i z_;|@+#ICU|ZM(*{4u(-f@(h>(&`w}&RK$33UTwrx%jI#F=hMM7HJ6KmJ4reN1E#^cN7v$1W3++>2?)IfJx8$YaHp?455CyKqmZ+!6q0K}I&T zQ~}1)MjYQMPZPlyF&?}seUESGl$(TnytY#wH{+#Ps?I;l?yK|wO{Yc!ST8$O(r4L~ zO<7Bbxv^o>m5`8upP=NxPe2BKr&FHVI6toB#~``Xp7rdR6HCVxC*nrc<-@izEy ziTVQM>dTX(ug9{M`&%eUIfLy7f2_DV@MDl{ue9$gD=roGws)>an(KtU z%etHTt(i!9y|5Q)ZV;^5X?uFtH6i~-VQ&{y#l#lbkg^FXP0OItwr4V^W)7;w1F98T zJN%am)*MWBc-X!5ZBub*XC0L{LTm9RVQ=sHCZy~Twju4xiH(t=OW1p3Pj`Q5MP-R~ zVRw6P>tdu|1>=GFL(7Ufx_VlXay38->?UBF`yCA{SAkiBG(FI+v$fxvhLpWfuU*6H zSvA-tnzbBpXmB$$Fs&1;c08-TVF{Q~%jS31H?3`LLE?IWnnbz{f@j37tJ+o}@fKin zTN4VpRiO3^04`kL+Zup0w*lbR)nsI&1D}s8F*No8{NR4Unnw8oEh{=(TG!ptR@&at ziZmN}`*ftd0~#7O343SNFRm{tsI2TS?@5gc94DN9DI%b(1_0q@=$zHr}${dpzy{sL&=9rO8S=S0AH@8YNkW8jRbB@;TSKKP>X`HRdUf0i=j+E~M ze^eg`U=*9i*i4nR_LAB)%dK?{^~mSnj8jNFeKhU%qSplHkmAUYvQh^@gRDSY`$y&d zvYGm$U;RT2RKK-nSL>-Q9`IB6-CVgZVL63<(q3J>r*1U1AEUtEC9PvhCCCX?_C?pvoa zlo&=3T^~jD){5$i21>kmmYqm-knR;)-Fh?9zu+F;)yn*5WX+(hs8a#c+0@?I zi}Wu}X{me(7!dF>AX!e9L%>nM5IFf82)sTOfj1^2@DD!IZ+Z~mqKq`7 z9vn_h!a;lsQH>KE@;2hUuB@r4-A>pH^cS_E@PFacZK|-&ciF@hwKa8DfWmu^;RH)S z`vIkZ2-mWbb?v>#Fa~w2I$U!{;34I|(PpGM?MB4+KM34FqS4GBL3biu3;Qdr#GR@u zsV`~3XMV9rc<1Rb#k5Zl-C)E|0rl2qr2EW;D6F)t)RFuzqapMxKHr`dBK!~6M(84@ ziJzmrO+6h*^94hPtk$pG+*!t4(}u29DEMpq;EgIv=(hwVGK4seh@wN{dCr{g@IRq} z<9o&es~rVgB$TZ0k7}u);5&79& zt^d_k?OrgNtM1yWK!GTKGHPi%ku4e9umB&O!d2s%bc2d)FcV#0jhgHJTx9gY!a0@R zq0&$-<|n}9&zlb`xTvxS`08x#057TjHwPdSX53%-$PQNlhuz zSUjTy!zf}1Z0Aj2UxYIFzz1U(-u0=%;0X7$jDVIwkuGM$P>g(|fNB)#%3XoWhFh$Rb4HuC^Q~mf>c}62CBPy``bJFOX`dISCT4yB9OZZq5%ol zCTv>TdTqaPHu6j2NTtD!pA0xeOv6npRpCMkcC1vzn^K_*;jxwRSUDY;OuW3vF$Cz(zqqGq|C{LLf+-$=IgM zgLYy*Jird2o8@U_V1W|9*&L1ROq5c9J3Cd=3`I=h7^|#+0Rjv9P^T)=Q6lWMme=XBH=*y>vbXkapcvK&SWtl%JvtiU{^nahbwNB)&;_G4m~FGq$dGW88iqj2_% z)zqRw5j7q}0nbe_fCQ{T$MV+h+TL#DJCDpX;jE^P&v8G}HV{*W?k+{v;*v__H{Ufd zSV0Q_G3`Pi40fNQ-tG?C!mt>+r0?N<>T3&%N{|Lj-DSQN4_lrY*s``iD1nV$r#73IymzB1d7()R+b72V)kd8;n_Q1P66aU=UJ*S&MXF$4=A* zV8((%1~ayK6)2Q6d1QNbVjeVGfJ$eS$R$_NnzK=za#pWd!OU za0@95KbE8PeYm?@l@|XH;Yc$w4!T>o1EomZ&njyU;1k`d>bfCfTLbjR$gFt?@f`*? zh+?mNg3RBOQ%HEqMM52raEOzTgF>I7BsfMm3E4>Ztjk4mqyC&5F^2j=B>sWV#Su0a z;!(z8(;vBBwDQhrwp9hl|9N3=Q)dgfZMNk|e1W?rfAV6GqZh2tKSL`b+b{C(mjGp0 znL#hZb4#;((!^t|KIj#~gCohyt!8u zDV)HM^{OP{BtA}_UdQLi(;L`ljY^982Uk>Yk{z(5x)=rgQy{_Ioz{|h{mDog#dFs{ zr&IXGHL8%fw?NB*@eR93eN9SC!n%YM@@ECoyv-|YDC%E$7y!q;^M5sc*WEPsJ^alY zRgCaH)~!`V3m@RDweU2C7q3;t3;)J_YgMM;(*zr9bxmE>oz{XS{n4-rY%8OY`9u5+ zREPYBRu|2$t1nnkvYofciAG@`;g8m;LZi+w^2{I8cGR@m##=QiUanic664A}ETmOKfA}&JWB*eQ#6mnw~ehAi91Uq)hfQFq!(r2`it3_;e9*;68x18a5X7*EP{zt&U&E1tIygL@5Jt47Z-Sey zL`GM163*1Aqx|4piQ5-OurYON1K60FHCd4cU#q*zbk-%shKF_PX^u2@lxN6bgc38R zvS#^mvUGKsqztyu`qmDRoo*<}noP7QdrCiY_Lf7K1pBRha{G`O^lZ=xJn3HsPEkUC z2M9}l2Sm=qnKHU5=<_(w!I%RPA|8O0k2mPmk&amauC>|O(%RA53tmJW@|{f>O(J=Q z0vX*(ya@;@^bk-2Zj!EOGCHQ>-$Gwg!eD{zFzeape*Xu=|98~ippH*f5$i0x5f>Dw z!?eq|%L<~Jjl!DIUfc&OW`?GPE23OvSnhF(UC}+w3aDmAlYcwcG6_)$$b2Kh=by3} zWRV^C-2!!lY$d`?^VA_i7uFW4&5qT`B?8^VL#3W+5A#eR(}b=H=FGaR3d9R~?Syy*UYj^)_WWELZ z6qgi%?D9T$tZxNB`BvtdYi|R;xvSeVtmbwANDQeor0*lqn`P}F04}8b`k{7Zd%rcq zhD>)rb=n?|p$j2#69k3QK=}0oFmOS!XJD{coQPUk+Rbh{7-3Oc@WLXsv}7xk!$R}m zio|Uk&pRjK>30{$GaV4!K>|n<5DnM~MYcT@*KB0kjZYP+joP~*;zCZE?;&`sM-lhp zABxoB+1QN^qhc`taOgi!bJhxaKA?(BL#cG@GA;89)QE3n3 zC!t(;1fMQe=Q#F5HFZN^$vw&<75ak+jNJ*HG(()b*~s!Z)J|e9JuHXlA0+`ofAp~Y zNhXz^!*UTqe?!l7&dvuf1~}N_Y-GTcVEl`8^|6`UC#BL>;Mz z@ZLn4->3JW*>48qTqt79D>yCIX42PA&NL_-g8xd}@XcC^pjO*y{* z<@lbRjIZW@5TpZNfSlf(o7jt-nn37|8h~)PQT3&_sv}$kz>PnTAFWWwg?~o`3X)s0P|yW7lFLPkyoj*%7g?Ai1Y&!n&1A;p zBHd-8D99<0tCRLeLMDA?Lu;-;XL2l*iS!WV^R5Fd^uLfr3!WkYz|hzH$~yq646Q$PalNPtfUblMStvXR*IuIz6SO!; zp|&I%b;4A}ihAzH8JP1DY!vXBE|p0ZZo)xV^Gvu_u2!TV2?B(ZM3xwb1-;CIK%#|p z4+$3V&ay1C%ou`qEmRvEp)AxQh7mNuTnV4-TZ<9g;fw@6uw93)ca20?00AISywQZ_ zb;uG+>}4;TkD>rRNgQvQj=~eX<_D^A#ML~J(jZ5%iTJfjb*o9h-eRvj?|e^{jskI8dm>DsCT^I1FsM41c}I}3+bt7EitSgcVj zU>r3R;(66-y#wNiWZ4q4t%%#5nqoE$pb1PR%+dF<>HsxU>6A`TDneY5Sb{zkLh^lN zs|tjmBGD*Z3Iea;y{K7r4wqyg{|6_035wK(qXl zX%_7%K1~o+q-PGnZwq+d9JP7DzsP0+iFb5Da|T*75%v9q z@Q(VUpYmZoW5W@#TQHA)!Ug+OdcU9DvSs|0S{5k~5u^ST1jVRjA@G=n zJ6hx;m$6;StiY!hs!dT4`EpqlY7#vGi^69@6v??r?OY@}7x_3B`8pSAh8Fof?JL4@ z2#Ie;Z^dyc|EPG-CnPCZyo-D{A>($yme~+qVYeOlyuQFR8x#zs1j25CyQp$^HZ?c5 z_VgglZe9iP{kvIB@A_4cF$B7Yv(tDlensVPxM2^JxKc$*Nk|kyEYr2n%zK%B0ZV{d z!94Luc|U{;eIIbIu?HCqx_vBxrmnTAWig~Wtw$jb;}6yT7Kd(-kGs&7Wubwy6Y37w z!0{y*g2Du4M0Xa5{T_q?M9@O810f|S9~AI7(Y!8l^~2s+lkt!U`iP3}lMEUCQw$lB z{T0xc3m{|zAXx?zXj8I) zgFuCHswkDpHz0*i^AE7Xxj<+^sS=aYZ4D_wrK0dr;oc^7NP>8ZF*y7!#$fkpgp-q& zo|TOZZ{xI!S^98LwS3Re!dVTB>dEs7dT;0{|52lDkJ}=11@}U>V(Hd^VA(bq8PH#I zCl9@Df@OL1@CB(xz~pOlU#O`3d%yG8;;Ra)_zOjkyk!ib#q89X}ILoCA;o3aCLz8`w~I zAs;8(wyCSLV|{-Y;MxpF$j1~`q%Gz~scWnABRK?A#GvpR&Umq+L=DS1#WA$4+c|KENvM!6nZJLNpJSGkU3fF8t5Oc4Ed(S-a}4?9{fTK=)J5=AWMrfKMQNf{yC@&($WUXQA{I_xJMT)G~t4KbTKi_ye@a3w5xed4+?ML1#mkCP6Mlp zL5sg~k1k9|$NzyZeC!^bA6DI~)8Y@|FQE;80i{XplRIUny80u{jl9x^5yPG`(DH;NUpSCEcHO7RaheZh$tA^*A60K9 zcX`PFu5?D2&~u5XHz8Pa=E|p4*N}6&&Ci(i@G-#02p{rnKKhK=vS_VLn~Ht5TQ=nE zw7$8+`rs}rnf!w_BuD;}2X|N-#d7}8mPj5!5HxS@vW_cAv*GCv?!eD(x7Zy!tS4k6 z0dS>a0o-Y{r;dv!M=uX2*!$!!&P?@!(71p0L-$)Ddw&q^kC*D=1{M2Fng?ZV9^FI6TMFI(J|$6kpRQeHS;PrYz{YU}-#r@e4aFQqVT*A#B}m>)2);7Jzuc zxzpm@8SLB{GPE;v)DgHq;Q?8jJ5`XDDZs0K5btOVGddoU!7dH- zbobIx(^1gFqy!GV_<-6+WXuOyNQZ!U>3&{N&I|O9%G^O<&H&>9PtnRW3MmZ*9;94Z z#F-vA1dlg%v@WL45K4KB!(HSW=y6`Km=hN;EFEPUeN6AzyR_$0z72|mg2 znFgN}_@u(e3ZLmm&C6_`=Z2eBxpYHHOm=1pPp(w1h6CutZu|u3int!GEBLGvb)oEq z`h+zymx_VS{0&9EB{~}gubl*s_kzTK=#sP!+a9zfO6z$envba6zz5h!50aFhG+8xPu&gnoSKL0hu05l8K_MO5Fxl(l9P zfiu6VYBBO1fIlH+z=r&svSP~Ix&~y}EMs|ekVePE0P==@2kVSw-*KTHddL<~ zywecKZ8e_0LXtm1gYZ9oO%F-dGSixxz&w8h;@;Gpp=ET?TsSi}VC~g(y~F4-Izc^v zT?`X!f&ukrR~X4{F#1^l3JoMdn_xnA2*Cn43kx=s{7H{N2od_QskREly@{=)jDVin zNOyAwvitKcdRe7s3T(8UTh1$X=bZbPD$<`j@S$lx-sLP|X>A+rGs zujQE>kQG8{@iOb+)-lO6R+>pO$PNL%IeTtuX9=VI)W_08ipb<{kS#(mQbLXh(uR?G z;2X6dtc#F7oaGyM-K87bk$GR+-67+%AB7a%?8aE`k>hzHu6;HFvUZWRDZoDRoANE_%4b-!E4 z)b;dRb5YoB`1-P}P(A2uUP4uMWS?v=K2w$zmf7#Fu-xI5xH$jMwXl_?u(A+4> ziBFehN&3z1V$1I!LkI;|%djvBi$cf-`WL$^~{+_3=)+}-(BQ9YBh}ZJ09&iuHVGQ3ih?lPi zC!q%%b*~}~xC%512KN#gu~3m^2yJ5heVg4GOfB5+XvMaQtmsIPGveubLsx$9*9XOn8+cGenUutR}gy+pZuse zMk|7}5#S^#vl#a5v-pvlRf!eCvnOhl z3BADcN6PIaGjs<&T$yDm-^tF_VX26_NeT+Yw;`*BqL7J#@1@`e>WQA^1C!tZ((HjY z+$Ml*8x(UN4y?+Gjw0zbfQJ47k`O|t)fHM$K1c@LM+bF~>>9Q{#X&ykBYeEvOIA~@_ zuW9decn;2<;=_Vn4*4|`12>RZgLES#nSqqM0(Tlnvf(nWgPU|-Rm3iVlpCb`1DiPB z1B$hfdP9OgfCkyw9dPV-)D0!{d6u?H!g>r(D?~;+I=Vp7k(3<9C?zE0ApM`+c_Yx0 zM(2E9L@b;g1gSY>oxAW1gllz#b_NoOaIKC=itZJ(*Fgou9TC?-u8vnvf-hw4c={5$ zAZG{pzUt0``#TZdRUHuUh8!IdcGaI?^S}(L?R3GPWK$%)?x|u)$_{e9*B$>uhBp|M zUX~bA!eu&SfLtEF1-Se{IHqADri2@HNDp`E$blkU)gZ~&^r{BGO=o!9Gb#k!wotR= zUvO~~Zph^FD>CMHCbX$6bwb+FMx=k2<)*o!=Y)Pp|3QZL(NJwxSPa3Q-O@ED5ccI8HIM*gWRZHAh4VOD%=M^>m~I-h?y zP)j3ILbC|y(!YcL+uu!M=*o1!PLn~Tj`lWYkwm|VS^z1tp;15%6GT`wc-r2Y{15vN#Nz7y;*b#!>MpSOvI#swsIEfF`G@lW)7ni0(-%QxMpRR#Zkmi zr?gWl$*o*{$<%zCQfNpl3gB`X0a?xjRa3!1f^|9<%8l0`IIgB4)T+t~YYCh;0|k}P zh)|G={Hxs>0xo*i#7|oJ%38SnD9&REQ(_&<*;CdJb!I6X0NuBN%p}P=GcNF&8Nhin zmF0zO+ANE_Dv6Uq8I*|(i+_VbOVItu|62E~W+44iuLN~^+5#7rU^&tyo`bYEOjP(t zY$VDN%%dj$y^Mc1lQjT~u4O8`R>pQ~4hmo4RZC|85VjV#Hk12uns(BT=Fun}Hxl;V z^jqxhaI;sr5*leb8HTV~Yr7^hcoj4dS91n;a|ZVi-uAk9t62kozCgDb7f%Uah!HY_tokqDWubSu1_DF_WrD@_+oN9KOI?JU^nrrB34 zr4}^Ol}*k}4lD;71{N*x_N~Q8RY7b!-CP-cUPz8j*p1g~m^l+wi5K*O?OeqSFi$HK zT*LYl)0@0RyB9;K2+nl0wO(zD0lE=v!YL;|Az&c7k2oMw<2f@<1bfk4!w*03#ojEV z&_I&TrTF<^r3NkFqg(BF65S^*WR{Y+h~vE&&x5u$uo8(36ZBkZKtW(Jl3W-~2T_*a7*Iggh!0+*yaa%b^b5%k)Hsy zR7-gV*1rB@xBRdzF$rltaZ8Us)b&Rf zbaeDLcdc9r_Z52}ZW{y{9=zt5e<~dNT*iiX^Wudc@yvJg(u6B`CHeXZKTHaL#;?7b zH%<5jfA?-)obW5Qya#nx@!a?FrWZku2Zytf=$F*${u!XOI$I!eRasaG7rRMhX&njy z@pC7okyt2H@;AQO$Q$3xxu&!UJ}C)(H54Kd#FF$625FqozoC$K&!jJmld`7tE+koP zAf$Bo9Q>#E^MVCC9ZPP>mEk#ZwLt^s7HeRhi32{!Gnw2E+$xs0YX*+AmRiE{x~lzERY1w>9uIMpIP4@U0hgD1c#+TqMWN1+K@1 zc@+|Y-A4Mr3kbr!%Nq*sB*kFiM0gk1RMO&1WQoMbzRENENQ~&1D17FtyyzUb?MAQA z(gWid_X8XlLnM>dumfWVW6~#fU>uKgzlIr0z)Qc*i_ssC2;tZnL8(@OK8iAxIm zBny2gXOICPUxEV66ZRp!ITC~nO*K@J9RTbINR>ePT9ToHQ@_hgl84m8jm|Ig%t^lU z-3eR^n94OS6o@F(_807E`ZaF$tYz#;xEXK1 zkQX1gjv%|9krlH+z}nb+BmOBS-_Q3JRv3OOEevhHjXc9$LkCOfgz$o!zcf991{(Sp zbW^{F`LvR(R{CNEYIfhj(%X!iCbxnOCUk&KkuUtIbOLh0o5?g;R9oP06 zOvGiu_Ye&93UX<4=u)0ct-P1uvWMbwBP1A3lI5WLCgHM|;{vaifMi38%L4?L2VDyR zY*_v(kA2XT;F5{_A9CSB4w)V%GEWYfLM@N5W4p=u;^s%0*g6hOK}bBv#dZirH9tm$ zXv#6s<5Rm0gH|BNM39Y$v`>J76Y%2dm#{DzHl#9Y9d|On$ zsD0g_I zu=4MO@Z+H5>9%kJo(zyt=)MQQuS*%F$(w{w@R)01oTdvy zLl%beLxRG8C<=2wnu@}iNho~mSread6h0*=eCA#g2}yv$fqYrme?4pBtP2gYCjRGI z6F~u=^YS9dSV875nC>%wNx!o!UwLtsJ0s+Vh4O0{(Dcn@7Sny=TdIUKWS>xuL$l!X zjM3i_D!*r1=)zPgFHWNJl84b?-_wI=!+mAB) zDnSFu@ZpPj`XvIhQ@s{qkc@>Q+}aS#P&(nDfxzsfcqobEqmuEh*rS2e(3EQ+5%2ms zFAV?h>pU%f>FYc{tWe}@@xS4(>2L%~tsrVGLX_E>Nt4=0z!`;ui!re>3)d?0!~9v| z8*5|3v!MuHV!jl<{J^Q8Js=G(6K_)FCz!yg%fl5@+C0Wqv{^c(3l}Bs-imSAr{x67unN%KZ2M@EMrdW+y2tL#q4`M-QC(KmZ77 z;hb=yYFo_XU!E;l2?vPC_gZ?tA2vZPM1Q=xz#506!io9?UMI?#4xTFng5biG+smZq z%nts7a_zDSu;5xoGxs!Grh1yK07zU89RPVP94t;m0#3H+$&Lqa-y4Y=PLzxY2Z_`v zTFLBQqp8y?RM6VHu)VjX4Vk;>5qtrhT2CT}oGMaf)eR`OVb`q6$LnrYbBafZj%Z66&fzn`%!(;L-j{Eqqd-?bMeE0{*@DF;1 z-$#aj$UXeSeE7ks!$0B~em@!hQ9k+sPWVAK_lZM<@A&sI`7r^H5q}%D?8l*f%rFj$ z%{Ni|&*up?-{DV^vM}vaY#XQx7T;ke%Hp#e zf#+Cr)9!4!tXI2pM z;$)880Vx)>HTAH~vlgK*vk^SH@{X#4MMdQW5Rg2^M}tV;D`d34aK`+VJp7IH2kCm1 z-Jl71jjuGkC@x=T`a5ZIoMUx@eOq3~eR28b&^H(xb^qYFxlb6)Z(?CuzNzD%pcXv2 z{2-;L2#41r@omOw@m~xP{kz_)JDtAC_&qk3=6wbnjv(|OOl|dV2FQ3?hNEmMz2QT? z3jf1p@*_ZhC_Z17*^yd@bhEjpbe}G2=I|1T1{82T%idfYjS`FStDt|2i(Tq9on-`8 zB3;Q8I1q24IyfEa%O=37EComv*p`@|PzF&Krl=Vpc=HhiUTBF2p-NtoiF8#QkUQHz z3GqIZRDO+EXY3u-=h&o+ zUvRizvTw`RUU2cYxO~6RZ@7ScJ4L|8seqNApDbYC6L|o~`hrJlE_!1?Wh?LpUdtAv z@iG%0$B$fiu5jV`3E1NMvkZaWziIt*K4*ChABP#NsmOI$SAhI+}(T9Kg@^20MR{BBfV1JU&=^bXc zV?jaX{1SL^s2q+E*CSJ)ob8vcH3{`~NEt*%(!#Jnk4XoKq;T%yc6Ad-ECKTJppCDA z06wDihum<{2$_xSvQc&rAuCOpUq*>+}abRk` z(h&~uwGliYl?BfhB7Nj!f{-Z5>8>kA6MWYreazG*v7`xbFb-fEvq}{4jxpW2B=ok}g(S6f38@p9Sg6npL1Ml_&*?P7~~O=b${e|{w?|< z)?Gh(u`in8x&Ti;dCrAHxVD7>Z5VMCHPgVZTn}%hwZRh;MxVbO5vWC{rjaZGBMBL zf9#)C;+Y5)zh*>8Zs+V;E^Wu@kIu@h_$h^4R3bm+!2TUZTLibt8*M46>SGqqI zeo|vNcHF0Y*bNStSQN8g!3O;dKlA9UD2I!~ckQ*3;k0}>zeDi+WFpKF@UxL#jbgp6 ztoP+qddtZO6Mk2W^kfSBz|84!_!W-*LZ9N<)BDljbg19DYYyDB^3bL9qH6;i$baPK z!Rdz=9M>)w6{Q_`>48}Zh2trM)1|+pzz;Gk7}tMux0S%2vFkM4wK^TL>vW&*mct9~ z+6`BC;AfO}#F9$g=~3~i-PS{QTl>VyEkr0^JuoXW(4R?FFvk&pe_&R=dOU@qgmVtg zO3VX-vpK;TgGpq}q{9nFl`v+Xddd(!YzT{Mj0X(8H~1x$(UlUEMol`qT+74AFwyBB6P$(=9F zI`Y!&X>S^g$#U|xZ)?ppyNPCk8!33JTLLPOJRv`#=x7R0E;8m5HQLP3u50b>ZiiQ!`N1s*Y8&U; zk;XBHAqD22SO6oF>=?MqK*$LxmRob}Oh>Z}p_SGR-#@*3h=zGq&?b`{9q*aaONH%w|shG^t8ErTxP z2)vmA)wj4wsxE0LtN<4yu+@bjkO4hcFgo;YZaQ2owe8+5$tX7wLj2%`bsdZn+e)0a zYtD3`lTzZ-#Rd&tg&n)*SaQ2b_ldI>*b7aF=afEBU$+1<#z8vxk;YosC&im7rAKzp zkw+hW_JUL`V9@H%IFHO3I#RI84|4bT{V7ufuAN(E6e5q#d!rEIw{SIh`kutX^|(H` zHSwsFY`H<$vpg)|Xh3q|cUsxQ3f%N@S#;o_;vRZa%voAdjKUwmK6!;gSacNFeY%wyNBs9*7R|Flr$Y?P2--xU*r|W3Qyv|d;s?pPRTD! z5f0(=qlJ1|@YA?6zt9r#j3W7N8uwY%)Z4anIovCUbmkEb;4nUrUl<$ktb*n@9#hyh z)webc%_`iQoLXO1XeEc@rS084z2I_z=Yt73S9d`nMpS7629(4VUo=B1KxSO&=_|adcuo( z)2G=7N;{fX^dQ}jisbt|BqW1Zas{6}UYHp16T`{)GsS7%n%3_1wLoP>=khL;_zMm? zQJ9eMt7}jfW>=?THVrB9^#lhvUf%v`VW`OH)f;$h--4XI$Fs5M5ExN zv?^TxM^{y6>&>i6e4ddT`vTr_vM@&Y6F&BOVQ|!+T?7)*(!R)^GM)V0OwlhXaO6j2 zlI&##F8HV{+IWnUFWT;CXkXb1Z;M2xSMcoDK@k6f=f7TVaaqwtiV!<2kqD^(JE8)d(L{5zV z@GgZnw3FZ0F}~>Z!o`j)%kF!>dohVtOBMKUHW6`G7Tx zu? z@B3fIjcI2U_~T1uNeTaRvDLLa&T-IQ3pes}1y1{+EL`>lU9x8Fm(YeRQNBQ@eMMGq zvhX#&>(jz;{Wp`B>$Gq2i=P$-J3lKN`mE@Q2&!5pE>=;Yq{`2%RN|(S1$sG(QDNWh z#nCltC0Cp-{6r$Lhn<*ErqaMT~9Y^(2TzNxjB-g)wo3~xC0lu{It7|Oc&hbh}ii}x_-f#LAr+*y2NXGwwy3n8;U*z;IP z0+xMR{K3%UB`*abaUI+AmFr<&jNCvrSiS#7cwIGnS#{_w@;%E-gB`aKH<|3HfC5z7 z(o)k>)}esgxzzr8tkIoVSW&8X?BeFqZVu~iIfP|3 zXW;0oY`h^HoCu+cL3oTo$Oj0PVGbcJeOksQGAsQg6AEdb;5{>t@hLg~T{jXx0Yi_3 zVIvOV2fItd9ZwUstViNAoIN9)J@D%X&vMA=wgJNQe)lGe^v{th7Nz3w{C^KNBmEhJ zG#k?V0icj5I9#SX%9?^rOlHSg1+Q1P7FX1vh(8jO5Z=kj=V+Q&1F$cBUvOVe{u7&f z-Jj*j{m0actNN>|s``&9i;>|)QlczhxpHMc`5aS{s5xtGdU=YZ0Jp?rY$fSm;RFPG zI3oT9%HW7f{2LL}RY!VDMV&+RXK${4T6$mlM(U4>jy@i(j`4~4HIDozi(egoC64^} zw|GOslZou_D{=pH|K%!qJMl=8Ciz_QOVikYf0^c&!eHdYALKBC5;i8h?(RupTt|Vs zfaE59le8qcmxFj|+U03oDgD;jsR%vwxO8Y(+J7GjaD?5p)k=P*^OHNbS?{{jI*5j4 zEb<}WzTMh*XuFmDnB*siw&Ks6rP&cb#Eo3-Gmmxk&fyXH0KCiwlG`zCf9 zia5?(4Ub$9p|>tBDX4>W?016ATufRn(wyYI;Fls^$6@!EN|pcM;`~phM)ae6p1r2| z6sVLgnC7?mbid8N|HZ%GVc(JO;w|@=MmXMw$4R38fm_r|QTW(zVq09Wm?)joOx(l| zx!8R)71$XsVB*K{0Kf7fec}d+;~pqAMSV84-+x{GN^A&z7JKOfrIBIhrZf{jhawPa z=?nZav-j1|a2!oo* z%gI2Wkmdigd-?yuU_|^X=Ms?)ZPK?;&CPTMQTa&0W5h0%4{>EdL7aA)vIjkqQW8MV z$rM!IY2*smHXte$ENY-)mROh?&o!2X-Xtnm7~F>yTYMD-EiDCf@NMLl9mO>r1!~wR z{88fvfH_eC3J+1~gs30|1m9_dLd$?g=oCdA;NY3cba-U6%;K*nz2U+$ysgrx!1KN< z(c26rC?oe+pkX&Nb&#)xKw?pPj(rG&m>7y@C6*{{;@eNN^{a<2j90N2e(8`BaM$?@cPx=u=stuT@dRBD#sw z@zJER1OcM*No669G_Y^U-QQ*HaGN(Eoj*18tc0fwS6x#NJZ18ywN2gdl*OM`wXcJx zZ2q*oi$KY7)ivD&Pj>#)vmT(t?t!Y!BNx83<1}AiV~J8u=s9ST<3M3 zGUN5+Zz2tqRcY4rMK)V{H1fN_t3ji?K|ys@L3O${EgET>I3DT9xD5Uz{i_@LE35i# z)-(d3*$cpstxT5F;(`Jb(4TH)!?b#}T0XJC?Af!Uk!1z;PcJiPw=tHO+Uc~`!#g3t zx}@%^wH$t=g5#2wF|e?vt{BYt`PB_5V$GK#}F-AP}E;NpNJ*0bSZG(du67GRjd~nxfT7j1@-mhm3jS%1=aNx zNl03azfCWT4Cv+%h(Ps#Bl=#MS=Ot-SKcd26V~8)S!H^8$XW&7en+V(7#VMN5grZh zaZk_9@RJrOe4PTXe!nbKwjP?jUluIez?$Qi-!F^7t24_C;V9%*7=|#uAib++QS_#2 zu({W^_Cp{t_BLFdSr#L^9bzJzN=>->gR;;}2jii!kMghq91n1;I^iYJz(P|$qbeqI z0tYuz4*L1t!D&XZoAA#7SQx-kR+&w35?T!A&0YimN5~u?(-s)}KV=5tcX$`H3Et|$ zbw>22;`W}K`s*P@q!p!Y!!H3OpF0_H@ps`LvdZFw?R4NJh8@rgrozk9N5-8lkDfTa zJW!(B#TvpAzJmoR!gqU0>bkmm!AS;EySmqtC{ps>ct>_wQr$hg4XkFki__Iiofc~E zN8Ib_Ub3#280>C)y$4zLcxovf1?)YgVHo@7l!b=g=c%TyP;1R9;tuto$h~+@PFaL- zKfWOcbk_rTT~1kw@E~Pl_&ygKNjS_E$$W@0Ce~>$bK1+D_6nzcuG4;v(_ZPcS2^v~ zPJ4~hUhA~abK2{i_Ijti!D*lGv@dYl7dq{Woc6^|`x2-9TBm)f(|(=Pe!bIvgVWyV zv^P2J%bfORr@h5#Z*|(2JMAl+_BN-z-D$tkX}`&7?{L~zI_;fKdzaI`%4uKiw0Ar0 zJx+VC)4s-OU+c8r?6j|Q+Sfbn8=UrAoc3Ft|F5EZSOUZVfFN3%ifuco*zDN0ZQIUz zch)A}qM=wQ9!i9gA)!<#9m<5Vp9omGppE1kzrIA9ma&QVO$s= zCWMJ$QkWd3gsEX#m>y}sHiV5~Q`j7~gsov)*dBI-oncql9rlF1VPDuE4upf@P+1C8q<{{Sci0@RBXp#W z($P9b$Lcs8uM>2lPSVLbMW^aCovt%M~s}H_a8g zQdj9}U88Gtovzmnx=}ajX5FG&b(?P29lBHh_uZwtb&u}VeY#%{=s`WChxLda)nj^G zPv}WKrKk0bp4D@DUN7iHy`-1*ieA-gdR=emO}(YJ^^V@vdwO3V=tF&^kM)T@)o1!# zU+7DHrLXmkzSVd7UO(tZ{iL7ui+$F}Qv{9S1 gSzEMK+q7Lfv{SpZTYI!u`?OyNbg)224iy;rAKa^td;kCd diff --git a/BIN/EDIT.S.CTRL.txt b/BIN/EDIT.S.CTRL.txt index a37b7417..ddca6f0a 100644 --- a/BIN/EDIT.S.CTRL.txt +++ b/BIN/EDIT.S.CTRL.txt @@ -497,17 +497,16 @@ Ctrl.S >LDYA L.DLG.SAVE jsr FILE.Save bcc .1 - >PUSHA ERROR CODE - + pha jsr SCRN.ResetStatusBar - >PUSHBI 1 >PUSHW L.MSG.STATUSBAR.E + pla + >PUSHA ERROR CODE + >PUSHBI 1 bra .2 -.1 jsr SCRN.UpdateTopBar - - jsr SCRN.ResetStatusBar +.1 jsr SCRN.ResetStatusBar >PUSHW LineBufPtr >PUSHW L.MSG.STATUSBAR.S @@ -522,7 +521,9 @@ Ctrl.S >LDYA L.DLG.SAVE jsr SCRN.LineBufOut bcs .9 -.8 jmp SCRN.GotoCurXCurY +.8 jsr SCRN.UpdateTopBar + + jmp SCRN.GotoCurXCurY .9 rts *-------------------------------------- diff --git a/BIN/EDIT.S.DLG.txt b/BIN/EDIT.S.DLG.txt index 7d8c1ea2..b587ddc4 100644 --- a/BIN/EDIT.S.DLG.txt +++ b/BIN/EDIT.S.DLG.txt @@ -300,35 +300,45 @@ DLG.CTRL.Draw.OL ldy TmpByte lda (ZPPTR1),y + tay S.DLG.Ctrl.OL + + iny X + iny Y + iny shortcut + + iny varptr + lda (ZPPTR1),y + phy tay + lda (pData),y + ply - iny - iny - iny + iny value - iny - iny + eor (ZPPTR1),y + tax - lda (ZPPTR1),y value - sta TmpCount - - iny + iny label -.1 lda #"(" + lda #"(" jsr SCRN.ToLineBuf + lda #"o" - cpx TmpCount + cpx #0 beq .2 + lda #C.SPACE .2 jsr SCRN.ToLineBuf lda #")" jsr SCRN.ToLineBuf + lda #C.SPACE jsr SCRN.ToLineBuf .3 lda (ZPPTR1),y beq .4 + jsr SCRN.ToLineBuf iny bra .3 @@ -769,18 +779,23 @@ DLG.CTRL.CharIn.TB DLG.CTRL.CharIn.OL cmp #C.SPACE bne .8 - + phy - iny - iny - iny - iny - iny - - lda (ZPPTR1),y VALUE - dey - sta (pData),y VAR + iny X + iny Y + iny shortcut + + iny varptr + + lda (ZPPTR1),y + pha + + iny value + lda (ZPPTR1),y + + ply + sta (pData),y pla jsr DLG.CTRL.Draw diff --git a/BIN/EDIT.S.FILE.txt b/BIN/EDIT.S.FILE.txt index 9808c119..3acd8e47 100644 --- a/BIN/EDIT.S.FILE.txt +++ b/BIN/EDIT.S.FILE.txt @@ -6,7 +6,7 @@ FILE.New jsr FILE.Reset >LDYA L.MSG.NEWFILE -FILE.New.1 >PUSHYA +FILE.RealPath >PUSHYA >PUSHWI 0 Allocate >SYSCALL RealPath bcs .9 @@ -16,10 +16,13 @@ FILE.New.1 >PUSHYA .9 rts *-------------------------------------- -FILE.Load jsr FILE.Reset +FILE.Load jsr FILE.RealPath + bcs .9 - jsr FILE.GetTmpBuf - bcs FILE.Load.RTS + jsr FILE.Reset + + >LDYA.G LineBufBase + >STYA LineBufPtr ldx #S.FI.T.TXT lda #O.RDONLY @@ -29,17 +32,17 @@ FILE.Load jsr FILE.Reset jsr FILE.Load.TXT jmp FILE.Close -.1 ldx #$FA +.1 ldx #S.FI.T.ASM lda #O.RDONLY jsr FILE.OpenAX - bcs .9 + bcs .8 jsr FILE.Load.ASM jmp FILE.Close -.9 >LDA.G hFileName - >SYSCALL GetMemPtr - bra FILE.New.1 +.8 clc + +.9 rts *-------------------------------------- FILE.Load.TXT .1 ldy #0 @@ -50,14 +53,14 @@ FILE.Load.TXT ldy #0 -.2 lda (ZPPTR1),y +.2 lda (LineBufPtr),y cmp #C.LF bne .3 phy - lda #2 + lda #1 >STA.G FileType ply @@ -85,14 +88,14 @@ FILE.Load.TXT FILE.Load.RTS rts *-------------------------------------- -FILE.Load.ASM lda #4 +FILE.Load.ASM lda #2 >STA.G FileType .1 ldy #3 jsr FILE.ReadY bcs .7 - lda (ZPPTR1) + lda (LineBufPtr) dec dec dec @@ -119,7 +122,7 @@ FILE.Load.ASM lda #4 FILE.Load.ASM.Decode ldy #0 -.1 lda (ZPPTR1),y +.1 lda (LineBufPtr),y beq .8 iny @@ -134,11 +137,11 @@ FILE.Load.ASM.Decode .2 cmp #$C0 REPEAT char? bne .5 - lda (ZPPTR1),y Get Repeat Count + lda (LineBufPtr),y Get Repeat Count iny tax -.4 lda (ZPPTR1),y Get Repeat Char +.4 lda (LineBufPtr),y Get Repeat Char jsr FILE.Load.2Buf bcs .9 @@ -200,12 +203,12 @@ FILE.Load.2Buf phy ply FILE.Save.9 rts *-------------------------------------- -FILE.Save jsr FILE.GetTmpBuf - bcs FILE.Save.9 +FILE.Save >LDYA.G LineBufBase + >STYA LineBufPtr >LDA.G FileType + asl tax - jmp (J.SAVE,x) *-------------------------------------- FILE.Save.CR clc @@ -229,7 +232,7 @@ FILE.Save.CRLF sec .2 iny lda (BufPtr),y - sta (ZPPTR1),y + sta (LineBufPtr),y beq .3 cmp #C.CR @@ -243,7 +246,7 @@ FILE.Save.CRLF sec iny lda #C.LF - sta (ZPPTR1),y + sta (LineBufPtr),y .3 tya beq .8 @@ -281,11 +284,11 @@ FILE.Save.ASM stz TmpLen ldy #1 lda TmpLen - sta (ZPPTR1),y + sta (LineBufPtr),y iny lda TmpLen+1 - sta (ZPPTR1),y + sta (LineBufPtr),y ldy #0 @@ -327,7 +330,7 @@ FILE.Save.ASM stz TmpLen cpx #3 bcs .62 -.63 sta (ZPPTR1),y +.63 sta (LineBufPtr),y iny dex bpl .63 @@ -336,33 +339,33 @@ FILE.Save.ASM stz TmpLen .62 pha lda #$C0 - sta (ZPPTR1),y + sta (LineBufPtr),y iny txa - sta (ZPPTR1),y + sta (LineBufPtr),y iny pla - sta (ZPPTR1),y + sta (LineBufPtr),y iny bra .4 .61 txa ora #$C0 -.60 sta (ZPPTR1),y +.60 sta (LineBufPtr),y iny bra .4 .7 lda #0 - sta (ZPPTR1),y + sta (LineBufPtr),y iny tya - sta (ZPPTR1) + sta (LineBufPtr) jsr FILE.WriteY bcs FILE.Close @@ -377,12 +380,8 @@ FILE.Save.ASM stz TmpLen *-------------------------------------- FILE.Close php pha - lda TmpByte - beq .1 - - >SYSCALL FreeMem -.1 lda TmpIndex hFile + lda TmpIndex hFile beq .2 >SYSCALL FClose @@ -413,7 +412,7 @@ FILE.OpenAX stz TmpIndex hFile FILE.ReadY phy >PUSHB TmpIndex hFile - >PUSHW ZPPTR1 + >PUSHW LineBufPtr lda #0 ply @@ -428,13 +427,13 @@ FILE.ReadY phy FILE.WriteY phy >PUSHB TmpIndex hFile - >PUSHW ZPPTR1 + >PUSHW LineBufPtr ply lda #0 >PUSHYA >SYSCALL FWrite - rts +FILE.WriteY.RTS rts *-------------------------------------- FILE.Reset >LDA.G hBuf beq .1 @@ -442,7 +441,7 @@ FILE.Reset >LDA.G hBuf >SYSCALL FreeMem .1 >STZ.G hBuf - >STA.G FileType + >STA.G FileType TXT/CR stz FileLen stz FileLen+1 @@ -451,7 +450,7 @@ FILE.Reset >LDA.G hBuf >LDYAI FILEBUF.SIZE >STYA BufLen >SYSCALL GetMem - bcs FILE.GetTmpBuf.RTS + bcs FILE.WriteY.RTS >STYA BufPtr >STYA.G BufBase @@ -463,17 +462,6 @@ FILE.Reset >LDA.G hBuf jmp SCRN.UpdateStatusBar *-------------------------------------- -FILE.GetTmpBuf >LDYAI 256 - >SYSCALL GetMem - bcs .9 - - >STYA ZPPTR1 - stx TmpByte - -.9 -FILE.GetTmpBuf.RTS - rts -*-------------------------------------- MAN SAVE usr/src/bin/edit.s.file LOAD usr/src/bin/edit.s diff --git a/BIN/EDIT.S.SCRN.txt b/BIN/EDIT.S.SCRN.txt index 6f3df41a..5f58ee39 100644 --- a/BIN/EDIT.S.SCRN.txt +++ b/BIN/EDIT.S.SCRN.txt @@ -92,6 +92,7 @@ SCRN.UpdateTopBar.1 >SYSCALL GetMemPtr >PUSHYA >LDA.G FileType + asl tax >PUSHW L.MSG.FILETYPES,x diff --git a/BIN/EDIT.S.txt b/BIN/EDIT.S.txt index 86463c1a..e3ed20d9 100644 --- a/BIN/EDIT.S.txt +++ b/BIN/EDIT.S.txt @@ -74,7 +74,7 @@ L.MSG.TERMCAP .DA MSG.TERMCAP L.MSG.TOPBAR .DA MSG.TOPBAR L.MSG.FILETYPES .DA MSG.TXTCR .DA MSG.TXTCRLF - .DA MSG.TXTASM + .DA MSG.ASM L.MSG.STATUSBAR .DA MSG.STATUSBAR L.MSG.STATUSBAR.H .DA MSG.STATUSBAR.H L.MSG.STATUSBAR.U .DA MSG.STATUSBAR.U @@ -162,6 +162,7 @@ CS.RUN >PUSHW L.MSG.TERMCAP >LDYAI 510+5+5+4+1 potentially 255*\\ NORM,INV,CEOL & \0 >SYSCALL GetMem bcs CS.INIT.RTS + >STYA.G LineBufBase txa >STA.G hLineBuf @@ -170,12 +171,6 @@ CS.RUN >PUSHW L.MSG.TERMCAP >SYSCALL ArgV bcs .2 No arg, new file.... - >PUSHYA - >PUSHWI 0 Allocate - >SYSCALL RealPath - bcs CS.INIT.RTS - txa - >STA.G hFileName jsr FILE.Load bcc .3 if CS, Failed to load file, keep name, but new file.... @@ -188,25 +183,15 @@ CS.RUN >PUSHW L.MSG.TERMCAP .3 jsr SCRN.Repaint bcs CS.RUN.RTS - >LDYAI 65 - >SYSCALL GetMem + jsr CS.RUN.GetBuf64 bcs CS.RUN.RTS - >STYA ZPPTR1 - txa + >STA.G hFind - - lda #0 - sta (ZPPTR1) - - >LDYAI 65 - >SYSCALL GetMem + + jsr CS.RUN.GetBuf64 bcs CS.RUN.RTS - >STYA ZPPTR1 - txa - >STA.G hReplace - lda #0 - sta (ZPPTR1) + >STA.G hReplace *-------------------------------------- CS.RUN.LOOP jsr GetCh bcs CS.RUN.RTS I/O error @@ -227,6 +212,19 @@ CS.RUN.LOOP jsr GetCh sec CS.RUN.RTS rts *-------------------------------------- +CS.RUN.GetBuf64 >LDYAI 64 + >SYSCALL GetMem + bcs .9 + + >STYA ZPPTR1 + + lda #0 + sta (ZPPTR1) + + txa + +.9 rts +*-------------------------------------- CS.DOEVENT lda (pEvent) bpl .9 is it a TIMER event? @@ -490,7 +488,7 @@ MSG.TERMCAP .AZ "\e[999;999H\e[6n" MSG.TOPBAR .AZ "A2osX Edit %d.%d:%s (%s)" MSG.TXTCR .AZ "TXT/CR" MSG.TXTCRLF .AZ "TXT/CRLF" -MSG.TXTASM .AZ "S-C/ASM" +MSG.ASM .AZ "ASM" MSG.STATUSBAR .AZ "Press Ctrl-A For Help Len:%5D Pos:%5D Col:%3d Line:%5D" MSG.STATUSBAR.H .AZ "Press any key to exit this screen " MSG.STATUSBAR.U .AZ "Quit without Saving [Y/N] ? " @@ -579,14 +577,14 @@ DLG.SAVE.4 .DA #S.DLG.Ctrl.OL,#2,#6 DLG.SAVE.5 .DA #S.DLG.Ctrl.OL,#13,#6 .DA #12 Ctrl-L .DA #FileType - .DA #2 + .DA #1 .AZ "TXT/CRLF" DLG.SAVE.6 .DA #S.DLG.Ctrl.OL,#26,#6 .DA #1 Ctrl-A .DA #FileType - .DA #4 - .AZ "S-C/ASM" + .DA #2 + .AZ "ASM" DLG.SAVE.7 .DA #S.DLG.Ctrl.BUT,#40,#8 .DA #C.CR @@ -621,13 +619,13 @@ DLG.FIND.1 .DA #S.DLG.Ctrl.LBL,#2,#2 .AZ "Find :" DLG.FIND.2 .DA #S.DLG.Ctrl.TB,#2,#3 - .DA #0,#64,#hFind + .DA #0,#63,#hFind DLG.FIND.3 .DA #S.DLG.Ctrl.LBL,#2,#5 .AZ "Replace :" DLG.FIND.4 .DA #S.DLG.Ctrl.TB,#2,#6 - .DA #0,#64,#hReplace + .DA #0,#63,#hReplace DLG.FIND.5 .DA #S.DLG.Ctrl.BUT,#40,#8 .DA #C.CR diff --git a/LIB/LIBCIFS.S.txt b/LIB/LIBCIFS.S.txt index 033e085a..61181f6e 100644 --- a/LIB/LIBCIFS.S.txt +++ b/LIB/LIBCIFS.S.txt @@ -807,6 +807,12 @@ Sleep2 stz CIFS.Retries sec rts *-------------------------------------- +Exit.KO pha + jsr Exit.OK + pla + clc + rts +*-------------------------------------- Exit.OK lda hResp >SYSCALL2 FreeMem @@ -814,15 +820,6 @@ Exit.OK lda hResp * clc rts *-------------------------------------- -Exit.KO php - pha - lda hResp - >SYSCALL2 FreeMem - pla - plp - stz CIFS.Status - rts -*-------------------------------------- Exit.NODATA cmp #E.NODATA bne .99 @@ -1039,14 +1036,14 @@ AddA2Ptr2 adc ZPPtr2 .8 rts *-------------------------------------- -ClearSocket jsr ReadSocket - bcs .8 +*ClearSocket jsr ReadSocket +* bcs .8 - >SYSCALL2 FreeMem - bra ClearSocket +* >SYSCALL2 FreeMem +* bra ClearSocket -.8 clc - rts +*.8 clc +* rts *-------------------------------------- WriteSocket lda MountTable+3 hSocket