'===========================================================================
' Subject: SOKOBAN IN VGA                     Date: 04-14-97 (10:41)       
'  Author: David Joffe                        Code: QB, QBasic, PDS        
'  Origin: Dj1@pixie.co.za                  Packet: GAMES.ABC
'===========================================================================
DEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2
SUB V1:OPEN "O",1,"DJSOKVGA.ZIP",4^6:Z&=11815:?STRING$(50,177);
U"%up()%9%%%R-%eue]GzR0CnA=I%%.C%%%1%%%%io#xtp%%lfSg7fxfb<TATm/Ez
U"Hy>dwZ1&&xGR\_KNTqaxjeBK7JB:kq-G=b/pw/*ron9;'J1:%Y[ci]raC#hSzH7
U"oOpoN^DAH<F27E/dcL&%?Emv;e5PxgP(e9l?2nL,v4t\kofv(ZgtnzNF\<OE[0.
U"]uA.d9C\;UoUuJrAX4k77eHq+(s&G#STHKg\#pP[z*ue-GFlXef(2q>.'a&YL>P
U"d:[\a>jJtsjmb/;[z1sN,VA&tFl#=df+\-ebNlU.nOzQ.vvkXorw.:gehs2i+gP
U"BOLc+'POz0I+QOnK8Kp:PNjOKlC8SWSW'dNDsE);7%6xYUI2SOb.(n[((j'.7M5
U"1ErogDd?I96K)$Jr4P/G>]Dv0)b\8]'[2HQPBM_Wer*rS//VL^R&#FUd1c[/h<-
U"An^*'_0E*#ufv$s6xx+R/C6u)-7./N,$:^&o2h;K:E/2PG([6m&<avj$PFQCQSu
U"(5crQtAVk:8MTJL#F7*F;XsVn<b>cuG0;207$)0e?e+3^rphg2Jp-]7b2mN*^b9
U"ou30r1d7U)Wh?23;RVYDUb'kgHB(AwJ6hjt:573\q8?ZI:H;CE?vn>PdJuXwxgs
U"q(HVe#'07=0K6Ls81iuF5D7O0D^au_)[WB.^_2/gjeitP^YO>j(HW=]A==*=8N?
U"J]1gOSej]gG;BR_up#\y_Rl000?DumH3#,\ga7Ar)?D^xDT.5k3S>dKmOES]oyG
U"_s3Y$Ln3DU&l)Oh2pTI(a[H*pUoMb=8tc%9U/&e[ibtdeo2VE&(%H7:JfP9eK+;
U"[TsSlP6mRc01=(kvI)Dvp'-(7h[gF#Lt7]s<4T-GBm_x*Pjmm3PS)t];[,9>s%V
U"I9^;6M^0+/QCsI'\q0(nrm_pg6'TC=<cuL,G\5-[+q'KOLL>^SJ1N[vKG?c\U'1
U"8ufAZI/R;a+b;khF/km1[mH9Fq#rQOHQrhA(rThVSMUH[F.P)luDNi51^f4_Yc:
U"#tK+(1.(.2.'(F\(+;2Nao%h5=W.]Mf]ZE(glN\n==OE(rOEESuE+iuF<pzSHA^
U"B]aw7d/2wsl&<L$_403_>.0iHPe+Y+\.TRPg\^j:_-Z4_jHZrR0dnVq+DhD,a[h
U",b3cjYh_WOAgd+<PG^a52>]jxIn[M_-,ORY1M,NWk5^TlCXYD8_(iI1k[1bOvTE
U"&S6e?7_BZA.<1:2I$uN(%zYjJ309:a^F]pVg1Mr?]F>,BIP&'$:*Sm2*ph^si,+
U"Lh$WZ$[yAa;9gOno,'fM>L5bv8ArJkK$B7,h-m.;BB^<qa<E^;o_kpi?+Nce2<F
U"Bh$-:v4.x#Di.VJ7H:pp<YJ;q4>C^$)i%8_adf^y9H^Rw[Yui-42M##X%CQ/ODG
U"g8B0;KXGEH3fupAQrKs9hvW?I]]-&./VyA7HiqkomKK6F'AZ#CbP9\1Um294Jdp
U"q2Q6+sCWsM9aks*>Jzk'YgIut<pQDKcJP#<=t+/36QlD%;AYH7$3F\2s3<T&up:
U"#)402&Or^DDx&nYr+jFOT-?ER9CPK(d,CX^([d#*Dpet=f-WcpY/(c>Nl51g$Yz
U"L0ytAl*?NP&yAc3dn<m9JM:Eo>%SU5sm'Mh5_r0iBuMiNbD3baB5b$<bLP_fPA:
U"-%2Dz7_;=n/_cF,;8Cx?cUWey[__wofGt^4hrnl<?$s4k,)er$u7^m/=sp8^E*1
U"T_O7U2NOKY^qnyEJO)9DJagfUkAI\==Mi,rnT<f%6JvMDax4b1eE(M/;:O]?P=0
U"N^+ZmMYiiZjt%,P^Gy5c<:BpvZ7(7QH<9pID:[/;gdV7r5R)lNONQgW,2.P/=ms
U"hcYP_AhZb=c$m=km\hl_*897:1AAf$qC9?xt/u$SF)AkWF3eNt]W*:GA'm(ngBq
U"_UI9V9U]ZdsVC/Is.XxTuXvv8cx^durlnxnZ8u\.cv>dvudx;x-ubD:Ss[$R.fm
U"r5.x#R)70NLE1Gkw$E?0<v[%.T]pCV;>tHpi+fRhNPe-?\VPZ_p7-UHg[\JlRwc
U"JmG8YtSI$k#TjOo^^;N7i5'F^6>]=AXJOM9OcSO0?_(VJJpSFO1S[]87=&gG_kK
U"7+PY8eF6G]I\SvU.2r8o,&OCBt6GAsMQs,W-re>Iejg0FR<gk98bwPJaU?/Au6f
U"4$p=ap09.g$o]6<I(z/tyS_Q>YU?#IK>LMk*X(\,:i+c=2+28qevMkg<S28MI4(
U"'M[\Ibya'h)g^s7FIhVkfx7-0asSB's=xjd,&([\WGWdnIW[8/5iSU8FSV:l2Zm
U"YRUGcTl_>*D/J_\Q+%wyf/TB'V^ADL+71DRa;oGTZft0,TS:Oa&7<oXD'?mW-_d
U"WvA9Vq#tz6(jM.)ilHMXoN8M,T/tUj%-Pn?$LlhTe(.fF;M#oE?p0c%C-O'Jdot
U"?qopX6V8n/c#_MspO&h)lLHHj.M?$%YhUaOoYYu6R+sJMo'cIrP.9V5BH47#])w
U"BGwL*qkkW\3bc+6$y#mt\[A3_h\=P\ei-)G3s(V;[>dD-$\3_Yt3qOqEkd(d3gO
U"j=;70h:v5I287b.aZ*4X_+=:d)JugRG.dG8,C>aft8#jKu'h?eIvdSd9A7p59#.
U"e2U_kqt)^B-XE%s?*[*6GR_#qKBkzI:]VzX/-4S[8o(iSZj5;[9Jj<(h;^x?7bH
U"f='V3FKZPpWW=a47Y[>#'?swJ\PD+V&3e++R:399WM+\43_O+6EjF^&%R:2F^a<
U"HNa:2N_:1HL92G,CishX7R/$\u'tI\qG>QPaZ]/2$')w.S,o=V+=U#>ZS\\##&K
U"5UdBK8ExA(1=^g$63+1zkB:T$sBQ:#M:z3UPiAJL%K$=T46p_BSoAtc[WKCCO#<
U"22ii6?H,]1an%9ir7mIC)XQA(hSpLqTc:M-+mdSel>JPrB\22g8]h*MVX6$qC-c
U"wHC?)U?9^/QAEX6Qm29Ta7qh$-._up7&/'qhPJh9c?1E'Ax#r(o5_i^FdhH5.),
U"LS&%2MLt4*c*/st*>I0FSN8DE%8M\,Tg6(JlYjd#]n_sT'a;Ddq0=EqYeXLrLo5
U"M0E>7nD*-m0Fk>gNe[:^1Vef\Z)G'Y1dKrc*2h0V>BV3Ma1;b/j_)c*B2aq/W0e
U"RyK_Li?2?hY?Act=0''0bM;(rkWGLaP)\GN=z]d*KReof4_32zgh>:P'.9?,=cs
U"aXgq#4<L?iIhS+AB6H8yF=Jk;X;XI'2ZuDz2dChzPdFL(&5h=z$%d)TQ#bkc##l
U"?G-Ja0N6DmfkM:lE*t+k%Q#kUmHSdCZS6Qm=Q%0um5*I7CLoZMDC]d]_L#8X>?I
U">90O3)ci%/w^ly3^lxo3KBckVL^q&&8ZcV;'NYUEvl)7-Up,(c21[[uMeq82j'+
U";(C4Ha5A;DfGXt*xp>PB.u7SUIPr&i2o-'%v21T0I,UYICMAr/t*hZ0(8hF47/*
U"m+O#R24k/U_73(96$)Y^R;l>IUGq=H7s?iCx4Pa25w_q$n$uQ,-*9pFaibaq#]j
U"4/:5xCdYLX,llC9*^Cyq6Z^sucnT=$:zA2=i6q,(ahD3O'xq$T\l[R)#z/S1]Mw
U"=^3Sqs04Mn4qoCp2eBWTOC)\5Lp%^d);fOgIr.J'%?H1ftuuJ*dJas+a;J,.nNB
U"U7P/kBfmUhH4+h^ep7+jPN>GsT1_BIrQwml8fpK9FSuiWn.239xnF'J22KGPIW<
U"tn5W19H(>0K%98/,+.j(MbW69#5+hFtG*&0lgLAeNanYSUr5;nW;-EIwSI:qRb)
U"CMmiAskW)cofE>EH)94>=Tr0U?s6=2?'TioPWQ+&k*8prVW15pQl6?wAeB4A#O^
U"2m9FWA]7HT3QuaiX#ju>l2goAP3UjA$iaWA)1ij6b]Uuf=HI-z?io;;9:o#o$vT
U";D>2E#rS<[n#T<[(wRI0XX.&GU+:-hU&niv1k9RQWE:+VJ52F%S*F6X1].gfdg#
U"ao'3EL6I?&odB1&7EO,:XQ,lC;sOCMxie?RewM)Y)hSUR8+1Np09XX'<EG(Q*_Z
U"<3D;J?RulesK5b:Xfv1(Mr53LA2dja)&r9HW2_4NICfC6m(2OP]&[keGF=,UQ&L
U"y%n(189FAW[&&XKN*Sk6EAX9FZjySp_H?02s;./#Y?(2MR=8b\q^'JJ'S5Slx>D
U"'1uZpb0?p,N1%e/Mtz48,0N/b<5sJYEi2OIGkE5x$fiJ0O1K:1A.>Xj5k7Wh.vg
U";d]6IX^^_<BpN/Y#Z]>#_Bml^0A4N3qxc-.xRff\oLq?u'C,tr//<N*EO+&2/T+
U"Xri8b7Wg94EjZY(.R-N6YC+gQvo%Q-r,efUS2%&l)8iQ]+fFUS)=n=**?C,%:J2
U"XZVBS6Aw4jWN.*kf(mW0aAnwLcmlEsMjKL_?DvUIe0UiRVOB,/]Lbi0tSEQchg8
U"kf\G1C:TAWU/?rHWrc]Y9Yidegk\sj(4JOHW+.QArb7tY([nPlJ?cmQnE_2Glo#
U"*mSW+]I0IJ1E&Yz/,GJR2ePGG.*Ze.sQMT<rj]*W17aMw/jo*jC<lSFPW/Y1$,C
U",c+;'Fy*((,O-Rszh2AI2\D6'c<;F)?=7$5ZHaQU:kM2K,AhM6*>OxrZB<Xat9&
U"twnt)sX(x(dAbAH*[Oo+oZ[03)%\l;n?jQeV0JC+#vmrt+ub11TbfAD?Y($\Mq^
U"]'/3S%>)$#jeloA>NPRf);iQ\_^]5/2Hi%uKpQWX]+GE';$hBQk,dVuq#\eJ-+t
U"$uh5J.Z#.t2B*^8Z>61g_io)UTdNG3;fO\yjIeFMuJ3s8;k0./S<+#ZzwBF(ULs
U"kX%G=1GA<a(Os[NOAZu96^2gVR]qg83#67A6pSDMHI:e>dceOlJj5ub%>.A6-im
U"K/L-fv'49J-+,tG3yVmfY&PA6rJ\T9?Hmme0P<3OkgQPYGQsGS<a:U5=L?]=jA:
U"&M0CB/mn*gx9r3BgL7\LXSl3#-aCP#DgYw4_78AYliBQh)iPknIWZ01l#p$1.pa
U"*S=wM%(bzMf%vezy7<D8QYcM?xk\N7MN-cy4LRad7d?-T*<FqT_OG>*vDWls[g4
U"y$QF+w)D8[GJBNM([s5k=>LaZ?aKISL<NZ3lWz0,eH?$#sd:qP(*+d3YrlsF.ss
U"+:Mdj_l*A1.iBB='>x?6#2K&d&l;0kE[?F5Uljrg^d#u<dG7jrKc-5-6Hv_B0#X
U"xQ.^k%\<sIFQ/*Ld$kcurOis6Tm--UQtSu%Fy.^smcei+aLLMFB8$JK.J9&Z2TX
U";2LBQ,]I43bMX9+tgOj25.72P(k5]$ReQqA,\KeV7&2RhEZ9&CTBoots=X<VRH3
U";OY<L5oe/1(PX./E(*]$5FLYG?WaSChjC<REb'=e)hSeGUH9rm;dOtv\GA:')p>
U"%YHu%8.wDU.lE1JP>g\np?E3^P)R<=Jw*-[mbuq1^mij^9=a'1h\/h\Hv:FBd2L
U"AErRH;YqE+j;mx#q5eaIkG?Q0pzs?ccY.t>A%%VuMxag'R(z>XZ>$+/AbcXW04,
U"'x9FAKXNd=U3MxL3s(w(HU,M+5=o;qj=gET=EkwCq1B4ek2MZ.x'0GFQ)6Ef]J4
U"iczJER(pa,60pwf7zavcT3toD/o[RJ41u5m<nG$M5U[PsV<?':Xm)UbCtC.;[Gk
U"zDd;Q^:R&mKglkJ7P)ayXkzN8fn9(W.M^I>/E89f,2l9*a_il9Cm0R]Rh_:k;5P
U"uL%8Ti=T7/NqH'P6t-p1+#Jc$o8^t?nxL[Yg$E*Uf,lB+u(H*UFki1fB]BS&CVn
U"JsC;P'*]ECn2?#R<+v78$XG^n5Z1UPQpQc\hyu\=fcon+fW:T9&fTp;re(is5's
U"%d)gOe;&7=p=tJX;VOCVn*bM]+BH:G)dXhkhIfv*qg7/_;z15r1)_Yde+s1IAnc
U"V3eX<&8mY;6k'1Jg_H<&obhSpAI0C;0$nXHw2CB3VUm#iB1M;;XRe/t%u[r67Y1
U"-Z36)Ept07Qpxg.cnZ1c/+]8:cbl=#B4NE)rXX&f6r1=<0\CCK'tyh[Vj<HS4>y
U"kK70HfOvcu&#NA,YfABGxb7.K/\+FgFeGe$g_.LL(gco9TFK&#Z*Q]-q&DAv%YC
U"%b*Rp#p/aN<DAB[tKK%/dd1UH1qUwp=wS7)h7Wr1_at+SIp&lAREQ3t,0oxUe,3
U"RtMP8gfCNgKV+6$?x4en9/Sw:S\/nt,&J2gppD9uh2M[rcDtn>fXYsRe5[-y8R%
U"x)7vY'C#\(]<2wHi4VK)c9t)AkR6_Gs<G=:4eAhsxfH\8Ygu%6D&T(l.u'2l?QU
U"o$I6&>eT9Sg0I4pQLD2BLl#.#M&iq(a27SD1HUw>Y*[^VvfB#'*l;n4/nUSp'Y#
U"Q'6up'VN,JPP3FY=afVn41L71tR:.4+'5J$P#Wpnkp*)40maBfOsN6[:e60V30e
U"h;D5s]jAf'<rbZ]:s&_[hlhGpHEeM6LN(Kl##27x)C+Xn,7YaO+OpSp*MxfH%+t
U"67i2<0#mv8)9fM1V0i12NxQX0MLD>=tic1x.0kMv&Z#%?ouNvS8p/$L6CQfx*G)
U"kl\b+5fDw-gMP&HKh9GX%SRF[;aIfaDCKh4kg3g^Bgs=GRcUoRX=*8d5ckU,G-e
U"btkx)7Ku&;A]tPFgjNpaP:zK?[Hrwd=6vsMRQScMYmrWpr)M\T^iV(Iu1IM_Q)1
U"9\0qfZ[^C)y7c6%4%A'Zv4EYX56KUfl0k_%yablsg/i#)O:7'D<:1U>BsBU?1Lb
U"P_nnWB,cVYqPJ%W\O%j%4anvhEI>o7)c/kbVj\N)ja?+kZ),r/>gI^3(?K5phJX
U"n5BG&c_-2:#/J<-vb4.L>I:5D0#6ju$d[Y[y#Ta3j+47*vCs6R9xVxG4U2IPTnN
U"m^v=MSBw_Oq=RZ3q)Zki2c:&AuBr#bfKo8f0F1kAS9C.Zl$qi^(q%Z,X\_t*=J8
U"iVp09tUN1nqM;YOJG#[62+S6JD*Tn+F+RZSV8G9D4PQ:I]+m0Y1jc6/'%7'wQ(?
U"2l.]Hf=6EC'I3^WV.mda+YXaL)B[\x0[?,R<vo[nawdG'kVK7G0/In99+Dmi*6o
U"(PBq'lHlKOSeQ^b(-0YBd1u&*EnXZ'MGJHy_-]7+D8/x(2>r$RN%>^w/LJm#\gk
U">l<dgigG5b\'hWv/jTvGBjI$Q7>LL#Q>l491l^<?k_YLChH[C5l7H,<YfC_qE.Y
U"z:]:#H-1u'qQU)'-Auv;pICTP6qQW'e$$)A0ao8[7j6B837)nNY1m_-hk]mDO4B
U"*G%F-;4D[:m,')2(DfIsM%+^Av1?wr]-q?<6ExqK-N=Fp/AsZyG]^SsD:$?D'))
U"Lo8u1tcrQp6GUDlAK'HlE.48Bs#6fMu27rwp*2r*,VUU]9oiJgt&MpL/N6c^X+.
U"+l)t)tz'qW?UQ'buSg#^l)sRoc)6l)qJRV[?)V.Mmc_e,t#Q,#+Vel*Z/vaXUDh
U"<-1a]0ddCUCQ2Io^3$t;A/bN0C/qa:K.+D:c65;N[hs_e^VGaeD_EfMT/T0$%5_
U"[F4Ic>oC:Tg,/UQ#OzDpaIelHjQBZOB0?M:qFp(;*2Wvt*(Sjt7\H#D2FQF?U;r
U"VHVV4;pB^&0rEImQ,6\VUICy'>cmT\9NofNjk2bl9=qqcob9N*q&4qXDpdhSs?+
U"VXEZt02'Z639O>.nv-NoHO<_RGqa3G3&1VO()IrGFnR[DS=/r]MX:q:VkZ6(AKR
U"Yq?/AZw>pAV4cXJsKI,Ml8c^rb5O=si_mdlM>B2*c7)]ftXS,M/FsNmL(sPf,QB
U"VQ^(eh:I%p5p'D^S(k*Jtl$=-0e/02aKH1/<M=lgC*'t)dm,$g4;l#>QOSF(D?N
U"Bg#h7fq):lgCX1jDO,bZW+M,i2/Ffb,2>sP%)*x6VCCrYR%e/YnU4e7]]D[hf?]
U"4)%QRoVcEVv&RbyL&+LkCsUV%\-'EDdQ<8LUkNs[xH'DdKpKMOn\nbPbs,7]#o>
U"\hCE$3Jp+w2MNSdY3K6'RKC%S4CDTXgOHNp:Y-$_MbDp4TGYTP<hrsAV0(9J5x4
U"%up()%9%%%#-%NtJ]GHm:4bV9I%%'*%%%.%%%%io%xtpS#ify\k+FAUR]45v4Oh
U"OO-Y](PhXF2$SuLtmHv,-C>r:*L,:(\Hd3j$qM<OoM5Mx5DpdMxM?#t(cpkLuqo
U"KQ+#uvb\pu\lVs6jdHpa2*dhjkXF&o.#\7nZdR1X$e8Z%bV(1uQL;>lx7Ntmz\,
U"FWPaTGSl4^DN][?<MEh-JaSFV.;J=.w73KPbiJq_Ei$2](L^<,XZ-ex.ArJan[R
U"R\FMDguJ#rU[x/B&J.i35.2oCG6oX7CbkQxbVLj_fkrUbWGq3Q+[[(oWYkrUzTL
U")dmN5o,V;oIWhu'_L92'kaJ;YmzS/g3tG;I2p^m,c0wb1pZ(nI_CZ7.Js>I?e68
U"5I(b(O1ETcOhChvrwV:[-(bIAkEC.GOl=WDFkVn%K^O:xucU4dj*^<#Jl?Hn>uU
U";+f6cp[RSM?;(?LM\y3PM$<<7KhW]e<5n-dM+MUMMj\i.8=.8gSY0w15iqbi7s<
U"3eNzO0BguC\P&?$AhxJyh?Ix+04h/Y0;0u/HOnKsOZ?1nST<VQ=B2wRin3Zg#\i
U"wI,.Joui[;4xc(K%pdf(z)qu],+aNHr3ll[07L6&vPY9^dDk'LhTd2j+[%Di=#2
U"#RMj=K)Ol(W-JlZdSNU[KWA^pKjos0s;xpvcTHDrZ9:nK9]zKO^cD47$N7oU/<C
U":KURG.wpRP-1k%+1KEL751aY/:;<fj35UZ$bINI<iy-j\DcHagP\c*$9N;g^YWr
U"6L10LBk],K?AM-ZBslcmRF72;g[T+j]my?+T&OFeWrRt6SC=<OXL7tDQrhyqtza
U"]UBmO^lcb4FW&<GQh7YWUN/Ab\mkdB/8u8Fj+D)kaYkI[=U&#.tR)E5*jQ'OwA7
U"LV>62]<zHQ]Ctm(x;o.]W<1EVYNb\Ii$S2ozMb'&dqAm-.:0^7.]%W-MNG6tG)v
U"0q:XqVf&\ErRDl+J91o^lJ,m4Qn,Je<[H)L=FfvtCbLtV#i%i_G(p?J-vxqt,Fq
U"_3/$oMjLbvusgHeuX<e?2TlQ_Em[8q*N'k)\nW-o2#5IN*[p[$>^[i/rnu[EloA
U"e2]3I$AOz8C]PSd'H5Y=KR8h_3OJ=mS5jODQG\eW\0;kD:B]c&(>.9XX%)RBiHo
U"T#rmB:u65%fl1ZDIrD)3UOi0bgd9w:tOGAWIb?(B1s2<:Q)2T%\mAZKh1j]JJ+Z
U"SG_U=gDQ34,1V+(O_L+:0UR;XQO09j&5:T(4>ee7NflC['.51GkbpVjfW=Jp*ue
U"FZu1PRsROV:*VM0h3sRjDUz-xBegU4dBlg+TM+e%s$p'5Oa)Z\$nuH&L%dO53t5
U":eZ,v*i8*Tx4sTO9q]/s3GlO%>7i/4RRTn/tpEEtpT7Aob4d'P\tIl]<^4?uv>,
U"VjS.Rm>))#^(6=26b+(LJFqpf(HdGU-PKm$j)6-'QM84[AiC'SPSYr6:&JkJ>cr
U".sj/LhId%n.#dsus7+za%r4HHedW]==.]s$M*[tO#36M?o:iFG%G3mQZ)4Q(BVI
U"CmsU-CH/NwpJeSKkj=gV;SXE%mut5\dl[=*;$Sm'IGYGu[tp*)?ecgg\+mCBXM1
U"*n<^Hu5%,0aBAPsqW+m72plMwO2lE7$S)Y':J5a&BB<id;2[IoGerp+B>52vg3E
U"21+vqJm,]_k7:&0Kz1wQmS?3V+zgm1ttLQj97d8M)vk%-8F8[lph'SLoA4%KYQD
U"xTi=a^^]LLggxA942OXENJByS&<Om_uUTAP(Ymi2/;wC^vFRJXOLm2CWS0'KdoT
U"i$vEG9HI6Di+>.V8>?1+Tu#m)sA4G?\;aw3OG/xa_a0*pZ?#nI;6*usX'9O^'o?
U"Fi_er6O*OLmwl:YdHNVW$2,LX8C]/DYuQj##sZC0sRlm]V5Y0'.alFueec>fQ<+
U"ohh/wQvw\iTqeIKH9fh%0t1IE8s.Kr4>a+IUO<jPHxSCG#^,4r[SN[5o^-9o+It
U"ry=IEorPFX7j[E^\Pu/Z%SRVjdvq7udfQWY0W6ZhuOK2Exl?;R'7,a2y-Z#G.?6
U"JqmY4AR5layHAS+6v\2md+7GP3O0w<2U0,<BwNI)1:_EDDN\&7A#O_0OKK[keAk
U"tC(aMUX:S;_:f-kO&_f7VItT.p+U-Igi-fy,Sv>f[HB<pWnpuqPf4iEWN?Egs^9
U"sEo6sw<QrB,*N/%wfIIR8.\'sAnX5bui[n,>7hKT#t(l&4U0:3h/tB<yPx/FhH[
U"=V.[H$NDI^eTSN7jd?EJSQi9It_MD>VIK%pPDJ7;BV_??JIoXK3/dHnqpB_PrV-
U"g?t^xJuIwv9FK%\A/BK*F\f8Lmp6n#h'1>x31WK2mMdpm+fg3LPW$$l'T6g6ooc
U"qf9_FiuS'mghnaj[_7#8M%)q)rbW;&:*Xu&[z;)X3;Y_01X\KXIsR0Klh'lW/71
U"xn?Kx5.7x8[L/pe,HTmovCL;P#L/p)H4h?nnQsi5</vcRk(iBquSzYM[$]^Pv-Q
U"1cn'ip2Pu\#Gn=WB:Q??OcM_K:?o5&+6dFDtW]IyrN60?rTy;\_>9%yC3eM#I[z
U"4H>dpDIlsp:XLWv:iget?QQjOOthW%M+1OQ-Q;yM#p%w%#trP;/b>FAo=InGG6:
U"L0ecYVWl*xpJZxa;ihiotPReWgU=v2De)N%8QJ)3L<J6:uX9h9WMe[,6_VbsASX
U"5an%\kX%cV;]0W;APxsDB5?:B_HI7:rDSne]'?FAsWczip7yJLZEs]Pa#UG_xmL
U"k-VB/\CrN#[egy31lJSL(9)QiEt\vEj?aW#O<8z,3#JWD51,$='rwmRVkhdwwei
U"ZDV-O-5K3/oS.+e:[O7_?:>;ODcUK]^,*DQH8G+xIZdFo1eJ)f<&dd#KI%B31$>
U"8z&:7O]xHR:Din[()^-u$4]kROUGK0U-;Hmjm>7Hg*Iwp<_a;/&c'?,Buh\%:%0
U"+b0$RPcYAn=,*&C/Xk\'+:GpPCz00I$o?hLO;G035sP0CmDLyOdeIM>YWUFb*z'
U"F*6^N5yXpO^0F-T#S2O4[^;#:/A:qT&l?7nFzAARdKb^;iik5Z_+8;(3xz$B<2D
U".<9$IB-0En(Kl2tPZ+Jkgb;#*sbrg,T1er-Lk1gBEI5EZ$dCwpMC?tKj)EKO3'R
U"&uAhT%_8CM[m_Mmhc=NZk#*?IYIL#E35P<VchbN),I38)'MG*+*7x&G<(BgD6<O
U"9Q70hEihMcdKV3K.7/(o,'11..)#A=-fSh/u<U#gB0VCZRi5I9chrn\0S'BIV_%
U"twfjX6R10i3=Qqcn..OzQ?h<y1,Y>(vqPfQ=pA3_R/F,Z)&Yaf%HF#tj*F?(9w%
U"jm7IRnx>#Yl0[NJ1s6b\R\l)3MZNB5EjWgB#3?s5-&(JeKo81%p1XQ/e%(v<LAD
U"zCbTOT?'h-egRj\+b9Z$%Ewvj;/+KpK3%BPemdU.>RJR^fP+g?&3J>R,OMX0]F#
U",ilIwGgImmbL&DO8MSni#5Sgx%:nfNh4XG.a'Sby.LF0mogNN#e:L1G)SNG8'?S
U"R65Ihr3b0Gh+sIB<m1=E]G)AD?'=7=H'df?u^27X%RMcWSYHd7A4F%<..2\v(?e
U"<*oKZAGEU/O+7IV'(?0Y+nh4_K):21\yl$*>3d=;^DU6&^iWXSXMT9-dw9W/[-,
U"8S'(U:s0[Yl\NAPoD_^/-9=]%XNsPZ0JATAHxDEXz(1]cp*[,YLr+-io.,WMHv^
U".rrEv$_>0>l[wwmMZ:HCzSs=-Bc85O90#WzWLQd5xpp?;1exGzwsX%-_u0_N5di
U"+qg2rv7t9OGUUfF?;r<QE,QUa+Wo[RP]5*#?%hFc^/2-G1KwV1E%2W/_<(,3vhv
U"$r()Z]i>'jEPIvbS+rT]#vVrj9adSFE,EN\W:/oT0c%aBKb$\O>X]c<=_E?;TpE
U"v*]6h*)2>VCm9H3^Jb'n8'WUcuH3_&IzE-uap8Pgfb*$Q>zL_Q>E0Kl,j]>j+$1
U"%yCE1>DAH$(:+6d#cydeNb1PDVR*1un1aRCMAH\Xb,Jb$8a[W38fu[*S,>5JXJ(
U"oZo?eiqP$l_,wSUJ-0OaG9m/j<SMaQ_&&u,Tg;T7(EQmyL7bFka%:FW\upt2.#w
U"K3dTR3L'EaVV7*hn'ZaFrL'?-/MYIlxt3I(6/neX*X%.)VH5W6>bus+j2VFY;&w
U"(m4Sr42K6%d>9KU$XMq\ZNXNx&?x#&g/=YqSso^f/z=Oyt(U?L^2[WC7K9-s3,%
U"$wnuNAX4OI2epC+0AYw%[z_<gG#,$Ma)<cA*sOxE7s2084Z9O)NJ-o:1ViN,]cG
U"8'e9j,+p2GEQ?yoFA0)6%ZHwcD&vECXA1Slr12hsIfNb2ba=nJQyh,]wH]15aiW
U"HO)b1\)z0><aGtqQ[%hte)-Jwop[&UMK31uE,io]5Kom]hJHyA+]=)hq05S)UN.
U"g<bf<P.+E5Qhs0X>cQ7GA_4cIcz>3a2SuAbLtzg]s*6Zs?RyKNA.bH\vpA=]k*y
U"7cbijJ;S8pOQ3E,C]TpYU>&>qu.PNR\L=2pX6W]Qg6f1p/GhNl#F2koI:cyYZ4e
U"wICo]dNpVtThSuZied3+QVpo(%o(CpXTUYS:<exl6-fI(4I-oI\JfL#^..A5%mp
U"sqrrMG[?al\p^(0Bfq3FMSl&/O/3\*=wiJ5.)PvRokrQJJ4>4Vx)-AdH=PdS_Jo
U"x,nA7eg+cP7sS/gU5nqiAq)_rBWjekno[a,]4'&#vju2XES84qwcuc65n::ceoK
U"wN-87/$&myZkBkbg:IEX]q+XB;X<-#hts?sEu]N1RV-,t2)C-+Rl(CUQc6UZZA&
END SUB
SUB V2
U"$A.(rfU&#*gn88YJJZPl\$uL=tYaW79NJ2Ik(S6]5GvaA,q)g3j=F7p7.vpoD'3
U":5tjK)GrK0Z6CkdIB'9zx\DHQMRQ0d15B/waCQUD4c>v]q?Gd'n'3V)?l''wYd?
U"t3Q3R>F+YOyLi$#3K)U(n5;,^L#A?%JiyOJX7Ajqc%7P5U7NfPt8nrLwmt.e,&w
U"NDGSpx#fvVXk;EF.tZ]+cLIw0N<eJ4yD9gXw2A:'/Il#sA_W9+^f?*sToiQHBfj
U"1d/&rqqKlw?[3PsL=nG'[#]f<KxQna7:Iq<q47SZs2^*,UMelA['BTUjbBFpO4Q
U"maJ#P\w9#=2zSo,7/yTOK.rFAeq<Rl%qNdN6MJHC]B9G-^z[WOn<BBMSM?=SgH7
U"44/23RIoHBfPPwmqkH2Q3Oe\wDBqPGfL)i/9+Ux%7tfNG:K?F4(\q>J0#P&W.9,
U"vwK19^r3HWJA=%0]Cm:#;;^mJpw\5+$t,I8l^(u)4Pwi2JO7rafX5uBRs^:OHMj
U"LI,?xWoWJpZDk%P;<IWG65yDtqEvQA>.tu8<WwXODDKyjQfiXkq9e#c&8[lF+mk
U">>*kIQr/?i(UBX<t^Dr5k&u0b(V9/ZkStHBj1d]oxpfR)LsOLZ?^Zd>05.?=3C-
U"-GvCnNmC.&)rh-;OGCKVIh8J6s_Ja'kFm0NTUiIn,$\^Odz,A/qiY]YOr0UX+^i
U"Sr[N9w7_Whh:-3VONg4]OSVKGOK_(U(f7jl-S,G-8xq.a\nFT]e1HI=F5P7fu9%
U"v;JMd\w$W'C3^u)=\2wL/Pk:Ta%G#pmsHYBb$C/N?8i)-cedOQDL+8Cr\4U;oqN
U"Y.Q0?z^;-_])i<kB\5n=dP-LiC[5%PZVJ:D0><SGe;TK[3[Tf-h.6?wdX4iXmJq
U"wylDs]lQ%[5(iSt/VyOk-\#l[mU\lrsP+F6bS/FJ=P1e+P22f3OyO_[+ZsDyCi^
U"LPz_#98G#8OyC<gPzaL)3cAhZ.fgz5<9T&-2$hCPW)sZ1so.(DI7$BqEhD-o<m7
U"225W<H5Sh?lkdAit\7-KgC-#m:[[M-sia?l^k0'Kg/W2]\iu,xm39H+nasD/cXZ
U"s%G'K]vWAKe(^pNrIw#[Q8a/1_.08A6Agas=.h6Ce\V-N8u3up3CZKkG7<Z0QBI
U"$c:\LNI'Y692xjXFa,XoYD)p]3gi:/83bvy.04vyoD5rQVn\EJ<Xpmkd%zdk&f?
U"-i'5m[GLKOh2KKS=^\*>K^$5Sky6R5NSEGTLH7nd0r_ZI8p(=QrRVN,V&;;gW(Y
U"g;>y%M*-<36IVyHSYo(9q2)LMpqL&Y'Q/?%KCd<cim^Xq-nHJ_;xKwJgJNLI'p]
U".FtjHk+.Y#1DWE,a$2UaL6L8cPRNn&88l89zQFS<#qE5mzLemqL^,an#,>xN<<9
U"VJN.(8srBKXoMg8e)rS/fDO'J=eDDAJ\n0tfBr=Q,P#r.mCnKW^kh\f8I:we(S;
U"X\ulA>]xH[lhP(DH5\QdH\rj>F,1(F2YvFQUV);SrDrKd/WM#g*BWA/1V7=X,hy
U"-e7O'-sI;D&blJQHZ,Q.kG\8k8t&Y[+E:M_M'rLq;/6=3[]peGnj_OxZX/$#:br
U"UY0&q]K,61-Br.1qb)#D.)=F)p>gMC4XW+M+6/*UFWc[CBZi8aC?>;8[gnG'kkh
U"jQdLRhLPYWQ=),x#<J[W:FJ2M7aG^wn-'o+$&0*3aBgJ1uADO>-BU2mFLnUv>qJ
U"VQSNm6y^S0HylyQ:ptmTa_ctRF]tt[0[ePe,pb#Z<qK[c['9mYQ0[X=_&<x$(<f
U"?R$5'7RP2Ouij6nBXY<*c;#YxxF$xlj'GO\Z:aZ&5>q.qO^[H.C57^ed%pNESmJ
U"0k;DeaYVCj#-%/Hc\mGR:Id1%q;-$p[.?<*bM'[Hvx8cG$e<L7d?XN$P_VU<wn*
U"=$8G&%Cj,55Y9%60Go4Pi=_d>CqEE>cU'\^a-2RJE/Aw1qgwQTZKAo9a9f1qdKJ
U"W49jHlaBWp^Ca7*ZW&xfWt6P.-Mo<0(8o54A8u]eOX9KJx,%up&'%9%9%%%%-%3
U"eu]G>zRCn&A=%%).C%%%1%%%%%%%%%&%E%%%%%%%%%io#xtp%%lfSg%fxup%&'9
U"%%9%%%#-%NtJ]GHm:4bV9I%%'*%%%.%%%%%%%%%&%%E%%%&k=%%%ioxt%pSif%y
U"up*%+%%%%%'%'(%#%%(%oR%%%%%
END SUB
V2
CLOSE:IF S=161AND 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
