'=========================================================================== ' Subject: PB RAYCASTER W/TEXTURE MAPPING Date: 04-30-97 (20:15) ' Author: Wolfgang Bruske/Thomas Gohel Code: PB ' Origin: andrewa@indirect.com Packet: GRAPHICS.ABC '=========================================================================== 'Load/Run under PowerBASIC to extract BASIC3D.ZIP DEFINT A-Z:SHARED K, S, B&, Z&: V1 'Created by PostIt! 7.2 SUB V1:OPEN "O",1,"BASIC3D.ZIP",4^6:Z&=23720:?STRING$(50,177); U"%up()%9%%%#-%7x&(Fgi0=E1%%%%K&%%%,%%%%rf%uSif%yX)'&2hUU#[+WGB2q U":o'95gGJXM/WaeM=l)APrUC&1Hg#?h1B71vFV^'Z=;)PxNuM\hQQ#>W%Z.e&g*L U" U"oo6'Y_y[&dhRL(7kqwh\3A#kt+r:_\jGQ6&E;u# U"A*,V1Ap[Zxawb_9*>5yu2#&JYg?lb2GkpanNh*Wcl/IjFovS#0]vhvneKdnhu$x U"l7Z(mLvgp2^hO2>2$JGaEFHuJu3AZJXv5:PXdFa2>^f>0+gIuxwx;xx'nZOWCO: U"tzm+hQPOT?f;4tVn5&\CbK)CLIE:KNu-;&b%l6P_.4SdK2$MJl)#0,>Vcc'&peE U"ud<-SihD,o'L3*Ui_Yls56tmxbsP$k3,v?gBfp?4CPlT[(nE U"=l*\-X[1c?B1pa+q-fT\3NQ)eF0M*RRuGY?c1iSi;:Rnps;u>hqMN\;-'r0WAI+ U"+1Zj5%RL,:I=gbM'Y2A7)bCfD?eJfT?UN3/wx'92jAgtnEnE=1b,Izd./c*%2^Z U"^m=/tYs5KMRJ:1uXvJZ.%C63?Ojqz))oN5]IOPD)YZ0Ao''5t$m8aKj8rAD3+FB U"sM+WKhHPI*zQ#\.cTqto+/N]-u/_Dw0X&flIFb>3f?D\JoCZn+Jl[iGpHbLmsq: U"Z^XX\='^?xZ/$h:P4>ssgILpX?vZ,bte)C'd]NX%CP&BZ-&nr(q+Kr$#Tf8E,f, U"eVT=7[c9#1itV]ETKHt&>3f55[D==3ru?uWR5Y%O9d%F.BR8$7).V81YKpi-=agAT9Q#MOL7CHcGpVk;+S/fO]VPGPYXBjd^6#2x0q=RU3,/6kD8W>*r;T&lgSH<\>%?tV3\ U"(=Zj+51)rJUPL^F<\&\(bLDSe:7=D-\_.OnDc,5C0=4:gS'X#i9^z8c0:+:MF&pvdE=C$8$ U"&WBS%^R9%w?]JVL/*c11UlE2kSq#UFF= U"FajTk&lEmfmiIY*]/-*Z<$lG&K1&A.BC/3]TWXf5[8Pd%Ew,%&]2'cIc)lvt:A(JCFmb*+_ U"(WU5_&-I5R*c-vwOgt641LUoG3YpI9e$WF78^> U"%V^B?90o#Rn0^E:jl'9DCdf;N=#t1[AsB5Qp%A84OW>r9*\)Sch&FeI*QIr?d0C U"KU5MtGpbLMRN&Bt3YkVOL\^8[)_R+jJD1Bh+H0iKshcw5K0c$WBJ=NFBH&D^O;w U"9kOX*,7HkDd02bW5nSH/]ep7'O3>1fDH<#&Q4gnDfmNf7CrC10#/V)AkP8#+lDAe:Q<*QhgjmLYBrjr*T_5/pyeqo-[q]\)96NYYwm:NL3Vyn&$HLt,-8 U"\Y.9DO+g\0Q'H50<'6O?=bFA8b_cb)xxde:qIFw<(&W-+5Wg4-MuSv U"L0VJoyP:1joq7(/J/66-WoK]F\u'#*(3cadP/]j(&c*= U"s>$(id9E=JMLQD)%U=eW'9;ep6wYb<;II[QshA4DTEk1RVXOwPsGZ\ZJ(]?_5 U"Q3nJ?U\Q7%x<2+W_E&K U"&E%N=7,HO5cAK6:MQk,%ZNS>?t5f'0#*),Gq^sp0oY#[+y22>MhY6MOV1#tfQ8aG U"Nd=D3uVrUUbHbdghqzuMj$JbFCClgV0+U<*h)V7cDTd6ev]Hd=xFSX$G[MciL#2 U"neZ= U"Nj)A'NLoqalFORc4z%V78-GxJ_N2B4rk%Meu6uqBBNF.Ip+=]u)ftVimGI9t:Yg U"MuGg87P[u4xqaARowM/d4PEt/8y6NYT]Pj'?PWAe.,-*4wdk01iYpFop;*t7DA- U"#ir,rC^M(pOZ>7r>mlH%t+V+1V[(.S3?sz9xIkvi8Qg5h/F&7I<#7)4jIz^Te_7 U"/kP>m^V-Fd-o:l$R'4%k(e)5YvcLrRiUV+GkPzIK4jC0VBVvMw[h:%5MsSDG*h-=8<$FQMlX+E$;#C&-K?sJe U"E>NIQ<*<:lRbM$g40I0Yq.t(1BQxEr>]%7g_YjWrdwbp:Ju]pC18$L0J%5Y%_ U"SmGR/*:gHfh=BjmKBa1E(\nJ*::7_18Wo<+eo:Jh=xEHp-yN#T,emdhXS*j&>$L U"iH]d\cTw>7)cr?Jx-jI:AhbGBx$kNh[-Zf306tT3w^n*w?\**p:3+<[CGVR;Ys_LkC)kRH:H$E U"+frdwP$wIhE-$jOtY%'Xdk*0]uUi8S-_?FhHpv*Bff;:vnFk(*mcB&Y12ip+$/% U"Fgj0$a:dCw-jJzY%4kW>:45(g\[fc&[Ab%M,b_4+dOE.c3XOs1&z:U1bLpl\LtU U"U3VcWT&R9)-/q487TF8mVGaO.KYd6w=CS.&w#edFzK[;Z-68vH$_7$G->>Qw'Kn U"e$])Mvg2f0-e8'eE?_$>6HO<4UX\4u'a2na)<1m*3O544Goo(WTv4QB\PaWUngj U"nZBlx#\k1%N's'XDSed4;Q#9,h#),+_T\Mr7MJ-U_59:t1VrO_Q8K#iL?wrju+) U"n0+(Dc?yTn*xn5ckp;[qox91S>/sud%.S#qbnx U"Liox<^HP[qNAlwG[xOLP^hukx$ U"doP4Yx>bd$4c\x.mjQxn^Zx,uNYexx.?;xfV.uJ-ck^#HVdawd7=1uxWCTpHMkS U"xBYe:G6Xjphb8:*Sxpux.%6PKp$kTwW(nHg+\N$b)[:uxfDAuvnXaRcr%2Rw0lp U"_OL>]q2Rh1K:R3+%a'+B*h'+O=I4ZXAg;fidt7ZxHCAK'0E(kc(INR0MAiNNt>Y U"sVXL04Ebd%hjoSjwXGoqd',)*#)+yqdhSf&AajOl^af8P7*Y_x#F$Fn4wR4z/35 U"$7R.<*Ne/ZAi?w6pcbMTD^k)i]FpmY_x8l?Exhc49w^87,nuho49xPe?-vTGpd4 U"yZWL)4cRT^*K'm&-2,fg7cux5$>60<.GkM#>\#ct\iJbWPsTUe8)#+b%ixfZX:* U"(lRB'Bu0C5Fi7gehNDoUJ>U1&doou+8+EUiQ$xkNT*uxgkJ10P?LYA't83n]?Jn4_uxh;n/R70sOEZi*RYdr4 U"[ePkv7/Fx5ZR;8J1i'sIgX:Qxbfk$Y'xJ:A%>Vg$Ba(KA99Pud7y'bJt-mXq9hqptneThR/T7$TTjCmY7?que\7TO;gF). U"soPbYV4P+W\oEr0Yp\F)Q\fT,xQ0Tt3V#=(?=Xvc-(3Ts/rx6v4Oc78b8Jjst9K U"2=N(23fc-r8;/W9FW14bp(3b0HWMkNmNaYNvOuLr]C$db<'uOs$.BYPhcP)\EZ* U"&Yb7'')Dh.&6TSPb%\$i#$ThM*3;%Uf=#w79Y<]U9sJv%NS*FaH'%QURPJx?m&+ U"qE4AA.KJ6[s6MuvtjN)T0=uSU^Dqf4:B[9QZ0hXx.e9nIqdTUlt6fR\C3laXXBU=B_MDevk1FT*b$ud]O2bu/TuOw,N,8bEtAa_F_jDZg6qvj\tP?k18f U"T8cn].:^0J0-ecvVI^91w_do[4gV]-N52YIl__hz=(VlIvjjYb+<^hONwl'xK[4 U"0.l42J5&+_M8i_NP?LuulAFjp_>)'b+EZKHG$In6lYI.wPw_37Hrk&-98l^% U"?^m]ZVrMkNM+q]8_d(b.29xA^l[-qXZu:x\9Gzm\?,R=C+)4N\)L7uc5mHN?iDpH'1Ldfyn U"te-m2,e=3+[zd1c'uszc]mFsl93BEl$(%.d4nxK1Hx<5uB-YN.c+1&G%d=,hP2. U"xrb+MuA?nMBNZo[stmHxqxfVrjW?G<>ye=U&X4hNnCu?(3wVod2,,t4yJn6V(MT U"e.w^Zl,W6H3*n)_I14[Q\Y>gG.YfVM[[Da)SA*uu[P'qjdj>HnL$L:M]QRWuo-8 U"iMNf[?E5;B3:kGJ)7Y+jx,I?p.Wu?(MCn?)oxXu9ZIGux0fS- U"dnc-Z2PZ8fm$JDdOH#]wT[6e;(TPXYU1R0rPhm6;xHdrDb1w:U'nHUq\0I&xlh2tco$SVr5OYFRadBvn/BT U"j[(lFy(\=e;s>[x4U6FFfg<(n';ixOqu#HluBLZox3Zx8dQ3MW6 U"7X[h/cAiWxC:.E7^vDd5[Ze6+5\>\ElCr$8+c9uu[Yn5^=$ja]L>\/BV536:Xdt U"GYNgh>(bbYj'?.iux1Mx[eeDQpbiU>?JrxiqQr[r%w8V>KO8e&4NSH<)LL U"7^F5TCQ8VkhW^_t>cH&.wsD$n\OQm>XK8exv+]Z%>8R'oQYtxvJZH95ZjRuNu+c U"YU-.qIFtKjDiY7p4W%b9;)xbNA]d\$81>X8uxe9)DMT$4rsNb,JBPSp']/#?K'S U"r(+xsZV&jz>Yx\6XSZxebm:F1TYOE$aNuD0Y,m_za.x4afudBouwxevuxRtxZ,p U"x6?hxHcuxxxmulxjqb&HRDp1nxx$N&xOp1nxxHN(cjZ57s9>UHxLrZ6qu=dj8wt U"ji((r7iZlKx_-.r9No]6,q6(/n:K[Z6$xbo]8WlWRTHulruNKrr6quYN+v5uoux U"(Mm..LsZ<$xVv=9#t9orxZR$x6uhxHWrxn6xUdJxNZorx(owdDxt6rx8s*x0Fn7 U"JlxkhZbr?8Fo0hLLW.kLtmftJoe:jLp#vYIto.tB...dB$F%a2qIw:dPxuXW0>HmSLowx1xv]&?qd/tsNwM>jx# U";/b3wTqg4d?A1cLC49m;u\-P7b/N]vcMO1[xNOWxNUuX7va,dJPl9pJi,'7Bb+/ U"3#tD:$FgAT^LlNW[xuEYkvd:5rXk_Poi<<(,]/yWYvG,j9vbrFdioDLMN4CZm[2 U"r+,oB%ow=F044AZ5OQqBvk7xxu$X58VRd98L5Ljjx'#9CE'Ab+H+7(3eotr^xp_ U"-]h<4A^/Nn>rKM(SZKUVoq>a/xtYpFLH71d]-akL%NwmhA\Y+yw^xE]>TlLlNMT&?;V?Im^hra8)9T^^'7?tM,p U"chxT;;bZ,&]G))(tRx,#6rPmi4G[wYnCxXG6C5[tDmabtB3w$-akx_aAdAUYiEx U"Pa<\.wLMMLBTgGfFrjkYHlbYZXV-sxaur8F/jl-&KsFx:.M>HQ>98B6+khM*9p/ U"nExX*8hOg7^Dsfd,rP2ONG2ltaq*8wdlTbXxxx=bt'rtkwmb0Jd\/Ew1'^FT7bf U"o9t^xVc^<.jxKX8?k8w)'uZJ8d,E+/aguIlVNT8E-YS)Cm/%xYcZa:[ZHbs2C,g U"Zh]x(tT\2(Bw?nPXuZxxrv5>(,yR?M5gpZhxdDd)[oG?[NNtCmSaH0[h4)PZ]5] U"ct7xaa(:BqcnExexyu.qF>oxOquR\HY6=x/27%.nJpHOsN:6V]dV5PH U"HFTo:i3ZusnbH)XLLo^0id/&R-a>NVs<:..pAVknD';hSH6kZ%JbrJn:rc2>xjl U"d$6i%$>ThItMn$$*Ab;b=N9uH3r>zb%:Hdq.30Bh6.k*89B;SdL.^8HjHd-h[m3 U"rX1rUk_kdxm6H:Z*>BO6',\l8ZS6Vm.Zu5vBEWkXNfxT*d5-5%s6?(n.hItQ(VkCwhfZ8lS#B7YrifYP5LhIKovjqh/VsPtl>( U"JnqisulEq&05'[r;cF(u0]RcXus/btQtj<8AKTBL<6Gox0S6H=M_/E/K?NqdbT: U"tT878ne(os_r-n9xCmYQiXZMpN-HLIzP.IWi8A.Trom3kK?SMPxYfrkvYb:mTbp U"DHjH.Mg*Iyw[8g*sOoiyknknq$d3QN5a?wGuMy&g;jWuHuZM[k9rqBqb[Nb.uUa U"-7lK*]6)&7qe>WBGGNO>lvP&f^VH7.TlD4kb&orH'>r(T2/cY67ED0(uOwQNuf[ U"e.QRV+PI^^e9sk,8GOwr35GLso?PII/.cfI7D#5^Q$FfJ1E61R\%Dqo=DVko:Y# U"%=NBGK7a_ant=q:H-TuAwVRR3UQPn8/I-dnNp\fd2qfdT(=nNTunrh.98X=wsC$ U"Pk\xMD:B8=ftlJGo&?]?3l00VtZx0un>pMg+O2x3w?<6ZiV&VQ4Tp#($d U"3('RCB3Xxva?eN]p:H#cMK7Fl:k?J*<#_YY[mWoE0E6pfL,gn\9;2)Jp\;PZ/?j'YNcsr U"U+$bT=u3,.3DwwMIu1.//gD-RA,ES&oqFUZFFU&MZ_9#lgR'Bs0pS7PWWW)6Dl< U"O?duZSX0/BYU;.zM*0CK,'%Kk3^xxbt\( U"U#5fNz$SrH&*7FDJugpF=dJ;/)Vz\y;>Tj?s>S[+ZwZwMJMw U"X\)][V1j8?_u8SJSl#CU?q6ZWq2oxuMTQTSLg>PG10BpljW/3G]_8q$7j.B*NF1 U"[qFC=ijNmW-#nUWcqGl#DFHhlg4e.y+3OyGhE-x%31?rC10X>PvuZbwZL,F U"qjb&<&4&*#6g,WY,4+ITMo#wjaO4oCsvKB9T'Jg40QN&q2FO?0PdOu2.?>\lYNwx9&RiE%iwWhOB;H]ewo)/CRK#1TtlI#W= U"cEUR,43zJ$e\\NE.X>:nd)C\87&%/&M1Ml(vFg7eL1LuUH[XL.B\CPN7D:svfgF U">jJE%A$+J4-0/jtH4)=aH9aBse6LjWLB5'Ga)#fvc&W%qH_Vud.R:Tu>q06jIzb U"ksMN;S+38(a^1Ys?K7;5:_ U"y469_VEhwQOFjhNxl?C38QSJ8Z*<1SsL;yGOjZAN(b<[az36_Z(w(;?$4*d)FEt/VVY%-T U"BYeNO^X1JGdGf02Be/QMWN6a1,1GfJg^njHYpr^=;]U U"u(/hvTuD/=hd#OXq909cZS;aWb,cgd.nY?MV_w2B/vd)0^h^a1Zqr$*,Z3#6E8? U"m'&9sdpRC[:V#]5FcA02?U[.MZ/#DNf(cJZ,6'N#[ydD+mtqVt3:(c2=DE?gqwf U"R7Svif4zg2 U"NlmTlUL'/luU%(_dHJ+bBN%NBpUOt$Z?Naj9hxBVRqa:Mb3dL_A6sB8x:*/yA4y U"=Gr=ORaam/Is3V*jUv>fEq2]>_<<9ht1u&w?5*.#m(F]0S]jTF:\y:v U"g+(sC\gA-oKhLp7(6fmHl=AWrs:f(3u04*4^#i\/So-/;ra41i%1]P7sRCY4MRe U"JVi\uOsV*J%ly(fI7c/r:jr]?r\/K;jEd;]Z U"]M1ikReUNXjN6Vg6N?AY9MJ%$ENwr$q:1coXFkG>nwm%l*^HTEaY$\cHM%DW,31)l\#[X<6x-avh=_tN U"M(W5%9pqPVarTeV%)F7C$ U"g3'-1DU%47Cit^MN%FFNh=;;-U/2zC-iUg))J#\G&\$j;4 U"0]?ba0['b%qGRjfo(6U6NC6R[/77K\L+*OdR)C/gz'.?#4Imj&1l';Q7*v#.F;N U"ccqt/q='VFg2Z%dV9>O%S(ySKKw1SgfF[Q+rF9 U"Ri;4E/r?m#4\b=1p68tCH76wEh\tk(Fjoil]^<6e3KSFvbX3Xts%J^X65HlqU,o U"'=I%M[VF>ZUI5tFY0Opt8)ZEEtSKm+D>jE&q_$_QU:rFv[b?JG U"sBLYxxq>Kl1>G]kw1obAe5U;Hu(H=mvZ_[gwFSXajT;gs$D\N?*Be0g]*4O)F6G U"Q6-C\gFR^2_koxb#dmYi*aMCbn*y)SlEM.rj4j&hZnqV>TBtF(hy8=u$J?C*8wV U"wqJxKBE,uFqDZQ+n<&/*^c$iZtmlN4<5)bjT,^NSX=EHVLdcK U"k682r/ixw&lnJjxP_p\;UY4QBN7RwwS^cQtoqhpb]AXsa8.;sfsZO< U"YhtiFL6pnn]tg[waF]gRHfw3?6ld48RCj]7x[C;EiK=.2\=5*fvYt%?tDaZWPPF U"$o,08B>aU4I$jBrR6,BD#g>xyL>hg>OWcG;s%hZJqsY29:hP7X1z>4e67#/eZ]Y U"a%nX_A??2$Z$6QKiTm>*5sVh_UqAyaT4n<5q7XO=MJ85'j U"Ht6qpHdqMR#\7wT;3^Msdpjt#viSLY#uKNoAM^H)J('0ZLvO;Jj/)XQve+;:ugA U"dJc>Uzk.w4kQG\LfrcRnFsz(FZ3*KwU,%*[8:Md24g#36$9LU5_O^Y,bIJW,>X<41$;j0v6-7vE;Stf>LEEv/nKN#gaUDF(df3 U";96PcY1p)Dsfd5+LhR(P:iyI1lDSz U"?Go[ghQDhlw/.T+6j>4Pc^fQcpi+0dwN(1QN8d>1/UD]M)3,Gcg]^^t'JbY;RKP U"%-j(VCHPw\tyw$'NB,Y)eF;H,(D#%J9mg]4sC8=s8Z8$o3n&49&JmDqEM^j: U"0XwE&]-vid$JLWD$IU>9WaLa7kTjz6:\6NH.C4J\njGqq-*cJ5QF6SfZ]_YH9ZJ U"K]j0]rba#mA(86Qf:QO:QKKyljw8zI<9ziRo_]cv#7[Fu(FMpNMj6q U"C3bn68]CpBWrRK_e&fLSB?ml$i=nxD[-RE3L7(]TFM\[HZo,I[0H(*>-.$+M\ptlXhPJKz:Me%M*[SSOx_ U"[f-(ACZ0GW69U:&0-E6\J;ZWIM=f=[u/4DdrYWL U"?q[(A=ZSiMfaP9mO[_16B/TS4slXX.rWNwscU0,?\(lZTOtwwX>rR75UMHN^P0o U"GIt[Sl#8&H7DU$(Y)oM?2Y9wlHH0]SAqeAu&>yk,):*z5K0G6Xrq[NED^z?Y0gRRERrFnbKn(2*EciZg U"<;yC>^j;%Q-YV\a>t#H0;m6H_?sM\9WprF'WHRt*Su_P]-[aTKO(^sPX&%GZZRUr-Ig:8G<#)EF:DfHT0V5L#\ U"_Hm'Fr+9^AjuR99*c+khnpY$Gi]$qRb>z_PpRB5h#Yx/\(0^$rf(oDI'HS-B*KAyGH+%#w?8-uy6,'PxQ+Pi U"iT)dTkO[jR<.SDU.VZ'8;nfvgJOddeJs8ywO[\._4vl6 U"W,elXR5N.b]FM^tYX>nN]xhoQRI3-uEc;t$8?a)#+KfBbDM'W/;6N&j7Oe^(rfn U"t^8r#Klf>dQMhyIL_=X0^R9G/4jvU$_k%8bI/Rv^c*IMTOkw:/rxi^xQ,uNeuxH U"kxY(wxNbgx#mun0Ks&fG2uFExnuDx U"*fla+7pV,wxFGl0MYiuxtrq8kxLqblox<#hX1qxZ$k6kuId^N6l? U"xbdo#qrx?lnd,uixBnrlVjxg)IexZHkx(owdDxoxTZx2UDoo+zkd[NYDBusXqxs U"?7,57kZiD_ka&2edG(&ue.a_a^DU\O1D&fr>FIfpC1z/wcSSTsooPwHN;xMrZt] U"+][nRqNi$>3DTG8UoI>>vHi:oDwWXvkf6uX9RaIOOutn=<%=2_]n6wCT& U"[n=Z+NH'X+xH.AZQ[A;MDS9SVt^8CqXI1q6aqpU;_x:rI%q8A#Nyw*kGY?=ucX$ U"7k>sr;H%l7>dvhER;8r.YQs4y=&RSe3w.7XL?eIhRv25j,sqdTM+'\I6t.Nuw(a8I98b9cFYtFeLz->eM*^wK\o(NUg,CVVXK]V%:a&#7>-1ijG?:H0kf]Y\KbhvSa7HcHhcaWXi%l_x51 U"503M:fsnYbM0?N;daN^k2?e;6glw3rWvy[H*pF>l;xxWZMS.jcA(G&+=-BR^7id U";dd^POaqN9bY,e$*x[#;mujX,nTc:wVCc:;sR%%j0^ U"YmHZB20<)/LrV39N>,2]RZlq^diO]4+9nnFvu^f0FH#.1&0ZV^]FgwDiT0B'D3B U"_.7W'2*?iHZMTdTx#ZZZT[0:9_?v4uhAd0mL'iL$X;d59W[HvE1CvFZ-lcH]9q U"d(d;uYwBCzc4:-Ey^hjD[GVGar-&$i=)\T$aunWk1vDfwTQ^dWuyi_Ny(wq U"nqlxB\TbNON\&,nN5w8.izAF7v8ujLpkN9U6VwM8eZKsmzj]c8$xhHEmmV0,N^_ U"Z8acxfgk(skCcqEEo_NvZ>TqqxfLQxnINC U"wzfgk$=\ez)NOY+(9j?F2sZ9L)xLC,l\hfx#BP-%<=IlH*wxiLgVur8(NH=J3l& U"AfpFyR;L]b7U=WrPhL[vH#]kSk+Afh4siN[bdm9HZxC\NPOAo1cn.X*E.p+ogZauA.?_ U"5j2s9nx<#.3ldAY($xtt-Zx#_4MzG,&uFZ=vs=:U+l80tMfdiaeg9w_Nxpq*8+d U"W]j3/CI[TMh?ndI.cuGSk](wFHO8u.,scI5cus#luaDba:rxtw[J8F#k]_YIqTx U".kN32MhW+f6ryTYJu.3\TvwZn]U)ZxG\6>?p0o9#Pwd,hvp6FqY^ucDV<(QGxNR U"m&Y:x'j6;tr%Hc[Cn18-Rduv*V5&iN'S%xY-qx.5('ls8l(sVG6xF9/am]drk^I U"N8be1.]srFbdcLxW&YxvoAZLRutx,prx U"6hxZHWxnc6xdtuuxx,lHx:S1Tn*XtLwx#W8k+5Zqux^tNu:]lnD.G?irxIfu1nx U"XLw#9s8wnDt.Gir8NB(ToYd1mkPoPxa(\,L,Jwdn4cZtD_cNUFl$xbGsd<$xGbi U"XKuwx#HjTY6o?uxM2LuK6nixnLwtNowxuevxRutx,pix6nxtn^x,iuNexWxjiN3 U"T[%W*xn>cYhxT;Z8IPVt'T0hlR76H1CKADZP(0>KxZ&*Y*T*BZ#SMBsEHlxO.uV U"QHX,bPuXLO/c(&rYqnMSO>EcUNrYbr8>]xi:$/?yo'UdDgqranEx2P&yhKrP U"rr+OxPfjGNXJdP&wnN#^DUG+]ZX&b8xKudPVombtwp]IjmQ*/L&j)XEcgo*ja*&E_ U"lTtJjNlY0Z$&Wdb_YIsmPR(<>Mu+=hxZ46dFnUBFIByaB'=1<]/)7+VC1s^bPexi:;?:jA#LXPzO'% U",*wVsFSQ?^n&RNpqMMhN,zRe6rwhw0Qgxqn0%*BcV-LtEbVvp:0<'p3A.j&W>Nd U"wt9Gg8=VrHa8O9vd[H7A''\HxWmtUF=Dg['+tEZx$R(Q U"twNEo/08s#)/-mC&v2qeiv+Wp-Mxw#tapUG/%tni'f\vUpuuBj(#)+VM*pNKYJG U"QixSnTT^2\Fo,9u+j&XK6tXrT8ixnlvaSOlflIxxwjttNxu1wZvunn_tFki\*La-K,t=jtpkNcVl U"idwlq64xM,eMBD;+&;j9uqL7xXlus9'v(4(tOxo$W_]q4&2dIQqtNeVixP6eLFo U"PN$rAptuxlvd0sK)5oj7Oouv8bMUGOCXYvwF5-6rO^S[61PjhY>dowTsbZusLI, U"Zx+aG)Z_yS>W)-u(HGS1%VN)pNZY(gB+RfjDjtO-[]OrV>xRbRpMY2pM;cpbP=L0WHmd=Y7P#i U"uAASZbhZV/vLR&jWS]TY-a)J_?A)uTYFwWYSam)OvX^KjtoDsVRVq.BsBaC5UpM U"4=DHTeHon+J9q4hSL U"56Tp4Eqlt,X21pirt]SqSrxGD;ahr&b1*eldu^e(Y#iomVw-o8,6xN]IUN?v$ObZwm]dZd-2MeD)NMcrB:n U"0xYk'L_v>O7he$rui0(%IM/2;R>ohlQ*WVyO/?H\5F.%j=V*?>Y;Cj&t:7YC1/t U"RXm/tR=s#f%0^s:#%JzP:Odz//w'>;&6K(?CeFc),Q^S)=Z#C1w,+bM%S?rlZ7InN U"ihxXU>Jik*ZIrc'iI4^%ZhOk?1Jq?FARMw7%h8aug)AqK&p631-X&;H5YtNSf_K U"f;j[8ow?B\Zj7NhDwvD(iKfpUo)?O,sZ^c6p;*nseV9ONOYCgnc07g57r+#In'; U"*CR4Xiedw:272$rRfYDW.ioP2(F7=uS1Xm6%sr/:Ao:+am0*0Lj-JZV5-i+YL*3 U"h/82SCk0IT(SUbV9;n)$E5X(*)J1=k'Z=N1_CY(7syVQ_k*$V8 U")i)]clt+h#mqen[$H+9m]s4n<*wn_(TKHL_aXD(l8rWRG&U#MvJ]IjPBn8#nZ-6 U"+u9&iG7o.QRo.p[7o^lqM78ZXSzQ+s&aIpW,xDGwi=f4]*je\2hvS[%_85xtRoO U"UkQ$bWTZ:q#cATW)0qQS9HBcR2r/&wco\&0ok'oGnlDX2&_0aQ-#05I+O=6'G%S U"&70<[p%\uAK&sicC8tKIa&L2)+DQE+RvqN'/W;7?tIO>/y\p3B,W9T5Tx8[;aIO U"w3WGVNCS1:':Nsa/U)J5oWoA.)f9pKaQHL[GL[fkt2RqrENZ^]k+V;+Fa6+%5,n U"HsIjJ,+M<#0cLd7F<3-MKm$sKpa^48TdV_OJ U"i*Kjx*kFx\%E,AO?<5+JMA^fz92htmOl21R.jh'Q;kXSI2UT3EJ'Ni'.qcc:f;, U"iQ?+mnauHKuP+AoOkPB_(4CkI:*\O+#c#_mSs2k_]/*7r$#2&*,_&GbCt3Iz$gc U"8sH9#cYr8AOIw?k7=;QJadZ_3LKEe<7EWt4&HWT2'Po3^ReG)rEi0*\09gg[ugM U"si+?XN$))q\629ESEueo20QzsbKQMGkmqcE$gJ*>Zj'R5;J9Zj],'x1dRayjOF9 U"7<$;BW,YeJ]R5mh-3(=P$%UP&:T#,e[4oOfE7k*g%2a'o'#6s$_z/8cpA6.Gl,_3EJ$PzR+e9 U"f.7cV%e4M>6M\*+.O(To>dZeK>7#qa43tZO;U5p-_dF)SZv#z*7c;eL>7D-e:9r U"9rsj8I?J7d]]/>L%yZbF,[[j%f4_/i3Oj(F5,EnkUC0p$u1ICn$8C1AZZ^aR(6N7/'*;f,nF679la*V\J+fHO(Z U"z^W;XB9y5ZXMBkvBSBheETpFe*d_qqAo(R^10;CfW+kBkQe3LDdVaYo&7+M,oN^ U"M3yOKaPv*jPhFyyS5V:##[q=PgWa2QPfeU/&XLJi[kpH_Vf/5fmFr[F3l[RA.,OcG7nOv*.R)4X4?^rABlH$W_k<'i+]pax$e/&d U"&qOBH5PO^46Jusd*15SJZr,QtRe;IT[HE09_RS:H:te&6q=TrC1n:1%n?u9v.Qd U"FoU30ms,HFSMeG-?aN/ekwR>P]+(#k?s-T_aVt(Cu:R9>IZppFgc[]koye%aLRjw3,#pK&A'<*GkG/-LGi(>E*ObCTAFskdTvaKR>eF+cjk% U"d1l=)q5uZ.ZC7ZCd4_KTcN9&8h4EXK&4v/olC-VhQq?>YV5Ro.sIflGbc*wLb'^ U"QCE0YW;*bDc:Od'*S_fF;6IJzUNE\BZ^#3ug,si]9r3;/aC$:x5Pv4e6ixVB,G& U"oD:1<>e:R>+lfIp.Ud%<9=t]%NIeV#6OF:^W1_fy9'uqMB#7j(rraUN+3JNw_c< U"L2Q%dBuNX#YSffjQDn'W&QBg^npg5(ra%lk+PrHxVJqZcP/^AlZ\iuquY2$+;EJ U"5gaZltlo^uA'_*Blod=#3y3LpaOk]oq]6Y6n??o7*l]-,ew=Cd64LebYSr[6J:QwdS=W#jL)9.ri0Esnnsl[4b U"$nVr(5cu]5=t#bhU6,<_CZgtwllb[=DpF\[TSGuJ6jw-m+eDTbKV=jh9V U"l[;n#1C9EC_q47>h(ESW&QpN#+eS];'%]1\1g)U/D[#7[K]w8tTM]9<(3Zw6+GL U"o_ZZ%-%(.=YGDQB3PI9$kEBAn?t3F/vld%WW:)pS-&m>N[GRMhSg_Zna9ZZ&PkG U"$N_HpRVY:YO+Br:<3J+#Wo^:8\XO[XaGY[QB:woWn^,30o(VS%,B1n<^l0-U:oi U"pLIZc[JYD:dYP[wfMr;tu%7R?tQG.;K1EtRtSeab9].mc4P,&866sqoG[?S)hAL U"JNBLMs<7[#\82__//E-Jt>gAGZ[^iNNWR.lzbScB>s*#uoZY1;;]9q2K&:1B-B4 U"pi8Ma,A+czhG3X*$=kwKN6[7*;q_TpWGfb)0B^jvhJYte>x6_=Tcj6]:2%C#i5l U"<]BMpqD0M?9rQ*&(1Q&N,Leea*1XoTd9aNpzsrm:mWP&HD+kzn?Ha_hV?=bCcXQ U"VPi8ZGrEiVnDHHiHD,PZ6Ch9ZhknFZ(.w%u8ho%YHXpJt^$RtqIm$plt6>rlttJ U"X'pDup%()9%%%%-%6J),FLC4_m'x)%%&B0%%%/%%%%wjfi%rjSyS'y.%T[C5 U"ND>O.^f:n] U"uVh\g:MGvD$'FdHHWw]J?twvTobcHYpZK0dO#;,-J;;&>>M3wscZwb3T.?(cF4S U"[oJ;**K+/6h4&R3Ra6aY0t?Wd;E<5iuX63Kp/\'fV;ILWDrj]#td9 U"v38>NV.3ZrTNV72((rRWGy(Tus8-th]&m^'Rl2ZMhlnQNUT%JG_8UT'IG=7/6+t U"j7nt6P0*IurqDKFo)d;D_K7xP&lLGRJa$EXJmAR8L(;Ycm?I:b5uIwRU.>Q/E-0 U"\1/'o3h=4xWo$%3i;G=Ow#[7xM)yo6lWLSy/Q23:#?mSe6gTo+:aC2xZyRHJOkedJJk>qOE$lHC%fErtt^L^wO U"nW;>66F_]%n0ok8PRBL4C/Toecd0JI)/fv=;(r#I0LB*Q.ZIAK6/XJWLuOCZY8W U"*NFnh#$DR1cB>1*U<\Ne3Z57T&/RSDAoU3qP;Naz#Qs/?Yn^=$mw>^pCDZp0vN* U"CAc5t'WyuU)#1iG2U6Ss#>Uyy]90HkUmaNB#;hyJI&Q$o&g&z=&c[cON'9 U"$%->[$9.>hKLH.nxKcADaM=o-_D^_4M)-JOcH7cg.y.uZA9uHaI;nW&Gi+.p&]/ U"KAHvA[.hZS9jD1dzpY8OVw3kf1x_,&Qsz:=AOsao\,KK=P#?&m[>1g3U9ZHbQ6[Yt,_o-SiW5'QJ-Zv'YT/C\QKVui1/ U",hU:TZVDreSdN29hIx2h'4W'hph;ovIK5).&Edqk7zml/_:qnmc]:v\XyPBAURz\^3r9moW68i4)$>K%TSmxqe$=<1PEgfE^h#> U"qY#s;oaWcviiGH0l1sC*Ym#wc8hW?K:;3KpR_q\g9.ruB_Vnsvfk:Uj30?L:2;q*U[Eo[)JY\j7T/-Zdor]3T\D=I U"Z^A54it*51t^7_V'?OTFDrZbJ^TEk>NkhQR^1G)ULNlLy-EUETv6'2'e\VsVQP; U";J1KjZi#9kZ74a[iVw7?Swp$amZBQiX#:fI#E3(CGx4G*p$..A0a>DKsDp-I$a7Jioh]deT U")/&rr7Q&>h%f U".8CGw[S4[Mx&cfOV8# U"M[0*hr\w,3uy+cF:)ufV'BB\:N(^SHL:AF7E;p,Po[0jq)n:RDLZyr1:34ez:>o U"a4sM3/>WPiv8'CaPRmE U"0em&gpsxn7^/8Z8hb2[5$(%vE%(7l1Jp'oEujw\a7YKLsewC1%XRZ/LrZTk>8*q U"oQ.AgpC'IpUDZ86fatjdX;i)797CL:_Vh)m^D>x>=Jx^x)NJd09PwHMkG U")7mM(n%zb?fR$&%W?T>lm[Ha]M44=bEp/gB\d&QnT*(8g;DK.G?hmxBJW&37Ji(tl5) U"l649E,MezdY+]dM.#-0dJ=/&4N+m0=>XUc'9mk(QwFYG4wVS7s;8M U"A;uoi4R%,ppx\iBD,GT;^R4$HjQ2fdDcseL=ic$t=a\B57eLYq_wc=#[zFg)Ubv U"F#8zsh$3-d#fj/%TiF&g&ayKa5tt,FK?q%,c^/uQ;Sys/6Xk5Ckf/k8XQIOo6R%9F0\;%9FAMQdd).V#0Q]99P>1P9sTa*UKl^pCWAk U"A:*i5;0tyZHjclv>wU^jwZ+1-MC1MZE6B U"#PjvoKlTWqA]\AU5P$.IaV-Jj&V7R6:]BY44\0q(ETY'6'uX,-U51i&V0=s)K]?VPMC:i;Fkk%XwbIF54H,/\jn5 U"*-&sy*6JDUgDZ%H%'=mn7=?PJG8++pFQ'ft0Q)1 U">]KxMdWW$yn%qR$OZRA\)1;T$As[KDdB6R\ U"3_qq'TbF;+#=n7L)mveP$s&0jC\.)#]8:Ic_z-+[]F^OWnxcAsA:Cow(BM0TT64 U"nIh1SUkGv/GZNMg]LP3G$VjsK)TP:5Y1B]M#5Z%H;azWSk$iO1m-1&:7$jfi33Rq4A\n> U"H%*PR9zMk\<1z.DM>i5o($oQdxNd,CXA*1t3uG.]As2URJf0k>va)+u=Ij6M0l\vAbgIk_+ U"(&Q0+xr,3(f+qEi9NeL8EH&/F+iklj0+VVX>>(ukNog&]B#iLZu/NQamVn(K1bg U"['P5K%jjyG[34oVssX\5#d^;&JlS/8R:6l'CN+MV#Q[DMe2L)JN=nRTS#DF^p2u U"I[E6CJfhQl:a=:j1l]FHZOn8_kc,RD,wNmc'f]h?]1qq.=%A+I*CWSolNBRJxG> U"l8u--Pu3FnZiUpXYRm)(<,NWPt+GHj8(r8*[47QSAZ?/GJp^+jLJ<7L4Z(bi:=( U"O/.I\,Rs3Nd=t/EpB[enT,F9;Mpm8'%(z&eNt[Z*kVMd[#,p,q1fxyxOIOp4eZT U"RH-KB-Y8UVxbxIwh%%p^lPRKHq5rj-/r4s$N3'=3Po*/Ziq384tl?)k[/LZ(,' U"Q\VNXq_^:)w45O46%CtWlEXPudh9S>\CW*gP>:3?nUY#.cmEHo0X6(tp-bES\qZPuM U"U%s,n$vqN&dKDC<=%2JrY,OJc3bY4-22if-#djZR<4kI:?iI#?-NL3cgQJobAOr U"(pUrY:bSLA;I90d?^lRtvl/:-'dz:R)t-s8FPC\w9Mdg(Oun6#(1+y_4.9MX_4H U":uzG0>]hq1oD)KQil(r'm5F4patgg\zo[-56i$Seo&/r:-Zm='^&m*g5p]^:[s. U"%/[U5.u+QEr,%Jp=eu^H3Zfq:rYTG#h5Wv&$#5*g134Cs-en'=<.9scc-WM99BR U"ib2>PkSBrc:.jsPkEc%NYLG[0TqdV,_*ksiX)N?w%bIX29LUTVv#el$*e2W9mDZ U"x$j[#DE:I$lNAHRd;GtZv*%3oiX#(;-g;'<*AN)m;+CZWSJIS=3uil^*)ZYWiO3,&K8e#rk\/ZP'].r89BbD:qIDT]JWQqu7jAEMxwpY7? U"x:dlf,j4H7fPaFd\=)L\r2;lNW).\Uz$#-lA6C/\%9;qk(I)0YgX40oJv\J=ntI U"hxgaKckPv(.^a8\ILl9f4M-B7_JdW]f(w3F>LQeC0J<j0Ok/'P?Nj#7p%bJhyCXNU,*x,3;bb&-j.iYFCZy+$oM U"_).o$T1ev6uC3+cpOWrsCB^ok\?EKk),W.G(^s,QY.[s9'*M_8B U"WF\Mo?S*5m,h;),dh,01S*;7496<-a*o3jlVt-wEee(;9h&us6vC#T'A/=/\zRY U"eUleReMTlL9H$#1c,08xEpXtuo,/qQ,/oS8-QU?(R3eEw>>j5R/Zf=d>U1t6 U"?Uw5bElPXTYox<5E9JXKAU$BbgTaQwiO,N=XqN%(up&%'9%9%%%%-I%7x([Fgi= U"(E1%%%%K&%%%,%%%%%%%%%&%E%%%%%%%%%r%fuSi%fyup%&'9%%9%%%I-%vi7aF U"aJ4-vsk[%%%Y%%%0%%%%%%%%%%%%E%%%&V%%%.yj'y%zwjS%ifyu%p&'9%%9%%# U"%-%o)&I%%H*%%%%% END SUB V2 V3 CLOSE:IF S=146AND B&=Z&THEN?" :) Ok!"ELSE?" :( Bad! SUB U(A$):FOR A=1TO LEN(A$):C=ASC(MID$(A$,A))-37:IF C<0THEN C=91+C*32 IF K<4THEN K=C+243ELSE?#1,CHR$(C+(K MOD 3)*86);:K=K\3:B&=B&+1 S=(S+C)AND 255:NEXT:LOCATE,1:?STRING$(B&*50\Z&,219);:END SUB