From 37cf4e0581b586f0b28ab96876f43794323d4b60 Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Mon, 22 Jul 2019 01:25:33 -0700 Subject: [PATCH] 5443 - standard library is now self-hosted Translates 5k lines of input in 26 seconds. I'm not sure why I need to grow the label table. It was already 512 entries long, and I'm only using 373 so far. --- subx/apps/assort | Bin 34326 -> 34330 bytes subx/apps/dquotes | Bin 40882 -> 40886 bytes subx/apps/hex | Bin 36881 -> 36885 bytes subx/apps/pack | Bin 46978 -> 46982 bytes subx/apps/subx-common.subx | 8 ++++++-- subx/apps/survey | Bin 42976 -> 42981 bytes subx/apps/survey.subx | 14 +++++++++++--- subx/apps/tests | Bin 33138 -> 33142 bytes 8 files changed, 17 insertions(+), 5 deletions(-) diff --git a/subx/apps/assort b/subx/apps/assort index 01813914746def6359c7e444fe6a1bdeddd12221..5fd51058f95bb1c33bc2a6c4f47807c151c3a60a 100755 GIT binary patch delta 6872 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 f%ZlG_#3v43Y delta 6883 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≀NPS74uq?iTA?!wJntWQr!^*iAfGWYe<)@SZK5HNbJ(W;@-k zel==E90z!NH($(d8mctt&CfNK)0^V7hDsMPFbSsaKq}pQ_cSnAfW|q^OuK9lXpD-= zcj+vVe?JX8E5Jb-_=5n4YM?`a^E7ac09RXnGnsum| b@>K8EHM@uF8QW2Fcto%(J6Ut7xQq4wJ)R+3 diff --git a/subx/apps/dquotes b/subx/apps/dquotes index be36b0c4d2821e96a9fd34d6ad0fb0ead74f35c7..5c7ee1c0be65ae35e5ec86cf43b1db3a400d7d3a 100755 GIT binary patch delta 9341 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 diff --git a/subx/apps/hex b/subx/apps/hex index 8b903e5dfec3f492b21693db80792b63756b43af..4bd5acce83c9e569c2ee66c19224c98bec2aa33f 100755 GIT binary patch delta 7223 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 VwR&wC9m4)8ZxL&A+SK;&{{!4(r!W8j delta 7220 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 diff --git a/subx/apps/pack b/subx/apps/pack index 792c30ba45d801d4f3fc75984fe852f80071e8a3..370ced9b4a3aa22f41d7c3063f5bdd629b488ff9 100755 GIT binary patch delta 12706 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 ZI2GsSR%a})c*ewFXSSwz)8wly{|~`~o)!QA delta 12703 zcmZu%d3;RQ7taj_$q- zOmlNZ1T}6ZfK#&h}+Z!*DL9-ox3sk&sL5-h*#^>FGKBF=X`BP4?x*~w;ZOl@)U{II$FQ}6pKT8g9mJvc zcSm6E*ABYKsRLB5xvo#|fG z6GX57htneT1@^~CU-p5RP(B>0Tn|2|Tq&+D2i4iqDIEKgWWN#iwUtGrv9POhleqqf zMoOz8*xx4w4afcl*&hP|RhoEjK=fdSK2?Ie-6nIig|sz6L6r|#OYp90c`b{N z+4H*fnXK11gg?R+JCLSV1rsw+6d`(y#WEBVu*a`mXlabl>Hsz+2)1Q;sq3!q>1D8B<@XuP!l20pKD@jEAm zc1l%0z$qTZW2&yIn)LD&pmu&x=pYF7vam2{>J`340=_?cIJ4^>w3sB22Hy zX)l0PUK`mt$gUB~{wbQwTNVP_y{$nJ(>Mo~JzIVLr{L&_=pcCJoyZi3_OY@zA=k%h zdJEw>Fx@AS&4>LyscZ?n@cD=xgQ+#c**CDRW-@ySztv1&&mhp!i3NjVNoE~kjU|@# zfQy!m=Bd-|(bNaO^F?NXmA;{D3mo;ens(yQ1$g9}$bJH=pOsyMSN*KPw-7dc$QxRE zd!OnWk904%rI=xf-vg6B4yQt)e+!llXZ+JlSqMx9pIV7*7Idi9*0dghlK{0Av9k~z z5N^7Fz%$4VXwl>)ewxSgbzNCjxavn7H1V_)W7x7-wc%|&u+kBZ1}rkoMvL_@xb|w( zR{Si5YJtJ*B18ucH(f#CF)ZhRJCp<#nyM6VzzW@irntXS0If1>!o46*mI8kV1-W=~;9RIeMYfAql=*QuK2*aGZp6m@+QgTd}4toz>#t~!BK2VZv<5DMNQ7V8NaG-9Th6`qIG=j${iG=lvI?RonQMuygBW|+snLt$TNDocXr zp;@d8bf_1`y1@wE_J_Ik7WxmF#T9sx-c3L23X~m?7S`PV0gh=E=p)AhVQyF!%Z009 z{g@3>!h6Y|b?pHrLN&!{9jwMj@~c ztP#D;Tkw+(=legu19%qkyus#38MmMJH@;JPxJV>#+Hx$MVrz`g+cU)Hti3viALh6TisE*X{~ zgO-sxMg}NtSSezk3x*@az$C*dc+oH@;;swR2V{DHN=zr@Gf1&Ej0u=avygBI2kaX9 zUvi#BDqL?=)29vjq)VR;u!mC(C%CGFMEr-NL!`MOW$DAOJ zLOG$+lEbGQ#|!l7=3aOmC8Ddue(Hsz-HYUNA5!o<+g@sBlyKCwx+wa3E?a z>k56M6HKomFaZ`sk7kpha^se46?AAE;&2v~D9Bw|IjfdnGJ=kJ^7FN?L9NY~wYI0BhB59TK3cq*9r=&G( zO(sjZk1(|-p*~5BOir?a+wav$6oC(k-bu#+|j;E$I zDk3gzSCfc+MwYJ*=`6}6h)MIaJ;G71#r(N3#;iU%Dn@Dc{v6Ly|B``%IUp1bkX$Vg zN0+iVHABL=2*1r6Bwye}K9S=&)ztZtJs-YH^RM$6I^nE2*S&*6&_0AOL8X?n%)j6# zT};;x@QbN&g<|s(xSkTwGKNkfnzdz#odt7u{eYlJM%=FSl!WsTo&^nBg=fq&dVVBL z_8UCMNcdNT%}cd8mdGMmmZBus)XFm;h>t3@>~##3u5IAER(_@tI64phXtjkuYnHXH zAG{g?$HT_6L`>iiTyNcqU4gLl`s@~Dq}O4!U}$<*mH~UyU$rfr!1v9^lr_9?i`TyA z=0R6)wmMFr%7pRUYN+f_T*f03c`1U{u~<7yDJ|(S71YtVOE=E z5$kx@@uv7q*~zgU>Z@gfy#%_nl4s$7 z!spE&rxo_;Dbt@4NiG;#6T`=np*=EackiLS28Kv_4v%y}F^(uQCB=J?+wOI?8cN!= z_NJ^X{z}hR@mlb1?`vCEj^;YW%+c~4L35{NO!+?Xt?sXEL3t;!A?Az63=-+b3Bdt| zfN}v;(9w!+#ih$(Q%0>}M8Afl%W&;vxQiI+fe6>#b-0E5b$!P5HbtV(DVjF9aHnX; z&g#xe#m{)OM%d6S&Wi)XUO^4^m%J$7zPg!26JTRTKqO6V)qi?^wBT)Iuof66mx95c z9sC+l$OW`$oOjL#674U!>p5{Bq3f1*#ZaUz)VN1w*tvZri$Ql8Ei#I@SaPrU*HL$C z$^8Y=UevfBWb}5w`5FDR8_>~{U+*J22C*8@GSdRfcs~Hv@qRk>f9&X4H}iAus_l*k zJM{qi?iht;*4tDan#BLmTH6Ul<*dKp*1>EO49E=PuNUrVep7n>2Fo)0YD@p~V!gV2 z>3enx?m}hJ{%uaKxSvnyR*KIG9(CZL5VvA1NZDw!I(3IG^@z3rnix69cM7%q7~x1k@^G6AgurBxbP(M3H^S`9+0CvvsCNmfX!j+9n&(MmhnE4tZu=9iHf zu1B?lG&_uDT0KZuDOpj-deZ7CTII`-6<48r3idv3P-Mi#1I2jcc=-KxsuPNT5z8>2wcL`G?T?NogrYrMI!c9bi-6F2G2v^7L5qt5441DY@G^WR0^sPp{RGC2Ec6@gizN(`(H!YdzI^ghDix#LdRp^{fo1W4(Pk>`2xLSaHB#0|POZys&q$MD$ZoOdPwyU0gjO1L>;uLxe_hZQMI)MR|qg#f-*nxFHpLk9}m@^e#cOH zwxH(~Y$!boMa7l72-f<7H{EGyk{n7ybObguk|#%IAh=tMbd)2<5qu;@V)ww9K4Gx2 z#~@|`uiV$P95>md=U8K|C;G;0ngyzOeaTrVn?s5m=4jufPUl9K1A;#QJv(AUbFlTJ z#Fg8RD>e!bvMUsQqoRodRk{g9=jkL9S=SU9{)voEvJ!si;tvkI2L_<)93kn9cpW(G zz8W$XDRL8iqoUt82;EDBqI6e^w$pK76FSvsyCkk?9lBl;ijrL`vdLJaXq4z16}=`< zdI~{jCHa|3Iy;3bholdBwUx~^5g{}c>^|EcCs+X(UpX-GKDY`29Mnzu>RI%ES zQVXt2GAf$uaKd<~o>EaFdJYnbYP(j{SH>bmS)#8gvf*ybR$mdYGE69%OGlW{3I%0!emN-^>7?M!K0&wz zJue9be^W}!DQF=AYI`tJ^eHEh-`mG_OK2GBO2g03F{Tiv_LLg_L(lr_ctZ&v>RQ8k z{$Bv>KlsUPvFK|WEPZ_1rXdNfjh{C=gww!IP8zf;hAPn=J#D0+Xn3Eum}MdVE*ooB zOX#v8-OJ!%U;ltrd>}`?aZ=}}m+II${O=W^{ob`~vAelTw;iylUm)8HC;N@#|4`nl z|5X0xnB)Cp_+K%e^7cGL42a=>`0Fv?7xpVO9T>y@fY*8Z1QrZD=l*gXyfG+-|6OYF zpjhSu-wXm42>l1g@;_bA*bf0qsMwKYQqTG#hiyHL=M6i5L-$d_9VdgcoODy6iXfJhNgD`ueR zYkLb`_pz-J8v41?u=9z7Ftvl!P=cNhgoa$#8Wt~eOu`J&*EEC=^|ASE)bns=l|wi! zIpIzkcFV_HBzpG6hH8GC3Rx}>RYgqA?4PB&CemQD|311YV8tdBCA(4tj~!&H5mM1| z^!#2ZN_4I0T^VZW1RMW>r3k>dTDuBVc_|caSm_X4%aOa2qWN@C(ivE16Iav~8_LmY zDzh<1+8J|uiJlbA?vm&m6&(_&@;*}1>aFcc(U?aLGS!Mw(E{{5BNRcCVLqCM9+I83 zwiA7$hFF0r_k@Om6%OGvVb}h00M)nU!_{*$*N}k?MS>%`hGUBz^RQF&jT$}^s4@mg zC=Y+r0W3DG26l1Ma6>#7mAUA7R%+<>hCL4nlAY9ri@s4qb%82Rg@&Q7G?YAa%tMaU zVA;Yow8cit!!2FIszr`@0MR#UcweB(2qd9AT%<$RDG$+38V<_m=tA_|FErS`rCJ)7 zDAD@JSftfm^o@${Efl&R3Po*QDO&o#F)J~4Mfg*|dn=ceg$;#Db**T!j74T+MBk{W zw?LKuAtOy@2c5-EIr1b$hMxk<<#Tj4x|Rw>o2bs^a`fO+F?&*UP4tb5P6l*$hD&WG8UP25q+bgB!Tk(d5M&iq)+JJc1qHnKOGgl zCtj^eK6)M#ie^&P%jM|o0>>Pch`y%C{!?JBfR*2bBIZg_PbWop#T!-$+|Cts#D*sS zoN`=FQHl)3&1@cOv;d4r@)xKw6DcW2qv?)t%F&5G9COr5D%yjd&xN94}-?bt|hSDA{Jq2J~t*r&B@0N5!y3^yYM3KXWuwrb(h2OOA-~+x9$!OLoeGMf8mtUd|OtYwy5aP(;0SJPFpolmolW+w@3AYD06BJMpoFo%EYe*n713?KG#g$=< z$9nIIqN3}uuCA+Y)K!6~fUe4+EXaC*2aQ1ycRfHfzxRFBUDe&w3Fznd-|v@QD$}pt zRj*#XdiA;{E*W>h_>7DUkNMNa)7FEhr$e3&gG?a(9^~vc_OeSanV#HxdE-mX^k7hH|E%_8YtWM${TTXG_nME|G#OJ;&CShquYrA2PHIx;uz=2%P!0MEV37nix7$F_%Y-`m0gY7d1&A6F zjcDq$RBaXyC6(~iy@BDpK>s`qXjr>~O|{1@Z@;`Zk1>7%X?A?!gz-)K^7af#v}b-z z?U-WLOd3CiuYCmN-zIVTZBip`7l5#6Nbkr{*q~AC5i@ZuL+S${v$V%1vQXLCAB?gGe&)8qL4o(nU9o$^-PRzGFb9uLd zjftbiPiXqaKGDWJFTqf*qeg#J+4u$k#eAIlvzoiV1NVj(vte9eh0{YN<;&56zi*BXh*hSO$( zNfewL73T`Yd7{K`ZR>OG<*2gm6@OVZweJ|D|D2Two zVS$3lq%7@gn$ED^U8T2wj#;DT!C>0(y_Bx6ry*%6*yLKa2}Y>h3Y!!b zXL}g4d9F_n{A5n%&8&4}I;X|p^f)*TQ=Fc{^J(h&S#TbcJyz%d&RY&1mUBOFeg~XB zViU5Co56{cRXQe}oXGw{O?{T6Gu$Pc2*pxFe8WV+iB4iD*b|!JMER1dIj7;NDK=xO zWAl7(!DMgkNTQvpZz5L~EREngRo_hUzV0>f6RlWtU8m|V$d0C0ZXWODXv>i{-K_oF z(%|=D@H=_&@!-G1^E_qNpI{8Jl&(8)SbM%l(zWjMiN#HdWp6w$R?q$LEaEzgJe{5m z5&pxAm7{_(J*=m-%HgT;DYx2)w8CJV!J zy?RV?(hdT7gp%i3V0R&}K3*alZcd&dR^!FK`f6{gO}#IZw%GbvzEu1Ak!HC(!QtQE)ZwuW&hbfVgva9S%LRD@nO}p3*GB)Fzn9 zh4iO?Fpbfu&6Bthg_}^gOD(wfOWeT<_hE%Q-GckB#OI{X;VU5zKNm=z_ zUn-;i#5SoyZ@sTgYGc9nSf|l6*bE+Qylr9ASA>-ed(Avb>y1&q#1eSEem1pfKu>Cv zH>9uqUX3;n=r=0#-Zi8UQoaWCF#2r@ofS)Qd}=jrcNF2gZZ%YB`dS9waB5uV6ym)% zTtCqpHbTWwgjDw$?cW|=p{7Uh^cv|_qH}7}apVR^lLs8Ly!Wz`M$rztPo+2yw3CuOC&q%O&#?)n)gU@PcCTfqc24K|RB z3~A%>Fxm)Sqio}gAf17?tEs&dz`|lu0X+!B=dnbQmofH_ycn28OtJ_o7Bv!hmIBrS zIA*Mc@3;Sx^U1aoiArYuMVXYMLL4P61?>|(WU8{EU~BAHN>w@)tWS73RUsq~<)pCK zteGNJAy#5cMM}%Nq(UO7@H)Cr0v9VS9|ll3_7tg}u@eZkKe4~_;2R}}i#T>L+czb! zzhb)yKqwp15B=91wT90mLL;`D+u|@(Y=HT6LU5&Lsv7IM5Y~*0i##$tSeH7d402FgjSADLO*UKl0$ zi3Y-uqiJ83)B7!0($hYJ@v38F_$XL z44N6_RtC%&pYLaO(5z{gJbGo;kInRjQscei_k^tavF+)(J^#`Rm;@V1M*EEM-dQsZ z*8f+woet^SjxT6ODqwO-d9aEVevL(f{T^ z?+{(AM9-F(Pr6|aQyUYNd}W#kPEKbEI_XW$8Zp_sC{RD1(x9uP(BOtp^ANp8axp74|@n@bHmbf28l$4ONFYT4~5faNKZ>z*95~?w?rxmjk77;TT zDWq3AnVl%ftjsbcR2vIow&g6|E?^)=T{kKVHANw9w2~GAfiRXwNkjZ{WOn0;TEwQN z;UNkgRI$SfZ8db`is$C4RPVz(IQ@^JtRD0Y|2Yi=ix*ss7EE zFf&GHO-RMaf8Z6&6SE4gv0FVq1_lfq#j3IY;8{?%<0)p~Q^0%|4O{bEb_Pq9`3J?6 z`CY4?-|X{YuG&_BH@6 zl>jcZ05m~?%>CjFijHPb=ZU@0JK{p$qF&SV0X*q2W&H$N+$(rF;W4;@7VtRVvay{y zH&5`+GLIP8HnaE;lB+k!l`nQpVaQ7*3#$i@l~DFY;iYrbZ15Vnm!ElFyTB5|q&c48 z$+XPQ|Jap*YL)VlglZ#+*4h>1U4&<9Hc<%$_A2|c0zH)i6CnF)sle$<0YpVMVy6)o zX4Q5v&E#utFRY~f9#rha1ND}jI8W({)hUd(QdwjbxHL)y9^+Xx9RepWTB758^>e*+ zGW2!CYMtgw&GOP|FSlUJB7bt0cba~_3IHbb&D7JYDgW{AY=DB0OKvIBK2$!wQPzZ%<3LrarM)luIX-Fr$Wde*m- z7%sVWm99bEqVHw1@1S&i4tK(0#T>AB*r=!o;0mSnGHA964ab}9GA~cl;bK$HB$@RWdvJORKl?O>h?fJ(`IYP=&uxf{GMfo>26U9ZiOyiONH*^ zbU`fzq0k{ip^v0tTol60u|nT+Zq<@Pck;T0qE4{+7QF@*)2Vgm%AM)VS( z`|^yC{x0RrVo8hQZdPH_XM9>Q-jI=hHv~xqQ9j~)D;%O1Kl(z}oAn$D6|rVQ`bVFd zE6La{8Ya6DpQVT|R>Tja5ifEhZk9nwyAH%8m?W2`5kKihyjBrEtBCtMiJ2)k7;C*E z`cM&lyURJ&gKiQ-inz@+(ooN(5f7x!G%Fvgi1QV3O&alKZp4;ATB?XgIEk?p1b3Lu z6#Skdd&Wq1qRhfqFs<~+Zq!A%5xSKZby}XGqwc=uQ*TBi)kW)m!Fs)4KothOt^&1|z>l3Hi=eQAz*SWlK#(@}z){y>i8nNa^JV{Be0x^XnIt6G>;xNr7 zM}@irn7KtK*BvOM-%EP%(ylvz6Z_($>kdTdcde+}i$hip0jy>0KR^hLNTUX( z`t8buj{{9afd71KT0w&py;5Pls<57ySdAK8X7CsVU$)A7O6JWLH0Y}P6}SD0n01<9PoNQu#@SP$vD+`|Gg8=YB*wEOGl0Q2j)XdkG6S3h zX!#)LjBVjZ7=9KwHEdKT)a!ZCVR+L+8sPf1lu`>s@%#zrXKa9TCAWc+oAnSw%SoF| zI7rrW0!h4pIo1(;g<5~TEj7|xKC+VR&JVu;~52{s2oB+V2uwQe=(8%7#oI_b5 zJ;uukCcYFJX$vL$AuX}z5pu&fFGv@Cg>;Zq7go+NwkUQ$wsto$E(+;mnJYtfLKJM+ zJeS5V;f7)8XkgUR`PN0Z5!142FF^U`R4(7V#LEMEi}KA2oNQxQ!hXln_Ca-Ul8Oa;9|s=O$ZG zt>VP0PqPG`4b02Ya8=I3nKvg^g8tuZRgBRpdX0n%vcIY45-B>{P4pwbNYUlMd`OBu zRvj*Il8~myYm5|3->DuaY0y{Iz z^o1sTgNcalQAFcFM12%t4sL^8EJR44Q045Jn(s}1Ghid#Y^wVSxQPy8P4sW-UC@?Z z1UB-rSsmO^@GZRvY`Z)gF9OGmraMc(HeLi;lco}q>c|PT-w`aVU$5q2o*K_Ar)mvJ z7Y?^DhcSx7UElx}LVB+>4$rx8c$qn5C=RbF4m;J_|m6ao#Xxk zbvk9k%3*!o&vI$qtzK!;(Tc+`#o?wj4!?8ZFpoLBrKY7uakwCj!zvdJPcVn1;_wVOh$WGo#$l@q zhYy*<1jXS~#bNz>4m%j-H>z%Tq?p0Ax2)7j1^Z*23%1mD#{rB=YrZjsO?#6kSt@HC zmXT5%+>c?7S)`yN1rZxqS6;=uft^Y;4vU8cQe0U)0LJ6caFDN+slLhyP%gCU%eBJ& zmRjLSvVO(2!rOQualk{Z5CiH=1G3i&k;$^esKmDJxECtu1#ZLOef@GZ41T^#6@#W= zL~%K+M?Q8;g9zL{3fwcj$?XF+i7V4|KPF2*{yTGpiV!{^nN@chMiZJ+l(8l(uGob1 zb(}qQCirwSZfjRVAkR|8W|N6?mf%_JUddfW8t#JYTjY#3tZ*4?k$!<1=PE*=T8pI6 zo`6WPYG<%a%kC5ki*&BGGiAI}^>ay>NDC;c)YJWlWP65p;X)8R%7jzZex}ISN z7kbfkm+UgfOnrvK7_5~reFzVfMJxg%;DS-7us+$zsNumQ(D`$YV$ASy2g9G=HI=r8 z27bruP4%WL`UTr-j~1yaUC5@3a{DMj#nP};nQOLy2Yb;*u;=;QB-2%kj#YerF$XC5_E3Cjk~vhjFg{!abQ#~>yaaiCeV3c# z+s`2xE5m(!rvuYAzCTdTYJQ)9O*BgJohusqo+f5|JbR(-b`NS#0Cr0{7lX!P=C#ws;Pl;!b#Cu%W^55($GUiZt z#!YozoRsLSk9Anyy}k)N{a^uzrqGvEf5^ z(xr;@Q!A-gk<#egRf}6y>ykR0YTXHgqc&7q^)G3?hH>ts7S%2QDJq8`Ew_*^b|*bo zjcO@KiIPdrRHTNlPkVvi@c@Bd#PH@<+vbOD_xy06Zf!0Bix{+IUtKNCOVvXSrDCKo z-RdvsMp;2t{fv`*)5WftO&4doEX$z#c3;yWRYrm5paOhdKkqG!8mq#(LyCwH=5@$! z*?|xQa4HXkm(dPz`3ViLj`cEgH^M;|MNi}geOE>AxsgauLBsURob;P`ov?iMLT;-{ z@J9d^lVMYJFq@SwjZwBdlNxy!pbRbQ~g#~kx% zJdzCR7$Q1CdS4}=&>Pl2;bIGho@^`RQCgPF5RTCFWb#L`a^-b!iXa@5oYvl{T@6#f zDRq&QLB~*7zgiuGm#QiF<2r}2v{jOPjWX|}rg@ul_1S48??{rH6v-9~$)Ge6clS9U z8I6;SNcGi+pd`kjW!@yc=i@gVs#E3HCkC$Wt0vcQmbqARP}fZFm-L)2wQSI#ka;mR zVf{|II#fo6a#U~wvawCI?cd1sj4y2Z&Md!z>7c;)Y;12781O=}%B;TR0a)EL{<7t&qwwv#$H?J%zMYYkw@1DpApIWRZ{gU**AZKK2+B7s%| z(6rU<<&>NoGOKYO*s1ZL-Y5F7zKvp($QcFnLx!$(KtE?_KOQ`yfc6!HgYSU#A-xC7 zXE<|iX6*0T`x)B)X2R}nVDD{oxIERcU2U~RMknD9F19)WjM*@G%oXBcD}G^?*k_tg zJU_*WJqPBYlJ4MI6Y1C3?ku7Y>-Um0tL?@z^!F0lZ~*~Qo$D{^?B$qS6iV)5D^tk! zDqCIzWlUSX!}`E#4HYd@zoBd!2eoP2TO_ry1k-HWNBH3u=`t4Ep2>a~T%GDTVscij zKSh}${X>rMuq!2Z$u{)9DkC$wk%wbC?2XWXC*jF8zr~nO5`9>|P#NSoFfT+A1#h0FDt+nB2SC^ndL+fHzUoJnuNYKr%nf+`Y8hw6bOH&bH27 z?NFY(KD=w2Yl3&vVPBcF?sK^v8u482eAUD}vW3x*d25T#o}=crBVkGN3mH7OLjX6- z|0auO@JxVzPYul9O-2rL6^Z1UF>kUmUZyxaZ(%%7fjn0$2d792LD{k$LLvmk&COV3%)5!_m33+YD=;g?grJW_6wR7}K`pCbAmhPW`#vwNY} z0EhJtc-IDWn!bD&rW%9cNR>F5_U38&PYi`h0@{vBk4>*yPlo0(LEa8&c!<=rlx^rn z;TPId1e>Z)QNGxKvEa-V(rDivrjr4Fw)n8v`paUMa8wEEZ_y<-=;- z-ns%09I{(rv{GOtWN(xTgq;eAZ@hJ+oxWgA?BoIKN5Zw@C(za|Zq>#+ife@(#eG8K z@|^e*xcI6Y9rYSMOxG{0-^Zbi&G0D{AjTBhe)qhot6_qM>^sw@H>^h#@v+oz5C_tT zN4gRBQ^eyG@i)&oC6~Jq?`D5ywdaCZM8m(Q5wCP3eq0g%SrN}qBi`mlJVz0K0%BpX z0w*!v@$fftF2{R7x}LMCw%?R#`YLvNL_*Hwrs+SwiSYukrim`fZ&MX*4m>Lx(9P~; zak}La$^+M)06z{a*RoMnr2CNBvz>f*k+zXyzo!A5@mCC%K5N>#Q7rO2$=8}%oG78Z zptV8tSGvO{u&b%8 z(~YNyz85h~|6GQk!lutHFMWlHp5tZXoa*}}RLf}7*2Be6T-D^+zJcw}-o(%QI6>pt zei}-?B{iKZPnyPp#&_l%;X14%0~X#UT++PvhD&kUHewdmGrz}>A(B%w{_}ArF~{n0+_B>SycfFaFJ(2<=RQ z>OB=!0b}uj^>&3d16bdwr97Llz*etRSj&MWQa6@(7h@sT=o1yzKY=Culd;}pES7k( z!ukeS*C~m=FcwQZ^t9Bz-#vtNxxzY~o{ceXl~{5L>8j$nUfKl;n@8ftJ15AFD~kl0(_ANuEJgY!Tg+(|h}SziQ2RWNhul^Ef*x$mbUKmwsqIbYs$>~{_XcrKlDO#A?soE9P>I3PE3w5s@N4VN_ z!VK%%WzCKOV&GNsmP+ysV{EXELGp;5M9**z?=0ZroX6^I;kCf$qDJPRcak<+|^RmPuIv47__)7pRF;}~b z8LptVNP7lsPo%9%uub*C%qORN8}K{j(O#zhkhYd_KLlC1voKVS;ZV7JL& z_4nWpQmPT}8f^W(AB(;L8elg9JXRfHz6tZ3=jY1TL1q zBKkv}2sd-ovF2W&y-1DzS6Un*OVGXqFlz+??@_=Ude$ZZxKsga0sIqyRSLKkz)t|Y zQ~}%GN5DSR=;IXdLIB~g&3XFck3l{=kMSo9jkn`jsk7JY^RC(5u5KM}Vnx0knX)~>|4j&{#UTqn1F4F3$ZO+vmhS7+d*Q} zD^xL&ygFTX9>IuN$n@qc{ix5RLTjg|dbFLMm7MO=o*`aSw0{W3Z-H^h&Ug>GMziuM zeqpzgn5S)Ub$dO2_zO2cpno2EmxRCn#-I7Gs%l$F27SwkLZ;AO1WQKh?kCJ0++U>n zVM6|1k2dxq`t%9+=c#_`7CEW*Idy4YQd6WK!RONx&QhJe{7k^8oCjfYku{NiA}fC4ZJP zBV2{Q(1wexdXTgdUL;{iRA_Vr#=P6MBbowiI-;RYF$LnziTJ#We~Hh#gFC|dS`G|y zH<~0b*3{v9fu2rFPb7|E{TrGEkzr&slEs>Ko5m^9&wCr6!NJ&hHdEM6F3I=Qu{lR0o48# zQ;|JUA`u1N=4vll_51hG1sm}im_`QF^SP?ai}DSv0X&B2a~?HW82V2E$!gZ?Pcr{9 z`g+q)v<=+1#M##deHdT!eEi)%eIYGlF?V}5Ag*s>vWZTzy%4vZ`_8cU#d})Wovzqj z1$Mib5`GhiETY3TpkCzTirswSptv{Q9jx(rG{cSZT4qRa-R`JKw! zx!?wgdtT<#Bs@d~2<r60gU{b1DVl;`tg` z`?89VneAu1vM?@@!@eh$t_9NlYdwf1CaJEK1>JcG%p&ytJqW?3pkP(fq z0+f-ms7vciO_7e(E&6H8odxYab8dLNr`^iK|0s7{FTDbE)dN z1;BsGo>8i&5x{-2=TzBaL_aYHKRgU~Qw`kY9B06ix*cS)Dc-aJZ<~neKf-6!M67#GI_o$PC(!UjOypdgCt?YJPsyG$RnH3m?vXvm$sU;x&;f?x zKaz!EG^b)8qT4Z4hZ*I|SW~dR({()v&hNhFFam;V-D+sK=Ofxm<$ZNJ>C%N7-b1xR zBr&9~;bR>%OpT&Hfxifc9^&kI0mSr8@dL?rw-8Lbf*L4L(qyg|^(~VSzj+={gp@l7#m6V@sn9x`JgBKcOKMJANp&->gm|jr0(>s zsZ5O3ynLt~P3nm~@4^+PNXLdm`WS!R{AJ#5U~Wth|7~*pF$=7-0lUKjJI;XJ%IjCq zcGnj_0AW~Y#=P~?n+m_p6WEf%S3((9cpg4+h^v8amE@1cnp=#XI{|!~ z2M^9^3SVYX#8i03I;EVcaJ~i4R9M`gH5ERwHH90VBR%Ye%}*O%OoQ#xUL{zO_8PTQ zv<=kilhuIUp=a$201rv;P8-m2-n4{L=73Ufqz|arf@cnBCPx}`K&x$J zZ2&>i!#RKzVbuZlQ~c&$lSu3*pQvZvG*98FgZkP$jGR7D z3H_(LL4}xZIG zG>6a}BrWuFXt4V2Xl^9u&_6&kj8=huCz=Wh2>NYkUPQAK%@|t9`W!SXC?@GU&@3d~ z^|#RUqPf<;Ml>iYR;ZbS1NnxD~3{RcGArQ;j7GBp%@#Br)>HE) znsytg8HMI*G|!{KTYmjPG#{WD_!c!6QR#}mZ>Vp^C(ql|+=^x=8hq_kzv*3SUZ)a* ze)MK)-lG=|`XAq?rYF5U(eFjm{omB&Y@?K`jMJLXfh5`b1s@k(6s%Dnk&$}jHbt-=H^D6=utHE zcnXV4_%|AaoRjHaGyUM%?FW03`D1>@@50gaKf#i_%|1MspBb;PurQncF%mV%n_K!Z z>74ymI4=8|{RlVW2Z0)6WQn8kAG8q9_>CVc2ZTZM#|k%LLPv0<-cbt50xXaJPkyAG z%pA9}z6n9$`Tzg?zik1eC#D6Ihm=O*5fkeCJ%|8HTKI2FQdio4W74Ge(+8}1w;z^F zp@yz+c%s$SRn`9TN`HwKEx9sKUKx)CqVp1w3J{+OYG^RtAMnScv3Q`QYR=q9bu>_! zsHg~B8Lh62Rs>@4>hj9jfd%DpEfAeEH@+|ssjiMJMEs<9iUP|KlUG(%y0FM`W8o$o zdRv5-miz`vlI8ggWLVsV#la)gG^SNm$D`FkR|HcsRB7%J5?54J&NgX@gnv$>HqFXn zGA#2VX3Cft(4BD@GBqDIQiDTpS8ARFfgWST(h>t7?v$ovc_q7>;YEh?1uCMIv*Vhe zFE;6W+UVI|4c}uHVhWD8BE_pCCDA~P+_NGIhaQ7wY}a&@$lSTnO8Sp=(hpXJ)KV}I zhO8h}g$&WUAjV1}m4UMI>R4PMmXzXiN$J3JzKkBbvV3kV0OqkkqB34y5h$xlR5DRv zv0_tLJj8`Tw4|!CG$8oIBh|Ec7idvhpR5B}u`C{_Dk~FQ&i~EyIdiL7PfbuLSjPe0T-p;V z#kuU#Xqmyp7V+40hH_X9LOF^HRkS=JaWd@!fE`?jS)NseBjgguLvm|qlWnm8@e3RY zKVG!%DiK#O{4Jb_%wtZY!ZNEnaJ3s3W)fM1GM{Lf zEfTmMF zwt#KuVfO+95yA-{bB3a{bYBMzCts9QN2}*VOUubqh5j^6Jd9F5!tkiy!XQy;vcQOA z-K{*VW7MKGn4{c?ZR+Pz${uH1NiP>z+}7Auq`)Qod|WK^hF^mXqIXpzd&3QChIqH(e)XNUQN=Gj)e;w26wl)#nK zwlSNwphz{?&&wZlN(=0HvMMM>nfSJVW8utuJ9fa_n*2yh+)QP2YXX!$m6g|kAV8zD zMGy;Dlb|v>I}$ISA4M(_fCO9K+zJ698=|m)?N+2yTP$jt*>Lm=w7QC2DF38ZxEUkD)CF=|!!*ri^IiB=ag>s(KrX&K zBL@gLK0^77RW-;Yvfr3E1DiCpF;|eTGQzXJ{%JBV&^2+&!xOQaZsoH z3+F~ko`?Hm%v#at~M5<>;v&UJrwc`C+li4<8E2CI69`lR*)?ZRZ_AiN7EW|3} z&7Lz@Gl3ZH$D`1W4)1&?BT}4QQfgZr>2&ac2%iB?WMy^H>;IYAI_yFbDIlWP|B*S z<^&9@v7Ejw@UkM3NZZ7?@>A0N{$GO~DYj+HT)BZK#zYm0oEfeWDehxc)CG&`R+SvT z=zHD%7H})8;*u+7mS(|bC<|LFDzg?^V9Qh%;m=3|- zwga|?ZXNA_Bhkr}V+`9K6IvLDNn;tmZA-E!XdAzzBSXLytS6PyXi52;NQGnd*j&H` z9g(xZ<^e890c5$r%(d0p-7sa$Q@O?toth*`k_6S8r@$wplb0C~dN$hzH~4Ksy-7pXblFPZS?? zSS0Ezln--NA5*Rjla3>@5loalP>3Uojh#S6`PvWh{(QgRrn@Ui4IM($ZUrVcv6508?a=ID)4iMBeRcF#)q;zXO}VZ;tG{scC-$fNx+#iPi#fA zqw(SXE29hjv{3x~(!n@}AW)Q4l}7O!1q$=o#*e6Ta!ri1o*+g@C}v#$HDYYrq~xK5 zwa_1gVSrv$P17EWR@3O>k>ZM|zdYur3SmXIIS$)CW~0c-ZKW^RN?)GI+x*=MZhk9$ zgIehuZ1To$%u6e{Lt5z@+DhLrlQ#l5)k3aZ7_b@0oKJVd_9G&>%37q($vr~6;1S|U z;~yb@{t@C0Izqg(i8(^LAxDTe^a%0f|Obg)rgw z_w`3?Z^9)5I_-%!0t>XNiYP7x%%OzaU~7wohb19lwrxM1z>b*!PBXoYVMNuPD z=5heP-GUK-h4Ol&IH!Ehocuftj6c{&wFo74(Rc)FDu4s2Ak8VkeqcYO+fe24G?G&c z)JPv{r2pGc%V$?s;od}K4%hXFKyWXy<+?T!xkE!E4%{YDsm&kUiC8z@&yX49=XSNK z7M)X0FVqrqilfyzL2Ui`xqeO{@>)hivA!(oFDvuoQy?#=tg6bkt6G?f+N)_&MF~+g z3$L=pA3;X%mV`bqJ)!uG-#NDGt^?OD1|}lP9KV?GlF}S{vSnSa00D$c69OC@jHqHKk%ithNZAz*%}W;bj zI;G{YxiWSHhnS$?5O`W{O&(&)Fh6~klZgB^L6zDC<)v|LxZlJ+ia2dRYa(mf6j0OM63rwv4s+aA<-zT1Sa+YVCLrLat)Jm9XjZU8S_hj2V>e$L^)k3O1cg{VtyQ;BtICkWkuNn*rNJk?-@A~AJ4>$^!G~@ z;MI~HBOv=XEs8hW^s=LjYVm#>CK&cV6UQe;rTdMN309RcGt3V@X7V$U43bh;{IaVD68mo%>sHAU%XHX$M)~1mzX91w->78*-i(=YXRkzNW@UpAP43= zt0gbBJ8S-+Y+H_Ft~fC?@=zC#5^icWs`P-|Gh5{rguk2CGyGG|p=2_+btZW>m4xrK zqS9fw<=a#e+|pIbYh9&52)wp+Y;`4O+B$>5sGivvP#`c3Ww@ENPw-4z{l+n6R3)Tp z2K_VQAl>!jTVdsurO_J8(hzxoHQ?Bm24mvdnd$UqSaNuK1c;p0avB`LlBx(YkU!?x zwr5jUO9&i51m;Nlw;Bct2Az2rW zCO{IyOndV4#u6^)PR8`on`n-Dbj=}JjT=X^E2@ek75@2=>T(odVt%}J@^fmEpXa9w z=VHHww>$XI1zJ?2Bq!dq*(@d#D2b)*Ae>VkL#8Qn2;6BmwsUji$99fTOQE%-)E_PL z&(`?4{CAW9h#b!mTk}BDmPpcKE6fDG_>C}N{>J*Kv86gTJp;lrbcPU?$;ovnOhlxy79kHsou*q`W?rI9MrD$EzOe$M;-C44k5^t+K)5;+p6 zLPeZM1agxlPEvj;KJg>(ajxoA#42JKDXCK`DB-Erp|nWmHVP@5d9ebm$&M-6B6{~H z;nG*AWWtyD=mMQ_HO^Ws!y=&?9_ejcRfl>%mjkVVH8(} z+30$U>w)JgzW!tn*C;CjQ9-;oJW!Ms6ln~*c&s8I=6$|Tbys!wOal0M|NFftmFcIR ztDbu5si&T<3G+vfACr-h;j#X7@ML=Mv@GQ5G{6GV&jB9I)4_a3e_Z_SL_a%SHpAn= z-z@ZZ@i2WeJ=5P@{Ovi!N+yN zmMo^2b}fw`!`DBC@^6zk<1VR@{uzLkj`g(7 zULbLk3U`dc&9>oUv^?a*wy+KtHM$c-Onfq94SBc6lW11+7lOAWvOXYdEZ=~cy^0Xt zxsm)Qk(o(7BfVF%FB%8R(@j3jeO*p+t}ofSFt4tknEZ@y8`i)Hf-8d?3*U|T7G*E$ zUbw#Qs4-((zHv^pInOs>DD$W>o>n%#2|zI)XB<>>_dfu?0NgnW_ay*HBF*#upB3&d zfWHB5Na5}UQ1E@%hI>LCfi-H3J_@%lfP(L13Kt8xwa(XCmt*`S=cBc*i^;WKVzS}% zE5YP9;M}Y@Pgk5TlK9OWBCvWd%4r;*<68sKo;AZ^Oi#l~IB((FSoRwp&+wKX#hL^K z5tukEP%xR0qyL+xGi>ybDkif4No4J!wqX~zB`(TQY{W_)hF;8RUUG8Iq{gY;eG?m} z=J_TX#T4_z0urlO%jlTQA#0fZep8Yg!&&~ zlcJJb4`a60_zeF6Ycg+Vt(#Lh%>$<=!D+DKv=q;0s^{myd1US=p#wN?+J8vSeZcum zaN5cyWF6lDCsJ1Fm~e9<`wKOVX_C%#ms}zgOA+x669p&g%}}r>G}DO+Bv)%r!;_M1 z#$@N#ncl)ny>o{V?IdFZxw2qs2G>c(MvC_huYsRv#hU9j$#_Y2w5+&&jF+P=N7_`g z_RXZhe~rO!)8A3Kv++@@HbfaiJYxi_9gTxXG| z)3Yf;JG6-FA>wkdI9sv23eU^sROr9K^Rw!?93seA6g*z}>5!x73=vDfVlA&**77Nf zh3UCoBPKcNKLB~Cl6N2ld5lCh-JCo_ti~&RjkVrnhelsEZLy8he94ZD$7LqRdK=Hr zq{!NfXRz?2*jW^6w_t-U+{~c56KHqc8eB>HD_o8pAnx8>2hO5#cd8=g8hJ`{2vZ*c zpfJX=y_PYW^-75wQMfeO4r`P?O~`2s z`;r-rCwE8|c^iEllIsgUj^&M@!DjGaX0Y(Ep&&PpBt_kn%O5htcm+=&V?h<5RnFyR!)A4J)BS%YS6x4JSu;Nh02R z!;Ket!)B;BijW#!qy5{%E7bA`o?bKEs_T-Ra2&b8(c}TgEb6te_i)-__o(z~DAXo* z^%xC5U~rh=<*=*T{Tt>2m=inJlsZKsww%Su>V%wR*W{Hs)ZIAs1Z)LeX)74Zrojf1 zks)n78b%w+Ym{w#8Kg7tZZ)-609aH)Dxe2}_+pkQ@-oK$i5CO2sFEzgibYHU&sV^D z07s6p@%`?%v6QOh6|SxGa;ic|9?D5! zv1!+eRE1cHF%>H<@01FOpu+2Du>{UjS}p-lIQB%Tp1BhUwg=eXdGISFhs!y3Fx%H9 zu&-kKHh@qzWc>WSHEIXjCluS=lEXm`k<9jc30$va9Z+nabhEYcpGPISE&q|oa_cG< z*1yzCMh|X8uo~KV?n#SAb@quR+hu5XdYszbODBV4i$=6;D;nB;jyPl_F7?WDfol%l zy@zv11RR;z3SM*sheob<(K%8VP(s0pA5s48fOP*57$iv1M8%hohCO+#4)&i6aS*tE&W# zQ?hyhC}b`9Hm$iXQnJQL4jmPT35vtDl7oJ$MEz7vSW=-DNK}<6amM|eL{}b{Es-sc z3sF$@?cLlsD$9qhAY)AtjNuV6H#w@0w_z}z>yAoJ?UQ4M!{qorIYo(!yh#n2S;KA^ zCGoiq!jSD?5;9I9$P|4IltpxHt??QQzOig0!Yn6u$nE+Ng2=-3|A2rVJ#0@SEJ>`T z3NwRdD!G*jbI0dLm>o2087z-p*^Q&JeWBzSulPAOr*TwAdhWCMv~DnV~ls& zwI=KTC)-Y^)NRMysi+i?%uY_CLIiDX*}i_On<%5CgJnjxJl^wq?ZnZ7T{VIoWFLDp zKOg@)%S(%STVXE+l33}VDIYrtn3xMX|NY0B3H?GqC!=A`qvc_uSunUwiDHC#>iHTe z`XdhXF3}}Qbcw`#E*<7zg*hFV3#2;#kQu(IPAhw{vcw+syhsYUD4mc^a!v3^#pqTj z;2%Lw)*4wJ-9jWkVJ7)!|LE1~+!avV4Ej>KjKs!`3Mln1{ONJUKQSK5j} zZQ(@&G`ob?B~<@PO6cX1aI})Z5)bmsu*BUUqNIeBUA|k|M@X!YyzLSvN~q4vmMLb( z%^_wmQpl)sGdo$5*_mZasD2@c*_P9IyMTchb zQH$8rG9*NygDQ4dq3wo_TRF7bLWc^kT=gRc^SsG!yu>f?_1o{PWFActIpD|?aW<62 zGBv*W8fM1m>ACjrChkqXIv+_ z(B1~XRT9937J$YokhNc&L($O+>O8TRd52!+o6~c$(T^t`rfeKbi~Av7PIwHyNeg(i zZ{euCF0Es|)2t%~w#^(qganKxx$?!XDGYg)WMTK%?P{6H*V<87NpAoZJMq~@+fJOXbj9iv<6NRF@(8%BkP1A*vuZg6PF}P` zNBbIUymT`3b;fF)>`PAb(rGVHxM_}-nC6{qTq45&&+e-&P={xC3#pyGa8&OuBgeG7 zO}MHQClt9`qS}o(PeS!(XvRi!&*F#d7CejVfV5kVVTa87%?<5b$f0|JpTnK7SP2I#9yTf}0{D>9`etbM2pab2k7Zt-qQe!I zoCz`?mpT+$eL>l0(_!l_Yl7|eTq~hEYsRy7tI~|0HRi|aKM5sYmzwr>Y8rm&WDM^u z>PIU2@gB>?8}TB2q87&*_A)~KSaOvWOrs@8u6x;w^ zc1eXE=5#?V1)ac6$D)jo@gC*OVo8hQZcb6lmwZ|=-;j}iH=RQ&i1HEVTj3DB_%UX)-mGUnRK%JI z8C$=wR+710G>uC~e7+(MDdI;{h-alEZk0hvp9f+ROp?n|h@VbJyjl@IuZa7)iJ2)k z7;B><+N_Aa+wLCg59uU^6!Ae23q!q-LVU)JX{>y#B0iV;P2&0#;z{Xrr@eX^p zBsN>;FgVd2=`@_D{NP?_i0~3J7H@MK_LX$RMT+<}5MNBL95SY+5PzMH*sF-Y12JA& zhK$}R#N8Uw%*q-yD<@IE>4DoncdI=l9kF10pd|km#1xL` z6rj6_!!(;56&m(o=H{H*u&K*jnsvI&;4urnY?b$v%-d~f(ACfs zx7~`HF41%h)7Y=9lyQ^PY=p#W){(*)n-p3%pb?D5d6Gh7x1V#$Fk!o47|;A{KL+1C z4C>6u_Hz=Tp9^x%*k*6V@N>Ya={Hf-&+Fo%S{}g1hv*32coys!4+3B05arh2T!7Q%*tR^u}}A- z1l&3T6eCz-KGhIG7PNNi&d58Gc&UxfjpGh{sXnRJ(D z0PPHMLE~NtHf8E|hREH*MlJgSOs($#DSaS@QzfO|FG(ijhJJjeHZYE7MMR*LC8OK{`fsIOr^l&L!_u{sO;HD?UX z>}||BloK*yyqsX-tDun{m+S|%#hypV4d1*VU5tmMgCx7Ma;C9Gu>-R8yNGdd$QZ?3 z8S*Ja!G^6hG=2#;4MRr*vzE@cF1in$oHKVk$~R|l`DQsU59lq*H!pFrjbRD<9ZTB> z)om7z>h3EV!L|3gR}z=zB)a1The$PZ7g(0OWJ@|riUhY<3bN-==S!$4xt*h)17OR! z@hv+nwxU|aiPb5s5?Bb#DQLJV=i$to6DvXg5nB~ww2NLPp@Qr$>iJqJIyar@r+$&5 z%YgZ?6n(5ZT;L=jO^??YNtiyb5hrYVm(iW=O6O^5*SuS3>RRdTh26GKfHiyR9y*G& zRRH;sR|Btaw!l~Fd6gW>ggcaGelav+L0rPV?l$SZXwOR2F#gv6KsOPVwkWV=C zg8SHne5>rW8<;(Bp@w;U!RBQlWG`%U$&A7xFK=t+>u0Odpl-4ug?pFv<`JI;Zep|Q z&o%-(E6kh*P51^A5iM3k!$CxS6k+ynhFxq#NT5*V?3SGAO?=aDJ>6_-H~`$bPGU{; zZRu5*NiPDMdD*NCzFGJky$H-)l#3UEBS+AkC19H`0_{oDwItP*dFxSvg^gR(JXEUj zOmnN&v>*+KBy$+4INS*iP$6XWOyRIB4TmP?kfAudsyJ-<$Yq|U&(m<&!5m(-O|;^$ z*v)};uU}`_jP1#gHoo)*jGKZ0h!!X66r<;RA_HUT7lcFpGrSPRM zK6H<}kviS7Vdb!~=Ac|!cPZJAx;cm<4eICKv#CNu5utG1{4im;nVdD-pk*lDN7|=0pb(+3O!(lITxJ+?4pg64m zz-^KeRd*A>@r8VEkqL$r> z-nPn`cOfao!TlKKm_rJ>QV_9$b>mgc8`vpC<8s2VK#D7ip9#jp(QuHTD^q=y6QEpZ z*OzOB-`Z-0y=DE1YlV05LgIjjS|JA1g$CrT6(W;miBXAd-*GQf(6Q-;!Tb6(Y8d={ zpDG4jiV;=IVLkOP*EER0?W4ebtvB&;zYXHbG~JKMF^>PiTA?C@_eC2qGqCbv1l#o05YO{?6x#z_!ny`DhR$Twp_9H2s7UgY84U(HL&nk#*0ksb zdSOkvcx81bWw*6QGtYvws@SD^lvHnmPC3_m=^QZ3&5f4gWV$V%yrN5T?s3ID_YG_c zHetu&aLDk{fXxk`Y+`1yWRs@e#MZX9Y&O|BnTJorB8R}3^uC17j*-kedu`bG>v}ov z5PD$N0)^B zJxghOXyA9e-efPjqF?y&+@nRRN*A)}qTC)zP_Z;@Rp$Cl;K5$>7TEKAZjkA!&2b)7 zKEDZ=SXJh|F0WB5RWaWNXo~OmlJD$vd`Bt1`>X*KVBja6aaAw@(8 z^Eza=>_i9xIEe?s%jiRJ`4J7Tju0q!}Yh431Pj;Q49_9$4ctmi~w&U!~0ZxMkkffH6IV&b349~?HNXvYUlwm(6o++WCNZ3O?-ww7MxUc8kfF}%e77aDJn=LEjRSPY9c zUP?i-@wl$ECeLgQ(##rHvlFQ?W;GVkUGmHcU0Sx7*ZK9ofh7;@+Sjas!6_JYi3I6y zNxVT4Xg2^&Tf=Tn$+;o3n&*LSIuB|+(T9!A6r)7WD4?4ey4nT(oS}Vq@Q4Ds0pZ}= zZ*9mpk>xX-IqzreAKCjE+TnJ>?qOo@Zg#mm)v(jrYLkpk!XMJu>NqfF!{jqph=;BC zg<0Jm%Y5Sbc~0y(Fy~9U{i`jcBeC6iL?1RDBx!crUC7YiOK8(r0wlXMUf#vaF}FCB z*v?j_knL5rybQ`%wtScMfz_I(w@v+qvTZe}E!+N4QkzRK#kQviKini;#%9}d*$;y& zlbwfNniK0wQKs1Vj3YekO37WK1HG@x$WE;1;aCoPD>UFqcy86NG3L`mA2u#i23ZD% zmO)-&p6o_%1I|+%G@epm17PnTabWiu-@AO#NAR%mowC<)1dz;sqqqbBH<^!9;PC+K z)PVWDF6K1^4;%L==Jmj~CL>dExf^hdh{ELVm6reO%K(0xn%3)&GYTd1L(JXsotBkt zb9aG#?&hAyb9V~w+SZ!j-E{E3E!y;R`93t_x!m@ug?V@jqbcK#Hl4k{n%holOH8fHUqCj918I)6|JT zZ7kUeHP2lMOV0C2ifbX@<~(~9I0A5j8q9N83X|KUS#R@kT7|^yga25@r>{^9&7PCD zrXx9zXU$kdFHg()R>iHOc}PBupmm+a)#=1oZ(@wMr3d&t$v412WKpE4(VfT&aa;s< z9S!aEcR*?038!;1ipenx!DCx3_4LKSa+c?gT7h1klz*TX_OO-bcE4hEo8uQk?&j5! zqQwTO#WuNhnp)UWyH8TJxJ8Q5kG_kv=<3v>Ty{IO=$uvyQ=qt*1v}^$fF*svz|N*y zaoyeQsEDdAvp0_M;R+mP{`4N{=nC+E0eoF+tuAX?mE{ zw3Th>M&VcbQi4q~CMsY28^(e&SID?^xy#9#Hl*S3F>~muIBW$6Vn7^5r*Jr!hJ*KR z=AWL;#aRW(tRMsnb1*^O%FUFvuLv2L~~VRWG|oQJRKBC36rrubIR3;2=gZ z-^~Hvv!DbCz1&z6N?+ioDebun0>$K&(DBALdGS7z;J?~ez+f?pNen<+Ir9amrPpNR zQ?5#2&S?+gdn|9$gNO&#yvnl*JKh7lcHAz%KtUf)8T2+bP*}LQ$jLe0u#2zZ#2x(f zCt!&cXjsyRd{O|Wwdfgqf)Zt0bD0YIdKv|=Nty~gsWt{yV2o1WEy&&>6}Te30{8zD zMs-`@CI#Koz5;z*3cRigLHi)P_dS*c-ghS%!Z6*HD4PW`Y*6Ch^xSQnCYTm@{GjEi zVoF9S1p<&gUMes#y#n|0T5((8Mg_gReFaW+DbUQtSN4Iako|k9z($!wIDFuECCX-j zR$e}=*6r;p@aWG@3ye?-{0Xw(k_v>~3W#sKb*7!Za8>Noert!pwc;nx)-G<<#yg8^ zg`LHHLi6&R_!7AIsv8~knl`8E7d9T|(8gxi3I&KUg|^@R!_w6>K~vVfDbpJ^B8s>( z^_#^06ym|@i2Eqw;fna17u=G|(h=`ue`d9>1F?vPe@h|$Q##_Miuf@_JTrxOQ##@q zig*i%g~1Bl#CXTU-^jTJ?*Zw0&W5>tCQdeUbY%8!6E|P2h~*VzA)vmaUt`BF~q6 z?Wx7d63Po&A3(pwOGrD;C9PUXI}_3-py6@MlSdj;)S4I54eT!xDnzM)J;P>K1M@0T zlObi66m_gy)KtmTKB_SiDn!vxTE(a?aEV&1YCjE-@~9N`^sCZACXW!qeG^Li=nux$+LYc+n>FO zpZ9Qr#hqy7z`lar!1=7B;ef#E>D9Q#1bZ zWZhK#Q|{dLLz>PD^{=?|ZC58^Sly}m9`1ZTU8e|OmJ<3t!ZeC_$UMZX`{`9bTi1B` zFV;lp{RnEDq_74s79UveR#=mP^@CcvhIriKi;87GT}1B<^D@miY5BseSLogmsO=I-Q=)F@7kqz`RBhPp(eS{H1aCk4^u5Hebs$aMOcs!!*%BTx7`fXiVjN4&4o}EeUu$W=RYcb3T&2 z$~HoOQ%4HR;?0ZkjD(8Vuvk9ZL)gs{sy~AHV1}P^w1#f_^Afm50biEDzbfFH68Mk; zeky?r74QoQj42?3j}G;Xne4hO{cB(z`v3u#u!$Hrgr4G*tqVsh}uHCZD`Fpbo+CTpzuiCvkmKZ$oFFRi!M7QG`e!n__~Z9Zy$y3umb zWCn+`yaoGdo?pI%n9($guUA9wVq@DTYnlb(Ezi?p(9b9Rij5~fwAh$^ccHI{`vUJf z`xa!vk;E68hI8SAoXuy%z6Kh$w{Ws2MwPtC+wZN!l$ISuw^u3Vq09`f_66_Z%A0+?fP2i=amJ7J* zq+-Fo@;{b34ZAf=DmU~&1uurUz}xlVkicu+;K0fYEF^)O6tG$XS190368MY)CM57~ z1^lA~&X>UAun;{%ooem_+6&Ye&(q=%NrJuuz|4nWB?UZ-p7o0W#4<85>jAtMz#0X7 z1;8x;Uaf$?0C@7l1RSG)7t=FOUu(Yc>@(oX&SU<@Li6Q#PV$0Pd%UZ5W;LwAg?y^I zB|B$)OV@xd$f(arhP(~iJ>RspCa2^ye9=m)tkWlnkXOH%I2Y>+scjADOCa_c`l6AT z@GLBmmK9Vmk-YM5zL;RdEM$3ej^X=KDzth^^2E$3If*Gg{W;<_QU9x8{010@oQ!vo zYqTn#;`en+i232}Z~W`ubRr;EB1QELB!j->L?KgXFM=h0N1Wb6qvk{IFIN39A%Cq$ zA9Xo>+QR+$s-L<=N~(WOUHT4cij8Aj{fyLt{%^SdyH1vTim~FiO|t9$2$XJ*kQu6< zlU^~Bp7l}yuTsE20=Nvo(F*t(fCm8#DB$T!2soM=<0J)~0iZ@|k*nPJXE`&%RrvdC zxYud~Nh{$+5{5j5Mn_=GyJI_|6oXc~*my|-8(Jg6dRYkgU{e#?mQbQY$x+6CCna%ihtgMRRkzD z-sSY#hBqHO)YD{#V&gXEL1VRelu}=Eg!k+YTxO{2OYxX~LLjQ&&h)rkI6P9J|n~pyCQ48U;^a$5Wgbos+SiBt{%c&HEi{}Pe`m&3V zne7f3bb$N6Bnz3*_y#~3Df2NJ z+)>mN8(7_I^y_zlW;dR*@k?!PxeL$J;KTU7V>%A2cNb4TK7I~0SyK0EPp9Bt6z#bB)DWGd2&LW(!fdYrQR@6k~gM0`z#m4=z-!TzW zeuB@aiCFuBbk^Y@u0g{SF^+R_o`@R&Tq=9|tDe6D_@(SQUiQd*fDSMe|B);VCRY*r z5M7R;GR$ya#;U@#c{iU(aDMeQgAou^8&*QYU0Z1@mDknjq)Yc{cn{V0l0^EAzkIBN zhRNad8}Mi0&_kR(FM*i8D84U|l_Z#cH8oJ6ti@U{>Psdee(^kp$o~ZLG2TShBlIDW z^*BHJ5?O!d$7k`Ft$Ut?;N~S3Bi@eVzBO6TQ$Lc&mR#`}-~ZO{A|M2}d~M-hYrV{) z(cm7JxP(BzWwG({Zob0xv0-!_Kas8s^Prwipy;n7`b71#dSnHztUGHMz0W2J2$N?zO>=Ghuh~`W3W2jQNj37#5m2 z?c$dyuOR?gp%0Xzu;9_p!lwY5fz+74yMklM5CDq-od1}mxXDW?e6&pwOW{s7MJ$DP zJY}&!vML6)jcdo2!te3~wxw`6lwpM{@rgrR47yd3KbmW9HhS&=@Le7}IHxE))uxE0 z@HK0ca+bmaY`o4d_jJ z*0%w8PW)P`pbXc|WvYX-(Y0;)DplYK-&S9>6-8$SI$H>-E$DJZ8hQ25_4V*273X+};4rAwAp!2tvU@ zXogZVQ6EmNeE_4;bq#>OW8>IdijM5Tl{&8`G>L79Dyw;k!-V3l%qP|`=>GHtD=qCf zLQScgknBpopz6ei1E&#w{6hN0R`hsPYr_E)%j5k+dN~QEU&X|9kZjT&pI99>vUXbB zGS=_9olFk#Bc*szv`}A#7MtR?4_ZWGKiQ_9dDA?drw;1tl^8jFpbGlW_k#*C-E=;| z>Nf@dm{0>M6s3GH+^b%fvz-gtW>UpV@km-`}@z0Xz zpFqOy8#0#NYqye7MFNd`(EJn47ie;6s*E6-DQF57Q*#xX1~gBjIf&)}X<-bf!5a6V zX(Z<`wxB7bRbbqQW(EZW<8Cy|(QHREiWag_h2~+3NyevWZXn%_x6$;Xxi#Y!TQX2MMXuq^p}ySLEhZfAB)c2Z-?WquhoxmBmN*z zV~i|u1pYk>@r|9BsW|{=fVWb}`EY%JLQjmFNHe=YO{akeXN) zP##hiiAOA``{w`x%x~kLm!z(ge_qm}*XToAOOhp1n4y~+o@i}tb*)xWrIqT@((C*c zRq>cVdVO7_62#}yU;bzP#%O*m9*xEQrPVWPBDGO}Rb6GJ|GH>xRkYF{i`Q0EP4~~L zi0l67jGFjtf26iHG8?gzVkwF%hfQ8pU6qCfZmOrSNGBY6+k}^u{t8Nx<@pt4SlmS= z!Nb%vrdQX-qqRa;1X40oS>P~H6IRA zlS8kx)I13SJ;sP-r6xYyDMiVODt0&1i%jS9S4OL*$8|wpV$q-Epl5$IeUDj)DLCGa z6t9hxM*T5z&&ntqdL)`r-BM8^H8s(yvKV#ns*qX=2Eve)q^gi1S}Y$IVyrY$dcyj*a(8074ZsMpyiQ@%DP%%iuzx#6pF_sl@VP- zbB0~Fs%U+j4dR~>iBnvPUFff>7N7lCVV=Xr&gYRA9X5UeDy5vbopK0;ShJpXB+R2< zsm?y*SRpQi@`}pJXc@9Sa^h%YhE_c@T3cROJu6pCm&1`~)mFq0;m88TbYyeInLkj- zmYyo4`LXGUNbkTc!!K!X8`qz2Vp~D0Z~N$C9s7B6!FS&%&gGUx%S|SZh{vWgmBVTf z%28aXrsWZdlWAuG?BYVq^6e@dCKrD`Qdd)(T$=@mpZ{?9@uE$y5^)8?U&D#WJdPFB z#&9B)vm&!&yb{Sa<=9F_SC@m@vE3dKb^rX+h~75!)ir(*n`)!+y4tFkADeT1Mf@<) zgcoaep5*2ftT-AE(F9j*bkP(P+NE3@j^Lo;wj}*2QQ`7@`Fs zR8UVxfD;P&A#8|NT^HA?%e7by?f`1H z>!RW0i<0VS?Tlzy1$nB_pQee2QKlgb5C1g`>Z&Xj7;&tJorisldbA#M6o@#czJ^lv zINM5kxxnJK-mxMDF5ws8Qkf@E9|#N{Tv!;12waDY*l;D|RHA|b$J*7URZLpq>;dBz z42YbTzSmE`qNA*m(xl30oGi-OVZngw9jjgO5(g4W;3{a_m`+O>M6*Kc!FQ74;zS)94%##KzSksESUH#4Bb-k&E~t z!I3w&LqN!;C@f&773tI#i&|zj9p7J8F}=dF`Kd%Az1WG(Yfm7XgC3x@jqOk(;8=T3 zwl_p;tJ#GL@Xu7YAv<7>2vg?|w1;V#&EdQ7tCA=sRsI0oMpi-qr<@`!u+TB>j9Egt znZM8EJ2k;;lPjkwdvJ3?_2Q3HF<1~+JwNi$_c3IiIk1E&`2rmye28sazuqxN}(LBQQA^X zDxsfaPfMkf=^lb3%XHO(90jjbdJ2XWR0eSf7V^t9(%R*T_OT*LS+ZEw(o+wEz@Lxx zC6YhZ#+ibeLwESD4cY8Ae>mLHh9wg!6Ax1?Mo#;Z7^zdL{aj1#?nn_`gjf-p7AbM8 z8$Le9tFMbv1ZERCIM{pXFw@;`CDn&>sm0vk!Zwuh+Ugm8(`qc|v^IFz5lN(DV$$+c z(lzZ!up=doY?&)J@Why?LXk7WH6kUa*cDBKMRltxj$ibZZmkX6s_MApikYQZa2U$Q z){e@og%;Q{l}DotC3JP5)5e*09&GHnriI+MqDoAMVDH!g+e5dHw%_6CWXUmy?TiU+ zjKiX_jo+~)*%Wk)U(%5w;0pGWN?EkDVn(FWwR#*bkOm!*v(VuIX^{NLa)B9e)Y{Ww z%9zJ#c?`x61{|)Cj><}Vf$lFHNUd~*_R#$U4T-C>vE5oGXh-?HC z7hKN$Tk!O0{{a;&M&G5og7#Hz9*ZC`aZvY`~NJRM>ze zV^o2!8G_6{P8lD{@|<19$crmgdfC}NXeI$?&OEUdO^?QhXxBw&YqU@_e(7KyLl7uR ztIMMJi2{Z7?BGY#{R0+8N>30YBor&IABh;pHYs^1VQusWVHluS*V44dqO~--c%-B< zs#U}^st{J@TH|o+V-AY`fp+?W?eyhayse+@;1;ygH=v!qffjH4#JseFJE)z$^V;bf zZ1F|_r&`E$v;7VOS@W6RuziR~uCg|%`v(paFL;=E()fpoUvQXs0}c}}WnvDKZqQ-k zop+dca`L=14@l=6l?=|1W>wdgnb}-w#wI!`vqG5Aw9~YR<4w3^K&L(NMqrj+T^Yrt zfEkoZ#E$PBLQ z5rN=d>d18+Byxv_MjW^;qB4g+q$gtCct1mCP!Q;5S1mfDf?lZA%_xc1_77s~F9>Ly zK;*ZLhGKnrR4Xsn@X4Rwzr4EIv8&pcirTAXQbh?-^|Nnq#2-OM@0NrAY=Fk3) z>aGjdDF!AY%Kn;|@Y1sW^yJ98(vs7T$#qeYbzxhF(}0#uQZT?VLsWj{${o+7sEL{t zN{C0fc7Q`;C%%=e*($=I(1=vJjgvxFQ(?OPfda>PoT&CwELEIUb(c!sjz!rHSvB49 zVMDlU)1<4Ajo7s@AN4(GT87S7L`aW{bS9 zGD5}t3x^;eVm%OwBa|o%S?0s7H6Ni48%9OivM9|&P*mBg; z?0YVbPmD_U8zmF0DsyI-AAHQ>XCav^-Kg#9HW+M%4eP7TsEft5651%M>2=L4dKF(X zTMEbauhC0P3xL}TweeiHgW|P-@=7FPsA`Y{bDq_fmpYxbU_h=T$FWwN7#ewK8jlig zYB#F%fWW!!atp%WE$f;7Dd$i!8Q4CPe1}THciK_u5ZnqJDhY0>D&@DY(f|Zr$2zvV z5;JX|!9Y~c91JKBScWp)Oxh=SuA_eAnlh>qQZimI|`y=`fTJis1s z97}^SaqY}rK>Fj_9FsoqLA`3`2KZ8IAfD2yD68J{K139byfZ7QZV7$`jNP<;5TY4OQV&xZ$h z9+}m)1&KUEn!Q~oQDK(TYiuLPb2wwbmWwpT`Y972iD9KZ1^J^0mvbj`dg)CxM?Jdc z5Us_Hqv@5^C6P*PW~8tyLCe<=8Ac#M4!1#B zN?(J(7aFKyN%vi6`{}M_gf7?O1S%rZ=q79s_TCucgBijVzB`sIuWEDd-AgV EzcAIdB>(^b diff --git a/subx/apps/survey.subx b/subx/apps/survey.subx index 9bee7e16..8af8204c 100644 --- a/subx/apps/survey.subx +++ b/subx/apps/survey.subx @@ -136,16 +136,24 @@ convert: # infile : (address buffered-file), out : (address buffered-file) -> < 68/push 0/imm32/read 68/push 0/imm32/write 89/copy 3/mod/direct 1/rm32/ECX . . . 4/r32/ESP . . # copy ESP to ECX - # var labels/EDX = stream(512 * 16) - 81 5/subop/subtract 3/mod/direct 4/rm32/ESP . . . . . 0x2000/imm32 # subtract from ESP - 68/push 0x2000/imm32/length + # var labels/EDX = stream(1024 * 16) + # . data + 2b/subtract 0/mod/indirect 5/rm32/.disp32 . . 4/r32/ESP Max-labels/disp32 # subtract *Max-labels from ESP + # . length + ff 6/subop/push 0/mod/indirect 5/rm32/.disp32 . . . Max-labels/disp32 # push *Max-labels + # . read 68/push 0/imm32/read + # . write 68/push 0/imm32/write 89/copy 3/mod/direct 2/rm32/EDX . . . 4/r32/ESP . . # copy ESP to EDX # var in/ESI = stream(Input-size * 1) + # . data 2b/subtract 0/mod/indirect 5/rm32/.disp32 . . 4/r32/ESP Input-size/disp32 # subtract *Input-size from ESP + # . length ff 6/subop/push 0/mod/indirect 5/rm32/.disp32 . . . Input-size/disp32 # push *Input-size + # . read 68/push 0/imm32/read + # . write 68/push 0/imm32/write 89/copy 3/mod/direct 6/rm32/ESI . . . 4/r32/ESP . . # copy ESP to ESI #? # dump labels->write {{{ diff --git a/subx/apps/tests b/subx/apps/tests index 20375e6774dee92bd5b3b06a371570129e9d484f..edaf4709cff0b2947df9cf54d6d274e95ec0f822 100755 GIT binary patch delta 6317 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 Q>pP4#sfeyVbc{9p|50@i9RL6T