'===========================================================================
' Subject: VARIOUS ROUTINES FOR QB            Date: 02-03-96 (00:04)       
'  Author: Brian Bacon                        Code: QB, PDS                
'  Origin: FidoNet QUIK_BAS Echo            Packet: LIBRARY.ABC
'===========================================================================
'Here is a HUGE library I put together (has a lot of your guy's source
'in it (well not ALOT but enough :>) It is just the source and the
'include file (and a README).  Have fun with it...

DEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2
SUB V1:OPEN "O",1,"PROLIB.ZIP",4^6:Z&=7688:?STRING$(50,177);
U"%up()%9%%%[-%A7dgE]F3FgZ:.%%]n%%%/%%%%uw%tqng%SgfxKNa:&o\]+X:^Vt#,9a
U"UIVR0kqnP1mRmaAA-+$BrglpEl4-$%n)nGne%]fY28\MzJBJaDphX$t^5DIXHd0cJxyd
U"zO>HTg_fXO2vj0&F[=2?:w_jKjccv&:[Tz)EF3oqR0P2-bRR][=tkG;oBU>sAege0gq>
U"_n?$iP8j=CXBoRS(ZYqtKm-eHgZ<M7Qppw[HmfD?/uv*u\PDlLri;*N5KgY0E/<4p$En
U"-=>YxN:EquEkta9#B%.'dOr0=GwZ:Ei4c.QbnjO;ER415YmX_RoIOGDP6+MKOyoOfE#k
U"s\VoMIS.-X:rJZvj,./<\GW=Gc922Vcr\TQ%U#,6I,=^uE^)j1cxeji[&j:Q3jve82N,
U"+o-CQ+/rdC?80'o4crIQbSGl,/$+e*0&^^yYYH)#N7#[L+jWX1:w824DI::6/\f;S6Mk
U"<H;)#m909\at2Ae4fuT4A4_Q]>$,.rvHq58]^obWwnJfk?u8IIP.;eP1^W_mBgF;#,F%
U"sJSRe&+7L(7Mp\p>V1YqHU0,&Y,&BLt+g(%SpSl:i5rvJnCMIYUkjZ;Y;_AVw]>uZx<>
U"PdKJrDnHfDvJS#Rt+&HP,7VN*o%x)33JU)Sa-ZmDxT*94X9jWFp-Ceq*VQE<hbx#=boJ
U"l_e.;GSvPrl:]r/[3&<m\bK0S-fX+XkgWC+M,iJbuP,h)2g-a?YhU7]$VnJd0H=F)r.k
U"iBRsnO8N&OG(9f)U:F+?0)0EUi-=-Sa^d5YQTWmhS\_?71-Wk[adSYkYf?hck:U2vPN4
U"G$/]SlrCnrVt0a4c1p*K1sZ'RttA4P1vYuow2,;4Jh-tjo^^H]2.O[<-/W3O0Nt7PZh&
U"WC9ySNeAMKkK]ueD.#WK734AF,ZF:g]q0uoqjTU^u5hQyZI]Ki(lNKwl,e]]6ev5]u/R
U"4lIZ8w7V\VTGd&XBKs9[si2$Cbni53:s#dQR?aWRp$:K_S''N+oN>jf$YxdT-H<WeHFs
U"g]+EV.+DonldS73DOUU.P5\ti>Tmi0,wZCn4F%nY0X_k\ev<&4YU?,uTFi4]Xe$hD^hR
U"?m_i7\*6Zm+\Ak5i,F\5LsDvq&fM,eZc32%+yI2?D9O]B?#qEiZ[ZEYlSSUyL+uMGG/b
U"BJMMXj\4+OY8rZJIRrZ3SHD$+<FgS71?>XVA5i(N%ZipLtpZBKFjim\5Mr/Yw6*tl62t
U"vn3pttVQELI:mR'\Vm7g]bkJig+[JGQ[^_PK=Q.B1%Ks-D./lS&CRsJ0Wcd=%o/#qA[6
U"m/Eq^(A2erFV9r*fr#K9xPn+&#D&92]K+YwO=OAuI5':r]^U?JM$g=2=wA5#%K-fK7._
U";(:Yi9OqF9Wdqry.S]3JL2iw0G7x[R%fo7LIX<H9^LNwlKh8aUBJrGuQg9N3]HJ5$Aw_
U"Dc_f7c^SKk:D5$XgdSopsCdsm-khue?/%9$o:PCs?=,D4]L'i10gsB**4Mg]WXGFxEmX
U"c+$=Q)9RPb1)Hu=eXl<#5dUg,>;M-d4GW5U<EuvAQbN&d\/DI5fw;0]qWc*E??/(=1RA
U"uD<%he7Tfq-:t-u%jS=;.#3g\KVUH)Mdc[r;ub1V.1p4t=m]wC;f6hb=L^i4RUmRGcLV
U"GI/CFR]Oq*Ehro9])$<XRdTJ/BIMIq_\1NwGNkbY]U]<%%Ki_tIJE\TaKn8g19,-Lfoh
U"Di#Gs';insDVhO].W)jbSG6iNuAtC^J1RR/(2Ff-:4+)JX/qAmE2OQY2'C;+jr-wvn7?
U"4j.KonNW,/fGCcHhAbMx<c4jj*CpuJj_qCjw/iOqEuFRuL$/(/&W?MQ/D;nBT[*,:^i1
U"J(Qt0'<b[A+y(8+F:OBM8Q&M4s+ChH_?q[qQH)IW#_Ua#W7YWUBSeME,Chg4d1p$0#8P
U"4^[c+>8n(oR55wQRL1?b[L>fAAgn/iPE)+7l?In$4?YG$f-19*5a,-am^_'AD:6x1zRu
U"q)8>KguV=g$1*[0[4RtYB6+[3a_qh+0^ma]jJEnbjVW06DS1T5$iKU?J$TUv[2r-FCds
U"ak_gIrP2=h1Qxy&V9=>QU5Et%L5nK)+*PqfH+^uSjyBp1(bcOk/h#g4G^/JILO5'iS(?
U"B30SY2fC-EYF-P%*VU?_T4(UNiX47%2THiVJG_M=_VkW:B)\PL<$#d5+UWZ;k]tW&VI>
U"\Rk^UXj.UF*nxb#XaGJ4HA>(ptiYF]f_1gLhFd6rX0*UJ'66La8s5U0V>VFcj^>T[zWt
U"Dp:\5$iX*Yl8PD*U8U:gXd\'n*GTW?a;L[-k%=V:R-4U7p$(pi)c.UFkSCnF5'jWeXqF
U"'Mp_N'.>5u$OR.H+mupf1+W*?)&8l5.7r*6eYE7S[d*4?SD5YH1k/gC;STqjnr4+=UU1
U"5mk5M#b[XR^lvLXIXM()E]6M1Pm(WLqf_2EF0,I(XgP:YQ.YnjEN)>8/8<bHsiJEJjWf
U"obbD]\uAq*6B-<r(BeSm3beA?MYFDVS,Ex$QCtE<%UXlUS=K%[&W[?ucL>%'G2''Ug>\
U"uAAUdoZgGBeVAtJBkRMb9.2jYc<]^]CMp#&IYVkG05vs)S0KHrnv6)K%/tl;G3HRVWRt
U"JG0myBL9bv_q&p4q0$KYrr\cqbtUCGcgKzXvNY1[5NsFmxUC*+g;]3us3Fa-b1*+Tq+]
U"4t]B0FhndVwV+6ZuiA[[13xoSf1>kA75#EKAhJi2SOlkyGO;Ox\dC/zaL1.,o4.:2vSf
U"pDI\#lWKk64zidj15;1-Qg]-41p#-=(Sw66&[Kj0[tuwR6uB;WWqsKhC.f,#6a&Wk-EZ
U"WNT?RpRUUl.6/RS7ICF*,0pApP^2A5f1T.:>AFVn+n/o\:t,Px8&a]u)F(K3c,XO;a\S
U"u,iS*ji#WM&0?Q-24i+Uw7GyL+QjWo;QG:F\/])FWxcM#M_..'vA%ikj._$a[Y-wf4h]
U"^01\t.^u;u-FmXW2+u&=mESZ*64i.r^B]w.Dgm4-;+vfZ[TSv-(7V^vpDUYfn>ir*e:X
U"0pAI40r2]p#*Ur.E.3gBfFh]\Ie=Z;(Wk&tVQ5Z<$o3Lajc#&u1n9bYbhinSWaY>E6=Y
U"B/<Hy5=T#U(#4tKj\\(rl#dIFlKq\#TC;_j<o%_N#0Fsz8d#HD)?]vHe8aB=fL]V&qnR
U"/xmQYb?Y#aV=S1+:r6t5,8fBy&wDkWo2,[;5Y+FeE'_&?T]FDm2iSFpp-6U>ug=h>pe<
U"QO'#)U+%3AZpF1r*'KB59Sqc32sX0GG;dM.E]$>ke=LHpK]K4=dKN&5WkTxfet;4gd?s
U"J^#\^$S1hYH]U>1TkbX#(*7JnDP$Gw.;Mx]SEEdND[kx#E.F=r37AlYs90pGS%x[cD7&
U":[q$?iL1'Kkv7c&hSQ?9XV>uVEY#Tdkp[,=hM$rs]m(hL]23XU9'.EpbSAp3\:8$gj2$
U"1;4BLgdcNV-(9tAh6tot?cngsW3jks%mkIqZX^g^:usJKBWO8tVKzK^-sxEyHHgtVb&I
U"csUD2vqO&b1Uo))^w(:t$$Eqthk.fDw(gc?X=7C98Tc^p6MlW0o,omwd>1=E)a*c[4/<
U"LRKEYVII:90H4_i+z(F5b3Skr_qE9ZRI:rH5HnI[W\o_5op*,H6Xcw$*Du_HOAAs$._.
U"T-i_n'=Zl[JS,^ja5m5Gn\&saV*,LussaF<opf*>,-v>Y3apkkQ)_(QM(>GIeccb5o(s
U"Mn4F-8\o6oDm-f=0Jd++3G%ik[v,Inn;ceY*Dk<&NRphDEaGp';]mfMt8URD]GoZ8K]\
U"M,h?_a\5b4J^CJIUh.*GWeUgyX)^bb+<HD]C#RcWJ6Q=$tfO+Z[wbu-EO,RW6DJvt<f0
U"(ijHJ6?0o/s3#JrLhW1zJ;5SUyS':VsZ^D.L=CA^iYT.5qbe1q][o$bmMHlfl*-SFGL)
U"TmKf:%po:/DRMoeQ>*&F2gx&nHwa3OvUoQq29/ij3H35Q)d7J2fYwr[Z7h&['ZK.glQ0
U"j)Lglqb_?*Y)j_PREnSJu.XqxfSwragl0n-LP*p<IWd<P*Y>4WIb(6F0:b+-w8sFt;-x
U"sKrTnQl5j[:bKgB0:Bh2crF#N70(77B//i05AO\qXViZ6Qj=K.X#yMlXLt)<A=18O&s0
U"SbDCRov/V/k[DCkOHl&TN&lq%#F8ldmyZB2.x8fIV&paBae<%#Oj)/F*g5>l(gLKg]vQ
U"H7^fTGa,OkEmCHM-RlFvRAB[Ojj'^eKv16g1IE.X=TAWqe1N[^Auaj^hrNJcgWj[0C4M
U"xzZ?^><L$%ke\R4nf$&qX$WC$nnn%g-R?q9cjgR\Ts5qdAb6/UO=4ecDVB%FJuSYk_v:
U"\hT;0+c54h.Y&_QRX-#k=oHl]IM<^v5Y,MXT[y,pE'KwP8SHM,+'c4.9(wIZ2/dz70=_
U"fglc3pz&e6:]E2mL=tAc2mf\C>OWuVbX\TScZ73'SDnr4rBb1j*3]Bfs+2X_=CbBJ<0:
U"(k=c2:R_]Qn?AWADNB;-1i/bS%Pv>J-,9ezh-7S&P;2zr2yY.#bttyb5n%[RZ7CC&'Mo
U"NO&eO)9l\Fj=Aq%re:[Z:+S+K.>\Yqq_KdO3QueDn9o*j8Z)?pyTHblvLlK,l(]VQyK>
U"*nm<4y.t[VAZ;Yk>j-K(V=;':TbA*2rLpx<Yu/:G[WNyg%%X*UjA&&gFt-_6_QCBdv&R
U"VhKHoc9;$d&3J>3o0p/guLtV+k%q[Eh=Y(n9H&_N8deZ+9QBRNa)G-(>S,$GNamR98ZQ
U"o1g*1wMO,1ZG\pDgKS$+KA64'LIrmfO;3D[xEw7lPc)$gqDqUVcj>EX*WA*>Cn7D6$dc
U"qrHaP9DzSth.D)HG;g]r&E47YU;K^\SmD+Jql%&Nk:3$K&[y'N(#'yqpuEX'eZ.v,5X8
U"d^)lyJ,q(gs#I,hy+-c?>rVI23.dvz,V5?8aqDewFbpbJxQfDyG$R'&vM4qguqmGnUsh
U"N3.6P_Y7[nZo-V(I;VVr^UpN[04=9jZHbvATR<fq?A3&-o5#QTpnB]S(lplEKAs]6qSz
U"oM6*1x;hh=A]i4>Y;qAm)Eq>>/-lsR,BuS(;WWS^Odp>/,\3E,5\n&[hMw.xZ(<-,3PI
U"\8ctjZm4#0>O5p.v-jHZ7vSP>52aCG(1wG._ovY?0107h,CX5>>qD[O*J'Dq6\,*1iSa
U"bL>]JDm;4vR(mocCn-#xFD($6J'8m1Us+%Lu*9/93*o>f3#Q$*_.HpBeQtjAtjl(GQ_g
U"]ZkZ#12,+gsL$G/MW-*9#VQE5cbOw;)t]KG0%f:M,I3>L%$B(pbMtA8BkWCI.)[:NIVD
U"U?_iiC(\[1R]0PSy).pB;FBla4[[?=3QRG>U79*Dkn0=l7I%%i/o^nSmRaoHTO'&_K$?
U"i0[_7n8,m#2preet>lBK=nql&MY>\SxLP21'aBVQR$g-ti^/%IL.uTk4q*cXgZgE327y
U"N>.1\b0Od6Xa1dq0e]:jHhJ]QRu\X-w+_Prmg9qee]?pk^;NeHQ*7qDUMV^7d[uApo#S
U"3s;pSlF<cu\7aUoZ'hSln=TSuWs#n8M^Y^H90v4\lVVphAyCRYQ(M3F9b/4Rtjd>FF2*
U"G^^WrARTV9V*AIt/JZ4+pLUV9NL0SG&eKva:$b>rzwFa$dlUNW?ya7&Op7tp?:^3K?nc
U"i_>&Ru0?r>^Qo8fMR7Ma*%HKU[.e0:t0J1>0KljjZP*_MaduT=9WS_J.whQL9mJq8o&p
U"B]FGcfovf^lI9rC.F&tjR1.ro1.P>fS^>_;Al'LBV\V:]1c]m-]>uea6fQz>c$7Ix)i[
U"WJtOhM7)^Iv*\N0XS/V2KD0k['w-h?G*M2Tnt.CABW]u]j;]l*Sa.t9(iA*jWnk:qQZQ
U"u,V8?_;Y'j1OelN()arI2w<fe$FZH$ntp2Cdhihi(qzsStuPq>L9R'I1MhlZ+%/[%Vu<
U"O5U%*DLdWdvmlO]hWf0-)gO9mlX/#B4DWaA*#dOY;<=6MH*Ct7#Xut68ns_v/VZ6S,/D
U"+x-k]4$+nPIl[7LM]jSE-8E<f56x:r/PMUYx\=QeyrdN$m'OPfAt[ZjhC]K/HH?JZhw[
U"ZX:mCRqG\G/N#xr2jq7qWkc1.N-3C(?I$#&Vh+*2jpwUaK9Ot%w^2Akk\61)R^,8'49C
U")CF.<D_GR37HDEvKKLN03gGP85^.?hrhsX?^1d<i;qS]C$6$bu[+^JenjIiLqnKJPxvu
U"fK/hV4;x%C)SKmsgxHIw&fab25<C&hCjgRUav[+f2C.QL_74j6F'<X)Laz'+04Un_)G.
U"KPT.Ard(GaBrl_>8xPmqSU1d3kA$S2W5j-bR.e?va;cKo8X/YgrzU[i.RA(p7b1;=*Y1
U"iLLZRNz'RuP]Ni2&+6Q+V;UAlCqFaW''OJGMRtd8luBnm'P5qQZq5U[zLTtmRzp*/.-x
U"0.y5/gNnXmN/^9wgD4nQpH%.pD/Zb0Y509)bY&0B'K?[ErR-f*hBDq6[-R',#/fx=Q9X
U"9\GbcC.1F*=0x+<$tl[=YG<c4jh5',h]y/%j:IJbsgH.VOMA4+psGL0Ug#:CEqDG;uq>
U"p7N?/uHQOWf=4Pr2A#^REV60uk^W)>EYSq%f5KWF-GHkLm7UtS]+t7Kn#b7&UM^B5GdD
U"Mw<u;WjGzazX,_(0b^<>b_%Oh8[n.Jp2;gkKsSmA_EZ/KtkW582TP+4gkNrq8Y)'<0V8
U"xovw.7s%KhzaMRi,XpYat=2F&>OZRr\\:IZwq4$#%SMoms*tbs1;paf.WRlo:b'W.Ts?
U"4G4w,Z7-QY4CWll*5M,y=LJ9ybXm0#2DjqYGILfB)DJ&HSAqaf&;b8q1%TTWP$pa9C51
U"HB7YO0Y*3ku.09_yIlm[j=PgT5KvXGP6:#_NT+]'<p=inzsYK;:_G\;voa7IZ*_MV0yn
U"JOTo%THJ(TWazMjI;+zT02E]r\O99n<JQ.]K.HseI7$,4WC11DW$^p0c)j<kZxj$erF,
U"5,V+VezC<;GrueuB>';o'$#[u:c%%7,^*sh)C-J80gr/dw*H1d:C5fm]u_Y?ODG4uw^3
U"-i.w>Z_Xu%p()9%%%%-7%#7gOENkF*eV*%+%3?%%%.%%%%uwt%qngSRgnNg<X>[]=5#X
U"PNnN?t<']o]7NSv&+4t%Fhp+8Yka9Ep0F2-?IZI;1lM+NvTRQ65fEqDTi6fZM)_]dClH
U"EFeHIobNs==%tW#f<R<<RXst.(ql$=zsXADBCgKBQcZPG,aVj,E+[?RU466LdH(jTUhh
U"M#BQj3$Sb:b9'wUU.=wi\Xj*E5-I6KI8xiIpkFxX;cMI:FoDbBo6%nWWaJgw4#7zbhor
U"7SMJ6^8Fl4MgYE;gVWr9&'pHeHcc1Bkr\V8-m;Y6O-l<[xB=g0AYE+LC<Pn(tgoDwHl7
U"<rO#ianqMp+r.^N?jvyUM.P$>.NOhAgSCMXaVA\Y*EfHN7-/;m'ie<bKHaE[xZohcpff
U"],U<na#A,_j*jv4r$_]lLBTedSS-adU1Kw$VL#Z,SRvF_Mb$dUEBVtXHn;8\)mdNLuN.
U"c=8AJ.kIpU,Cc9A?QsTe+J?F\R?]^CYL,hu-,XX(*U*.bsd>Vmc>1O$U3PmvIabnjVG/
U"OGF[<q5;V.nIMc3*n4K[#r;buXPDnv4v*/2MLZchnoD/bEdxKeunK;8rhYiVVS'h'T,\
U";?:_XRtcp'R^MZrU-CN.T:s$(BKE5c02'RB^r,%%:Yuf.?GZXV8AhGVG5N,+EJEJGY\a
U"bO5leHNzsXv+8I$tAacg8:Z+:9j?.u)c^prFgT4Qx?>,^jN?1A58jvr8?g5:]0gUMNcj
U"23OgXQklPjs4D=Js7Pz*k*-a./Eq8cFbZ%M.L#NonA]qlj(t[CmIZ6t'/9]IoOzk?1=D
U"J'spSMXRVIG)lNEQQLY3GD>Mn4tNs2??wG1lj%BB_9fk:2r/D2JT]HZfTk6p<*;b,d_m
U"HRA,aDJHw=Y%CQq%]A+(>EC1[AjR&\99p-7bX-LFswq?%N(I.Y6]Jm5(G%URbcXe-0TS
U"#DFir_viBysETH?&ZWoH6<ePD&%rcpfoMCT<9;/S:A=Zq>nJb2EnQ6VvUoLoB+[c8qeP
U"DVj7*KDb$DNN&Q]c2euaux#250Vyoa<rw_Ncv)0TpJ>+lLN\RJ=DhJ#BC\kX8ot^Vvz,
U"bF?NTm2Ak:$tDG5<C.N<D5=tYL*9z_]#60^,q0'D?Lq['O053-<7pn%0.]Tn82'v]2*l
U"YM0:QnE-p13Z^LoeD_kRZ'U'P,fEndZq3.),Tt#q&C#/_(^.S('GP4iBsygvQA$MOrjR
U"n*f7JgCk.;<>8^^P>hp7+Tj;uuD$qK^<ocwI>s,Q=2Z0-L/CjN[suU'C0Q',*[.79=5<
U"8GdMESXIKMoP]XFMI.KcF-U1w]B>qs5*cL]ivAH0I):v9/R;[?P+(*xMb*ToG:CJ7#cD
U"sq9<DRayc2s<G)1uiEeLl%cw4BIa:_t9,mn3jCSC&Az>Ea9zgR;;gK+oQ3a/DM0$QiAp
U"S3f'Z7W;EY$Rm.TP#L7J;U,m=cc)U&CpKc+UF&KKcc-U&SpKs/UF&[K>VW:NT%;<yk4u
U"[A,AwPMD92(]:>c5U&Bs/o.*gOi)dJUF%da-T2#(I;s'=AmQCmX^_D'_7B4E*oJbUXb=
U"I#7*he_7n<7yW>VlcEuGIu/uj\x;o:J3XD]7wULqD,o9;K5q,q:9;4qD,p9;93q.vO//
U"+u%_M*#%Sx3oCf$WD*6(bm$m*xDs;9t/[;>oS4GuTv5E'nUoAsN<7E$L5GRei2s)Sd*K
U"H=36a\>E4E<U=3F\Q=RQewi/P_V-,+)S8U];E$4mc+RRKr=36+\9E$$4:1+H,t8RreM3
U":4E4nkp=3pL[<)_0=(8<EC$?<R6e96=n3,W<7E$i%PRe\?bZvn\t;xRn%\up(%)9%%%%
U"-%ZB8gEabm_W;[&%%l%'%%/%%%%w%jfir%jSFF(F,wp,^SU597HjD(c=Ev-oW0GP*/Zi
U"US4B%?cJ=8u[?QAq^qutTG)IEVJX[GKkb6RArtue+D7fpTo1h_&)86x\=?Y:bnqqQ/4x
U"FM>%tFHem[./Yo3nZa*oC\Xvn5Iur/#P<0.t.nO2-JOSZqkLxW6A=?&HF51Sb/8#^<J;
U"g3U6-SPvM>d.\6LpGvmpHIuGjV:IX(ftfkM3gioa=*V#IA-Ut0$Y6w3\9jZubja87n^W
U"SBrTpZ*j7a'CO^__1oSAx=aeCgDO?<#_r%?4I'<b):acu[XrwsDC-t5k0KA5qf(QRb=C
U"&shc<&KolOq?\%t9gcqv*)?Ujr(B:d-0QCe_cW_3PR2_z]iO&YxKdMx],XJ3q&4QnbD]
U",A?]Aju]_&1;oZ4fV'1lPHnB\bv0<gY4TGVd]qRWb6]MbNm1g$D^UznUmA/sAgwMy)y+
U"pk9SI:O%rLkc19pVI+=C?l5n2K>hK,N#,rp;VOD[DV2Y/chDp9Nj4jUFsW)]2^kFUNpL
U"q%;Agjz)^'3]qs;S0TR%JDJplO<HhI-x=<BAf3k;O-G5;XqQ$P?,;i,jx0u%p&'9%%9%
U"%%%-%AB7gE]QFFgZ#:%%]%n%%/%%%%%%%%%&%%E%%%%%%%%%uwt%qngS%gfxu%p&'9%%
U"9%%%%-%#]7gENVkFeV[*%%3%?%%.%%%%%%%%%&%%E%%+%,:%%%uwt%qngS%gnup%&'9%
U"%9%%%[-%Z8IgEam9_W;&7%%l'%%%/%%%%%%%%%&%%E%%%&0#%%%wjfi%rjSF%FFup%*+
U"%%%%%(%.(%v%%%%pB%%%%%
END SUB
CLOSE:IF S=147AND 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
