From ced20889ab7812947880c54468766ed1b6f22a5d Mon Sep 17 00:00:00 2001 From: Egan Ford Date: Tue, 9 May 2023 14:02:04 -0600 Subject: [PATCH] docker wine32 support added --- Dockerfile.wine32 | 12 + README.md | 4 +- bin/c2d | Bin 181744 -> 0 bytes bin/c2d.exe | Bin 186171 -> 0 bytes bin/page2text | Bin 49624 -> 0 bytes bin/page2text.exe | Bin 28529 -> 0 bytes bin/text2page | Bin 49624 -> 0 bytes bin/text2page.exe | Bin 28352 -> 0 bytes c2d.h | 9421 --------------------------------------------- 9 files changed, 14 insertions(+), 9423 deletions(-) create mode 100644 Dockerfile.wine32 delete mode 100755 bin/c2d delete mode 100755 bin/c2d.exe delete mode 100755 bin/page2text delete mode 100755 bin/page2text.exe delete mode 100755 bin/text2page delete mode 100755 bin/text2page.exe delete mode 100644 c2d.h diff --git a/Dockerfile.wine32 b/Dockerfile.wine32 new file mode 100644 index 0000000..38a4a05 --- /dev/null +++ b/Dockerfile.wine32 @@ -0,0 +1,12 @@ +# docker build --no-cache -t wine32 -f Dockerfile.wine32 . +FROM ubuntu:19.10 + +ENV LC_CTYPE C.UTF-8 +ENV DEBIAN_FRONTEND noninteractive + +RUN dpkg --add-architecture i386 +RUN apt-get update +RUN apt-get -qy install wine32 + +WORKDIR /root +RUN wine foobar || true diff --git a/README.md b/README.md index dc4da66..aa718b5 100644 --- a/README.md +++ b/README.md @@ -31,8 +31,8 @@ Download and extract. ### Build Notes -NOTE: cc65 2.13.3 required (no other version supported) -NOTE: Docker required for `make disttest` +NOTE: cc65 2.13.3 required (no other version supported) +NOTE: Docker required for `make disttest`; run this once first `docker build --no-cache -t wine32 -f Dockerfile.wine32 .` Unix/Linux: diff --git a/bin/c2d b/bin/c2d deleted file mode 100755 index 97d3dbc4cff6d065a58a3005b07c290d39cf52dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 181744 zcmeI53w#q*+W#lFl7^O~AXqQRsDK5z6ag)~Dot%Q)!`x_;wm5!BrS;R?*HBQ^8fG0 zXJqEwp7WgNe9t-0nVBTD?b60A9LH%i9M=P(j^pAvPV4j|-U}xkM1Tko0U|&IhyW2F z0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&IhyW2F z0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO)!2be)ch4WcgdhHE@WX#j zi_?tLW8gR^$0NpZ*Wt9`Oi7tyeIV&qNmD1Y+#etK+W~*~V0vQEKuXH=q?yxyEUwm% z|8XAsGX(5_De4)frdWMPdXXcPKybCbyqnP(>}Jbq*=3Q|%EbDqu2 zNlVGhnVYMoe>}dcCIt1(3@Ksht94wdpUsmp3}8x1qIJ6Uijw%C9xgsq8)@|jrP=&t zXII}-QgX6V3ZBcJotu@C=g9wAea4^`j*Ac0?@F@nTe=bmQ&Q&TULJ*?+GmUp+7}zD z!_v&2u7l}|>PjF?Ny$q6TlU4p2lW+)>ag^c`q&@qxHeSAf|QiBR7dLNjH~%I#s~GS z9~I=s(p{`B*SZ|LyzYhMNe?9@CU>pbVy(Kq7%%lenjL<&P;p@Bg5_$8<8I-&VwDNx z7;7WKuDQTO>`0$OIP*m<=RwG{MdLL7PRsEKSCwix8>Y z5g-CYfCvx)B0vO)!2dphM{KUc)<>-~tdCfyPqV%FbrC)cw7F!@4}pN|f^C7paTC%D zkd>q$^*mC$)X!7b_kpc8m$L|hqZ$!ej7Y7<kh6c!A+7xklC)MlRO2 z;GPb|I(`7KV*`*sRLzgGiDL_|hlJSIfnZc)hXR41@&%EXZe(@CZT~V+F*^t1vtiqd zJJ`rPZhgW!%lf1>W!83RItMA&$G001{Xne{Tk^f;`Gs56e*Qbu33Dz83w&%WCogdP z;1^tHJF1aA>Jyu@(Q&hRKq5xPye{IV;_rt!dY6^=S0HH%Y`2a3sPHSBYrE^Couvkr z$FZ9Es2SLv>}pIN@{!k;x_J_<}y8T05@+{GHC7Ot>=%alzGOD>>M16CZB3 zxjwWtePgf%c3EBDTT2e=Y$fOI1wBUX>tsW0EBWf;gW{OcwvwHBqxMypEs6bb5&C(| zQKfyEK66xg-~B8^Ni8dBWF<#JC1*k<3M*-6C1IC>b^0MZZO%>X=f^do-)Zv;rF{ph zc`uary%P~z$3Xc!gfnvYE5 zcva(gXiU5p(HA1_g&ID2-1mhClgG6cI`YCX5E6R6hJ8(gpQN=zJ_aCpiOYewMd)GMzLkFb5!e< z^Uw96dEM*xF!|yOBOHCoUXN5*R|8FfHru#8h3&2;t7~_{&eB0F8;zSwk6{pmaqZ^P zFIdF&RmZQxix7 zh>p#sVu*3JK&$Ir)dc9bmOWuWPNOZbrx0T2b@|gaA{#v#6D2;c`H`6G?3GDPU=NaG znUPG1)>hJV(ePT{*9Nuv(g z#8((%tlH~QFRAp5x%4^=#zfbpkUmT%W_!md6qhux;R-nJOk7YEi-@p5&FGYZMv71w z(%1Rjg+O2v6miyiSb3)NQ6?@{Z9)AlEPErnV2lJ;XUALkYMgnU`>&S0in2uWx&~Hg zZTiY+4gdTn_4EHm{TadfYQxs1L#TgXfs=VWTT^=k7C-9{X7;=AUVRuY%{H5Oca-hL zUF^Fd$#cF9+1c3<2}KiKXOl|d#iL<75WbIZ!UYjB>n6Is!N37zC%l~M?8BK@u(d$r zMgU+7fQhoUZDM34zOupw!zJ30DTs0df>ED9<+0eg6@m-mWAo64Ao^G>!F3ec7eG7O zK?Al0uQ2P)rLQy0t`E8v-4aNc*R|Mms#&7AnLAP(;jwW_oteH*7 z1#Z^ju_&ACy<>(=D8qyq`yD0;TzQ4sNT6eJBrq?y7d`zCY*((oB)Sfw;e~4Mogx2^ z1TeCF3@ajW`x$jV)NIHMpr1)CB@Jvi+1Qv%Ujd0^*Jmz~?cLCMj%^)SO>s;GTTcJV zhQzf!G^tt9V<=i6vf2FN_w0LHW@n~4y7%bu<)$qxN1XyT*T)?urp5Jn$02;>sHA~y z&YZc_6_nnOuPdR!*B;Pv8=3p*xB#K`EY?{H3G=$`iJErvqm8G`LvdOnp8?ua=Eqv* zn#cESHCbJIPML@8E$f?$DPh$dum*Npn=Tq5U`T?XRZJYHVUmp|h_#d%CPS<&@>xKJ zuD*Aux@K-;;v<6brc-8?9@bc9m;tHe1ruQ01h!)~c8r2$$Y{D?L|zi|x~NB^V5i}J z$P0&_%< zjs(XMo}%yPn6zc(eK-VcR6S4&^-W!>XBu8rb1-J*eKc%>tCKapY;zwiQVZ01iXt6T zQ*B{tFw^rev&u^Q7?29KwDSs`iRNJ)-IMRv_~Igivfz~>HsM`+%3kgnhH7F$59dB} z@-|mf)Au?t!d23KZpgN#FM5c2i~^=~S?TB=tjXo0jR@vi%{k3;&3P?AlG}F-c+EA( z#qUL8_+6nyClZ6khY|;o=zmWr@i8i%{th{Ye+lNq_)$CNBV>Pq?D4%m+l|80bItkt z2jKFaey;h_XDIv@g>gaIb|ep}vPYQgw_URDGub03{O+=B2a?BC*%M3_v7p`$nCuA@ zp1LfnAbDPuy~JccgzP?M!-q`vJaYOj#tr6N^CyUZaunv={tY5u;QR|q9GGjK_bG0Q zULPIKAfeCCsp4_*=yUGy--Z$@nioO|poxo*d{Is1oxE%c)_Gp5YRVpF%E>OX_cBxV zpzwbR2OF9YW;P_-RU39P8<5O@kKs_54cpP{ZCw}uS;f%CFhF+RJHSvr`Z{1pbagbf z8xq8b7~7myTW0G#>>@T-o2}{S1T4*gn!RP^qlZ8)LDXm17TYo#g91$`gh0nYO$+AU zPzYF`Zoc(r1#S;&@L|<*qQ3EG<%U7-J~8n)^N>#NXT^pG+Z+6|0waO~xBaZZNC+gB zRgaEExYN)A2WANd(K`*_;4V|M({LPtIq1$_gcDY8fZ=Vo!z~4K%ULe_X6XiaROX0R zbr-o&wBQxCX(4-2ceaG=M0MByw_x6VV#MG;Yt#44bJwVK*xrXavrs;Fm%#-a1Q=L~ zFe2D$9cz_+85dG_saoy|ZmY3Kbh~k7AoH3A3vPPg%}aI6SB3mIZt~a@(&Po*?z|K# zFW)zQ0r&gRg1axmq(7mcV>i<5sceF}&)(AjpSp#Mg*V1F2xryQ@h%gQ~LnQJC`Fr(bZnk-fk0Z?a8i|B z_125*76Ugbwvua@uNsVR|IT0wL1k`t0w^@5008{A##jD|?3>7I!udt0>~_?>^7&GIUo?Zg zDPk{WZ0b9rDOe}LcSIc>g1Wcv3bYi>a$UmnysHT>7NDCrA#NHWP0v%@O!>EAQB+RVGtxwL{K2e;6JE0i?R7xDzmVc9=`di!voeJKp zLM2~dL22g?SO-k+G*nG;owk;I*`6#;!)j5wSIa(g>3mgc7v5J~+VnZrh@d$=Y9E_I z*P+YZ&-;n4J?i9V(^Oq3dqcA-v{1}1Tw}quAXvIq$jU<;e1=q+Q zu}1c(YvfMX{9` z!Sz|N-&i51O1{7fIcq!np`ba-y7wSc(*1tRb%Cvw{vU^Wg&lf-1Pt7Xm9pzx^0?E5 zpQ*Z2P<|{-)iway)%A7;!wPyj$G|Jzm)QbsuJ`b$-=EEagt8l>lkxs3@Gjmzm0Z%9 ze|If%lf^N3*x#v}IOOzJ6}+e)pIp*-lORSQY#Jbl*C5=+kNN~_(JJ13y?I^vJxpEM zq#vwe#C1qU29uYNjJ})xsLTS)BtQ#svmFgY3YdBK7(k_4-@&`n-BARcV`aTUb=pJFGpP74e&AX$;Y8tpuSxtM_`8?N&Jiw$P6eJnPb#adV_ zfyK74*kl%4%VJNkn8ae4EaqXcXIbo37IU&#Ig7DPqVsnwwv5G!SnMqp%VDuyESAP% z`&sN)EOwa1rXYrpGxv&&=xGW!_6RfRby^MA6|ypR;NejH?F;rh^>-!cm--tTtZenS zFmTTtwjcF>2F&gPutbBuS3!tda*o|7U3s!buRQUxmBY(tjtvlx6K^Xxyl+*1PlI=+ z9G>Xa-|MiO3kDIl037a9I6PXh=Zeq~J0Td!3x)oz!E|in5*XpZX(}v8otHkI=jYs! z#y>v%nT!duOnm4FX3d_LJqsoIe17h;EaKqjW@e@5q-LkHQ~_V$NX>WfscC8X=>-LR z?lbB6`I%`b%go6ubUZ#HJ2z+6u*b7TYa!#&0L^j*QF# zp8e+Ua&|WVRAF`=@5tq$Dbtag&!^6Hr04Uqb8{W|`Q2r~0)8frZfP~~GoqKfFpPgT zBRxO8yGuOUPvu8F#19-38#{d9UH9M5v)@Vbd4R+hIF>bbfYbPHO&htPuv}N9NDwQ*$!2QyuAPU1j|2)co#NhR^G2 zUNr?8vNMYyo1L4M&Ob2qvRr=m5U>H`)6(ar7G^p4+`0UyaWKn~!QY1b+b&mlhR?(A z7#%zYt{^ivhtDa@o(;aKIca=)QKrLWN@fG8R>io14jWPwInr}fc}A?DpfDT8V31~~ zLn72owY5}!3_trhM>>WzH7z}VgeiHhiXxa~D6%sP3V?#;=J3zu7V_DJ1!yNPFC8Wf zyK?5R2Cl@&3^R4j#$kN=hL%1fWa#w92;H#Z-{H2(6;jYUi2dFvfKCd)W0e@84IcOM^n2aAlkzne3p;>Po_ zqxmr?jAgPYAD6@gt>a9lq@vX9ysY$sEA+DEhqaKE8@#H^<;tb0mZ^ggjA1$P-OY7Z zW*jan__4t7Y|QQg$FR{5VUeFSf#rP{D@@JG%SatF3~M43{i&pbp9hyvke-iuG$$)F zJ;yPEtsHf>UR|QvbaiIX9dHTBldMx8<0ej?lstX%RBm4Wc*po>vNI+WjGxV!1{Ii0 z+>FpfjU6%eE)H{%$#VI#x%*Oca&jH&z>eot$*CA)HnRp54C5Wo<)y2UD`&%aejqof zfaeAk4VuFZiXAg^7!TJr&yfKIX(nz`a4BHz6krDA<`=+E@@mP%^z2+LWVLtssX3|# z<@tewV(*yA4-bYW&f4v$hIP3mD1gwIndru&`I*dt!6r7Xr;m>vHFDZ`03MDw^rRuh z0v?M^?MydKR4B;&4LXy?-+T{0D)x>s&?aDxW7UQh?_aSvB#`}oZ#V;$o`0q3>g)^J z&m{z1+0P>i3H%pGg(iEb!JqKD<8SkNwtGfA3)0x)RElgLX8R{Qt_*RrsQ%V;3_^CY z->0*K#dSC%aE%WBa#$PNo72Ry4H(<{&74-Vccy`<{fCZWcLnba?hJ+Tq42>_I6V|T z845E(VSXt5Z76&x6jp@7KZe5Pp|BoFRL{%x)yM10EImBtqeu6AU0;5jY20(LUisW^EaJI_T3t-E zJtofX+blC>oanFjeJ>{m#AEe#AYYWwqFk_ZH)u^abkuX}GTJ#8q-0ZP}W8AH0{_%+4j;rjGU*6~`;N#Y#uzBMscfS_kK61V>@vH&UruJ*RS_V?Bc^^v1f*&+rVvp zEU-yx7_xE2ZEk2NZ!A-eRSiD+7^h~|6omzIH*lL;l%qj8e$#sIXWgofu~+~Xw2tcb zXj=xVpl!Q{tDMmmdjVCSzzHf#UBfM{BxZ=BunV=WS|YsB^Fy4jQ~<7?*TgndPfhN_|l5Go_}x?(%5+OSe0R zzEh<4Pea|oz9PNzwz$JX{iADpBnM6u=_?GGm-ZCtn+I2Ds|L45)M{46@h3KHh}y_= z8>?=M=1*?e(4WPR3|6)yh=zh8x}k>KrH10h6}PkbRvFc%{BY!cMSJ7{Ohv_S*TlvQ zO6Yv>*FWBId%Hm@6Me4{``fDKU@mbq)6>I`VEyF*09|h5HIM( zh(@tjqcHM!H(DcsaEBC>W( zFS8}8cc1mw^zC#b#bgYFhw@K+ctd~YqMHAb0?+L$QKxLZbP4AFdy))J--*BXXdIO7P;ppA*v#@?#s z@6bnSuhAOAd-J_U-WrR45!Vi#aNDi1cikG>`+8&SNc;@Q>aH^$v9Mq((IGK3bN%@7NVwMoXv=5T3rM_`P6V_+W2ByxW;&M;*eX6o}{ot z^LK>xvln~9V7HAau!)c7B!lD4QsLEU59)jP# z8UL_mkvdwY_~9l#*bFy;%d5ClS@|8Cs}k8|0=rm~5|bv_9yHt=bPO5c694{Y_=B!G z#}JDS`GSxb6lWYgdNf=*dQ^1|NZbE*=TTZ}b0&MV<>$gY`toynk7kWc@|gG9{5QW4=m0y<$TRKgGax{#{X(d zj1sl{0es@vyG&i3XOBFfoc2VlvH5@1s`t-)%2=!8x%Hmd@*)H3@QE8L2JR^`SWaVo z+q`!El`VVDh52K!g`LxTIjGCPDQs?7K4Ldq$&E~EF@!SqoYO0Z{cRcE_!z;q#XnA1 zy#*HAY*iyYy%yOr{Kn>ye!Z7h4tfl0Y^ye`-`YG}c`c^mM*hHhW9`D2O75k>{I>P5 zAbMb&ClaX28tweh^%Z`vrS^mkFzYaiL*oQbv7%j`#Lw7V`!u>zJNL+hstK)@imyH9(g~`vC9AfUS+STg{4^S_dM|%$w<+CgEDjk)bmDg7_SDC90R8>~KR#{w`U3Ew0 z-IXzw!z-s$K3Ch0co|MF?Qp{80!&0m+>q&Rk6K<2`x?uHZL)9z$ zH~c|z7fNlGv%WQw_$YRmmA*R3A8zB_D>6LXqIfJDUy7vgl_MJ-e#5QknB=rK#M8Ru zD)C#LZ|WQ3DV;Y=G5BUn{xC5`5{lon3tQcI7!ZDt1i9X4c31au+kM-l>L$r9JiO}Y zQQ@)kLV7@$8DQ7+Kze}R`-bmf$=}!JdqP?ilM$;E2IE1D{Xjcd4DtW{JBg?E-B z_&40PO_hY@OVzMd^!H$v%~PJV#UY~T_$OCnRD4|nyZSP5gV(_9?X^N!vJ|@g&er+< zla+d?P!3{jrb_-n28ci!Uz=g9@W=T14W+A;{h`Kn=$lWYh3#P&bm5hy!j2WaQl#n>30Yhd2F^OA4iy#=9#{BcWV~QOr=~ zwXix7o|}xy+rB?YtsZ|LUm*hJAy(MP3bmFAP~y4U>sjKEu&3F@LdhG!N^avfyjeS7 zm2z!+RBaz7Z)CY)?Z(xjYlurlym-d4G(%_ABcpebWDmgi8Ws7OOs5d zRaHq!cva%Zk9aG}tCBvR>80vn~H_jfGI5^23!v?UKRXNdWsxWr;h&|G3sr{l-5AinTya5#iePvam z@X94z7F_Z@DY0HWDcOfPq$xVSWvMrBqC>(|WqIIVho0N8$!5T(2=A}-8hEJ^Z$doW z;zjXxZx76CBXWeJmEH*DjL+y68)RR&Tg2;-a0~_C!ixB1m3;XM<%00*bzV;RU>ROP z%#nOql49~@OITnU3@(zaYPN)`cz1$<(FrXpoYtyDXFPx3N`BHx{`!>|5pk0&tXiQ? zHUA*?N@hHNQEg-ON@!yCs-{66uPIbn{`V;1|G3g`;a9KppW&sI{*$auzh!oB`0#Y8 zH5{IV^LX|A2g`f~Qgyz>w=aVs)mdsp%@G32_*IqO7lv<>anGs~lohHt|C{A(0uIqA zVGHx6@&XANHThC?fh7ETIX`O|R(Dpu1i$X*tM*%T!tNDbEn11IT77uls;b(<8EC00 zWBEL&_iEGv;c(lks)>i+W(99AZ$p8&O}3%!3}MI0@+P@_yNnFn3~!QwO?}hk+a` zGFQx7p25R*7;bmNCRHx3N;qzpq^gO>Q>BWeRXZN4i1*)H`u0n03%ASVJ7mGM+-Gvb z247D%Gk{|jYQ-iQo*rguLuRH*$Y15NODM6k*JHa^yaTJQ$0A-hTY3;w->AYiRw%ju zz_u~rH&u3Kt&aKDKFcvPnNc&{RS!CMS3Tr>Cu@eA@7I-$c=~?lXy-@5z7P5IUTW-p zGe5XWb>3`gBC5d#%A#p2E5a}(g)vo_C2aV@{C%*sm_Wh?{Mw@USe@03&X@0S!jo8zR8lfR`N}eL|MXA$D~$zb(?*x z%WS>>249Y(7;ADRf7G5_X-|%XW#*4#p3#5U4rgCG7aI!(=JI^OG-3IZykTrp!=f}} zDR_17U>n=xHNdjg_6qHg7qCBJGxCSG!Fh!jV++L|ZDXU+YsE7i{>T-h+duX9$cVOA zeH{CJ1|AD8RZwAM{Yl?1{?LJv@T77FJXS|&c`*TGV9=jj zC;WchQ9g4cc1wtPdnzWlk}z*CxRyxR!5`Vm8rD~R6x*wkdF^1w+*_R=Sjk514HUoWlONSZTgU#5g zcyY2+WfiALc2EBeh0>zp^RmF*qNItFG8Ryfvo#U$RddI*D zrb|_Kiqj;Y-tD~8XK*|3vL{bUeqWeu-7(ENqj~Bhd+xJYllLSh2}#qNg~|85{m3MC zy-%1tt$Avabw|?7r0tJRO`hI7W%9J->B*D#OrDao$2w(7(xe?zlO|awHs6Q8|0+!0 zHF5HuNt1DzGId$hK< ze|GMcFy3)X*e&{7i*Ct_&5O^AFODxZ;*V$QImEe}pW}ax|MK?lcyIT*C+}nZOX85`zGgv-pGN16s{r4wLop!l-Rdo7e zQ!cAR`wvXDPUNRgp3Do@sSh+Wa}$%N!Y2N{$rC49C+!e9-F4Ru9DT3wcv^N*>0)Wq z@WuF(u0P!HgHHFYDMrLsZW8tEPp~o^VK~*p!nHK--uv9{X)j2U(MnT z)veVVt9K&a&iS=?07#M8>j3_#8s8?lHL|uR9w^!*TSKd4vkPUaxzwHWH6Ct&NIKNU0MF>hPIK z$6Bw({nc7X@riFi#Jy{+xK9?}mwhK?_s+HAURiuk_HC2hEo=F^YWaxO{Qi1={Ax(T z>o&^`sz`%csi9>pHbwD_-0;;}@r2yau~z&>Uih($cgpRucu@9zQ78UIjuxI=?d2r* zUb&-vxN;7A4n7(AUiLN0;yKyZB%5$Z3(v~lDDgbD*8Z#cF{}CQZ+W%DKal-5^Jh^x znvbfD+w+l(d*+X2-w7G^`@WIU6OeW>V$u-V^z)t3s0c%6betGkmu_7Rn_dC1d0)t*C1)*E7y3qj715;tJVCv z+S;CL5^VhAYxtMfWY~pVCg4ad;-hIKQ>ymv#=qmcKN5pKIrkFZx*dbT8tWMH$6Q}rdqtGJ-=Zk)8h58g0I#( z6ETUfMJ3dzIUOAxp8n_?3OleTG4-);RjjOi16F!P$=J~tfEbI9m@I2i1u>-H6GmtPo4X89kZ}KQTe*k zrgQ*gB{$!_X)UDqq*`xOwZE>c44-9+o7a{%tZl(Zh`5cNSzFz(wk+15e7)Fzgx^-r zKUj~BRdW8YO0A-;)Hm$Hd~RsLe6|n!K+eB^q5=b$pqxWmsi_*6| z+C>SrGWY}pSpIMV9)s^QhR63gt{GCsDld%mY8JjHmt+1+t;L(^1o40zo&6VC{7i;Q z@l!eb6IuLR23;7g5vJBwzb*TA%jJIdscg-Dx%xxgGHIYiTfJREZuJfcpYhh5mpvSW zjUX3OYpialtJz$qm})k!RbU&CEqtx6d@%+CjY4%&ZOvep6`^x*8qm}m?J^EIQU+Xb0##>w8A^Dwl8Mi=(<#!Is{<-j9Ec&TjaU(KO zctEb`&2m1MD=fjB&*X|QEX;}zaeH(~K7K$pWk#&Rz~IAn^W`BJvqs?8i2GHLAIkiJ z)sTf-g(`Sf-m<#-2)LGGIVQeU?XGKClpua62geJQP>vDvHU>LwuQ@6&Y>;b?$qTp0 zHDAls$K{1vU=x%{|nKXC+IV~$4$$78SF zF4ydkOA}tY@5FYNwF6mA5U9ajUynW8weO-|N)x+$6B2`OV?y6SD9#@3 zd%Z66R;m3v+|@Fn*Mw*5Fkk&Q@A1pA*G5#Bwr9p-N#0h5XH?q%<*~W<{*)tw| z?%CDRzGHRSU)TA=-}$Dl;u>!NPxNrfcfsU0>aftGGufJl{3^U_snkbrI8*0_{xGcn zC1>i&+LRL&4Or+tf1T);6<4r%MPs)?b+up4h*te5>I?7&7oR`FoI%TOf1Pp)`ut|B z@00R%XX=8wPTR421wVVm4klu(k1;zB%N~p5J0d?=tD9fZD;lGp-611)es-t)RL)^J z=a8Ip1aDzJiDu7oU(4C}^!A9lw;q?Xq2!QUp$;9#VV&KA6?+pNZ?5<1m404>(i?9~ zdkM$49`%}(Fg(#jS7_pl*yHh(V8aI#G3*lxdlbHBd*XiehA9xxn9|;FZQAzUzNT%S z=662W{qBCx+wZmR&_|i^O`S`B@8$h(x&)%2?p90JU05)eefjqvIa%$0q~6tax@@EH zKTn{iTf<$_gmHxu>MrJ9<6iC3q3w$NY-rbL*f*$u_`9>`XEjg(5g-CYfCvx)B0vO) z01+SpM1Tko0U|&IhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO) z01+SpM1Tko0U|&IhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO) z01+SpM1Tko0U|&IhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO) z01+SpM1Tko0U|&IhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO) z01+SpM1Tko0U|&IhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO) z01+SpM1Tko0U|&IhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO) z01+SpM1Tko0U|&IhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vOw zp#=0%W*x^}`g^_qO_xA#4aePT;c&ft1OgoQkDN@ygnzK^mF-=&gkt|`0#QF2%Kvor zfBFhh+JE{k{Fgcqh2{TCKBDx$-hb0Cy#GCa z;r);Jh4(-57vBF~UH$KE*0wb7-u>Y5g-CY z;Gd8Hd!|kPC$#&2!sOoFuLAxjw3ALEKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&I zhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&I zhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&I zhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&I zhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&I zhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&I zhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&I zhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&I zhyW2F0z`la5CI}U1c(3;AOipI2xK@Mc?IJ~j+~e2$S9mWVoq-M$h1^P>Qm|YPmi2) zN7~3P%Y0iR{6;S)PH7aUHCA#BoYBqc8;XtYVtoS_?&b^)#o_K^Ljz}Wb72j|CUx6bxv)~Bf7S> zm$)juM-QPYPBHjq=qy^V*{Q42c?>L18=bE6gd^tZ@YeHkeQmUtbJ}+5ET5q$)8f<~ z(eLCe4OugFLS_IR*nrdb)qjKioYUY8`>VakQhU*^DBrPu6tR9h^OJr&`}g`Wj`ib+ zVMSQO3%X{5(yuBkI{V*r;^R8s^E&YfotGCm{gE(qwBgE*zMl15u%lme4Hkt&fCvx) zB0vO)01+SpM1Tko0V43fMj+~zIJ?FAFc%e{l9E#3NS*U^%AAa+Q|1+>=BIHF=Nl`6 z`Dy9-`FR`?xp|J%{CS}mGDESsa5u*4LW$ji^nam;1OnQF4oF^47Wp+o^oWUxejdMeuH^7B}tU`}d| zTB(Sop3Tp6sOpO~NX|=lzmP6gtvVGGHvY7-n;i z!kqLX2bZ0d%d+O=rloWF*{PX1T&bq8Aa!0k=hEo8iZ8=8DXfu)_1w3I!Z}Wx8Wc^+ zO3itio2TbmUes_p&NGkGbIQSx@bh}E{L64;`x97MwnlB~73gb(w0igxY6ljFaopNF zIIbOanW<)tMJ;0@{aD(>aTUMTax6U{ly>9?)5AjPmUvDrAI;Jb^dQ3I|0Ptevk%T|aQ4N?=Eb!*Z@_sY&i*)W!igikCoT~SP}~-VvR*4%qy=$& zX}8^MU#SsAoms{(oKTZO#p{|)*R}1kv}*-oHr>>%R{o#oT;}4aTfY0g|KGlSkDfW_ zJkRreE}!r7y`Eua-_^)8j4>_FfdR(0;7W%<{5=0hHP}Ocwrwce9QNu}TU4f3ugWSc zsuapA$`)1RmI!&drKM#SVL^dVQB^7wl?usenLq-o>U1MxCRGGG@$6ms zY=xSo!luESS-Lqc zKi85A)~JaH)_|KyxW?h?cNmztE3QHk95)z@YRE+3x&T+d!@vxNxCND!L|Q^0je&e3 z(NWFfyW)x@eIhnC$c2JY8YpidxfvN*R7S+04SW)zI`cb3IZLr1z7jgpBn zheVd0MefGQqMYcTUY1*ard)iIDD-dekzN0B&9Q{NMi2SAnpGq*YqqC8D_UQl935db zevON6Z*sI&+nB`mYNHu0y%Co&wttscGHSIBl-e%KJn?3Y777|h5^Z(XYTO$1(50={ zM)&^ZQWnUGS2(-Rh1d!KiCs4eaJ8ky#IpzS)XP zWX)&b-yDKl%fy?nAj;CEp!D5>`n~xn@%ass_#H`<-25AnvXvx8L4qR2Jw;6IsdplL zs5c&~dE}U?>Iz~~mMF}TV8WpR9Q{{9gju3wR)g`_fLmtub)!h%D^$*>oQ(9ojka?( zW^71)QQ!9m3Ra7R6vZ7ngl$h#{qZEu?XC^=?$#+X)<|C+q(t= zy}zT6hyF1z(7Ta79vcMS5l?RdwDj(|1g3QjBPsJ%Q{L5^qIF7Ud@M%wb+4U-kflhl znIK6y2~&i`Y7;VWz}=gHit#eYErl_~%UGRH$(pUJ9}zv^_NMl{0Agd~Li}4Dg+xTY zPxfkL)o2p0!;jjo+bvfS!b3qJkGet3$bfJdJfd=>dkZ1bf3(rMc`V&Q%{{vseaGC) z$B&JG_YIq)1zhSUMfbjXF|IprU7WEj;^OMR$60Qj@Ls=8z8^f})|zhz>P({|t3Ip$ za8L3mJ)3ga5>r1ay7yTWoAAaSZ4|q0nQ4^1E<&GFXNr!T@@3WMk9U)ayYJm4-Aw4h zt?W1$W_{6dOl9<7(q(VJ_(M?P^(+0V){+nMzkfdE%b5i&U*KbQ|fx72gyf(^p8e;8g}%k zL-b&yT_F7$2=PJU&47Er_%$ScZuBg9N7S}|XM|YqkLXy{APLjIfEhD*ovA)31>9KEt-qTZirDO8tVk^5*M5l_ zL0u1;o7nXb!f0{P=$d*x7fBt2n2kCyrD8kFATg#Zps5kaB7<baLp_Vkb5YwUq8sx!s59LHLU!+2nM+h`r zy=BSovE=v7h`SVNywnP{A18ynXk&Ijqz`y^EDSK6ko|Kim;ngwFC6K`s| zv}=eUQ;}4EQKoULS%Lw;Atk>asJdJk05nn$Z)nig5+4PQi|OX+k0fv;D#n4?9-6vT z^&?G8ml;^^gj3!CbgQGq0IDMQhR_{h)?0_FB{$_hWOcG6B99rx)RJj20d=DIJCRiH zwC5vdLpDMCJG%FhSh(j*)^p6Asfk?7Y zBckR~Oie$JTk8HrikMy!lU@0`e+oe$&T>K}4ixulaEt01AxDc$S08nj<*Ubr852D{kq=aRH3RyX~5srI4~vw!$MTc+c(tLE6a)p}`0xL_eN=!)3bJ;~8OV>L^n<5iXr++WF1G(j0E+~^0q z!xjdhup#IzlB1^qN?LD00ZD=~i8>B{$-f{sMM*=%ni15#lA{eZ-Q(cFsMUpl0Ju*F zO&CMF33!;eH-yOa1ZRZnEqWmLHg!WoU=wXSQY==pPrrub`maDo;VW(#Dsl&dBC;h} z%>O9K;bEONx_Vl4Y~)j2QV-j$_2WPw!iyo@Nf<`R^r<4E^3zmpbX6!Z`Y!^^GI42F z)kk7GsS)++`>6_|AT`38u0qE*Vi~JTj*hHe5*^7bR3>T}n+k&Eutd6qE;nPgN0s0I zGb*?y9YIQxOEH%es~wd{9VVt0RF6O@g^AUk(vTIMj7Bcji(yR!bzW2)pk;xWyrV~p zJ{M2R!FinHSsX{L*0NnU`)O{Da&AyWmkd;T){uU2`s>lE( z^P{WDi=QJe9*Gxk35bzIgRj%-)hLA=vW}>Q22zm#*O(Y{{|r2u>S6CH*b^greaA;y z+!$1^<1?XQIGoed)C7)-PL8PeIe9q>VJJK^YRnBRvBA_p^#>XDA7D~QR%NXir7^SOJ5dsmENqu&IGRa680MW>oyI@XG#=%G6C;}OQ(j&YJfvZqr zgaH{y?N;n0A{9GTFNlPi?kHL&%*7<%ECO5G75Qw}gg5GTuFgW0hq>3#MZ8C&ifj-u zUp)`BDLWrYk?EEZdqb!$$im(bDnN&*E@jPpDo-D4sFYZAjTv`)L-O%SNB>xnkI2L# zP(0GFtWRz=6@Y(BM<8v*2f`s48M4tC88qNpUkdzG(^gfjO zu_jfVlM%BF_M%m#lM3~Rh*zm`lLLLrp|Iu=ow_PpaqT9tRLU9xq+z7^d8U`8`Y>u5GobeyvcIm6XjGQ$N0z*~n!HF68vtglqQBzI z*RSMGQN|h}^<~Dxs(r`|wO_%2Fdx~bI5M_jB(<Ycm_M=*HP;q} zBeqg1vtBOqCjc)B)*Ig%Fuv7bd`s*Rv8kwIkt;gD1xZx5*Qle;rtbx!`PcfRRcCRt z-iYZJ>g-@3@1RP8Is{Xp>0Z1K`r%DEBGr)y?G*Q8onm%*YYQqGjBeBp;brja;iyfD zljgoj2)7^GFFMs@gWxtCre=nC%F%7@#SSSBt1+tH*wtX{vZib6v%65=#(e=#-M%(0 zZ~FF46?-m^G#DHAA>s5AcJhXE_ercXF_+B7G%~U_4AQ=aNgWBsk_KZpE?D<^Xyj-x z?!!foVLO7_3n4~xv4B0Sx1h9d0UW2T*vLAk6pXs+X3?}?CwukZDGe-RBuki^pGDbH z$n=dQ6ukX}&qcq!P3bxkM4A_S>P>0c8`y6?b4EY19{Qyo;tvvFSho+*B48i0T!P5` z@T0M%)=tZF1h?4a^W{vqj{Q)$T23Is8(^2J|Iw&3K{^dIF{ECcgn4*5P}8GFKB)UI zl~sscGJVkEd-?Ca!^(x)kT@WT4aZt=>h62*q4_E zri*j)aS)|_+Yz`0sJnELFaE(|y z8N{{Iz?k{+HATMK67QSwzQUT;so znU-T#OtmXUKHeuT&B9nLT}8%&{nzfO31jo_1g7+^f&O7`dIu(_M?8-ovr+rKN7sAV z=K}-iqzYs3ngQ41@pKKLRVY;{DB>$rT*u*&o~L13kgoCabAo&|$k%kbqMw6^?p7$H z1fe$wk7G(*b7~-R={Mll^iHoiHTl8A1JSil{Zce+AanhD$&h&0NhZX*cJIUun!K+N zMxtjC8;7;v>$~sGxn~#In=A#PO~%z*3PYj?wxyQzx;PDmYy# zA2k@c;##PBd>0tgX#-hmN2Ia$cBrvxn`D~;z-*Yb67Ojumuat@HqJ7lZs{l+m^0{o z&Ob2!p0car;|X0g`v>+&3|4>g%Z(>rw`QtRryPi^(S+gUbJmqA2-Iaomn%$l>Xg?b zpGc9IYKi#^g{cvlS4m8b#H>)5T9NrJMqjAaO3X@y86w(zQ(}flOpC${6`9QvGgM+$ zDa=74^FJi!Ac^^a!qkb(EQzU;m=7wuPP+2g}CTc6*KU}KXq>;#qUKf{e*NTM=zQ19)zPCkiZ6% zP63rlkHUQn(rI8ve)On_`qSV?gQR^{Qm&&+xd@sJkxMsV1|_qDLUv;_an{@Lt~@TqsJ&N8{95eb{fn+^%71 zbfXk-is)wK(wDKYA@dX7AaUF!7?x#4$L#2dfZt*tBvpoRW$rjv2;8dn1wbw(u=UYkH-WSS^EYI zBlwsG3yho+H?~wBt7Y=Qj?;wa{P%Fa+x5ZxXv5(lI&9>80AqDf{_c|KyB0$AU7I5o zLT=u>#nJQrk`+A{SCKv!MN&RMmvneY1d26x%`hHfX>(K@de&EKMon5Z&P%dzaJ zKUHsuj@WTZ-1u=*6$4d5u?$S?ucYJ65w?Y7fp4T7s2e#7uI~xC9G|AS)@v!85s!=7Moj3kk!2`_ZatpJcij57pI+uGPi2>2h_PDq+J?}2WPpYo6&rCW zx_K%J8F2wbvMgRrJG_)Gy(*G~_kEbxOz7(SHIM~dlSoWy(=URBH8H5vNbBUbg?bma zTq)5!ecrsinZclC0-5wSakMVdmrUWoxtY)>j#PcouvUMvFP(-IyqOE|5o*ZC+u@^; z9Dt8>-O`h75I2jFehaQTsJAGZx%64Y zG@%RR7>(4J&+y|W@`I+YJGWv0ppfc*^$Cif{5yGee^*RB_Adunm+Gi$wyGdf_p49A z7cKVUMs(ZHVJ{E>vHmNhyP^Ki^@pMNGUA zsOmi-)NJ)=I(tH>;YOhf_k?_tWMHa2A(Y>dz0Sd-CnNe%mZ zvLtnz;xd4|SpgC9lD;WOUdEuwi7|<-dQS*7aYRk6JEAui!v1|KJ&SD}O&-l1x3tVa zQ(yK=N;J}EB7IVWe`YRHLTvs4Z9W1@`UYV(WR=GZ8J7j|0LKJeo6>Xo}ce< zej4G?*_k!H%bMBM%sQE_iD^5lbxqaUP8Qb0LOQF%nyN!OS$Go*?W_)Ost)aBgPYi( z&g#KU)q{F_7Q6pwXSE@

~xm;+ftKJG1HNqOR3KU2#Mc)AaVZ-QSp)#<^HitKRs4 z=D>j`Sc}%Cg;)!7hd3Y9=+*YfT1|__7D6<2RDs48hC5rYy+d$yv`vA9luts|g?2us z*&X7(xFs~I1)-WX!kJvs^W(MWiog(ZfhYPn{Am^-TF`de{? zb=6L{&#%2D%6VE>GN7}b)@>Zn#gFWqt*gEH(0~rq+G`G-)~&m~_!f5jv=0A;`qRR1 zP7C9|1MMF=He_(vpb(8}XhgU!RI83;LjL+TWXA^UJug0KaPD@Q-dN|n=S7e1c&E#) zIsUQ>iF413rls4g+g-wjb;8kR(<9Bci#8>>N9^mm#C_6s>87M-*1Gm}UEw}qdTCwr zz>0fbbe}j^Ra^l5#jq899V zO!Zv{>%dpn2c0(45Tg40Fl%Nub={_0ZoP$Vr}G*1Qg6@P#?PABN_TH_b|>3@?er$L z{eb=(bHWqXtXLe{Y3=G<(G|bM$+p*ywGTA?XV(?WyHW~|+O#Q!!qzQy?o;-+g)Lj` z4*GE7W2J4bTeFpIzjNRvN9VQM)?L#C4a>Xg-2E+MkKV~d;>N|H5_KzkX`lP3BqzMI z#r~mJRX^Pg-~-lC+#Hosh$66Uwz1~92jag&(R*##)mVMo0-Th{pQ0K{ou>QN$ zx7}YK74P;t++W(}O1Dn;r*>AibnJE#xsz>MJN6m2-F-Ze0Edo?0`IbI?u(>?AG*U8 zZJzlFX505m$L@1$KN;)!O5(rm_9%Q<(@4bMk+s@u#E0u@$BNf6W1ktvjMvoZKi%N& zki1bVr}g;2_IkQxuI=P>cH{E+QyKg(}xyocaLpU zw~XB%(WcsvAROPib=Wq6ZELwEO88>y)+^}#ldgeB9X4Ka=l&_w?`otLfS2)~)|Tt8?S?FSKuV zz1XpJ+e_O!Uw-9}uO52s&3FFv?w{X#|AP~zqdXza3~ktKAFzI>wMKMVhjy99f9LFUSwC@EkGi(4_^)=;W9^ihE1ywo zR%t^*ZL6EttZf;j+hBKug%6Gx(za=6q<+}&i?)mydGRGtmtNMjW9P2!-Fx=#+kfEl zgQKpv(*61yKYQzK;i|)$;cBMV4GY()V}_}wjGmwh zi4tPe`cQS4I%J%l>Ec+3IwndTf3;ees2!#rq1J^B7lw|%Iv)QcF1c>{HCM+^zB+#R zWxDwB_%A(89X)B*Xnf>#$P*(J|gKuKWx~r$l=3PkthL8m#Ia` z$=)(kaTh9CiIT-&=CY|%r>d`;I(7JElA$OH;=G4`HQp5dvRaoEHhA}7t!jB4OVQy^ z8Z;60Dr^_msSVXBVJh8K$=8n7*^Hq_mUV|-Y_7J28KT0Y!!K@|!GxFC2%XIw-u0j1 zH3xuwJh#@!)I$inw&OqAES`?mxjpD6-rkOG0w2G_M@yp6y}c!w zKBm)0qA}SxJ>}MrTcnPmFw7ymwH^I|Ql=kwQF31(i$QVW(W6Jh97m6eodcfD=Z&41 zOH*o7ZR+KxLT%dRr?fWJrWA)Q^7RzY<;zlVTbS}>3XIrvoy*B@_X+fGg$~KANK7eA zDO_RESNxDMh&JCx}S{$PP3hg_^ZWey~@}X0qo)`>ar?hqkb%i)h z+dJ3B9Yj|$ilkOTsPND!t@~rofkL|>#+351XNu|hm*H_rO3QfL&?i$0J-XfFJzBfq z{>T=xDP_afEwAj3bw3@`I7)bbi>_@&Of!38tgv$nJcx=;unhrJbzNrRx-E?!yT0vs z3c#FpUtyyzT)6+`Ig7RC+UtZBFK=C}jlMBnv-OnLx>(zC9qvP(Ii=NWo>{Cl*|v&f z>;`iRA$H%w8zEm9?k{2{_i7XEj@nynbI~IvKQr(WaKosDPkTCIvd7dKkw$mDEDU+Y zu4{|7$6FVNBmf-GrGTmJo0eGj7jVDr*eA&?$@{Nvd^4&sgj`P`-=T53t=g?#YZT^g zZ@V9%v@QH(ddu|v`o?3n$feUoWzTGQrB44XM1J*(^dF;N9h5@*)h)4}k#_xVV~ep* zRcqWI(l#u?OpFkiY#aqIB)P#YvHK(4B5^qp`xDG-W4CU2CH@2Z0Mzf9u0PO{><(`+ z!tlp?jC+hxW?FmsA7@UrFbi`&-i7~|2(TXEfo-Pb4r`vnTJEs^!eJKfUcbBpmq#~l z{IB-k3m31Up4J{_s-?b`A3tFP-dy$gvz^aYIez0XJ6O|8uA|Qmdv5e|anIfUocX!( z=jOBwU;Dc??zNw&et<4+B332j-VU)nS+;>!qUUkA;t zt@k;cM?0*A4kznL72LzDFFKmTJ9C?wvYQULPnxzj*$qUB=)7MhCA1B9zUXjM4;2!w z53!qs7h0lp!tEQ-2JUrOGaNDZS#Nj5Yl`n}DxTjIuD?_&{-9jE`HIfpIGU;)2lOYM zn;h0VFv6^NwmUpwDMHh_LK}P1fM(;&akz!%@twCn+vL`eWahKhuQaJG)~_|rjAyN1 zYV4s{fi7@(LajLtQ}t@I>6Iod22B5Om|Pvs$fnkzO=jm#N9zuU*>wAcqeo45erqZi zFwGmF&w_!10pay$owqwYBU7C79Z$v-#%oMtu@Gun8*Mi~8AI-9gkP?+YY>gF?KxrF zv)1{J6?ZvI?avh_Fe;nj2zPW2Yf9Pmt1&9061GqV`;vUDwdmK$n-HW^ZR(F-@)#q?| z1k<(*hiUC|;&s2(Gl)D}<~KS|?MJP`KS{Woj6>%V9UTL+yIE+AhT2>+nQU;Jcqg zV2BD_l-hWw)l;h48h2PqAQ0=)gyfFk-$87hR?z9QNS?w9}OqF9_*R;m3@ZkO~ z#vKV&c0HAeuwAKh|Izsy$9|jVB4-sY?%RmjMNGARI+WO^*=^5Q92nEg)+&cRf;iU* zTUWRJY=irfo?&elk-Uzmp*^~`Lyd!%xpj6me1q2jw!mSvIIIgD)?$aX#38)@ic^f= z{WFAj67z6pf#ZsB`#s@y_ir}lIXn+woB%@Z_nX5%Fd)hU?o*x@J8!ke&l&iP!7f3jcS_Sa@D z#1FW?4M72uwz(zQ^xM<;XgKY>*FjO->oAYAIMOx3zUS=avn>v!D$#&{J0efPAX|t& z#q`#Cdx+p@#!iTht$fm8whuyH>p(FbZMH|aPdIf=)=rl*tjUV)kT6t*u#Z^6nr317 zI`?;`U%Y5%rnlE%3nI_qEOxlVoh1%5Fcm5nk5sh8fuh(uLB(iH`_|Pawj|dYgc<9F zIqQYX)}uzOFS$$`)`_X+8ADq#Q-$wE8_%zYCh}Kw4f5Eg5M_m5gCqQYy+&rWFnxSrL(A-s|458Kt~~&Tb*C!@whK+&>zD6v zE#Kt=0h8gET!2m7X>#s#S$7dA#OrpU?L6@!HlTnz+(gZh<5$CRj|U~mml!y)X)Roh zDp=%LSx~s!(pFyER(szQ&p%PLZqeF80lvd=a}#_LIvR}|x^HVV zcy3wx$0rV~*yUQ@?J|Y0b%r;=2j}1>a)6PCYU>UcdV092mfg&CfWE5V@L1w+NVw<3kHEn??QO%t~&44`zIzrHaPDQTM2f-Irx3-w%t zp{3N()aim@Y-PPfJ9uWh0omaRaW14BJ&iudIiv}(*auU>KfT5timUS#7Z_%7xc0;$ z^cNkrD}|?R&0(D#jwXu(gT1|r?7qI%E?`JUzpFyu2Eh&ohSpbEk7ua0x{I!%*2n2; zhHK6=hjp{VneMQ<97uH}wR@=7?S92=t>P9XcQ{t$IXZt~PYJ8WIEx{nw^09? z8FgrV#pNt?Si4-#`zQmQ*rh|p4x)^0F<8?aEs552huL<;)+)!7hB{0!Y*%hFJY&a( z?O68-Y|Jgc-LX7_x>HmaK3;kGfG44yDY-6q2miM57hP`Alo#%#kg6o~9LxOG5hccMpiz&smGBK+FN zJfYM=-0REJC(zKLU(Xst);fSu(q^bx~!<3e}JHwdRZJcM^bw@^O*6#GQ z%+##Zv_om>#zTqe>Bc$T8OAw@vvdvX}&ObB!6PGv8%bmD|c!;}qn7W;Qxhu#65Jt-X5j=<@h-L%E^aP_1M1 zS{?W7s)vMM;9vPW-ESUzW9N=t`(HB%dYx9S>ayVrJ=kkzYMg^`4m^fehsrrHWRTUA zIA>ON;w+;uCoM}zoST?xN=!2C&H&XY7&9``-k|u5LV8A8mT^XwvD-K&SxB2HBqwI= zpdiFzGt;u?bk9vQWzRMWvr{u?CuYsqmpVR8DxaL1d7CgZ+jLMA2Yj~~yEE^cla)A6 z;?GGFlCo#cG-hP_%!{H~cc%N)!Tzj_#MwetTAE-=%$T*C+)Yl+fKS4VwAr&0=X6_{ z=F&@}Z@9&DcYev@r7ImT#jeD!$o%8-e`qvchsRj)^`c}g!*&|M5sFhh^labmg9l%; zUD%;n3MKe9gWG*@_nWWnd8@bMrS_LLv#v+mulhqs>m99St=Bo9b{=p2rgci|FsF6n zCC*3NA8oI1{cY0y{xTYFtA`dq^PO^x@iSk;a}sWZ&J zaaH@RZ9}l6+27^Xm~z@pmF;+E(!1HNYWj3Dq=e)bAkwsVv-J&^^(~k43s=*g&DPgl z);C?wovx;Rn}x}3Ld5gJI~~H*=OKw+cekrk6zLQTb?)1YLD71`)%odW>v30S?`G@g zt`+aPu&3PPvVP=p{~dL8xtu#(;W!*C zPP**Ftlwg2z2bRc((}Tu7wqcTw_TpAgp(*7B@AmzICR*BIrFmtcMY zroh^T4XrdMfnwadHsLWvXx?OFg-<4#e%C6z*w!|9Q&Ng>_a@<~O@(Gt8Ob?!xr9Hr z%4JA+Qxcw0+H?S=Uu;8JyJ5)NF6-Ma6f`}x$zE-Jwq2a`Jxc+=W59`7`Lpd3@{%ek zIx_kB@gpwxiQ^x;OqV;o@|czVM>`c2Yo+Ov&DiDLvw8d8&CB0#A^Irc-sjt{Lmk>8 zmal5xloUT0OX_`_k~S0y_0HB+?fdq*KXtz8YJJOv=Y+P`h3}q+!35!h7woJVT_h$H z-PiFkB zHXCBot8I>zC?SSv8x$VihJD&^x2`8Gb{jE1-CUcDB*GAtv{9t=_V(JYKx|<4VoW0S z@h>#4Z+jMA+O41-YHD}ugouCGN5V0)O>Ji>SOBeUZyf&jwe1+zjC~mJ3X52ZY1YQV zur`#a)4yjHbkAc%-0i|E&DSwP#=0@uiL|Y+yYRA(2x8P)VP2c`B5y}Kva`P(?e186 za{^k?OYObxZ<`}}mU~9nG+S-$O<%Q>hds&eW6deBhRB)Mw|T=v<+mE+4;6B9^~6(@?#2lzl+{M9-!Be8^!uH>!?-T_B?VS zrY&sa>#o)}Tqf7^*ceXo=p2+1c%n{6>rvB2=?gaXlSwIc=o4^3^G7FO3vqr(@Hqd1 z&q7Dx20NUzt5&?}T8{k5Xv5BQlJ$L8RLP%R)(>4!Y5l-e@}A537Z=cl<0?}|Tk9WP z&V#Py9(pUg@f}y|pD<-oL5sR|mjl$+ZU^4+Zv56|V-VH>xtKOxYiIk$?d|UHjoUZ7 z;Ts@Z@pSw0m8c9Dg=%Bl#;4m`@vKG}=WYi@zQ+Lr<`v?*TDz`aweW4Kes4;t&6tsEcQP+x2*T#O=ikDp*kGWbubFFyAwYsIYM*ynN&JJ#!RN8klCJARbD4gkSpuH~P(%*Q`LXw>m&(D9gCceyrpyOt(BG2{3y zB6Wkb0|FZ{>l<`vr|S@wM$}=Qd>*|adg5+mE&y%9uwy;!iaLJSMLomq-k#xS@uO`F zZG2PG2YWWV!}oPv>HZ3x8R`_R{Jpl<5SM!geS9v9p>HFhZy=Olj&iPQFS^>%^9^RT zB=ofD!FJ@U=c+>ld`fL!W!{`6y?9d&#kO zPuQ!Uw>OTk4`4-)E_pIsezqMAJ*tS>JmfcEuccWVwe>`M6ZD6o{XcV}z3zbfcw;9T zy3^Bc^|;*il6kkvoC4LY9#>(M*pH&T3BAGhkDj2;VBbMcyZcM%^F*S3f8o0HM7yNx zD>Ftf>D?~>2-m+tfbF%U+KrL(j%_YPp}K~ zUKFk6j=4(k_VyETZ2int0wqUWjbha?hITd@E%r(*Z!WWI-51+K+{3YBI@I*pD@X0& z?og~~q8e2RI*jpHC8Xd5MGU>6Fb~5oMI4_gPM8J;RN?t=?ccHU%{O-JwC#TN?Srqq zWBcQq`@6NnBJqvA)BkMq{$WL67}Q;@S7u=nmA=q+At#l-kaB01QGDaqACJJ`CKWra z3T0IelwHZ5X1`N(sFj;@Ud<}iFfjk|PqXKo8aRU^z!BgGa0EC490861M}Q;15#R`L z1ULd50geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A0vrL307rl$z!BgGa0EC490861 zM}Q;15#R`L1ULd50geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A0vrL307rl$z!BgG za0EC490861M}Q;15#R`L1ULd50geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A0vrL3 z07rl$z!BgGa0EC490861M}Q;15#R`L1ULd50geDifFr;W;0SO8I0762jsQo1Bft^h z2yg^A0vrL307rl$z!BgGa0EC490861M}Q;15#R`L1ULd50geDifFr;W;0SO8I0762 zjsQo1Bft^h2yg^A0vrL307rl$z!BgGa0EC490861M}Q;15#R`L1ULd50geDifFr;W z;0SO8I0762jsQo1Bft^h2yg^A0vrL307rl$z!BgGa0EC490861M}Q;15#R`L1ULd5 z0geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A0vrL307rl$z!BgGa0EC49088NPZR;| zut*JKr~g^>4=V!0Rg7J&XZZ9T0|Sg*$VnQeUtn2(dp=M2-H%3KSU^?&=;HtO1%|2r z?L+u)1uzWF|EGKm)BcpBXKYx=Pdxt6pLqO(e&X@#e&X?m{lw!B|B1&x_$MBJ#7{i_ zAwTi>hbr+8k5up5eemFGwsRdn@s)yt6TflAcPj;9v&E^a%#0f+U^O&s%~s|1Tj>T(n?O-hHtXZive-E@nBm zK9G}9u&AigQcy9YIJdI0pi&MtDRoX_#+__-+MLv^v1Wq;PuW)CH`htdwL~#R4`Xx3sj(B2*OQ=1&zw$qd{Ul`g`=IKlEzd4YIS zT$Yi1>sBWo4Fe!hKaG z<$|RQVqi|1hd|gJ6-5@wKQM%>sqquWXHJceNBOL&P?V1+x(JA0jK@;2*diK)yOl)` zBc6QWs+)xg@e?PJI%Yy>uvdB>w-uR^AMQQ@R#4#|0HGj9!IFwfbAiM8pi*T18<2?> zy*7hzn|OZQ9`q*1gFqZLC8EjL+;IjL_W#IfI*T7kpqOMT*Ip> zk)FsnbkM@xu@4kZzb9NqQYI}}RB{hE6+%VXgLGpN78aoe#mC1+ zPo6nbpcW;y;mUG!Lxn<^7R1&K4JAd3AzM5Z37kO>wV(hJa+spETw#*1;2}!^s+IbPxbW14A{5di;ayTxSxH?S z04fz8DytGosw!cpyu1J|jPuVNGT;v*ITo&D<2a!pZc&`KCdVbj$Hz%kLn^!pD%K3V zq%i=F!>z?};o)MkO7H{)Sg^PpT|2^)gcg=npqi%oGB+NUrV5D@1tiOqL}6mQkT64t zpGY^8W_odkRKipt{sv(ZnDHbF{uCn#CQbgaPm03_^QN~UxC#*C>#%&a-t*9w#365`?s15W$zVL%xEUpvxm zYHvs*)~cCywVEyUqs4%h0NQdt+6K@Jpq=g50=gS#FU}J6qG(t zQ~?lJn)JMoW@?P(;ii2}>ns zsdE>URan>@H71Foe5M*;W5i-COPyCxRLoe8dSPC1StYdIr(Rfw2^70uy-=LqEo8;G ztFq*=67gEe%GC>L4#a*zSCp`*7gpxwmM&!MA@xFW5yaRdYD9)e7+b3@k!?BDSQzG& zKg8Hhb!E|_(p=d6qq@>kkynCI^>w<#@_@1T=+06G?lJWPiW7`c+x-#eZN`i_M$-)w z#VrA}j}a(aQu#n$1tu%lBw#Uk{@*_R?Td|;fBef3pgG6cw^73V3Tpk-gx2zcJ@yhY}1rNklK2SQ|D;xU@i&$t< z?1M$6H%uJ=aI9!GHovH1ymSZA@kKW#+!R|v`xX$9w2QT+)`no;jj6SRs<4x`s1yrw z@mW2nvJewJEYQEInH<)f7I9b_q zj5*nv#vGF|ajwyyn4X=Pk~7;lI}Is@OB$H8Ao1Dx- zd@OP?Gcjc*3-!@vr_G(m2Kk=T6Em_>6HPf8##ykRXfiQfFmt9Uah9J%m`}nqBV8^Q z?jw@jl+@X2$;O88}I z98=nySvk;Q%w&2WFT?@dby9P$RbzSC?8o7Ch`?NGV;wh%b1aqJX5St3EeAweE$SW zHl`!RjdNz)$$sXO$V57vLrMsg%AS*GN}V;wn2ef4ou#E`rOr+?v8&D{m5CR(Mz7fD zK(X}18Mi@`9Bt~H%sF1ks{AZBPSa#xaC$c?yS5SX>;ZpGcwV=WU^SF#LTqpjGSAuXQ$_w zQfH@Tu{a+qb4H3WIUBw9cpr^iNXlaIft1uaGm?!n*aROn9W|R_%*xJywTXe`%#^f@ ztelzIbHu)m-QeS*^UO(zzae2VcEINVP3iVdX_$ff!tjzK4IS(j z9~;dnCvjFbo9-h?=2Gu6=18rdb@`2OnQ1e#?np!fqu$PlG^R{VGR{HQHv>Zk+ucO$iq40d+=3kXikpU(oCrs3v-xu zk1i9;5DmjuuE0yCR;cjy%Df2h*m_I^)#9gC^&#$Q4fZ>n=bk|4m6a|mS~R}shJ>5O z=RLFtGvv6;|B<;gEfo?og^6(!Z-|@7RMqf~AODUBsD`P==q?(p(Os_7UxIXtW`hUc zf=9+Q7pXM5!Gos`{`p|lMOfSnK@+8i)Qb`*eIp^53VP_pUOKu7tx_h0%IIRi8#M$? zWhA@iQrc`+rCvmg!B+vRh)Ld((=VL{_K>Ss>P6$Be5lL`Nxf+LrRpfis)jLr=rGlA zsJ~nXheQ4yvHpM2=Rd<-+0aMU0{nV z@z|hscTs6xaTQ*`oV&jQhf4W%Tjv&LtkRNSR2ElA&QTACJM3I7T2LG-ehCnd8uXF$ zea1Z6Lcjwn5~IVSGdQ|)JLT^U^Y)^I3JXzFAFOFssYZ{!^S1a!H{W?@{PS4m~`k?*Jo!CAtW$whmzkaumv*U*b^Rw=L$y2p?ZV^^p96t7 zaaW2lbjs}X0Gg8uulXjR`J8dgl%G||4h?eTY{$JIPQ@w8hys=PYzv@R@iYa^)+e(X zltVH_+KJu-%BNmRj`Hdi4Vp@+@itd_RXfs45x@3?Qgo1W8r5~+T`xW>A93`(c=>_s zoGpsD1$a3wAGGhSQDGoF%h3(m;V|%V)nIHo^H5NY217>mp+&SE84Gk5;0xBJ62h;6 zA2m@;{g|kWu@7(;uf#>6oaOimv}#3$DX~kX$e(QR2L+V-F|kv`QtSaL#D};FABa-y zql1M&A$*RV51;$;@T~*?*cHTX0#!zAV*VLvNU!|y9Z1%w#C{fha_Bn&&|$mWn=RtE zZE4R{p(uz+dI&KaN(4?Rf)P71K`rJMMCC)tmLGyx49ZA|okGk-E|ke_dKTznp5;VQzB^>(KuVXkYw&6f6gfbe@F)% zk}dKqueLKxdj%lj5nhs3e|F8Hc=_1 zXZs-;MVUZ|oUP@Ou5O(4CrAIRH+~XwQlxq1RXGa_axM7wbfquaxrk0UPozrkC&`dM zD^P;!+;?19TohgKL2)hq0dcK?oD`SzP3~Cno7}#*?uVCcNELCWca|C?%l`rTAXJkm zLj=|U%DVxSRiNnMkC+LfOa~|e?!?;h*1Kej@cBKeyTcr~A=HAQ<{lS45P za3u_v{{RfzAtzyoMJvr*eDI0-_99Y~52*opBwf-xj*fleu-mDko;FeH`TIBh=wpH9fhZKuM5 zzm>?N!t$Z`{IwVb`K)k!SHSc=B+je{yUIe}% zdZm2)7!18}sRDH#(m#RsP?tcN26-^&VixYmj_? z{|ET|CFCTZeS1)fl7F?&=};{BtXK%VZj?j85)AnGzQyG)wM~{mXpmX&&+^{ylVxbs z*QjWg65PoCB+F25p%LFxc#C^)2t&{LFcjBy*f3V=)H_mpTP{=j7H{kufUeE`&GIv&l%YPo#N(7=?=NXfEPAWHf?f_s2($eJE_4D|RJ& z{}+z3j8rOn4jymp*kHilX9Wy1koy}lMT%WO zhM(b#{CE;F)5Us+j7ZbrvLk>p3Y0?dC?ZKF4wv|${{8dMLAf=6k_t+50A)TXgChM) zm4NaXmI}UpehDaAY!Ub<%RreIV0|Sh^8+X?pqK+F?V#j)DYOFvfY@rht?`XAJ0Wv0 zfbtqBgDz8Kg7ar0aA|{9-w`~@V30cF2`U*K~jdg>kMM_9A zXW2`U+j6oP1<5HM`u6J-e~L*L*;4wS$tidgGgG15n5E>ZLYZVki2#|K$QhaP-?Bb0 z$a;Q|bwWST`q+PwbyJY_c|q3K23e=p@~?<}Qjm2+koDz3)?f6E1v2uc3##|@AnWsk ztZxXiK0GM)tP8R}Ey#LGkoBj6tiKZ!`}_;C{#1~4Tafi*LDt)XV$Z)I>j^>DlY^`` z23g+|6npUnSx*kKo*raqmmD zuL`oh^n$Egf~;2uSw9$LePNLGD?AnUCcWW6xRx+TbZSCDm6koCI7i2v@$a;B@_3c5{lY*=tyddl5 zAnV0J*0%&%pBiNStqZcgG{|~mkoEV2tk(rufB%B4uMM)^7G(YVAnS*NtRJ}`>sdk8 z%|X^%gREZ}Wc}C$S#J!oPP@_p^XEyuLDts=S^xTitj`a!UKnJ3bC7lVK0x4%`uhvA zz9h&xeMcxT_P2tpKM-VHE54Ecu`8*%AnQ*BS?>w5{%fCgd4JpU=v!h@a1L>}Jd} z&lS6}HveCYYZ6mx@GLv+N)(&_xyTYaqzkeh5oCQ_koCnu)|Ura zpLRjkdxMbI1zFDuvhMcD$XS!{BRkhv)(D0b5YS=R+wj|sAF z39|lZkoBw!vhE2&ULRzAevtJOJ{cML`4?pU`ylJ1e41tC3xllF`^dn)F8_k89|^Lq z4YHmdWPOWIMjqoz;m^6oIAwhI=~2daKU*?}#Yz;gaOUx^9^Xm7h~at0cc0J7$mr*@ z9Q%^<#IB6*|BG==s`kc(W_8A)L@`OJ!E?_6CXY~Br3$YL&N!5JH!IE)I~Ad~eDwZP zdK3BwP=bA;H=*?YQ+g9Rf{Fzl^p=zU28-SzX;dZn3`~$U-4S!z4@YX{|9%J?Br|QXS3s*YCs8Qz zpp0us!ry)Xh@VJpkxI^>H$R=Jtdh?023kR zp<-(cD9XG}l9@)};lLNqm>9alul%?KUCSUIcWmN#B2$Zz}lm|f(K=EaG4Jh>Jv-LY!#+P-Q zL0K7~XD2A+i(Fsw4|Zw;vgJ=C6Hw}7Pk?H-7=gT{rQbYjYP z@TA&Fg-m%ssXIU+r+pZfgA&-Y{Zf?i?>GJv6q=y=N;QG9AwcsVK&cL(YyqV;fU*aa zLN6sp`oUIqBp}kaAR`@!OZA@zoB^1eXWMj0J`2 z-B-&uff5lQa~mks+xYUCelJ2=zZ3FwRD(jf;ge|ur7l1Zt!$zLC_6v_!4K7UL7~Hk z^HHJ%^kd(EVhTWP02F1-DESjXodynHySNIJz_IcMP|^eZNt8?ZtltwvsRE_#|7+}O zmK!I6u#UU~7Y>|VB-wDE8N7j5Dd(k5i%yygc^E=vH$2R2SJt*8A2KoHOHkl3n14?d# z|AF!{Yx4n=d={VMxEao#Hup17zJTAPz8d9?A4vyIxC15E`3jVO<1ECXe*caX&Z0$| z&$4;_0m`3|@*bthqMGgA!U;2i4 zOTE>v{}nfRL^o#)Xyx@zssPn2hTYsvUobS)akxL-Fa^nOQ|Mr6`ImbA18y=TB>N`s z%crL&j_~HY2zP=K?mbB78Hcck7_&-6;)8FKH+l_`Rvz%Z|rqW)3bAuwhcNh zkg+7KXW8og(hw`t%Q!j$iCwh;3ZUTVVIwFcvshA|LKdyqRTs1)1T-+GD*_RSr$#Vx zsZW0_jjzcC(g2+)H?8n4X4we&>2s1I7!=Bf;cG8gufoO^0-0;`r05(ktG$jU4N^9- zhdf@r7`h?(i-abJwH>0!1MU!x+dMGJh9G z)RGYTCz5a-t8E@Ch}<87bQ<;jJ{C7+2UJH!n}m17lfK4+f-~%mEPSO^0LWajbWsR! z#FYaUp_M*p_DB|Ri@n*8?NrT!$cIvl>_Vs`#l)~Kt}ZVxE(^)=(x+!vT;-qdegqO6 zfT(U>-M#z?5Kz~^lX8F|k$MH7bPrg(6!FesQuv^r0WypL4CLTM-um#FlgFxDPGH#w z$-_WAZsE#BKwL*7@D!YnR(+qq(@!DbXF%lDFKH*|OtIplKY&8S>1eCl0dZct;u!+Sf?LGOO zFQMD363(7o^J^mn1IMgxh#Q&^n zyU9dZA=S|)m0_A5z&Qg?NqU1RyvHF0`vj%9NjM4=mzm8HLZ<&!ZaqR*_l?zQ`)pZE z74UBZvJZsU6vB8%gz1^!$)h^zfXEc4sIt1I+F9QiF{6QId=R8#c)Mom8g23Vn_E9c zB;!RPW5oaA9Wry|2CFJm$g3fPgsz`Diy#L26y7TIxFSV7!@_0h7eu(mp(D?_!S+qI z^H^uQ`=a^{jEA~JpYw-gh6h_>A5%_vZoMq50;Q|bv#Kwbzn%z-XE_zHK`?U`-yxwB z|7RJ=Sy$p%$_tf@*7~^&OsJKP^neQ$r=k!Q`VSOC7?n-n^{C~fm~qZ{$o3$|@_!6W zd9I4Vsi>i(KE>p`9heh&y@D2gOK4;Ci_V6wNhj(7dt_v{Wylb!_;$fdj2$#?I@~Ej z6MJdk?RBF{lq$$(umz8)ljU+-(x;CUHuF^dt__arSx28oijhsG?{F?ZwKv)FBhMTx zId#ycVhR#%8vreVAtDBby=Vp!s{OlVzg^0TG7TPLS#|5G0r+MKVygErs=${25fI$a zux=?25D8q=A#Wy!&eTHh?{qIE|3_n Ynq}>fg9{Q0O72c*Jkw9ukY#H52!2#;9{>OV diff --git a/bin/page2text b/bin/page2text deleted file mode 100755 index 7e92f2ad72ee94f4fdaf22335b6b5c7610d6636b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49624 zcmeI5ZERFU6ozM8szs_>6QecI*bs`S2~a_8z>i%*!=m^F6%C3v{n+g`w%gj>M(`tS zk*aI0sXrPMm46yFMx#cJQNe195;dWsF%@cJjOZ;YDhLV)>v_+eU3M2Di800>?<6yG z-kCG!&OCSS?ytG`qoZ$aHpcjT#+)j3u`vOudd8$ULoyQykN^pg011!)36KB@kN^pg z011!)36KB@kN^pg011!)36KB@kN^pg011!)36KB@kN^pg011!)36KB@kN^pg011!) z36KB@kN^pg011!)36KB@kN^pg011%5e?VZ{p`VV*!GE6|{5M6C{kUd{F}ivJ;QOjV|TU2nw{2I zq(hnt-Hy}Jaf}+`=f^9R@t9w^WF%)`d z=2sE$;#JuJ(7EyOat-86I`&*GTYB9!b&Ho~o{6LvC$s-EyA{t45-Mw|o^DKXF07=i zL8?-zRf~;OoAjRFq||7~y~JLAQ#AaeJ;roOJw@^jl5-P$ku!Tcw=ZMY%6N<|On7-n zmEzhd{@1Akx%HHP}Klj1*z4y+LwsOg)>@)#* zy16i;(I#n@tQ6z$T<0cS2Tkb1oQs>!m)qw%c5S)-inZ}XxPA7b*)osTMsbofQ!=ji za?;~*fz{x{L;@s00wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2J zBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsK2?-IBvl-d=%Ik+--Q?PzTsOLvH zpJzgSC6#jaD%58}sk+fn|EBUk)9JT{m5IwPN#?Z z2FIjMzF&I(9~J%$uZeF;d;D(UsdxLn9r*D8_cKF`~&7=YW@lH z0X2;*#Jxw&NiaLrEQJ|Xvkc}cF@vcO-Q`-3xL0ev#a#rKVRxZak)S^|BE^E~TYM2I zhl@}S6-WHBenf`qM_ldgN7y2D-v*aKOcXAIn5Mc6VwM_Y5R-)0Ml2m(8?kWp+K6?l z*G4Q`ygI56$sLRMcaBT`JmRmtXonb|NFIUM8u7P$DPAStdR}Au7WvmbwI4UsjZ2f| z8&y;Ju2xg|E>~0eE>TnYUaqF{tx;3?&Qw$RPE}L+maD0JOVm`phh%qv?_RA(+}&Dl zalgT?8FqI{^*`eK1g3KmzB?;7h?mE<3T)32Ib+?Thc@h=3t5_#HIN78#GTiBG34&7 zoCmoxE9XOgl9iW0Zpz9_Az#YM%S49ydhrA;&?nB{>%ij?@o*nRu^z>JDAu5eqllqs zm0|)@dHZ~MEF+R;`_J2eN7VQ?zf(COA>A9r2VytGVk>@txXcROGZ$L%6M8DG*aJ~+ z#m^AMR_NwBAO|!N`d9Q!Sg{vk+=_h=+pN%C_`VhU(et_$2Oyra;&+HAtW(EY=+LOqASmo4q@{ptudUCAD_%iqPqy3y{lYKB5RBlsV= zHF#Tab@29}vwGMS2a~S;LQAYDUA;rgaVeMeS3Vg5kHYjrQx`HIY%``Yl%B^Mp>6zI1QX^k+l@yX-%gW>&u20UnVze=z z-csTjs!m)q%Xm1&Y`wur7FQEVjv5+DH*AOR8}0TLhq5+DH*AOR8}0TLhq5+DH* zAOR8}0TLhq5+DH*AOR8}0TLhq5+DH*AOR8}0TLhq5+DH*AOR8}0TLhq5+DH*AOR8} z0TLhq5+DH*AORBiCj`!%UQv&6X9gU6y1t?54yP%4httyC(A8{i>?$1y;G^B%N9`Ns zyYcc-`vLfORTPYfG_nL9{XTjC?^(b%-cQhHs^kmw$FI-P_2rRQj(IKK Ry~sk%;LL(N?gq&e%wO54BxL{q diff --git a/bin/page2text.exe b/bin/page2text.exe deleted file mode 100755 index a8e8e329e9e4a250beb4119df2458e1f4ae00e54..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28529 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 TI(~zx=6bqlj&oP!s;aZyOozMs4 zm4czshDM)Ec;Jad2%!&#U`5iVM9_#LF_A=#5TjoCr>MxE0_*R)J6rCqpotIq@||S% zH=o&=+1bzRKF;o^HwO+WrF=f6CP~awDk!1rq#UM7W}*QapaB}70UDqI8lV9hpaB}7 z0UDqI8lV9hpaB}70UDqI8lV9hpaB}70UDqI8lV9hpaB}70UDqI8lV9hpaB}70UDqI z8lV9hpaB}70UDqI8lV9hpaB}70UG!Z4196z{7u>T?~{%HYJ%i|5S=>)c9dFHIcf1nQ!eg&Pp&4&t)_6J^ ziM2=KQkOg4CNo}@X%B|?u{3Ue$+nFxZOyu+ZS4kWlsjI(84qiO1kM`ItsXmK9jcsl zsJ3dYv1;eD4_WIFH0Ml&PA}t()@?D}(b?L#A*S0CapBvKSBS<)LASqCmIHicu8Y>| zHe@X8xbX_5Kjt@0G7{J!c&oJ!gu}P_vavEkH^7!A+q=hoy{Em2%&=ltk2HE%EFf5JvlG zms0H#r$}BVIWwUxviB@zp7Y98(jR?u6F&A)D%mf&BH0nIh_y6UG+des~Wv6Rv}I0Ov60yykhb ze7;-Pmg}$R>_|jf%bzNjd9*Z2BS~{5<9hum*T=(#;fIL^Xn+Q2fCgxQ255i=Xn+Q2 zfCgxQ255i=Xn+Q2fCgxQ255i=Xn+Q2fCgxQ255i=Xn+Q2fCgxQ255i=Xn+Q2fCgxQ z255i=Xn+Q2fCm0A11rNlKUyzYb=FF&c15`B+)>%I7=E*0Q9gnS_k@mzdq0|X-L?k? z<;C{Rd}` zjM{ekH8}@3186sJ7SLqi9H7p?c|eVU3xFpL`~s*j@GD@pfs25<4g3ZuH1IoM)aTCN z55NTjmjI^?{0aEVz-7P@16Ke82Cf438n_17Xf0sCBq>fKQ12JCg0 z%CH+O2_tVwXL;X_Ng40k!qD;LU6q63uETf{S6i=G_0}3o*AJ)VewDK4yzd+_Uwh60 z=QtoorIz;2?2=%uu;=th?2DpuoC z*ghr^8T-_cP?nj=zFwc~n{_6ozFbw{7SP}hX`9(s{@m npYgXjr%L6I_T%qQJNK7m-tm}K!0^%xFfL zdBfM*vAn`5@*IK{-i_O(iQ5Rw8tj7;>XUW7HEGC+n-vvlbg~>* zNl3K6|GoEp%^UHd`nWx7U-9PM_y7Oz|Lgwm$NRXKwwqt6nUtx>bB;U*q|W?S z&U^`&6Uxeb;^B$ia0b`P%+>_@I#k|+a`y*&@iVMup0=AgW0h#Y!w3- zMlLwIJOt04c0EUDju^Bd+$MqzT1$8=2&sY3!>bL@K_K&iI^NZZ)N1y!K;{$ z>r}>-EgR%;vU<>N*W<7nzV5d(dR50rF_{QZyQ+5R&b{j^B?TQO)&3kCwAV zhh7nUyfmE{QO;RHxEG}8D^S(9Qc!~_$s;w=iA){7L#0n%2y*gCo7hPb%XN4!ue_H>w}JCy z-tS$7TLyGg<=WbzDWA4&Xv&-WJk)xUam284KChf#H3%AtIOG@LCSw}liR}|zpzF

$nz5`PbufYi|S05E$w)o?C@g@fsEl3gopj*uG6As&gZ+J z$a~~8oQ<-i_wA(jX3{$>-3jyI&hxrEw}9!y28lzRT5-1%4v}i92BX|O;6{g(N!0En z>S58pe;!^oh87=sAGpLlamP{0`k$j;s!TLa-o`4n;OwcS)A(1x>UF(sdM9o^>aF!- zzB7H6XNJZ+&k;aE5mZ0Yr%6XAebmJxBri?pZq)~X64Ar^^PVRNj{^V1!)$}qrtv=aKF{D6 z!bbtqm&DBE0Qm}9_6I79TE|v?Qq#^hBV9CT1 zAYh1~1sm?QKi5Tl10>MAs9NrcKAr3lK_*qXG;tTXfX^Z_0t3e5X=LH_3O;2Morouo z={n6?h~6*yA2{^5&Udvatp^@v4AcqSh@VU?O)$PNG*zN?PVCTYYmr`Xz9@LAlw62B zo2VcE94d(uqB!D-qku80;77>A)`@u&-tn8LLS3U`z<+ggde!7EKO4ol0<$VQPs!_A zd3{M0?KbMqaKYzzA-oCO-Smr`&K&?%v`5 zef)y^|9<2BSKXSo_te}YM}|(hhkoMHN?x0LWavcIUBA#iGyJ#TsRHf$CtTX=BL`it zxsQD74pCe?E{aUJQEKAly0_}yt((rT=l5AHp4QYIm8 zA3nZmT5H?1K>NGFU(Q=}=uN7lU*GZAnW5=h9%~r!{D+~}2b)F?og`%sf2HJJ=%3fQ z9r*9V^_A!d%f|a@h(Lyz<-Rr2;v0FSvRw36kb(I@-MbS@Mzq^mzQxxx^y@0pq1|`5 zTw9ZGseH2Hw${UcGu%>%`N)sz-pYgg@Eg=|BXFC>KLOS#k$ZcTmq#D?mr#WbpE&-j z+y42NL%(us^(f&TI#opz5%16=mENVf(UJJ2y0OoHL4D}et#$7XPYs=)J5u2vo;p5N z;yQ8RXQXXQC0qiLiw=Je?4Z|3$Thsp_ZsC5)Y~(o=t;l~rG7dy>Yrvty+1SRw=<*W zpzT@JxbSl_j%H-y=8F6{{x+{Q-Kya`(e?^SzGWv_S%hTNPV$K&B>i?0YUG82?z5B3 zD?)OIoy1*)#A7G7nf?T2Wgf)whox^bMedpj)?d8dea%-svckW z0WF^OMKxcvrzaE7W__#Z2{FoarS_!K`%=DvY&_SK_GRM9bS$bR(tu>rS~`|a`u4^% zSpux;slkJtE0*a_XufRXU|gr&+SGKnuWD<1*Jph7H5+ScN#@6}Yxe>9>*Ms%@W7^B zrk$%}jJ<;E0SoL9V3U?>lbW$jQN|)Tk~j|HcoN66I9|eW2FH6i+}(_o<5-D<(psFi z;ONA$3r7aWBRIZ{V-&~JIKGbKn>hXg#~6+`aJ+@%9FCvjn8ZQpUt9k7S#vxY*Wyi? zgqDa!li_%b`Y?8pDJkke3&89am$E;hg)-?F`a3V5WJ(ajh%0n{(|^_Q&D_ zq-RSa2`$-w^hAiJv37S9?@x(G*bT>H^kD3Z?%qrs{13Q$_rdeX zz2NST_s0efFm}S7P4uOrNyaX^_x28C5-F`00krG-j^9x_+m+zDwS1^V(F&CRAddd* z-dIM{xq|VBoM?RCT;czarG6~#-+~904f@$~9A$XQ;~Drk2L3J7$%m;!1%$b|Kzfbv zar&rv;AwokAZp&@!X1;ZN!&8|s{6HED!zFjjvKyQKQ5!0*lzQ(&sQz}b*%MO>ql>Q zE|KiPjbb&wtBm=odsFG^tQL*!siylnOeZkWan;nU5&!yPv1)#Uwnos))7qLCTeB^l z%=O2!YkJ~)tFwDkYYf`zFKWC{ef7RXYTep32dlZ%>YhYqjmUv?O=A7VhU$L0X9bDi z&TH1~DaF{&+@86)6io?mugb68bF;fKvGCcUt~s&Y(F`l0DGBB#KG);)G~c5RXfR`l z^0!lu5>mTS%Mf*|YNn*F0m3rvYlsPSdpu${vdWqupmL}7wJ|F)Pb_sy6sZ`h` z4dz64`#f{$wwX`M+^#v&AKYZO%WIGdfOoDb%0Ln8xrzN78&rxGHIeE`U~bDi?m4bI zaM$kL0ZgQ;T~WKjiW*cJw<%U&s4Lv6wkd5LoewaVNxM_&>`;{*5v9FZ-5!Xvs*UZ< zFxBMM-q{fhs^LgyP-$l+CSprxV|!Dp8tPP<15J@YN4we@Xpe-M$0TX)=-LugB-`d@ zR%)V1#c*S53!7uY+B&xFU~|puP-AB#&=^!Zm93E97z{G66WJ1M+-jk?!K4T_g=DdL zCXnQ|2HHBB6}2VM5n}W0sIUc9W=BE0TDHIrYYIl1*+M&PM^o$8Eo_kq42Ob&h#Kr@ z->QO#5@zKlu2X4j2DCZQ@_@R%GZ0bOjYW~{CKDX$>}czVDC+%OSGL&1v^0hzR3R;a z9jw9xhXd_fQ4Od;Y!LKT6ROi9R@rhBtP>OXlO`DPrfgL@)#esnp~AbLGV#^`YF0uBaizWK0d|{7 z5k@%7K;^Sjb+tDJ16$jbX4E9=tRoZ&v^56VikYawk&aHqAX{lC3pFpoVsIbh6t`r04?Fwm=xwiv}!O z)*U7RYB|`kwTrqD#0!sER%N1`oIxO|GS-Q&B?fvnG`4u2b!5 zN7E4Xwz?>;siS?H(iukg5@yvVMN3Clr+QykTSyHC+5!<)W1_-Mtx9tjdhInPj8xbX zVYPNhpuMSCX<~IIG=!S%R3crSkhazi4!3r6M%0$BcHY;qbtV>_r@FCr-Np?nl!Z5` z6RbDUjoUf`&FVI#3Du-R9=aa3-bCwdN;bJbTUU@ZnCNh@W4lT~{IsoGOC31dFavrc z+h}6QscKuDx-HPCA^`3(G3^}@_&wAZ=xjvq%t|z@5iZ=(64~B}21dP| zf-t5?-J-Ok>ubW0!H!#K8@KJKTf5O{U?(gnbid(nN0W+RR3jbK6JV54g6!2IG_c!B za?(Pw6@pQc_k1dKDPgpcAp4&d5)lQcJ?H@sv>+CmsEXKY7NQ{fZ+42wL7wJ-mO=hI zt{3$|zOfVSmWs>qU0#Q1=#gW)6|`}S9MCy%MH&8mH%)@6c`sGrCzy`*Y4D&T`N6j#|uS8XI z;w6QuvN^rERE*F1O72{b33I9E9{k=g@4sOVwiUVgtc*Xka{bXJT+LgBpBRn>mw|V& zg{sP1S}=gIP-ULiykQ_qOD27O!ZlMX)N!XI?lN#6N^;%kTIF3lzr=g1w;bR1xhvWH z`JcljR!=N;m3ZgRzkB{Y^IeNExm|!NqKm-djimk}5C#CBbF%?Qn0WLurBudS1>Eul zaMcoa$1-@v&` zR4SHE^(Ok(B-U+gn37eVhcV{{9Ni;vS) zJy65%N*P0=WWUAN5PdE@imrqE3esKj+QodVgd(I!x*xE+ac~-rr-$sc=*EN$;_5C` zn+bUeknc$dPDp=>L{Y2ry?aTbc99H{{W2I41|E@MhAuN)k=V1w6jBx1{T_oh%l%TNuc!zRHX)h3zYyM1YWg z#toVx{&_ftH(plTb&u5nDm+FD9)ev>=MF<>Z9jjFXsUc&el~S> z>ZALaqJgl*;t*i2^Tun?ISX3Z3X<7uZor~4dOvl4j~eAGLg$by2|38 z#1HyR3t|Ij%Xm*l5Gt$TvtHejhBF*f)YB-_6P40?>}!cAiUjh=m0H}cYq0by z;2|uH4dm3`cvQppZCTUW0C)^u!BV~V6Evg`tqq_$H`DCwBI}%qdTi|)?0Ob-!Y=Wx zT{ZvK&a~?b;8BiHp&FdYhbhqX=`>uGF9C8FDvp=pklzPn0P7ujByh+JfcTK(wPVz~ zkVXFaBLpAKI?Z%F{_&xhsCTD-^jS(3Xhej+U<$G1$cKla<<(ljH$f+Sh+7MqgP88) z+`bJSFY2}FI$q+hs4dUls;M+vWoOb#FG5;42oXOKeV<*ww;WY)ok9;b&hZ=NN3_~PrA<3 z8((b%p*rRMxq{9wU4zbVfRE4_-MqFt(__<`v7dp*YF!r2n9~8$Y=e|T*;X6mHb8`> zGmp8OLGzALr^NXSfTU54W^39H2rY}Z*SqP%#lZWhsFAM6hlX7)pHbeLp?W`g4L+nh zAmKwQJp!G~q}TgyR4Q2gi|aiI9-`iDVhn+#^E=m|^FyE!I-5@lbS59P&LKl*U4s35 zRGNZL0REw!EXYE8`Y)0O0Rx&pvm@ozcO(tGgICy~kxJJ5}kf)2AvzPCu_dYYlyAoX7X-UewHh29eK zFOt67A$_?+`ZEscfAIlHf6yVF?zU`}){i=*Km7qo-{g=!StzT1pb*lq)**dBZ_C$J z@4Fn*D;%~z<&ge$hxGlklHTl)K2<2Iet#jPq0=FKa8}YEaY(Oq*#443`cECw56?=v z-y!`{p{#nX5Yj;FXzeX-bXL-X4(Ze_*<*gtAwA=e{`9P*haA#94(W#+(jRe1KQb%n z5r=fIL;7Kd^e;Q4KR+w!nnQY(L;CX$>2Eotzcef9gAVES4(TsDq)$4eADfl*9*6X$ z4(U%jq<_;PeQZ|J_dBH1^Avl`zvz&D&LREutfVI$(tQr;M;y|}9MaFuO8S69Iz64U z+y18x=`=5qH1fIV9+VO@wBG2RI0{(OZvH_W?lb`trFym9cu$KpAqGUB#l53j0e*$) zdS=TZ6c#hjLN0hxA!agbD}dtqxF`olSdyf1jo^U4H{}t@2KL$I5UCx=Q zK8vI0nOC9NKu^jA4b4C8$zj)Z%`TSfob|d`e-7-qEFDt+U?HU8JzZzxxx{%rTCPjF z$07Y>p{)AmLP$f>A$@#S(#ssu&lJk44;Dfio^(i`oR#!)hxD_Bvg)br*y^I;S%>tg zSxK*QNFOhhRlmCs(y-F(ZRFhqOE$D3lUEl4_@B} z-t2pc$xi?|TP~lA7OUkCGZG5FSeW7YGkqZ-bf)KQ_^7R5Hb{0&!LCc(E}|jNJB_1f zaWo9Uv7jmP6@fl}5gihqs$IwU)vDK*QOlRX!#1YWKT-&3*adwAjVhP$iYEhj)=etl zlScgTR;fd1tf<(6jW6+Kk)YW?5SUAR1Y|3fl2-z<4Uo&yKls{5EbC?Bu0-b?2aP`F zic(*ad`wyY6%hS7o1pn?K=vcZ%(ql;0HXKdg62FR;@&}*H4Vr(G&FU-SvD7XcPUD( z0_41n=59drd9R>p2So3&=_@9&5W$j0;!bEN~)V1o#K4)V5amTCcw z7;|;IwgGYpoT;$T`C(+mY*459cYr`;u9Kj73K0Fdv49)_M9iP56uiopls|2&<(EN2 ziEI<4P5@%}>OT;T%|E{ZC{VWJD_Xd>Rljf7W$g4+!aO+P>8R*$#;QB#?B* z-YfVrn3C!FI599Fs$A6myiK2jpwXXW3w;g)Qh`#YhJVcY_${1YAc$e9Di_I***K4Z zMjyKc=QDulPq75#T|n%u`Q~bGlSC>OT|VCdI@30pG(eWw44S+ zf7T>u-XJGZ#h?XOm_*Ao{#T(A){ga?l8Nw9!Kk#VWii1prqMnlm_y zs8i);3xkFgK(Thvn7ukd9t1?(0r_O@Xn+uFQ=bt)C=yIR{|TqD#`BASQ157#`Zgdw zW0XD{52p0cH1S5Y1a<{ zvG<2RCmIMdX?`P1nX;DAYe^&%LSHNBPuhiaKOp)OU;zmMav7ye&b@$8uVs3Jb|x2h zh`Pr{0C~k$idLV9dsv<3B=La|bFBO+Ao}c7NWTn7CHR;$OXNc-vrc`0*rTo%ke6&e zyc>`)n?5@L(Vw)tSud_?dg9%=K6Hc8R3FyG%F9HmH?8NR-QAh^Ui~VWNX0Q6$c4*T zYLn3TM<9Hol>)fv7qAygDyPQvJzZ3>$xFsxPxAuKhq}117R4rA1B^4XUT;sN+VDY( z1tdP6sXTb_AaS^_$yl3$D}4T{Ikk)UqI0ph|;saQ+t;YHGIk@J#zR+lv&KzKBPg)gU zJb{k(hruQ_aauK?%00{kILf8(iweDJ*45Rnt>fCHRr(}1np8=jtR2Lc8!)bi*odcx z@Z8z>l0=Pha?7REcu)KQ=cXpHzZ#WL_chd;#jr=3s*^ae8JM*({Sa&s6(vLjJl2 zGOe?#9cxvwR4%M^HFscNyc_f{#vG9VN)gE{CFX$8Q(j}2>YzX98MK6 zcVOa0@okFO6iAICctktngfnjbM8%5kM#cG|nG9rkJCLH`N6t@-jA8;x>-?iJYzc+% zNW`+-*|a}^n(ifiV|!FAy6Z=eM73Z?&_|vbgePJ8qYtMuYBtxMJ%DWl`&GG-pQt-5 zf1tY+OKoyUq6kFHGt@$_%kZ#nIi&}g>15IIQTLhDvOU;(Ld9~W81+`%YQ9*HINP?{ z;-12Pk7Lzk=17$-z;MLwcyz$(Ae(|hECgEi^73zFq(T7%eI2=Iz^a6VNQVesa*D;f z9k@H4wfR}pEglhIi!4=zYCY(5jF94Pz`_c?TZO1iv2&SUh{n+z^Lj#QwIos3y zCO7H2wiaw{K-BZ|N@uEK?t#WV&YQPxn{8(?`?^WdCzuR41|T1PAX* zLwNXbCIz)^Yna(wT5p$E?APq$zb>0U7Lux7tt%E)kRW?)?F8$6F>~Sjw21zW!iWZb z@`&7Y&TKz>;+a%Di6!q*psjIYsXF;!OmCN_Tdmz7ynr_AREK*^-xE)oW^7ldw?X@M zdUB4ZcXgO#$(}A!Fr;waGma252Jh87Ky)moV~o+tn9q@B{I-_QLqvq+vT;6T;vE}i TaQu!^EwpsT80V(Q=OOrwtsprm - jsr rwts ; do it! - bcs diskerror - lda #0 - sta preg ; fix p reg so mon is happy - - dec secnum - bpl secloop -;;;end sector loop - - lda buffer ; buffer += $10 - clc - adc #$10 - sta buffer - - inc trknum ; next track - dec trkcnt ; - bpl trkloop ; 0, all done with tracks -;;;end track loop - -done: - jmp (nextjump) ; down with load, run it - -diskerror: - jmp warm - -lasttrack: - .org *+1 -lastsector: - .org *+1 -loadpage: - .org *+1 -nextjump: - .org *+2 -gr: - .org *+1 -end: -*/ -unsigned char loadercode[] = { - 0xad, 0xbe, 0x0c, 0xf0, 0x08, 0xa9, 0x00, 0x8d, 0x50, 0xc0, 0x8d, 0x53, - 0xc0, 0xa2, 0x00, 0xbd, 0x00, 0x08, 0x9d, 0x00, 0x04, 0xbd, 0x80, 0x08, - 0x9d, 0x80, 0x04, 0xbd, 0x00, 0x09, 0x9d, 0x00, 0x05, 0xbd, 0x80, 0x09, - 0x9d, 0x80, 0x05, 0xbd, 0x00, 0x0a, 0x9d, 0x00, 0x06, 0xbd, 0x80, 0x0a, - 0x9d, 0x80, 0x06, 0xbd, 0x00, 0x0b, 0x9d, 0x00, 0x07, 0xbd, 0x80, 0x0b, - 0x9d, 0x80, 0x07, 0xe8, 0xe0, 0x78, 0xd0, 0xcb, 0xa9, 0x01, 0xa0, 0x0c, - 0x99, 0xe8, 0xb7, 0xa9, 0x00, 0xa0, 0x08, 0x99, 0xe8, 0xb7, 0xa9, 0x02, - 0x85, 0x04, 0xa2, 0x00, 0xbd, 0x64, 0x0c, 0x9d, 0x00, 0x03, 0xe8, 0x10, - 0xf7, 0x4c, 0x00, 0x03, 0xad, 0x57, 0x03, 0x85, 0x02, 0xae, 0x55, 0x03, - 0xca, 0xca, 0x86, 0x00, 0xa5, 0x04, 0xa0, 0x04, 0x99, 0xe8, 0xb7, 0xa5, - 0x00, 0xd0, 0x05, 0xad, 0x56, 0x03, 0x10, 0x02, 0xa9, 0x0f, 0x85, 0x03, - 0xa5, 0x03, 0xa0, 0x05, 0x99, 0xe8, 0xb7, 0xa5, 0x02, 0x18, 0x65, 0x03, - 0xa0, 0x09, 0x99, 0xe8, 0xb7, 0xa0, 0xe8, 0xa9, 0xb7, 0x20, 0xb5, 0xb7, - 0xb0, 0x18, 0xa9, 0x00, 0x85, 0x48, 0xc6, 0x03, 0x10, 0xde, 0xa5, 0x02, - 0x18, 0x69, 0x10, 0x85, 0x02, 0xe6, 0x04, 0xc6, 0x00, 0x10, 0xbd, 0x6c, - 0x58, 0x03, 0x4c, 0x69, 0xff -}; -unsigned int loadercode_len = 185; -/* -;bar.s -; -; moves itself to another page memory, -; then reads binary from disk using params at end, -; then jumps to binary -; - -; apple params/vectors - -warm = $FF69 ; back to monitor -bell = $FBDD ; ding -preg = $48 ; mon p reg -ch = $24 ; cursor horizontal -movecur = $FB5B ; move cursor to ch,a -cout = $FDED ; character out sub - -; dos params/vectors - -rwtsprm = $B7E8 ; looked at dos 3.3 disk, not using $3E3 to find -rwts = $B7B5 ; rwts jsr - -; vars - -stage1 = $C00 -stage2 = $300 ; $300 looks open -invsp = $20 ; inverse space for draw -trkcnt = $00 ; track counter -segcnt = $01 ; loop var -buffer = $02 ; MSB of RWTS buffer -secnum = $03 ; loop var -trknum = $04 ; loop var -barcnt = $05 ; bar counter -barptr = $06 ; bar pointer - - - .org stage1 - -grcheck: - lda *+(gr-loader)+(moved-grcheck) - beq movetext - lda #0 ; GR mode - sta $C050 - sta $C053 -movetext: - ldx #0 -movetx: - lda $800,x - sta $400,x - lda $880,x - sta $480,x - lda $900,x - sta $500,x - lda $980,x - sta $580,x - lda $A00,x - sta $600,x - lda $A80,x - sta $680,x - lda $B00,x - sta $700,x - lda $B80,x - sta $780,x - inx - cpx #120 - bne movetx ; move 120 bytes -init: - lda #0 ; reset pointer and counter - sta barcnt - sta barptr - - lda #1 ; read(1)/write(2) command - ldy #$0C ; offset in RWTS - sta rwtsprm,y ; write it to RWTS - - lda #0 ; buffer LSB - ldy #8 ; offset in RWTS - sta rwtsprm,y ; write it to RWTS - - lda #2 - sta trknum ; start with track 2 - -start: - ldx #0 ; move code to stage2 -move: - lda moved,x - sta loader,x - inx - cpx #$D0 - bne move ; move 208 bytes - jmp loader - -moved: - .org stage2 - -loader: - lda loadpage ; where to dump the tracks - sta buffer - - ldx lasttrack - dex ; because data starts at track 2 - dex - stx trkcnt ; number of complete and partial tracks - -;;;begin track loop -trkloop: - lda trknum ; track number - ldy #4 ; offset in RWTS - sta rwtsprm,y ; write it to RWTS - -;;;begin sector loop (16), backwards is faster, much faster - lda trkcnt ; check if last track - bne fulltrack ; if not then full track - lda lastsector ; if so, get last sector number - bpl subtrack -fulltrack: - lda #$F -subtrack: - sta secnum -secloop: - lda secnum ; sector number - ldy #5 ; offset in RWTS - sta rwtsprm,y ; write it to RWTS - - lda buffer ; buffer MSB - clc - adc secnum ; compute page load address - ldy #9 ; offset in RWTS - sta rwtsprm,y ; write it to RWTS - - ldy #rwtsprm - jsr rwts ; do it! - bcs diskerror - lda #0 - sta preg ; fix p reg so mon is happy - -;;;draw code - inc barcnt ; sectors read - ldx barptr ; get current pointer value - lda bar,x - cmp barcnt ; is bar,x = barcnt? - bne nodraw ; if bar,x = barcnt draw bar - lda barptr ; get position - ;clc - ;adc #5 ; indent - - ; new version, no rom calls, just poke to screen - clc ; clear carry - adc rowlsb ; add the text page row lsb - sta screen+1 ; store that in self mod code - lda rowmsb ; get text page row msb - sta screen+2 ; store that in self mod code - lda #invsp ; load block char -screen: - sta $400 ; write out char - - ; old version, rom calls, cout will scroll windows on 40x24 - ;sta ch - ;lda row ; row 19 - ;jsr movecur - ;lda #invsp - ;jsr cout - - inc barptr ; move pointer to next bar position -nodraw: -;;;end draw code - - dec secnum - bpl secloop -;;;end sector loop - - lda buffer ; buffer += $10 - clc - adc #$10 - sta buffer - - inc trknum ; next track - dec trkcnt ; - bpl trkloop ; 0, all done with tracks -;;;end track loop - -done: - jmp (nextjump) ; down with load, run it - -diskerror: - jmp warm - -lasttrack: - .org *+1 -lastsector: - .org *+1 -loadpage: - .org *+1 -nextjump: - .org *+2 -gr: - .org *+1 -row: - .org *+1 -rowlsb: - .org *+1 -rowmsb: - .org *+1 -bar: - .org *+40 -end: -*/ -unsigned char barcode[] = { - 0xad, 0xe7, 0x0c, 0xf0, 0x08, 0xa9, 0x00, 0x8d, 0x50, 0xc0, 0x8d, 0x53, - 0xc0, 0xa2, 0x00, 0xbd, 0x00, 0x08, 0x9d, 0x00, 0x04, 0xbd, 0x80, 0x08, - 0x9d, 0x80, 0x04, 0xbd, 0x00, 0x09, 0x9d, 0x00, 0x05, 0xbd, 0x80, 0x09, - 0x9d, 0x80, 0x05, 0xbd, 0x00, 0x0a, 0x9d, 0x00, 0x06, 0xbd, 0x80, 0x0a, - 0x9d, 0x80, 0x06, 0xbd, 0x00, 0x0b, 0x9d, 0x00, 0x07, 0xbd, 0x80, 0x0b, - 0x9d, 0x80, 0x07, 0xe8, 0xe0, 0x78, 0xd0, 0xcb, 0xa9, 0x00, 0x85, 0x05, - 0x85, 0x06, 0xa9, 0x01, 0xa0, 0x0c, 0x99, 0xe8, 0xb7, 0xa9, 0x00, 0xa0, - 0x08, 0x99, 0xe8, 0xb7, 0xa9, 0x02, 0x85, 0x04, 0xa2, 0x00, 0xbd, 0x6c, - 0x0c, 0x9d, 0x00, 0x03, 0xe8, 0xe0, 0xd0, 0xd0, 0xf5, 0x4c, 0x00, 0x03, - 0xad, 0x78, 0x03, 0x85, 0x02, 0xae, 0x76, 0x03, 0xca, 0xca, 0x86, 0x00, - 0xa5, 0x04, 0xa0, 0x04, 0x99, 0xe8, 0xb7, 0xa5, 0x00, 0xd0, 0x05, 0xad, - 0x77, 0x03, 0x10, 0x02, 0xa9, 0x0f, 0x85, 0x03, 0xa5, 0x03, 0xa0, 0x05, - 0x99, 0xe8, 0xb7, 0xa5, 0x02, 0x18, 0x65, 0x03, 0xa0, 0x09, 0x99, 0xe8, - 0xb7, 0xa0, 0xe8, 0xa9, 0xb7, 0x20, 0xb5, 0xb7, 0xb0, 0x39, 0xa9, 0x00, - 0x85, 0x48, 0xe6, 0x05, 0xa6, 0x06, 0xbd, 0x7f, 0x03, 0xc5, 0x05, 0xd0, - 0x16, 0xa5, 0x06, 0x18, 0x6d, 0x7d, 0x03, 0x8d, 0x5b, 0x03, 0xad, 0x7e, - 0x03, 0x8d, 0x5c, 0x03, 0xa9, 0x20, 0x8d, 0x00, 0x04, 0xe6, 0x06, 0xc6, - 0x03, 0x10, 0xbd, 0xa5, 0x02, 0x18, 0x69, 0x10, 0x85, 0x02, 0xe6, 0x04, - 0xc6, 0x00, 0x10, 0x9c, 0x6c, 0x79, 0x03, 0x4c, 0x69, 0xff -}; -unsigned int barcode_len = 226;