Michael Zito                   Charts Using Rapid-Q           mzito@aol.com                  03-16-03 (  :  )       RAPIDQ                 614  40567    Qchart.rqb  '>>> Page 1 of QCHART.ZIP begins here. TYPE:BINAA TLEN:29691ă'-------------------------------------------------------------ă'                  INSTRUCTIONS FOR DECODINGă'If there are multiple parts to this file, merge them into oneă'file using  COPY PART1.EXT+PART2.EXT FILENAME.EXT  Remove allă'message header and footer information (everything outside theă'">>> Page x of..." lines),  load the result into your versionă'of Basic (QBASIC, QuickBASIC, etc.) then RUN it. The originală'file will be decoded into the current directory on your disk.ă'-------------------------------------------------------------ăDEFINT A-Z:DIM SHARED K,S,B&:V1 'Created by PostIt! 7.4ăSUB V1:OPEN "O",1,"QCHART.ZIP",4^6:?STRING$(50,177);ăU"%up()%9%%%7-%'gJ>STH?x0$4R%%D1%%%1%%%%vhM70ACCjGSAV#1f,<xBS]=;xăU"6XfvDCETW?3Pm'nS66G^5-2_S*'a9Ur1ldV]9so[=Qr%<k^6wsJt*+\Q#.#gi[ZăU"VNE=Z*vuHrKbmJWLb%7e4qsblE_u>G+KW,X[nF*l_6MnLhNoFRs$x9_bM4'lmjoăU"VCa8\NWZf(.Y8[NPiD=hfF8L[LVb)=4,mrdklQvcFYLL*.389Ds(n2cD?rMnn\2ăU"i3#tIt<kKG&x$OiKCF':IRRL[(+at$811DOJdCYIFgvD%j9u[Dc4bfUYMx6u*H*ăU"D7ndA3BY8t=0Kdri#/3_I=0ZHes-aodJHBc8.6XFkB#SuT<4xYV$x\q:*W:2cZ1ăU"4=l*BR,q?XpY3r;%'RpI-NY[-lNXOG])rOM]1XXK_%C?L_S]+qRc#wY3'Q2N=EFăU"#<[NsWjf7uV-Ebd2N]SN6%JWlosG1<iL#S$>4TU]RNZf8pU0QG]coa6s?o(F+)băU"nHS7lwM<_rT7b2M\6t6$st]H38Vlkn)m(ehbmuJ>kiHt3&2SdB/\dbh.n7YcV/_ăU".DhpMSr&TNCvq'p,%yt,_saOx(xFBsbW13wh8#rG,P*RTn0B#m/0^?24n')8C$uăU"ASgqqsvqfnAziKY)&Fu7X5goJo#$=gTQ+4./-#FbOKiR*Gti,)/u^;\imE7<WA9ăU"qW&_Ky9YBjPh&8e8^XEhoyqGH;EfDP;)nJdld+K^RA\=9i>GboblfFR%9Yvv)=4ăU"3[DJ>c9TGL4UJF;1I7x)by_Qi'sODP+3C%.-DUR0^e9[B[>YTd%bxdG_3^i^eQAăU"4DCM:8*Kl^akwh>&<2m&>iq/I<I1'aYugvcOW3F,DrxD.k$p*;unKap,hdn^B7%ăU"nAxOYPy*PetK;lR2y4GuF7iu0&fllj=P7;bvt5nSyNT\%[9Su2ENUADS8TlW/uJăU"kaRY2pi9hSE/y6Hj%um(Qwg<9M2z>*W^VGLj3,O9<9Au)i*;(m48,jpGnVKG%44ăU";HmZzt/Vd]SBhW<x6r'7XVGySf?fA1fW)4z<WYy_&y.#)j;)R$Gxh#Z,IqTtOp<ăU"g%n2JQHIj-LFug-N3zb>RY9j%\VxRm<vmgq<*<f&JXlRgow)0)y,suM+v?:n%I&ăU"b+WcXgN::mR;rK:b;7jV6V?O:Jp3BI)oEpEa'WOENG8M?q8f:7#33/P0UzPeRSJăU"KgeahlyqbDqo]>u>X630f%>=u%H(avQ/8/)v)rB8Wb1^FF3TIDdDU0f;n\Q1GcHăU"7C>+^67exkBN]Wib%3<]tX4$U1Vve*_5rc*X=)0g[sEYseIChBAm[=Fib<JEc8\ăU"S+.*s=VRQOE;:1ZfMa3vsE.PTxT-LrA?g*n_%^)WPY0L00][s(2D,IvO9C>,^F)ăU"v]fR\837FnMa52$G+,&AXXlb-Yvste>DRA7_nd_fI,uGj'VG(1wxSuBPWyG<lUXăU"AqDI#V8EC+mM)R[uLUNj-M$.x:<KX>5_;s\m:sbiGFV\u?q2=7./.=j89X*$84$ăU"IS<\nq6=gpqQX\q9fJUOUYd'Hh,Ja7YGfP=4xb)52)X7p+LM007_p7i0qMA4/GdăU"one7q(N<oT,YTU1.8K4m77U^X&0_3R,jV(Y3Wm1,+1J$laW_dAaSJtSu61K1jCFăU"P[pr?CGsGwaaRLIaW2p'tHn1:Q('On?q^lXF?dWtQZ_CpdE_#Y\n.VhhnLhXu+]ăU";5hqR+%[#1#60iJdE0/c(LrXe1:lV0timR%kXw>1HWN=IUBD0Z?\ER&'e)]S)q[ăU"GCbVYoP]9,F;pHe5tw>)sKgq/1^kpXiLk*_/-G\ErJZ'*EbPHIXX8=?Yl'>;;)+ăU"(%zs0FiuDW)CbtdYLC$*:?BnV]aNMya?ZZs-KC0%Kah65FuJ>-juJD1gX5DJ7LoăU"S.4&51p>zOPUG,w2q%.cdA[I&gc^w&VfOBw<:HX%BMi^g/4:z$KN7)<>&'Z).39ăU"hyJF-3Z[yf?JZ=I+_HSJvNL-;ZLFohPuS)/>cVjPk$\7/*afqHLqahJQB7TEgZqăU"WhQN4:tcnTJQP1o[oj'[v(l6pK>AgOt4zT.rnG-Fhg#Am88g.iHDA6?5<(r^=rwăU")\OF6\P\K3O]Ro$je6v(i%>\l&LH3mVbSOwcj2u?Z/39Hxe,B2\InhH1*sN.F*IăU"$ek/Z8BWt1l5=-5p,EB_a5?Wok>+r=^]%FI2^yN&_j0Oo3Sh>=EFH^D+Wc,AFoXăU":mAi^c$j1o^Bz'jrCUr+YweCgrl=P2[ArN0;$WQlo1ON7CHhnq>)G^pu7FYOoV]ăU"N89Xt#s1pzwZGqaY-G[qP^+<B36rEGeGh4)cno,pi._W8,%+1GDD#j&_\%aJw37ăU"25$f*RZp#Sgi[^e:$Dn'wka?4&f=-gx-P,'0[3'>dZ8w29u_CSTBOp6viIr#8LlăU"tqQ]lXO>G;qa_73cA'$L,L_0eVjZEVXDwU&+3B[c^3fT]f>8Zl<4kj062%1;f6jăU"n<N7cYg<>/q(f6N.9Z%:$Zbg8&vm0_J2dg^.6lsRhAH:h15zKxn/xC0OT[':+xdăU"G^=U<Uh34*j6RO2#xC-K$rSK2dum7n>>Hp9B4P)<q#ZB5loEKoUq+O4H0EoA(>uăU"d?8nJp9IaDh0Ag_X87E&lkWX6rk0?0$&lnHT$-lGIIaXrQMVXzIXcIaHqD[B+=FăU"E+QA;Sj=c:SwZwR$CYKJIgz44XSr-.r3cGVr$v9COGa8/NTfnG/1#AZZ1=qXSu?ăU"<,5W1<i0=x.V/a[vg/QUM&'twH?mwo%4C=#U&BGu2$6NsFHQ]]dmf:PA^Inn6aIăU"k9*86Bwf._N]p[mM(9m2'&bLYi[P(Kbk2.h)8VL+V(E;4Y;9ED>>?PFAaC2>OA^ăU"$le.GSdp9L68k)-62(e&Je*SHd#P'*\'gC.SN^+ZNh1Iht+#D)7/K[^CSdnB*slăU"hkZ1MP+Q10/d=]I_YrP.q5D<.v^S45T_m?K.,2g\6/5_G2W:aaQWG>JxbuJrv?<ăU";F;5CH>V3FjKsxT6%;H^E+aO92*MNQ6$K$VbG6r/;-g+P4[UU0co[E..M_rRg*>ăU"MPa[\t-[NO^hm7Ejo?wjChH'(>UxV%k0FD^?Q+cz%.XiIF=H#cv\rG;OYY_$I;xăU"QVc8s/5xW'dA808jqO*Ki4xYGCpxnGMaB,'H$'F:(FJV>:N4CU0^7WMO#sbA#v2ăU"9d663lotFJaQPVUi4&H8<xnK#i+*xfZNox%QHA\kJbvv&T5N>UGhQ5uHM;KR0R0ăU"m??=oVS(\fAm<8&(:8al';U'w3ZbRdyntKNN;nvAHJEChu1K9l.H?LBD>,=45cVăU"^OSKCy>^Z^.3ye;tZ4t?B*v6_bexc0WUFIgcP_(HWYEd[VyQTr?j-J5I6,>Q$\[ăU"P\rK^9RaA6j]d:ib46JjTa]II/_-SHF\E(r1ofW?+KH$S+l#B=v:F3^uO5?q3*MăU"f]9fYoJG%m52*SSG8_0wRBRO?r6zS6vk&a6XNb#+6J36Vux9.=))KTwDV=;wfQsăU"H3Fnfj$0KHbkf5V\kcV$F/pB#LnAz+iWe\lr%fHl*oJ]&0ZI.zKrbV:#DZ:_Vr&ăU"X8PSb*XCSLN19'zxpkYP>phb0uhM$gBK$mc4>hm^]2?k%=B]PaGGM[5XV/]BZ>>ăU"sq5Kh.Dc%1FR;sB8lKM(_Cpr=00f0;+m\Li_0dkWOXB;LqHaBQ/bmY7l]*Npp_băU"I7W0?-^UCWNA'kGaE:0WrL>:$8Q__\Er_1$LEl7Z3K5'.UlEQ?*L68uJ-,XQh(căU"09Hiv*%rghfRQ3NyGk]q^i9dC]TE103?aCZc6whcdKNXe?L_fq8JL16^Z%.kuH&ăU"lM_CG,LNc1mG$5FljIWH\Gldu3j;VYp<mhE*)j(LM\u&;ke.M*+^HPrt1fVJPXpăU"Qu>c7qR>4aiQ09G:J_\**8Hw.(jEAttK(^b*jLY=;4K=C6KJLxh+F/<D_=/xZ:GăU":t>LS.XEZ+0_WEAdN<f5o)1#^Sr.9>FKG76WY]AQT(w1]klHQkYkT)_+xwh\4NVăU"'6]DlxIYxuWN)3uWKcyKX.J:8&b]t9dZ#>7]jtjavSOnc%StdvO=E&b,IIsdG'7ăU"F;z&6K2J_?7a44W6jE>E(;R0bc_wR=rRaqhQ1:U;u&V-5E4S^\X'6(xnnQaI&3iăU"$Fdz+,EsOQr-kRY_IMm[JY*1AXOJP2d$I&INS%su,/Oy'0:C+2g<;#4E:L/X7MEăU"n9>_pDVY-t1jP^*jQ3*.dUHcr=J.N=D^OD.K['vQkJ?uI,)KAX<>7o$6k?dnj=căU"6Gj)r:]h68*;BHADUR6AYbg,Agh(pc*X<MESX5_go/wmoriC-+QgM7RosEA'PN\ăU"RQ#<LK4c,<O>uY]wP5N>XG6^Q6\BQCP8bn)O:y;pyac:K_UM\9Q%a0t_*tGWO?GăU"jkC'^mO92-zug)vu<oKZdN:19M1/l;SQ9_#FTOpc=]N3(+U,QJ]#H%wj13$dD+&ăU"g-;&Y66%_&H10+/\->8=B'1U,LlTGE>)((t9dZkHnx,5wXHRXU]TLEllViIa44(ăU"S/d)a=*FPLUgdrcwJ&RT$9M/HnJ1='6vg<vje*HPG+Hv56VLZg,u3^Dhb#.#fS3ăU"EMO+\((TH7r<6I74JHv1tA#_/lL0HqW4:7+?*P,CSu79p9zeJ%>W=+r,69p(bE,ăU"rJ4k<4<PM)oBZ^Xe[sZV)7aY#;Dv,T+5[0)4-ANUy+=j:4T+_i)3Xbwx^cJGCNCăU"WnDH5MNm4k>%D5bqjIc77>5lWg]S9RT&w)_EYijQTp45kIx4Od>D5>GO:P#l2ZnăU"Tk$jt5OU[Bc4eF*B^db6Gai+HPZ8dni4Y7W>qT]J#2b:&RAwC*tkM7KL$^I7ua+ăU"p%(yqIr'$SKdEWY9PL-,?]Bq=245c\y#\JZ2d/]cGAI+o2QVF53m3U,ac[iuA*WăU"GU=SU0ZJaD&$TRfZWpaQL:vC7kQeDC?JRY4oBsjMfH+#MIVK-8y]P6S>*E'pMc[ăU"[EjBsTaa8<5$9NX0X7uD^;5VJ,tG33<fHZ_:21vf[DsrMD'_gJwen.H2(NYHZ^lăU"n3<7(K8qO/Hy+l\%L)L$N4\W8V9fExqdNZ9PvspdU9d_gKEf*l]So2W>whLm4RBăU"jv<EJPsOC0WZP&K9Tc]O0a/dZRsqVw'L,n#OStL?)a;d_:=ER51f?/R8?.r&2izăU"LnL=)OnDX9X5kG=?i9'>uBSU0u:L/=CcbMM5w%4up(%)9%%#%-%d^g>SWteb)([ăU"Z%%c%Q&%/%%%%vLh70AJCS>1P9fL:AF#^]Hapb6ow(P0Tpm+4TRw[MjrUJujo[JăU"v>9DbmZ,,,v:QdfoAsOrdj9DB_E#.%K*,'4^MEam<4K/tO%7)f5I)e_;f%d*sHLăU"8ZEWvXvIe?<slSn>T2KmNY>ZRrnV/?Y6\FnCSRn(YWu\d:9#[y1A9RDI,VXY36jăU"l,_w>>ITTT.=$\kAFf]0ux0<w47FbWKQ-k2iA58k.N?V>^0';GV(A<I2jV;I/#săU"b*<uTPK9Ou_[:2uLU]F_%bkGG=<.]qR^l]4Z+s^6FS'e_m^+Iqa=M=5r/%c4x+hăU">6Fie7'O>^<O7=22ElQiR;aE0,32lH:aSV4,4^K%8[/KGr>)yS2fEQ(>oXp+Hu/ăU"Z%qg&0ZZ)r,?A?:aD/rImd,%/EMqgmEs3r\bUQX<g1?]^8fcHww+/7QW*9E?aE)ăU"3[^/a]gq.C%G[m0lJF:(4#/F66E20pF/;LEp1;Eh<?\%X+ip1E.YI;jTI9&ouX0ăU"1hwGAT/%QH#a/ZeO6JHY\3?0CLe22E1B1jLHiiciHX*t0ls9=;MJq/UVw6JCF[ZăU"uN:+wEqGl\]i:lO$dc;UP[MPzV(WAER7pcO]H*KndqdMt5_?R]b<TA7XUTeUEq(ăU"9?aLV94e<hgU=O$<7??+>5;Boi+A]3FGa)J2k(]V2/_QoU/D<=Y1$1]Va,kpqoLăU"'Y_s($6AvrHIVE^etlmhP?=EZWgei#kqTB[+$>[FdXE&j:hw'_FnPkAduixeulcăU"a6]8^Y=38jil^]IKqL+)2bAkL=q=k4i%j[817q#/:e2<_Q0%g=KZ[);$G8+)l'săU"HYEXHI%cOV2p\n=U>WUd,V(HAER#7>qMY+am?5v..dtpU>$kw3\3+5Ym+k+;7/dăU"Y=N3]o8(4WT/1+KjK$pkcBe3V\Z'HGk&77f<FoPr=*<;k0)CBH:*CH#0f:UC)f9ăU"MiWc(S(Ao0,%)^#&n'HH(<nA]xXLv%c-9i'Y)j&)D7+G2e)K02Cg4yCUY*UIU1xăU"u4t:36MyFQ9BpS4x<MV_7[>$,B*]O?N._R-q$(Pe9=V53?dESbtd'5SSCQXe+(măU"pY.HKTUjkBaT97&IT;+A;KFHAWVjPVDH01&7US1U/Jp*qG7%A0Xs%\NNqTQiLTnăU"#C1Vu>N[;g]T]4>-eNPcEHk5EculT8:9e;O=+i,,XDo4E=zV;w/O9WI[M*DoMJEăU"x-J0NKLPq,itg_tT'dDx7+D9p=MXWqRRs4t*VhwgFPY/As1.Oz2e2[Q(5VtYJRNăU"jV/SIWe[U_n$63Fe+&]eW[MdH:0FMsP=$i&h+5YnQH4G>Ytc0[1HVhL48_W7Fg^ăU"%^/]5/-.;5h3R3PBKI0s*+1S-mfPV:'l0CX&T]FKVV4FB1JQw_I:YRwA_r_rK%VăU"[d;'.u,z(25o<O--:KNg(>Y+l/ogPTELeBXO*Yhwm&u;QM8i43#NxJ%F,OY.](băU"ZT*thDNTTt&q+pQZ4qbPeMTJm?2P^mgQv,o.uFF]eWCPam6-sU'dn5b#%vSSlO^ăU"VUWh]q&:J+7[C)czkX5qbPeMTJm'2<pg'=e-Fc1of6o8enwn68Ch>5sWN=D0L*AăU"WA=vewRPqFEf,:'6($2&t6Z(2*O9y1VF$%4pgBJSEm3OSg0L8.]KBl%5KOCpU/QăU"R+7\KrAuA&;a6:Rg-X#P?5]-z9(OYXO;TVIkLu;wH0*w--DD3*<.)pl+]Do>iRGăU"B,.1<7ss/AkXoRTi_-o%X,_ONo1+7a>59>t39.SdzeW<Ev=1gz]Z#8vdv#&OL02ăU"(_J_(/cwE-5%X7CeL/ppK7$MLVEGmi),t]DFVoBK#^c$quhAmX(BlBCZ8Or-p,băU"ECmm4Q/WGxcJd4(0hW[g6-'=HWUQxm>V#l,LJnfuaVuR:Nj'r>$m%h==<\01K;:ăU"Z*4BIlTI:D;>7PP07u-6'*51bN1v44,3?7lX/(uRc?<_+zXlN])XU7>GIsDaiLnăU"[A,FK>YRra=Ld,3F9>-ba5WP#a:3f>m>cMQ4aLI2;lB]xF\K4ZVJ\lyi.$vykCRăU"V%4RC;P1l7#)cdh+p4rx$0OkZ6KdHY7/X^sbtZpzA-m7zEX^3YD.a]aOL,[0y]jăU"3:sqo7Yz(7;.TurhDD4I:TP/feK0;eSxe6CmN[acoHh\l_ovctqgLQlhosU$Z>^ăU"j>qJ&KJSqum\rKb]/l4Fi8uJm/Pt6v\,%\LlR?vJ#BlaS2FH,>y6G:,0_saqvquăU"ecaFEJ4#4>$j6AIIq>&fBag).KsC*qtYSP5N0>YX27*Rdn=stg0CuQgTODt<]K,ăU"C;1JA7V>m?'uZZr4qL;Kb-Kuk^X1Mk_Z2DLL^?uva$YVS+r6thbdzYnqAmpDP-tăU"uYmUdQU>OS45.:a'Xs3L^x5T)kpW5$S6LN$6>)Jm?8U]Gdl#;^Ae:Ja(BQ),(THăU"Wr_c4Xjf=nCxB,CQPjP3P]L?M_f[BChh='lj^Q,jkkCHq_8>WB-\\]_:0#81o#WăU"0<4F:vu(%H2x<q(9,ZNN^#*'&SwJXB:-Ys*Nj6$93M^*\l9O?0$lKdEhpcTTt02ăU"FV&equzZ>a6*_3SqvkkbS*^D4o/A)^wRk#LI[>0NWU)6WJaqdgF5DCJREY/iu/EăU"=KS'P=%Q0)D\aS-A%;rfMlJKR-f<nF%dz_'s#oDknQeKQAasbXfp)XI68ZspIJ5ăU"%b)UeqZDUUi<_dPFQASP_7+KG5UT1&:>V+t1-S<>WMaZ2s>*^*%AP<bER$KmS6ZăU"3R;Q1:&cTG^:j.*(Eb54BEr2m^2iP*RGL/(''9PA#_yi2;CeI(A1^9E/p)&*hZAăU"b&/Ua7&Q-Uz['vJq85,7S:dl&9.QQ5N/:6/80i>[W3.+yTAUZc+r5_,_xItJ9ilăU"mN30C/.jrLq6yT%79f&QjJuf8Io\Kms29.&o'D&eIZ/pc$Zq<aMe.C4;>rYhkqCăU"\Rk]-mRA4l7.I?NA'HdrO%eBk>M7/r_q,Vlt:53SABT+bJDns8+.l&ra;Y#VyR%ăU"Z]-CVMUR__N6Sp[T/R&k'Gr,^Lo'(g=78Xv%BU7B1LR&N1?C*Q01*.Yo<7*MsSmăU"gnLdE=113cjS>>_sjh';ktv]Hpc/=wQ)fxb7PY+w\ck;\fs#Hi%U'g)2nQ77>+LăU"kMd9&Td/90f*\&9$l[)b?+)E3Oz<%-fxiKi[c8T?>O3YW;>%Nx?0RW#2UK>o_vhăU";o2YeAf[>df-b%(,dOH/f77\tkx)\O:91W8s]nBb;iF0qnzDktK+%RNN]tN#%8?ăU"[+Dm/Bqknn(9QIdLqb754VlR%9Doo'q8dvcUlAgE4l?p37lT,.\8r<2llqmt##9ăU"Om\U$q/,<v,o[gnrN9-ASSOUKe6DGXXggLcFtnWW*[nhgCXP/Vv?0UjIEn5o=.VăU"Tb7tq<=Z[7M*gCX8RYBWsMj+1B=+K,n1EcQmNS*=&spu,:hXh28M5ciA]BkBf-0ăU"Yb2YR_opwS<d1n?:9UJ%U4,,v)q;V,OX;ORS4]]fi=,reRk<0cnI%GI1iI?FEtjăU">#&Pthn$:$a2]/+OGSkYBvUyWxQ(B^:E&'a2S0]&MasMD?3<,9S/.)s+^gpq5<hăU"h\q1jHXSt:.qjCTsCPH#ljE&MMCEv>g1#bRM#BvYXkV6t-Tl%]TitN.Y(gOfTHwăU"uO\ZAPj=W?8_JqFgU#Rm$v%Pp+rnnx?7P9HQad$]n0A[kxf,*^B;'HXG\cP8^.zăU"Ejq)T;QW1DL12iV_22Ye2V7z-Q8S0G18p,.hY2dd0/IXnV%[,r]::-^^cK2[ItfăU"uy(+*u+(Vpm9g3$n28G9ZZRUc-%P''L/qC]mwPq2d427IgnA:*sH0g^q*p++S:făU".7kK\u'+'g?#wvE>795qUmCcP1n6U]d]eagnqrY#]uWX:B+d'\L\#\ZCFv%F'OvăU"Y(O0okL_VKF>0R67>AJEC,^rAaD)sNyby,U_b?GL\CAs??#KfKe\<9IgcHCfs/DăU"dit)Rh0NL?^p)e;4a$Y)q;W,(AdGhGTeDDkSe\BAI2cIW(AI4Q)5d41R,=NYQ%kăU"KEjCqeWL9jI_+3U6^c_sO+dH2E)X;ta-l86^a+*9oI(Ys-OOT*C%NL+>R1#jInCăU",dnsA=F%OEUY%Q4gl$q(EuBEo89qju;/ng%<r>wLb=Q)-U'C&Zten<^T-ZNmNe$ăU",\.t1YW1W%Q1=%,*R?;h;lhEU-ijSlv%p6ps1<;fYAUHVs31E8zP't/4Sw3?W4.ăU"^KN2Ad&dyLg0-ozAK''?'7(E_]<2mM(DwLA4lYCJYXUZW-mLl.:NHZ(EH7m#2TWăU"aMa;UWE*k\Y>fP5Q\osF*HP$O\AN2\Gl+Lx[Bs9j/;$-;1s)P5.ZA)8Q_:^bqKKăU"?OoKU1MyU)ssOe6q;(NqOjG-iV1Cm\?)%xQUZWJ,Da3Ee,T:rf%,93#A/&VZI'KăU"WW+NZ/P#wSMY9c+nQM/)1AeG]<1-K+?C^*ysmfUcmUqqBUC%rx8aC)*+c.&N/uIăU"rJ&[Yh(92C8Qwca.02G5]*C+8WnobiDty'[jXCC=Jj]f8FJ2A4WRVRkbU>K6i:?ăU"1HN'hdAzz0&_/jork<j)-?p?%jt74U*+6>\.A&:mNN7KF?;DMBD_/7?bR\WG[R7ăU"1;C[O_hatL_t.CZ(=DV&E-kQZiUnsRaqD2?[IXKgDG/?p9;4oB'1Y\rb+/n*%jkăU"iFMB4j2x[jpEo+v4.ioz_s:;b_M><[7j;GeAbJEFB'?Q#:>]&'(TC:y:I&Y2MydăU"%$)fE6#dTQAiF5QJE>;%kJIs(_[FwD;TN7&TMuc.j#%RY1L>b]WO$lRn)cWGs'măU"ZL-D7Jl/D\4^M\[J#T$F7hL,%B:QMJeL0FKTS8p8y0_-ZRfSWU;cl$H,TXZX_acăU"q1CqE:2^CJdZ/j#w.;p-J-bX<nbcRYfmOcb6NU=Zq,5*p5Kc^aEFZ(efrpITQinăU"5xL#I3DKsINukuvpfWd[9M2S<;eNPKAFKfp,,V=tfg44d1<$#&nB^H<MS4ojp(păU"(beYph,oFXOSkb(Ys4lqc6Lzm9#G$N<gI*,Ql/(5qvZ>%#W<v;g0[m[n^D0T-mXăU">X5Va7k^F;<Ln1hm)KLzv/+K^pN67a<(FtiDZVEatl\ATRc-RetwG\hjJ8N<FhUăU"SEJzfd-Ag37Geym+AFnLt7Bzo1V/2gwI5ERr\Cy\pNmx-<\x;p>(mL'7>PHc,8dăU"78IPMY$wOv7n,12\M..n.m'emGD,l$PB-W02?#(^PR5dFwp27/Q2z.'lQG>&>P^ăU"GCEn(.wWq/Jtv3_>JLKFAS%%p<f3c;qdwQfe7?T>d\BS;)xu7-j)ZBhnoM5\Gz6ăU"6W=$,aGkq8N)<Z/[A'RH\#UR/1j./?[7y]bXDBUvslvwWVjr<b+\FZOorX&dYP'ăU"Bpf8gNn34gzac\.[d?/RD[rT%=_leI$G<+,LT#,z2]K(1IiGLl:x0fi+VDN9AtgăU"fU9pq\C0rSkxOw-aA5S13pR3M3[sRqXn:xj3&-:cX0FC-5/QJ'5bRr4EFsG,ZbGăU":[Y[U>5gljn2?zx/LrK5QnenF>]n)<HSHILYpGBlr;tuoL-S*zSp,gmFL=[P/dVăU"6Zsn(#E)S^F4l+IPEf4k-ZZq2F-8fMT+6J_ta3'?mcOSZ3DL<)S+l]sO;\FA#^ZăU"J#HuB=U:QOtI]_\Gk#XY5Ku$&%w_D2hbw2E<_O.b)6ZQ\Z>>110KU;C_G6#jE4%ăU"ZsKrY+d.'W7p/,zr/;$YNU\cCzC.CbcQ1V4WT_d393%+EaMW4mpUeRjQ)]W#K8GăU"KxgFWFJ,-do[ESrw%reF1CBuWZ'NzRz,v-d%u(Au$V:YgVdv4Zf5NP,+4s*Hu61ăU"RcSFF9KXxC]nfcu6+1YNOXtWvaTkOK8lPx->Q0YJjeQaR>G(o/2M2j\Qd*_u_b1ăU"V3piQ#y[F+_Ei$YY4m]^Y>4q?D)Mr'eaKg=<+k#J_v1b'S6<DY]=%YC=)qUHUw]ăU"NY>l+c>VV%3a]0zJF1nxC$UPF_V+2aDkpLcV?(4YSuuj(\G4O]pYWPkbhnmhNwgăU"NziT4&'K.OlF/>auz#8Ni4,9eL8R8t*[M/o(Q5vE;-_s=Tp0OENFJmW>,gYt:8#ăU";^z5qRkTr<04]yH2.$-gz,+*h$(%vkbht%l21-DsEKds7kG^r7ac]O%kKpH5P2&ăU"Yh9DCYniXa&P+Og$)BAFaI/jBV_vdp=Ly?O5^1U\0:6'/P:(A5>,D5=e/my3yKCăU"r&50ZKlpu]f5N%N%[mKVLf<U?5JG%&_#d.m'f<,7f?4-?I=E'A4[mE2lx6b1/BtăU"#&bB:>:s6[1a,[$89:+h]DlmW1Z:K_=TF0(WplnEiaNzW?T]j)9KYM32%csxC>răU"sJ#4q=9&JP*JhxFIJ;Gf#jGHZp4qie&=f2Bo88_dX+ht^^Z=P9+On<KZp:T2l]VăU"eRWLM$:s;3d-ej-0[a<3*b'-PZlgYE,rtpTFx^x5P,9K\1P_tAv<-%4+T/+M^bUăU"5h18Rcea^JlAz6w>J&N=R'2*kaE+ErXP6_]g?(N3?s3>#Sl?H[2]dJvTBH]VZ3văU"TKw9=5mw*<d:I/a.1L+2C&CIHejB>[B)G4ZK?73Y-1A+7pva[;l3Z_x)I8*U_AHăU"aNw6<YROfFN.apTgT8_1Ll7&4Ck(pBpyBf#K.;*6KVBhn;KlS_E\]#C6PBY#,vaăU"k5dv#Cq/W^*0K4J[\lSq;1)8q'ZeEydaNW24x8#7[WqDi9MGV:t5#%)Kfp+)ZJ2ăU"HCN#$W.xVP$$=(UX#\\#]2/FW71]leDUO?L5xerT&ZP=<0)e<R(0P42;2'2KEQ:ăU"Jt^rMFpGNTn'$2D$i5VC53O9+)/2C4Ml[j6:fAyoCl328m<lU'tM0;2*-B8h4fxăU"/vIbuN'w3)89#-ASTZ5r2DnPj>w:;oiNYe9SwBrOX)+S-0+MKxz6KA&EcEHd&;dăU"XX*hgZ$NH^T\vcJG]'%nQA6sR]la*u47sRT'd:3gZHlRLKc*AAg?FLr*ZHtdkf[ăU"c8J(;c'roKHt\r.L%U1V*.4RFd5?rKd>[*>g69)POl1=Fx=A]S7cr[xo3TIy=LfăU"5Y3#W[3;/C>4;C?9^NS=$^+,68Jf2;<si3QS>&j-iCQ?E,.9-J)3k)QKM+us6hYăU"Pnu%4Gs_T'ccW1m<Rt9EZ?:'a/166*Jo*u-(KBl8ZR3brxFk^V*qe//]5<UG;-EăU"]8?aZIvT2_czg+w1Nme[p,I;VyEbX?'(^a,F3&\<ZN8+;ou(bVi/f)B;VTGP8\HăU":dy%]^]FjoXROe=Kx2A(K'3U5;uH3M3/'>+Mc_s49R:#'6B+O1azk/W>=i_7^oKăU".fTuw_sQRaRX1#nC&B],Y%5J?CqN<Jf$AQe-j]>=DFK=z*c<NIL8,s<qR[0rOodăU"oWXA(oN[Zcll&1<X>K0R=:ia[efnVX],iU2(gZ&/GXT\0d3EKbmDS$E7K0e03*_ăU".Yo4&'\1P[4^7bJ#;3(M1g3Si**e0XS)[599]_Gp5?JFI>II,ZqIm-z9<:n4I;văU"YrfS7L2#hPtS=Q9*0>6i[mLHk9sTTWb^J8yVBCrYN.QFVBQj6#l;55ar%gLXGU.ăEND SUBăSUB V2ăU"kc-c9+tnk(7JGaY-MEN1J1.J(+:_Wl&5WWplJ3Vc4&Nq]4zNC>#s8uOZn?pJ(__ăU"ZsN=POAET[Q/%[8*22V:vk7KoHfVnv<)&vnkl((^qX<O7ITSyfstfg_m#g76gW0ăU"8bUnKJ%otn=<='ehZ^pAt3_aJXtNkprkKh[v-#1Q2,T5#6bV'<3wRPh1)$66+ETăU"Rf]>]kl^aUvqHiPpXr+>4S38^zrAe\u2i3zlE-4Rq84yx_*v,O[<O_MMu0q+^Q/ăU"7k?j^C;O>uE?8Luu;+8K:7TfcemCQt%NChAC?>s3osu#i72TpC<,K1ILTgop9W;ăU"AP(n(VZG?Woa.XTme69lt%.WlD]]Uw/3O9uqTv:X;o07f-<K+2%p#YQY8I)EPRAăU"gs?W,ty;ik[&$wKJ4pxlO=46\ECpP]<H.JC9WC7pK9'h9\2O>liJU(s34>?B$v*ăU"eJcQ]AdQAaTFtlrrOpm/5\Kv?-lTn,\wARbWwy&'Y1]TBN,F0Kel1^3??DQ:3rrăU"a_$tzvGtJ$u-9I0LHs6=629:la[djKm,b^H't7:WKAGUZ-+l*]:Kxy7JDvPZetKăU"qmF.*>h]Ow?%BC\RXu<0ZX8td4T>s^=afGe]U].OweaU_l/cfL.zRgY?9^MP$)\ăU"+H&E:3Io_%ICtw>#&vK02xD3qn9XkY%mBs^D.#;rRs;E58jdrG38?m;pjWgwXG'ăU"4bRLJi:[ZZDm;:6xuSnWrGTZ4r7S0n8+P3iVeMf]^qK]H78kidm$p3dl,I5tIg#ăU"#FX9tc4)&tpps]cuuw3Od)LH_I'hj?YaqiJ64e=Ho5c:=lmkIksO/a1/zKA;(h)ăU"'N^v+-AdR\OY-#s&ml<%$([GJ+qKA_LA[\u[.\M2a$FC(>MCR1uKlVk^iRCFM)1ăU"yf6Ix2Wx83ckN\/SEfI.dXIg+N78K]a[ZQ9_G>je5vkP#)_:q]V'ZQB0tOt,T;#ăU"2r^hbnVZr*Z$Z#>/j<:/]::*Y=O5qrj.1)[n<d*3MNDEyB#qZuCzfVEM%/[lOa:ăU"%3s00ogO/.FZY:(>2=Z2b#81HvrXsnkhSF9aWR&2%QlL%RW4$?YJcnZ+h*CDXM\ăU"L0Yi7[Lk+6x\HRJFUi\2ApBEu75'ckwTO/i4)O*<eHDV<\'ljeib7v.+1eh:Hv8ăU"a&X:FChY76j>\(Q#Y;/gx%qViz3MU$?_GU2V/<J=H/jrQ]>WnR8\gQoO&>g.B4YăU"=+NVDu^=/(8ZA8lkEE%-3/?pI5AR;3\\#'3C'WT=.XpdkpWU=nohcBI^:vJ7edwăU"DuT(9T9,Mo\/e2q&O?91Dw<p5N1?H#6E>kyUcw-V[t4OL*d64OQT$6wh2jUC^lRăU"o:%MBq(mD8bi>e&[_SAe]/HKZT5eMI7''+l2K2H]8cIEl]l^GyUkis/mx)R9M'lăU"[$*%#g5D00>XBy=:0Nw4t7X=1>HUadPrsL^T5Q\&Hl9a(T%FNIo/rQFzAj#Y/DRăU"1pOyl6H>6xTQ>gQ#mfVSSG%..^H0<;/N4)MhCOrkAuPJ^wDy;'JdY<fi-p546[aăU"W7-jmp8[Q'(7)*eiF.ek-UA*A2Mpl6EfSBe;F9_<Yuf9M5)F$rL/4q)dofCt7kjăU"MoDkmaD+Df(uQaYoS8*d'.Ta$=N]/3SGkYjuhoHX\lB[&#rDRweb?-5L2l21Zg^ăU"l1[e10FHJfvCr?_1hJ.yoZ#lRE[H/szP^6<dm3K%Qy<7&xs3s6fWeH6rherUt<dăU"xRUqL)QH..j^;k?#b*Y=1?[Cmy2>5l$;OVflbL)tmk$W#z)/P7N_4\)f7(&*<lTăU"*_VWn).4)%zAQ&S=h;yItb/7zZYsc.agq9^%N:>qci7]u26e[\E_<w8wr;^U?WMăU"AS;8w+^n-/r?IMnJghrN+&2?TfO:n<=,0rVI&me>?I,In'KeDvOC\Dtsep4KAp[ăU"Xf0k4E^$(C'</TGiwA9kZHo_:F*?\r[MzI,Q3Fb7ag#xl-t?K2)59XG*;(#:I9PăU"w9l0.(0/'S/GV^tQ$h)]tY7*_62B.2a&rXwOZ=(VZAI6X6\)=.j8bd16&Wj?/v$ăU";95]\B;8J&:PV$+ZiM1+_tSmtB$YR'YoQ6:.;hx.'53]O;4Mo\*Q1WISwVZ1Z7JăU"pAoLh-qS;]c,(0bpdI/e/'vIkB'85-+(P[z=\6Uo6>RMU5D'o]1;Sc-VfMS;(tqăU"Y+=)uPdLP[^<E3r1ra\J&&lV01SRd2>.S*h97^3xC:,km$%FIaBO89>s9iS=hDbăU"M4F\:HR'][Hra%B'I\YIG4.J8D_g#hA%8^PgJTN+g#av(fmoE0cRXMk9phDVG*DăU"Q6a&NlaYdBeIix,.&#2u\1gh^=%krYT0))nyx:Cy#sJ/?Qg?8-iN>h8UwbtL<HTăU"t)Lf0D4j[7Ck??PIFY+J.YHLR3s7[f>)K+8xpts70aL7>'^MzB]DREkxSaPbb:PăU"sMlIkxqZSx<fLs,5E?YnyYqhV(_vQ(C7LNVf[Psw.iAhNcDnsasc?-G2CVL8b5căU"a4V1nX>PdswHs#;qwyW+%b);XOcHlmC3'hgsAi\CX[nam?Ou:T9Gv=g8K,6_I/WăU"SCf83K\GfV^.*<%E2_RVL^E.M%x)RkEp6fk7^GECi=N#W::gFy$%&w%r=E+VMFtăU"LyGP4bj;.=ntL>-iffFKi_f<GidpVr1qr,7gI9NI2plP+8V4B,5DE1?o79'0%k0ăU"l:,[SGhbL5Y'3O)Qv^jZlE5m0[NL[rk#'VK/HYRKB^rIcW7O^*j+W?IaQ;?(*IhăU"42I.GjQAhzdK0)BcJ%2-N4qaIDZ0QTjbgrpHR/3KQ?'vY<=b1=S?UX'\Q%L<Ta3ăU"HZ&)$fdAuYkckuqm4Ul/p%DrMAE0kX1mCB?30lsT_%bkoLECE/(fTZWt3\HSnn&ăU")<5Azn96(861/8LQA8*:8rdX\oD4B2+3jS?dkYV(p,C)_$1wp=rj2c.I_]xydhoăU"J=p_MBfj5vas6<bo2ZJk[-f+u;T$iCDRLMcD$MD)*#p4hp;#9v8B?I$?Z>-*,IcăU"tkfV&gpj+6na*kBWfV#.,+82ZB2Z4OH$3YP-$Vl,1+4Q&q4aIaDMI1\sw:>JVCYăU"rL2AACIKmP0%^KR9-o<GG5>Z8=SEKGUZFU[ZM^15<]dDQK;*:+DA'Svbamn>+p.ăU",Wl4.(B(cvAYnElCD)ACD?C[dbcu0Ggx2X--44f-Tv7$C2v??u_$HAbO7YmY(qpăU"D>13dKPgBcbY\F9FavRg<M+&96PZXP2Px2Z(Iy6l/BB'2VMesSiXw]Z7U;7jD6CăU"mh\psQ^Py/xUNd&J7NZ)p01?%pUIPe&;%s9lXBJ>vG[xA&BZ\$'171GP:9=O6f]ăU".Ap3dfjj<D3<:jmQIRU#m9qy>2DgdDtss;8i$60W\m,ZJBc&\AT<qQgnd?\;PC[ăU"0)Tr^C[Qq+SrcrhQXJ9ZCuhc4_iSN;7Ze55,q:ZcU:E,bsAHy097,<CybzBUnLwăU"+6O;kcJnL>kfoNtrj/pY6:UW0ngg/nw0DR;J7g/-Q2RR%R1eJ5hT-g3I,8/aTasăU"mK*64Qv0uPnjBr#eb#s;R82ab9d.nXPa3wbeZ0Yr8og&Uld*uA.Aen7$]p^T:QjăU"J-V1p'3=F\>+)I-2+oU1X>Ab;I6G18/^ghR.2YV\O-aWiF:W$=,lM<Z]),:+5QYăU"l3VILO5#mcclC.dS)t]VPPkYrZRJA%$sG/GycVD-EJo2-(LgmtMk%QbEH])4b9HăU"LGZ2^T%zLs[TkZY4aVTMRKZd-7SS<qcKHQT*GCUVoEr$TIO]J[^DkjcB89OVu1xăU"FuNm$kIm+Jt6N06JVL,&c^:K'IiGRiF3P1(zJ[WQN2^IOJ%<>$nXqIC$cv:hTi/ăU",L#_w]VtRJJ:ph/7W4L]_gV=1>[Oj=OThu?08IhcUZudd669ikDk74R[u$$.l]AăU"Y[Zw*KM:*H#,jp&l>>D4D9&>uJ<8>ITS6^&FaT&ETyN-AmSU5EH:*Yxgap[l\.jăU"\&bDs1qwVlq.S()N^N>6/GuY5m7wuaSS%tp-p5V_]%:C#Z5vPk*s;ki0G..p8=IăU"Ym4vHx%9qQKr]bf?pkh=AL.K;[-Anm&FK#(oeTl)3C=DDP0Jkm^<FDbg3Kxg\G)ăU"Cuj(9K9RafBdF'rK^=XkN[y6o%%YAXa.yh^i^dr\=HAG5K8TYvTwgJvd>mt]w>$ăU">7l4c'=ic\>1-kXFQ,x2Qh]S.;]m*$Uaxub?Sab$ae%k5O9(L?ZU(\z$JM?6Y](ăU"[_Fc#tr/KYmJ3Zk^kl(+&s279^/ibnX[*TQKPih[930>&HSeDLV5Y*?\dINC<-qăU"Ic*)2Nlry__cm]cFSg-S+E$p-Y>%;a7Hb+h:]9Lhn/:TQX=iV?QVPYqF..&J,y<ăU"E_iMq23So&hZSus0MKAAM]okRFObN=zCJm(;k;a5r9MUWkMoAP-11Qs(n+BFr)<ăU"bsABDh2gFH7A].P0ZqK(xWG8<A1kNrD6NEOR\R*E1?[)isCA*sGmTCEOpNGG7liăU"jQ_3$,7'GE6wDqYb6k\Ml0Mt-<BX/MGXW8Ne)*_tDN.)x=<+.,9C44-<ad1r?gVăU"E,oQ-4blb)juXqbD^[]]B9DrFOZKpC(koXTMmg:BnMbp0IFCFww5VDk0I=3l'$=ăU"gprM;g6c?j%D73F?9Ls3k6\:.t=Q'\+ay%W&U>2:J.IAn2#5]F+S*'qIb7<ODs-ăU"UuQxKZ[Knw;g0N[/SvL+QmKdS/;YMlrTack)UK]KyF$UV(h#b%Qi]ATVNegm2jlăU"4KCnFi86MlJr()_Ri-,Y$[?6agIF_m7&s6hZy_]q:w\CUX#B%[0xEW<cFRie2#UăU"MXH*eBEh_rDF<Ci3OAK1lkcw.Pe%,>P-#=o?t,%Pl45Jl0vE464nO,kBps-T3O^ăU"TFh+C.fk)2TZ+J+p4r%'L;4+ggBBZbRTfNm\wj1e;)dy4QEGgGCT1:iT;k5/#dcăU"jjGFLW]z(brwqPE)#ilOPO?F=28UwI^SKjh1CGq/U+:>N))$&$h,k-Rt4I#-trhăU"9A9Dd<o#=n<Hrwl=t.b)<[ECt;X'#Jy3#1YV*]#]l3gx(kb5kJi88EH(IKm1UkWăU"vdJ84RA(+*n0,6:KTNZ??jiAR/DVP5Z9+&;-4KkS[W>\1%3T3[#9+QXSHhp5o4_ăU"65b5Vr$5haT+N4t+(M:)NL_.$m_-(CcJ*7.&?Qz&nc,Yu0.L^<b9T4lRAs^[5yBăU"th26EO[h2/w\J5qsytl-?%#w>[1fp=D*>l>0uh0^qNY73nQ4+M.fHZHHBnFf,E7ăU"&BS0)nj;J/$ZXxRB/\B:?4nM\Nc>l>9sZ)tsXrnO,qlf^rWp'<i8kNK5o]eaOtBăU"HD=AOx](Z-Je*<3iMS5/b9'70;'[6V>$(+p'e]h7w7a9FTAv*Lh*$cx4(<JZ(;_ăU"Men_GJ*_lGtnfP:.&\L4OXItnUqpOns$.rpVdM1aM[3Oh+%z7Dbjz4CZ*[T\bNSăU"?0r(_cNRpBi7H=.t(*O5]q9X\l,H\H[U$?l2r6EQ>aIH$F$+z3X-^'idG0&lgd6ăU"ieWB0aP\*ars7Lnx9n(gwHJhGnMGamt$[tbnsGuALh=I8CYf2?btR'/5YPn>H>YăU"Rra=Ld,3FmK(KL#a,cRpW5Q'B2';z'Rht^4\8ckNm3azVMf_2:F,fl8JX8J.\KmăU"fuT=6fGb9aW;f)P=0)0M4D?_gf;nvJ%smtTWR.mCP;H5kKtl*V;XpUERVcd43VZăU"N=Roq.gI&T$)5XAgIUO$]?rOsQ0NKt#m/&A6RV(k=+x-k4]gE&RxBmz4eh$h[vrăU"]mr_\n-i(0>Eb5Pf;5?]C^b#ECBs9T(0NNAL0LhG3F9u&ZDdHzeO7/St3F'<*rLăU"=7[y(5X)V'4wF(<CHU&s$N1U#n<gS=^M'WjuDIJ(jj=5^1XQUF4DeXI^6#k\ShFăU"=ecYE#5aA*$/7+CNf_4\_UZ;+YAg3h;$u-RYDFvkP*mO?:l1RO2/r>18c^u+hgTăU"kSrU<r\k/4H;q3?6E*jEilQpnjmZ?Dtn]nhQ.ytkN)yr33p\mbf,fKQwPPJ=9B5ăU"sw7AOaA\5K'Cd.'kK4/G%2CT+cxT60Sf?56_<(5CW]&#mDk;gbq,>-g<8Lj)32'ăU"Hmil)P9D>)EejC*YHw-#(rn)F1SvJp=F-n7:4%7reRN:?O.D?O,4O-X<_rN]ICwăU"R]TTj;\\p0r/+ukiTq_W1g*f=P<](SBd&(W2^/]=6<+Qf0j<djVtPzuKUTcHgfPăU"&MOXUoge*N2TZ\*UU%JB)2-js)LG0$;<x-2/5GF=c-ACX[hmHqB]#0sLQ.=[aS-ăU"pE9n2\%A=gDB1d'$cUC*s$cOKN9-2pqd\Pw-H?.vt/6zX1f28Jw,z<4OllVvNQSăU"M0a6xFy4aQ\/1eLec3)z+c0,eu>dn:/]G_(G#ESrtr$.HuMiMjK\0M^9[*h(895ăU"i>pzSi<rID,*]Cpf>8_INTS&Hk)7ap)[z=$9YHO%er%mlFz2$J^T_e;#^#0fl$5ăU"Ds=MNkVnzd;4cQYVO<g/-#6<e6#kUh].lH-Ik>0W/J&PnqV>wVPse\\8+MgPETtăU"tqeJT%bJgm-?k'*?svU'VMEcj.dSaKx36cq6bnI_H-nX<mZsRlo+4CS#9vA6VNkăU"4+Ghk\db6w5Bx#LQhNlhYS^nYB#L&=ND.=/_Gx?y_94/4ehG&8uQgw&&$VDz^UWăU"#h$$TMFa2$eM&S.h=N<iZq4cH[Vn;W-'w+HxZ2_pXtNUg/.gNnW'#,O+?l&UMF.ăU"09,&s)ffFpgUG?t/bXOcoY3VOYu2\w5eEx=#X#]9<Y&GJNu;2t9?-2=NFn<__KPăU"V;<v34JYfMx=dl6?0>;V/6m;/frq,^0g0o[1uX]e/woJ*lPrhG=2P#Vuz9e-S^YăU"f$NNiNd$:Ni^T$?X#;->Nw#WqOd7aaW9\d>2$<nD&%UnB(?',Y96T(YBot5g<[aăU"V4gtLU]5e+>W4cJ_e3xm(('7Jm^d)(P%OT$FaVhUG:>wM[u)0Nb2P3p3Gy-jNmYăU"t77h5PdHnzZd>On,IH).s?-;I%pVAHb#44YE>PTi?r^u+jdM\%ifPat+/vq9/$.ăU">z&a_hH'Mvri=FTPdoEd:gq=*.jB%o,ZKexQxN\gA%:W.7E]tX--k76TA[FR)A4ăU"O<VRG=_0l;[KQvwNyR)GlW<6b1'AXW9+j)c%qUYAoxCizU5Q5YoLAz(Q$]NjsQWăU"5G'&>d=6)IQ[0D]9tPG/nkQ0HDI([kFLYY.oKS:tK^NnFm-00/YC)2\9v,^UzQuăU"L,brnTkNV&wg/itXsu0Zmok=J:?thimNmZ2ctScs3>kP5MCmf$$-dhmVGlFM#UOăU"686Z0$nA221IoC/5tFWXu)GgbX>&JDzGp1]oHsXh,>Y/b.PZ'2:KQ*)%>s5KpP<ăU"IGS-k61vzU+g(j>+guCF0-vH:rF#;GHG(=p_%Y7KT/%]4>W#P=6r2\bp0;;vacVăU"Uu)[QdA+V8,lm1c^8Wx??'EbZ_2(o1W\cFtUQrP^Bm+;.xHqYhCW).+$uDMFSulăU"C>fHfjRd3JPua-0EbmJp<w#j6k:J[f24jNun$(a(3HwzKqV-]KKrI5K0z9H<.d-ăU"Tl[\w]<k6Vw9p:V?)zG9O5l5H<p(<,l%]>Cb53leuKlh\1cXEm(m>\nM=[mlnk$ăU"NqTtmM3wH3/Q6]fo^pW(8FAUPv;m<vqOQW#w;m6v<iR7q*TRbb^D?Zeh#gE>v(MăU"EKDR+U?V97Lf;;MbC/v;7]vtX?ja\wh/1N_MglQ<SUHEQ<<d,__?/1=$0KA6&\[ăU"t7%2k*iKN&2<a<vHc][#Ums(PIHHdSt>K,$^mo<%pE*.19OP,NN&4>Hz+-R'Q+WăU"Sm7L9Q-Wya^&1.e[=L\aSg49O0Cf[rHhhh&q1q_DBrq-gb&WB;bN=(0dYK6VV7,ăU"1Xr.4]-;6xhCN52GS4&'pt>PJ/Tj-otl:j]+i6Qi61x6^l)lE9zV_&+:c-#B:7găU"\^ao[$FRm]'+)iIu5RXRoKOl*ZLj:]_6Ge_3e7?:id'.+RWb^A43x^x,kE;BmJ0ăU"'p6bVuX8%Lbl-.^q&:b)s3dpcu9?MqQn>b?lxD)E,((ZjkDm9N2$>d$g+yqCWd>ăU"8JMsZvI(T^#HfvM:Ld$rS\(MW2b+3Lo8\Rby6T<l6NZGZlq#SXu9iu9/sU>KwqmăU"C4SN#^1MQ<h<C]tubTaCi+:v>ceVAFLk5NdX(LAMi,bF45sjY_K_IP/&OHo6oELăU"-)z]9.HhRlWoWl)r3RrS<aZvV/gw'1;rlqqp9R2rrQ-^ZPr,Z>nmI?:ibmXJ\/[ăU":5QjoH[rZ>4vb9\(D.Rf)nJ.F]4brsFN>Pik-2bJpVbHviq%cOC:)HH';#X9>R<ăU"Wb81yMYZ'YAWiN(9_/137IA5<LNg:7NC(EnTYpPeB,bw.nQTlVJJ>]4%,X$ZJ-făU"MEde<[Xmj>^7CnbNJ[m;NVF0O^^+T<14n,asfBaq=s\T1F#f.YtIpY^9?u_XVMIăU"mh_PIH[]u_0[\*A4SAM7qEBhtQ<8t+Mdjl(.AFMDwr_iWT<P9(HXL4dQJ1*Ha?HăU"8*7lSJaC]bST5mFzF;S1uLqC:ge^sRm4[+BB.IXgW,Agk'Gk*6NtjU)TUYgVpTFăU"#)j=*iBQT12RLa)V>I_L%Q<Qlv>qk?Eu5%;aQQ.FAQ^;CybAKe(*\cAH%nWwY,YăU"MMFPO,hvs2=_(MT]86gWC%P21J#7V'[1.X[4Q;0xqJPL=6X\GA[S&YIiMMN'm#)ăU"(r:\ZlY]sZ8rN.Wih$Z;7#,ck3xa4>v8-GLp^s]=b,AyR%cb^1rOp9,8GumEUR4ăU"t_B=H]4qk*>7;9jhG&+W?WdkPQurba6^>4NoRDLhq=v8Q1/A)QXF[w$H(^fg,5%ăU"\e7khRhL350n^(/(--J/$T3Xrg*KV$yGt?ja-GLEWN6=]?H-8()/HE+lkS:f\g8ăU"n[-aD%#PD3'/E#:CT&Jxh4ETP4F88ayU?^.stqO.bk\OwmbBM(;DS:UZo;9lI(eăU"qJ0w8:Uk*Q;gU-%1gM't)3c.5M&zA^:2Wl*smU]_tUZTETm0TuYT/)m+5VaeOgPăU"L;Oe%Z=QZ='ap?+09+8Vm%Y982&q'?rh0A_DVey9BsnPPZ=CY/W;npu,lDe93>eăU"^t]]kSqZ'QwikC>m7uS6>]M-,AjU>0*?Xt>w3xI:1wf&H$1Ka$&<HTg;C92R:D>ăU"2Mw%pF>CI]mVZ[hpD0nFj*0K7-Scd)o.n+XfP8F%tgWKz741X)rVU>N$$ZU\=#TăU"][JY4;5p-,W,>J92G\*$6.3c*_;F*RDUw<#fP6g?nXc0cgr3;ylDu/X1%Xd>'rhăU"NZvk<Czli;H9dn?Td#W.7ldh,Jngpm$8]KZe(Ut.W[zD2t#,fXslv4]XC,v+Ua/ăU"#b>*EJ^^-5gjt+<heX2c]:*2;u8mm.E..tpi1tzGw2lW2mGcw2,3Z4u7-gy%y8]ăU"C>+U2GACKuTIK#UW8_QjQ#6Ic+_$-H&8xHrT;&,qNI*O3K)bIu>'s-^&h%4mZ2GăU"=4-,S_H0[g*Glj9'k*0o303.]V5(c7>S];l_WGn;u-_9:Z4?XBx*=&K\e)#r4b?ăU"m6f0C#+.I.2RaOL-PO2d6/+bjPG,bqM-+b^U'<sZu*1QEUSwDoPFM^?5>EgYVbTăU"f_?1B'oK=?6j9G8O_-/NAnkeX7Za+KRlyaxNx+z#d__sfO[d1ge24NvkWPNj]$2ăU"[=pL6qd[%(G%R-gLhRIV0:_r&d))ix&W6gH;q(k/G#$P5m.TY[)f'vUveJtCeMeăU"oG#8R.k>P8TA)n4'[b(ngIBefXb7pSYe2xP#)FEq?Ck$=A[ufXFsr?>P5posc,\ăU"u,_j]p5OV\DNsB/\kxGOH+_$X1W#DRquF7XRYH*\y/Y2I/_KFX^*G98PDxaFohzăU"S&?i>s.\;;3QB3rRW.E&RnatHnR(.W0/ZP&<ZrnU9]5._+Y#Q\'>EF=Wi#ji[KvăU"?lKx,%up()%9%%%I-%jlJ=SS,'F/PRm%%Z=%(%/%%%%vhM70ACLS7C<We,TEKT]ăU"eLiH&/K&b]ZP8aJrwM]K(<]DsJ6h;f>b=I,s*(G00:2Y/$yn;z&uXp6G&;DNCAYăU"OMFa(mWGjnPi+[_'c-YreL)*:.QIf6#h)ld,BQF_rRSjsVcq7mxF8p?ap<;i,L1ăU"t>d47h8_65]5KbbLhNbn/D^[3E+b[Dwn^zoobEWzcCT^3Krc*]aNQ#W<fKLCUaiăU"PRq;kN)>r5BYrYLwXNdzON8\VgPpKQENEnp-jC\r4[oeJS8OLu2F>MJ:6J86<NuăU"Q&Kw>ux560Z.46Vb9tdm*2t^\cu&p&bMlX.mDqq$Tf$Q5UCxMjs$ueBH8tdk<cTăU"#SthT>Oh*Z]6sUbpJnzd4QhLoE,skfvYfPojrFcd[zr.)&gQqt0jTxEFI)r)#AmăU"-#lkM]EXVaSBH3h0,;8ZUxJxMV4%+usIj#Xp/ALEiIy522*qq-jgH6Q>.h4gg?ZăU"MsFPg8O$qPoV*1qccRnd>;hJNBh9rI61_yoNh-oI.FFW?J6*xRH.$QO<oPA5S-xăU":+u=4i^j?waFa))xAB);UGFXIB?,qAGUla$EBBt_B3M>u8p-kI)gb5Ri;+OOO55ăU"+D.D1n5VpiK*hLQ(Q;dA2m,%c]VG3<QZDfWsLOZD)2fgono4=sLsK9/.M*qe_UTăU"bhY?Isr%(LaWiEjrPkETBo[4[BIs$U/ATl4UXVR<_i9=b%FhR'e$&/(7\kK^/L(ăU"1-bwcLhAO5:.&m()LM3aYZe.Ko/YF$Zn>7f.6m?ePg2xp[5.jp%9-<=8#R<.fDlăU"W,rP*I^V^6.QtaQQ\k80vVrYwf9s1vDP9M9*K9)cAmIGVm3FS<fNQQ=N+MKZa&lăU"4H:,#1N3((#VRJmZsS2\:^Z&?xE;\o+n9Ud#QWk>lWp-$&[%+J[s\#$]3RaL5,VăU"-^)csl^qxI.KMLc(Q#:q,U/N7:3y&t0\:WoV\FqrR%GM1;,VRuoK5%GNE[m,2%LăU"qQBcF1gAU*g.8A6:CCUS''Y$\+J3[H_vp5k>Q:\Mi)<4>J^l.B*m9^P3Z')4vfMăU"vrdB2%8(E9[-TK^_0taaZg_tNaBVI]X%5#517VE::>)h-FCZTZw:>,K(_mdIbP;ăU"D#MJcBa)6c1JehbI6?JPj_bUp4/]jG\7FK;536\OCG1l-Hl<'*Q0wS]hi(/WSFBăU"[w7aX/Q=<g$XFi<^+29EF'tGXp;,+5IWX=]fe$,cgz(mff<9jQ3G,Eho_6_'\M6ăU"=#O]^r=opMR-?FrZTiIL'H;/,HR_(T[S-Jn)GsAbKY%hppksK3%0+:u3tmNy/73ăU">DGH;A0FtMs<Q<chRus2^ebUI#ERIGVQi/&(tg\#IilkexcQwWm7WU5H)F]B,i7ăU"co&>p*OKmhqZ82j)[R5r$,>bk^k/+a$kEtl%$YQPi<)J.HZBK<kI7lVX=GNPN5;ăU"l&N_bh<(NhVkNX7wjpmud2N\o1BWf#R^k[:0uj55vm<XVQZ?J86SkbNgOPeF_$PăU"0bDIi3rOj']r:J+<U)83wwD8B&+5a?(4b3Ql3I.2q)\P6#F6ZaWf-q/oZq:;,8,ăU">ML(MUmxjn=M%t<%<$Bvr,oZ(irN5k7WjDq2%5aWjkbZYE]\E6lB,[.B:CgE.%LăU"z%e5'sHAKEjV1(UyR/Zgf6[l*I:i#%^LFRjfF0s(pL0_1Hl2>7dy3Xq2c8UH[#uăU"(x/PrQyfx*-A9d2W:UNp=R<Ju$Gt2'k=idPxw9.G0';V<Z:jo2Ckxq\'j?U?j:JăU"'al<R;ZFRnvJ^\6vk+C/mXZ9xo=#[i;2IzO0Ml,mUMyaMD)(eBuHR+-EA^RP5EUăU"\O7>_W0B<oG:qt;>^f(gtp:E)_RGs5SXliqz(OD/]#GbMjUGpf?ZHu(Pp>7*).răU"A-uj+\il\eerrL1E5QHN+nwfacxx/6=JcoasD.:&,Pb*f<5v'\^Y[DZM9^SMBQ5ăU"f]9rxaTI5bD$jng#HQkJF;EnW<XDC)fB=F$I,*AZ.sfgL>revjWus([FZkJ[dq:ăU"%>2n+a)PKp4^,3;i%0%P9Od4U/,Y>G3QuO*XM-uT$HQsmPB*+Aa]s8)F?2*8<]>ăU"cg+,v_+i\,13jFz\Ze*>I0/TW5:l)E/h]gR+hG7Z/o7cNu;9;\$j1Ez)\vKY]XTăU"m_e+5jP/^S<aad1;Ju>8J/IjgkkZL%_(],7oDIBG62U(FYrwD_>YvgSM[,H<<dwăU")TJCIqCg;5st;b:_T24'pM;XcMB8P09S1>LG[OX+XgeuVd)=za2L.[._K-&'u6răU"hdRZ_-SS;1e<FDvx7'm)4g85I^j5+=^ln:qE\A4>nq9]7RY]AB=].enp=[#bw1.ăU"c>+I.^(?I++)j8J:OZuu(A#6ueMEw7+9Zg4H93B'kv]MYSHG&cSYm7+zS)M.Fr;ăU"bl[7Fmaa07^6nQo_DkF?fF921-L9xHX:XpgfPi=V?_Q,VOWi8D/l]pmN=]Om1/5ăU"ETEsd1%$p1u?qV+E(:)J>(M\Ry#5=l)Jf^SJA/EGql7TZor_D*lA,Xh>-JKV[#HăU"T(3ScS%b<#)LyC6_sgGk4+LP;Sop9:\YKQP^'w<NHq>#f(HZa5qoi$BDAt'947PăU"mlVri8oG2IfCM]0[lf9Yg8t+oGKX18lB&D<9H+]4'>;40#HcF:T<TtK:\P[6<m,ăU"5u3*G3meMbQ4x4P*IdU.JZx2:cgX3nSh\0h'EyTh]^U8FjU?Y]4,W\0_uSA,[X4ăU"o:5]#Q?CH+r?oAT7akoG=dre8<_/kt%N.AS(ITlg\2AS(j3iFhuf0yXMnm>^qM,ăU"8h?g</eT>\u;rCp\k0Y[Lq1]um]2d],]iOh:ag2H_4(%v9cDKYgVp#0_oZpN[//ăEND SUBăSUB V3ăU"8MC'yJg4&2M6z)jkTPCW:P[P'4XlBq^e-dJbHYHhgE-hH-DuiW:DarNa&XA]fxXăU"d0VTd+GK#&f';qfgo<?*IsbImJs<;Jr/s3,'Yaad/SD(&5L0#QT/i5xm8_GVTchăU"wM+P6YEna#P$]zK4;i\lK=W,'/Mjf/3tvuD0<l)[X%OpSgm&<)c+sGu./eY57&dăU"fINw:vUxw))B4yOcPs#7W7YiDh2sD&+;tAVP&'OFo*K>Yi:?q^FHKcPR;a%XImvăU";2X)7WYifDhsNJ&+tA>x(6qdg9sX4iZBa.'mRXOZD*E>?[-i1P=+/-RLNY<*lEyăU">lJ>rdSPi6U)0%l>C:$TRk#>SCt.1:5):B<p3ugifJ/;wSU^7RK$Tiw->%__1i.ăU"GclnA*wo3&(84+(V2arm-:V8mHEa%afaExR?8<Neh8OCZ27A.^lR\VSiZdu:N_găU"'<uplm#8q&Sxe=p,A)L%n$mIZHYT&'R4m-I)/nM0vWl[6sb^*6^xh==JIx*q;3GăU"DQDL)>l6_0?l&>k8X',s]WS9=g6O;^Z14Bz)(y=ThetW^/AS$>d4GO=.c+OSP.9ăU"q)hbvC<K4vq+WUDLkWY(k2U.JFa7;UqGWa)HeV_\.qbaIKn-7=cDLdvVul)1UXbăU"0b>jn$3vJgM8TDP\#X0+Iv;DC1/ERs,y5J%$axCnhK*xn&sD.rKb8vpg86-[%igăU"x'U<r6md1o$6hzzJP65WtD_v,aC_q]gS-X>.njbchS&A0nICYttkeUsk2fwS#[XăU"9<27/NLRwu-8L6t:'8L,^iTA&4vlFlfheHkp;zB>aqa9DYTmv'I7Ny#1\8V5_oKăU"WOMbMem%Dfw#/aW83pf<3S8nJLJ;nWC./R$gc^iZSQvBosEt('Kc-tPiWAsV.0/ăU"^sJ=jp*JaFKN-di/d<<P7pLVRag6a.iN%lt,fb#U*>hYqi2[kNSxem5bNf^-C/(ăU"mLvImCHpNLf[YC[0Epkmk7-ZJA-T[TYm33F6Fd,05>Uggnt>hgkG;mIk:UDocJ$ăU"3n]7fP*_<q4-,AGORDZH),V(;.J1cY,&)VJS?N:-^>\Rr/8H$-D2rIu-cO>XX#,ăU"62g*k1Vm$cl&2r*WNb,<sYX6-fhe,*[j]/KM]/O^:y,tX$+#x_FE)pPc$3fSg9tăU"3eO\K9+IH[rN5F(F[uE0G'(S<pf)v31j\]kF4EP2hu?soG<i:;#SBJ*-<Tz7#k,ăU"I\hNFg$If>1N5^Pr$a&mC?Dm)LHS:=loGp]>oPLv>[LLDDQ$_CPpV6Ji$0A9x7(ăU"G])dkH0IVK?K/jWm&P,D=A=taNG[9Q2SakRZS&HThEJv3^PnprfG;t3XN%Cf].VăU"]b5,j1FrK*?=pgccOeoO.DQ>YC(mS6O[Q+ecLh26:aus0_4lw6FN06>7rfTATJDăU"iLn?Hmh&Gij=/r8nMQWa2VfD\4cTxU8\8_(-83?Exhot3;YZCMe2A-0(+Z+Ba'dăU"8PC_.j<KsY9H<BRWLr04%M>ws4eENO'YJQnx4jIe+\8Sm[E7&wK--Y;n>?\7U5văU"e,jg0=k(B^\w<^2_;TaYZN%oWSn^8,JaR2)>42b=[r%dp%aOfUmGGD(H)FRl0gaăU")FTo4oJ*NwAEFV$:)v5g^$FbnS[:Fq^ob=Ef>c4/Xe^rQbr*jD<lY5;iX<^',+_ăU"5UF5=h>acSB[gwngaUb.cIZV;oF-ev9xNUo9GGBRzyTZeLGC:U?5Lkr)JUZ/MWqăU"(w3.Nn9=YD<<zFO?(aEB83ER#?8bGsG6?XtNJ??j\7SSL[jNJ6XYN<4Bf1,Q+pcăU"'k5m//_,j4?YE&s=nFB:Q<(CRD,dJ^:*<qs8:vjs9G*tTmQ8Fo1)9^cU<oe<acCăU"tm^PxrQviI[FsKFBG6$%X:eZtQaC&p\\b*<TQpK=3.CmArG4ZrU5zQg&4mIOf\săU"Xq#iFH,r^iZ7sGKZwcYV'p+)[S6un11;&ZvaVKh_R[(]J1CxWm]>fYd)gwV#4?LăU"4VDeoxA2^JedVbsbZ&fZA;t)[H['<g9Mo#a;r$o:2#\RQuqhGHFoZDRFKFAOsIDăU"bpEx_C$WpAHcohUO++WqrR:O#JYi1^O22N:E-j<3#r4vCmP4S%\eNv]A'1n%iF>ăU"/^OZg+2W2=E[qbs%/]M3FDaPMKE_0NtL.(/p&mKIh(f4rm1;##ZIF0\;Ej:ht'MăU"E09KMxR3:Mw%+]BGS'L?3p]=R_mTeg>#8&K2*F70EM8DS3Mw7Q-BGn]3?aDm'uTăU"%ratr+zAgJn*bPL%KffrgmUQC_i_Q[I=r?n*X?uoj6+_BpXjXR_^'M-2Ua_*+3căU"ng#W9ye_S36#QU[FJWs5<7%^/Au7o/+%uZsv()fF/.%fW1wU5Q5CUE(9I*w/6aXăU"95Zg7*1S;CmzfpV;PCAD_TaM,oS=AZVWVK-5ujF#Rm+Q3C)_Q6[[9f4;SG3&\zoăU"0'+%f#GRn<R&36l,%xxx,?+I>P9e7f/rqC:Fu>_nNuj^Rru_nVjsndPDi4j.HL:ăU"aU3*)sE2\HNh+GO.r'^)^PsdiQtM%F09?tvaq_c_qPx7_;f>2sTpuJmf44]AgN(ăU"5gLBS,WVxoaB+e[ZscPzCt&<6)fn97DT3esIE/H8Og+OZJz.(73]<VbRO\Bg7*5ăU"SIFmdfpOq;J;gn<h0MUI_T=cWZ,)tsE0O1MbQ/3MwQa*BGO*W/6aNggrcL;3PP2ăU"I)_1:*d.EY(=sMARI9n&Heo.#f;Mw7L)BuCu(-a4j59x.U6hA_d(MU^dxlT&%?4ăU"OB'ne8QnIdTN,5,<(_mj\Wr[*b;Bful?fYbCJp([;KUJVDfqImU>PlOFj+6v?NQăU"%k#U#GG=l[okG3w;&s0*D60IsH,V?2QfTf+\66V%jUk[83Q)1$6L$tQHfc-Go_3ăU"OVC;f$PZsW]B2h#pW;+H=Zcl^k9MzhHOK+39<vS$mxsb\S>bHvcpv>eV<[aJ=6iăU"0VW2va+6w/FHu?5Vc.$r.grs3sQUNPlxN<zX6gOQwVQco)-ACMfcJsNX6_BK8Q9ăU"2QOH.aKcxQHqA/P;a,bD\/x5gxUw$*H5dLG:sw6^2lm5g(&S(LMu]n)wFGuthhsăU"PrIP]>=r3MiU=_AzXwIDVsM;OHhAci(%x<dG:A-OF#QOiMSVE#1Fc5KGgcd:$RnăU"/;s/kJ$Z(HzZFR79%ld.nf7Mg(pj^t67,2z:7^4Ie4KZe%UA$56vdZ<OI?c]>q3ăU"]=IA9Y1/J'+d4v13/1u4'Z%'&R,P:_>TT=gA.5+69j:ZLaW6xWNs)Y1N)dQt-ADăU"um.5u9hUFL<EI2RTSP(ESnhd)YodhPID0eZC9/H6bS[T.B>4^,r;O*(lpdM+(JnăU"k)08(l4GHT3t&l&^M+n+Nq-bCZ$DL*>D77#SV8M,%cIs:GIG?;iW5]LnfaSmKg:ăU"t=E>YP)ietCsfE/skwFFf%<x7&jEpo\3ueV4\pH8t=OVoMC+#oJ%0./o9fRWDGnăU"XOI9Xh;[85gHor&T177_6)M9^VkGgL,=Cf\VY:,&;J:.uMD.1WG.xEA-9RUXtfTăU"d)*t/^<Iz>tqe%Wt,UkpAcW<H)#bSZ]^V<>0YPi;o<$:g2*3GDbw$XwfDRcrq\găU"uPFP<DNW>wfJQu0B9=8jD.ol$uxTHBcL^H0^$%qFXw11]d[#H79cES[1I2miUiiăU";95;cIc2B0=HaOWq$5wgnfhkiq$1iI:HEM9YluTb.rtg=YqxL'enFxIv1qc%[:7ăU"9,cTye7,xLu=mQ>qWQ(&puY2_6'rnNd\$<Xb:7bIt+18Sfl.^m>//RUA6P>LsG]ăU"\7b3URx-D&KGffU8fQMUMW3$^cNf%TIMMH.8uHNjvSFNESndp_[LAgZ8:a4Sk1JăU"\,w73>ZdYpq+N2rhGya0IM+61C<oMEU?vi]ND&I180Yu3KovV(JuLeMikV%T':3ăU"=c^=^\0ai%4fb1Xh1QF7b$rFn2DZLSr^P1IiQWxw9n/k1W)4,SOM\9eIEn4Ku%*ăU"MO))[*dv.H>%;cT%\C_KZN,i(7)7*D>o9R3(7)S,JV[1,6eCfPfcD<F4SK%&Z/LăU"GiuXmb/'V2N[]2bLe$DLJuEMNm7=7wVg89Am7=\ev1b^$<=tbKy(C^v1*73b+8CăU"N.27kVaw*S/muJo2UI7+h;\A5gr](+rjQfd2Lt;j-/F7hy3a^JC=051W-J\Rv13ăU"$[ed:;O4tCT0=U)+uTItGKF+C:UtfkaVAxS&=muut94jsopClp2Rn9_#4.hh#.păU"PD:CveA1S\<x1Nz$<FXb7brI9aBV[kqYobm:o:?ear)Kx+\%<'Ci9E,;R5WW0HOăU"4ScE#>79c<S4aBI[;46Ytg[-o:r?lIGK,-^7i0vBMnC3Q>E1WXr?hhCpQWd<T35ăU"=7INfH[IMM.J^uHh_vSlE2Snd_hX.+KT8Z)1;*D^j=r3EIKm7IqRGL7qP8ZJ\.dăU"e>g+Chso0hU-1*3c[;d79cSn'M5<i1S6E_Sm:t:/9c^g/(9Ke4Kp(EIB9Hn_:0KăU"qQ:/q/9z=M1Co&FVZ>hx)_jM+7to4.[./ofaKmY>u[u%M.s)ZNTWXvC\W9\b:wbăU"ItaMpzf$>/P_N3X\Lsz4BP_%'Vd>cOGt19Ru9Kui-=^gQ%f.K9D8%7sV8;M%cKRăU"SU.d0l7HVAbSV4Tj7>/\:vT:rP5kG5TgwDeDp#f[ajVa+wQxmC5obT_qmg;pT5;ăU"H0CbTu-6cBI8nwGGUTMKt:Lp,uTh.L1oI:,w(A'iK]nA0p3:./tS'0joN#UvuB>ăU"M+<gN'[u)=RmuJorUq7Kh;eY5;HYUrUt\610?i1NR$<F\bwb$M/eAmv(Nsg>[1IăU"=:#CDc[Rv7.i8Dj?0k=7/ZT.6o/r=89RQi#VIx>yShxS2#muu9k^Jwg)w8UI$E2ăU"K]Q%M/+\PAC4O)0c**3h<blb+bIV2w/Cf,=3BFQVA'.11l/\\OuA.x9RP/tbT):ăU"*to9PIW1#2M%9PD=XpXWpUcl1\4wn)fh-piJ]5f-LbB/r7ilF/hjGZ%C_F;;J[răU"g?%nl#E>/We9)4[$<FQhS_Re*8LeT11\Re*Ad8B#i;,6JY*'l8N(+ZN]n$A8PCqăU"Q(<7j9.G%7[X82M%9j+K0)dcgrqHGDA7d[St.$[_K-M;J0]ih-[BmVW')0$l4AqăU"C$u;=8*Ius/F?;5jS3lpW_v910c.$:18gQ2]J8GrTJ<,Kpo>X2#E$^J=57)h.N0ăU"a<=tbKy%w0w1ik1=8Km2ZjR5MipmH1#WAg8.%nK)$cI*Cz5:s8hF:fPoC(oI4.)ăU"&h.$(^I4b'pFpwK3At0Oamq^Lagb(KmFmXGLe5JK-(7G0\j>)/i(4o'T2./(o<\ăU"yH7ZG07JXZL=l<j&Ttk$e\NwNP\$<xbg7dUd-ILB^n$<,mbRpP]men=.Il#UmJ/ăU"\KYO*jv)jsQb)UIIC2cNeNf%fIMMT.,bG'0AeZgrWS:3ESoAdr-N1#tb4am<vbkăU"%yw4wO1k1msg[HECs(5t(DwR+/<oj4#./o<dcQdFqVS,EhSokFi#6]2+w_HTYqKăU"^x5s_r=0]ng4g&AcnCe>E1\Vc6DDZG;<*f;mVR-ySU#muu9d#w&LnOm1DpqwBJJăU"O)jWaN^ckJ1N,aFoccY(f-Yl:<2dn?nM#?rJu-$h_ooMqmrd6_vejE1;D\>,broăU"=I5..h%.tPZsE06oVJu8>gjYgxY>huj?S?J]9wd(gj$,JI34=e%?4,TCelnb9D5ăU"])i/S;E_&BH7ffU_#GSEMUzob$40MAa;V>gQ+7RIp+l)h40R0oHLIabXl8jC*+/ăU"]MAz7m:J-Q#um<)lH0Qt;e>Qz6a>OJ1e)w7%;A%o[RQqW+yCF?YtiB*RuyB%F[;ăU"HeWGe+q4o/q+^<j/bXhbB%a1M<>AOKe.[yx<cKi:&0)?wlN)KAz=D&\,ZLV,zp0ăU"+uTjdQ:U+ZA1vaM+&),^yy(<RqyEZpoXq1X'*gf[mt$R.v1G'/3lDdexgM>BNBAăU"iIw/n+tD#sV_/R6%Lsy?Pj7D8Dg^]948U3iWPe0i3SA(Y]pZ)QI4l:[,E=a(GPsăU"00?c0Y)SsCVEZYQg^/R-a]RaS'(+)tr0DPyr_k&$/5K3NKW_JK>B_c?W??ep]tIăU"CvwoiH?V?u1/a'kIG9X8E0U:R[A#ulZbO)7e6,3G1c9vUSYfB7PT:PoKM/riQrQăU"k^pg\J+*g\w=/y5XJ.Ig0yeBCYY9*>n;'L#i8WK]&JuD<hj/OX*s&K=I[SYfD7QăU"*:PoiM1r7q>uIY^5$wQ&w9?]cUs02/]v9hR:L*gCoy[YU&^Fw[jLV9;N##'R[^xăU"9uVKDHO&rt/]2JUS+EVv18=kd3d3)tOFB_Sr&?MoNAC9O^mx\ZSC[lzV.Ok16/dăU"yD9p(-?i'$S5]^3%ugk?h)g1Lt*$3WU*_S]fHphN<_o#M+brB.,,QCoJ=x#b]ytăU"[9_/.9#>5f#[WpMGw;Ie7wn^l=VY*>TJsns1\K:ij8Fi-'/w1q+kd13:)dGU1w6ăU"?M.mNCyoc1$'s_8;DInQuag/\19r\i$9nl0IW9.W.f.S#TSlAaCS3b]1uLX)F?măU"EM.g1]8k2%1:CA&aw/CPT;RH[gthFJp/$'[gGY#g%fn^64mbA<>/#kEM'C]R*xqăU"/Rr<L)WA:(B1\B+Y^K*aA>HnYD%B(GwAyIPHIxY)Q\?EM.I)6i3dJ+W()Z?mi:NăU"D%wXl)/wG#d-R3c);z'dI-op0PX,h2zAlWet>phjZ-(0YB=4E5h(-Gzw]lZ&ZesăU"-LR93H4Wx]tDu[<.##0)*]NttLAa>j0q>7_;F+acVQog]cp:-R:[MK-V&Aq,t'^ăU"q48WG?=eg6p<=[u-wKv[kJTarmVCA4%V:qbK2_Bd&X<82$d;BVOm0=Zowh9(o<*ăU">t:[NPn*(o2KBb:nS^wDKK8o01:INV4eLZE=EG\hl(':\dXpd^Ex0bsKt,[mt=^ăU"cs+\J)LE>'KCk16<HbMr.'CT+aA\yoTe=XC3DXj=q&9Wb0?X/klPFZp9d?qpi%EăU"\YYXBL'l%y*oQmL6c<E-:LZCf]2Wrovq.>bDt?^1a?>pe4-MBYeu9Ax61Q)5Y23ăU".>NTtr'1\CNI;qyiYW4,,t9UTDj7V?D4SzW&drYm]e*qDCM)1?(k:13:)d?Ugy2ăU"?aIlNKAoN=P?A49zT#jQ:U63108[PgkJ81UEi_dhvmQS=[q*>OLe8EMEMlC:oK:ăU"BUc3#3rNT=t'3HN7_15#kvzoW=ASAqmrS?&p(a[2ra49%R+w&3;si4pvV(SKWFeăU"]mgzK%3/E?gF7DmSUGx/EnwE0j$O]OB&f'ok%P13)_t%=NZE#_K^991L1WYyg1IăU"e_-STvFHUMQ#5Lyk[qi>o4--QYeuP9*09%kv361NT\o2p01kdvzk=e1OxS%M+a[ăU"/rG59#R+\rAD,,QFwd3B&fv]9&t9_/2dV#>%jzV7MZwsy8r=iWYU8;5%9R+b,r.ăU",,/QoJ=&xb]y&t9_/3.VX>.jz07gpxsknr=iQ/[/_vK-=g['O>A-LOl0sHGYu_jăU"wawM.>K59+z>nQDua/\Y19\i'$Muk*J1uX2)F?E=M.gUC]rMV2scQl,piUR)rwOăU"ie1.XICAq7WFze[2]#kyuV[q>ob7-)Z.eu9./q_rM/VicwK#ODSMy[qy3c);z'dăU"I-op0PX,2*I69[R+3V5+mI*8&nQwWcL,[Gq:88#C[BBf(JF0g:dlOUaAhNl2sN:ăU"&xiJy'+elP1Yb7s4j^i#BHLjfn[GDbLg1J_.[S[sa4ifQk7+OwWCuSriEm#\NmsăU"TB/]Ab<gwIE''GVCAOPl$y3c);zt>b,^6%If:PQJ9q#=-ow7K]9zS9gU+2FMzm%ăU"AWvo/^yw'ZEEox1/c'sIGIS8A&g;R[A#5fjt_6t#Q+O<HmB[:BcA-1Lor;:-c:EăU"Mgw;;*')Jg3R+t$sb67i5^;i)-e1KUR)eIiyGAI/r^=[>J(>1J206;hY'-'O+DwăU"=75el<BH-:DO]'*CXy^kA*hP;T4'.OH)EK:dS/p+vaqa%x5K1QIZM\&r<rp86evăU"rlf>4\4ca>mPOd5G(Z*.kC*bN3N&*3kV-dKpZF=o]F5Y,Tv)qf3f6t6?=tZFahiăU"AOk:jhGggVO;=L=+F72D$MF#J628waSTUzg'Omv0ZX?0_]ZIQy82a#pU/5(f5/GăU"am%+BC-LE,O\9DHRiSo10v-OQ0Ng,W2B[_Jp+o2Hla)e3YnsP+hva7#,>NrYla:ăU"]d>u.7n6iLQO(Fk>gSk>c;W-35V)p:75_hP;$3T0Td,Dp6%eY:[.CI<5k7v^I3.ăU"WYt0Uv_/_=J,>=vd3^FM:7koLh*)W+>u&*g]]iAW9u1C^4Qi9R-329T[B>D#?VNăU"9=XL>8d&F*<-5QBgf?2<WR&Ihf;$al^=f<U9UZL[8DmifgAd,r4E<L55VG_'#oQăU"L]I3j4kLn-WRG[jhl2p-w1J7S+6&Sa4,pgn3xN77CImhU>X:8.-li/-JY?v[o;;ăU"^Y78r1w=L9#757Ol^&-rB?(=JpasOF7DN20O#FG*\k7,+=\lcrec9WKrbA<Bq-?ăU"R]a]4\/E*Lb.z>G*NWW;F/8S+<4dBMI;BHO1/\f9,5bYg]6c3AqM(]XLhlaA#B=ăU"Fcs8O7DN&2x6WKKZ#oLVMwzf[J<JLYp<2;VBd_axIl]8>etCadiZwY=u]p$a17măU".f4L(DRcj)O.7XRje^j+&Kx:Y+Npr(hG^[lIqA/[jDw7IVC1RwC,vI7R?1tl$W8ăU"kEN-pjyj]6kLorAFA9S7bmMoT<AKg%k\lbp-a_mK,xtRStg#*Eeb15YCrjA.-2năU"uQP-b,Q9<Q>\2EeS-XY$bkA^%590Ue:K,U'k8DVZZK(3$=wX4h?6CoK(\;nu/t(ăU":W2:Z6W?MMTaS/ao_ruX0oiesm[H6S)Dqm,DTSt67R7VmT;fCX*>usQlXH8/MV5ăU"7<flmGVf=\D$&]D(b#U,R>KHg1c](D>Cfc</&.s*2WDk.1I&i=E.:6.,?f[<p&+ăU"QqPT^n3X]\U4*aQQFSvcg+tnddcoEV9dLI36X&le&rX1ta,I;hs%wd6NG;Q+5Z-ăU"u8RW#jpp.6pIeJ:;EA.)TIJEs\mgu:1L'I9\iV[&o8?.iXtm5BFc+l.ha)Sh8l?ăU"#fG-O0+)9D1J9N7;WtQ^,<s%[H]&h&Rd=Llqxwv?'$Ff7#FLI,aDkKi]K*6^GeDăU"*llJ7ZkI15IN%%z4*,zXgqRI6oPjej7%g/$6SUqRgnBU'=hp62_d$<v*F#]v7=#ăU"nIQr5j3:8lRvEW,BGiT/ZsijC,8aBt]e<9=nmm?3,^uuC[mj?5LS_r)%ZgoC-bKăU"T<haWBmLAY=],Y[2iC9wdBBNv2&]]\/Ar,4QNQz#C-mGIl.'RT>8Dr[V2J/['fHăU"N3=soo6(35#FUX0es=xIh<61w5df6+&qr8:uXq/1Vs4d6GL_9a(%1EYVmSJB1paăU"9:)RJ2U5ECfxC_7De^&eHb/C?U&OC&_h.:KO(El>J?.M*sIe3&5#FX50isCf)%]ăU"(b[e'#X\>6\D$Pjyu0\(nZCTjI]4h(6:BVcNZ%04k>jad]_W<)EYSj+Y'o/%V4;ăU"f(CM?$\o5V?YadEdQC4(kIe5Pj-1^N^P\rSJt%(x4'2k-?XSO)A(],$W*H2/H^4ăU"BX0(PO=7lfQlDF[8dU=/k)ozY;xOPl:H3VL\+MHGFf'(2&uUUuJQ-?14NDEPI#săU"2*RqDYC[ss&&3e/XmXqbwFOw.>RRdkSsZ/88.IL3_4u#gH]U(iGC>=R1U+RDjHEăU"XI[64E_,d)m.1$QVG.<k?Wbi?mZnjl4r64BrTN^V.%Mg3Ex[<F[ghJ>gGe38P^măU"Lu]9OUi:M\uMPuL#J+wd/Uq:M#sDBctsHR>fCbIcif77>\h^l-l?e+N+tNtH;ljăU"X]WtKg<2=Zwi^n7kZxY9GFffYDW04E%t8KUrQL*JOizCRS$_I0nnblI%)fi_(rXăU"qu>3j>6ZgFf)\7p,)fc^F*kFWocIMqlc4>VA8<0juiUrc0dnDmqGH,Xn=1TJ2JfăU">7<xqi-Lgb]:TKCxX/G9?1SM$SfEo]dx-,:T^<s,Wp2i_uv$9>.3D(K5fZNn;f\ăU"nl2iF]WE406UEmgJ;$1j<7VgsoHD\E^#hm7FE_u1/A:d3Nm7uC_->p]kU'YIfMsăU"a6Ddm??9N.sHu*ZRj6OEAFzM%UA'^DRMR.BNB*+R^t<ZcP/+1*>Dsk,l[?NV$E;ăU"Ey\[vf8v1zi.YW0X_1+qQQte,]nIn%nvN$pv4Qb<3-s#-eA*EE#]#4p\[>Ts+)qăU"'#VkCG5?q=M_?fWtxYth8kD)0TfcJ0'2#An]Eu>NS?x<is[qbHhp;xJD>B\<nxqăU"\/d*d5x;=MF[]9<sYM1*82f&b,f'6IA=f)#()ukEV$:4L4hDNA0vtevq_8bZ4HmăU"xjWgc4xJu$oij<tX^J]rhoXwt?Rb0&*Y54Bgr+LpYvpq5Z(X)JQWteWE6D97Qf\ăU"m]CbG_'rvl>Lqk>,861faqIO%$;yg5-iT<zLC*%Yq=T(Em=B6,ct/pE::o1]QGQăU"D8%q]&C)luDi^pw.pn3bDRs-hmQyL3(da9w&42pAi1IdDrerN&sd/0Ic:\;VoR=ăU"c-:%FZ?A&T7GyOPA2HIL](C&rtvGiHr9L^v$cg>.Os)=PJN$zpq?M9g4%r/AnsvăU"D>Ejt<]d'KV\]*y=rg=HejnXD)4&;Q?9/6emhHC\>.FC[bVII#L<nWCunZ2+q[_ăU"4Av;^:_Vk(QfAUekpi]'$Nvy?':[K;p']kGntEz;oVaOarQnMJ[e#b](717^'\,ăU"Ds0wEwYL./.jLQM6b14wduA%;:A$w89XRa<)6L*jiC7$*]ks'crd.+EsRUU/uk7ăU"_xhP8-3L$$*y+pht_m=#6O^V(.Gy+ooL/,-HA]AuXQ2&+oC(CyLz)TbL$LV/0mDăU"dUaNONMHM.NM&dDg5z^)g/_<hY((p.7Rl=&PABlS9:\YD<]=WD0pQ8v3Vu.N0#TăU"cHWo[j]N&Z\8un5xsBDxbnl3G1wW%i87=xFbrJT;P)tZ<Q6bM(*ws377KW??I:8ăU".2:<,d_)KA'orwOR,AOK687J0aze\+nwicAUa3'0w4H<JYs%ap=Gv(KkU4DmKerăU"K*%Mx&$rPm0RKC4.h,:2L&OaL-r9luPG8[+tOiI0JquZ2Ybb^t9\hZh*mus&VazăU"1NDZ3$*m:3p$oVO%(:q[e=cunvUpOD=;'$?_o&MWQyRRLV7;gxR0td'Aw#.:XGzăU"<CQPEFXg&n$:PcS]/;=2D6LcG#zHhD9-tYe[#8>Z)h-rFW6(u[D\N2mB[A(q<+găU"6vgquZN/0muCi8=PR3I,;#)fL,v.m+o,3)40/uS5D/Y[HkGM#;,%]fCivA1VZEbăU"Sl(H/&ul,aZ_iN]kQ%tsY*5(p]=$qQVYz)?dLO$_#bLR?0;KMP;w#B_bfVBD=vEăU"\e4P'7I1\YQ(07HAPDc/Hp:-C+*gY=w:$D&V([]serc/HIg?HIQSBrf81QK6U2QăU"CcwJ=yaPM,Z;j8%?bKAi*DOAY8%#D*mtp3]N7K3:md^=9._)8bI:\Ro2J:;us7căU"Uxq7]a7SvKR9nKa&4LRa.^hF-AZ:aO]YK.o0BN_[%Ar%Sc.'j&Id4p#UF^ob7GYăU")pMUo^CVfe't[^mMF/0o8cLA9-g<<S;A8s:_e-l;AJL9um%Yg3_TirD<W(NpAP.ăU"*GaGmM6HT-CrzJb:VKB5--Jf_fL0+/-t.8pAeA4FjJ\.T7<x/\(+P2TsI=cEhCFăU"wEjnD,BbPr7&^;[^f1p]cqa&][JCe\H&sYD8*s7A2U^[jSKp(ERu$Jb(Y?Sd+ucăU"J$5<?jV08JfO#+Cv.nqD[iQA[0.LrU3IQg(2VuTM/h^93J0PN2a=Dj.#nnckwW/ăU"?gjP#k6uWxj\jvo-4x(u%p&'9%09%%[%-%'Cg>STtHx0$[4%%D&1%%1%%%%%%%%ăU"%&%%E%%%%%%%#%vh720ACjJGSA#&1up&%'909%%%%-C%dg>jSWeb-)(Z%+%cQ&%ăU"%/%%%%%%%%%&%E%%%%6%5%%vLh70AJCS>1&9up&%'909%%%%-L%jl=gSS,F%/PRăU"%=%Z=(%%/%%%%%%%%%&%E[%%%a%j%%vLh70AJCS7C&<up*%+%%%%%(%((%y%%.%ăU"$B%%%%%ăEND SUBăV2ăV3ăCLOSE:IF S=31AND B&=29691THEN?" :) 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\29691,219);:END SUBă'>>> Page 1 of QCHART.ZIP ends here. Last page. TCHK:31ăDieter Folger                  Beetles Yellow Submarine  Saverba2049@bnv-bamberg.de          06-11-03 (  :  )       RQ                     154  10114    YELLSUB.BAS '>>> Page 1 of YELLSUB.ZIP begins here. TYPE:BINAA TLEN:6815ă'-------------------------------------------------------------ă'                  INSTRUCTIONS FOR DECODINGă'If there are multiple parts to this file, merge them into oneă'file using  COPY PART1.EXT+PART2.EXT FILENAME.EXT  Remove allă'message header and footer information (everything outside theă'">>> Page x of..." lines),  load the result into your versionă'of Basic (QBASIC, QuickBASIC, etc.) then RUN it. The originală'file will be decoded into the current directory on your disk.ă'-------------------------------------------------------------ăDEFINT A-Z:DIM SHARED K,S,B&:V1 'Created by PostIt! 7.4ăSUB V1:OPEN "O",1,"YELLSUB.ZIP",4^6:?STRING$(50,177);ăU"%up()%9%%%%-%%%nYS#>7^#_'%%%B,%%%0%.%%(j%qqxz%gSgf^xtyX)>jU5hM^ăU"cx]ZyrC\y[6%NSsD<;tSIJLwa=_UO4cZ=85??2/9k)ZoPh;^(PySi<UGYug7tuoăU"V4LduxdLf0m'F[BlDlRQJIVn)+Olw1;MVcK%)baFK)S/3Ews'<gHmg=*_qQ[sH/ăU"RIkui3D3^Vi=8^t'/Ap0ihX[7O)ROk6gdw[V._KQJ(9'+VHXL5WcY4IMAGhYO_xăU"S2:d8N5eaW=A/RMeIS*=7m3qd'XjhO/A3>b9ir%92Kbi(uZjl<CNop(NbGLF3Q=ăU"7I<>%YRxJt;Fmdd1aI]0Cj5&EZc%AEV::)]oLXa:(,'X>/bY:H/<EhfoS:Kw57^ăU"nR(m(sH7ih0XqElRI8B&D';^5e\><tuRpd/pSfG^Eit\LRKcF(^#*?D$=,hGFugăU"GdWPt$OPf4=Rr]Vl/t?PS0yojHQ%.?.9o.ZQ'1BC*lSerg&P4MSq0hU]^;v[;)BăU":.#y]8awGv)MC$t4Lr7c%8e_N#r[;$LUD7]wi>*[XNt5#%UQcTB'1k>RWxS+ff&ăU"a&BG]$3f4SUB69d?N,-oXa_IDxjC5DI_Atr?'<p3^19/wzJk_+Syq-+IR$isH1_ăU"JzYeR0'][]/VIJA2ea6ce:eTT\XqDO'0thaKrk'qD4%0BO/Izp[[,fF\,N&g_1+ăU"/bVEiXtW1H*3XVN\HiN.D[^Y$yeUnS-E_r'(8Obg9b--Tv(R=M&BCCamH\i\%CnăU"51cg,:58V>iA\)[ouZ8L+ukp._8HPKsk>uWp5re^8Fvj&[*^e\M.*7QN&<1q#iiăU"0F)DIk^A)\9O5:,:0H1.n5>Po#GkjLzs:=,D;?#]M3tr#j;jsIIGeN/)iFIssW6ăU"y4cmhD'9Plr=8b-9z>mw(N^.O57#\oVTE2#D2t;9>h>cKbp&1*pp(Lt?B6Bw;4măU"0j)tL#Uejxo+Z_/Fo3[W'K39e>Bds#+Ow%u%p()9%%%%-#%%%Y4SfD?%#S0%(%uăU"^%%%.%%(%(xz%gUSgRruf)EH:#&gCNTf.w[-?a$m4)ce<;M%eNvY)af*BXi&)VQăU"A2'mg764tOWfS4Jo<.A'In?5FS\Wmj>Mbp3Y4'1M$Ze#JgjetAbskqiT_z&'eGVăU"GE?e-7pd>mTneBTdX5.]R(cIXtjthL_?tv7DNl5KNBw#h;$1MhA1D_M4bU94AglăU"s\XVNG<5g#nMGS_%<_*HL1.%+>7+((P%.)QPEw2_0QMI8i-_G?:EX_SQIE8S-\0ăU"C6.ES/AFc(?<A\g&S(Ju(<?C.%6&9f&n=Gnf)ETAB7;Gd)D)l=)DSnUI9KP?DgSăU"e,4eWA=-^;M<^k*AS]_-8]&W41.#A6e,1imSaW)o\g^6o8m%.MPe/zeKF^&I*MAăU"Za3xPOl4P<eQD6F&3u5&,E'M/Pn,EndICs\en5u^YOY-LqK0?_HhUdND3JF,h5%ăU"#H4-qS#)g6cIf?]o/l-Xi%Gi7HLic_Q.1HaEQalXS1.WS(IHFsk#m''M#(ju.C;ăU"XEq2[SKu#,Pn$%Y/G.9rIQnbQ&J-OJZ)?%1+N*2X7qi#IrGH,_JJGJO7wR4*IfiăU"Mh,kR,T5i?Tt7ey2pL\i7iuK-3,ZBuI%HpDHM.s]4/dsv\(lqaJ7tV5(B)fvLLQăU"sr)=lUnXBnd3;nu4];6aihF7nL#06n+T#w39$+4cw7WsaIVT\IkFe#3YrIInQHMăU"?LHj=Ip0vo#SRVBVjBHfQX^x7Gr_n/aWnL#qFtKA/CQO9KcCyG_H9o;pOo0_Wh'ăU"'F,#A]%f&9*)kZ],C^xeE7fk#^<AP4nGcD<W7);o0ciF0a8I&TFdRELjkQeRE9wăU"0[(BpP]5*oX41RX:qy8Q=%5:&31/M;V2iRo:-&H:.y?:R/+g1/cT/'c(P:Iw^y_ăU"Ark*i;^WABIFC]/TXH;PXG18LUiep^(mt'[?i4WEHDr+;*JOR?Ii)D_GxYAc%eBăU"a']ll2K;7CrC?hJ?2>V<b101yD6/nj<6Y.q%wQcKYuS8pSblrrJlR890=[rs_AlăU"T?sTKF(Y8;ienw[^C1N,9ZJRQ+2h-#vZmls)AT:jUcAkhY1)6d]pfKUR1o3Q8S+ăU"(CvfanMLE\q6??I?uda+%bP3;HGb78Z58P5[B0Z55o(^3a6*cO'C-P7Nab+AOJ/ăU"MY0\eoJ,)SGP>I+cUpNmHJOhz87[SYa81J,(1zQ\B-siL5NHE)[XCWZnxNM_\*&ăU"MUI)&bxMW^(jiCB<6H?T_FlswAS6SPQ,f4(N'Zg3iuZP\Mwb.HrnY.'EL-B,fc*ăU"CV32BvNh35m$-$rLaK(Oyy[g9UtNLdDlO:pESivQDFWF\L3:cL3C3Da\8XfLMHjăU"Gpq3NS#>(.x<XTox]81\Ga%bSCog<M9Ee4Cx7v5>(<)1a>)oqp?7N:E\L0Pj\d1ăU"RsDR\:Z)%M9dtp_<H,%g4Lf[XS\d:A2TQcn6oGybgJ^<g\n/T$EBj>m<ZFobqr;ăU"'R>)Jj.tr8,%0\vutT'$Q[QPvlfy;:=g0lH=(3cE&GD3/rVo$Yx0#,(8Q#9%D$oăU"ZCh$l?6Wg+AMttQ>&N7Jqk83XVoZ\5^bvS&G\Fy#J>t=^K'UaZ$>3RtS4j*3(?6ăU"J:A0d$G%;z:jRZ9%#OVm/Esdr,pqKb2V?\G\Xn$sffR:x,E>sD+B'cW$pIx$Z<4ăU"+xx[mT)L^ZcGYrI88PhtOPd?qUeLb'jE>]1kCS>eU18>]&9*7Z0/ip2oV*Y^lexăU"FqUM3m=ME0,G[JX,eE[w(QIo-9/E[5=;u8QPPjE]h3Bg51^d<:fAP'()+o*oJRMăU"RR6pQ*+a:eAGU$ENWUl3AV9rFj\\?\W:PTmXgB5cN1OhMG'(QNco\59&+cjQPyNăU"My+SZoJ47u=7V;U:5Aa-?+e=&sbZ^LWjVd:i?g61VD\?z*N;K8e^dAWUAwY4K3.ăU"zFLC&&&MZAUY;8Zc'#_XWCnx+d;hOU-Y-$6=lS3Tdtu<(D^n4tGwnY1nFr\EULuăU"SD1KhiEJ96Cf'V,[OR)QQB4Z->NqBPO'In--3r8A,x[5\,y=eN]qrkZep3+u+;săU"vTWTtD+>?t9\LPi#a'cRTD=ga>:j8xdQV+hidO;2nmKsa+LvMy/*=/xQ9_&UEjZăU"v7QChkbHVlgOxgQ+JXDYImD=^gSvp'0^cnR&3MT7/M%L.B>:kZ3$3*ecO$KxueZăU"'+bL=bEUHC;c(OcA7s2CeEe[QC8%X%8iR-\JqK;(Y6ccnTaY&hd#hNDZNdv0>.hăU"Nz*(%Z_:J;BNX_MJ(4ENkFqOqv*H8/wA\^pY&K,cC3lGn28l6S$(koK)#k\nE-căU"P4/jCN6qrj*LGwcu2bqNggXlqlNfu=LtkJ<?/<mYtoQ%IlYdHVVr4mZo-[r_+E3ăU"+qf8J8V2__4CC,AjGQ1*pY=B6=(,gbY>CK'uYGl)iVz5,(S[iR;6_):yti]aalmăU"=ma?rrrek/k%XP<Z.*WjDS-OOhC];]\.0\IaC3&j[&#Ct1lAQm\Xx.iG6\M$\:hăU"cE;'V<0[#zlNIw1IiQp8GXhWX#iKhD&48$B/nLkDPLMxHZi/X_Kc?zE3[Mqln&_ăU"6]aA2pWE5j^TZq(#%r8NoeJF\3]utYgoWU+mZe+Bad+B-'UG$FGLKsYMP=rEJiGăU"JuN^_DDR2lX-yfhO]NjP\.RRiX][Uf1VApIE?\A-x&x.0f]:l;nudt\B?S_O'T(ăU"3f%B[RfQoJpiLLhf<e+'C)^A,,D.\uK\D51'pjDEWnl=($][pxpfgrLkHRM9HEqăU"v0%tJli)6rxy\rVAZ^HoBWhG)_l=>2\Y+lN.#i]F\,[J0>9jmHngJkrwmoX0P^=ăU"Z#PGVKFr1[1IfyEq$wN1t6Ja:u,...eNCWJ1Mjxx;,E=Tn$PZgia0B.swDVorTRăU"<mq4zqZ&V_'Q:?,T]F%/\M0w^)hNQ6<,2&cTlL)Pxx%l00xOxG^x=Qwk4q?/(sSăU"0/o1rP1*(n#5F5o'\vqHmbhAUj[WC$4ls%0U;^\OzUv,o7+c#V)%LqiJnrJBMk1ăU"Zudsd+l'<)XJMpM<l3As<L6gh&szf*\S94ZwFDfJfrrFLUJ]\J0^^bfO\j\hW#GăU";;)3DlI\K>1gwTP7],Z;\b,l-/fO&Xial]WV;cJv%8VHpA$UN\Vkmb:[Dm:PjDJăU"^7X*ko'V%3l)pHt-of^t#qv;F>c>>YQ4B-Kbpm[ZLCnm5/lN;Bh=u?L6=7Y3eVSăU"AX?h$UWf6$ppYT1T>dbYH(&:5U$dtsIg6Y7hZUrm#%llvpiZ\)c9n1?H0Oz34VQăU"nK?wkIQzDEW+>LkG^dPH.\f^?'ZjGD(G',Wbe'HlkglQHkQYL;Fq&P[bWgW'd_,ăU"X=XQSztc/'\bF3yfj>hrJNhmf'$so<3j[.h#S^Ti76qf^8?Lph#XJ>f=$cYl^n7ăU"Yoo6XRJXrwAdO<mRTaM>>0vA2d;ZH>aUGhA'DRr6A-2<Fw'i2ZGy#?<G[uu9LUPăU"f<h1flXx]>#iWAgS)uffs1*8sqG8wJ[HW1q5r<Pcegmsb)Iq9HphR22mg64sTRYăU"NtP+#jH38=,WJLn/DgZb-:pp^Pk+K\ZrFip0Ju>(8'sOpj?&U>D;e04?x4M\4P/ăU";e1:>eJvh;AnOjj13C2jED31sU=3EXq*A#t31Y;ELLbe5IiO1dBKUaM=wZ:tLRxăU"6W'ZYN%up()%9%%%%-%%%nYSN.5%q&0.%%u^%%%.%.%%(x%zgVS[gruf5jH:#n6ăU"?#X*;EN#^T\BsU,'O0+0LeNdvYaDJQ3u%KQhc+0%qXx-R7q$n06m[%p3_nO(;4+ăU"K?XRI9kC+1JZFAhJ4A5$-#KnL^H$[]S9P4'9AiQ7X&hpl;$1RCF$wz%lV_X8qI6ăU"?(cXpXHutGlwR=Jkfu8*=*c9h-rX8Khpa]mCrVOCf^ih.#ME.^d4gnc4Bev6e=&ăU"1QneiJ7c=)o71Nc=+V]PXZ)[-i*=n$>2I:B?.#XAbmY]VK#]Rs71?##.4n_5m=HăU"O1sa_-aj=]B%h:NsF[-]x+TKW7#MHf10j)XK[7I3b1n+jr^E.'r17wZlKVa02^aăU"XejIIta_OS[iS\:uj#(Vj)L#9nG>+7%n7SXL:jsi21?RHr[KR[nOoBRy7+6A,gIăU"dnmQkqIaMl0A#hJ=Va\MHKqQXUIoR(T;SGakd.(kO'S*r&HwI?[tF4KRi/ns.mOăU"dGDagGqJS91(5$=om.iI;yIIacY+H^j7Or[F_=-b,G:nYAH0Z_shcn5mo.OGXlFăU"IqnQ9(JMJ3Z-?13>wa70JiXm8iiC5&zpI.(n_3zAomCH*O?3zoC7RT5_Y&2*n:IăU"J^gakQ(Zkhn.M:.iM(Z3vo+moc,Za8_ucL:%AR:7DMacCc]&8[(MrKl;$IC2$S;ăU"Cf_jlrHUS>CpZDcVi+)VCN4T7aq?>k#nZ/kh1^+tku>2)k,FEr\:co*kOO'Ouk>ăU"TwQ\>>$_DI%tzS8'/wK6&w1zEe8(Hcl1G%97ufv:$mh/gF,#a]&pIIK8#S[AE[tăU"/(_R'B$m54&^5$(+FR7yRwMo<-OKd*KVr-Qm>a0+&*%#Tm)WSw\g'VE6MZ:OJ%>ăU"Dm:_#ngQ.5Vh?qgxx]s6c1f_og*CP1nTyw^lHu6Fsc$D6+,&,]l36r4BmVBiqFVăU"ie_-<%We_R\7Bw(htJq67Ul5DJHi>CK'*limbVQ_GRF.KppBw5,slooo*Nn;lU)ăU"J#D$R+c8?xS.6;9b0K.LD8XqiuFFtwcUm0-oNYVKwL9.E54=tnhCRs5GE^&V&gxăU"'$/ppu44CDMf\]x34muMNA0(e4G9QfXdrF?GLkn7Lklj*GINxziNG2CM#+\-B,9ăU"j/pSbD(/4WzlY:V(#KS8z#YWD6TqppD[L797[trNoq?D\0,mXA)Y24?TQG)5<&8ăU"^XIgeY.zZO,vx5$N9ZDQmie:67x.SH8T=-t+_:C^Qzu):3'\]mxSGNl2$)f:MfSăU"]K02.c=Pi?>>>nP>]E7=_B_V%&[,,t:Vtm9Dg&N#(G-F.[V6kv;QQLhVc1%81Y]ăU"fO>$.68(PwFxyhywQiCmg9S]B$S_A\#\Mi6+rVta5sv>81UcHqeu&aY^k\27HTnăU"t)^i6VJ>$YR[sif/&AG[jFDA&SP4R;ngA#BAo\]=D1q\f\;9/4%C[bRL1^luSN.ăU"t47BNAX4cB+%CmYqX%QAvUGT\)s=b2_2^TN^?QvA#>i\1gWV'G1SOC_Lj1-BP%JăU"7)PM,U<sg<*I2KVe\V20e3B/GNnN&Biep(VYYlmt-cRfK$>0;'Eu%\r?hkQ%=\qăU"#pxo)VjCA#N>4hr,n;ImR,*sb8(c+LkS3aMgJJOuy+MWvzShe#&k:-.Bd2je#S3ăU"1Z+=%wckgyHL6\9QB#CJSKGEwGSNUE?uwqJaNUFSH^,AmCr?<G$e=empr337=GcăU"b['V<XfHbho<:ne[$LkCh6=9A*+0Q#?DDD+NvoxBe7u*'['o[F+8)5P*)V;/IV1ăU"a/7]A68[B>>e2?LC'8en<eArkbO)/((j-&Ou1K$10qW3[X6sQD/&jzThe,gqVXmăU"88?3Lf,uIX)a0hXUQX+kpG+IIa_bxQBmhv_Pkf#n=Mm=si#w[L0kqxtykoohE:zăU"2Z.NS=62O=hWF5OwoGP#%5j5&,uZZZZVz&XV>$w_G8llSYY4^iW$DT(mex4V2%UăU"k=^LQ[pv%Ha*]Ix*f;d$AVEr21DN?rrW*D?pv?$ftLP+z_f[t:T>f3f;vBX$,:6ăU"oM3rEKuG[/5xAPeJGqu$7N%8v6%9SN?\B,AeU(3Y0=dgb5.&Abq:-,,&'VrTp\yăU"P.=;57jrhwD^<Gmj,s9ei9(qV9L1]h=$G1rH^;#k:F[GMt/S]_Dt2Q4yz>r\)gkăU"p0+HuR)Xbp-*q\LN.nBHrMSg]bS'Zk>>h-T1fUoen8Ye.AE^86D^yQR\N?$Bwj#ăU"aP-0ff]P$)cW:0E2oXj64Q6NAir*4XmPD?pwYunU[Oq\Dd4ke9L;Dq0P%E>W2KbăU"z<Ju4VDNl<$C3JE.Nl;#:fNNxgLf(3f(['KBDlGL7ntdXgAU330g-Y^oDfr>N(wăU"D:DZ6]&_FlZrl$uq4EE+r0ksT96sc]5yL_RrUX[2uL\^(WvE-LQ6lk:Nw7CAEKhăU"_#G^a8*-Sp&rViE*W5v1'QV=f/jZFgnEZ$rdmg^mAe)DX[ah,;wL/WPQQ5/ao\/ăU"[^c,=<\s/ANB_#h.=7aeR4gUhju(FI:Nf<W$AoFR^rD4&A9nXIzZjt*tixxN/u4ăU"ZC3.NfR#Br?O54nMcUt-V0Z0Tg'w\J4gW[?A>6'8AZ-8sNh\+l&6EebLhwx'ENfăU"Fn]kpkEbZ,m6JmP\X\>HrCDqmMxvVKUw1Bm9$gI\,gh0Wza_WkuX>14l1dI?z7tăU"sL3'.u4*5<pl0TxuZLbm6_FPPA&++Mu82)i7]p\4C^t*R4Xt+hY*Vqf7#aVcWrnăU"hb-JJtcO?6D:JCK*9*8H;UY1dbTq';lDL&9.=$kK_TpSdAboF<egQYG4YKVl8WZăU"qGu-rZix:)Ra#*=e)N9X\8r5olV>3l+rg$kN-*/)Lu'hGl?QSI$8a5clc^WGFmPăU"fe2X=hp,&T_iK8#l&n0007t\LtYnk&%gSFu+m5ZV&lhp&4fvPGg'phX3[<'l4tdăU"wr$f#Pj)0#0G)?+fo4pdk.-J#L3[n,T.Ud>wBio_^2gpdH[/>2t.2=?\dq;5PTqăU"R#k,L_%N^62.o/D1Wrrx%x4kltrE2X;vLtRogpP0Y-\gi,h#k_$vB_&F:bHDI3SăU"QDYi3-ZNJY0g>/icNZ\=(W;Z0I<V;JDLFW,PeinFzbma2$[Vq<bJqwxc]qlwH$lăU"8AJJh+zlDMDVt=4gLxxkVt._)L<N0B'3wz)6y?/tl0=DuZ3NUtnBpQ;tGdgQh0văU"A32+xy=Q:wv8AqPpUdk\,3I>S0KL9=X%PqtPPzLYaX.V4MZvsR.F)vG+Eb&Ae+_ăU"?7[..2U#[DCcHaPIp$*3#($1)ClnJ&9A_OD4LjH5\_xgB>2L&)5Q0VZ?^U?,'1tăU"3W#lef_Qt*t79tfb#KTXO#3NNcIR7bH^cDNYD2galwrmN23Vz%0'lfYLW-k:q/oăU"I^5qXp=Hh/SHW#DEsYD0DtaMQ974hsqB\r4DW$JeA'2,]zb9xSV<6jWfnkv^COBăU"^/+dMiHJK954[)Pb'%z^d5/GH_+E+f8$Mftz(AxrW.vCUZa:j3Q9Is8D\w+RTTOăU".Q)XZhBEtd8tGNeg;z,CWoaw[=/R,bXR4r#.6Qsm?UJLmLfXq\G7L/2AnmrX$_năU"bcZI/NczFu=sLZ.[rT2RF+,f8JX(acG:errHscGnm0&pMZjSQ3&;NivDD6hAHrIăU"FjPh233\h<-/pq8q>d?ht-WUiUG+++M$D?4pmNv8qOM^[rr9N/rs^dge,Hr\[#)ăU"&K>Nx8HqWF78MS,cZ]w<'k_]z41'w0up%&'9%%9%%%%-%%%nYS#>7^#_'%%%B,%ăU"%%0%%%%%%%%%&%%E%%%%%%%%&(jqq%xzgS%gfxu%p&'9%%9%%%%-%%^%YSf&D?#ăU"S#0%%u%^%%.%%%%%%%%%%%%E%%%%4(%(%(xz%gUSg%ruup%&'9%%9%%%%-%%%nYăU"SN.5%q&0.%%u^%%%.%%%%%%%%%%%%E%%%&33%%&(xzg%VSgr%uup*%+%%%%%(%(ăU"(%v%%+%[>%%%%%ăEND SUBăCLOSE:IF S=27AND B&=6815THEN?" :) 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\6815,219);:END SUBă'>>> Page 1 of YELLSUB.ZIP ends here. Last page. TCHK:27ăElias Livaditis                DVB QPSK CALCULATOR            eliasl@stc.net                 09-02-99 (23:33)       RAPIDQ                 241  6081     DVBQPSK.BAS '--- DVB QPSK a MPEG QPSK Calculator 7/26/99 8:37:01 AM ---ăă'--- Directives ---ă$APPTYPE GUIă$TYPECHECK ONă$INCLUDE "RAPIDQ.INC"ăă'--- Declarations ---ăDECLARE FUNCTION doubleSTR (Number AS DOUBLE#, N1 AS INTEGER) AS STRINGăDIM frmDvbQpsk AS QFORMăDIM btnQuit AS QBUTTONăDIM btnHelp AS QBUTTONăDIM btnAbout AS QBUTTONăDIM lblFec AS QLabelăDIM cmbFec AS QComboBoxăDIM btn188Rate AS QBUTTONăDIM edt188Rate AS QEDITăDIM btn204Rate AS QBUTTONăDIM edt204Rate AS QEDITăDIM btnSymbolRate AS QBUTTONăDIM edtSymbolRate AS QEDITăDIM btnBw AS QBUTTONăDIM edtBw AS QEDITăă'--- global variables ---ăDIM P AS INTEGERăP = 3ăDIM Fec as DoubleăFec = .5000ăDIM Rate188 as DoubleăDIM Rate204 as DoubleăDIM RateSymbol as DoubleăDIM Bw as Doubleăă'--- Sub and Func ---ăă'--- exit application ---ăSUB DoQuită    frmDvbQpsk.CloseăEND SUBăă'--- help message ---ăSUB DoHelpă    SHOWMESSAGE "Select FEC and enter a known parameter." +CHR$(13) +_ă    "Click the button associated with the known" + CHR$(13) + " parameter to calculate all parameters."ăEND SUBăă'--- about message ---ăSUB DoAboută    SHOWMESSAGE "DVB QPSK is a simple calculator provided to" + CHR$(13) + _ă                                "aid in the setup of DVB digital video transmitters and IRD's." + CHR$(13) + _ă                                CHR$(13) + _ă                                "Freeware by E.J. Livaditis" +CHR$(13) + _ă                                "Developed with RAPID-Q by William Yu"ăEND SUBăă'--- select Fec ---ăSUB ItemChangedă    Select Case cmbFec.ItemIndexă        Case 0ă            Fec = .50000ă        Case 1ă            Fec = .66666ă        Case 2ă            Fec = .75000ă        Case 3ă            Fec = .83333ă        Case 4ă            Fec = .87500ă    End Select        ăEND SUBăă'--- calculate using FEC and 188 byte transport rate ---ăSUB Crunch188ă    IF (edt188Rate.Text = "") thenă        DoHelpă        EXIT SUBă    END IFă    Rate188 = VAL(edt188Rate.Text)ă    Rate204 = 204/188 * Rate188ă    RateSymbol = (Rate204 * 1/Fec * .5)ă    Bw = RateSymbol * 1.35ă    edt204Rate.Text = doubleSTR(Rate204,3)ă    edtSymbolRate.Text = doubleSTR(RateSymbol,3)ă    edtBw.Text = doubleSTR(Bw,3)ăEND SUBăă'--- calculate using FEC and 204 byte transport rate ---ăSUB Crunch204ă    IF (edt204Rate.Text = "") thenă        DoHelpă        EXIT SUBă    END IFă    Rate204 = VAL(edt204Rate.Text)ă    Rate188 = 188/204 * Rate204ă    RateSymbol = Rate204 * 1/Fec * .5ă    Bw = RateSymbol * 1.35,Pă    edt188Rate.Text = doubleSTR(Rate188,3)ă    edtSymbolRate.Text = doubleSTR(RateSymbol,3)ă    edtBw.Text = doubleSTR(Bw,3)ăEND SUBăă'--- calculate using FEC and symbol rate ---ăSUB CrunchSymbolă    IF (edtSymbolRate.Text = "") thenă        DoHelpă        EXIT SUBă    END IFă    RateSymbol = VAL(edtSymbolRate.Text)ă    Rate188 = RateSymbol / (204/188 * 1/Fec * .5)ă    Rate204 = 204/188 * Rate188ă    Bw = RateSymbol * 1.35ă    edt188Rate.Text = doubleSTR(Rate188,3)ă    edt204Rate.Text = doubleSTR(Rate204,3)ă    edtBw.Text = doubleSTR(Bw,3)ăEND SUBăă'--- calculate using FEC and BW (bandwidth) ---ăSUB CrunchBwă    IF (edtBw.Text = "") thenă        DoHelpă        EXIT SUBă    END IFă    Bw = VAL(edtBw.Text)ă    RateSymbol = Bw / 1.35ă    Rate188 = RateSymbol / (204/188 * 1/Fec * .5)ă    Rate204 = 204/188 * Rate188ă    edt188Rate.Text = doubleSTR(Rate188,3)ă    edt204Rate.Text = doubleSTR(Rate204,3)ă    edtSymbolRate.Text = doubleSTR(RateSymbol,3)ăEND SUBăă'--- a function to round off double to N1 places and converts it to string ---ăFUNCTION doubleSTR(Number AS DOUBLE#, N1 AS INTEGER) AS STRINGă    DIM NumStr as STRINGă    DIM rr as DOUBLEă    DIM nn as DOUBLEă    DIM dp as INTEGERă    rr = INT(10^N1 + .5)ă    nn = INT(rr * Number + .5)ă    NumStr = STR$(nn/rr)ă    dp = instr(NumStr,".")ă    if (dp = 0) thenă        dp = len(NumStr) + N1ă    elseă        dp = dp + N1ă    end ifă    doubleSTR = LEFT$(NumStr,dp)ăEND FUNCTIONăă'--- main form setup ---ăfrmDvbQpsk.BorderStyle = bsToolWindowăfrmDvbQpsk.CenterăfrmDvbQpsk.Caption = "DVB QPSK  By EJsoft"ăfrmDvbQpsk.Height = 205ăfrmDvbQpsk.Width = 260ăăbtnQuit.Parent = frmDvbQpskăbtnQuit.Left = 50ăbtnQuit.Top = 10ăbtnQuit.Width = 40ăbtnQuit.Caption = "&Quit"ăbtnQuit.OnClick = DoQuităăbtnHelp.Parent = frmDvbQpskăbtnHelp.Left = 110ăbtnHelp.Top = 10ăbtnHelp.Width = 40ăbtnHelp.Caption = "&Help"ăbtnHelp.OnClick = DoHelpăăbtnAbout.Parent = frmDvbQpskăbtnAbout.Left = 170ăbtnAbout.Top = 10ăbtnAbout.Width = 40ăbtnAbout.Caption = "&About"ăbtnAbout.OnClick = DoAboutăălblFec.Parent = frmDvbQpskălblFec.Left = 10ălblFec.Top = 50ălblFec.Width = 40ălblFec.Caption = "FEC"ăăcmbFec.Parent = frmDvbQpskăcmbFec.Left = 10ăcmbFec.Top = 70ăcmbFec.Width = 45ăcmbFec.AddItems "1/2", "2/3", "3/4", "5/6", "7/8"ăcmbFec.ItemIndex = 0ăcmbFec.OnChange = ItemChangedăăbtn188Rate.Parent = frmDvbQpskăbtn188Rate.Left = 60ăbtn188Rate.Top = 50ăbtn188Rate.Width = 120ăbtn188Rate.Caption = "&188 Byte Rate Mbps"ăbtn188Rate.OnClick = Crunch188ăăedt188Rate.Parent = frmDvbQpskăedt188Rate.Left = 190ăedt188Rate.Top = 52ăedt188Rate.Width = 50ăăbtn204Rate.Parent = frmDvbQpskăbtn204Rate.Left = 60ăbtn204Rate.Top = 80ăbtn204Rate.Width = 120ăbtn204Rate.Caption = "&204 Byte Rate Mbps"ăbtn204Rate.OnClick = Crunch204ăăedt204Rate.Parent = frmDvbQpskăedt204Rate.Left = 190ăedt204Rate.Top = 82ăedt204Rate.Width = 50ăăbtnSymbolRate.Parent = frmDvbQpskăbtnSymbolRate.Left = 60ăbtnSymbolRate.Top = 110ăbtnSymbolRate.Width = 120ăbtnSymbolRate.Caption = "&Symbol Rate Msps"ăbtnSymbolRate.OnClick = CrunchSymbolăăedtSymbolRate.Parent = frmDvbQpskăedtSymbolRate.Left = 190ăedtSymbolRate.Top = 112ăedtSymbolRate.Width = 50ăăbtnBw.Parent = frmDvbQpskăbtnBw.Left = 60ăbtnBw.Top = 140ăbtnBw.Width = 120ăbtnBw.Caption = "-20 dB &Bandwidth MHz"ăbtnBw.OnClick = CrunchBwăăedtBw.Parent = frmDvbQpskăedtBw.Left = 190ăedtBw.Top = 142ăedtBw.Width = 50ăăfrmDvbQpsk.ShowModalăPeter Scheutz                  HOT TRACKING ARROW WITH BEVEL  scheutz@image.dk               09-29-99 (01:19)       RAPIDQ                 77   5019     QARROW.BAS  ' Rapid-Q Component, hot tracking arrow with bevelă' To extract QARROW.ZIP, run this code under QBasic, or download DEPOSTăDEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2ăSUB V1:OPEN "O",1,"QARROW.ZIP",4^6:Z&=3394:?STRING$(50,177);ăU"%up()%9%'%7-%;(mbL)S9HQN(.%%C0%%%3%I%%#0MAA>FLi4<>LS10BE&%pB\rkăU"57Z4CxpSZo&a.b5SR0#c?eImOx%De3p]):^E+%h*V/tRO4t-dLbXLE-z;\y'<_QăU"d#CN?LV<%,/#i&r#k8^Bw&Gmi<bj$TuBw3K2.e872Fq+:#%)AQ/tglGYhUK_GGUăU"&s,L78B7?%;G2wSo/W>Sna9*q3=$+5m\g%C:&bt3r,tD==.?-KFm\ID]8?qR&b<ăU"vGZ;hP3whLU1b7YL0DRh;rvH-q-Jkmk+9=co,\kCqF^0I%e/:K<.UBBu$3j5)c8ăU"M..,.uv+t5VhIlx9p.OPe+S%W*k4W*?\RVQ[KtK'.2=7;CsQv9eX=OY&_9(]Vk_ăU"(Oru0e1upRwBhLM-8Mi2F::=D8ZPkovFAaAe=IU)&7i?:wVYZWmqZ06aw/\Gb,,ăU"XJl.CFv7)$(E/S4Gx;>es7-3c\bwZY-EoNj*uz=r^1E8YeBYx/m'tg(0OjyU>gkăU"RPT)Z(;uskvq8iLE.4wc_c)Dt%1PN5v9Gi%):xH+domUltB]r4(>W:J\VL0M4C/ăU"c%d0*YaI(MRRpcR7%HI<qnf;(bKH4j7'F2zM)pDO[ZhGu$DxAyVk24&Q4oHRa]hăU"-l[LbVo5PKZ;X,n]-Lz\$EXol<sy?/OV+1Yq_DoAK*6cNV4tB'S3VDb)qpE\h=#ăU"HRZjDjQTLwQF7a'*l(KSthBYXdPnfK+SV7sAht/uTWt^uDrsYtoa.2o(ZVKfwx3ăU"8)mT6)ji9c*Wgb\iZSjN1I^ol'pAeM9dchW.74)?$qEJ\Z/y1l,mI#>^n^_XtCBăU"[-)H\a3BY&R6UqA[C$o+Z?=?e0mpBNKecQ4RlEO=gOa58=Zv#6-B7KFi,o;m(qBăU"e5>/3w)1XqbIr%#fZ;R/dE6dX0n'L/E]e34eJV6:bT)HHwKXn_(Ar=U8<lHDnyAăU"omqc$rYuB:Y\N[/lM[o[Pw[o1)tee:cx/dwSIQn7q=jJQGrxJigXlzx4;GwzXEpăU"F?$eE]<f4sPQbl<wnWZwc?EV]AZIh/,F4[dmYBoCo,LQzy?;M+ubjL(-3PDFdN_ăU"o]YUCa$<Pa)VUUa;Xwu-ZqZ7h2mU8V8PU-az&j(YU0BFnAW-]]aNl6H5NBHc2PuăU"ppy?&(QS+ac()*ZqP#UO)nhw'N%BtSAHV;:WUckZ<=8dIz4nOhAfVMyw=HG856căU"kA1oNz8dAe(doi2%]r;iP%.Q#/jjI8H]q8T-E4XzfU)eeky[o*PA<2W(-S_ybuFăU"XS:_ck<FN&:h&9Ha4b<Z%Dup(%)9%'[%-%+['bLOq#&X>%,%%b%D%%/#%%%#M0AăU"A>JFS10kBN(h&>?l8]wApw7Dkaz)Pe5edo#*6^o]2.et);\(Y>dS?)96^Y=bfmYăU"<sPFb5o;gCLg[L]NGL_ME6nhkH_h6$TBBYfgGYMF8uGrU[CSl#Sq[?LP\[/pa,CăU"Qou3V,l,,E$Q%VJF8Iw#D2OPc&]EHN:UMW.;)PK[WVkP9NmPZl$Aj[#M0K79gPRăU"(:<d=OW]#ak8NO37PdBqGZw1]QxUd5MT?37x:UUG_5k-x48AkonoZ8=O;lUr]P$ăU"5Im67a)Q9m=w%^1+K*VOA;<%eg=VOSB.WZg:p0[-c\O/E+76tz/oM]5&up6S#IaăU"R4;Wx=9R8+rW2KgtqB9>;PMa47O87FsC(2XcWf-p&145]r1UrZ2#_5R&R7.Uw/;ăU"H61,G+mefL=PkM9JiK3MWQ.w.uG,kFxKY4'lGcMB.m/Z)C2e)&g=LAZ;EP117o&ăU"3r/4l>e_6E_&kI=]-c%R9W,/M1X6qZQUR:v_$$:ixe)k5LDQX)\A;wrudG-E*h8ăU"w0>1HxfZ_U*n,myX+L1p[kbP*[hC*VE'huVE\9XzgOIEktcF:+rAl:wTjzj-(-NăU"RZo*56&TM]B>'Hw+oRqzDw\-\6_N2Ahd?pZ\R/<1GK&]9Vn4._'?k;la6',Ff?2ăU"EjHTGjbM$'Hn3vh(GiEGx[//kC-*6ex(-VlCk=&6lScE]?^.pQ1Y5xAEM6PK.QJăU"\p_VLSXkpDY%GG1z6uYS6kZ#t'3gm\YhINA_Pe=Au/zqAqA=Yd;(lrC6U<;?AWJăU"[F63+f%ix9t[2^vU8p5CL_[MS[r97A:2,xvU^dc-AaJkC^FD5gvi%L\e0YZ$eWvăU"o_BUW1<pW;KG0=5qLTCWq9mJKQZiS1FizA(gEq/Tx%03^\Lz#\m-<.N'm)8Ey=<ăU"XyC&e5w*9DBv>lVWCW<x8d)o+>eC/&BO)>[=mMxhM9'7/PHW/tbm*ZG8P63RQt4ăU"Vl7i2R5[U<qQCiiLXuvKZMo3ru+naG=V#H1[[S6&eC&9S&a[bfGI]gd\<fD4n'oăU"su48u16235:\D2$c\z%d2j[ca0[>f8C7>E20r1\1+%oUVp5G98pnQ$la4Zt6tJ6ăU"0O2n<Ju)5KFOj*)xlJsVFb)3$?nEh7]fF(r0T.kjB,.Je?^N8\)pDiF-7F2]j&.ăU"cl#G>b)xr*1?fqPxRJVK=p*XA4\>ncFWUJkek54?';?S>wZqq4z.6S3:YT^ku(RăU",C\)*t?^(Yt-G3>rJnjog>e[8141h??G9mO;/I^U'6/=qK%'wC)UoW8bEC+cuZ0ăU"jn?6\a'u^kFn>/I:tp8ot6f.rangO;ji-GSVzD7d\8;ulo7)nXzTo$Y\,K$zhu>ăU"Lo/SJJjfeaU(f*tLTa7_uI\8nrzXkD&=6->akDP>;O4Z:[qkzO.B-Rt8V&Z_SZpăU"eOGTX<#LyTxOR/?2PKv0&UwGPsmf$cCHRvCasAbBF_xmk1F\\.+Rj'T6T.k$p'*ăU"C8jUunT-Tm(3:Cf%ZHbzjwEb?#M*^.b+VgZuj6Yh4mamL3M>1%n:Ik<ap,Oo*/FăU"I84-F$V3DlW3h4[0aXe&EVfTTMeh48=])Lg'TbM$hTn<AVmRA>h*t71e::oo/R:ăU"%IOmouJ.9y#.k2n$Gq2$/0TpB#e#z\w%ggeQpX5>uoJa0todKTvd/U0wjE[vtzQăU"Lwp(VT1N%s2K:N;>j4UijR^:I>bGei^a/n)b'<HY=^6v[;ncif1&F.gl$rmrL0/ăU"oWc%rpQb$:e4Q=JbLc^/I3&3ODOqVTLW7KL:.^Gi,S/Wd-kFpQ[eCJ;6(5-3$H6ăU"-Gu2*PHh._'G(fq-e:9*hT_>>8^VNv9,ekC<$eW_dIK4&]$q'x><j'K0GSe0dzVăU"]%/dh&dt_*s12LS2tDs5eBmH'bY1TPS1FALQ7wMd:CpL($nM.t,4nd30ojt]>-%ăU"#zK^EMMQ#FyG'q<[fgI#nO)]pS0>:2u?NtCXzMN$[.XgxPf_#(R7lo'-[?/=>f1ăU"Nvda4ccx%rBzUV3w;>W\(Ti&Nh\]p74jm4Gab&=H8kC'?;ljC334cDV=u[=\ic&ăU"IUM.#boVVkWT7'WF<)2'4>kdk,pWF3Dd=<]%qh7/(;E=mr=m(J#oHRQ-lY2Z8-iăU"XXoP4L:ufX74I0VWF90V>/wQHibVamu'Zp>M=hB6go7Q/ba,GVF[30/NizeIJmKăU")U(3w5&vaHkLxfwri0tS&zb/xXT6+TZRKl$uwqiXX;ih.Y*IZnlE\8/NVidvomhăU"^Ut*>5:p[XU4>P[BDT84(;EcKfN_ZPvA8Jl_J#ov^4Edg-J>iGNZ5bW^dsJ$mK0ăU"K;gMF$JDqSqW>;r%nO>*k5BDZg4UZ2WL$BgImRsnwC^x:jDn/N6GRZ=4\fVF_v?ăU"sr-au?I>XJ0G\x/PftjmgWx;hvT(x=nMm+]U<\Vttef4rtN=EFJ#p+O)sWvkW6DăU"8JMr5ypYYjdpl)MvUt?]J]zJ6uk3Ww7/;ZG6-v9rXwIj[o5h4fh<W>_Udb5Gd/3ăU"oe5TbtjIAak$\v.AvLi-/$Xmf,Qb4E&Edbb'r(up%()9%%'%-%'o5$L-;2'\&9%ăU"%%'/%%%%/%%%%vfww(t&Sn%shxt7QOCTb&ATC+qFPnsQBEHZ,[^A-op037vmE4?ăU"AHEP9jx)Z#e8/&')Zi88Az)Z#g8/%o)Z_^H[^wV&'v1YFc.=0PI*.M1v=13>aZ>ăU"C'rJm+X<4]fK$Fh)Nea(kMgcbi)1:1%%up&'%9%9%%'%-%';(bL?)SHQ'N(%%&CăU"0%%%3%%%%%%%%%&%E%*/P%%I%%#0MAA>FLi4<>LS10B%up&'%9%9%%'%-%'+'bLăU"iO#&X'>,%%%bD%%%/%%%%%%%%%&%E%*/P&)I%%#0MAA>FLS10B%up&'%9%9%%'%ăU"-%'o5$L-;2'\&9%%%'/%%%%/%%%%%%%%%&%E%</Pg0%%%vf#wwt&%Snsh%up*+%ăU"%%%%%(%(%'%%%%&O1%%%%%ăEND SUBăCLOSE:IF S=42AND 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ăJustin Gartin                  COUNTDOWN TO SHUTDOWN          jgartin@mailandnews.com        10-07-99 (21:36)       RAPIDQ                 188  12463    COMPOFF.BAS ' Shutdown computer countdownă' To extract COMPOFF.ZIP, run this code under QBasic, or download DEPOSTăDEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2ăSUB V1:OPEN "O",1,"COMPOFF.ZIP",4^6:Z&=9009:?STRING$(50,177);ăU"%up()%9%%%#-%su#lLEG-/+h%7%%3)%%%,%I%%<0JGS1<q?BkV->;%+/5e)((mBăU"hV#H(,''5*G2C&[5kqkkE)PFh-UZxxxb8Tl:M%=*h<%-E%?F#'%WO=ZQ3])F%<&ăU"K)#%%up()%9%%%#-%avIlLgA&A[o%7%%3)%%%,%I%%1>JGS1<q?BkV->;%+/5e)ăU"((mBhV#H(,''5*G2C&[5kqkkE)PFh-UZxxxb8Tl:M%=*h<%-E%?F#'%WCeT*k'FăU"-I.B+f%h3FW0c&Q2%u%p()9%%%%-.%Axl#L<>?(iz*%=%;P'%%-%%I%y8<J4S1<ăU">?fTb5=\59AUvJD(;_Ji7#-Y[2tO;e0&odS$VyqZk1C86D$;G:gnf&73;6Q988#ăU"iU^9D3Y2[q.4?na\JtTr\HZ8xrHPBoJMtMDH82fnn[l87-xuP^o'e.k;0NTVVVrăU"V=0Xrh^#\E\zL'2mcH]IA79A4r-2n).>b4oAHlq6ctC_Fb<wtWH7J^4:X>bWDHgăU")td0=8)LVjptq&tuN0Yn9o6gH=)a^mb6+tCTfuDCu6RUBFI&4BNP:6T-Vn[/eqzăU"<*nW0Fpmn4Hm_M];q)rYJ28H.W2,f^0>6Hf(Bg9/n4#M<<q-<gfOX?D$S?q,S7uăU"cOls.fL3F'I3TbDu(TC6#[yByqm*(b.J,rgr8dO,=,G4[qEAfWXI^Mj=n_c3OUTăU"yeroBd.tw0b^sKWh/+0L_8Q&P#9sRf$OS:w8prI*gOeDK)(k<NuoIr[(y;>bs1AăU">z$wJy>zJnLRN2pU+54=<S&ZQ2omvOcCD4tFf(dpL-0o5;6fCfgb9luNvToS<tWăU"JZAQn)tn&n5Gv2Z$P>S7.LL=MCiaHd5S%\sEr2DO6KURJGqpMZgtBOnnQP'WVrPăU"&%<ZPsAMerC*(cT6a6YzrS,b_OdWhIJj+u>G&P5x?H;cn*<cfNUlqfiFn66UvLcăU"[ZH2hQXtg8;Lp&dLc-)nV<Or/=2,.cpa.tgovL'JfsW*(^V5N&atEUfP*XEpC\băU"16ngt&dBfTcKnm[:0rt7v/,*HDXsywg4LcE;)?P0(+-c(y\\D4h4R4>4KTn%*LcăU"tQ06rg%0/M.8;U+>Tdqoe\-w+J+BG[2tQO>fOdXpV*dVXZ4GbjQZ2oPxGu^=r('ăU"SP2P:LqUDv+l>_>6W4MPaF^$pNJX?DI9$ATrr<,==Nn).H$dKnda8x%$Lc*ngk0ăU"-M<c&$RLhIb2Gio4ZOKPK><-WY_QgHj1sm0G&Xo)__BpIbh5$bmML^_Frde7B%UăU"5IvBI=lm%tl.&D-^3),&bROfd;oDI_S7B-]lO.]OOfdoD0I_7B0-3),r&ROJ?3OăU"J_87B-3S),&RTOfdoGDI_)0P_),<&ROfidoDI^_7B-^3)ldS)ldoGDI_7FB-3)jăU",&ROOfd7,$d7B-^3),&bROfd;oDI_S7B&:jB&ROOfdoD0I_7B0-3),i&rD&;rDIăU"_87B-3S),&RTOfdokD-=4;oDI_87B-3S),&RTOfdoGD-3)j,&ROOfdoD0I_7B0-ăU"3)lidoDI^_7B-^3),&bROfdV7,d7FB-3)j,&ROOfdoD0I_7B$&:B&bROfd;oDI_ăU"87B-3S),&rPD&rD0I_7B0-3),<&ROfidoD-<'D-3S),&RTOfdoGDI_7jB-]O<.]ăU"OfidoDI^_7B-^3),&tROJ3HOJ_7FB-3)j,&ROOfdoDfI_)P^_),&bROfd;oDI_8ăU"7B-3S)ld)OldoD0I_7B0-3),<&ROfid7,d87B-3S),&RTOfdoGDI_74B&:B<&ROăU"fNdoDgc8ni'tDg(n_ff<TnTZ07uTfk#lllB^j3db5FT&D^Xl&,%p.*dUk4dvLsnăU"d%.6n]Lc<$gO4nVhw$HTd->uL)GOY^#FEu4Vhp[ttt?C=%>Id2UXuQU3$l4:0mjăU"(bbpGHX])3=s*P=1HF%;nIKlE:Q(M8Zr2n)QST(El2,iOMbC5ei]L86ORf<98f$ăU"d-T6Rc(oIT&0,x6rW5A$EPZ(ITsYm5X)OD_-vmE:HF[zc16g/N:6)jJ2X)<P<bIăU"\yH\sS6ItZ&0UBf8AyOj'X,\M0ha7N.i7b9gUmPW&&ghT^XJ&ljrW-ia0PKS6IMăU"%eHB[oZ;7KI-0qaQiJ6yBo,yp)1YdGgUBzul-O(k4d0Ylq>*dx&%up()%9%%%#-ăU"%^xdlLy.3vrJ(R%%gI%%%.%#%%y82<4;Sh1<?felb]TIU9Sd:$sA6AQAEO$Tc+KăU"r1CdKkt4sn=&/QW5<g_xettf*#l=6sOiDXfaG^>994)nhtjumqoqHkDuPXX3nzcăU"\l^6ndqYK;$,cpZ?x\zdCcHv-[jrFE4Vuhp#\WjCNF*DytE*l?]%FyY/7DvGC6RăU"B<eE^$+t7ZH$lZb4NOiI..Iod$oKE(_<^N=<[(d1Qz9&gv#^8[%==$n'Laik'iWăU"i6CiEdK&J3]-h>B&:%k[co)SIrP3AejW/9b&Tbc,_U.$XPLQqP^/?D'4Rf\^du,ăU"'sSd2xHSXF-EqO-pmDp=D=KnDVan3,]awQ0<bZ0Fp/BS#pUhgv;yoW%rbYE?wf>ăU"qTDM9YhG.6a8+'m$;b>&1%$&YTf<O8?M^6YjvWy;QE3d0Glfyioo0dmBM#',Z1TăU"'*O>Oh&-kS$3+#BxT.uy9ycJ#/\)8y6m_\F=IpvI'J,LqMXXW-v[WHsDi[Ro_&1ăU"bgLaP.rzj^lfq>kjn1%/rq#9Pu6b:iH]j0.+BxEK&5IT*>(=3]Bs(u-;Zb>EHnrăU"WWLG;ieuZvW-Y.q\O1$ziE#%f58LcdOXK]QTDDEZe+Vcx.7jY]67tT2\gAMn4qKăU"smu]aVXd5d+M_Hn%<B;/5Kut[n-8Zo_rh4=,-LNdC29n0b\<P7M&PBALnLtg4e3ăU"2MGIDbHi_#?%0F_fw:ou_5xt.Rr>(p+&wICg/jpZmJxZJ(+qkD4HIH?,^cPr]rUăU"xn:huWU'd49=TG=dm\Dc8>/'4<[Ktn9G?Eg[Q]X[B.RSxj5i6O,hbB%adkpvuB:ăU"Qhmh^i&LckBMp-YYA=jWnd,=Yhn0/Xb\<g3nU(l2$hD.\<s2/>gn..Cjzn]a[c=ăU"qBH45h<nU>[#4a>[2H*0lVh(0m;)5VW<de.ofO^=SlU]DDki(4_N<'%0mR[pDf+ăU";56lQuDD=OHsUYN6]J:ne.1EdGTxQutuemz7mZ&LxsLl)D=&5dn0BF&GM7_=L=DăU"ei(I5Rc1]Dc8%z+<'D8+QO6mr9.oIliOBcPigDI&I:um*hvfuV6d(*PAoa',sxuăU"6(bU.[CHb3ioH#%0F3hf3ZE3P1o0^30\fopYWG:kcGn%8s#,Liw#chvr&lCn.tnăU"jk=LiE*%.PiliH'p<up%()9%%%%-%(tulLX7pL#&&%%%'3)%%%-%%%LvD4BLS1<ăU"?tBkV>B;%+5(e)(m&BhVHd(,'5%*G2&J[5kkYkE)Fih-UxQxxbT+l:M=%*h<-&OăU"%(H8g),F%%xAj(2g(xa4[%R&?*U[^HS2]1UQg5'nuPv'e'%u%p()9%%%%-.%tulăU"ILRre%Ec%%+%3)%%%,%%I%r8=LS1<?tBkV>B;%+5(e)(m&BhVHd(,'5%*G2&J[5ăU"kkYkE)Fih-UxQxxbT+l:M=%*h<-#E%>;[k-%,KZ+a;%3%up%()9%%%%-%(qvlLqăU"t,58'i&%%'/)%%%,%%%2<71SM1<?lnbF)UdE5Ub#q*7XB>bIugX:$E9ME*m%I7xăU"68Xi?kGm5_;M333;]]nIVt+g.(tlGnnufuDejIZjFW8o8MoxqgjF*l*b82WEtNpăU"Y_>>^ph4N)TWO(_Y4*D=sGmA_xqtWxuB.HTx5V]qs+N_m9p.#Fo8tMWKdOmxw4$ăU"()l2t8Q,BHi$PBH;gtEU&u>(kAPCwcdo/%vJlU8hATQg]T#Ok,I(WNv*VP,8)8YăU"MH2[Rn5IZNHdE39bJ#Vjc5%^kmFA,+BQHo:L8j(172.GqA/.'*-HC;8A](XP5zaăU"zWWO288sAtQZ_EJUt[i:om(<\f,z+.(ngU,F<D;?2])bai:'):f8#eu\SB^e_CjăU"0V<W4$TPV(Bon^la5hNcG*ZkBFUcHi?Ww>QRk<OEdN4RtauSB.<rQqd:.Z(:N?dăU"+s_qV:FG,pB43C(D7SL:6>2g#2^AcJTm$JUM(I.gs)2P;7cH+\^/[,ZYNx4L#pjăU"-;iUAk\6\Sb9RL7re3geYA-]eJ1TR(t+S.(doJr)RF:jc2i_mDVp?d3K208Dj\TăU"7o_qfIkCiKJECG9%FO1^nPgMYU8-KISW2Da=I4QAPUQ6xId?O]O.QKW?72+;xDlăU"1kIb;I:#_p\*Tl)^N%u%p()9%%%%-.%sul[L:-/&gw%%+%G%%%%-%%I%h;>JBS1ăU"<;?BkbB#%&4ae%&=oUuEAB9';^POCRO.%9Re_AAW<6W6J>?wxxt(WU&k%*++jI5ăU"hWPC.;Sr('g092O)r-%y&)q%'g5S/'0'VCmO6Y&0%%u%p()9%%%%-7%71mXL+dUăU"'Pe4%%%y]%%%4%%I%h><M?DC4JAt55%SgfxN^*(BHTA6Mq&dw<,cC:nV4hO46hSăU"Xxepm9B79NCGh4<ykI'6oWIZ-?#\gwCklTlDHGP:%)X#S#GND:p6Vuv4voh>fp)ăU"R4=,/hmRQFNK*M^_Gm6KFO+3bV4$(n=+,b0fr>EGILv>aO3X*$Pjs'P>$Rj6b^4ăU",f)bJOsQpKuqivF_iVjH$;1AfqIm[IKDI,#mGS*AlP['9R96MB'+^U#t>6.j$:TăU".%UqmX6re7WwhKF8GKTO]ZBg63Av-$TfB9xjkMdlTu89O+#JbA;b'l,_xNhb=LnăU"_3GF#JU<9;;F68D[QG4$+GkzE?g;QtW/hA%Cj]D19*Q[j7CK*m5e[E[]1^$flm#ăU"2*#qwv3kPQUrOoUGjKI<nFkFsRW*1JX5kf0&63r7IJg+^0'(v]l<b1(i*=L3\64ăU".RiX,GU8,<>4]bn3Ixj6mcfHNZ>>Q7Qm8*$7UBcgDmvXP_6TYK&icGLcO0S;80EăU"X<v/b:RvS7T]:[m8u<Ieo4gE%f#92CRCj$,a5hR?U1Cnl?Fse>,S?W5Z+2FlG'SăU"q\f'cVz%-G_\HF.7)(XzA.f,IdE4%w;h.ihV8)rAbmB=+#,z?+f&pcb)y3^vcQ5ăU"4Au5#A>6UN-q4;C,7[D;iBIb=gfk6Y\BY66LGlV:tu]lQ044qHFfXLsmV[YM4+măU"aM&XPx=LwnB%VRkT_e05<_%JewYI0;OPaAS[>LWu_6RViGiAG]viSD^6h2gTL+jăU"2srrp6h4v^^S,cd04']L\5FlNbd>iL4O-oesj-[,qA>a))J4&^TCEquEb1&a^WHăU"Fb0AiGInoWk7h3;&i:1>$CJ5nRBj*[_dI^/YEmj<,0]Vx(Qbh3Ga<U0*#d.<8(WăU"S^l]BhGg>h;VB<SpA$QlMZp7UNMgSK7#Ot&MwqFmefZo\bu4uClF#r0>0T_<6xUăU"4lZq8DI(3dfd)Mjlo8:S_5dQXrK+npM3F6?fNL:KOinpP#iV6OPBeCZLah00U9xăU"fdV%E7S)(G4$'rIscXo6%RCszExSj2)u_H62)KlO[DTM'*CVo8N(;s;G_HK0OWsăU"z'/Gm*n>,A0I5t>G.NZAgyc61CznX8^:)/7xOaQRKJ%QS'*d1.?]1w8sE_1$ZN=ăU"E4F3u4'-=__/\Hs0:'y060Rxe,'dwvZ)8DzBXR>NC.S:8=&S4P?1]LFQN_zO%rCăU"$4I;VZ$&4(,68Ou+4bCPrc\pN-_B++YXH<_#)I7)L$7Gz-KmVBIsmJ4,Oi]mXrJăU"Gi&LLGOON_$?4vQp(j]j9=%w$e+[)?,#VW9QAOGOM9ep0jrl;D9IUTWC%BRRNmcăU"kFJ65JONqAe2^PO]/CggA*,$DOkXEP2oti&)lPwTY+V,RN;tT_2/Ogl+*4&%=P?ăU"-Q*:2O+*vPQ,<T4)P7Pbch[s^m)F*cm52$1;n3oc>Ib6kTKwpBhYe96VH6+DOkhăU")O7fpPcL1,#]w:uDXvDL=Jgd&'J\kw,cF0V6&2_B.Q,AU='&\-XWbC2c?]8g2D>ăU"-BkJkFvxjr(M8H?k\NEivJyDRNJT)'JtG7Ev+DFO+UMcYMv3(GPaJ*RE3puEf/1ăU"aSK2M$l2pC-i#;xAg.t;oK)NM.?^<;sc=)0[a64ZE0oJ9'C-.T+J;mb.<nkh9DiăU"k2FEiBui^[K^9^R*(?<Lw\p]DH0XvG8?G=s9GG8O6Qu]7i[Ye1\3+PQfgm=^uVqăU"$')WYIc%]X]fnePgJi974>V_pNodASh-2G,Q(NjK*2rwIJw,,2D-y$(<-;Sl=fZăU"-a,:uUNlIyF\WL%-C+$_pS3-PjYw&o/_l\.S',-[^2]C/BV[y7)Mq-U8DeZQ_[lăU"5a_0[cH1Lm,WhlYJ*]k[vT#B9lMao>'#CadW,I*:7vi3A5p[c*X7*gD5jA5J;)zăU"_;5&=fZ\?I+7jB7[>wd*ino^)8AIUN,M9;07wv[krdMKO&W-p/SiHGTb3r-gLJIăU"3:FG^&xdVR#T:S:DZ]3_a2%>pbTEK'asO&CZeni,JSL#3zshWKk[SR78$WFZ]<MăU"%bD_]RlMFe^qzZZHQ8o>k.csb%)HHZx_:I<SyVKnps?S\Zv1'#N]DC0(LV':&[^ăU"PqVb^+W&GB<g?EX7Xdf8uC]dy+7+CGa]AQLoDv1FZ.sQYQ4t%'=Pat(qs,KoidvăU"h6>)1Di'aIM5eDb'Lx%s%qPmN4lOuWkW\%E?0dd&sG0eSjq5=L2/S-*)mhb-L74ăU"T-v1FXjb78eWfR*7NAU7b)fH,:n*DjT>5bc\PKZkL]'u_+at6W0dhPAf*JAf=UJăU"x7ancxY%EWbIR3+'H/8Do?UIL=XGXq2)L(nfK5Tl-SCFd]>[P<7CB(_^+FubvX2ăU"WNd1<u--<C/;),LdT]ieF7fh84P*3$\?BwK#?;j0cGI;\-9b*Gqhx,(&LN[hVAbăU"XsvViUN.fM<m#v5(;oZ[:Rgz7Q$tSg<c88u\h1YjrS%\&/?e)>G%3fG[)GHiwApăU"mC\Te%,Gkbu4bTC_mx2=zn1bX:8RO?KMh7GMdMF[aIZ2Wyzjta?eN_tEnjqQn/[ăU"#uO+:bz1yR%Wk+1QP#XDD*j(vYCwKO48kE9.izQ'8Tx+l?Wj/Jb9G9-i2#O\b3aăU"Rq]Qa#nNT<#X*;SBc(:Ol'HfKaH=f?&_bt3HSn(bZq//sHL43S%vXxm:\$qWpg9ăU"[O6e:byn'hpt<s*IwoT5]ioX2'J0IDMJ%vb0u4sd%v#)TF_AE)-[=&X>>[yT%:păU"B1AaY4teg/]M-5t?%NA<pI.AX[WK;KxBm.BOQ/7:SFU7-L[IGVuR.:_sdjW>9Y-ăU"MpPQ=T5IpWs9<*A])54f=+6_DrQZtg?oS-/UJk>$KcWXhOMS4q/1p>X-=pQAuS]ăU"LoJQ<ba[CDo4,^Na11R>GTh,#-m=nN,Sie>]'OzI^;Oiw1npl\2>*EK'b(O[%_RăU"Ore[q$5XntLA*SNfi6puv3gS/lwC\FQ6H>vzanrrBZ5R';5CltprY0fles6>xt(ăU"%3w6RA7lE?L,OE>FoK#6AfG>J.4x<BNS,Wm1A=C(%uqJ%hLLE\Ezhnm,#k$k6NMăU"5XZIUI;fFWrpRB0LYMk:9S_$Uq&Bp<0tktbABu,am.CdmC(x$s1Yy'h^'W]]<C3ăU"yN9i7D&-SMHJCXFjEL2SK4u*4^e$$0IDjNgHXou8F3n2'bTqF[.U?jLkW8,ViROăU"[x)[/P7N3Z_n/-IIf:$GhlS_-uJlBAEiDT]u+E.Sp9&H3QFwNM>l\s&rC,Mf?*QăU"8.iuN&KFBgoAW3bv*c3eo;+xWGYsmnK6\i^6lZZYCa4jfi34Im_u%aeN9=&cj3CăU"RATIR-[qD:Yfe-h1;CR'1VswY<uutplj&bLSs8:sl/0P5L5l&l[T\HITI'EajCgăU"[pKtcXb#bn'P.h\N?Bl<K>1a1<5xOWY1(C*5VIDZvA\ezQ;iGcHHULf=h/0(YMbăU"FpVpa.5m.:]oD>.BDXV+5FxHWrI=ak81$o(3m-#HV31WlDq5L96HIjEx.GZRt1FăU"-qs)T%[O534skuq%FD4SjP1jiB5^v-*7+[>Zn80Y_E>hT;j6_VfJ:PYQ^DzR1T-ăU"CuIg4.z5>n(HHQ%Np8A2Xf\iZzZAgj;'W'apce5>C4d^-e72y8g9?OU$7)]u\=1ăU"JYUvj<<B:H8cXDl%$N&fk9=6Pq&*7Azwy6Vn5p1_E8A't#Taq#Ro#US,AF$N2srăU"8uQ>jEJR'Rs5H5QjbJsW^J2pEKP[f*i[bc;mF8ES*uGM\PTP9]]'aHh[ap0;]D,ăU"3gYMCAPMgD=)jPn]y9j4[>=Iv<*%bD7/0H-3AGU[)Q^rt/F#t?\t63=vwt*JxIyăU"LrAQP=hYXz%]%7IhsHY'a9I/gXMCdb7q)1[UiqH.6?x^M5a[x83JEKqmyYwB9ilăU"&NBf$t\jHJC5=6efOqcE#/<A[=%K/J5#,OM*^LKyh[Y6\i#bI7TWW\6mJ0N5V<jăU"of#0mS>>>FjCye_G<WffV9lk^2T$J,qoZ[V<1A1WR5A)G(^lnLfTnF^D'fN^ulDăU">Wb^IxurrWr65?u[^de>f;r.,cUW&7p&K_lyWBe(H0jm^d.v'?d_KFl3c=gZ8,'ăU">X)$4Ve(.eUY,]AKTZFLC/MX\cHVFWHy_NZOqDF*M#+oZB,sl1YuoLQN1+-pR:-ăU"uKli+7K*iT<<nq4eJ+1UDH9FT<:8_t3s(\sOVX:OLsZXY&imnFG'm35&HA+XqN9ăU"E#g?/2'IBO0e>)c74M$y:?iD>TufU%;]\D#EemQ8=['3uMeoDWiEda#A]('WH==ăU"PQDBjY-aJ3CspS6&ce7oY-ERi+icamRJ-+&to^?<='Vy%fAn_K4_8\3W%PPZtggăU"wrP0GG^/ysioU%M?%Du_NkWnq$[H_Ac_0(83Rx<V8J(P8Kqv\qG4?jl>N:7S6=ZăU"sG?$jl\[=$(Z$f(8GgXGUV$inuRjB2Gy^KQjzU>(>&+ehL%k3,K1JH8D<*<AnE?ăU"p\BRV.v>ihN\FZ0U(yNWh5ss9UO1FwQ_asK_o9=0//ZYrP1dmb^nGZF1+qwc[bfăU"x==%fv2K)gPPTSQC.X/*0zL77\'QuPjH]eo?QQI^P5ggL::'x1;9EA5ePFO]PgmăU"rav34p2TpN1Q*Y+xh0wb_]qSpJ*^aqU;r&+JHSu/QO3p1ud;.Mz_\.S4N0w8$RZăU":hLV)DGSXz:[z+=.YeX?c)x:KfO:ncoDyIogmrKv74s2TpMuQf3X')4r.p/Vs1xăU"87g%ZexoS$x<;7wZ%gnz+S=HkhC(s#2]chPa-rTaxOmZgbx#/&qN#%L+LO.FJhdăU"n8u^YAV<+HHfQ>;Sl_v%%(lRztQ2wZ4lSAJTENYEPF]R9C,x)yM]zHD8<'8+M'#ăU"PN9,+W5Wp03k\ruFXe5\/PG$ji2.PHr&5'a62XTR5+g+rLw&,>xK,L[G.'u^ux&ăU"%Z:z8k9FFME-t,i4Q%Km,NAs&I*TV0ASk>;wCje+Yvwx*Rhun$s;]6njqtV7VrrăU"D%up()%9%%%R-%[Y.QLA8/sd,&7%%w'%%%4%#%%h>M<?DCD4At5J5S82h>da*,9ăU"<U5kUHD*'#m9/&m?W:It&\(0sMha,5b(yIfh6<<niJxCFr<h$5Wh9\C/>,Z2xBEăU"b$#ospRNpd/C7WM(g.S*r7^ml+emqiH(I7I8R]g#35xXvOhLM_?O<=BadG^EXAbăU"vo]7DKgaA[4>moN8rkYdPd$3-(lQc9PG[(c7^[zzB9ae>0kS9Z+QfO4O5Fg;+:_ăU"diXhfwD]<kKMif7dVcXH#nvTZ$\\V]e4AUmlcZ3dwK*7/>fcnI)XhC%*Jj,HXkGăU"je+$1v'r8pPMqh.YOqEK(NShn0-98;$i_W,oK2V6t4Au$pg#d4aXpe:M4\]*fnwăU"%Ws*vr14Q#$^[flledt^E$#)LZRJU$?QakQgZtK#b<.HSQR+%)ZKbH*se6/b[WZăU"/\sHB$dUA0$wIdVV[hMK+h;=lRQB0bOY]CKMEJB=up_;3nL?58'DTup%()9%%%%ăU"-%,Y/mLMSONL&<%%%'G%%%%-%%%LxC>?LS1<?:jZ*2%gV1iM\k]U%V=(FDfu[biăU")cfq*>d;P2TZNI1sII^rTH77bA_hgu]32AlarJh)&=#z/dIiY7vro9%2_xG.gKXăU"n;bWBcWR8k^gd)5$6<V\?Kgz,zHO;uT8r2)4X(IxObDHfd%,up(%)9%%#%-%Y'/ăU"mLtAFNB=[%%%G%%%%.%%%%xMC0ACLS1<?:jZ*2%'f1)NFj[SL7_rf'DEL[\du4SăU"QIgTe?gpuLQ*K7=t<Xln\bXD+>bT[GrPm8P>M_7u.zNqj48N1T3JozI1G3_=^YXăU"=e_RlKxNqr4EXcUVwTFb,:*_+=W$j<(eSj&aNZ95$o&D%up%()9%%%%-%+B0mLmăU"X[*^%x%%%'_)%%%.%%%JBy8<J4S1<V?BkL-?;%+85e%&]=GuE'AE&;0X%dl((BmăU",>:P'*D9kW4]CwU9Ay+G]lD3:P3'0D1pf?hWT6v6r8Iln3Z%W6J'p'nWl92B$%EăU"j,>(%7^%%up&'%9%9%%%%-%(sulLpEG/+%h%%%'3)%%%,%%%%%%%%%%%E%%%%%%ăU"I%%<0JGS1<&?up&%'9%9%%%%-.%avlLLgAA%[o%%+%3)%%%,%%%%%%%%%%%E#%%ăU"%7#%%%1D>GS1)<?up%&'9%%9%%%#-%Ax%lL<>/?iz*m%%;P%'%-%%%%%%%%%%%%ăU"E%%%'P%%%Ly8<4LS1<?%up&'%9%9%%%%-%(^xlLYy.vr&J(%%*gI%%%.%%%%%%%ăU"%%%%E%.%%w+#%%y82<4;S21<?u%p&'9%%9%%%%-%t&ulL7QpL#&[%%%3%)%%-%%ăU"%%%%%%%%%%E%%%%o/%I%vD4JBS1<&?up&%'9%9%%%%-.%tulILRre%Ec%%+%3)%ăU"%%,%%%%%%%%%%%E[%%%#%/%%rD8=S1)<?up%&'9%%9%%%#-%qvIlLt,?58i&7%%ăU"/)%%%,%%%%%%%%%%%%E%%%%O0%%2<71S21<?u%p&'9%%9%%%%-%s&ulL:4-/gw[ăU"%%%G%%%%-%%%%%%%%%%%%E%%%%d2%I%h;>JBS1<&?up&%'9%9%%%%-7%71mXL+dăU"U'Pe4%%%y]%%%4%%%%%%%%%%%E[%%%0%2%%hM><?D2C4At)55Sg%fxup%&'9%%9ăU"%%%R-%[Y.QLA8/sd,&7%%w'%%%4%%%%%%%%%%%%E%%%%IB%%Lh><?MDC4A1t55SăU"282>u%p&'9%%9%%#%-%YB/mLSMONL<[%%%G%%%%-%%%%%%%%%%%%E%%+%'C%I%xăU"C>J?S1<&?up&%'9%9%%%%-:%Y/m.LtFN(B=%%+%G%%%%.%%%%%%%%%%%E%%%%f%ăU"D%%xMC0ACLS1<?%up&'%9%9%%%%-%+B0mLmX[*^%x%%%'_)%%%.%%%%%%%%%%%EăU"%7%%OD.%%By28<4S21<?u%p*+%%%%%2[%2%D%'%%u%E%%%%%ăEND SUBăCLOSE:IF S=44AND 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ăWolfgang Kempin                SMTP EXPRESS MAILER            wolfgang.kempin@a-city.de      10-11-99 (19:41)       RAPIDQ                 266  8520     MAILER.BAS  ' Express Maileră' done by Wolfgang "DarkWulf" Kempin <wolfgang.kempin@gmx.de>ăă' This program sends e-mails using SMTP and is based onă' William Yu's CHATCLIENT.BAS. The main routine isă' TimerExpired -- it will send the mail, step by step.ă' [Look at the code and you'll see what I mean.]ăă' Hasn't been tested very much -- but seem's to work :)ă' Hope you can read my cryptic programming... I don'tă' usually make _any_ comments at all...ă' See RFC821 for further information on sending SMTP mails.ăă' Remember: Some SMTP servers require that you login with POP3ă'           first. [Go and fetch your e-mails once -- then youă'           should be able to send them.]ăă'Versionsă'--------ă'ă' V. 1.00    First complete and working versionă' V. 1.01    Fixed '555 Syntax error' when sending mailsăă'To do:ă'------ă'ă'    + Add date/time calculationă'    + Perhaps some more error checking... but works okayă'      at the moment.ă'    + Make a better form -- the current one looks somehowă'      ugly IMHO.ă'    + additional cool stuffăăă$APPTYPE GUIă' $TYPECHECK ON                 'argh... I don't need it!ăăCONST DELAY = 500ăCONST False = 0ăCONST True = NOT FalseăăDECLARE SUB ButtonClick           '"Send mail" buttonăDECLARE SUB TimerExpired          'Check for incomming messages from serveră                                  'and continue in sending a mail.ăăDIM TheFont AS QFONT              'Font for rich edit text boxăTheFont.Name="Courier New"ăTheFont.Size=10ăăDIM Socket AS QSocket             'Internet stuffăDIM SockNum AS INTEGERă    SockNum = 0ăăDIM LastLine AS STRING            'Last line recieved from socketăDIM LastCode AS INTEGER           'Every SMTP response from the server isă                                  'in the format "nnn Text..."ă                                  'LastCode=nnnăăDIM MailStep AS INTEGER           'Which step have we got to do next?ă                                  'Used in SUB TimerExpired.ăăCREATE MainForm AS QForm          'Main Formă  Height = 350ă  Width = 500ă  Caption = "Express Mailer Version 1.01"ă  Centeră  CREATE Label1 AS QLabelă    Top = 12ă    Left = 5ă    Caption = "SMTP Server:"ă  END CREATEă  CREATE Label2 AS QLabelă    Top = 39ă    Left = 5ă    Caption = "From:"ă  END CREATEă  CREATE Label3 AS QLabelă    Top = 67ă    Left = 5ă    Caption = "To:"ă  END CREATEă  CREATE Label4 AS QLabelă    Top = 73+27ă    Left = 5ă    Caption = "Subject:"ă  END CREATEă  CREATE Edit1 AS QEdită    Left = 110ă    Top = 10ă    Width = 380ă    Height = 20ă    Text = "mail.gmx.net"ă  END CREATEă  CREATE Edit2 AS QEdită    Left = 110ă    Top = 37ă    Width = 380ă    Height = 20ă    Text = "anyone@gmx.net"ă  END CREATEă  CREATE Edit3 AS QEdită    Left = 110ă    Top = 37+27ă    Width = 380ă    Height = 20ă    Text = "someone@anywhere.com"ă  END CREATEă  CREATE Edit4 AS QEdită    Left = 110ă    Top = 71+27ă    Width = 380ă    Height = 20ă    Text = ""ă  END CREATEă  CREATE Button AS QButtonă    Left = 70ă    Top = 250+27ă    Height = 20ă    Width = 420ă    Caption = "<<< Send the e-mail... >>>"ă    OnClick = ButtonClickă  END CREATEă  CREATE Status AS QLabelă    Left = 70ă    Top = 280+27ă    Height = 20ă    Width = 420ă    Caption = "Please enter your e-mail."ă  END CREATEă  CREATE TextBox AS QRichEdită    Top = 95+5+27ă    Left = 70ă    Width = 420ă    Height = 140ă    PlainText = trueă    Font = TheFontă  END CREATEă  CREATE Label5 AS QLabelă    Top = 98+5+27ă    Left = 5ă    Caption = "Message:"ă  END CREATEăEND CREATEăăDIM Timer1 AS QTimer                         'Timer for checking the socketă    Timer1.Interval = DELAYă    Timer1.OnTimer = TimerExpiredăăSUB TimerExpired                             '"Main" routineă  Timer1.Enabled = Falseă  Timer1.Interval = DELAYă  IF SockNum <= 0 THENă    Timer1.Enabled = Trueă    EXIT SUBă  END IFă  IF Socket.IsServerReady(SockNum) THENă  LastLine=Socket.ReadLine(SockNum)ă    IF Socket.Transferred  < 0 THEN                'server dropped connectionă      SockNum = 0ă      ShowMessage "Server disconnected unexpectedly!"ă      Status.Caption = "Please enter your e-mail."ă    END IFă    LastCode=val(mid$(LastLine,1,3))               'Get 3 digit error codeă    if LastCode>400 then                           'indicates error messageă      ShowMessage "Error: "+LastLine               ' -> abortă      Status.Caption = "Please enter your e-mail."ă      Timer1.Enabled = Falseă      Button.Caption = "<<< Send the e-mail... >>>"ă      Socket.Close(SockNum)ă      SockNum = 0ă      Timer1.Enabled = Trueă      MailStep=0ă    end ifă    if LastCode=221 and MailStep=6 then            'last step completedă      ShowMessage "Mail sent succesfully."         ' -> doneă      Status.Caption = "Please enter your e-mail."ă      Timer1.Enabled = Falseă      Button.Caption = "<<< Send the e-mail... >>>"ă      Socket.Close(SockNum)ă      SockNum = 0ă      Timer1.Enabled = Trueă      MailStep=0ă    end ifă    select case MailStep                           'Send the mailă      case 1  'This mail is from...ă        Status.Caption = "Negotiating transfer [step 1/2]..."ă        Socket.WriteLine(SockNum, "MAIL FROM:<"+Edit2.Text+">")ă        MailStep=2ă      case 2  'We're gonna send it to...ă        Status.Caption = "Negotiating transfer [step 2/2]..."ă        Socket.WriteLine(SockNum, "RCPT TO:<"+Edit3.Text+">")ă        MailStep=3ă      case 3  'Dear server, I'd like to give you this "letter"...ă        Status.Caption = "Starting mail transfer..."ă        Socket.WriteLine(SockNum, "DATA")ă        MailStep=4ă      case 4  '... and here it goesă        Socket.WriteLine(SockNum, "From: "+Edit2.Text+" <"+Edit2.Text+">")ă        Socket.WriteLine(SockNum, "To: "+Edit3.Text)ă        Socket.WriteLine(SockNum, "X-Priority: 3")ă        Socket.WriteLine(SockNum, "X-MSMail-Priority: Normal")ă        Socket.WriteLine(SockNum, "X-Mailer: Rapid-Q Express Mailer by DarkWulf V. 1.01")ă        Socket.WriteLine(SockNum, "Reply-to: "+Edit2.Text)ă        Socket.WriteLine(SockNum, "Subject: "+Edit4.Text)ă        Socket.WriteLine(SockNum, "Content-Type: text/plain; charset="+chr$(34)+"iso-8859-1"+chr$(34))ă        Socket.WriteLine(SockNum, "Content-transfer-encoding: 8bit")ă        Socket.WriteLine(SockNum, "Status:")ă        for a=1 to TextBox.LineCountă        Status.Caption = "Sending mail ["+ltrim$(rtrim$(str$(int(100/TextBox.LineCount*a))))+"%]..."ă        t$=TextBox.Line(a)ă        if mid$(t$,1,1)="." thenă          t$="."+t$ 'one single dot=end of mailă        end ifă        Socket.WriteLine(SockNum, t$)ă        next aă        Socket.WriteLine(SockNum, ".")ă        MailStep=5ă      case 5  'Log oută        Status.Caption = "Transfer complete ... logging out..."ă        Socket.WriteLine(SockNum, "QUIT")ă        MailStep=6ă    end selectă  END IFă  Timer1.Enabled = TrueăEND SUBăăSUB ButtonClick                                  'Begin to send the mailă  IF Button.Caption = "<<< SENDING MAIL >>>" THEN          'Abort ită    Status.Caption = "Please enter your e-mail."ă    Timer1.Enabled = Falseă    Button.Caption = "<<< Send the e-mail... >>>"ă    Socket.Close(SockNum)ă    SockNum = 0ă    Timer1.Enabled = Trueă    MailStep=0ă    EXIT SUBă  END IFă  SockNum = Socket.Connect(Edit1.Text, 25)                 'Connect to port 25ă  MailStep=0ă  IF SockNum > 0 THENă    Timer1.Enabled = Falseă    Button.Caption = "<<< SENDING MAIL >>>"ă    Status.Caption = "Connecting to "+Edit1.Text+"..."ă    LastLine=Socket.ReadLine(SockNum)ă    LastCode=val(mid$(LastLine,1,3))             'Get 3 digit error codeă    if LastCode>400 then                         'indicates error messageă      ShowMessage "Error: "+LastLineă      Status.Caption = "Please enter your e-mail."ă      Timer1.Enabled = Falseă      Button.Caption = "<<< Send the e-mail... >>>"ă      Socket.Close(SockNum)ă      SockNum = 0ă      Timer1.Enabled = Trueă      MailStep=0ă    end ifă    MailStep=1ă    Socket.WriteLine(SockNum, "HELO localhost")        'Hello server!ă    Timer1.Enabled = Trueă  ELSEă    SockNum = 0ă    ShowMessage "Unable to connect to: "+Edit1.Text      'Couldn't connect toă                                                         'serveră  END IFăEND SUBăăMainForm.ShowModal                                       'Start the MainFormăJernej Simoncic                CUSTOM FORM W/FLAT CLOSE BUTTONjernej.simoncic@guest.arnes.si 09-01-99 (12:44)       RAPIDQ                 394  26074    CLOSEQ.BAS  ' Custom Form with flat close buttonă' To extract CLOSEQ.ZIP, run this code under QBasic, or download DEPOSTăDEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2ăSUB V1:OPEN "O",1,"CLOSEQ.ZIP",4^6:Z&=19227:?STRING$(50,177);ăU"%up()%9%%%#-%aOIDL0j,Vcq(.%%v/%%%.%I6%2;2>B4S210Bz%y2%,=yYD\?YwăU"C\=8XD\T&zT=BSe5L+l[DkIvvRi#ie7xb$[m?Gg?:f'=<Zamz+(:=2QMQO*xL6ZăU"67eQ3TqsaHfE^m'RX$X/Ky0?aui'X%LV.N-E/#?l&9^[#:)FgTg_im80<I*]qp<ăU"j,4-FUBVw?TZnS#8('.nA/aD/*/zMk*W,I&-it/[-tPLLZKEyn[cWHP-lHI<c-OăU"QVZsB3ge\DClTTI(NQ4Xfy$)Ka-?=p\%^d_=*sPF$xi'M0*w\>yrc#T*wNboS>&ăU"t-dbSdeZD)ekS'Mb\bUsajsqvbHPC*i([$&>NJF0VG$%X8/Z^]24Wbd9JhhdRIsăU".9WD/o)cZhj4iilpRX:Hp\%0m?zTiEi8sz[QVDtt[U$)>\=P[t]3dKWiA1Mz:5ZăU"G:V/&6wWL]j*K9)=c]fFMQax/eo>\h41dLh(^2_)fkfhVY'(8>u'S_hs^TARX$MăU":F%X'^LScj%/Z>^IegTwKQ242eGU,j1bEck*1l1ZKgpqs=IQ?%8Y=%_8pe2^G+.ăU"<%+3=vk,n/lduCMtOaG,$[E-p;2b%qvs?=l?ZU6Sk5%OjgGXE9kmw*=?S:E*2>wăU"2^Ih7OfLcUosCPDSPKMPF&'pPG7*]&QQ3'v.y#+g-t,M3+^f#f4a,>4*MqT#opOăU"*>%9y.RQst'x-ITAo#Lq6VFrOTmHd.yhi.WE<iABfE6lW,(Y/qIt,pK':7xrg$CăU"Ro0a6bCuiO&TCCEg1xvB90\a3Mg3mDv$<n7bi?MGlqyxU_+MUrHdZf$2S8P=AW/ăU"T8./el,L=x:Jh61FQr=Q,'+0\*L'>gST\8=b['dz9l9C9:JffzhUta)q]qP?vg(ăU"l>XlF;2m-Nm+jS/C370B\D%hMpOqZmR5,kd\nv+j_w\Z%NfGIp39#WReNJ5ts1UăU"YoUu8JIFi?PT9VLE\p*gmC4pf\*&pJ%Il8in>Ima+gelU.r*pz]Y=Oi02JA4ShJăU"(3C:kY*fB5I[91;rKoqh*rrg0>BNOJmrNhuH^s(_F#k9c#kTvhjn24Zt:]cHzgRăU"D4(2n5hqshs^lnS#vxyM(MZ+2Oa6:Bp-H=0/xp-o>GFwI-G-z2;)M(%up()%9%%ăU"%#-%oN.DL_81Y/ih%%%mZ%&%*%.6%2S21<?z%y2%,>KXD\?YwC\>IXD\E5k0cd9ăU"zM?u8GM4qynlYf^erY&R&*)#99j\K%Gwwr1z%'2za3*A,:ZzRVcI2P]'I1eEn1MăU";b2MbEC9ai2r(E8O8EAq?#1c?L[(C6N-6IuN4v6/(CW3Ul]Wy3XzpOrK4la'uNVăU"lItB7XvZ7xxNtz3#,<Pk0]=&sH7d.]m5Tw^rECSHIobPwK01EPk.Wt0xO1aC,l(ăU"OdgSJfh::CPuqhYQooE*Ek^8r,6H?Jk^B?E[XL1E:Q*'E5GVegS,Y^rDf\W_JOdăU"6pbVFpk3*1>j/%+2g7z%&E;iZ:W)Ef)<%*032&+#*?'3cOq+Jf.6Q)0(>=1Z+WUăU"G\\Q1^e*t?tf0c\G$ho=bpUAR\$u>1TK3?uDk3FAub/9M%sK:Nw-%Gn0(RI>0TrăU"CQCt:FFXDT9x_'.AnA(KoU&u_K19Mfu0iWB09Tf&NxMyUa4$s<JJ0u0lpe2)b:GăU".QbHCQeC]<3ELQ.[FneS;LuXG[NnZwq>X^9dz_PN_TE=:<sc)fWYu2n9/dpxGrJăU"q1MASH+HNgPRv':(M-6kGm%Yu:4Adeu;;Vb_<(0Z.YZ*>**^,u&q$,qe/d3X0j_ăU"iWNGrauljc3=pjsJP:BNJpJm3bsKu>Fs#jQ6Hp[T><T[8HP:*M:4;dNa7*#0m61ăU"gV/R[b'/i<n8Q]qe7Pgc9/l4h9,4+'0c/ZUu1T\\d''nJ/Qm8/;PdPi:uV?,QueăU"+XOd,G+/2'fv_?GLTOZnR$3dnVnTN>hmY487);w,HIjV?oEL9-2=ot'\gHeL:&/ăU"Ntt&[58h.\BX_)PXXf2%6g_'ZxWq(VLX'8=0dBq3sJ]p/Qr$aAQvfiWkuYnd*?lăU"pNgpc4dVhlLh$hu(<uXSM<lN&D\_cT6(fRqNQb<PFYw$o4Uh,p2gL6j6#%7t^R6ăU"0W[gc54ATNLKkHF/c_WDY)kN$<,6fa4cpV,UutQ\1$bx,)$r>C:TVdWYu4xc(Y#ăU"#LNGZndJL?f=JR(\v3m#[vmt4UkeX01rTU<#<ZW(0<z<T#vdBuA#MroBEt&/0_căU"nK)lXnJ'cwmRUpV=4bY;ra2p\fatn#k#4-=f%t-?oEtX=qk^X;?Nxq[?'S78?P5ăU"2(WP;XPruv8;Pc[=kfR^OLC_VVt*4[Nb5VJ%_:1:qUV(v<'t)a<b[bzQbsD=KKLăU"E5F^2rrG%f,OV)6e,0Q7?=;\2FKOPcxnb%$ro8dGEw?f-740<,M50<Zvs0'ZnX4ăU"#$w>c<C^,JkEv(T%m9o1xuwtjIRh4Z$j,//Dm4D:<d4d[#(CJ1taaj)/5=VYL_năU"K7HFal1mkLo(5Hi;0GibtfioCP(Yl.P-<U#>5PufT0\u&0W;WT>8\el$F[rVFX>ăU"Zth8^8^cs-r4Ef;ugV4JlRRXH+dxAb#bbMf'D===?9II5?7q[0M[\\02KKk)50+ăU"=elKJ=a<3FckWYsxUb;x'+:3\vP)e][h8F4h0-s^n+LKjU8^]vn8Em-KhNA)uF[ăU"]T]C.oI40>5K+4<sS_IE%;WjmJ4t1mXp3O?bV^g2Fp*]bRX<uYn48D_NIqp*MmiăU"vHcB9pfp;ZG+.2\v$MJFpunonnFGL,rQM#]C]BQh(GcBfnk_%wvrIyvvKvzA7[zăU"m(N5PcL(2slELEok^WEmmbRGJ1,ilpaJJ=W-Pd;UVaV(YcAK]>]a;#smHX6J=W^ăU"hYuLtUk0fRXi5S68MFhlucDvglj^&]4u8Qj4auYc(3[B=dX3ob-Y:(u#4g_CcaIăU"ffJ_[]u?<=Zdpcki.>(5)[hyzhP#jIv0[m4HD'b?B>#B>>Pdc/HXdMz5g%h86+găU"P)(K%:[[k&tf$%HrY&y.s^WK7G3sFnHAcZh#I[\C3*F]'gCAAk?HgP;(RKC#miaăU"H[r1[#TcLdic\m8jX99P>kGsdvN)gMyG-t/ySzCCgPoU,&slr1&$uElrh+qkc>zăU"nimS51;CXAYK09q1k5(Ii2PWA/4ojZ]P;&JeQ-5GYaM]\u3T+E0^AkZ4l.3'DWqăU"'m.x(H2C+W1Ij7]%iY_7^r3k2j7AcC0jmV7I,z]5mXpuY0J(721N6i:K#)is'eCăU"rqNK_*o4Ud7[Tq?&tHRoE#^U#elP99&KhzvGg^%AF6^(b).C>y[1SLr*9FB&-v1ăU"cyni[JKsf:RmSja(A).o/3;iN\lu)MBPd\uNSY3t)u3kBB[^dC\JOfR2EBzhspOăU"__vdMEoi/V%J5iLr+6vHwPlBxROCcLKrVLXLnG+LA#;7RRFuVcPT)k3Ypf\JB=YăU"c2Bqyv)GVjgGP5hNrhLoj8&Mel=e&qoZS&hriMBRnf2+W^6YC6p6-:#pNyMT=+*ăU"i\\m?;]9t%g1N9-2?=NB;LI%cCSZ,k(QYZHGJc[HKc;%vO/cAkc3mC.9'_3h'IgăU"n9E.L>,1L;V5=w0JxhF9D+JoS:vZIjO%1<wcF5)Bm_J8':vd+OTfD/c-LF\1$STăU";%RBp^6Ed<m9T%Iqcl8A]E:+5.4>?O6gzp,CcliKibV/.3Fo_]daMBi-9ZY4i?jăU"&aNJ,0Jr?pc__MJf.H-IRX'(7s6*=P)>x*1)$x$h)lAooW-Z:]QB&A0LOs2B[2?ăU"sTY5$6jFZ]B^?Q6I9tHB(i1Ik)V;>B9ZmR97Nh<v7n:hBz^/J9So&G'ty7J%M]-ăU"l>Ozkib^wG>XbvhMuForID^#TlbR+FI3e2)uLoCS)di97CgFW8\0haC5v5uw/\NăU"dG&CK3pr\NY&Qb;M38Q/,&DTMb)8J9'CW^p=?7GG#OHh8$F;t)dn5%Mn:#WdP3NăU"$Y2R$0uptt$]vhjl/iZNMuQ9UhHNRBd_wF,,R1;cs,?auH5Wdl6n,G?m+nJTDrmăU"y\;TCKnj9mOCnP;jm'J5(&87LVZ4W5]Qnc9Nntwb0s4wm8Rd_=aM1:>nUn]>s7QăU"gV2NJssSNF^gcMgm&nl=hHP#_QBTFOLDO6Z*kLjqhVZ3HrCZFB\sgD7GMc4J[]7ăU"h$t/sL:p^BOiodmfC6LPsFCTg6MY$Psm2X3CdiO?etMf$5c>#>6-p'C?P)6hj-răU"cQAf=Z2&HmZ#qMF%>qB\<,T-u.>fHyk4XYwBLE^p-XQ=]MgSK+&9)YBQNV_TdX&ăU"3UN]+kpc7fjPIcQ+C>_fg$MwGk4td>)(o0\s/Q7EUsoziY+ak-BZa?.6:u,/k#tăU":?O=h$08;l$<R+3x>Gh[CP4J'Y^+avN&D8cH5L/yntm*BR0tNKS[h$KV=JLx<lAăU"'EA?7Zt;GF=UYENW;PNGsC-IgRm^YtL*^fGKZ82XvT_hL3N%[hnLw.z3pqf6Pr6ăU"/Q^0K9g9sp#SqHJ<N5,Iq:I^eL/dWx+:J<#_?[s&b>,.T&nT#:lEk';l2l]%nLDăU"QZc)cvQ/]=QD:H-_Kgs/ASrPJS$Acz7e&AJuR0]I,fi/fnmhV[oTGYIRV*s+HnqăU"9GnV:^z3$\UPbv+0C/>\ov>k]p7i6$cEXiHcr>siLd&Q7zCVzZc.l2MF9<Qg)KvăU"7E;x,x*I.OtdTrqd8l2re>J,?mn+<eLd5^1K5r#ul9sG*thtd;qKvOEUZsSV=3^ăU"9nnr-fC.d3=t_sWb32:u4mPJdiNq8a;5VpHg])gTP+JDlPU,p?0+dk(Zg7u>'0tăU"S:HrV>%CKk[;?Z'5,o-F^RG;_K,gm8av20H5h3[Wf0$tvipjM8[OFBmdnRtDd]OăU"U>/Un#sehAXRSoxolT?K*IsKC:sQP^[t&Ag.nA$iSt*Cg;K$jUHR&ug3L_]?m-1ăU":gpsAo*7vO+o:\]Nv9#L_^2M(.Uhe_ncw+M[COP9o'NBILmA=I=6='oM2Dhc#<găU"'M3>&uEllQeH:2pxYUsi4,mwJJ-a5,;$f6NJF%k8XeYtIduH$AYsP;]h#hiqa&uăU"u<;W.j7E2Iv)y^THZh]ddrImT6vAjz5HGROf+JX;(XW$A^A'Ta=v%=R^GbHoQCKăU";xr6PXvBp$PYO'EXIsgB5j(lrghIs[\c\^P,f:/;_J$;QkJaDOn,6gu<)LYJbmgăU"8sSu.3\dWw1]pzJ6&amN+8uW:5)cpAl=O$,9LH^o$(XoY6#qTzR.YmwrLAbpUhKăU"wwXepU,r9H/US(kn:WA>K]C0K6x8ShpX-FQDo,(2v1T$m97Nhqz.KPV%Q[wZ0P7ăU"tU79uKB&?6:/>iD>aFd8N[BqafUZX<XijZlbLarz1PN[Qmjv(gWiP)QEDygu(ZuăU"N'bXLLbl-o6$r>skV5d7:&:(ZgI?gKhCxG/wTA%msEIUyA&VDRTNLKFAb-gkzGnăU"H#o?Spp#oad_ltl,-2>xJUy]7es&qY*7et<JNzCpmh\XoGxoF/?/n^i3?50h-XhăU"rb1\\IzF4r;hXkRrk&[WfgpRylSC:CFzPok[-o-iim6/o4^g;\5)Zet>utoB*=-ăU"1>W]$e5ua892iiqE2<&\wZC#Zj6AX=9mEwX/FVb[ul1XR6JIf:(=Q)C_f\H\WxdăU"eWm33:TP#JM;O8$Lj]&sNaC:n6mmXv'X.Ao4+]v?rOyYEX&*X61j_H/s/X/E'$SăU"f#_d=0AihDBP#-+1<n0:03MDX9thO7Vu_8lna_QPi9.GZY-sMX?wpgc,V<6i$r?ăU"bu)P<D6';1Omnt<a+T2Cn_:/_VEDtHm/UqN[Ryi\j1gd2(U6i+evK%rr.,Ep6;iăU"vpZSNhGkoJ9icK=OSbWLDG7wmxmImdNDg9tnnXL<&U6lvISRs8-vKswqE6V8uugăU"O7qpp02.4e:TX.EeEzESLOc]VmTC'tKsHlaP2]2.<KnA8zTBJ:lrB.V-k?z2F&-ăU"/,&j)-)9FHdoxc>[;1zYeAaWM]g(igvAi)?nsB<(XaHIDJVTkeNZ<(W12ZvmcVjăU"qs[Mwmn3lcxToYWG\3A-Cdf]f/p>2mqBki615*I^e3#C:p+g8wJ5D_)wCm)wM_VăU"MyW)eghX)BEoYJj>uO<Jql%EnLg2s%J_x2_;Awg(6WrDDNe(.jjX'=GV4J?a.r6ăU"N)\GL<,U'zb-3Hc8oR^w3&GXoxZ]c58mZLfFE)^bG^ZnjX6o.zCp8oJAhE87P5VăU"Ip+zO=c*q#Q.Aa0d=x[kXGH.pCVVbaK?F#nC/<6e6gJng^[th0qC3=I.h8tRA?dăU"Jj+Fne_C=Z]GXX\cbWe*tE?SnSK76&0RCrbs.CIH?e9yil<=CljD0G;6OT%BDAsăU"BFZC_pOAZ3pRm(PZgAX^CZH_qZAb]9*dw7dmM5YTLH&H1hPCte344YJ[H=gq4ceăU"%Ivq.J=>$=TB&07Kk7RXU&ENqjZC6XAHyGva:te-dubESWGAq]^LKZaPIeRmhbIăU"/q&c^oMf,30Q8djq5bA*7$YqCpX<3cS6rOed_XnMFiH1U0HCkZel#RK*9KS<rAtăU"zNBfR67Pw:e2u1Npb]lJL6N&r=n7::CF,eJjN)+kYf)n$t6oQ\q-Nws_=[vSR]_ăU"w;)Dub-LvIrq6xgXk%*.qlb/lG>Hem^f>^<IVKzglaz+)niuE:1(FA^Up^_U8kNăU"8.=kW'1V-Dn>QWPL;.h]T.>%8w\Q5n7v$:Bo0)8I\$F9H8Ni$8Mi=l:'+(qm\jLăU"b(7pU-X?jbK1:/.+8cKg+pbJokmcP?GwL&5heDTw9JAh\]0tz=hMESuNnzjt>L2ăU",+UPXdT8i,0CZZq,RS.*JHYlhdQHtv:a<ruYCc/w?ALZu%CttdU.rr8GG8qXJ\NăU"6OEmmXWZ36X#bb4uRDnM_$u*s6_+ZLK*<S+q18Om\U&=t9ohcY9og8Ph#G++&L'ăU"cckf#+kl[mgPs\nLgKZu#,uL9pXY>5J-vEbT'<2vkh3'ZfP)nygZ^QpB&-&x]/%ăU"VxuB38bXS=pi_f$1JaT5$C6bcoMViT(TqF1x(ml[u<%jgR6BefWqWrb,&E*8/*_ăU"ADl795AG(&FGH^ZlxMOZg7#B?IKwrWl14H[2K\2wChhy+nvsn1>]fC;BIAvFJ-CăU"Hn\ajHCCLZtr31FwjStq-fF/N;fXgX,H,,b'W':9oI2Laler[fEk86i1:8deSnfăU"-.B*5F0\_u.^$Hm=d>\5'QdO;/91X3+H>iMA7cR)-v57^^_$VEdW3VR>pYN/mhhăU"e#*NF&^sDdduVRTNOzaYLL9uC(i%FSoGF]&RpprBNYg_3%aOj8Wora'QXBrV\fVăU"^CxWV''B;GFF#BfA6H>C$U7DVL[4QheYLPCS:O*BC*KqJ=4HG;38MW>hf5iI:eRăU"u9w?hqiDR6SFY^Il]gJIMM-l8-0QFZ1MxRJnDf/84eM&oq&qIS/4;_7,H6.FLXvăU"H%sR'h1'6Ya&gH'D(nlgns283L[q_=PZ?2'<ZFsxVtKDMo\l$o2gY&->$JzVlXgăU"r$wRS.HZ3s[On2Fk;:FIkS1L8y]68'R5OKVXk%D<R8O^gs,?Qhz4Z80tufy,AWlăU"7N$t+Nq-Uk%q?H/$&3LwGh'*fgH^ObJS3$0ID3=z=oxrs*6Bn2YocE6hG)0\:n[ăU"QcgSm7JnFsoAkL#q;u\cRv&hgv[jps/MViRxUgm>NZbN<D0doe-cP/4Ujspd)aHăU"OuS;;(WxPfJwYVYZlGB3:YdcwJd(,vc[fnrr'riGT>qNXVF'O:PK0e?%qslRREnăU"v9C3.#EChZLB&F.wq(l4xxk>)vM0'[xsCO8t(9YU_8l>oK43Y+U_S6+oxprDq=MăU"y2Ggp%.=-Y7%_'CS(l(Ea$BjbnU.<H(/qfWCE[+2pX3k7iKfosxv81Ji5dRA4x*ăU"yoeP0CASAkDb^rCJ3UK*LsyOp,iMxk12.t6YP\;&gQB.K='pKl602B..3Vb7YkNăU"Jl\1I6qtoH<lrVK6Ur=ZX;6ZTREU;W2vxorN#na9.[*7]0cz&-iWz<7v1Sa/5X[ăU"^CAcJ<RaH.$E9A,Xipb5pvZ%>k/(x>t[]W6,Jv[oVx:O2nrN_xFk\iV8N;^4M/VăU"%0nAcD&:ei'e1KG,k]_mx)I<N.Zk.&*0c:HH>sJUwxl_Qn'_F8:#J<Nn?1D_<e5ăU"_(a'=WSk>A]^:1tu/tE;igk-Q_CSg9dqGuN?dgMgjlm#]sztt/[Uvg^7=.%4nCyăU"VLu6V6E1sk_tcN,ET3V6:s5BbhSKiGiKnA$;HV4LQJ?T2MZtE,6eo^+ReSWngGSăU"G[MI*WgG59$Iq6nsgS;s)n$hFOjf9qM,;-V.HP,((VxT^epqtmGnqg_wvKR1\NhăU"hKYBKnqqb9o?-sxlmo4DSA9Re.$mnGXGlEHEkkaRE=og+p?x'aGMa[:5bEs<F.7ăU"(3'K074j?Z&cHH91#\zojX37To0\=duf3,>nG7GJ%RLXdVypL.*OiS:>p&WysJOăU"<Nq:TB+'4nDr;r;AyIOS&P'3Sag15,N5%bf+GxGr_jw[gG,h88)Ibgai-Wb7fX4ăU"8^w(>Ec[w(_rGNNckU-gk-,giKr$LaP6qXaZ4SMdhVK;84C(K9aP^F.ipdZJN0*ăU"VnN5C#4[nuC<ukCn.elR*ZXS.]8/3Wt>]T6%;8h?*,HGC6>&]*'8/g+^l3*gq+0ăU"0RnoXm-j0:s^;'vU4Af9&$(D*u:*7c3gqNHEx2c?iN8ENe.8RYW6',lHPet3$MHăU"n:Mb'AAf_(R>(li,h%T1.Q%6P;>dCY4>j0EYFO5ZhZ:*txbRw_r8W9j6ZbtNL)făU"[(vlp<6$)tf(tYL'?zMFmPQY(o/m.Tu2O+)?O&ZCq0f+ShStd$8F3TZjCH0A.zPăU"=kY)+mf>c.r8%9*7To#HJK&Z6L=8jtomSn,b*7vxkk'dV$(W&jPoVj%gfN_Lf0căU"9v<-JnjBNL5z[7P<(yY45,jr*HIZfM:LXl(k^$]I*tX]LA[NOp(?53K2I2<8N:[ăU"q+ld$MlNDH^jMRG6kCD1sPu(J(/FzaoOG>d_r$h4LC/G4rm>&p]\fJsm9ZCF<ETăU"iZWtRd=M.kllnllhlfiDvJP90DQkktdGiNdk\J#F58]iE?(T10,[T13^9aIc)tdăU"Qs%fCkdL+=h4[ptA>$bYa,xUk28AnHhO*8.j<lP_#S%FIwKjQL&DFSH)3DHql])ăU"2^l7%oksKD8k3p4MnDD:9outkX;4S>Gi:qz)KZ*1Mp:VO0K7Eym4*U9#A;[P7SoăU"BA4.Zk'QlwnQ=K[YMrox-+iW[OvB.53$R*]ARgVR5S7uw&r7=#P>4tNlwflu&\qăU"V_9[DQ2imLl'-+8V*=f*827J)'o5+0*NQn%W_MvL8(>,YDn71+>NKZnI-k/B2,3ăU"=]AP4;^<x=ruut=hAUZEH45E*xz3k1u]XV8Q%^]pL824T7ih7tyPBVWzVUfsggUăU"Z55:P_qniO>n&]a-'F)e2=qX)BZkD%XIw-ITPsWX*<tR0OT3/*aL/UPFjIl838JăU"y:NRuu36Z0lMBpH#SI/hsm=idPHDXk+t'qN0CjLut[2bBG2go6Sm]L1v.Z_u26MăU"0barTpVeV_.VmrS>86rd&tWRNQV)+H[($b:G#.Osc&XdO(ZP;i+b/?hnMQfG-RdăU"jRkMMI:0XeV3=i]4lYRxb'$-1nk9&X\&'c)MIvI-t*68O4Z>6a1<=>]A4_P-ij_ăU"C<gSy.hDFvLJPv)^%'e;1iG.j*1_EnV4ppk85_)Dw'ir:xc80j0N5vvkRmU_43FăU"ng2&cOEEWlodKp,3$935bd9pWue8yuG23q5Yop^QLV(0b\%wV>(K8yI=R+>P%&;ăU"Rb&m\-'K4s;kv)Wc+^IXEM9xZPMdEGthy1Pjua/7GXMJNcYZ3.&FdwmZpXM/J<.ăU"Dp0k+m:7AAWdTpS?1NrUltN?o^NkrnhrNPiG\T>9M2,)5cAOl\&J+jtv)wjw7eMăU"33$(<qk-qgZ]m]s]u^_bFtZ%z$OHy-q9lMSqZq+cfhpzG/yuyzJ%t77K;U?4AbaăU"ga)hhoJ#<'+:Z2W[VelYvDbbg9ogG,n>pqFP74jPmqjgZ4_J(z]FA0G6neqI2n>ăU"XTs)%^4Q+?&=9Qa=A.I$;.iwB.K7\)LTk<c-HlQMO#G$-Z9pzM)J)+PxSX-^[cqăU"NZSLRxu[:2V#rUawB76CzGbo9E,bSR829./i/s09s?M1wJ7k'NUe6*$0GvCMvaxăU"k8C'b(q-:^lc_bE:^Vi0AP457Zm<ZFboX>W'6nM;l.Dt6(8iC_7l&URD)6fg:JrăU"p7v-*ScwlQqpy?+M8]z<r$MnhE'0P-ism)nYEU1m9:A(_Q2Ob%Bfa54oLGd2s:6ăU"3;=ae];o,oZs^/neH]u?T(ep0:U>Fdlrr#H-7<O.NrcPp7*V(l4h?G_1<&v87puăU"jSSVn$x8kt^O9EfCJnPF$>PjWlh#M_%(^EBE3.)PJdd;f$vx(c,a/\WtU?zj#jDăU"V^b8R%3l.rPo5b+GoK:'&hbTLYTfi-_S&T=/,KGtdEdm1.+zty+Y-nfbrY'#d:ZăU"?$yB4La)l&ZBt:+z^]>xrE7iMi#Rmt=DNjO6q-[UdVdGt7wVt:tGjUF)f]5)f%aăU"=dC(QrX;&:>jurNe58)rWCuNvlc<T2[mmHZ_Y-cWUl:U%>:e;?3B(MZ*#&M+cVbăU",hUs]6KSq\NCDi.zaiMlNwC;%q]NZ/LKsQXj$*YG4FN*d-<,H6(;K;Xj>>Q>GpMăU".M\eVHTRht*FEV%QHoS)-BX*q*je.=cxomaSom8E\^]eUcL5R(U'M14;JWQt%0'ăU"?f<=owqI53G?G+:BYZFrm;Dh8(F0M>lh2J%iTu#.-*BRA)]p&OJe'i7E[t=g<-]ăU"I3XA192)*MN_\[#ulUYhE;L;HjlGXafMq3k0l>EbNon4]WyH\by&ZYL\._ujL\5ăU"g/o=Vfi)Dd^x'7Pg$YD[=^KQ4Fu#0'9=qRxb'-S?GmCdhX?KQ(>\CfJLQkVY[vQăU"gv74LBLDBs2FMO^?sM_7,4+Yc^WU3IWK_BA)t1*]Oi,9VDT2y7_XVg4Ug2hx:.^ăU"4YaMK2,yhlJ=y[np#)\$PWB1/5O-AZtN8B=);&_ii1$%S*1,o6-c7W=nfC0SYedăU"E;io:$=pPxzlbs^p+YbQlgJVd#HZvH8+(*$m+9_z9-UN<8o(c*t[o6+7nQ_8]=văU"nY83'Lm1iD&-vro%Yu/N^Q^<_J7wMi,>hs[G4k4?4?5aOMm_9$8./^>kT29GMr?ăU"Y=LsD+;'=97KZ3Gu%e5giujrNh$H6XSVlITkZ8DU_rIuKtK1c5MUWVSn%y(RchgăU";nEL*WEKfvv&H6ovTCQC+IME#7NSRr[q1uwLIF_t.*qITHE23ycL%^WFh0igDmiăU"Rax[4,%Y\86qB8Uru-G2KoHwAJ*y]k%)lYiKH+_C66+?4FcwBhZySTVd3*QWS?#ăU"5iaf8.o\up\qs(LiRj1_xlsUJbZU\[)FRVH1H)QfDh3P?A3rpKIqC.%]gHI>OV4ăU"UK3N=sUc%:sV>(\ao^Sl#;zsJ%wfbdEqJQS0]o3#Drbugis$bGUP%5^/-:\#kM3ăU"Z>gD7KI>6uOw.KTQOvBAgcVuPdD^77Jn:cp6OwV:VC0faZxU&HaC(^Z+c'BQ/-^ăU"yBo2#->SSu%^l783w35TjNA[^Im0xv.\o;:xIr&)8$YWb6.hD^%FqU&UsI:hyD&ăU"%rkF#FH4[o_0^GqAkd'2=y6jFAqZ.in:%xcoaop0#R-X>1pR>pD-04d24[3O6<JăU"L>v,b/kOv\O6(,MK$nzDl=N;-_,gHw3S+c1G'1_ayODm-hdTNAZ*IgHQu3qsp)7ăU"C-Z^QGvht]jUfN_[.LdYRKVq:npHBtS:+cE)eiGwH70fKlg-1(gszjU:49U2g^XăU"9hCf>Q%b+X/v0(Baqo$jGl#;dEDUHD.qQ63rp%9&e2e^uYqnQC_$.i1C5Bl>8SpăU">X;kQSM7p;lwJi1K]FIRC'/lRHTOB*5LPMZ?H>g7n<:^S&=<0,<DEv=6N,)=D7<ăU"qr$UR&L_Bj\xuDTUJaXYuRZ>R]$ISFX>yx&n]IkVz6'tsbtMAElZ-]<m*82JLQ^ăU"/4,*vPpGrRL&T&z.;f_%eYKpVFioS.e^\)xTEGJRL+%pG(.1g]XHY:(LE1?-L$eăU"Hxs=QJx<8C+TP2o-0CIHVO$(rm.cH2h]S>k35L^0fcrsywQ]H22Hva/,mvbZ^wbăU"4:Zt:H#&D\P1N=Q+:kGXQJ['<DBkzX(dhgO6VTzm\6(aCQsu?5t?Pw'Mu1$+'evăU")l4uQYAU[z_?GPMJLJ6;6iS0I+99^D&eN+9dE8<zHnYFveW/:'6+rl\)1fAYFZGăU"GB30<6CM-h>j?/%adIG]EqgS52ZdiRkUb_E#_<td/jrvOGxkPHPYk+Q0BwA#'/<ăU"d+K/89&OC'v%EQ5+A9ocLuvLM:iu=?5<<.^jPigbxh.x-$Mmj943#r#nSpV#TgmăU"7Lm8g0AP;S&A+P7qkZrn$rcrEl_DorEKWi''b#d70%>h]DZ,m0,DN$:]gZ^EYP/ăU"g5f#Yo\]Qua;ZEU/Xc=^1fR2+gs3Lg#MLuYU#FGi%gQGLL7$R4Tr*e/J:.(?OVNăU"4]2$ihC&/=J6YJ#UHSV^bfQo=bHF7kciPLM,Cn+RTo3bgYP.hTEUb.;G+5%YV&UăU"<p/b[GtB<2tuqYVj;Anao7Bp*O+l+tj_%20)cO;gXt*;Ff=9*h5Qq1$>r$_N(RVăU"&=xc)xVg1)o3W&-^P.j(<E=,0XFdeM<oRsaeru/8u0[6)inpZ#=5pST$KEBzxC_ăU"%UZ5JcO;sQ)/M:s+&[fxZyF^NR/rDNi8&349vVYZQT6d<OO2a<I(Y4&0E.SJ^DsăEND SUBăSUB V2ăU"*_5;Z/0bJr66cSgZ'nAPEl;ZZ_>b.-fL?lEpR)pbFg(YupZyH$8(,sh8ltqJ(6qăU"+D&IEQcZZ&i80*+LzA2VgWD*;mVG<1HrNGzf2E59b%OU.6i=uR%CL<E&6Mc,g4)ăU"-n,ELv;Rv'D9bx366j^&hMHMFF%HWW.xk1uC1/;p[TU9S=ljKeNfhRj1U%7s>k*ăU"xgV\FwJ4'SIaDiJeB?vf41*[ko6R5srbLGY(X%&jMp0'cvr<;DlPsnL=]tR-41hăU"8U?hyR5hk?Z9Z-rjcA,e*F,091zI;vEKK?%07:hzaf)R^4QW&aCPcUt3xp(A[;]ăU"FzH.GkICY$gRutE'X5k<ro0(]5,FaOEO;Lud*B%TTEq;9lA)X.+UaRUIm9Fj&7FăU"$qHjprCL<5UBk^KJto)xYI]Eyd/F)Ze1R_V-zi_w(.h4SSlIH6D9BfY<Fs.Ll?*ăU"YQaAAH5pmp0_h8X2bBlHbn]ksBffeT<vJ6Ae,..HEuYGL1zp0u6ReL=^'I2c1;+ăU"o&8[m)9oit#Oz3(w8B/(0PJlL'2dL(*Aw)Tx.TVO<q&GrV$U_Y*fle^)dgx^)38ăU"VbxlQVBujNo=wMM#dcf?xt)dsAGlNg-nJijP6Fj;/g<'<v1G/^N%Kl]70SIfhDyăU"io8C%Gu,NB&nFz^+4gb_lhhDt2?_0H3X4UM&>6=>51gBA1gU%^*;rC[9_,r#acXăU"Wc65NLQ33PY1&F'_Dug.t)LBrr+=\^FoEj5;&gKUl?1PV4:\j:$RU'.uh]Zy\AbăU"FFxE=0vu9*^SXcellOfXZ4MM=so=c[I_WbSgjbgcA'zjLI31%;C,$G#Qw5m7EX=ăU"4Yag8oOx^bk7;J5N9svpbLlFR8YNffbtyGGo$oEPhH6V(TLyk<k>u_1k*.PZ>%wăU"Udbabn2QMOqqxX>FrbcnmH73D<U&lNHZC\Xw?h2B9;'D:]J*'ACu2++eMYL;xUgăU"Mmcp\1t?7UAZ+DDG-ZaF0_s%#$8tJO&?0%q3dp1B9Nb^<'hNot6rbxU8.2qA%nbăU"&vA;F7xV<TH=7vzl%cIcUYAr_K%Fg$16$XoP3U6*;x+p.nsl,Wxcl:71,f;)iqTăU"t3<BrJw8p9)Z3_.c$d/FO6Ih+?dh+IXC2503ro6)5V-X-\DGk><_kqM(,;Sh*q?ăU"W2Qe5?-(iqH$i8EbHRt<Z[ZavT9JSE9jgUr,EQ2>r']$gl'rtm$=9ZLFBhvRG-%ăU"/v+c>$-?Wk?*2O=fly4:UHv-dI^bWVTG?4m6Xjb7'5C.aN44XTY<yJm9z=&kj/VăU"2cIW_BEiXFaCbZJ?6)>3qz+$.1D([sPj,FE/Pp?9peoIRava-M8<7^m4Yjrv,C1ăU"jL8ixM>bc^eZaM=W#QG-Ty)J<_V+c863,$Lp.FGT/$B&]HvfwaY#NEkN5av0>UjăU"^_X9ticu2WAfj8X\s?Ys?UFI$VQl^Ze+m/Mu,5-n3-:w[wi)P,CeWO?Z]sNVBT>ăU"6Rk<JLK]uj54zdddX>Fk(VK4PQTS8J-^fvDgH;;][;\OIl7-V>;Zck*iQLiwf=wăU"1-:oFqY#8Ew.JX/%'dsQPMcLukTReB)l%1;Va8pyx>(&jkovf5=*tf1ou)?:O\găU"/nYq6H8PUy)a9z;i8#^BNR1.1#g5K,;+<m)&5_KZhlcg:Bu.0%KcF$rE?(jc$M$ăU"a>q\esA;y>u8XFko1'PEWxD7;NUV;vRS=9jY[6d+q_,UQ6tcc-x-gTlXsOX<rl:ăU"eE([+>dClRa(NgZ>/$X/=BpRNiS%?=>OG5FlEb&/suFzel.6og+aN5M&V9>9WV_ăU"CYqg44O[hnmoG<l2Euw<M6<g1pX$D/1j0?327.KI*Bf9^b0EQ,_X#kOQqEYp)'#ăU"L-[8#8<9)=627(HVp'5as;TR;_ZiuS,0TDtG2#XmpR-b,;jwLONSjM<ux\Dw.tkăU"K#xUXHSkzg;dE<,lu>Aa5,<pWa_o0_d7Jt.]&=BPRX;I0q4Trb::l9KV+rfmGjhăU";BhDX780&YN=bwLzPd63vNZbB5ntz0v+e>EBaCb)?zLRbM<ifaWFb#grj/1n^BHăU"b(ll)3ploiQ4^JkUCmm:m7k<_:?Q\DdF6U^W]jfLyq5_Zc$Rj3EjTin^Mms#jD=ăU"%<:Zs^dVj'.C*-.L1ts39^x[w8qwRd3DB;Vy$2Gt'b+N\p^LV6.<H>(UV:]w&atăU")sr[:Xf2-A&SAKkl78Dvq8lOb)yk1.uz7J4kcpA(V6[VJ&IsXjg6[/,VC?FaBU5ăU"Pk%*C8yBVZVB[/S#CvlpY'N<'RVJ=+aP$(kS)Om6l=u-W'_sKwc7vV[s#wqxQNwăU"<(6PBsJM#b[:KpmX#SMGHZKsQA\)wniGDg:H(V1+&0p7^ptTaI$Y.xKBNZl])VaăU"bEKl>uS.;WlEJ9NP)c#0j#rQgo';+9<8BQ[vm3:WT#;AjbuSGj2$AB/zYftb#,UăU"ZnoC&L+C/1y43%ESPccSm[F_+&[Vw,DPt8$/_d3PcEul>NtFeJ2SYmWK^lrB(cUăU"^\KD,kDq5hQg$?Jee*ijw+ee0^^U?B]n^^-h:_(/$CFAq7z^Q/2O4_yqHuGpR9dăU"#k.FD0kF<^m32n1hjFD:Ad1s?tC3g3l7i)m3)nckYl,STmuRX'LJes'eyfQoOzNăU"<+ON,_v,62yVXQpmCosa%7-sg=RkmIk_suUrqEeCRX'N&vM]F:oQi?<A$IWT7UIăU"V\:;)e\g+T2[Dy;,jjoSpwCll*suM05U.iHB6_0^##J8J>mVG^zqzHi3u>3$7V*ăU"_TOg_H^Sh:_pR#F,bBSSa#XzLz7WPB066Ze^j>^K6u'AX:Z,uWBH3#?JkeehP=jăU"A%e[n,XrC\WCE16E5/m&/6YKp'#^OB9+ju6>']Bn]PWUnh-oQB&'b'Ud2pnBR7\ăU"9Xtql8bz;ZGKg*gb3UdxP8uMLcQ:3;Xpx<J-Q::e$BbT_L_XA+L&eEiC\otiJtvăU"asdv6ljFRbw0GS#WpjKOv6i(qH<A'l=m(CzZN%ywU=u:JB3\:pTO.&X_6K&s\)dăU"w[h[F<N$a3If$huS=A*>Q,JaP^3+$TaXFrsaR6?dLg-TKHaA8=G.Caf&F6J_:lkăU".O_0qiLNb'^7bRCAgilS.hJ#HXd=V]P#so5cI[ol2;c)<qTVW)cg^Aft=V1UtZGăU"^cv:n7;e8vw1]2SrI>5^dP_(C=jY?MSf9/Y,pWngM4M;F\lfT_Nm?TKmn)jo*-*ăU"P((lEFdoAalh(vgOw^DpXxULl0o=-;H,O#mm9W'%JuW?*X>MmQSf]QTKL(;gqTXăU"hJ1wtW99EuWZY7?$CEK+wDf9nJ;MtIp('A20:kwFX%%:RAIg]Eu?4OW81&#\SViăU"eFZ'c$N$AT5XeHnK(6_?$-LiUG9V4OY\hA/y.t7YuJsF,RNn0\zANvG>E[\j9l;ăU"T;B;,^nSC9;mNZd)NC]6ol<vd(s<bU3Ms-$kbo\>D2UET+\Eyv6)?Jhko*/(l,%ăU"/,N&)/TmGG.u72(-D+nra$K+O(A_Bjqdn3fccm1,aWt>;>vFkQsu5:\^vDdJZYMăU"bF59lh'Nl*'(sNTp'WrS/(q:m_LDK^ABU[wZ:u=+c7#]:W.->b6dJ-bnz+G0B%9ăU"ZA>:J.E5_lBpCSobW4UZ^z*A1:/Jvg)57<XeO<4K'$jaLo>c6#&HOWW]aB>uwzGăU"BEb&rU9iq/+-S8jzi782qY.MItMMDZ2wS?6xO_lRzWfWL3#uL1RvI:&mhtH1b]DăU")?AZnBDu]z>X0W;-gu2>X#7RA3k\0B<FOn,;?fh\R;=XUQue)^U.7:&4Zt..YoqăU"+7>*D6EK3H)#R1aM&F$.bG>^Wk_<7OdvFWZ]0_I9'nW-]LNRfs_Z.fP*C;:s<riăU"*RSnYf3\Au8cqYt3tjHW6tB$5&Q8&06'w?DTQ:%T'f)JM;pS5bCz/[VOJRsVaKWăU"C4*N_'BqzkwCB'zbbY&cFNNw8rH7QpQ*Ndb2Ze/)usBeMahipK5;X<Bi3>$$<'tăU"zLODdO,2XO\EZC,he8jFxecn9=w-dhclI&sad*eNp]RTibhF*c9>kjS#,:vB8;6ăU"Q>\Er^;IlRJ0bg6>4KR4CBOW+m>n>tm7I$vljLE9DUBHrSD&p/GS.ppBG<.a)jOăU"EwJ3geof94S3gAY;zdDOi_oq6\D5R#4LNf#XaNPO*i(sopWj$/-;g(5YOfi3BaVăU"L0-/+Kd=VnIp;maq1:_J7V,Zmp[&eSGY4HXA'<52\54aL84R#kUABN0nQc\%b^UăU"R210Ir)##rCB&U2z/qJ61^oRN;%/&a2cbnFQD=7E-G0pg4-hbmG?(mzZFlO[?31ăU"my7Fr2%3?T%\So:'w4<(bzSEhS)TI)%kYIIgQ3K\UY-&n6:Q5#6rK7Qen,g7qqJăU"E07Tgk0g:ntUr5wRK6u#Uh,4ardjdVLd$A5CB&;/r>T>AeV3(]5F\MP^[OSB_>+ăU";4nUj>HCV65v0)faKb^5ivxWY5MDCLNZG>%0Yui^kyhYQN.?;HA=^nbTl/6X):VăU"DjfV:c6iqGDnxnN94,dMpjGMMi%_5g=c':g?Gxw*pw1:,1aa8GLPIKD7obEUqNnăU"2B\1l/,N;V<(+9t.MZ/:l^aHH4Th#zA'.=xwei$qV$s_-7<8cs7OPbdkPu]x;egăU"dZ6>nlkZur]WjKiD_#g%vIJ98xc/&6C\wc^$5t)WeSV/g(0xL8sHSRV5[h2GNl>ăU"24Ch7;Eg?PCLyCw%Ge$ap+o'3=8Cf/b1,qyf2v_)l=mn6d?i,Ic+LN_lIaPClKrăU"9R5gx[K_485];8EZl)UpbXF[mt.L;xF7zULYU3<PD,_\1Ew%;)TNAA2j9h^I)q[ăU"ZMS'bL:Az<7_\IIpTISpoJIJNa*UNvsubJ,[^tW8m=m'BOySB9CRb<bNr-&Ppf[ăU"S20XZqOV,'^0t%b'A)nsCu5-d6>*9rn+VXFW9fgDnisNm\b<%vma,\[y13*yKG^ăU"hv1BN&B[iKoP\)7DuL8sj]rM,J7s#Y<+L:pRnN.tgMFA<&KWm%ADJUt)nt[aNlnăU"tK\IHImg]fl;j4Pje^xf\G3pJ#YANUAWr1X#:0XIt(5B:/f-0(j>y=N03R[*.B;ăU")lnJ_L9;D1=DF*2-vK>.qFMV;JU)\zo6\'_W*wD4?T'M5h1+_d23_,L7]Hhz3ZaăU"Q-[:vj/$.%EqcMl:O]PPDX,'sN:A$0fB:e=1rKiS(z9m;_?S]13=T/eSxHw%0TzăU"ytb;LnoEhhUg5hQmopCuaRL4rB^YocGXWTp,VqxI80pi_#>D,v^6i_Iy+)Iv]ACăU"R%)NKPhEAqT1wvB'^(#;>t)H3j*M=XUS)U\E-b\APg%>D*,OO>D)N#O5&cd>an]ăU"qF][vcEOuI),)Q:<q7VYt8ws=b&8_P#fDCCm7I&0tlN*]po/iD:g9N:'FnGfjjFăU"?$tEn#ltGFD.iGGiadkW+9FrM#C=LHlqd$+=_hS/:otEp7thhC^Ai$=AUv\w\uFăU"<<m:QN<CT5pm-Bl+^'L_9(54h:ay\F4<]8:hM$m,ZFU(gWgugw6PH><jAi,FlDuăU"4rGxF5Q\e^k*L0DhwWVE(3<'nkx'%Hzba4^=E<AGpEfX^uBVblli)+h]rF]bW\\ăU"dONh18'GA'.P7OL5YlO-.ngiu<Wp'9Mb2i^X#mRhmZ%T=hR?tEca^50Ejps>Fq'ăU"QAL7l0HxCtJF\liXHLZFPlfYW?#,(s;;[<vaNM\Y%Z&lZY:#8-]AZp_ZsgFFcu?ăU"AGMa#*pX(p=6$+K):/K'g[fBj_1lb;ERg2Fh0zcM$of4xj[vCY19z*2*Y^1OF4)ăU"gr]UoXh#HAB]t&qC-z8r#gPfdeYp':2P&q^*?v0'Yjdc9Eh#R7;?5g*856<MWCCăU"g-3*1,RWE^+(8HJLzouPB:)t.]P^rJ*;<d[9AVBZ,Ua\%Z,/$/ny$sdsH%R_5NMăU"?DWzk4YbT]:P_M-I7y^YFIK-V64P=f;CJ-7L:,/O3OV3,e7;Ot;aEZ#U8:El21păU"gC^>IE49VrT+^OHb%'jctL8eplnTwwFbF'/,haCmtLh<65ACsW4>&:j143PV>DOăU"3[j+8ahGA%or?e;B]6);1f]:3iwp#ETX^a6mj9hG(uGDgDG#N*GN>NC;fc+sl:KăU"jKLF*SAdTn4&N/f:lolW3nk:*TEVT7bcCg(i9_-B)/vupQ/nK%Kc='#K[$C^b?ZăU"AkDciu6lV73V?e&q*\C+iZ9R;I1.n<]bHlISRMhi_TjugVd;7AWH6G1t8YaWlqiăU",;dUgv0,:TjOn/FH0$.mTxIm):5YP+--C\kdT51o+WMhfL3l#drP:aI7AKxud^RăU"/kgZukD_0B>>_]kcA0H3mB(4p/7_eT-Ursbrh[N-L<;3X(U4.M2O2mx$#,_ZvS(ăU"3xYje-:<BUx1vH_1rF]i8C7P,ZpR#s_G&<>&<LMr-s/VU,JC.4R%UcC<vv:J(vrăU"E-[O>s_h%XrfmHij[HJjtlT(bqW>PR)w0JX__[9'pGB(g--Cmau2>Le/a*4<4xZăU"9eKRZ5Y,7PZp4V;lymRK:P54^_XBGIH09$RQs8g-*L\5qa;XqE.+HbAod%)^E#,ăU"hX2L.?ZHg=F)/0b*a[kbbKNda=SF,gN5Hi(;C&Z+W\3V/55BaU8M_m.YB5c$[(;ăU"uaT&C.]R-RGti)tN]k0t+WXs'2TCnay7(+U3EXQ^eSvucCMXHW6O&4Tyo6GcPrIăU"(uN;0pHMc$^'LF+KpMlHaOD_dMfe$$x8\HMd1IseOD06WS=].ku%2b]u2l+3$;aăU"TRIacr(C064Ynh$;=H/p2$u6c2X:0Kpa?XIbW0:-q(C.96+vUJCa2fn0+TrZVu4ăU"Z'PF0I&F$kZ;S:Pd:h-nbRF[6x:l&(4q(:E9\kkNdR]OA\D/tg$F/V8M-_4Hkf]ăU"'QjNT-\NCj[P66Iyj?J46Jx%'0H0Y$DG6$C/b&mZMJmHXD:X9F_&tNR,wAgT4n=ăU"%^2L0s-93>UHKIkuj^.Z\;'V.n^_'iOg+P#BUiy#[ZD,#3TOzG7K[LMcoH?OqWoăU"9Ym]Ar^#L?7p8j?vP'^F>fd;bXCJ7KDtIglRUto9e6#\WAtHP%K+;Wh9\TjBRaPăU"0*gEhrpaG6ED4XwWZ(C5og+Vj-K:h?/o+v;0\iCDXFuGf&5B0oFBi_UmPhJfBMbăU"X2HUDt4<K$R_OReGdeF3vEgy-r/ISJyeGEwR#m:.x1LzB/ncAt-h>K>C6K#$wJ,ăU".^y%Cc\W?Z+;Fw'-.kzYrCC$7XM\3:Mjl(_T+49(BQ1FG7u5G<U&1nR0BBJW7Y=ăU"x>^4WG$6FIfQ?ER%h7Xj>'L:NLT\^:jQg8%G^]b-;c'u[ePR>*>)pw,9;t4c^TQăU"+hBkvD_pRF;g6sQ-n0Yo$c;Vymq_7#S)#H?$%yUZGSC8CMrB(\a:C94^?s-lG]GăU"/o_K=3f.JTE=x*nQ_jK*Yt6e3T':hODr>yN>V3-2udh:KN[VCzRL'-)MHt=&)PLăU"bCX,a2c[_jvC-G:&0fe#B7m6+Sl&oK&gh%\2W-rXWQuO[jM;F?aVLhkbA5t3)U)ăU".PjN/r9v&Wn(u/M%M<nfD^&&u7NMpQsN&0-1+=w]>$Cc*&3Bvmr#pVR?RFn^ul5ăU"NMLp\Ls3NP5m\P2UD7\rmO&7#>^P$_kdmf^QOK*A,4k5RfX6deh-f1_)KOBe'$0ăU"yJ];W<1\qz47-ELgu,VNf%V-hB.M'C/F1AM/c9oc(:L[&yDI6iGwz$l;Tp]-ur2ăU"\h$2EHPnT3ol<JVlp(nXMini&49vM5]EIG9qM<w,ErDgE]Tdciq^.T0>NB;,uU-ăU"co8&vMHN6toSUWoN$Es\=A;KsGua\dkfi$bbnPIVmw=LncLg2zeY_cmZ$3][wD0ăU"bbfTKB8qMP;cQI<jZ[#j5XMl?F0cnPP]*gtLpV0Oe8:-aYXV.Y#l[J*t;,GWjPRăU"n6xu>eoN($x*ufdPqkOxnsTknP]8%vpa;7y#<7Swj1:u=zus:U*cMu$r\.aqbWqăU"Nu>?rK$5bj8\xFFwsN+)jobXFuNz4DBzsQ>0nMZwr$neSo#]=Dx$DucpE3q.Mr#ăU"i(Y48BwgJq9Ft+>SJ4atKpS,I+4SpEHW8I.Qh8NXo54f^upX8%&.ES\q&iDmg/WăU"^'qKC^c(l&dGh&P.4tInc.M:&P,s(sj./:D.(owVidgD.fh;^p63?m?n#F\'hJ=ăU"(aF#1\>yTjE0=W?3RW'tEtOfQT0>$uT9hAsdgU2F2e3_OtgKAbvv)ahvnKskxs9ăU"/SitR%<lHlLoj^IHOc8J&GMV*IZhgVJ8FfU(tIxWvltpOXs,w>v=T]tc/_TOc6qăU"[Z,/.%N%6eZR,[4DcYg4PLr=u63TnPcsk9JHn*6ejrl&^Cd7D^PaHHu]VNX'mbbăU".Ltn%nN/mRWLvHmFgx15*Hnd(TkAQ&lHNztX/aP.YLvn&sE7Oq2#Xnk)_9)ZMSfăU"gQ9F'ATj(2Ar^oSE4s/]SN;:&>ZS//6^<((m9>M9'(kfa8u'q2E798#eKEi*\>lăU"W5DdjKI*9>>XK5fCdOU<2L$[T8(mb[$7eY#-fE*2n=LoL:U*+_PvV])FPN1chVJăU"pYOV8FZhWvJZfv_Z<_Mt*UUTWR+TQ(E#4DaK]Ib)s_tQ3=Gf9JE7?bo-3A2RBtJăU"kqjebL^RC8/tnpaLsmC.H/+Yqpmh*=^b(?suRX;X/pA*a&/e$rt5u7oGQns)$h:ăU"6Ek^M?wFX,/qu:T?<eC:C*,e\A-*OHCL(L#dHD.LJwvR(/FB5\E'.,AGr2s=kO1ăU"H\qU3VF1#WDy0*s$4h5aDI/]V]NZ?Vvkb/?V>u1tpaeL5.U1\cZ=9#Z\CFOcf:RăU"]LJbWmRRrjT8SOu)gj\+leVukTU2Y[?^.Va8B$kFqKsGiMgQd]2grk&=Kv(<kDlăU":GlAaEj>adDDaIUoG->dX,sim+Tf/%,fEcuR&FpGNW-M^ZXM[V$+)ui6O6Qvn%MăU"mLV)_:+?IB8Tw09Qs4MdSpLI-XT3V.%)44Fj'Wmjc>;nvs<E):'i?3WSPmi0]NWăU"'l)wRT4&euUGoK<W[IeEVBv2\cQ#9tOcvS[otB2(\d/y4blugE2rYH4[ea)g_'&ăU"v%>E4o.g5x&Ha^g^#DnRukRxm>);LLGj'CR$C\%TzQ[N6(4/tnVBM^hyp[m,.d3ăU"15lymWNkgi,gF;Kiszhd>ZBE+aoup_(/,EOz%gvnzll-bHK?O7bpiIYH^QS8D*>ăU"oNug&;;.w/iI.z1F:8Qlve,P=XpCD7xjD.edb)tyJ[UzO*#1yA3hmP>g8Km6[9,ăU")P8;TiDV?x%$.m:zWM6j?:SV&[,d;2oc7-&[LtT3q>lV4l)Di\Fx.lQdYNg[1lnăU"C$98Y:=B5\Q&0eF/<rtt+YhyoJ$TYdfC95HnnnWjT(1fo#zWz9Dd>_O+B61qRWRăU"BFqX12'B*FH:H?jglS4j#rJ#s5nY7K^MWpvXvWG)0:ZDs.xXj_6h\3C-(lWg(lNăU"5HuBemk?lKSVacll=Vdc&&>%*YJSH1Xn$\5A78znfMIAYfF<Y>1.h.'Hd;9,zQLăU"JfDbAfF)FoV'Tz3L6j3Aj5Pn$)L0wqjW[,U(U)^ly7Z.>Ku]E^1Q&*Y#m9XG3sAăU"t-rnbjf.AyPv_CbGUtN7A,.AnM%,nNKCSmzZ<^g$uSt3n&KGrl)V\9+P91Y_U+]ăU"q^C0UK$a)?=cUXwuE6WqPnu;Lg/K)N6.eb=Ja,aKK;PE)'>:?b1>[PKnY:?n>aWăU"EzTT?xS<Ny'>R7Y]Im/]r#D'6#D7<*Phql<:jM3ll<4nmu^>miqV<(-_X^pz5MjăU"9]2ND%t;\XGCF+?dp2Oi6w*T8?o9q4B216d2z'bM(e$7TGwgHVdmFs.EU$m.Kk9ăU"KDgViACu8^yW;F.g4n_OG7y2#ehl%)dGLVe^7Pg0vLw=zd64JCE&lnz_k[%vfFyăU"/p,&>K^LDp9y%H*bSy9,XB_Lz2T$pQy,eQg$YEF1,s9b%;*6B;pw]t0P,nMq&mvăU"GJ-u4jJXw;Bf6i[L0m66aw&/Aqu-178QP=9-TQ#yQSjx-6WZy<aBaY=PG>4nON;ăU"Lekt7J'2Aw&uK&ULhnKVLbb5,Nks-1o7N#YWW>P/kKTlN(-EUD-4hOaSf_Ux>NDăU"\PSF_#rRMEU%:XBT(:F.0z+GOVt+/TO6^DMBh]jBt9X]&w_$l#x&\Zuc&8jr%jaăU"&c0.SJD8mVltW8K/X[.'%YG?',iFy:aV4h_g.oM+XOQc5TK'5U4p)zNkCqK'Br^ăU"9'5,icO6W\y3M_E&f$Pg?DTIU:eiB7[tGY+,FCp=%,6g7z1TJfiJlmjVEli15ihăU"b<fq($Q4Y+6GorsC<anJu.2O=[BQvub9(\+U/;VO-RFY*KH9%lhiIiwIFMAu*mgăU"UphD0nVNv[Hc*SJUx+-B)aT,.=qKLcOhff>Wb$5ilF_fZlF0\+D/-&c9Is;fL_JăU"(HJKW>xOFqvEvF'x(up%()9%%%%-%)yGDL.o>D*&e%%%%C&%%%1%6%M2;>BM4.3ăU"=LS1<?%zy2%m,5LDs\YwCm\4LDU\BkdD23%R7WEO%_1ME_((1k+%;+KEK6'WTK1ăU"F'OU&Q:/%c5T%][je51)WfVOU)N6t/YuCZ99nT;PP\#7((T4I++e.d11:w3(/',ăU"K=#OG%85X-lAxNp?ggVX#,e+9McfvtQ&S\Tk,9e?.%<6m<YQ,8L=%04CHxN/<DQăU"cz[TTpDA)ra*snRQ=B>ZYO&P6%u%p()9%%%%-4%aGDsLQ?O(Y[%%%%C&%%%3%6LăU"%2;>MB4.52;0CS21<?z%y2%,>SLD\?YwC\>RLD\PBkd2/3%RWFEO%18ME_(&1k+ăU";[+KE6g'WT11F'O&eQfOv[$((p\6++GB(11+2.O;E9_'+^T7&>O\g(MHNsbPP'făU",uRa5,&ROQ8oi7*yVQpO4o'JI%1V;uDEaDBf5j.fuO<K?[/3/'02#IXU10\VI(NăU"E%),5_V4%nYA:Ql>BGWG,aF-%%up()%9%%%I-%sG#DLc23T]f%%%%C&%%%1%I6%ăU"2;M>B4.DD?S1)<?zy%2%,)cLD\Y-wC\(HLD\BNkd23(%RWEKO%1MFE_(1%k+;+7ăU"KE6';WT1FD'O&Q*:/c57T%[jFe5)W\fVU)hN6/YuuC99NnTPP'\#(('dt++'/D1ăU"1+Q8==lOw.:0)&W\I&VROq_a+*2XZ:%cA9D^N^88z/%6/XesJ?:0Q*;1#-Z1;,'ăU"REZt:9ehG/6UE;()OOuuexxZW64J*p=%(%H%up%&';0%9%%%#-%aOIDL0j,Vcq(ăU".%%v/%%%.%%.%%%%%%&%RE%/P%%%%%M2;>BJ4S10&Bzy*[%,yY'D\up%&';0%9%ăU"%%#-%oN.DL_81Y/ih%%%mZ%&%*%%.%%%%%%%%RE%/P&S(%%J2S1<&?zy*d%,KX'ăU"D\up%&';0%9%%%I-%yG%DLo>/D*e%%%%C&%%%1%%.%%%%%%%%RE%/P%wl%%M2;>ăU"BM4.3=LS1<?%zy*%m,5LD%\up&%';09%%%%-4%aGDsLQ?O(Y[%%%%C&%%%3%.%%ăU"%%%%%%%E4%/PH#m%%2M;>B4M.5;0JCS1<&?zy*d%,SL'D\up%&';0%9%%%I-%sGăU"#DLc23T]f%%%%C&%%%1%%.%%%%%%%%RE%/P'em%%M2;>BM4.D?LS1<?%zy*%m,)ăU"LD%\up*%+%%%%%*%*%%l&%+%7n%%%%%ăEND SUBăV2ăCLOSE:IF S=93AND 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ăPeter Scheutz                  AVI PLAYER FOR RAPIDQ          scheutz@image.dk               10-10-99 (03:38)       RAPIDQ                 88   5719     AVIPLAY.BAS ' AVI Player for Rapid-Qă' To extract AVIPLAY.ZIP, run this code under QBasic, or download DEPOSTăDEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2ăSUB V1:OPEN "O",1,"AVIPLAY.ZIP",4^6:Z&=3938:?STRING$(50,177);ăU"%up()%9%'%R-%]p%nLW4)aTS%.%%O'%%%-%I%%BCD>?S1h<?Bk2</1%[($EO(%1ăU".MV53Y/AO&F=#-+NTpO6qx]xd(\fI'?x^U[1j%F5F%%up()%9%'%I-%upmnL/d+ăU"3%l%.%%O'%%%-%I%%?;D0HS1h<?Bk2</1%[($EO(%1.MV53Y/AO&F=#-+NTpO6qăU"x]xd(\.e(+S;//9JEGOpk(&f](CS#++B[1IYDb5T8]wGRU0aBL1%%up(%)9%'[%ăU"-%Z%#oLbm:M12[2%%H%[%%2#%%%0ME8?;M0H4ALS10BNV)<B]T[7w9g>x,%1LxnăU"Y\%S8Mvf3y?WA+An:?6Q=w[qx#,KFZ;6YM&h_4Ds*\><%LnOs3.$vJ\-$EMI)O,ăU"Q;a4o2%kL8v8r<RSp/3TNN8zP31/RpAB9?f+;>sl2t8e6VUCs=\3'EIaqfu^*BOăU"dA6GLc=l__b2W3efRAkHgV$jKN^6;%r^HlA3J=pn#e;>\aL4e0>wL')I^/7:/^=ăU".j&'k>,AlZ0rUr's9*D&'.K-6P(f>HkR_4ZHO-x^=lx>Krg'%rL*BJWAR6;tCCNăU"%6de07R[3]k#[IpeXwf;*bl#I5IXAr2&DVWH+]KBRZarn.+9HW\7f]:]t1OuKSQăU"T93W#03EB5%EsIqEH1Gh&_QEWjnA1^NH*Nt3SvBkIKq9W&]8i*A9Le\au+sq=b^ăU"BOp3)]c8a-?;a']Gx_-T7NZb)k&d/m3krbc%$])3oGa87Er7W<)81c7jXa6;A&%ăU"Bw&v#9Sgx*p=f\Jo?o*a%Y&r+VRIP6w<;J5&)j4&[0=J$MxM+VQP=v%Vo#(#(=PăU"##*VUU0,(ZWp]7v&578oUcrrOW1(zLnB.\PIbGiOMhVhGSs'/YVdxBlj_GIXge$ăU"4nsiiU^V;Z-p\dW?ygkzW3m<byTHN\^ljQL:gCsK=<$j;5Go5OBCYms,Y,L>?G?ăU"c?u-fmIMPP?Qj<.hZRX])0KlcYU0=*kVj1J:/qAHAlM)sPJGo]=lcJw+mWr%N+OăU"x]4E3vn+yt:(QU>Ur?N2KB1D(KL?$QjV?:_r_F33YYM=xNnT/[KV)9XdU]Rhhj>ăU"sMgeJca'z2UKIJ6kb9[b2U6O1:Bfe_]Pu+;OXYdc7B)*^,O-1q/:rPP#I^PLeE5ăU"aE^Qb5ptjeBoH#v5_DLCJ[$vFb]Zf<G]6I<P?<,X&U*RJ3soS]aOIfg+M^Nn+t[ăU"'(t?<,JZhCLFj9LVKB[Cq\D?U#)la.TTAh4qkFBZ&CZ9>(^(g;SC-4)T$r2Y,,?ăU".du#&BYel4Bp=PGs3_'IGb*#iaS683UxDY]EEtpt=_'<EfXNzv)QTJ',k_H:%WhăU"f_=2w<&,bNR>IxSg1A#;S't[_,7H9PE+']Y2r_ONZf9()IS&$;CZFYvIepY[jJHăU"t+)KZUYHf.-YE(#dC]\+J\9B0S_SjSWJnhoA><uRiE'kCjsb;P:H2D-l?+liSP+ăU"SQvZ3ILz>uzq;I=,cOp-QfqqrsIE1-4Mi7ab/uG=Y_;EoU</efZU^#$PJ]ciUL_ăU"]9a_kd$X)uIcrGsqAxYfvH;XEX+O*.&vA0w+o$RK%E6;<\Kq#bUIOcPmZ,:m/o+ăU"VMG?ScH<J/-MZ:gezFF%;SL;Q+9Hw[JFq1g%HDJ.hA-3?&b*Y4$3LB'V$g0+MgPăU"pN&ovZ)>p(a?,/_ZHRf7Ps/Ybd9.l)QM24D%p&WgzaRJIsW#5q<rFfG[6'RK8a=ăU"e(cLG>W[k[&Mt4]e$W>CYBSOfdGDGtMSbwBOg=ln'Hs,DKYN.^V[#\Z5TWFZPw-ăU"BZ_ri-CIgp;jpYHOsmQxwo%1'K*wfLg]K9T'Tj#IJ><t3v&10w('nLpB=ksQ*(VăU"7g($)+XmO6).F(V34Gk\ZLi'b=pS/OD'kWigWo,FO,LLqd*SLb%;Qt<Qb#baVVwăU":IK77(-Hix3p?4i(p&)g\bA\ogUR)cW,u)$>atP[(^v3S29g$RSg5m]S$_1j;&DăU"Y/;UsJMp=VK?IGhJ.C8G<I4<<hor-7=ZDS<y^iS?hU'VjqB3;+u>9=BGFfQNI>hăU"pG18tn.$H3Sd,$YrOaP\dSn(:G$PI=*%Salmhg?FF:)d8mwRV%thv.f2&drBlU/ăU"m6Qkq2s^'INgS7oFJ#lf<[m6Xnl&?qG#BA:\=rRuy6YFEj&dfor&J<)y8i>Hy7uăU"-jvJwMbh3JGlcJS/l\M6P<Za&W<OS?u%2Hv8'\?Y[]Or<iJ>4XY2iQS_p-&YULsăU"QPjXmA00MmWZ$-G#z8yH[I,i\;W=M;G&Z-:DUQaSI&pC76[YxGEky[RTxZXRWkjăU"v%E[fQZ*&ykZC7yh$0\B#ml'KqrLMj]>%W#z8g;+(R,]1]e'$Z&4?&AD&(nLnFAăU"992\;P>*6:S)x,tLN,\F9tAeC'P.;t,cXcR0\XE,aSQ=&VUsUP,L[#O]Q5K([V3ăU"y-OM:ia:lf31PFSX^h<wM65^0*N<B+h*awj%#KLW[[G,5Ig-xXHW1s*#OMj9#$DăU"GO+\XzFR\_Kg>$nxL%oL-]aedx[xj4\p;X7QDLMhg.MH&-V./<Tmgl&Sls'ESC^ăU",GF\91&:0Fq[ZWY-^?&MZmE8;*nmX<Q.Tkql<f&0LI/Y+64r&uRab\eU8%IZXb+ăU"[Wk<VpEt&pZm9h1piWqV7pKD4ua(fslYX2pYg&AzV;gKPO]ji^e4>FJQ<lHT0Y)ăU"d_Jd8s;n-sb'tR+:P=k'',R>\ZgKvH&Ogd]w]tH$K-2C6D+pLQ5IbeW[zprnk&hăU"-mX4Tf9E\O2*%7bw%\+TN.Ea(qgoD%&jZT/am=b\W9Q:HzKLDl_A)-^;[9+TRhsăU"A)qlNS+\F2-vuUm%U6cX%q#.:z8L70tDJbN[5u0&ZobpAkfn>pPW%=tqPAYgcSpăU"c3k>Zj*;vgDCCzD;nbPRhZoz3CqA;S9,^U4+4).Ttwi2cV9ECSoES(uG3*q1iiGăU"*'>2N.M>'MHOJg**9:-Dd1d(j75<=V<(3u<tP6ci_kMm8koV*:<%,ips%lt7X9lăU"&N6[LYXQUPLxy=ehEEdgkpNh1[2ux*J[D0e+Vk>h<nAc$XnwWYlLq]hd8chj&lwăU"6_B6gs<<8hh*hyvCL_YN2njXuG&r34]9o_ZfR8gf?pK,K<bRgz(XXfb>:=od7sDăU"KT8?-_%TH1BJyWMKT2Cu?/[C>&/QP#01i:I$7H?Nv2Mq<&--$tY.&_?*T3Xp(1lăU"T(c<w(;HmDK?Y5$^7*b^OeH=32MKb\,m+,;2\%G$+0+c17&r/bUU;L\:u;L<KpqăU"M3XX]v^1gKgrtIkOfngg/PFK>kO(ky]No-U>wX&^p'h<$ZL+iG0gASVX/FRA&y%ăU"xEw&h\ZyEm51HEAIPYO/Ocd/h3f,QiI*()h)vR*K29=v9XU1('GHOPEdhkBG>X#ăU"lcumcPiSjnXkbmugHFHSlnTj(-/'a3MCnM3lA/#tMPjaB>qFKYB59R^(PU0q>)măU"x#aZNHO\WrK\T<3PY14z*N*J(;8>m/O74TC(,=fk]??)kg1BsTB*C\_K.q9b9eBăU"bI[YXdXZ3uJo/+nK7xfWE^*aZY7I#XJgOu7KM:Jk=sR\i,wpvaZNF^'#BWG=C;jăU"^HK^\kaLvIG)l\-eVa[<2Hbsp%wrA[/\ObF:J:G'*8C+'R2gQ,GMZKN/I(VMZ=0ăU"-0]:Gl3z+7N3Hbk#ORbX/PKm#ADD*Ibk>GhqYiEH6e%AKj&Z&XovbZTgwW)#ZhxăU".i+T=g.*_pQ[Yt=^uw5QJ7D5v^$Cs]wJcXIN+w>DWC1KPCKbs3E(+-cvkXQ4w2IăU"G_df0eAf%AaBiKE7mMuOs$pu&G$w_nmXW[A_=XnlLa%:_8C0a]?1EdpVhrQ)EP6ăU"^.r.HP9vBWJxygFI;f_HQ>Ys;lmNy2]H,Cx2SOBF0(N^zu9216PP93C7*4<)#htăU"1%]rUFLtZWIi8TEL\lYn8g_59qZhp55IjJ9*u_?cUI,sCg2n[PKXp?mlwB2(_+1ăU"L=Q*h;+EDD_4Hd[cenO(],'[pgS,M.AY\e8wo-3^Ox2EK7zkroCX]E2Zj6-K+x:ăU"<k7h$r%5D9sVz->Yp0DLhTl0A8#ciy'Yd^fiWCJfA^R#v#KUGymXU,ad52fiq)wăU"9ZKss/8fmWPMl'T^kj#OwF3$Jd9]-k39d?n9(,NWz)REV.jhkzi[F0aOa::ZQ%7ăU"Lzlc5([HeDez1<>4mDIDr4IdPd'7Tpuc1Gjt*N%g4M]9[0<T?N&M1+]8+nu9%qjăU"zU+E78eo)QU8EptOYHbk=mP%]jdlCe)4(rTJY3mHUQi]qC^PtemYB-Pc$AB,yLLăU"Pf]OhOH&0]+v1V3;fv+NU;hOl&8;fVxo*63M#Mp%*f+nbI*dQDpVRQbp9]B:5gNăU"NDYkK.8E$D>'EuP\u)MT/Avdo\S'-Ly\uGv?<Ue:FdPsumNMEeNFic;eZnM(<8xăU"?'GScgT](c+;kt]POk&.$'<1=Qhue1z&>t\=#Th:>iwn5$vF_=IR3Ql>8yjvn%+ăU"ku^q/9l&(jU/]*xM%oM>Vi30ublwLNKQQKL/:<&/Rv>S#3TKM\KKFQ9lH<C#jlbăU"?#Au_'YsYO*TGJXfriVfB-u5+r?(Jf&#4aLmxb'w>x,xWs51E.p)V;9:i*b;]O7ăU"2(*-?#[mi,'f>,;,fB'eE\#DUA%j=N4OzYIE\^irV9bOQY31f4/.jRpX(j0i:2MăU"*M,/%dVR6G%M,TdL^zXn*(aa>WJlKe[12'Ro)*fZ_ku'3VUWPK0O*3rK>S+Ql&_ăU"i]WsP/7++q_*4'eE.U\H_aq%4up&%'9%9%%'%-4%]pn#LW4a&TS%%(%O'%%%-%%ăU"%%%%%%%%%E4%/P%#%%%B2C>?S21<?u%p&'9%%9%'#%-%u\pnL/9d3%l#%%%O%'%ăU"%-%%%%%%%%%%[%E%/&Py%%L%?;0JHS1<&?up&%'9%9%%'%-+%Z#o%Lb:M-122%+ăU"%H[%%%2%%%%%%%%%&%Ej%/P:#%%%0ME8?;M0H4ALS10B%up*+%%%%%%(%(%&v%%ăU"%&t3%%%%%ăEND SUBăCLOSE:IF S=24AND 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ăErlend Rovik                   QMANDEL COMPONENT              e-rovik@online.no              10-25-99 (13:36)       RAPIDQ                 59   1291     QMANDEL.BAS 'QMandel By Erlend Rovik (Preacher / Bizarre Designz)ă'-------------------------------------ă'There is no zoom, havent got the timeă'to implement it yetă'-------------------ă$APPTYPE GUIă$TYPECHECK ONăăTYPE QMandel EXTENDS QCanvasă  xmin as Doubleă  ymin as Doubleă  xmax As Doubleă  ymax As Doubleăă  SUB DrawMandelă   Dim Q as Integeră   Dim P As Integeră   Dim h as Doubleă   dim w as Doubleă   dim m as Doubleă   dim n as Doubleă   dim v as Doubleă   dim i as integeră   dim x as Doubleă   dim y as Doubleă   dim z as Doubleă   dim r as Doubleă   dim k as integeră   k=15ă   h=(QMandel.xmax-QMandel.xmin)/QMandel.Widthă   v=(QMandel.ymax-QMandel.ymin)/QMandel.Heightă   For Q=0 To QMandel.Height Step 1ă    For P=0 to QMandel.Width Step 1ă     m=QMandel.xmin+p*h:n=QMandel.ymin+q*v:i=0:x=0:y=0ă     Doă      w=x*x:z=y*y:r=w+z:y=2*x*y+n:x=w-z+m:i=i+1ă     Loop Until (i>k) or (r>4)ă     QMandel.PSet(p,q,i*1000)ă    Next pă   Next qă  END SUBă  '-- Default valuesă  CONSTRUCTORă   Width=200ă   Height=100ă   XMin=-2.00ă   YMin=-1.25ă   XMax=1.25ă   YMax=1.25ă  END CONSTRUCTORăEND TYPEăă'Test SourceăDIM Form AS QFormăDIM Mandelbrot AS QMandelăMandelBrot.Parent = FormăMandelBrot.OnClick=MandelBrot.DrawMandelăForm.ShowModalăENDăErlend Rovik                   QDRIVECOMBO COMPONENT          e-rovik@online.no              10-25-99 (13:36)       RAPIDQ                 42   841      QDRIVE.BAS  'QDriveComboBox By Preacher / Bizarre Designză'--------------------------------------------ă$APPTYPE GUIă$TYPECHECK ONăăTYPE QDriveComboBox EXTENDS QComboBoxă  SUB GetDrivesă   dim a(25) as integeră   dim i as integeră   dim a$ as stringă   for i=0 to 25ă    a$=chr$(65+i)+":\":a(i)=direxists(a$)ă    if a(i)=1 thenă     QDriveComboBox.AddItems a$ă    end ifă   next iă   QDriveComboBox.ItemIndex = 0ă  END SUBă  SUB AddItemsă  END SUBă  SUB DelItemsă  END SUBă  SUB Cleară  END SUBă  '-- Default valuesă  CONSTRUCTORă  END CONSTRUCTORăEND TYPEăă'Test SourceăDECLARE SUB ItemChangedăDIM Form AS QFormăDIM DrvCombo AS QDriveComboBoxăSUB ItemChangedă  ShowMessage(DrvCombo.Item(DrvCombo.ItemIndex))ăEND SUBăDrvCombo.Parent = FormăDrvCombo.GetDrivesăDrvCombo.OnChange = ItemChangedăForm.ShowModalăENDăăErlend Rovik                   SCREEN SAVER EXAMPLE           e-rovik@online.no              10-25-99 (13:36)       RAPIDQ                 112  2921     SCRSAVER.BAS'ScreenSaverExample By Erlend Rovik (Preacher / Bizarre Designz)ă'ă'/s as parameter for test screenă'/c as parameter for configurationă'/a as parameter for passwordă'/p as parameter for preview screenă'ă'The Preview screen is not working...ă'------------------------------------------------ă$INCLUDE "RapidQ.Inc"ă$APPTYPE GUIă$TYPECHECK ONăăConst SWP_NOMOVE = &H2ăConst SWP_NOSIZE = &H1ăConst TOPMOST = -1ăConst NOTOPMOST = -2ăConst FLAGS = SWP_NOMOVE Or SWP_NOSIZEăăDECLARE SUB DieăDeclare Function IsWindowVisible Lib "user32" Alias "IsWinVis" (hwnd As Long) As LongăDeclare Function SystemParametersInfo Lib "user32" _ă    Alias "SystemParametersInfoA" (uAction As Long, _ă    uParam As Long, lpvParam As Long, _ă    fuWinIni As Long) As LongăDeclare Function SetWindowPos Lib "user32" Alias "SetWindowPos" _ă    (hwnd As Long, hWndInsertAfter As Long, _ă    X As Long, Y As Long, cx As Long, _ă    cy As Long, wFlags As Long) As LongăDeclare Function SetParent Lib "user32" Alias "SetParent" _ă    (hWndChild As Long, hWndNewParent As Long) As LongăăDIM Form AS QFormă    Form.Width=Screen.Widthă    Form.Height=Screen.Heightă    Form.BorderStyle=bsNoneă    Form.Cursor=crNoneăDIM Canv AS QCanvasă    Canv.Width=Form.ClientWidthă    Canv.Height=Form.ClientHeightăDIM Tim As QTimerăDim OldMouseX As IntegerăDim OldMouseY As IntegerăDim fc As IntegerăDim OnTop as longăăSUB TDrawă 'initianlize mouse coordinates.ă if fc=0 thenă  OldMouseX=MouseX:OldMouseY=MouseY:fc=1ă  Canv.FillRect(0,0,Canv.Width,Canv.Height,0)ă end ifă 'Set Timer interval and draw something...ă Tim.Interval = 1ă Canv.Rectangle(rnd(Canv.Width),rnd(Canv.Height),rnd(Canv.Width),rnd(Canv.Height),rnd(3000))ă 'Check For Changesă If MouseX<>OldMouseX or MouseY<>OldMouseY thenă  Dieă End  ifă OldMouseX=MouseX:OldMouseY=MouseYăEND SUBăăSUB Dieă  Dim RetVal As Longă  OnTop = SetWindowPos(Form.Handle, TOPMOST, 0, 0, 0, 0, FLAGS)ă  RetVal = SystemParametersInfo(97, False, True, 0&)ă  Form.Close:ENDăEND SUBăădim a$ as stringădim retval as Longăa$=Ucase$(Left$(Command$(1),2))ăăSelect Case a$ăă  Case "/S"ă  RetVal = SystemParametersInfo(97, True, True, 0&)ă  OnTop = SetWindowPos(Form.Handle, TOPMOST, 0, 0, 0, 0, FLAGS)ă  Tim.Interval = 1ă  Tim.OnTimer = TDrawă  Canv.Parent = Formă  Canv.OnClick = Dieă  Form.ShowModală  Dieăă Case "/C"ă  ShowMessage("Configuration Here!!!")ă  Dieăă Case "/P"ă'  DIM Image AS QImageă'  Image.Autosize = Trueă'  Image.BMPHandle = PLAYBMPă'  Image.Visible = Trueă'  Dim PrevWin As Longă'  Dim Temp As Longă'  The CLng command dosent exist in rapidq.. ă'  PrevWin = CLng(command$(2))ă'  Temp = SetParent(Image.BMPHandle, PrevWin)ă'  Image.Left = 0ă'  Image.Top = 0ă'  DoEventsă'  Do While IsWinVis(PrevWin) <> 0ă'    DoEventsă'  Loopă  Dieăă Case "/A"ă  ShowMessage("Password Here!!!")ă  DieăEnd SelectăDieăSteven Edwards                 POKER SLOTS SIMULATION GAME    steven522@netzero.net          10-01-99 (13:36)       RAPIDQ                 117  7667     POKRSLOT.BAS' Poker Slots Simulation Gameă' To extract POKRSLOT.ZIP, run this code under QBasic, or download DEPOSTăDEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2ăSUB V1:OPEN "O",1,"POKRSLOT.ZIP",4^6:Z&=5397:?STRING$(50,177);ăU"%up()%9%'%%-%%%74Dl]>civ%%%%[)%%%.%%%%xu%fijS[nhtNdxV=<[U1aRX*1ăU"NI(eO=M+um<sDMsrr,T7qhXD[*r.l4U>(wa(H#f7)<)VmqB.j/c)/m&R/h<:pqNăU"'OF0t:ls<s%(.)?q&QfcEYJ^(gT#-Bbh-hDC7mu(=ri]VL/Gs#hh_,bQu;qXb1tăU"8p_JW4ORDs]=P5OoQ'8(s6%VRpOa4M?QWxR7/O,o;hd_?,87MM7OI*UHq;G/4BvăU"-p4_ni.PH/_wlO.a5o26g+T_eIx#=apE0ULwG<lJsyl8WdI^t<n5bhj9Y5mim4făU"XoHb1*\^#b]AdB>nubin^+KC^<WVkAUZblRAkY[H-XU&p2nmR8%up()%9%'%R-%ăU"t8.LL$F6&/m%7%%w'%%%0%%%%in%frts%iSnhjt>$*+6<E1Lj4.5.mrhV.W?t$3ăU"0%tza=#P1.G7AAHmh]f>$IB4GL9Eq.nbt,bhfXJ+xlpH,85ZK9k?FYc)U+^6eB+ăU"dIoNi<bu/f.8IW0N<\P&6+4]JW/>f?U.,&B5D7h>H4.kMf(PF'l<W_PEf8;Kj:9ăU"+^xoihX*\2&bepL?WF9x.U,]gP\ha(hNiHWI4P;M\sq,N/4u%p()9%%'%-.%)9LăU"OL3_w(Jp%%+%w'%%%.%%%%mjf%wySnRht>^966<EL1TnLAhFZ4Q?A7cPC-w11:^ăU"b:\+6nu:=#$OdjICHPnm32k/\Cg:&XH3La(.+t]dF.tpG)\FK5CG/.jaDP]\/d4ăU"sJRw&ymopfqKq>PB^/h/aVkiB?ei8W^7e5^f?WaVg7^/-ePg#q^T::?Qt;=O\<TăU"9Pg?9gUvMCApYE7;Y^UXn>eh^KivM,SHvl5<f]ne9,n\0u%p()9%%'%-4%_8LsLăU"M'd+Xs%%+%w'%%%.%%%%otp%jwSnRht>$:$A<UR1iPm[YSac:wzEVAAYBP.RO-jăU"+li*aS=x+4?ZRe7H+]KD,e=%47EVu%gL\Hw5OnB+Xc^83Q,e*EjgO??pD)?=<+săU"lul)'z5#XA83I_4vgcwII5Rp4k8-(kZVR8\Nd2/^w98];1K]Xkl+jr%30Ut5OHAăU"?m$Ro6kmClU'CQAT<K&d[qL$Smrc-YNWR;^$.^B-Sd]2Mk3HoV%.nmaAWdBr[\răU"G'm(a+j\9&b6/IRF;?X]MnUg,(m</DYG9g,>so?:SJL.[7A36JZ3wu+W-1qE>/0ăU"P>0WYCBB_6sCT$4yJ?s*1Bx;\NOT%up()%9%'%#-%\9ILL1U.'<v%7%%w'%%%.%ăU"%%%qj%rtsS[nht>[uV3<7E15iTVW)DcGQd)*m8a.gNrVi;k]eB-aRk6g>y=ba>DăU"ct]9%UJcOn+>S:+g[F4soN0KLG4aX7ER[goCM)gcw=Q.K;pIZ49)(wM2OT?n5R*ăU"]r'Q.7j'.^K,i**J0$j$[5'B[9e_3k/*SvKAIV9/6jfi%.zs-lvm]uZ,XGK\gTcăU"8o[IPtQhhPApl7CoZ\,vlQiIN6D/f'N'?,up%()9%%'%-%(^%ZL=[aLO'a2%%&5ăU"a%%%1%%%%utpw%xqty%SgfxNN*<B]T[7w;mhu,Uyb2)Fr[osBMK\roGI+Tl1.2PăU"MAJBnA=E7aAGK.dj%fw8*wE<EF.7md1W%JzC$p)/p<Z>,bZV*v?^dB8uupuRqf[ăU"VAVJ$*(jQ.1(ZbB'G$)Yw:e5va#A+lW4L\h+5IaFYh#;4G4c$ZHH[gjr8nYqZ)6ăU"Zb/ej2WOFN=)Z3O3EV>lX7TOgLahq.,W(lOVi%^/$3%g$*Nwta*4t^4HLzm+VqdăU"820mUalN('9E\gJQD#orDpK2/Aj)8NwZe>4jkj4NXnkXo<.T<enIOi7gY7BOh9MăU"GIml5A3;Sa2LjDDcS(m7NFh=*aY*2AgM]tnw='Id7b'8OgP^dq?t9Fo9HWKl5GOăU"fUe?jq#IrDoR^dV?742]Htr9M?pe[e-Ldz):'Ruo<_(YQ^T&ERZb>mi'qM[<^&VăU"[aD(#9(o9C61gbn,xAA$b6dvEN5Zwbuek#>ImI2nJ\mFDGX?VWJ5-sOZ))3LtHTăU"ipPON,ZF&TPDH7>[vWZ;;El3iO[Rak*P_D/BEuFHmF3p-^(2/YhC$h0EZ/y'*u)ăU"VKH-tT&e%7PIw^;b^%?)p9)Nevf)I&S(7W?8hmU.DD[W<HI?=5I9>Zge:)j?<+?ăU"9;m9qoF.J=$0YpE1mgM?5Bl<wkl12wu#9HU0_61%o]CM;%7ZHn_N^DRNj8L/oBIăU"m/vRpmWp17VaxQkFIqTyXt:Y'?mjdqP6irp%iU(e_>YxJ\&=*k#78[0f<&h+Zb2ăU"[n7S7791xhv?a_#j#,^]aK9%Arf%%4ITC?uVWgd0-j9tQ[EA0-rMO^hiR/)L;y(ăU"Y+/=B[shb-XBZWHoWyC(vI<JVQ)#T6f=A3tUl9,5WH2Y]FUoAu&vC\2+k[mdFvyăU">(w3zL?kB3_;>176KRz,xMu:i6ShmnJ)pjb\AKH<ZG5dJ&l34V9GO3*4T3'IYFgăU"*e671$79?aIQ'<ufj(,O5UwJ:5$P]?Ge]Srq8]5tKoH*i=?U&A;RH[2?&7o8F^lăU"h6[pxJ[J=+j5XYIUYxaF.yJ9w]9+>sB31*C)eHyr/_J&AV+kZn:JURo+iD:'':DăU"4qED29Q7z'x\,>%-'rP:7H84;;6Aq\VYCU&XzmA?#Pa)k.d^^6zHVCQ8',Pj7>#ăU"_$A/JIe9C[&0>#Kk6lD+TD&41bUexS7R_B[&;QLGG\w</75Kf9l(T.nCq4H>#^aăU"'^IJQ6RenA0h\3q%/VW(.W&i[H8K0l4[ntY&6b?^KM3JRy#J;0:#jjpp<7ph1<\ăU"#-q#8f[xfrRyugl?#JJ1x\#QN#r[AP#v;<qX6dc8,73l4VeQoTSjaTa7X4TJ?oeăU"Y3oofcRXSld\lfRh2dmvEv4C<tfrFJ&4CV.:sXv9_PWIqq7N:#/VfIY7_mmp+ETăU"J^&l:5*smojs_]$8V4pc>3,Rn8po&J?Gg5E;Ib6eJii0V0s\X*K#A9AJk%B=*aQăU"'=MQ]8^1QRtQqWb(J&OX5MeQYDd=WaUeu>,(9USL(f>A8rC%D2]]mhI/,QQGRu:ăU"Yp=ReiEH+Q0h)_S,uxKR.bU,IHNcIYadJC8_D7o^z_d;dXRm:2euoQ7DGAJy>R6ăU"[.c*eJ$\oG/]vnH'6ve5DPuIdto080x4J4?vH75HW7P\;Nu:&3:u_6H.eK$\+xeăU"D9_=/N'PPZJPICf3MS:(/6'?oW2Q,'Yj'Y)nN[eTk]7<B9.[#GWxP5ICzfq\D;băU"k)Oymb<u:[e;$Y*/knY9<tD_PPYjE146.e'&m&QVJ;_8\aEE]I224F'eR+p'k;dăU"QL;:\2J3L[[=db2(hi.oO>%sG8owtR9Lw54W<,'Uzy08IIF<NTf44d)N$O&+.SdăU"Q<L<TuUt,pAee[cGs)&W'*DweV%ooBgUxlZ_)&w%g%aBb-9<%DKa?R^q*>YsnCpăU"#\Eku[b/IYyuPLAvX*^]OqsJEHRJMbt<X4x?JP9IUuwjV<BP.v'1>crev9*kD-HăU"f)obBkK2a2P(Ba2S(oN;9+YVyA0cL9^O;S(oEs0%ugToclu:%:;JpB=5J)fa%iFăU"F[71q'0YzIe:PU/u9\5z(>e%YR=Wns2*uYZT/*9=x>=;11TjXG)d^c#U^*LbWx?ăU"gSo*1:'70ms+v&;y:<>0+j?u70qFvaX'?&,E0PmGNS*(o8(+</#L5R4poM</-^GăU"z$i;BTr(%?;jpLZ2(Wps*J&CT[ZieSL;B8n'lAwuq?x,pkHsf%wIFerV/9%Oy]0ăU"[_Q['%X#lgFN4lx_rKJ<fy2Hl0zIXYO<??b.a%kEP;4Ad;k0L9SVE&9tMG=Q_b]ăU"Xt*/dFbi=)kZslb2O\o^srtEMUe*[ddJty4]<.W4uqq<^d^pB3;8O)0>01GZEotăU"eWJTBsrRri$z/w;Yp[n]-<D<DcShR[6cC9zwYnl1)uBRTmP26%;<gmD?VO:PVDRăU"c?,ah#'zka:6k+Dq*Z7N&O,,+k_klFZP)vjWk(]+;5KQp+Y]>(n5Ce6x[sIueptăU"Vl%E_P9Neo:V)-8yfd6:93^ZbdVgO63K6&KIi(g6b%BZqoUn0Q8a4wJ_M5krK(=ăU"'v>KM9JSi1p<%QCvCv.HWS)A<b\j1.vk8ACyv*5F=%CV>l>MOgsq%4aw]2b_I.WăU"cUWnfiP:EcX^Oeknh8p#uDs)SrZ#Sf$9y&v^?pXtI;o6S^h9hoZLCOD>hMY[7i0ăU",BqotHTJVM\C<=D*8_4Gv]oXs?K*7(N19](9'f6pvR:*uicq;DS\0c?+ZEV?9VEăU"5s)S52Y*m[.PVJ1X%CqP_';9Rg746gJSTkJpQKfTA^fC;f<v_Gl&=+a.KE>AjVkăU"'[5F0mQx<P#TZkCyD3lnY^q00)$I<5H7)eT3,VVkK,kG(h=zc+/G$Jhe2)S5y8VăU"x>f(/JtxDMLn]mIp<(K?3iyMjgQ,]XFW\aMgT3\zA;h]'m#>1vd6zsCdW(2c*(dăU"K5slRFnN3uc?1KKlda=eglTDEJG1cPPE7pPeF<&$]01TL#Z6li9V0*+BZX3'E+UăU"e?$0tMU1T3;8kK,%\Aqe1bJ.uo$&OZ*Wa0jQSO=L?]azPSa>)%LUZ%?5%h6,lgEăU"(fj0iSPSPR&.i\4LN5<=8n:n[G\pQ>>qD'aF_G(gGiC/i7C:]YEG'#0XZ=\NTB=ăU"nAFuD's]5?%*LiC_]RP6\##+&&2q:y[SP.k/qCr3Mou9.>HLVjxp;*3#:bkf3aWăU",[5fcbkfI3W1:CTd46N5b_'u\vnZ,K0x6=x3-],kd3WS1PCb5pd2Tq9l\6MFLLLăU"XXt[Z1TI<OhA:SCmhVgvRj=p];R#h]O=p]T,#hm=Np]Q#QhhX#oxT;1eNA[tZ#:ăU"1N:Q[tl6;1N95[tNt;[^wGM[^]R6jJ#U[c_;?mll;q'aM=D]vBUWPm,mVG[s[liăU"R$OefE-lUuUvMXWW;oEee%Cf591BV*G>\L?oC%z;D60zNRD&0#K9e_ju_9KgujPăU"S6ELx/?Tp*xetHlL<>6j?J+EbHDcAxUt:8?SBAX$BEI(C8$c&L.=Y&X^<s[c:dBăU"Bga3ggpz+a>qci\x)Q9P2R(=_2[zA.;pK(^*&J<\(?\<&k0H3^D%wE;zHBlf0F-ăU"pOAAEUsWhcJv^/eKW7vfULZC=IZH8r..JKXP,CD#X,bC.N%0).;R.#F8=[6w5,UăU"4:#p+(s9D;7)9DzSQ9:[/XKj3<KQPJY8'u[XiS\akDIVlV8iR<n1k[dI'?^qff_ăU"lsILac]kqJX:rBg&^Q&NqRoflp2(GV:;=F>])C=ZC-<prQlv7Nf=i-eQ[0ci[WEăU"X\cKP_E?QDS$&pFI'92:uR(5ii/H=j&,vUPp9jrMY>_(%KN*aNH^lF&09_V<PSPăU"3Nf904fJ\c5i-O;G5\KP$(9XvIO_E6GQZ+[.U+:JzRm<>.GDDq+Oipl3C6A2(oBăU">HJ+5eK&[w$U1+TLn>=frPMn*Atys(rxzS4j,G9cfh0hrtVib6&1b4cZqmZRfH6ăU"KS>ARpa3hr5AoJR#am%VEmN<phM:]SbnsQlTlrE>Xh=7D<0E];DX-u6J?t'>9<RăU"o[-a72lo^5U$N?HON#'7j3f8CCE*m;,$Pr\6:d-atHcZV0&gFNL\[5tUobRhv>năU"ia=0Z_OD/$-PvSCf?S?\VMX2nm>Lso^-+HVch*1$*1MEHbOhY:XYf%bUl>mago7ăU"W-<OYY[NfIFP.JHnp=?eFq4SUtBM*ZoNApQ^jwAE(Kl5va9Rd,h?*ew^[?YH\18ăU",CB23J;HC<0%7q[gV0j/.0YPVFh&1]^l4kw#t6MJiv]j;/U9d),Uj/X4>nV]*a]ăU"B$T^%aNAUA&3%7tO+P'I6W^6iib#nJ&*'u1n93_QnP,VtBt/s=E>&.AWRK.$0J;ăU"+KO*.UGEJFDD<jTVxCHq06[w2G8&vUs*n<,h/?uUr:'z\YPy$?v/f<6\&X4Z60'ăU"v4amVp0ot*Fu=95V:=?AE0s44w<5&+9P?oB\/NG7_YqXF'(-]GCZ\d5CL(XPW.năU":mdkz(Q3]f?p2tb6^'ikSp6hGy)5V%ZX9O>Re1l0Ft4:Q.MO:7=eq23W>g:bNodăU"%up()%9%'%R-%l8%LLTi4Zjo%7%%w'%%%-%%%%hq%zgSn7ht>v7V7;U.1xJ16VQăU"g$Kk1meUVj8cK$U53CXAw)XL-##X1Ajx,A\]z_PPVH7L=gHJ?F.h=Xl?AjuX0=.ăU"&g(-)pa*DIwo3z_7(u&_30JLmbCJ<0/^kz6,PtHC\9P;M6eQCKS4tkJ%6rcgv3băU"5hN3Y*sQ6Dptq8XM>:B&vc8c4lZouBl_,:jms$VQ^s2LPe^hNXWkN-:v(Hmup%&ăU"'9%%9%'%%-%%%74Dl]>civ%%%%[)%%%.%%%%%%%%%%%RE%/P%%%%%%xufi%jSnhăU"%tup&%'9%9%%'%-4%t8L^L$F&*/m%%+%w'%%%0%%%%%%%%%%%E4%/PI%&%%i%nfăU"rt%siSn%htup%&'9%%9%'%#-%)9RLL3_/wJp%7%%w'%%%.%%%%%%%%%%%RE%/P'ăU"d&%%%mjfw%ySnh%tup&%'9%9%%'%-4%_8LsLM'd+Xs%%+%w'%%%.%%%%%%%%%%%ăU"Ej%/P,%'%%o%tpjw%Snht%up&'%9%9%%'%-%(\9LL)1U'<&v%%%'w'%%%.%%%%%ăU"%%%%%%E%</PM(%%%qj%rtsS%nhtu%p&'9%%9%'%%-%^&%ZL[caLOa#2%%5%a%%1ăU"%%%%%%%%%&[%E%/)Pq)%%%utp%wxqt%ySgf%xup&%'9%9%%'%-4%l8L%LTiZ*joăU"%%+%w'%%%-%%%%%%%%%%%Ej%/P-%7%%h%qzgS%nhtu%p*+%%%%%,#%,%T#&%%I%ăU"8%%%%%ăEND SUBăCLOSE:IF S=119AND 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ăSylvain Bizorre                FRENCH MORPION (TICTACTOE LIKE)sbfg@wanadoo.fr                01-01-00 (14:41)       RAPIDQ                 458  19284    QMORP.BAS   $TYPECHECK ONăădeclare sub AfficheCoup                 ' Affiche le coup de l'ordi ou du joueurădeclare sub CalculScores                ' Met ŕ jour la grille aprčs un coup jouéădeclare sub CommencerPartie             ' Détermine les couleurs de chaque joueur        ădeclare sub InitTableau                 ' Initialisation du tableau de grilleădeclare sub JeuJoueur                   ' Coup du joueur ădeclare sub JeuOrdi                     ' Coup de l'ordinateurădeclare sub JoueurCommence              ' Le joueur choisit de commencerădeclare sub OrdiCommence                ' C'est l'ordi qui commenceădeclare sub AfficheGrille               ' Affiche la grilleădeclare sub Quitterădeclare sub Grille10                    ' Sélection des 3 dimensions de grilleădeclare sub Grille15ădeclare sub Grille20ădeclare sub PrefereRouge                ' Le joueur préfčre les rougesădeclare sub PrefereBleu                 ' ... ou les bleusădeclare sub JaiGagneădeclare sub TextesOrigine               ' Textes de base de la fenętre d'infos ăăCONST ORDI   = 0ăCONST JOUEUR = 1ăconst VRAI   = 1ăconst FAUX   = 0ăconst ROUGE  = &HFFăconst BLEU   = &HFFOOOOăădim AfficheCoupX as word            ' Coordonnées X, Y du coup ŕ afficherădim AfficheCoupY as wordădim Numalign as integerăNumAlign = 2 * (21 - 4) * ((2 * 21) - 4)ăDIM CoupJoueurOrdi(21, 21) as integer 'Tableau des cases jouées par le joueur (-1), l'ordi (1) ou no jouées (0)ădim al(21, 21, 0 to 20) as integerădim NbrPionsAlign(Numalign) as integerădim OrdiJoue as Integerădim Ponderation(5)  as wordăădim Gauche as Integer                  ' Position gauche de la grilleădim Haut   as Integer                  '          Hauteădim Largeur as Integer                 ' Largeur de la grilleădim Hauteur as Integer                 ' Hauteur  ădim NumeroRangee as integer            ' Pour numéroter les rangées de la grilleădim CouleurJoueur as integer           ' Couleur choisie par le joueur (ROUGE ou BLEU)ădim CouleurEnCours as integer          ' Couleur du coup en coursădim CouleurOrdi    as integerădim QuiCommence   as Integer           ' ORDI ou JOUEUR  ădim Gagne as byte                      ' Quelqu'un a gagné ăădim CaseH as Integerădim CaseV as Integerădim Alignement as integerădim Coup_Joueur_Ordi as Integer        ' coup du joueur = -1 , coup de l'ordi = 1ădim DimGrille as Integerădim Nalign as Integer                  ' Nombre d'alignements d'une caseădim ponderRef as integer               ' Pondération de référence minimum pour calcul coup ordiădim PonderCase as integer              ' Pondération de la case en cours d'évaluation (calcul coup ordi)ădim CaseHCoupJoue as Integer           ' Case X du dernier coup jouéădim CaseVCoupJoue as Integer           ' Case Y     ăădim DernierCoupOrdi$ as string         ' Texte du dernier coup joué par l'ordi ădim DernierCoupJoueur$ as string       ' Texte du dernier coup joué par le joueur ădim CoupsJoues as word                 ' Nombre de coups jouésăădim a$ as string                       ' Chaîne générale  ăăPonderation(1) = 1                     ' en modifiant ce tableau de pondération, vous pouvezăPonderation(2) = 3                     ' modifier la tactique de jeu de l'ordinateurăPonderation(3) = 9ăPonderation(4) = 30ăPonderation(5) = 10000ăăDimGrille = 10 ăOrdiJoue= 1                            ' Interdit un clic sur la grilleăQuiCommence = JOUEURăCouleurJoueur = ROUGEăCouleurOrdi = BLEUăăăCREATE Fenetre_Principale as Qform     ' on crée la fenętre principaleă  width = 640ă  height = 475ă  BorderStyle = 4ă  create FenetreJeu as Qcanvas         ' On crée un grille de 10 x 10 par défaută    Top = 70ă    Left = 200ă    Width = 202ă    Height = 202ă    onpaint = AfficheGrilleă    OnClick = JeuJoueură  end createă  create menu as qmainmenu             ' On fabrique le menu Fichieră    create menu1 as qmenuitemă      caption = "&Fichier"ă      create menu_CommencePartie as qmenuitemă        caption = "&Commencer une partie"ă        Onclick = CommencerPartieă      end create      ă      create menu_Inter as qmenuitemă        caption = "-"ă      end createă      create menu_Quitter as qmenuitemă        caption = "&Quitter"ă        onclick = quitteră      end createă    end createă    create menu2 as qmenuitem          ' puis le menu des grillesă      caption = "&Grille"ă      create menu_grille10 as qmenuitemă        caption = "&10 x 10"ă        onclick = Grille10ă        checked = VRAIă      end createă      create menu_grille15 as qmenuitemă        caption = "1&5 x 15"ă        onclick = Grille15ă      end createă      create menu_grille20 as qmenuitemă        caption = "&21 x 21"ă        onclick = Grille20ă      end createă    end createă    create menu3 as qmenuitem          ' puis le menu des options  ă      caption = "&options"                 ă      create MenuRouge as QmenuItemă        caption = "Vous jouez avec les &Rouges"ă        Checked = VRAI ă        onclick = PrefereRougeă      end createă      create MenuBleu as QmenuItemă        caption = "Vous jouez avec les &Bleus"ă        onclick = PrefereBleu ă      end create  ă      create OptionsInter1 as QmenuItemă        caption = "-"ă      end createă      create MenuStartHomme as QmenuItemă        caption = "Vous commencez"ă        checked = 1ă        onclick = JoueurCommenceă      end createă      create MenuStartOrdi as QmenuItemă        caption = "Je commence"ă        onclick = OrdiCommence ă      end create  ă    end create       ă  end create       ă  create BarreInfos as QstatusBar      ' et enfin la barre d'informations  ă    SizeGrip = FAUXă    AddPanels "", "", "",""ă    Panel(0).Width = 260ă    Panel(1).Width = 110ă    Panel(2).Width = 135ă    Panel(0).Alignment = 2             ' Centréă  end create   ă  centeră  showmodalăend createă'------------------------------------------------------------------------------------------------ăsub Grille10                           ' grille 10 x 10ă  Menu_grille10.checked = 1ă  Menu_grille15.checked = 0ă  Menu_grille20.checked = 0ă  FenetreJeu.Top = 70ă  FenetreJeu.Left = 200ă  FenetreJeu.Width = 202ă  FenetreJeu.Height = 202ă  DimGrille = 10ă  AfficheGrilleăend subă'------------------------------------------------------------------------------------------------ăsub Grille15                           ' grille 15 x 15ă  Menu_grille10.checked = 0 ă  Menu_grille15.checked = 1ă  Menu_grille20.checked = 0ă  FenetreJeu.Top = 25ă  FenetreJeu.Left = 150ă  FenetreJeu.Width = 292ă  FenetreJeu.Height = 292ă  DimGrille = 15ă  AfficheGrilleăend subă'------------------------------------------------------------------------------------------------ăsub Grille20                           ' grille 21 x 21ă  Menu_grille10.checked = 0ă  Menu_grille15.checked = 0ă  Menu_grille20.checked = 1ă  FenetreJeu.Top = 0ă  FenetreJeu.Left = 100ă  FenetreJeu.Width = 400ă  FenetreJeu.Height = 400ă  DimGrille = 21ă  AfficheGrilleăend subă'------------------------------------------------------------------------------------------------ăsub AfficheGrille                      ' Affichage de la grilleă  dim i as wordă  Gauche = FenetreJeu.Leftă  Haut = FenetreJeu.Topă  Largeur = FenetreJeu.Widthă  Hauteur = FenetreJeu.Height ă  fenetrejeu.fillrect = 20,20,Largeur, hauteur, &HC2FEFBă  NumeroRangee = 0 ă  for i=20 to Largeur step 18               ă    numeroRangee= numeroRangee + 1                   ' Pour numéroter les rangéesă    a$=str$(NumeroRangee)                            ' Numéros verticauxă    FenetreJeu.TextOut(0, i+5, a$, 0, &HC0C0C0)ă    fenetrejeu.line(20,i,Largeur,i, &H808080)        ' Trait horizontal ă    fenetrejeu.line(20,i+1,Largeur,i+1, &H808080)    ' ... doublé ă    fenetrejeu.line(i,20,i,hauteur,&H808080)         ' Trait verticală    fenetrejeu.line(i+1,20,i+1,hauteur,&H808080)     ' ... doubléă    FenetreJeu.Textout(i+5, 5, chr$(NumeroRangee+64), 0, &HC0C0C0) ' Numéros Horizontauxă  next iă  FenetreJeu.FillRect(20,19,Largeur,22, &HFFFFFF)    ' Bords blancs Haut et gaucheă  FenetreJeu.FillRect(19,20,22,hauteur, &HFFFFFF)ă  FenetreJeu.FillRect(23, hauteur - 2, Largeur,hauteur, 0)ă  FenetreJeu.FillRect(Largeur-2,Hauteur,Largeur, 23, 0)ă  call TextesOrigineăend sub  ă'------------------------------------------------------------------------------------------------ăsub TextesOrigineă  BarreInfos.Panel(0).Caption = " French Morpion (version provisoire)"ă  BarreInfos.Panel(1).Caption = " Coups joués : 0 "ă  BarreInfos.Panel(2).Caption = " Votre dernier coup : "ă  BarreInfos.Panel(3).Caption = " Mon dernier coup : "ăend sub  ă'------------------------------------------------------------------------------------------------ăsub PrefereRouge                                 ' Le joueur préfčre les rougesă  MenuRouge.Checked = VRAIă  MenuBleu.Checked  = FAUXă  CouleurJoueur = ROUGEă  CouleurOrdi   = BLEUăend subă'------------------------------------------------------------------------------------------------ăsub PrefereBleu                                  ' Le joueur préfčre les bleus ă  MenuRouge.Checked = FAUXă  MenuBleu.Checked  = VRAIă  CouleurJoueur = BLEUă  CouleurOrdi   = ROUGEăend subă'------------------------------------------------------------------------------------------------ăsub JoueurCommence                               ' Le joueur choisit de commenceră  MenuStartHomme.Checked = VRAIă  MenuStartOrdi.Checked  = FAUXă  QuiCommence = JOUEUR                     ' 1 : Le joueur commence, 0 : L'ordi commenceăend subă'------------------------------------------------------------------------------------------------ăsub OrdiCommence                                 ' C'est l'ordinateur qui commenceă  MenuStartHomme.Checked = 0ă  MenuStartOrdi.Checked  = 1ă  QuiCommence = ORDI                       ăend subă'------------------------------------------------------------------------------------------------ăsub CommencerPartieă  OrdiJoue = 1                         ' cette variable interdit un clic de souris ă  call AfficheGrille                   ' pendant le jeu de l'ordinateură  call InitTableau                     ' Initialisation du tableau de la grille      ă  if QuiCommence = ORDI then           ' c'est l'ordi qui commenceă    if CouleurJoueur = ROUGE thenă      CouleurEnCours = BLEUă    elseă      CouleurEnCours = ROUGEă    end if    ă    JeuOrdi                            ' c'est l'ordi qui commenceă  elseă    OrdiJoue = 0ă    CouleurEnCours = CouleurJoueur     ' C'est le joueur qui commenceă  end if  ăend subă'------------------------------------------------------------------------------------------------ă' Initialisation des tableaux d'alignementsăsub InitTableau                        ' Alignements par caseă  dim nt as integer   'Variable temporaire de NumAlign, puis variable de boucle NumAlignă  BarreInfos.panel(0).Caption = "Patience... Je me concentre..." ă  for CaseH = 1 to 21ă    for CaseV = 1 to 21ă        al(caseV, CaseH, 0) = 0ă    next CaseVă  next CaseH     ă ă  FOR CaseH = 1 TO DimGrille           ' Alignements horizontaux  ă    FOR CaseV = 1 TO DimGrille - 4ă    NumAlign = (CaseH - 1) * (DimGrille - 4) + CaseVă      FOR Alignement = 0 TO 4ă        ' Incrémente le nombre d'alignements de la caseă        al(CaseH, CaseV + Alignement, 0) = al(CaseH, CaseV + Alignement, 0) + 1ă        al(CaseH, CaseV + Alignement, al(CaseH, CaseV + Alignement, 0)) = NumAlignă      NEXT Alignementă    NEXT CaseVă  NEXT CaseHă  nt = NumAlignăă  FOR CaseV = 1 TO DimGrille           ' alignements verticaux ă    FOR CaseH = 1 TO DimGrille - 4ă      NumAlign = nt + ((CaseV - 1) * (DimGrille - 4) + CaseH)ă      FOR Alignement = 0 TO 4ă        al(CaseH + Alignement, CaseV, 0) = al(CaseH + Alignement, CaseV, 0) + 1ă        al(CaseH + Alignement, CaseV, al(CaseH + Alignement, CaseV, 0)) = NumAlignă      NEXT Alignementă    NEXT CaseHă  NEXT CaseVă  nt = NumAlignăă  FOR CaseH = 1 TO DimGrille - 4       ' alignements diagonaux 1ă    FOR CaseV = 1 TO DimGrille - 4ă      NumAlign = nt + ((CaseH - 1) * (DimGrille - 4) + CaseV)ă      FOR Alignement = 0 TO 4ă        al(CaseH + Alignement, CaseV + Alignement, 0) = al(CaseH + Alignement, CaseV + Alignement, 0) + 1ă        al(CaseH + Alignement, CaseV + Alignement, al(CaseH + Alignement, CaseV + Alignement, 0)) = NumAlignă      NEXT Alignementă    NEXT CaseVă  NEXT CaseHă  nt = NumAlignăă  FOR CaseH = 1 TO DimGrille - 4       ' alignements diagonaux 2ă    FOR CaseV = 5 TO DimGrilleă      NumAlign = nt + (CaseH - 1) * (DimGrille - 4) + (CaseV - 4)ă      FOR Alignement = 0 TO 4ă        al(CaseH + Alignement, CaseV - Alignement, 0) = al(CaseH + Alignement, CaseV - Alignement, 0) + 1ă        al(CaseH + Alignement, CaseV - Alignement, al(CaseH + Alignement, CaseV - Alignement, 0)) = NumAlignă      NEXT Alignementă    NEXT CaseVă  NEXT CaseHăă  for CaseH = 1 to DimGrille           ' tableau des coups de l'ordi et du joueură    for CaseV = 1 to DimGrilleă      CoupJoueurOrdi(CaseH, CaseV) = 0ă    next CaseVă  next CaseH    ăă  NumAlign = 2 * (21 - 4) * ((2 * 21) - 4)ă  for nt = 1 to Numalign               ' note de pondération de chaque alignement ŕ 0 ă    NbrPionsAlign(nt) = 0ă  next ntăă  CoupsJoues = 0                       ' Nombre de coups joués ă  if QuiCommence = JOUEUR thenă    BarreInfos.panel(0).Caption = "A vous..." ă  end ifăend subă'------------------------------------------------------------------------------------------------ăsub JeuOrdi                            ' Jeu de l'ordinateură  BarreInfos.Panel(3).Caption = " Mon dernier coup : " + DernierCoupOrdi$ă  BarreInfos.Panel(0).Caption = "Je réfléchis ..."ă  OrdiJoue = 1                         ' Pour interdire un clic de sourisă  PonderRef = -10000ă  FOR CaseH = 1 TO DimGrilleă    FOR CaseV = 1 TO DimGrilleă      PonderCase = 0ă      IF CoupJoueurOrdi(CaseH, CaseV) = 0 THEN         ' Si cette case n'a jamais été jouéeă        Nalign = al(CaseH, CaseV, 0)ă        FOR Alignement = 1 TO Nalignă          NumAlign = al(CaseH, CaseV, Alignement)ă                                                                                                                                                                                                                                                                                                      IF NbrPionsAlign(NumAlign) <> 9999 THEN      ' Si pas de pions des 2 joueurs dans l'alignement ă            IF NbrPionsAlign(NumAlign) >= 0 THEN       ' S'il y a des pions de l'ordiă              PonderCase = PonderCase + Ponderation(NbrPionsAlign(NumAlign) + 1) ' Met ŕ jour la pondération de cette case pour chaque alignementă            ELSE                                       ' Sinon, ce sont des pions du joueur ă              PonderCase = PonderCase + Ponderation(1 - NbrPionsAlign(NumAlign)) ' Met ŕ jour la pondérationă            END IF ă          END IF   ă        NEXT Alignementă        IF PonderCase > PonderRef THENă          CaseHCoupJoue = CaseHă          CaseVCoupJoue = CaseVă          PonderRef = PonderCaseă        END IF  ă      END IF    ă    NEXT CaseVă  NEXT CaseHă  Coup_Joueur_Ordi = 1ă  CalculScoresă  CouleurEnCours = CouleurOrdiă  AfficheCoupă  if gagne then                      ' Si l'ordinateur a gagné ă    OrdiJoue = 2                        ă    call JaiGagneă  elseă    OrdiJoue = 0                         ' Autorise le clic sur la grilleă    DernierCoupOrdi$ = chr$(CaseHCoupJoue + 64) + " - " + str$(CaseVCoupJoue)ă    BarreInfos.Panel(0).Caption = "  Je joue en  " + DernierCoupOrdi$ + "   A vous..."ă  end if     ăend subă'------------------------------------------------------------------------------------------------ăsub JeuJoueură  if OrdiJoue > 0 then                 ' Ne pas tenir compte de ce clic non autoriséă    exit sub                            ă  end if  ă  CaseHCoupJoue = (MouseX - 12) / 18ă  CaseVCoupJoue = (MouseY - 12) / 18ă  if CaseHCoupJoue = 0 or CaseVCoupJoue = 0 then   ' Clic en dehors de la grilleă    exit subă  end if  ă  DernierCoupJoueur$ = chr$(CaseHCoupJoue + 64) + " - " + str$(CaseVCoupJoue)ă  BarreInfos.Panel(2).Caption = " Votre dernier coup : " + DernierCoupJoueur$ă  CouleurEnCours = CouleurJoueură  Coup_Joueur_Ordi = -1ă  call CalculScoresă  call AfficheCoupă  if gagne then                        'le joueur a gagnéă    call JaiGagne  ă  elseă    call JeuOrdiă  end if  ăend sub  ă'------------------------------------------------------------------------------------------------ăsub CalculScores                       ' Calcul et mise ŕ jour des scoresă  Nalign = al(CaseHCoupJoue, CaseVCoupJoue, 0)ă  FOR Alignement = 1 TO Nalignă    NumAlign = al(CaseHCoupJoue, CaseVCoupJoue, Alignement)ă    IF NbrPionsAlign(NumAlign) <> 9999 THEN    ă      IF NbrPionsAlign(NumAlign) * Coup_Joueur_Ordi < 0 THEN ă        NbrPionsAlign(NumAlign) = 9999ă      else ă        NbrPionsAlign(NumAlign) = NbrPionsAlign(NumAlign) + Coup_Joueur_Ordiă        Gagne = (abs(NbrPionsAlign(NumAlign)) = 5)ă      end ifă    end if      ă    if gagne thenă      exit foră    end if  ă  NEXT Alignementă  CoupJoueurOrdi(CaseHCoupJoue, CaseVCoupJoue) = Coup_Joueur_Ordiă  inc CoupsJoues ă  BarreInfos.Panel(1).Caption = " Coups joués : " + str$(CoupsJoues)ăend subă'------------------------------------------------------------------------------------------------ăsub AfficheCoup                        ' Affiche le coup jouéă  AfficheCoupX = 5+(18*CaseHCoupJoue)ă  AfficheCoupY = 6+(18*CaseVCoupJoue)ă  fenetrejeu.line(AfficheCoupX, AfficheCoupY,AfficheCoupX + 13, AfficheCoupY + 13, CouleurEnCours)  ă  fenetrejeu.line(AfficheCoupX, AfficheCoupY + 1,AfficheCoupX + 12, AfficheCoupY + 13, CouleurEnCours)  ă  fenetrejeu.line(AfficheCoupX + 1, AfficheCoupY,AfficheCoupX + 13, AfficheCoupY + 12, CouleurEnCours)  ă  fenetrejeu.line(AfficheCoupX + 13, AfficheCoupY,AfficheCoupX, AfficheCoupY + 13, CouleurEnCours)  ă  fenetrejeu.line(AfficheCoupX + 12, AfficheCoupY,AfficheCoupX, AfficheCoupY + 12, CouleurEnCours)  ă  fenetrejeu.line(AfficheCoupX + 13, AfficheCoupY + 1,AfficheCoupX + 1, AfficheCoupY + 13, CouleurEnCours)  ăend subă'------------------------------------------------------------------------------------------------ăsub JaiGagne                           ' L'un des 2 joueurs a gagnéă  dim Couleur as integeră  OrdiJoue = 1                         ' Plus de clic autorisé dans la grilleă  if Coup_Joueur_Ordi = -1 thenă    BarreInfos.Panel(0).Caption = "Vous avez gagné en " + str$(CoupsJoues) + "  coups."ă  elseă    BarreInfos.Panel(0).Caption = "J'ai gagné en " + str$(CoupsJoues) + "  coups."ă  end ifă  couleur = CouleurEnCours   ă  for gagne = 1 to 10ă    CouleurEnCours = Couleură    call AfficheCoupă    sleep 0.5ă    CouleurEnCours = &HC2FEFBă    call AfficheCoupă    sleep 0.5ă  next gagne ăend subă  ăsub Quitter                            ' Option Quitter du menuă  Fenetre_Principale.Closeăend subăErlend Rovik                   3D ROTATING CUBE               e-rovik@online.no              02-12-00 (18:30)       RAPIDQ                 111  4448     3DCUBE.BAS  'ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ-Ä-Äúú úă'ł *** Filled vector ***ă'łă'ł (Hidden-line triangle based filled vector source)ă'łă'ł Programmed by SkurK/b. (skurk@multinet.no)ă'ŔÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ-Ä-Äúú úă'-----------------------------------------------------------------ă'Translated to RapidQ by Preacher / Bizarre Designz (Erlend Rovik)ă'-----------------------------------------------------------------ăDECLARE SUB Vectoră    ăDim NumPoints as integer, ConPts as integer, AngleX as integer, AngleY as integer, AngleZ as integerăăNumPoints = 8            ' Number of points in objectăConPts = 12              ' How many connect-linesăăDIM Points(NumPoints, 3) as integerăDIM Connects(ConPts, 3) as integerăDIM Rotated(NumPoints, 3) as integerăDIM Sinus(1 TO 720) as integer, CoSin(1 TO 720) as integerăă PI = 3.141592ă' Precalc Sine and CoSinus table, so we don't have toă' deal with realtime floating-pointsă FOR X = 1 TO 720ă  Sinus(X) = INT(SIN(PI * 2 / 512 * X) * 256)ă  CoSin(X) = INT(COS(PI * 2 / 512 * X) * 256)ă NEXT Xă' Copy DATA lines to our tables..ă' Points of objectăPoints(1, 1)=-50:Points(1, 2)=-50:Points(1, 3)=-50ăPoints(2, 1)=50:Points(2, 2)=-50:Points(2, 3)=-50ăPoints(3, 1)=50:Points(3, 2)=50:Points(3, 3)=-50ăPoints(4, 1)=-50:Points(4, 2)=50:Points(4, 3)=-50ăPoints(5, 1)=-50:Points(5, 2)=-50:Points(5, 3)=50ăPoints(6, 1)=50:Points(6, 2)=-50:Points(6, 3)=50ăPoints(7, 1)=50:Points(7, 2)=50:Points(7, 3)=50ăPoints(8, 1)=-50:Points(8, 2)=50:Points(8, 3)=50ăPoints(9, 1)=-50:Points(9, 2)=-50:Points(9, 3)=-50ă   ă' Connect-Lines dataăConnects(1, 1)=5:Connects(1, 2)=1:Connects(1, 3)=8ăConnects(2, 1)=1:Connects(2, 2)=4:Connects(2, 3)=8ăConnects(3, 1)=6:Connects(3, 2)=5:Connects(3, 3)=7ăConnects(4, 1)=5:Connects(4, 2)=8:Connects(4, 3)=7ăConnects(5, 1)=2:Connects(5, 2)=6:Connects(5, 3)=3ăConnects(6, 1)=6:Connects(6, 2)=7:Connects(6, 3)=3ăConnects(7, 1)=1:Connects(7, 2)=2:Connects(7, 3)=4ăConnects(8, 1)=2:Connects(8, 2)=3:Connects(8, 3)=4ăConnects(9, 1)=4:Connects(9, 2)=3:Connects(9, 3)=8ăConnects(10, 1)=3:Connects(10, 2)=7:Connects(10, 3)=8ăConnects(11, 1)=5:Connects(11, 2)=6:Connects(11, 3)=1ăConnects(12, 1)=6:Connects(12, 2)=2:Connects(12, 3)=1ăăcreate sr as qrect:top=0:left=0:right=300:bottom=200:end createăcreate dr as qrect:top=0:left=0:right=300:bottom=200:end createăcreate bm as qbitmap:width=500:height=500:end createăcreate tim as qtimer:enabled=1:interval=5:ontimer=vector:end createăcreate Form AS QFormăcreate can as qcanvas:width=form.clientwidth:height=form.clientheight:end createăshowmodalăend create ăăSUB Vectoră' Rotate anglesă IF AngleX < 512 THEN:AngleX = AngleX + 3:ELSE:AngleX = 1:end ifă IF AngleY < 512 THEN:AngleY = AngleY + 5:ELSE:AngleY = 1:end ifă IF AngleZ < 512 THEN:AngleZ = AngleZ + 4:ELSE:AngleZ = 1:end ifă' Now let's rotate the points according to anglesă FOR N = 1 TO NumPointsă  X = Points(N, 1)ă  Y = Points(N, 2)ă  Z = Points(N, 3)ă  Ty = ((Y * CoSin(AngleX)) - (Z * Sinus(AngleX))) \ 256ă  Tz = ((Y * Sinus(AngleX)) + (Z * CoSin(AngleX))) \ 256ă  Tx = ((X * CoSin(AngleY)) - (Tz * Sinus(AngleY))) \ 256ă  Tz = ((X * Sinus(AngleY)) + (Tz * CoSin(AngleY))) \ 256ă  Ox = Txă  Tx = ((Tx * CoSin(AngleZ)) - (Ty * Sinus(AngleZ))) \ 256ă  Ty = ((Ox * Sinus(AngleZ)) + (Ty * CoSin(AngleZ))) \ 256ă  Nx = ((128 * Tx) / (200 - Tz)) + 160ă  Ny = (100 - (128 * Ty) / (200 - Tz))ă  Rotated(N, 1) = Nxă  Rotated(N, 2) = Nyă  Rotated(N, 3) = Tză NEXT Nă' And now, let's check if face N is visible, and if we should draw it.ă bm.fillrect 0,0,can.width,can.height,&h000000ă FOR N = 1 TO ConPtsă  X1 = Rotated(Connects(N, 1), 1)ă  X2 = Rotated(Connects(N, 2), 1)ă  X3 = Rotated(Connects(N, 3), 1)ă  Y1 = Rotated(Connects(N, 1), 2)ă  Y2 = Rotated(Connects(N, 2), 2)ă  Y3 = Rotated(Connects(N, 3), 2)ă  Z1 = Rotated(Connects(N, 1), 3)ă  Z2 = Rotated(Connects(N, 2), 3)ă  Z3 = Rotated(Connects(N, 3), 3)ă  Visibl = (X3 - X1) * (Y2 - Y1) - (X2 - X1) * (Y3 - Y1)ă  IF Visibl < -256 THENă  ' To see the INSIDE, do "Visible > 256" :)ă   bm.LINE X1,Y1,X2,Y2,N*10000ă   bm.LINE X2,Y2,X3,Y3,N*10000ă   bm.LINE X3,Y3,X1,Y1,N*10000ă   ' Remove next line to stop filling and increase speedă   bm.PAINT ((X1+X2+X3)\3,(Y1+Y2+Y3)\3,N*10000,N*10000)ă  END IFă NEXT Nă can.copyrect(sr,bm,dr): 'To Avoid Flicker!ăEND SUBăThe ABC Programmer             LIKE (PATTERN MATCHING) ROUTINEvoxel@edmc.net                 02-25-00 (10:03)       RAPIDQ                 128  4230     LIKE.BAS    ' LIKE Function - pattern matching routine for Rapid-Q by William Yuă' This emulates the VB LIKE operator.ă' Thanks to Thomas Binder for the original C codeă'ă' ?   Any single character.ă' *   Zero or more characters.ă' #   Any single digit (0-9).ă' [charlist]  Any single character in charlist.ă' [!charlist] Any single character not in charlist.ă'ă' A group of one or more characters (charlist) enclosed in brackets ([ ])ă' can be used to match any single character in string and can include almostă' any character code, including digits.ă'ă' Note:   To match the special characters left bracket ([), questionă' mark (?), number sign (#), and asterisk (*), enclose them in brackets.ă' The right bracket (]) can't be used within a group to match itself, bută' it can be used outside a group as an individual character.ă'ă' By using a hyphen (-) to separate the upper and lower bounds of the range,ă' charlist can specify a range of characters. For example, [A-Z] results ină' a match if the corresponding character position in string contains anyă' uppercase letters in the range A-Z. Multiple ranges are included withină' the brackets without delimiters.ăăăDECLARE FUNCTION Like(ParseString AS STRING, Pattern AS STRING) AS INTEGERăDECLARE FUNCTION IsDigit(S AS STRING) AS INTEGERăăCONST INVERT = "!"       '-- Some like ^ or ~ instead, whatever you wantăăFUNCTION IsDigit(S AS STRING) AS INTEGERă  IF S >= "0" AND S <= "9" THENă    IsDigit = 1ă  ELSEă    IsDigit = 0ă  END IFăEND FUNCTIONăăăFUNCTION Like(ParseString AS STRING, Pattern AS STRING) AS INTEGERă  DIM prev AS INTEGER, matched AS INTEGER, reverse AS INTEGERăă  WHILE Pattern <> ""ă    SELECT CASE MID$(Pattern, 1, 1)ă      CASE "?"ă        IF ParseString = "" THENă           Like = 0ă           EXIT FUNCTIONă        END IFă      CASE "#"ă        IF IsDigit(MID$(ParseString, 1, 1)) = 0 THENă           Like = 0ă           EXIT FUNCTIONă        END IFă      CASE "*"ă        DOă          Pattern = MID$(Pattern, 2, LEN(Pattern)-1)ă        LOOP UNTIL MID$(Pattern, 1, 1) <> "*"ă        IF Pattern = "" THENă           Like = 1ă           EXIT FUNCTIONă        END IFă        WHILE ParseString <> ""ă           IF Like(ParseString, Pattern) THENă              Like = 1ă              EXIT FUNCTIONă           END IFă           IF ParseString <> "" THENă              ParseString = MID$(ParseString, 2, LEN(ParseString)-1)ă           END IFă        WENDă        Like = 0ă        EXIT FUNCTIONă      CASE "["ă        reverse = (MID$(Pattern, 2, 1) = INVERT)ă        IF reverse THENă           Pattern = MID$(Pattern, 2, LEN(Pattern)-1)ă        END IFă        prev = 256: matched = 0ă        DOă           Pattern = MID$(Pattern, 2, LEN(Pattern)-1)ă           IF (Pattern <> "") AND (esc <> 0 OR MID$(Pattern, 1, 1) <> "]") THENă              IF MID$(Pattern, 1, 1) = "-" THENă                 Pattern = MID$(Pattern, 2, LEN(Pattern)-1)ă                 IF Pattern = "" THENă                    Like = 0ă                    EXIT FUNCTIONă                 END IFă                 matched = matched OR (MID$(ParseString, 1, 1) <= MID$(Pattern, 1, 1) AND ASC(MID$(ParseString, 1, 1)) >= prev)ă              ELSEă                 matched = matched OR (MID$(ParseString, 1, 1) = MID$(Pattern, 1, 1))ă              END IFă              prev = ASC(MID$(Pattern, 1, 1))ă           ELSEă              EXIT DOă           END IFă           esc = 0ă        LOOPă        IF (prev = 256 OR MID$(Pattern, 1, 1) <> "]" OR ABS(matched) = ABS(reverse)) THENă           Like = 0ă           EXIT FUNCTIONă        END IFă      CASE ELSEă        IF MID$(ParseString, 1, 1) <> MID$(Pattern, 1, 1) THENă           Like = 0ă           EXIT FUNCTIONă        END IFă    END SELECTă    ParseString = MID$(ParseString, 2, LEN(ParseString)-1)ă    Pattern = MID$(Pattern, 2, LEN(Pattern)-1)ă  WENDăă  Like = ABS(LEN(ParseString) = 0)ăEND FUNCTIONăăă'-- Test codeăă?Like("24","##")ă?Like("aBBBa","a*a")ă?Like("F","[!A-Z]")ă?Like("a2a","a#a")ă?Like("aM5b","a[A-GL-P]#[!c-e]")ă?Like("BAT123khg","B?T*")ă?Like("CAT123khg","B?T*")ăă?Like("Combine(10, 20) = 30", "*(*?,*?)*=*#")ăSteven Edwards                 WINDOWS HI-LO GUESSING GAME    steveags@bellsouth.net         04-06-00 (09:00)       RAPIDQ                 169  4908     WINHILO.BAS '-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-ă'  Beginning Beginner Seriesă'  Hi-Lo / Guess the number gameă'  Windows variant for Rapid-Qă'  Steven Edwardsă'  March 2000ăă'-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-ă'  compiler directivesă$apptype GUIă$typecheck ONăă'-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-ă'  function / subroutine declarationsădeclare sub NumUpdateădeclare sub PlayerGuessăă'-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-ă'  global variablesădim Target as byteădim LowGuess as byteădim HighGuess as byteădim PlayerTries as integerăă'-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-ă'  GUI form layoutăcreate MainForm as QFormă  caption = "HI/LO (Guess the Number)"ă  width = 320ă  height = 200ă  centeră  create btnGuess as QButtonă    '  player clicks button to register new guessă    top = 95ă    left = 120ă    caption = "GUESS"ă    onclick = PlayerGuessă  end createă  create TrackBar as QTrackBară    '  player moves slide bar to select new guessă    top = 50ă    left = 80ă    '  guess from 1 to 100ă    min = 1ă    max = 100ă    '  tick marks every 25 positionsă    frequency = 25ă    '  start player at 50th positionă    position = 50ă    '  highlight available area for guessesă    selstart = 1ă    selend = 100ă    onchange = NumUpdateă  end createă  create lblSelectedNum as QLabelă    '  label lets player see exact number of ă    '  trackbar positionă    top = 55ă    left = 250ă    caption = str$(TrackBar.position)ă  end createă  create lblAttempts as QLabelă    '  label shows a counter of attempted guessesă    top = 10ă    left = 120ă    caption = "Attempted : "ă  end createă  create lblMessage as QLabelă    '  label for messages to player from programă    top = 30ă    left = 120ă    caption = "Make a Guess"ă  end createă  create lblRating as QLabelă  '  label for rating the player performanceă  top = 135ă  left = 10ă  caption = "RATING : ?"ă  width = 300ă  alignment = 2ă  end createăend createăă'-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-ă'  main startup codeă'  generate a random number from 1 to 100ărandomizeăTarget = rnd(100) + 1ă'  set available numbers to select at lowestă'  and highest pointsăLowGuess = 1ăHighGuess = 100ă'  set player attempts counter at zeroăPlayerTries = 0ă'  show form to start program runningăMainForm.showmodalăăă'-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-ă'  function / subroutine implementationăsub NumUpdateă  '  routine is called when trackbar is movedă  if TrackBar.position < LowGuess thenă    '  do not let the player slide the selectoră    '  blelow the current lowest guessă    TrackBar.position = LowGuessă  end ifă  if TrackBar.position > HighGuess thenă    '  do not let the player slide the selectoră    '  above the current highest guessă    TrackBar.position = HighGuessă  end ifă  '  update label to show exact position of ă  '  trackbar selectoră  lblSelectedNum.caption = str$(TrackBar.Position)ăend subăăsub PlayerGuessă  '  routine is called when player clicks the ă  '  GUESS button to try new guess ă  inc(PlayerTries)ă  '  increment player attempts counter and displayă  lblAttempts.caption = "Attempted : " + str$(PlayerTries)ă  if TrackBar.position < Target thenă    '  too low, let player know that a HIGHERă    '  number is needed and lock out selectionă    '  of numbers lower than current guessă    LowGuess = TrackBar.positionă    lblMessage.caption = "Guess Higher"ă  elseif TrackBar.position > Target thenă    '  too high, let player know that a LOWERă    '  number is needed and lock out selectionă    '  of numbers higher than current guessă    HighGuess = TrackBar.positionă    lblMessage.caption = "Guess Lower"ă  elseă    '  must have nailed it, lock out all other ă    '  numbers and disable the GUESS buttonă    lblMessage.caption = "CORRECT!!!!"ă    LowGuess = TrackBar.positionă    HighGuess = TrackBar.positionă    btnGuess.enabled = 0ă    '  give player a ratingă    select case PlayerTriesă      case is < 5ă        lblRating.caption = "RATING : LUCKY GUESS!"ă      case 5ă        lblRating.caption = "RATING : LUCKY MASTER STRATEGIST"ă      case 6 to 7ă        lblRating.caption = "RATING : MASTER STRATEGIST"ă      case 8 to 9ă        lblRating.caption = "RATING : STRATEGIST"ă      case 9 to 11ă        lblRating.caption = "RATING : SERIOUS PLAYER"ă      case 12 to 20ă        lblRating.caption = "RATING : BEGINNER"ă      case is > 20ă        lblRating.caption = "RATING : ASK DADDY FOR HELP"ă    end selectă    '  re-set following or centering of text doesă    '  not workă    lblRating.width = 300ă    lblRating.alignment = 2ă  end ifă  '  highlight track bar selections from lowestă  '  to highest selectable numbersă  TrackBar.selstart = LowGuessă  TrackBar.selend = HighGuessăend subăMesut Akcan                    FILE SPLITTER                  makcan@SoftHome.net            04-30-00 (00:18)       RAPIDQ                 320  7884     QFSPLIT.BAS ' QFileSplitter.bas for RapidQă' Coded by Mesut AKCANă' updated 22 April 2000ă' http://kaynak.cjb.netă' http://makcan.virtualave.netăă$apptype guiă$typecheck on ă$INCLUDE "RAPIDQ.INC"ăădeclare sub ExitClickădeclare sub AboutClickădeclare sub sourceselectădeclare sub e2changeădeclare sub splitădeclare sub targetSelectădeclare function fPath(fPFN as string)as stringă''ădeclare sub OKclickădeclare sub CANCELclickăă'----------- FORM ---------ăCREATE Form AS QFORMă    Centeră    Caption = "QFileSplitter v1.0"ă    Width = 315ă    Height = 265ă	create Mainmenu as qmainmenu 	ă		create mnuFile as qmenuitemă			caption="&File"ă			create mnuSoSel as qmenuitemă				caption="S&ource Select"ă				onclick = sourceselectă			end createă			create mnuTarSel as qmenuitemă				caption="&Target Select"ă				onclick = targetselect ă			end createă			create mnuSpl as qmenuitemă				caption = "&Split"ă				enabled = Falseă				onclick = splită			end createă			create mnuBrk as qmenuitemă				caption="-"ă			end createă			create mnuExit as qmenuitemă				caption="E&xit"ă				onclick = ExitClickă			end createă	ă		end createă		create mnuHelp as qmenuitemă			caption = "&Help"ă			create mnuAbout as qmenuitemă				caption ="&About"ă				onclick  = AboutClickă			end createă		end createă	end createă    CREATE Label3 AS QLABELă        Caption = "Split size(bytes) :"ă        Left = 8ă        Top = 172ă        Width = 100ă    END CREATEă    CREATE Label5 AS QLABELă        Left = 119ă        Top = 192ă        Transparent = 1ă    END CREATEă    CREATE GroupBox1 AS QGROUPBOXă        Caption = "SOURCE"ă        Left = 4ă        Top = 4ă        Width = 292ă        Height = 80ă        TabOrder = 2ă        CREATE Label1 AS QLABELă            Caption = "Path / File :"ă            Left = 7ă            Top = 18ă            Width = 55ă            Transparent = 1ă        END CREATEă        CREATE Label2 AS QLABELă            Caption = "File Size"ă            Left = 7ă            Top = 58ă            Transparent = 1ă        END CREATEă        CREATE Edit1 AS QEDITă            Text = ""ă            Left = 7ă            Top = 35ă            Width = 239ă        END CREATEă        CREATE Button1 AS QBUTTONă            Caption = "..."ă            Left = 250ă            Top = 33ă            Width = 29ă            TabOrder = 1ă		onclick = sourceSelectă        END CREATEă    END CREATEă    CREATE Edit2 AS QEDITă        Text = "1457152"ă        Left = 9ă        Top = 187ă        Width = 101ă	  onchange = e2changeă    END CREATEă    CREATE Button2 AS QBUTTONă        Caption = "&Split File"ă        Left = 222ă        Top = 181ă        TabOrder = 1ă	  enabled=falseă	  onclick = splită    END CREATEă    CREATE GroupBox2 AS QGROUPBOXă        Caption = "TARGET"ă        Left = 6ă        Top = 89ă        Width = 291ă        Height = 71ă        TabOrder = 3ă        CREATE Label4 AS QLABELă            Caption = "Path :"ă            Left = 7ă            Top = 18ă            Width = 55ă            Transparent = 1ă        END CREATEă        CREATE Edit3 AS QEDITă            Text = ""ă            Left = 7ă            Top = 35ă            Width = 239ă        END CREATEă        CREATE Button3 AS QBUTTONă            Caption = "..."ă            Left = 250ă            Top = 33ă            Width = 29ă            TabOrder = 1ă		onclick = targetSelectă        END CREATEă    END CREATEăEND CREATEă'----------- FORM2 ---------ăCREATE Form2 AS QFORMă    Caption = "Select a Folder"ă    Width = 320ă    Height = 330ă    Centeră    CREATE btnOK AS QBUTTONă        Caption = "&OK"ă        Left = 223ă        Top = 270ă		onclick = OKclickă    END CREATEă    CREATE btnCANCEL AS QBUTTONă        Caption = "&Cancel"ă        Left = 138ă        Top = 270ă        TabOrder = 1ă		onclick = CANCELclickă    END CREATEă	create dtree as qdirtreeă		top = 5ă		left = 5ă		width = 300ă		height = 260ă	end createăEND CREATEăăădim fsize as long , splsize as long , rmn as long ădim spl as integerădim file as QFileStream , nfile as QFileStreamădim crLF as string , c34 as stringăcrLF = chr$(13) + chr$(10)ăc34  = chr$(34)ăă'--------------------------------------------------------------ăsub splită DIM memory AS QMemoryStreamă dim n as integer , poz as longă dim sPF as string 	'source path/fileă dim tPF as string 	'target pathă dim sFName as string 	'source file nameă dim tFName as string 	'target file nameă dim tFull as string , fBAT as string , a as stringă dim bf as stringă sPF = edit1.text 	'source file pathnameă tPF = edit3.text 	'target file pathnameă sFName = sPF - fPath(sPF) 'source file nameă IF file.open(sPF , fmOpenRead) = FALSE then 'open source fileă	showmessage "Problem with reading " + sPF : EXIT SUBă END IFă memory.CopyFrom(file, fsize)ă file.closeă fBAT = "@echo off" + crLFă a = ""ă for n = 0 to  spl-1ă	poz = n * splsizeă	memory.Position = poză	if n = spl-1 then splsize = fsize - poz 'remaină    	tFName = sFName + "." + right$ (("00" + str$(n)) , 3) ' target filenameă	a = c34 + sFName + c34 + "+" ă	if n=0 then a=""ă	fBAT = fBAT + "copy /b " + a + c34 + tFName + c34 + " " + c34 + sFName + c34 + crLF		ă	tFull  = tPF + tFName 	'target file full path nameă	poz = n * splsizeă	IF nfile.open(tFull , fmCreate) = FALSE then  'create target fileă		showmessage "Problem with creating " + tFull : EXIT SUBă	END IFă	nfile.closeă	IF nfile.open(tFull , fmOpenWrite)=FALSE then  'open target file for writeă		showmessage "Problem with writing " + tFull : EXIT SUBă	END IFă	nfile.CopyFrom(memory, splsize)   ' write target fileă	nfile.closeă nextă memory.closeă bf =  tPF + "merge_" + sFName + ".bat" 	 ' batch file nameă IF file.open(bf , fmCreate) = FALSE then  ' create bat fileă	showmessage "Problem with creating " + bfă 	EXIT SUB ă END IF ă file.closeă if file.open(bf, fmOpenReadWrite) = FALSE then  ' if erroră 	showmessage "Problem with writing " + bfă	EXIT SUBă END IF ă fBAT = fBAT + "REM This file was created by QFileSplitter" + crLF + "REM http://kaynak.cjb.net"ă file.WriteStr(fBAT,len(fBAT))      ' write to batch fileă file.closeă showmessage sFName + " SPLITTED !" ' OK.ăend subăăsub sourceSelectă  DIM OpenDialog AS QOpenDialogă  dim FName as stringă  IF OpenDialog.Execute THENă	edit1.text 	= OpenDialog.FileNameă	FName 	= edit1.textă 	IF file.open(FName , fmOpenReadWrite) = FALSE then 'open source fileă		showmessage "Problem with reading " + FName : EXIT SUBă	END IFă	fsize	= file.sizeă	file.closeă	label2.caption = str$(fsize) + " bytes"ă	Edit3.text = fpath(FName)ă  END IFă  CALL e2changeăend subăăsub e2changeă	splsize = val(edit2.text)ă	spl = int(fsize/splsize)ă	if splsize >= fsize then ă		button2.enabled  = falseă		mnuSpl.enabled = falseă		label5.caption=""ă	else ă		button2.enabled  = trueă		mnuSpl.enabled = trueă		rmn = fsize mod splsizeă		spl = int(fsize/splsize)ă		if rmn>0 then spl++ă		label5.caption = str$(spl) + " split files"ă	end ifăend subăăfunction fPath(fPFN as string)as stringă	dim poz as integeră	dim lastpoz as integeră	doă		poz = instr(lastpoz + 1 , fPFN,"\" )ă		if poz=0 thenă			exit doă		end ifă		lastpoz = poză	loopă	fPath = left$(fPFN,lastpoz)ăend functionăăsub targetSelectă  if edit3.text then ă	dtree.initialdir = edit3.text ă  elseă	dtree.initialdir = CURDIR$ ă  end ifă  form2.showmodalăend subăăsub OKclickă  edit3.text= dtree.Directoryă  form2.closeăend subăăsub CANCELclickă  form2.closeăend sub ăăsub ExitClickă	form.closeăend subăăsub AboutClickă	showmessage "QFileSplitter v1.0" + crLF + "Programmed by Mesut AKCAN" + crLF _ă		+ "web: http://kaynak.cjb.net" + crLF + "mail: makcan@softhome.net"ăend subăă'**************ăăForm.ShowModalăDennis V. Buyan                VECTOR FONT                    dvbuyan@mg.dp.ua               04-18-00 (10:48)       RAPIDQ                 101  6579     VECTOR.BAS  ' Vector fonts for Rapid-QăDEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2ăSUB V1:OPEN "O",1,"VECTOR.ZIP",4^6:Z&=4640:?STRING$(50,177);ăU"%up()%9%'%.-%3m\aMJ['&I7..%%MD%%%/%.%%%j%hytw%SgfxTN>v>oSokp+muăU"4HaP3e\Qi)P+>j7mi9:YaMr]PLPebsIS9Y*/Z;:n6IZI8wEbEv.-pF9(ck$=(htăU"KHGGoG36:;J?bkEmhtpCXTd?%U:6J,zC.'+dm(S8=(?*h\yE4S<g,UhWR$dE5BKăU"d,b,W/Z$U-9I%QUJ33/kX37O/3()KOI%'U3I>YAoE,t&NNNp]v$Hs9WGkSNI/\SăU"5&*aA#gC,VqX0Fhc&hLHjSjC<$lx[:W$mbxG>n=bamceCk,$U/THtCmgXncO-x-ăU"%7bGm*N=\?aK-3s%iFI392%QE9pW9kN9EnoSx.%LhYeq):/ZLBptzFD5UK/_+=6ăU"#_*A>=))n0B':-Ahx\8f),1E5k;pR_a#S$o;De+^$-PC_bWjgx=M8D,\6Lqwg=5ăU"&pP4[obE]B-+e1JWjsk\kwqh6W;OX&p)h:42;'$*&dvc]UoWJKZ0w=d[K;07K-3ăU"6nvKEuWASF+cGBd;^<9ZiK$1-Kfh,h1dp;2i%.?0-Dr/6xmbuI&p<$#b1Qyk9KeăU"UqDuukk+BwU<U*M6;vUGcH%$aSds\Au^:G4ew[S'bwb_H1.Pk?R=a8X#C;IpF6)ăU"N(ahSS$9P$4H>zp0q(XZ+=92gGXXs.DVCSYNhhW5UHlCT0-#9G:*[rRA0AFX&T>ăU"1\PqOsA)a^ZR3S'nSYR#pPLlK+WhGLnt#-H\*HD/.%9<)\Tu,wT8Pz.U4p\*fDQăU"88KD,Mj4U=qqTrkvP7YXs+N>^X#qG<:%TqokVwlRmH*,B,EySXmObtGSoS,$L=IăU"+=neF<KDtnLOjO&nLq-:fc'Nq^>LREC-grO6ZOh$)aK;3RJY'hO+>ZO2hXWYRqaăU"I91%lhODk+q*1'CQe'PzW%;14A<Gf?P3471GoJrYQqw9/iX[::V?FLoz\s%f)4YăU":7;/lV:jara+'G9>;_<Zn']UE]Bqm+q:7MNN=EFq^dm%<3Q8O$5U_4(5u'BP#*OăU"ZS[e58cLJ6e]'GxS*c7TbQms9QfE+FhSmwtBo0aGqY>%/.S>#2Ey2ghA[RvP>'UăU"#YHB\<S1slcn\MFDU#6qc;?UOFY[I.70VH3$r*^u:pbVM*lWISC:Yu,$\<drgrLăU"UR\7a_D#iAX>)Hg_\YM<V<9r1WJd88&JNUCk2^Rx$ORIyDoDQ>V35q#q.;9[STZăU"a92;^Jr&4-?HkPKw&i(eEd+H9&so6iAKD:<8_,XVncU,]ds=*s;k)U0GVtNJY#dăU"S1WXu.JnLApw-)NGSr/vLKcGG)?[JSUFvKY&['fhGDGJ_\p$>5ad&sm.danIRJSăU"m/(YDL]M0Q#5BMWTkj&EQNJYob2Z/9LN\\P/9U^fuE0A5o*.J7UsTXbN?+I1%pOăU".E;b;aVGmmN'88i:<b?$R]shUKRW\gXGF\S->4w=oDG(M\?xea_*,lks;X*J56GăU"kQZ3tZZ-(vd'OcPWoWjEDC3X4l/0ZDBNc_gc2xMP1t:.SGeu]3=MnRmJkBQUMJSăU"lD+]v50K,bh,>TY3UpVB'rp''L*8IcjEP_ODq6a1w)$6g1v=9$aH%RaOMM;o8._ăU"0<b;g1QQW'p86>3GijgHhw(K<jl^siOQpcz'g'H8FQEFTj)mSJh8(LIqp]'tfL_ăU"l?N,WTgaIYn\l7'o6nrEgAhv7i.0h0og73uwV8Uk:wSlSiH13U89aL8RHCof(z#ăU"z?vG/N\DVZ4/YPiq:y/;\^:x;T\2Zp\e2.aEVGrUjqY\7if-ZOP^ze6'\nEc-p.ăU"fer-jt5SFr-k*tS&:W0rIjQ7lh,lX,<cc&vS>^p:+Th),O52Zs/[]6%-;cf\Dr.ăU"k8mEK'd<28MYDP)8MWac#4F]xDdQE8sDMuw7)8CT4:^W8XLFjKG&HIx7UcUicHwăU")9;QNi=3T>he'y0mec+/.=yv?*K%RD03FzuEn'75Qc9Hs0)GnN(iCsZe2qV=n^MăU"j/TY,=rsC=CG:L^e.GlxT9A$7]$hPorcYS<=Elf1QZ(E#x626:g3>U\jRrU\U:săU"U84U[+Vx^WGj;Tt5C7IoCnoSi>Zc3uIfPe^2+z''hUb_gL:.aN;ooMhXolX$2Y1ăU"LO7s'MgNMPVI>m<LRQwvsVlw3X,#^iZL1'p0LEh4\Xq?I$AI)ToP(0)%Btz8MO(ăU"d4rhe11Xpw2cJ.FqL$Jf96_c.oU'2DJ>BATfq2E1Q$m,-oi%pVt9_9)2OvnE8:găU"n.7Q\nNO<IO%56rWwE4l1\a>L)R$0koK5>CEVG2;#4cFKFf(Iw#9U1RDCN32q>VăU"7\%b5c$WAp2^n\^bC$AvvvXt4Jy_SrbXp7njEGBVLto-&?d3Kk,X+2V.U=plF(6ăU"1&Q)3676JfvTmjcBEyNX<\Z))k%RJ9Ye0K.204QmLcEP;KuoDY-\)eHGsRdbb\$ăU"WO$>.x3loA&F[Y^.X:4gosK'Z;IOE'4P[0C#4#=8HlCZ-Z,<ItW'&za&RE1<l<eăU":_\/5.[vQHpR-J)'jYT[GDeq?unICN)63K]osS]fC$B7zB&fJGWjnk0G?c^IbFgăU"Z;%,eom7,&RJ2C(huwXR)HX%*)&7h:My)fa'6_%wfN8iXa8?JvWHaIb=Ao_1^LYăU"'nA\ymqb'^\?Wbd*^*Q20K;/35+#:K+-b=<I:uP^%Ome'WK.jbRmkOKw9:T]NWRăU"2k0F<']_Be^C+Do=0N='I0bv#PDkT>/7OaBm;nR+bf$cEl*>[cXg_c;]v>-Us5^ăU":k#/Jt76#;#aAv0Tr8*N7siSdu&+m^L?mPr^J_gok5f*EumOKgk4j_mi)Be<*c7ăU"95h+q4zdjHA1*\c6J_f:qx_]LW&8f1hbY^Ayz-ohg8]V8^bKBt'[B8KKoo>Cm:*ăU"k;0JQ4[[<x2;8GOD::NvjFjTni['#a?=\>no^WLe.Hq:cZD-O&4r,^Xc&rQL)).ăU"XR?r'&cCA[Aw\=Q8/ik>2Dcx//m%)VtIU_EjH&MEA7?.k(/ao#4w'u<up%()9%%ăU"'%-%.?qaMrlqL9%]-%%%^E%%%/%%%%wzx]#[[S%Rky&(q(B\1L6MFdKxh6.*_'năU"jhQsK5Yse*6<?X\n5;H=[ITNgQ(J5Mgd&M:.f8KF'4okfwi2B&w#f%C7nO)^R83ăU"zlUIE#..\.\?mR8%1,n37M8L,ee+]9bTCO.U;f/Fafe1*Rc<o+9d-83X1<JK.H%ăU".U^Ptlq3I838v0/_-y<Ddqp<+SA&>IbH#)iEt)C%\9FPQg63tO&'S=Q28(%wIZ/ăU"LoS(shA$nQR2TQsYsMgP/9tt:?)ee13/A+N.<CN3*c'Rw>NB+Wp8ZW9%%N2)dhCăU"WL)FLQtInpW4:aK<;c+l3GzP<)()'R)TNy\g\+CMXQx$D-XqHWF*Ld36*T,--QOăU"X^c2Hq3G)eEn(.('OTG-nP.5ILYzWGyH^#<6Q0(:knc0:K^W&CV[S=<%o+[X;PeăU"(0bB^^9[<Fy99W9&Cv0eX<5M.fzD2((((]^q,%9GqB^3AtQv6xL%N12K-ME,5UUăU"_ho#v;ss>an6wZCYaJRsVU#;)CS7.+M3BtJl>,qC=sGgpcArk6,&?<qhgg+jnaBăU"P5DxBEz#-BsvUoA?%tCGYbWn)C[p;?o_r_(6&EwlO>23%s1)Q#m3\*Cm3/3UhqVăU"/NHe;MB(E9Pg+ORs_qi&6XKx/$NVt%ST:1(naK4K.Hi<XoU?x)R*yMXP:$QCS:jăU"dI<Rm;Jq0B$?FopUkr#_MfDOrN>yWE)nzWJ)Y2?KkMYiF?r#A7JS1TWkkl<'$q7ăU"rfL%V'OJ.tX)WY4,+oNW.0-iU-9bdg,SX-0At*kzaqVY.DSh5j0vt83:Up5Gs8]ăU"3SUrtEB7pmtxf3_T-qf_ne^fBg=AoY/w6I['=%]^uta]ckT/?:O\)+v)ZiW7:cGăU"Ai<2ur,k_'T]Og6ct5u^ad3)hl2<IKRudV(I(H<Vi,86gIrgvDcdrlf$Pc$.K:NăU"gh/i#XJ,iI0k6*e4=l*/(8n.'5YZO\:?QajhTjiOL,4e(xp#)_rQOA=6]R$[+\zăU"J.KzDyk=cqK2hx//L3aLF2,h_SG'ssirqR]i,]*:m#B/S5aq-EH]VD)Cm:rr$7(ăU"d.l+x^=Gl+8&jTY=]Yhu;N(qXI<5t)ca9pmleh&,gU/XkC>7RY3&4[U?86t[ET1ăU"AM$Kr,EbjdjYavt;Jvf+jEN]LC;-H_C&SHR-i;WmaH.K=B'nR1BY,1RK9Em(U$WăU"W?:.06/[#]w<jPmwo/NA)p0K2%J7q+<6U+pJLWgUPEeu8-KO)Xs5oIXEqQDpZdBăU"B+>QS[1]z'pV=RH-Bgi.u[3>#y;#4?(vC5,o<jd;-1iSWeG1xj[2=<QLB.;[Hs2ăU"[)&9-\2q$($1?i4u',ldCf+=zj\z$HYmS,Z)0uS<4FZ'B_J,5'N5.l#O,=OV;F1ăU"*r=cP*#M_xtG=GQ5?ok<MvNQ'=V'D5>_<_5?0O?GPtk>/$S*>P.k2.pPAH&w(63ăU"Tfls.(d=gL(SMiQ_Ojldf,x-FWK*bM_4'#0j3R10nf[n$nv'kxr&\JZ6d$/'G%9ăU"ll:/?UY:rP-J#6\'#jP)Z:\'IDt9cQ/enlxCmloQLY9Ng)sQ7bO'N)\-\g\SQ.WăU"jX4V<1\Sx-M4wlr)O7^N[E^5Bx8dV42_Vsu+IQ)UNQ3^YVw7LqSDifasq(x/]]IăU"DWF0lw*+1%-:z^6e0Wr'oYbv6V]^OPCb2tebmBGO_7-rxwn2L*e\[$]<[ex)sr+ăU"jJWSH,GWe3JSel-SyMm)0n1nrQe*>4Q_=VJ7Cfpp)h,BlYe$F=Dg3Blj.F2qihPăU"Wkjvs&#wb-3%6pbL0ok&I4;#D.XW9'7prYv:8GM)DR9G;5ssbnKC/L0/m<l]'o4ăU"88?j_8t6mYM.ID7:bqmFfPS-dJOU$i7b1^dZ&l^WY.7ST1:+bhY1&*V7nCng0/%ăU"X:=NleQ081H'c2j$,Al$9v^:WMawCP4&J6p4]-qZ9&(/EiWp_N1$vvKs?#3g\1&ăU"*txRAW7ZU)L_gsc'=#.g-'4#<#FtKnp1RTtcUB?5Ls5mG#P79kMG?5+1dxd?plQăU"9=,Qm[/n=d-$yr(P4e$:1$c19(6y6cHJ()^QFdP;+C,e:d8.nnGYsufFF>oB:9LăU"8_ActY;H9Ko1uT&ij0Y>]lbL$'s(*osFR8XR#wfXYj5XL_KY1wqPznI\egcwlijăU"J.e.6an+lSwXFamkp?/HTX,2aA5i*JWRFhQ9XWr20A:'zr6ud)tHHxn>q1_]avfăU"N[a_f)q9R\3M7AErn]]rpUQ1gX$bZ1&KY*oix#hjI-ti57q(\$_=(d/4JAt,)#FăU"a:oMwd_piEg,[T&;BAT_x9.P]%Fxtp6.o2#cPB(45VQ]EdBWre/hlT0#r<pT9m&ăU";O(a$OCRh1'(8WcWRn8,3[F+Ytq4p4_v8<j5;u;zF73*Wp.fuV8faaK/=cFsVsAăU"\3pFrGNP&j$S1m$-XtK.C4r_b)SHUad]5Q^Hi]4mIo$D)9Geb6YQmxrrda7(a?*ăU"-bitvPUOa[2Sh\1ovn$-Bxb602QGx+c[<x40NZj9nl1aM*LoOZe().W;pCG#G?_ăU"/:j/cwF$#8U$;qkkd1$a9fr7C[dG3HxXdFYEv,?GQG_9UB>*kQwjTwfn$VNTqtXăU",XF9h)huzg<^bAWRNwtO'8\Mki$V>,Ocd8aWMmqis'T;_ahD1Wn<t>tPYrx;/dlăU"3nrNwO/u?9$f5MGMDU;NuKG'x*up%&'9%%9%'%.-%3m\aMJ['&I7..%%MD%%%/%ăU"%%%%%%%%&%%E%%%%%%%%&%jhy%twSg%fxup%&'9%%9%'%%-%?qSaMlq-L9]-%%%ăU"^E%%%/%%%%%%%%%&%%E%%%%_.%%%wzx]#[[S%%kyup%*+%%%%%'%.'%?%.%%i6%ăU"%%%%ăEND SUBăCLOSE:IF S=47AND 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ăNick Ruisi                     CGI INCLUDE FILE               n_ruisi@softhome.net           03-27-00 (19:40)       RAPIDQ                 127  5045     CGI.INC     ' ---------------------------------------------------------------------------------------------------------------ă' CGI.INC version 1.0  ă' By Nick Ruisiă' Acknowledgements to Kevin O'Brien (Author of CGI4VB) for the ideaă'ă' ă'----------------------------------------------------------------------------------------------------------------------------------------------------------------------------ădim pairs (2,256) as string,CgiValue as string,rawp (256) as string, strTitle as string, newBlock$ as string  ădim strpointer(256) as integer, x as integer,r as integerăădim CGI_Accept            As Stringădim CGI_AuthType          As Stringădim CGI_ContentLength     As Stringădim CGI_ContentType       As Stringădim CGI_Cookie            As Stringădim CGI_GatewayInterface  As Stringădim CGI_PathInfo          As Stringădim CGI_PathTranslated    As Stringădim CGI_QueryString       As Stringădim CGI_Referer           As Stringădim CGI_RemoteAddr        As Stringădim CGI_RemoteHost        As Stringădim CGI_RemoteIdent       As Stringădim CGI_RemoteUser        As Stringădim CGI_RequestMethod     As Stringădim CGI_ScriptName        As Stringădim CGI_ServerSoftware    As Stringădim CGI_ServerName        As Stringădim CGI_ServerPort        As Stringădim CGI_ServerProtocol    As Stringădim CGI_UserAgent         As Stringădim lContentLength As Longăă'--------------------------------------------------------------------------------------------------------------------------------------------------------------------------ăsub SendFooter (void)ă    print "</BODY></HTML>"ăend subă'----------------------------------------------------------------------------------------------------------------------------------------------------------------------------ăsub SendB (strData as string)ă    print strData;ăend subă'---------------------------------------------------------------------------------------------------------------------------------------------------------------------------ăsub SendHeader(strTitle as string)ă    print "Status: 200 OK"ă    print "Content-Type:text/html"ă    print chr$(13)ă    print "<!DOCTYPE HTML PUBLIC ";chr$(34);"-//IETF//DTD HTML//EN";chr$(34);">"ă    print "<HTML>"ă    print "<HEAD><TITLE>";strTitle;"</TITLE>"ă    print "<BODY>"ăend subă-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------ăfunction GetCgiValue (Param as string) as stringă  for i = 1 to 256ă    if pairs(0, i) = Param thenă      GetCgiValue = pairs(1, i)ă      exit functionă    end ifă  next iăend functionă'------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ăsub InitCgi(void)ăăCGI_Accept = ENVIRON$("HTTP_ACCEPT")ăCGI_AuthType = ENVIRON$("AUTH_TYPE")ăCGI_ContentLength = ENVIRON$("CONTENT_LENGTH")ăCGI_ContentType = ENVIRON$("CONTENT_TYPE")ăCGI_Cookie = ENVIRON$("HTTP_COOKIE")ăCGI_GatewayInterface = ENVIRON$("GATEWAY_INTERFACE")ăCGI_PathInfo = ENVIRON$("PATH_INFO")ăCGI_PathTranslated =ENVIRON$("PATH_TRANSLATED")ăCGI_QueryString = ENVIRON$("QUERY_STRING")ăCGI_Referer = ENVIRON$("HTTP_REFERER")ăCGI_RemoteAddr = ENVIRON$("REMOTE_ADDR")ăCGI_RemoteHost = ENVIRON$("REMOTE_HOST")ăCGI_RemoteIdent = ENVIRON$("REMOTE_IDENT")ăCGI_RemoteUser = ENVIRON$("REMOTE_USER")ăCGI_RequestMethod = ENVIRON$("REQUEST_METHOD")ăCGI_ScriptName = ENVIRON$("SCRIPT_NAME")ăCGI_ServerSoftware = ENVIRON$("SERVER_SOFTWARE")ăCGI_ServerName = ENVIRON$("SERVER_NAME")ăCGI_ServerPort = ENVIRON$("SERVER_PORT")ăCGI_ServerProtocol = ENVIRON$("SERVER_PROTOCOL")ăCGI_UserAgent = ENVIRON$("HTTP_USER_AGENT")ălContentLength = VAL(CGI_ContentLength)ă'    ă'ă' parse the data sent from the form, extracting fields from the & separatoră'ă  if CGI_REQUESTMETHOD = "POST" thenă    ContentLen = VAL(ENVIRON$("CONTENT_LENGTH"))ă    CGI_QUERYSTRING = GET$(ContentLen)ă  end ifă  qslength = len(CGI_QUERYSTRING)ă  x=1    ă  newBlock$ = ""ă  for i = 1 to qslengthă    kar$ = mid$(CGI_QUERYSTRING, i, 1)ă    if kar$ = "&" thenă      rawp(x) = newBlock$ă      newBlock$ = ""ă      x = x + 1ă    elseă      if kar$ = "+" thenă        newBlock$ = newBlock$ + " "  ' substitute space for the plus signă      elseă        newBlock$ = newBlock$ + kar$ă      end ifă    end if ă  next i   ă'ă' plug both sides of the equal sign (name and value) into the pairs arrayă'ă  for r = 1 to x ă    linelength = len(rawp(r))ă    for g = 1 to linelength ă      kar$ = Mid$(rawp(r), g, 1)ă      if kar$ = "=" then ă        pairs(0, r) = Mid$(rawp(r), 1, g-1)ă        pairs(1, r) = Mid$(rawp(r), g+1, len(rawp(r))-g)ă      end if ă    next g ă  next răăend subăă' ------------------------------------------------------------------------------------------------------------------------------------------------------------------ăJernej Simoncic                STANDARD MESSAGE BOX FUNCTION  jernej.simoncic@guest.arnes.si 05-03-00 (21:33)       RAPIDQ                 54   1762     MSGBOX.BAS  Declare Function MsgBox (text As String, buttons As Long, Title As String) As LongăăDeclare Function MessageBox Lib "user32" Alias "MessageBoxA" (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Longăădeclare sub FormClickăăMsgBox "Just A test",2,""ăMsgBox "Just A test",1+32+256,"RapidQ"ăMsgBox "MsgBox by Jernej Simoncic",64,"About"ăă'Shows standard Message Box, with buttons in local language (unlike RapidQ'să'MessageDlg, which always shows English buttons)ă'ă'Usage: [button& =] MsgBox text$, buttons&, title$ă'ă' Thanks to RapidQ, you can use it as Sub or Function.ă'ă' button&   Returns clicked buttonă' text$     Text to display in message boxă' buttons&  Select which buttons and icons to display and which button isă'           default.ă' title$    Message box titleă'ă'buttons& values (you can combine them):ă' value   descriptionă' 0       Display OK button only.ă' 1       Display OK and Cancel buttons.ă' 2       Display Abort, Retry, and Ignore buttons.ă' 3       Display Yes, No, and Cancel buttons.ă' 4       Display Yes and No buttons.ă' 5       Display Retry and Cancel buttons.ă' 16      Display Critical Message icon.ă' 32      Display Warning Query icon.ă' 48      Display Warning Message icon.ă' 64      Display Information Message icon.ă' 0       First button is default.ă' 256     Second button is default.ă' 512     Third button is default.ă' 768     Fourth button is default.ă'ă'button& valuesă' 1   OKă' 2   Cancelă' 3   Abortă' 4   Retryă' 5   Ignoreă' 6   Yesă' 7   Noă'ă' by Jernej Simoncică'ăFunction MsgBox (text As String, buttons As Long, Title As String) As Longă  MsgBox=MessageBox(Form.Handle,text,Title,buttons)ăEnd FunctionăAlejandro Damico               ANIMATED CURSORS               aledam@adinet.com.uy           06-28-00 (19:51)       RAPIDQ                 253  16592    ANI.BAS     ' Animated cursors for Rapid-QăDEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2ăSUB V1:OPEN "O",1,"ANI.ZIP",4^6:Z&=12154:?STRING$(50,177);ăU"%up()%9%%%%-%%E.SHf[1'=W+.%%k=%%%.%%%%lq%tgjS[fsnf/gfZA7j9#P><9ăU":pt=[F_avIpLmU<h/A4677+9MT5%iV,HF1;g._+e^]7UD:xe,'LRH()9LK%4$rEăU"#_p3q_[hxn-zH=F=5mq?).T$Zt(pur3v_vlc6y(ugX6tTdl?KQorf.paGmig,:[ăU":Z.CP.fT,KVr[:lY?$hc8f8\,<uv(8rYS#xMZlY#VuXwma)4TvOUCr'Du=X1$^hăU"Mb\p0,6U-Z/?P3lUEF?8_[gt.i<xh+..l^PI3kA:3,Lo:43ii$>j$8Ey0Bl-hZmăU"A3t$K6JseRk:kZ<KChzRIxX:DSo_doX3%RL$i<PSX6BT6L/P]I\ER$E5y0M=P1YăU"56$aI$)DL1$^X+6lB_;veB0#e1DHSlVs^^05/-Hj.ZVjc_eL,0J9.\NEN42Rm?=ăU";Ui55Ps,AB4Ib-*ez]6sfHBjObFyl8unfWsHNwBdY*Ci6#i3q6,XBlO?QNCZurPăU"&t&IUZj'_rS6hbKXQH,n*r;K'(=_+uii,>9ak9Hr>q/DsYB9[\)_l-]elKI[]3hăU",w[Yz#u;io#$UpCBLx=3HgA73<03pT\r^^42cvNVg^nU>B$x4Vh.#BlCSMQ\&AhăU")N7<Lu7PrvCtHQ[5X*#4oU0p=-6xl9.m)nuIE6:^:936u1Ei]9hw%Vf>qNZiJ2iăU"p/Sm,N-RN=5_1gy6]Fi=E:IuUv0)?WvC.%9oh+mjC9h?OuQ%/m39#1ho9inoO&1ăU".SS&qIjIJtS]qg(AF$f8OnYV<>n\ZI..M5DVI*B4Ar08U_[a51/pbtdJ_]Lr=+<ăU"XMgl9M\kfcxO3gbAX06c/tmq\G^_p)l'=I]PC8-Bgezno(t4;b>U]=qE;=rXlOjăU"3y3mXMaU$e>Mq[<M]F4*wd3f8Y$TPr'(%glXtIWIx'.<LdF9JWK7n+zJg&3(da0ăU"[SX*U60]QfUG%eT7'Q>V]$'u9_LmV[*.,MenVh'aMdQS+:em\s1NOl5-P6uEk$XăU")H6M&YbV=O&(SCX6q6\A#t_%qCF\\8wBeq&]a=z#GEg&^Vr-5e]b]:AQ_KLyp/eăU"2T3;=N.$#dQ'6sPL%E$.Q6luW9h_U,Q0qf(N_Y<guxNMcZkypQ(bd>HSOS#6HSTăU"L,,*pS/7kz9,GF*S\5/U9.;-4/2oFRTj99p8IawO%&.S9U)LkPSE4cNOF$N9Aj=ăU"$+),m3f$j)4)c48.BN:k5J==DMghb&uf&G(hnV3$KT]h,.TU0ZN&ilVU#+3,$AjăU"U97Lt4J%z(=w>US&03020-vFuGO:AlPxrUQDFf0S%)]mj#yGbjM,jDnYDI;n-._ăU"'SP'%]wg:$j;%vH<Y=xO2GAASx/S$0K$R'__QP(f=?M8pOB7&T573>oONIoR0*&ăU"o9UZ,x^Z_/4/Ga7gZLN4*%zb-O^sN;_L9yTo&kKHNZOFAWdM_\Qlnf6l7O\USA8ăU"-dM=t[jfFRr#Q3ar1ZCEe..JiBdK&Pgcbpv.]E64/]e0O3\p%bheuGa../J\OlFăU"i4ZbFIb-^_7f;A.FA_10)xM+O_hXeR0qr-TH:6?/I_7,EF*q['lNT7$iQQGro9uăU"l5O9M[[R[()$NIqTtk/u+q;a1_(*Q5f*x91(9Xfn15NMO3'De_u8(-%%T#&yaeQăU"D,5RFiku.D$]'UL7('I.*wI4vu/5nf%KVCL-21chz<ere?E4*FbE,EvcuU6#,vlăU"4\Pa0%mBh<:*V<f9&Z29eY,(BE0.DlJ/7e2],*A$m[M_CqPx_OoHWwdyi3^)[WoăU"jl=x_D86qI$BHFFx1krI$/_Qs[+^hI<f-725jTak]O'V[EmA\uQf547?$bK8<OQăU"r[Dk;GXS/X5U;*tQm7rr)p$eLej\\'YJC,E;cE5]*?uDz=pki,-4%FIGVni4Q(IăU"Vw.ZXoMQSe*qX[iK(u/4gx3A#mrjmOmN]Rg*;pO6k=NPC.NNx(S4)]tB#&,>+01ăU"+wsdOun(4iOicDb3GSWy,h'd2^H&a&^<5?Jk/C.a05&k&*>qo>T9*tQ;2>p;wF/ăU"dEeX;s7$AZ=Och:ua11K:6CVNV#;BI6w&l7]iU8)#gZOXGRW%6H.Rn09NfVGA89ăU"vJgN'zICpg&KHv,PBFqfVIxwMqqTQAn1:fS0+*=*5*H&M9^y:?_mx/wD4:Jnu%păU"()9%%%%-1%/(=sF'P%+D=(%(%?T%%%/%%I%jB?24A0Sh0=8f5iH>77f9#Dguf\?ăU"-;BPAk[j/ut#iI=)7jKMhX<bS\Rlm\C/X'pLZZv]tf30w:,Intoim[:Grx'XX.jăU"M_-m+Kr?#po,]E1prBR/_.eGQ>_HfeUHen\*a/EcfPKV('*QXSKm5N*b(POu5=săU"P82/8#2XdPz7z6bn7Ngrf0tSHoGR;oTMhODzJz:jd4-&rPyn[kM2)2SRsfLu6u3ăU"-qnL)+Kk5Yd,AbKk)bt'x*.[;h0<F-ba/uvfa[S::k7ongp''n[lTk=.ikGX'+5ăU"#l[p0_?d$xY(I*uLd2upjKDC.NI;/Qz>[spwM[RUeEJU'2wP4CMSTEF58*c1p)GăU"Bv(bw)X-ShZOj*48(bXeoHOmu<]$d]);AD?*U#)<1(s=1,_3Ve6goft__8OV%q/ăU"Ur7NEB_sw9Ir1$]rqUua3-qev:jCxWlxX>l&dHa0sanB\>rq8Ul,XL7JJV9r7w>ăU"B;jGjI$HE&j8#aQPa]cTdD(M=&1w7O&sY<:2+$31eqO(%\F%)QX(1*O0t9MsA>LăU"rTZ=Z#,OsceHqRk(T(vP8N9)$wMYkHD1E]zJ)%$#5/,ZgujZKPr5139Maz<941TăU"p9]*39qy#ZY*,.reP^S.91i7'r:5dreP2/79[j$*uEMSC9A1AZsf6B*N=FFTL9SăU"EKJf&.m&*U#/ArP)u/a2)tORCO*[OiR'r:?J\gPgG5ltPSrNA7s/?Lq:9glkVPkăU"-im'r:Q)iS'V,\xc*4oK9/IY*2:nI/Gx+3b'M+u[Z*2iQ8Zm(/Gvcdr'wB\ixoUăU"Ng*[5QeZ)au0JX)N'*6m.USkQ0ldQ;S[Js;h1K?O*O$hia6S4pq;)f#(l.$ZLOlăU"t95lxuHADI-agrBi7uoT+9(-V=,?Q+nAA\SQ<eQKbdPju_a.St-)>7DMmpURZhOăU"nq2)P#W;53qh<S_.eX#<qLHaLLEXEJMi-Kcdq/GucF4=)7H-Vu0YJ__gbXkRA$săU"8hNqs5o9>B)#V6^_dmt]<imHMu&47#Fl+#.$)<_S&E]c):W/w9_hi6s6Fr6\uNBăU"1B,%?rYLX=[4M+Om$XtfM^A#9dC%uCrf6sXpei&49&OX])gD3AeRF#[-'D*hy:7ăU"Vn>%$(EP7k)4hYkv==5jFdK-V:,8$a7pC<c;tVjTUoB$\MXXS'Ckg&hq>'CEf^zăU"auU76kJq/NShqBbcO[N>4XXidKY'lvLGOo(0n^]n;X3]&Oiodba+Pv&u%p()9%%ăU"%%-%%%%==D\jn*$m=%1%cd%%%.%%.%j9fD=8S0V=8elD,7A&ke#^j6)o5DDkL.MăU"p-#5A3BIX.R+Ld54g-#E2/6l&-hmS=36Gcq?OdB,D2E-7R>z)(B8=)R4[eRnr8wăU"QVqmwl[ViTWGPt*TSEK<#)1E_uV+/LCHMce3W$\=QVZ,$WB<8y3oUCQ,bJPOzskăU"zslsY&Nb%uV8h6tDt=JrP-4qn>%(5$sR\wuoaXv]iT%Yoa#(vcYa#(+AxxOZx<băU"F;nMfLkvWu&r(kqZrp7DY+dv-s<6JsD$twQPOdP:AVH[O<o-oN8nqHuq;vvW^sbăU"qW4-x489'R+td<F$xnM*moneNnzUfm\Yh,3qbt8A#xe1i)Nhld(7vs*&hI;IcOcăU"n)&Cm9&q5q95q5q95q5q95q5m95m5m95m5m95m5m<5Wc%l-wUO>.Js0k)XpnjM&ăU"C6C7$-e6bq4_MMh].ku\fbEq4_M_h]t5aq5q5aq5q5aq5q5aq5m5am5m5am5m5aăU"m5m51m+lI\#E3=&P]5,][eAbaI*m#XTKjZ,CuGB98m#T6KjZ9ag5q5aq5q5aq5qăU"5aq5q5am5m5am5m5am5m5Fm5m+(JP]5+,[eA/W(#MTC9ANhCKo\[(BDaTqe#vEpăU"Rq.Ph7fXMfXfXMfXfXqfXDD%P7T7%T7T7%T7T7[T7Tk%PqPB&n]5,?[mw(rrMT*ăU"n2,eSK.0mGf[.Gchxv/Xi7L?YB9&]Coa55moKpictz(;d-(83LLskObRLt;xpxvăU"YmubLiw?th<,^DK%<l<<?Z';*=>1>P^c]s-cw$q2-<s5?##uZk^DQiR6nl:.:P2ăU"o%zfkrJO>o>jq[JZT/HnH>OP0P&=E6U8ND>=V24M:::?-$GBMO1VPRt6h9vi.*?ăU"d'OR]WeC0=UqgVJj8H=3Y^46l$ZZ]>H3QN5C?gX2&Hll\W<XokY[qtt<ktj8Q#dăU"]2&N'+P_<O*l6\[l69n7)p$Z#ZG\J#-r##]^]wHWt$F<gS#D\NA3geLAEh9W2#3ăU"WgU6J6p;hHqJ0$glv)NxPMQL3Xd9:R>?j]fg=tDx':'9/#*=a%AOHl]guM]9>d,ăU"-3gBP2#Y]:Ihq2?]Q#.]kHPb2JKKxnO2hR?4m#I9SmSSfCt<EvEzRYC;CO9;t?kăU"+^<hd.O.3p)r-'0V=T#KJMSfLk0Cc$OZ<ZOG&J^M+Sb&uG<rlu$ZERKlUG4:-u<ăU"F#=??QHraQktonEIe(]JoFQeSkGTlh6>/ae>.]VG+EGk>S=f3odbJeVl*p^M)O/ăU"U1$[aZiAk<5,i%T.Qy4q&UZd3n1WFErA>Un/sLN'uMjB<^i.me]Gs_BB.ueHgNGăU"04/XpY8s5ZW;el=?%((nr[aJ$Qu)M\fHp1Fq<MMp#^3M(Cs:9023-T^62qk;KBhăU"LA+C(OC#kOKsnNoXkeyUknK<Uu..:GpDQssS6QLmvg(8=[2K$X6LgV,butBJ54kăU"iA^K/.51oVuOi92)Mq*VD-p%\&Z<_FjNlXeq3T%iW,DsdKeUI%Dz]KU)xp?.:GHăU"muugVNoRC''Fgl9;]mJt<:woFaOBDWE1pm.;Ve>&T2eJ8ws(/;g:42D%axg3LfsăU"a=%Kv,E5ox>P4sTZKFm/sG7nTfpIX)U%KO1,>,5Sgp%BOO&dR(z7h(veV\J>,O.ăU"fJO7V=1/Zk<)lC$g5R,-fgfke1l+qHW(2g1eA<b4>gU>aI/<bAPzlfV'U8r:;cQăU"1;_ytpQW48&eSE3s5CQ0r)h[3\\c1/UjdOrW<E7MgO^up9PVnZ\9iB#tho2I?OtăU"4AhO.J.Zpu_s2w%ZSnRdV<2u2X[yt_Xx_lkQJ^qd=onw8_?E0PKv$A#NF?fUiZ[ăU"T+jDnEO1F(7&-=5r5.XFnr=8h__9+dmon<>nuNN178Bn=JeESUn]NNqN1#CX/<XăU"\$LZml,9;,WF4idF5=WEQ[z^VfG-VMTwysGBh't-p2B&^Y>:$^Q7Q;kTZnb;HgjăU"bJb[=?kW6>L#mYtDMvwx8CW)_MThhhpq[_H7G8d%HtT()64--DT?s&n,+E)S),NăU"4LP:HaZir>Sdoh.12A>(C+NwFgLp\Odt%'O,4IRHd#SdAE<JAU.$SR6]/X[B:;+ăU")vyC%K\hlWvDg1\A<(2kZB,E^H?VX3gaDlhDD+sX2VV=;J>CgU]-d$&/yR=Dm?văU"i#_<wZn(A?'1Rsu#D9ST-6k2DvbyK:.D)qRT:#Q1;[Ia<$Ogd:fpxjL5IuZ+GpSăU"Y)[5Tc1Qad?jFgV69'P)v/LiF8hN^Sujx'mF)_lW5FH*kYc)ldPu]HGp1v2t1-'ăU"uBFWW0wApg-]Gyp<XZj//h4jD<J8>]rdVO^SCOEj3,-MOeuRwNd/:&M;?pmhBfgăU"I>JYiM[c7_G?m^G]h+F41Juf1)sobK=]dL(rB(t:p02r,-OI[F*/=yhHQr-UqTFăU":+<,a9ICg99ox_JCLeocvWI%S_Xba1X8bp=V^FzaO8:9BkFO&Z+Dq%'iICG]$wFăU"$bAth=Z(GJHD+oH]B]SKFUV_4glU>K$G,E\((7Dm_'N&bSpmQ>c?p88Me+ReUNtăU"?xCuQ/N=pI7\NkgDwL[dLfTgq*X\qD*>I>&6WmB1=/8Yo_LDosxaNn>Y-7q;:bZăU".WeU-M0GD/_/o?P,F5CpG_3].B8cr/VEEO#-ZbPO8,oLZ7\-Wx_AX<Q_t7<M/58ăU"r<HS/uX925[:&jAIOMJ+I+bYZ0URH8Xn:#9M7PujY8+0+bcsr2qs:c^49X:\b&năU")06rGBsv6Z?a3nXs86/)^Y[RlWt:?trW[kqbY6pJ&_MCkZQ]QlR/Qd$)[p)#^q3ăU"u8nAB=C^a\RimAZCT<ygrrk'55jk^d7,oLB$.L[Vl3A%c5o#KeJeA<b4tgU>]aSăU"_$an1iO&&'hxd230A6d>\J=hzD)10&FTwsRD.u-ZceW_O:&fI'3zPCFID*m<.m1ăU"+.iP<VNNHt.Ms-hbsj++qR_UcU<1502+UC.P&(-dXSEP&bknrsjc(udlHECSuc8ăU"lPg;z8sH&)GJ^Ysh2X;P$z[YbK*T/1W&Y&$EDR%Kl2*2D^K\SJa'/,mwRgiztmaăU"P-I23s9xKVrwN)q'W.n8g5O\L3shpt>k$Sti[s_Cg3ei37(SUUbA;=DX(1$Ya8QăU"1i1H6o1Qe2_pl$3n[#SB]fjOAUFo)p\_28*T_&=,T)e.KlfKl=]j[2b&oCTbk:XăU"M2iS41O=?\]CBt+co\<s58_2g)A<kb4gUc>]S_j$_1/c7,/hNWlU4.Rcd:Dp,k%ăU"PSU3,ditOYXOE/4RI']>rLmDILh6TxeKImoZmVa'\,*r\l-(.+Mr:(+Zg%mv232ăU"[dp_fv>Q-Jv<OxLM*,[/EkJNf\Y3i,_/BJ$pfX6B_O<>Q0d?dlnm%<6.3HinrM-ăU"-Du&,m7QjhmZ8CU%Bvk%D^eKo>*bung&E6dSm<_TJZm:'4:jb[Sm2Vq0LS/6Io,ăU"3/*5zTeGnA6%XDrIS,5clEn1'KfvCZK;[#ZxOBYnN('r^thjnm^e0ATF>.?k5DkăU"'k72VBW#X&[6oCDNl=0_8AXIT)NAcl#&E\M7epJT%MnsWckeI0pO>;F/ox=&,vyăU"0H22Ugp%XORJ_Y,tHMU>B]SKFOV2ZH\CSkQ2>xZ5$RFy>.rRa:^u&vbX&;-4-MLăU"(I+vX#>:&wn##N&Q=0ToI'mYlF6U%PB[A'Su&\KkA2gjUH:fOwWglYkzGDrB0eGăU"j7CLmi/YJ*2A-R,BW>zB8qpEY(j1h=g:bxkXt<]no3L\UzWb&$MFbcOH?H6?OP<ăU"gLa]i&(Y&&zf#rM-*7EfWe/vBW>hlLWLSx)'sYr*[Nkz4+kaB^boeV$K)1fIyt_ăU"[5,D]q%E^nypB<a*''l-D8?6m6O)8F$T%h^2aD;Ou\.Ka*3A43i,upoOBHe%&hQăU"TwFWn1e;d5B8I<B]x'zti]3mtG_C&ErtQZgYB:D:[=aN#Z1IhC>n_jS74Rpx$2NăU"7OJ?.e#XB3Qp9k+&gJJ3sRuY.U>B]SKFOV2ZH#YSkWQM4xpr3YB;is5mB*FbibaăU"6sSG74pPwny(>rUVpW0H5_[,-lmb.hLn==rmvusgsB.8S5'59;o5khD.\?>F:/băU"vHZkHsX0KH)kZc0<2,Mcpi[O9BG]D6+Y$,7E+n]'YbfMzmeuRx]'j/#-dJU4ThQăU"kM>9L<.k05RW(#aHvjGZ0JT+Vv*/,W.jnHg^Lig6&:wPbSKP7[dK'UrxUh6J>0QăU"gdE;f5;L#iJrH,%)j#oR4TQ4R?ia\iA^40gN/sJxjANbK(N<fsbpn5'D,%+e9h#ăU"gV-DkMaN'whT/4%^SZG9_lDjX6Loua[_r,WVtAW43ot7pZ?HkP8l[,,odQf7$t-ăU"^(Tq.c]?S57p$X0r_O,m,'iDtj35[\f\(9C2AXQ_%sW(WT7V]F]2(#n8<[sFC=săU"N3g1A<kb4gU'>aW<,b6-zE83lWN%Vx,:R$sU$.xjq50$m-PJ(4Z_aC^_;-+LF(.ăU"fHAlpn<>ccnONV[S)<.n7&bDL,5Gh+<c1b325'^;>A$C(&bfPolv,3G#\2&&V:SăU"U-k\OYaHR11]fBa9Zg1F->1A$bnE%l5YJ&''#RD5>Utsx'#ZDU<rZd0d>eK9i3căU"YBe^77D[%FI7P61nnJ?k\]teQoa-qr.P=XK^m>KHD4>iu)n3jJSQG6vUc=xG1CCăU"JN683\A1&lb\I5>4:k1,fK[b25xgsVp<TaOw)K6B.Pg3J0:/nb$C/QR/H??.d^găU"t)8L#\-Ow?$uD\1WeL8fOM-kg+[CT*VoO-%vNe.0hJ+oF[Y+BHQqVfBBE%8Lr<_ăU"[*3-?E>X32Vk11BHL]SFV2Z$B,qgY17n#sVRw>]MG>0:qD,y#Mzg7(CN+Mk]^%TăU"V,b=y.lgDH%>.<gV7o9+sfT\\9o[\c)'.dkRIQOr;6l7?jB;&eJ\$$+2oM[mI2qăU"%Z1\=T4,zn#Wb/C#pMq:Fp'n#2\n.qN]G^T__>H<E<,2Soq)F\_V3#<*.\*5:Z<ăU"jy'N-.6V2gVU&FlaOYOBPbgNgd6IMQea'rpDy=Mc$]J1S#JSm$j2ik'jKZ]QT2_ăU"Y0GtT#>4MlfrKT%s.SjtfWbV&T8T*VHUY:kr<'knho.MG\b=ePG<s]pqWqqk2PHăU"CcGKki*i&vr<HKrgZH(/%79X5j=MpN'68]=gKO=&RQ+)30B5lX-Q]G-Aw+O>?t.ăU"uo\]kJv=+HO0ZfVd)QNkpT?^FH<idVbOC%\/>'fdU(7xSfCy\vuP^Wk()dLS<<EăU"u7DE/0E<Z&),g\onO,0gyGq2R$kS#V2ZtPU>]+S_4cT3\te#NqRm=jnvYZf'd=uăU"#6l:t7u2ZB62fa2%<*j]+Fmgt+.HqMwUiUU<p)B.Fo.dr<R_=po],7*d&7x[xVSăU"-AM(^3+oHLxpMGrZ+V/yE2yIK/ATj$=jiw7ai'xigpv)-rAx=.t2tJk;u>%b*_xăU"7<=9s7DSQ&Ru:bZISALaxlg74k29L$z-rIVR\g<Pe:;l?EyPdu49#]T_OSH\A5XăU">*B/3ht>66P:.G+AZdD[&lzt?VXcr/cIE,LD9xLxZ6*<%dg:sB>7n35q05NL1aPăU"$*s)hXgW>7k2>Eh:_Ld(Jri7_%?0WS30t[cf2j*F+OQAB_j,(cG+Nf0SdSM&VXXăU"3-X*MVdLbUbB>3Jd\DHWrA)lQC4?.'),T,-v1?1c\f%jAz4v\LGerXRVDVjr4gUăU">T]S_^,A7=F-/5<0Z4i(8Pgk>I%i7;lkg/];8Ozi'SSmG\9d\mMhf$ghT>[mw$(ăU"zblf6uS.gU7mm5]f>D)UESHtxXi$qRx,BGYb\ks0Z:>=z\Ki4gXjRu?^#b<PH7<ăU"'$']djk8=$\JVS;K1Ibn_%ql?o1IvNZcf*xt[2u-f;Iv6l#anOR4x1[g=b.;J]SăU"m<s[\sE*J[s;P=U\WldtBSl2u'vDY#6ehBM[7NVWm2YW^#1?mW4S.dc]jbY=#rjăU"4)C]VGdfAFig/a/BfAMpd&l6Re\uu]^4L4rZTG_KHlSi#PKVe^_FV25ZB,qrg1wăU"q2+[ze3/o(&W-,GvK[?)auucN39fvZRG-^E,7mbJH_29;'M1+^\X\sN%jfaBfRWăU"?U&\s(x29k=_>pNmh?eFf7$hRp16aST_5ir1c7njt?mA(viiOcZEsX(KmT,W?GCăU"jb37'dDbL;taX6TjY(PB1DvOUSB3iWrIE9i-4Sj==0<sCE8:]*/[mLE48JwRQHHăU"A27VGnIro'M_rd>3vrR1)7':WEr-8&ToDG2tK_LjXZ?'XP\/',/WId;BOLtI+Y(ăU"$eL#m4mTsffRA=-f]SbVM4tY:-/2:H9_cAIHTvf<Pw5gf^SdT+b^0ygCh;8M+))ăU"8jr%Fp;06,Da\uH_.SKFVW2ZB,ZEx,Z?Rs?O-U&$:C0&^sguHfP*.C?;'e7]G2TăU"z_k1kOc[.SI4cm>FmIa>TH\L*?$*23C*p?:na-Z,,Kf7Snn-URI.okHQ)>5-N<băU"9gn\k-Vb0>C5:P91m=V+$b)__5aI'='b7]ErO%=s/kD8GBSV<t$m4Nkh+Ww?<nTăU"Ix''mcKs]9al>^AaX=<'&mSVNvWC^JIf=Dw-K4>T]IKPKYF#AXD7lBr8#k,Og];ăU"KPc7BNGrcnBv?;-a,:Vp<4mv3P*II*H4j=M.COvQh6*+bOJ<6mSj1#,_KRq.Gd(ăU"&HbEj;->Vwg*nX%#XDC21(5N<1*\ffdFk:CKsKQNv;a+D03]'mFbV+zrAmSdv-DăU"HSf-pr3QTDL%4%4zdw^>RZ+%oMd/C7B<br4gU>o]S_4W^11eoR/C/tQET+<u-H3ăU"duF\ms%Z_GCrluU1^qD^5#cq?)\-*6Mn>u6K7=0,U/ir1Py*)wWgSEK7Vz(;GYFăU"L2W_Z*rJB#ICmW,0f8KVN&N<LL8Fv'K+j1h;Tg_s=EO**NY:y,&rFqUJH-rJSL<ăU"Oe=$4#vs0G1l:8kLVe\92E:DLlxTCn*5Ni]g8;%H1sw<:nmD>TLx[#H))Sv88^săU"Smi+=S)Y1;,f.bW.j:>u=*\O=t#?26B.fNNX*;Ffb[rY[93_vF6H'&NL#6[d*O*ăU"aAXFAE-1VZkElkBe5s-AFa#11>=)uvV7Y3Bd6(V7>iKOU8F(9oonTPxH29n2,3]ăU"_5%u9,ikAmj,9.$.SKFVW2ZB,0EHBVOG\U8qH%40DU*-?/Bj5)lDSY5hfr=d$9săU"pKG4^''c8g,a8)et0JEF-OSxJcmbM<*1WTKVC6#Q#N$ay&\Y.q]lZDj1f+DP;INăU"e6%BAMGcN0_z)o_5N3Lp:HC$mU.lB-KASML^=VFV5LbQW[+a)5mnt0nyL1/[EoEăU"]9/Chn8#X*S2.pm$n'4TJN#^+M'arDjH*u=Z0;'du3HY6l3Yi%=OcN%Ti$Jh.qrăU"fJ6Gx]F)Bc8;%Sjrvh6Ua*9/H/<^V.ZphEQMP[AIz$dtcHEoF(SVmn[v$7(*&&răU"*;htxnBeo<KOA_\Kn^32?h6VkNrHkW.TG=CPg9=z/S4-A(6j,SS;Qx.MJ6_idU5ăU"TZp.,1mg-moT*eY,5Tb*5YbwmE6kP4=3#P)Fzdg'#J8Q;36&xrNmUzK(>sWhF=5ăU"g*jS[HOduE\3k3c_D]urlMp,m3LrjtI5MxsE&<*+G&iHTb4KzP_,2'*(>m86F%OăU"Y[w^Yb2FngPALk80TK:.o1j&<\+9Luq[hV2>Tu0>+OAj_>bQ6[1$p)D*lXphsM$ăU"7nml$\Lj^WJ[-k.2<^mnG*nYn/K]<\tsp\2$4]TBnv$Jj>l>R$lPa#'jIY=9^h,ăU"FY]i5++*p.(7I,'m^6TpKOl-v#e0fRE#B-H4Un&FU+G#sgfPw?f$%ML<I(NT:c=ăU"d,kW=Fv+PNt8HqEe],;'S,NiR]R1Vjz,rYKb5>=c-]7ff(H%zE)=2AuK7&aem^%ăU"_<I3X+[P\3ll<h*f9F)4e[-a\_&7pE[T5]>JRqER)qUZJnvoWGJr(0USTWh1'M*ăU"/qG<tDFT]-#qNZqvt[1N3,V#YClf+0pt:Xd5;t#tNa#/KtSm/K'+*Ru*OesTC^găU"IpsK9_2l%CzUd/w%FO2'_-E/8yk<>rpVQL$WHf;W5m0%up()%9%%%I-%/(.=Fp%ăU"0s8A(%%%wE%%%0%#%%uAM>24BJ>S0=58f%f&:8f9tMB/R=u>fj:NWeC[ia-?2R/ăU"p=^hp?*FR-bH9SuU[1uj_k/*fk^V8=wt5cw$m=4nO*Vp;bar$jV&5lR5xJ2QT5lăU"8FfB%\X$XU$HXjn,OHF-6/%oE,Z0>HCDP>:&o5U30'-MBFxZclcn\ch9t(&q<)DăU"Fgor(Vk+,-NRcY%f:#d&RLMfe%mCu8ric9r/gzBiOb;&v((ZQ$CM$wN9XyPOjrOăU"bbbnvuR%l'XvW\Q86\JgI5WXY=4Vb$gjJ[[Sv%)mj%strk735)TKcmKkDKq4(ZAăU"Fd,%1K&g^Rd3*i_/e;]IH35-5#C0$6[F&aq4%$0F#Svj.NfEj9FUq%1)'Wpy>X(ăU"x($##9Ff)Z_OA$P?ERy.rgGE2Gh2pEwpifUzGaL-1SnSA&Xbe-1.o46P'ZSV9BFăU"?^#[EQu#9qB^tNKN?L&+LO\=1uUvFus3C','*>wruu3gS6BvhP_W]U7$1*e.bKXăU"><jKM:&YiK'OS%r$n$k<LEJw>xa>N]Hp):[BJ:r7Xn?xI]mUj^MU)V;<nmRU^hiăU"<OOWBP_6OflwCq>_7#?./BZ.s)0RH3hTOanqjuQ:FOJTUaR:p<^8.2Zmof8S3lWăU"CS<Vd/Iy678Zi?r442Hq.ankEbSAGVIE438H0]QA1,I62VM\+U5JB(h7?TF?hLoăU"S]g:3\dTf'pyD,okLEcQ)ob[M*<jFgQs+:4EC*nx07&OWw<:1VlSWYY7CU</cQ4ăU"u</eC>x0U*<TSUaST*BS6tcQ#ce>xp0U<>pSW^c_0,5d>n3Yy*</e>&x0+h(SuzăU"4XeG_9hB-X[kk&i=(V1TYhIK4T9%:0r;ZzSxWOo\$+Bv1(5Tv83>Dg-^>Ys,L%?ăU"v<u1qEXcEJr=D^N%$=9/>2h0=Wv+QG3[rb.UJgbr#3AU*Vb(7U][CfC.b-T7ofkăU"3$4<=6rhGIM8ChyOjQn8hLj[lIVwUz?GP\Q$avla1Q_#mOfSp,HgQi_t7,'f+WxăU"VWSngRr7uCZ\MqB$;bzsQpL+_ABYs\2*lFfo]bMVzwG;#U1S6peTHABpi#'j^jXăU"iYABJZr_nJ5i,?[maEgL8FX+S_*r.8k([aF5$'lX4V3XKwXymP0aL0o]'oH+Sq2ăU"u%p()9%%%%-I%WDS.&VhN)b3(%(%^0%%%/%%L%0=81R4BSh10B>^z<tTRU5w]QMăU"x?Y+K&mu%Z*KY3&bG<+7i&[iqWk]]S?A4lQGoxDM6$8&b[ePRr?vOrhK7$H2Pe6ăEND SUBăSUB V2ăU"Gz,*.B1qj$.Fiir>HoKHC^A\.Hh2NgMO25G1/vg/8uV^o$oIb3K&Y?-6AMa?9'9ăU"Ds1/<cc]POd$4'ZYL[5:+n0WEQHN:hP7HNeMQZgjemu)=MB%\Ql]1W?6ZPf\<FfăU"5wAU(/IFy6;=do8n(QXq9X;:\dSLP)g&CchEDVo.iU2CkcGiE(P&4W8zaeeHIBpăU"huZT+ofn+.65j.OtWJ'&5mFNfAl^V)g.goMp$*#wAQV&:QNVfdINx^A>Fwf7<k0ăU"i(%YjM8Ce-\WY;nE>kRrvK8>'%JO)jDoHtp:]L8cwx)=1_s+;7xYDMc%h5C0hGPăU"(IMa6LaL-%p4)N$Oo$^]O)De=(SCVzTl\f4(:g_cdqhftf3u/B?E[/$j=XD'0ptăU"H3CFHlagTqAcLX2(uGkgw)gArEo/xk56=k=F^)I#,G-iCX$nPFepBtIr_e^Le=&ăU"P<xo)VJ2N2jIEhGW'0&Xm_Kd_IGY9aIH.JKIKUSn)+.*pXi)Z#FN9<D;4m''CpnăU"MJXbls*)%nw%(-A*U/-+9X/<k+Gav;s7_N^]?bAdBdEJgm+zRmn.\mlDUe:aRm?ăU"_MZc\wAx+xq#*'r$1;+BK+TQ1*mOm$Ic&4Jwye*jMRDJ?5SyD-Vf3b(?R_K^Ew7ăU"4L3F:_c[s0aMM8v.T,=+9SPu$opMmS-)89eW,2T1%=$0DN='z1B39jKoQ1<.2,^ăU"k8<(oSR5J&YQ(c7i+-*HhBTQqM:''WK_h*DDqKVZvd]wSlN^e_Xq#Zf.6G>U'(UăU"+R><&_<xZP;r;Cc:MlMa:'\H?XooAtBZ^#jtaJUG?$Fg=5.HhhF=+7:dr1S=lZeăU"\8QRD[t;ev'iHL>;/3K?,>E\:3*M,^\+cEWTtRpkK]xUTv[WT0Kt0<'I0o;\j6XăU"vOsSBB-%eyZ2hGO(foGmS?hCrfTS=;)-'k7(H4+sQ-IQoZJrCh7b[SX[o7[nk0,ăU"GGN1nWA3B;NI15ukwRaV<WyVyJz9\i4#3(.Z5<U[Mywpi)ldT9IZq)mu[c]V49BăU".u%p()9%%%%-L%?CSj&L&B)E5(%(%V0%%%/%%L%0=81R4=Sh10B>^z<tTRU5w]QăU"Mx?Y.Kvsw%Z*KYW&bCz\_=D?I+D$b_+*4Pa3/Xa?8XRs*Ss2TJdK\M$9FcXSBTHăU",to,LRJPt+u,qA5G3FAmbfnn]U-FgB\d*8?;71tZ1Fx:Yuk+BM84t0d+IS/h)XwăU"<.1NR8p\fK<)FaT1e1B_.iTCfLU[&/Q]XL5<i\4HamQ]g-p]Os70BPS*P*kz2kgăU"Z2\.a<L%Ip\p7K'azs=9%Cvp943'C^rt]lCZ<T'=EJm/5ZE6K(sXkCN-6EO4#b-ăU"_HIJXK(oPcXY<,FlFBYXY%&zjMog$AHp1FFpIr8sQ3XM]gVsH:wL=k8xlZ40bEGăU"X/WGjTP<s8._(#Fiit(]*:NC&??;D5oCEqA89Yg$5*w[Ot9/]%\ep*rxo-CIYN3ăU"Yp)aqZXyim#/,b;zA.MbNS?f);-f_w<W2)78q>z9MH><YC-2h0J\eQQgr2Rj%bBăU"Ud\8B->#sp7CCPxH\4;hA3Ph8#YSERv?hCjgu;6GJb$7u%Ha],X=:$Z/eKO1rC5ăU".nAIVqtA1P>_+Uld\G)*SHs<r7KEqDR90Yx2aUEU[Ii;MT?SaI&Ce/j*4)>7BOOăU"wUGa=c_5s)%n#w(-kC)?T(5d<wa2f0M3IwbkhqI]5K/pv,nM(DZc_CRiq2O'RCNăU"Oop]dB4eY3h1nN32:pZ\Q:VS]Y*\OF,Y3X_I8n7KcpK'%P+A*Vp9L#L5(e#kZlaăU"xO=nqJ\13jN8ZsvIHIxU5)[Q.O?xI6/[A#2O^W7W.gRXx,$i(q.=Ok.Y6[\5CM]ăU"=LACs[/y3va2z,9jvH1ZWLF6c9U/(b&>8;ll3_3u=jxLoN&b895A>NukpS]l<svăU"gOa/)T32k9AikRneZSgst73GntfnTTq*1'5,Kv+(8^#gad)8qoG(aS\ZDp$cHPNăU"IkTvK)4K\k\LuXn.h3Hwl',J)D4eJuF^cUqYDK31.zuDYF3s1C3%JQ3jDgH;>J>ăU"'iV\E;8SRTOs.%9e:i4#)uT<LRg<f#S)/'oS&-N$5,L%[)7,ibt:5S#4x\\eLKHăU"-^WZ\Ffi\h%eh2*Egq]i&fRB;SN^)t7uMKIF^oW$E<FsC?tyRRqdW60K0k9&L$hăU"umw%'up&%'9%9%%%%-%%%ES(Hf[')=W+%(%k=%%%.%%%%%%%%%%%E4%/P%%%%%lăU"%qtgj%Sfsn%up&'%9%9%%%%-%)/(=F?'P%D'=(%%&?T%%%/%%%%%%%%%%%E%</PăU"(+#%%jBM?4A0LS0=8%up&'%9%9%%%%-%%%%=Dc\jn$&m=%%)cd%%%.%%%%%%%%%ăU"%%E%3/Pj/#%%j91f=8S20=8u%p&'9%%9%%#%-%/A(=FpF%s8A%(%%w%E%%0%%%%ăU"%%%%%%[%E%/)P/H%I%uA>M24B>LS0=8%up&'%9%9%%%%-%1WDS&CVhNb&3(%%&^ăU"0%%%/%%%%%%%%%&%E%</PtKI%%0=J8R4BLS10B%up&'%9%9%%%%-%2?CS&WL&BEăU"&5(%%&V0%%%/%%%%%%%%%&%E%3/PVOI%%0=J8R4=LS10B%up*+%%%%%%+%+%%t&ăU"%%%:S%%%%%ăEND SUBăV2ăCLOSE:IF S=137AND 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ăDaitau Aaron                   QHASH COMPONENT                daitau@hotmail.com             06-23-00 (18:31)       RAPIDQ                 118  2459     QHASH.BAS   ' QHash Componentă' ------------------------------------------------------ă' by Daitau Aaron (daitau@hotmail.com)ă'ă' This tries to imitate perl hash using QStringListă' Currently you may only assign simple strings as valuesăă$TYPECHECK ONăăTYPE QHash EXTENDS QObjectăă  keys as QStringListă  values as QStringListă  pointer as integerăă  sub set (k as string, v as string)ă    WITH QHashă      dim l as integeră      l=.keys.indexof(k)ă      if l>0 thenă        .keys.delitems lă        .values.delitems lă      end ifă      .keys.additems kă      .values.additems vă    END WITHă  end subăă  function itemcount as integeră    WITH QHashă      Result=.keys.itemcountă    END WITHă  end functionăă  function get (k as string) as stringă    WITH QHashă      dim l as integeră      l=.keys.indexof(k)ă      if l>0 thenă        Result=.values.item(l)ă      elseă        Result=""ă      end ifă    END WITHă  end functionăă  function exists (k as string) as integeră    WITH QHashă      Result=(.keys.indexof(k)>0)ă    END WITHă  end functionăă  sub del (k as string)ă    WITH QHashă      dim l as integeră      l=.keys.indexof(k)ă      if l>0 thenă        .keys.delitems lă        .values.delitems lă      end ifă    END WITHă  end subăă  sub cleară    WITH QHashă      .keys.cleară      .values.cleară    END WITHă  end subăă  function key (i as integer) as stringă    WITH QHashă      Result=.keys.item(i)ă    END WITHă  end functionăă  function value (i as integer) as stringă    WITH QHashă      Result=.values.item(i)ă    END WITHă  end functionăăEND TYPEăăă' ------------------------------------------------------ă' example on how to use QHashă' ------------------------------------------------------ăădim header as QHashăă' set some keys and valuesăheader.set("Host","www.yahoo.com")ăheader.set("Date","12:37:44 GMT")ăheader.set("X-cache","yes")ăă' print out the whole thingădim i as integerăfor i = 0 to header.itemcount-1ă  print header.key(i)+"="+header.value(i)ănext iăă' retrieve value by keyăprintăprint "X-cache="+header.get("X-cache")ă' remove from hashăprint "delete X-cache..."ăheader.del "X-cache"ă' check for existenceăif header.exists("X-cache") thenă  print header.get("X-cache")ăelseă  print "X-cache does not exist"ăend ifă' clean the whole hashăprint "Clean the whole hash"ăheader.clearăprint "Host="+header.get("Host")ăRudy Elyn                      SOUND BLASTER OSCILOSCOPE      Rudy@vt4.net                   06-26-00 (17:33)       RAPIDQ                 75   4838     SBBAS.BAS   ' Sound Blaster OsciloscopeăDEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2ăSUB V1:OPEN "O",1,"SBBAS.ZIP",4^6:Z&=3330:?STRING$(50,177);ăU"%up()%9%%%#-%(UoSMCo?tY1+.%%67%%%.%%%%xg%gfxS[gfx&h&:BS9A7vs4:xăU"ph,<O5Po%)jgD%ym,7CGaS7E,B3-RST(+?<Ig$\ak*Ml.NJA)7mOtb6.dJy)x.WăU"LLsCpX+5sqVNnSo>Pi0UGPt'V=1/R:,e9h:Qc[6<%m93JnG'sB:8=FmW+.^6)a.ăU"$Sr4)e$4J6k/ggca(c=j=:/[mNM<27]&U&,a3ZBiMjm]]<>,Er(8Z^il-/44^&TăU"mIa9B9OQnQe;<SeNY.8Hq;,.;NG5\90g.H:2H0hi?/Ja8A$kP&3Y'&uoiaI&68jăU".]$KHE7Aol_t9P\AZIp2+BleM7uw/NhQBpF2GqGe'O*IWGQV8CIr85bJ>yFyRUVăU"Cv<TPR/(;;l6h'cH?%anhjG'+:u^)>qmpswQ]VfS(plr_^BN0%M=P%H)u\0%$oFăU"*Jw?0#7L-s'3W+/7Hq2=jOn=KsNqy]ADpBG/^a'-*n<eraCDwYBd88EH<Di.(C=ăU"wN*:$HddiwDTnjaV_XQLLdM=SRH:3qu9=O=Xe(A3N(Wo-F(g[-H41Q0.Dp3&d:CăU"vJcdnO8DLYqa)ZnX*<=%<,X,s7W6IWB,5LcPKW)CoiM>cV^Q:HOwVZ#d.$(XR&păU"6q.[:fmb?_Z7vW-==)YQI]6M[CVXH8g;2(*',j9ygJm1pj::W&2>(G786G^kp0văU"guo6&vn7;FxH3]8K50Wo(:#Ba6p+o31#B=dz3Q7qKc*S[bs,H-^nYtc$U#fzU$oăU"uP$^R/U.'*kAE(.AiQdPm=mYqW^KV$g8v*3WZv:*j\]*\KEylb&LY&)e%2clr/=ăU"$4tGK]o6>RI5')J6VK7\J\rQC7Wv:j0t/tv8<5PH8/TDFW6W.&Qn8%9>k?Kn860ăU":n]LC[kTsbmV>&vD)-W>yiNm[e6/eSCgi+[$k48:rMeUc)f^RGuTI8\=K(.0rW)ăU"abae6_%5eB&6Mh>5r^P0+bqUEt8Lc-6c.k2(Jf.<Gj&gnAQ:bG-V6Wfl$_[:Fn5ăU":5b<HFxbzP%5PXt#5)J-DP59adr/j%Yz5oP'Id:)+j3.-]TS-Y-jRbDZVjbn;viăU"/nsWb0KSZi$<.$0+DwHK^uJeP'Krf#*l]ae*>%-iL+ZxB79o>+BDUAu)1L7)eXuăU"g%k?vwq#t&Jg5i%PL%zZG50COMj%:PF91>9R_^(9ibG?[akUCpUf&I1Re8$YhmAăU"G/ggNpepEEy';tD(7$/:zK$XLFrmq>v[Tl&s-v_95Zb(g]0GB;yh*K$oya_:LEPăU"rlmOlkmXFeYK$A%i.cr6h^QXd8]lP06pvqdYjnH'b7P&XqW7C8oj-lQlL<9XqYSăU"7EJIU50';v^mhda$N9/Hvb19k7_<H93Jt\81JumP4C?dH'PX0&uUj[34FSuX8=XăU";,K9K:P9<d0SZ7;q0*ho+JW<?p0-A[XNc6NM^7w:2-aI;kh6ekd#Epr29]Kh7^+ăU"tWOmtmhME>u'<I?d&>$KnZn?hP^cfW=2K^aa6F*d2k57Am/gfB.C+TWe\f;=qE2ăU">W(a$lFNJpdDi/d-26SU07%#=j$j#_m<[GK4>t<fg>?o$:8df^5+_5cM)%d$5yLăU",%uvhQ_rZnYis=%\uQUCZjV<f/>Y)4BrFpGPfh#14Rrr]&:jc(8H\%qGz4j,kr0ăU"BnQ^NDm'(Sp'Vnu'Jd2\BX,hgt^(p*dsZH,/qgMbEUMvtl^b**]UWtWh7t=wNJHăU"Ah+J?kw8)3N&OQUkZa(_15f%LqlF<;Nm7\,gtSv;bw.zM+B'Z9dvh5-%-buu4P9ăU"dA[9zZlKP^rrhEbu=;D5ojBEIQT8pgH7mrMP?bHc+#_hmbp-h*uI^o9%AnNZ.G8ăU"-UC;be$[j*oKr9qWhc.R&C#]D=xLkZFFjH8Dbo6$0$3Zw$X,ghG'*,WivThU6eJăU"6\DkUYgB4L$xXSolKj0et9A_oKKdhcbxqAVoCUVj$\jkLr3QP$''JRUNYH4ZMgHăU"CYo#8:b0tqnWQOp&n%dO\zard\LEa'Br?Z^8N4b7=\+1LEP93E/sbk'1d6pX\+2ăU"8N;piZ6;l6<)l\hu0h8[>22;TXWggdkHRh-=u-''F0s]dA(L1.Y?V#H[r%1Xhl)ăU"nHnkRr\-PKNM\Up'bNJ\M0K:q=iPRE81JZPbJw3Vdnu*Nsj,5mR3<?e]OuKf8GDăU"1ddU1]'E8V#\>=#3H7i/=CFRiiXTRJk^yA0M8m*$-Er(O>PDJ5W/0-6odu%p()9ăU"%%%%-g%3%S^MfOj&v6'%%%<-%%%/%%%%xgk%twrS[gfx&YdX(imU9#X5feNE?5iăU"+Qpucb<LCOZjL>-APZVrC^,=0.wpx9[wNt(ZAo-z5BRUVn?;wnh^9XC;YZklA'aăU"u/Vu3EG(I?bc\,i\?T>8e8S?\.2XbsOKI'hq*;C/j&4Zn5>xT0YhQLbR8mFBX3dăU",\JO(XsVrl?m46]RsW+%]J]>8F$V6wJbM8504A,MRq$1Kj5OglHt%5Ek:E(D)/#ăU"j<va[1ce0.Mi3d4\1uY*u\35W]CPVoU9X(8pThZiEcGuv,JljxHA:/dz[[%ruUnăU"2eT87N#Pn]mH]Wee0-Ot%o_wCKd1s]*:p6]+Y,:aU#_%WTa8A(1:J$X.z:GE7pPăU"Y,e8jr3'k:Xs;yqJpc)'Z1%_2;9HZ2EGgw0RQ\T1pNP0bS'8)JOBONO\ER)$G8^ăU"P\7uZEl]HAw/].S(z-uTSGPJu9=L2Pus7E'PJ70h\0t15q%M1le8a2Sr*\Cft5făU"pk-'zRQ[#(C-X&vri1;?m6-EpBNj-;;2iy>zfPGF'.VIit_C]iIGvSfG*D^';P,ăU":9'A0rL/=Mm%[XMY2w03FOe4uDH(LXsjaMm6NgW%Q]16qp;x>tVG13Im^ZM7<-căU"MXGBXJ+zMYtpTv3q-A5bP3ub0_M2=0\16Y43LZ?i:&I('2<#>M^ey'-fO/?O['#ăU"B8-V.+B?'>$D%up()%9%%%R-%FCTSMbc>8i_&%%%8*%%%.%%%%xg%qngS#gfxtLăU"w,>jde5K0-]xUTO2?#*,2NvzWRd)L#3mS].%LLJ*_1uV=<:2D6x7Jl5?9A8mz^băU"Y8C$,Xp$/mXH-3Br(4V<Aa6fwe[^C3r)%uGT'Z?d^SEg[pU5JQ(DU(yu_*;jEcZăU"lM_9>,VE#q]i$cgKaC.5B3G(/sJV-qhMLL9=H$^iKl)).xqENboX^bTQ:J%CkE3ăU"2HKnjetICE+JP;1U*I\KlVGA\fFhFf0:RR>9e%'<W+:_Rqe#x$5kF=,F0p#Qh(4ăU"T#72?NM(+MH/AXNSaEJ7m&a2a9hXR32B]U:hhhWl7i$$p.T2*oFgUUXJ=B+MDL2ăU"-Ax/-gky%Yp<5u>$\jwBBMpF<E*Ipdtb<iB4BOoCsT5\VW9JE4q(s9ES0$nfnK;ăU"t02?wi_e:Dl0iBhFit:'<XF792ZX<lcRFy'y'r9/^WPV$3VD8kd?)/v9#OfKy2>ăU"d5jPD6j-Yz,<-sST3%6Na#.qz$^+nuNJc%#AHxFSRO/9F#nLQ-L=S06oBs0tlHPăU"-+l&c)%uc25?Z[=C:)94=ceN(:a0#K=c;3Wt.Jnr:[$xNZuErfc+s-Oiq[E)8hFăU"YwSDvumMm0OykrraiLn0+bQa%joOtL%QpIq-w%'up(%)9%%#%-%yazSMo$O5.<[ăU"%%%w%'%%.%%%%x%nszx%Snht<>$*3';E9j>n=&(=sG]r7K1v*jd&nMZ)W:Mq]2<ăU"S+&X(n$*uV32GP-3Af%*q8R9$sGs3#qH,qji_bEJF&^^#1Wf7Ad2Upg;9bqLIB'ăU"HN&1oxg;7BwWOi+25<$R;oUW+$qTit>H'#l+E.)*BTAkirOl^2F5<oCWP*.4P6hăU"b,8hR5Rea(5(chT_p0Ds.*JwA%6?kDCbs8m-$#RWskV1kCQJ&2TvPB(uqptRc6(ăU"Gtt8wo66WWBH-s,Cu%p&'9%%9%%%%-%(bUSMCuotY1#+%%6%7%%.%%%%%%%%%&%ăU"%E%%%%%%%%%xgg%fxSg%fxup%&'9%%9%%%I-%3%0SMfO*jv6'%%%<-%%%/%%%%%ăU"%%%%&%%E%%%'X+%%%xgkt%wrSg%fxup%&'9%%9%%%R-%FCTSMbc>8i_&%%%8*%%ăU"%.%%%%%%%%%&%%E%%%%=.%%%xgqn%gSgf%xup&%'9%9%%%%-^%yzSXMoO5+.<%%ăU"+%w'%%%.%%%%%%%%%%%E%%%%J%0%%x%nszx%Snht%up*+%%%%%%)%)%'V%%%%41ăU"%%%%%ăEND SUBăCLOSE:IF S=42AND 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ăGerome Guillemin               A FRONT-END PROGRAM FOR BC FILEgguillemin@bvrp.com            06-15-00 (10:54)       RAPIDQ                 71   2699     BOOSTA.BAS  ' R A P I D - Q  B O O S T Aăă'/////////////////////////////////////////////////////////////////////////////////////////////////ă'   Rapid-Q Boosta is a tiny Front-End to Rapid-Q's BC files !ă'   -Purpose : using BC files compiled in mode RC -bă'   rather than always making Big EXE's with Rapid-Qă'   You can change code for your pleasure and use ită'   but if you use these routines, please mention theă'   author somewhere in your documentation :)ă'   -Thanks to William Yu for his great RapidQ Compileră'   -Creation time 06-15-2000 by Gerome GUILLEMINă'   http://gedd123.free.fr (Some of my Freewares)ă'   mailto: gedd123@free.fr for any comments/bugs/improvementsă'   -Compiled with the Rapid-Q version of 09-06-2000ă'   -Needed file to run this Front-End: Rapidq32.dllă'ă'              * * * I M P O R T A N T ! * * *ă'   -As in Rapid-Q, Command$(x) always starts at 1, please note, in the BAS filesă'   turned into BC files, you'll have to note Command$(1) will be in fact Command$(2) !ă'   -Up to 9 command$(x) supported : Command$(2) to Command$(10)ă'   -Nota : when you compile 'File.bas -b', do not forget in your tests that Command$(1) isă'   in fact Command$(2) and so on...It can be more if you want... :)ă'   -This .BAS file have to be Compiled with RC with no parameters (to make an EXE at 1st)ă'   then, enjoy BC files ;)ă'ă'/////////////////////////////////////////////////////////////////////////////////////////////////ăă'Options for the Compileră  $AppType GUIă  $TypeCheck ONă  $Optimize ONă  $include "RapidQ.inc"ăă' User's Variablesă  DIM szBCFile as STRINGă  ăIf Command$(1) = "/REG" then '(Must be launched once with '/REG' parameter to activate file association in the Registry !)ăă  'Declaration to execute '.BC' filesă  DECLARE FUNCTION RQ_ExecuteFile LIB "RAPIDQ32.DLL" ALIAS "RQ_ExecuteFile" (FileName AS STRING) AS LONGăă  Const HKEY_CLASSES_ROOT = &H80000000ă  'Const HKEY_LOCAL_MACHINE = &H80000002ăă'To be done in the Registry:ă  'HKEY_CLASSES_ROOT\BCFile = Rapid-Q Boostaă  'HKEY_CLASSES_ROOT\.bc = BCFileăă  DIM Registry AS QRegistryă  DIM szCmd as STRINGăă'Name & path of the executable  ă  szCmd = Command$(0) + " %1 %2 %3 %4 %5 %6 %7 %8 %9 %10"ăă' Associate BC files to this file once turned into executableă  Registry.RootKey = HKEY_CLASSES_ROOTă  Registry.OpenKey("\.bc", 1)ă  Registry.WriteString("","BCFile")ăă  Registry.OpenKey("\BCFile", 1)ă  Registry.WriteString("","Rapid-Q Boosta")ă  Registry.OpenKey("shell\open\command", 1)ă  Registry.WriteString("",szCmd)ăăElseăă'Association is done ?, OK then... execute Code !ă  szBCFile = command$(1)ă  RQ_ExecuteFile(szBCFile)ă  ăEnd IfăGerome Guillemin               READ & WRITE INI FILES         gguillemin@bvrp.com            06-28-00 (18:14)       RAPIDQ                 54   2339     READINI.BAS '///////////////////// BEGIN ////////////////////////////////ăă' PURPOSE : Writing & reading with Ease into an INI Fileă' Originally issued from a VB Sample ă' Turned into Rapid-Q's way of life by Gerome GUILLEMINă' - http://gedd123.free.fr - mailto : gedd123@free.fr -ă'June 29th 2000ă'Feel Free to use this Code -ă'This Code is dedicated to the Rapid-Q's Community and all lovers of Basic Code !ă'Please Mention the '@' character to avoid an empty value (Byval needs this sometimes)ăă$TypeCheck ONă$Define MAX_PATH 260ăă'API declarationsăDeclare Function GetPrivateProfileString Lib "Kernel32" Alias "GetPrivateProfileStringA" _ă (ByVal lpApplicationName As String, ByVal lpKeyName As String, _ă ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As LongăăDeclare Function WritePrivateProfileString Lib "Kernel32" Alias "WritePrivateProfileStringA" _ă (ByVal lpApplicationName$, ByVal lpKeyName As String, lpString As String, ByVal lpFileName$) As Longăă'User's VariablesăDim iLenght As IntegerăDim szReturn As StringăDim svReturn as StringăDim szReturned as StringăszReturned = Space$(MAX_PATH) 'Dimension a bufferăă'Main Function to GET information into an INI FileăFunction GetIni(szSection As String, svVariant As String, szFile As String) As Stringă        iLenght = GetPrivateProfileString(szSection, svVariant, "", @szReturned, MAX_PATH, szFile)ă        szReturned = Left$(szReturned, iLenght)ă        GetIni = szReturnedăEnd Functionăă'Main Function to WRITE information from an INI FileăFunction WriteIni(szSection As String, svVariant As String, svValue As String, szFile As String) As Integeră        WritePrivateProfileString szSection, svVariant, svValue, szFileăEnd Functionăă'To Write into your Favourite INI File you ca use these 2 wayz...ă        iLenght = WriteIni("Header", "Title", "Valuez", "c:\MyINI.ini")ă        'or...ă        call WriteIni("Header", "Title", "Valuez", "c:\MyINI.ini")ă        Sleep 1 '... after that it'll be time to read !ă'To read a Value OR a String in an INI File, you just have to type this :)ă        svReturn = GetIni("Header", "Title", "c:\MyINI.ini")ă        ShowMessage svReturnăă'Ciao bye-bye :)ăApplication.Terminateăă'///////////////////////// END ////////////////////ăThe ABC Programmer             OWNERDRAW MENU ITEMS           voxel@edmc.net                 06-29-00 (00:00)       RAPIDQ                 202  6295     MENUITEM.BAS' Ownerdrawn MenuItems, very tricky, not everything you expect will beă' available.  You can choose to put whatever you want in your menu items.ă' Created by William Yu for Rapid-Qăă$TYPECHECK ONă$INCLUDE "RAPIDQ.INC"ăăCONST ODT_MENU = 1ăăCONST ODS_SELECTED = 1ăCONST ODS_GRAYED = 2ăCONST ODS_DISABLED = 4ăCONST ODS_CHECKED = 8ăCONST ODS_FOCUS = &H10ăCONST ODS_DEFAULT = &H20ăCONST ODS_COMBOBOXEDIT = &H1000ăăCONST WM_DRAWITEM = &H2BăCONST WM_MEASUREITEM = &H2CăăCONST MF_BYCOMMAND = 0ăCONST MF_BYPOSITION = &H400ăCONST MF_OWNERDRAW = &H100ăăCONST MF_STRING = 0ăCONST MF_BITMAP = 4ăăTYPE TMEASUREITEMSTRUCTă    CtlType AS LONGă    CtlID AS LONGă    itemID AS LONGă    itemWidth AS LONGă    itemHeight AS LONGă    itemData AS DWORDăEND TYPEăăTYPE TDRAWITEMSTRUCTă    CtlType AS LONGă    CtlID AS LONGă    itemID AS LONGă    itemAction AS LONGă    itemState AS LONGă    hwndItem AS LONGă    hDC AS LONGă    left AS LONGă    top AS LONGă    right AS LONGă    bottom AS LONGă    itemData AS DWORDăEND TYPEăăDIM MeasureItem AS TMEASUREITEMSTRUCTăDIM DrawItem AS TDRAWITEMSTRUCTăDIM Mem AS QMEMORYSTREAMăDIM Bitmap AS QBITMAPăDIM Font AS QFONTăDIM I AS INTEGERăDIM S AS STRINGăăăDECLARE FUNCTION ModifyMenu LIB "USER32" ALIAS "ModifyMenuA" _ă                 (hMenu AS LONG, uPosition AS LONG, uFlags AS LONG, _ă                  uIDNewItem AS LONG, lpNewItem AS LONG) AS LONGăăDECLARE SUB FormWndProc (Hwnd&, uMsg&, wParam&, lParam&)ăăăSUB MenuItemClick (Sender AS QMENUITEM)ă    ShowMessage("Thanks for clicking " + Sender.Caption)ăEND SUBăăăDIM MenuItem(100) AS QMenuItemăăCREATE Form AS QFormă  Centeră  Caption = "Ownerdraw Menus"ă  CREATE MainMenu AS QMainMenuă    CREATE FileMenu AS QMenuItemă      Caption = "&File"ă      CREATE OpenItem AS QMenuItemă        Caption = "&Open"ă        Hint = "Open"ă      END CREATEă      CREATE ReOpenItem AS QMenuItemă        Caption = "&ReOpen"ă        CREATE I1 AS QMenuItemă          Caption = "Item &1"ă          Hint = "Item 1"ă        END CREATEă        CREATE I2 AS QMenuItemă          Caption = "Item &2"ă        END CREATEă        CREATE I3 AS QMenuItemă          Caption = "Item &3"ă        END CREATEă      END CREATEă      CREATE BreakItem AS QMenuItemă        Caption = "-"ă      END CREATEă      CREATE ExitItem AS QMenuItemă        Caption = "E&xit"ă      END CREATEă    END CREATEă    CREATE EditMenu AS QMenuItemă      Caption = "&Edit"ă    END CREATEă    CREATE SearchMenu AS QMenuItemă      Caption = "&Search"ă    END CREATEă  END CREATEă  WndProc = FormWndProcăEND CREATEăăFOR I = 1 to 10ă  MenuItem(I).Caption = "Item &" + STR$(I)ă  MenuItem(I).OnClick = MenuItemClickă  EditMenu.AddItems(MenuItem(I))ăNEXTăă'-- Change some properties of our menu itemsăFOR I = 1 to 10ă  S = MenuItem(I).Captionă  ModifyMenu(EditMenu.Handle, MenuItem(I).MenuIndex, _ă             mf_ByPosition OR mf_OwnerDraw, MenuItem(I).Command, VARPTR(S))ăNEXTăăForm.ShowModalăăăăSUB FormWndProc (Hwnd&, uMsg&, wParam&, lParam&)ă    IF uMsg& = WM_MEASUREITEM THENă       Mem.Position = 0ă       '--ă       '-- lParam& is a pointer to the TMeasureItem structureă       '--ă       Mem.MemCopyFrom(lParam&, SIZEOF(MeasureItem))ă       Mem.Position = 0ă       '--ă       '-- After we copy it we have to read the structureă       '--ă       Mem.ReadUDT(MeasureItem)ă       IF MeasureItem.CtlType = ODT_MENU THENă          '-- There are other types, such as listboxes, etc. that weă          '-- want to avoid.ă          MeasureItem.itemWidth = 80      '-- Should be big enough to fită          MeasureItem.itemHeight = 18     '-- your items.ă          Mem.Position = 0ă          Mem.WriteUDT(MeasureItem)       '-- Write structure back to memoryă          Mem.Position = 0ă          '--ă          '-- Copy this structure back to the original address, soă          '-- changes can take effectă          '--ă          Mem.MemCopyTo(lParam&, SIZEOF(MeasureItem))ă       END IFă    ELSEIF uMsg& = WM_DRAWITEM THENă       Mem.Position = 0ă       Mem.MemCopyFrom(lParam&, SIZEOF(DrawItem))ă       Mem.Position = 0ă       Mem.ReadUDT(DrawItem)ă       IF DrawItem.CtlType = ODT_MENU THENă          Bitmap.Handle = DrawItem.hDCă          IF (ODS_SELECTED AND DrawItem.itemState) <> 0 THENă             Bitmap.FillRect(DrawItem.left,DrawItem.top,DrawItem.right,DrawItem.bottom, &H009900)ă             Bitmap.Circle(DrawItem.left,DrawItem.top+1,16,DrawItem.top+16, clHiLight, clHiLight)ă             S = VARPTR$(DrawItem.itemData)ă             I = INSTR(S, "&")ă             IF I THENă                Bitmap.TextOut(DrawItem.left+25,DrawItem.top+3,LEFT$(S, I-1),clWhite,-1)ă                Font.AddStyles(fsUnderline)ă                Bitmap.Font = Fontă                Bitmap.TextOut(DrawItem.left+25+Bitmap.TextWidth(LEFT$(S, I-1)),DrawItem.top+3,MID$(S, I+1, 1),clWhite,-1)ă                Font.DelStyles(fsUnderline)ă                Bitmap.Font = Fontă                S = S - "&"ă                Bitmap.TextOut(DrawItem.left+25+Bitmap.TextWidth(LEFT$(S, I)),DrawItem.top+3,MID$(S, I+1, LEN(S)),clWhite,-1)ă             ELSEă                Bitmap.TextOut(DrawItem.left+25,DrawItem.top+3,S,clWhite,-1)ă             END IFă          ELSEă             Bitmap.FillRect(DrawItem.left,DrawItem.top,DrawItem.right,DrawItem.bottom, clMenu)ă             Bitmap.Circle(DrawItem.left,DrawItem.top+1,16,DrawItem.top+16, 0, 0)ă             S = VARPTR$(DrawItem.itemData)ă             I = INSTR(S, "&")ă             IF I THENă                Bitmap.TextOut(DrawItem.left+25,DrawItem.top+3,LEFT$(S, I-1),0,-1)ă                Font.AddStyles(fsUnderline)ă                Bitmap.Font = Fontă                Bitmap.TextOut(DrawItem.left+25+Bitmap.TextWidth(LEFT$(S, I-1)),DrawItem.top+3,MID$(S, I+1, 1),0,-1)ă                Font.DelStyles(fsUnderline)ă                Bitmap.Font = Fontă                S = S - "&"ă                Bitmap.TextOut(DrawItem.left+25+Bitmap.TextWidth(LEFT$(S, I)),DrawItem.top+3,MID$(S, I+1, LEN(S)),0,-1)ă             ELSEă                Bitmap.TextOut(DrawItem.left+25,DrawItem.top+3,S,0,-1)ă             END IFă          END IFă       END IFă    END IFăEND SUBăThe ABC Programmer             PURE WINDOWS USING API CALLS   voxel@edmc.net                 06-29-00 (00:00)       RAPIDQ                 213  6324     PUREWND.BAS ' Pure Windowsă' Uses only Window's API calls to create windowsăăă$TYPECHECK ONă$INCLUDE "RAPIDQ.INC"ăă'-- Some Standard Cursor IDsăCONST IDC_ARROW = 32512ăCONST IDC_IBEAM = 32513ăCONST IDC_WAIT = 32514ăCONST IDC_CROSS = 32515ăCONST IDC_UPARROW = 32516ăCONST IDC_SIZE = 32540ăCONST IDC_ICON = 32541ăCONST IDC_SIZENWSE = 32542ăă'-- Standard Icon IDsăCONST IDI_APPLICATION = 32512ăCONST IDI_HAND = 32513ăCONST IDI_QUESTION = 32514ăCONST IDI_EXCLAMATION = 32515ăCONST IDI_ASTERISK = 32516ăCONST IDI_WINLOGO = 32517ăă'-- Class StylesăCONST CS_VREDRAW = 1ăCONST CS_HREDRAW = 2ăCONST CS_KEYCVTWINDOW = 4ăCONST CS_DBLCLKS = 8ăCONST CS_OWNDC = &H20ăCONST CS_CLASSDC = &H40ăCONST CS_PARENTDC = &H80ăCONST CS_NOKEYCVT = &H100ăCONST CS_NOCLOSE = &H200ăCONST CS_SAVEBITS = &H800ăCONST CS_BYTEALIGNCLIENT = &H1000ăCONST CS_BYTEALIGNWINDOW = &H2000ăCONST CS_GLOBALCLASS = &H4000ăCONST CS_IME = &H10000ăăCONST CW_USEDEFAULT = &H80000000ăă'-- Window stylesăCONST WS_CAPTION = &HC00000ăCONST WS_CHILD = &H40000000ăCONST WS_VISIBLE = &H10000000ăCONST WS_BORDER = &H800000ăCONST WS_SYSMENU = &H80000ăCONST WS_THICKFRAME = &H40000ăCONST WS_SIZEBOX = WS_THICKFRAMEăCONST WS_CLIPCHILDREN = &H2000000ăăCONST WS_MINIMIZEBOX = &H20000ăCONST WS_MAXIMIZEBOX = &H10000ăăăCONST WS_EX_DLGMODALFRAME = 1ăCONST WS_EX_NOPARENTNOTIFY = 4ăCONST WS_EX_TOPMOST = 8ăCONST WS_EX_ACCEPTFILES = &H10ăCONST WS_EX_TRANSPARENT = &H20ăCONST WS_EX_MDICHILD = &H40ăCONST WS_EX_TOOLWINDOW = &H80ăCONST WS_EX_WINDOWEDGE = &H100ăCONST WS_EX_CLIENTEDGE = &H200ăCONST WS_EX_CONTEXTHELP = &H400ăăCONST WS_EX_RIGHT = &H1000ăCONST WS_EX_LEFT = 0ăCONST WS_EX_RTLREADING = &H2000ăCONST WS_EX_LTRREADING = 0ăCONST WS_EX_LEFTSCROLLBAR = &H4000ăCONST WS_EX_RIGHTSCROLLBAR = 0ăăCONST WS_EX_CONTROLPARENT = &H10000ăCONST WS_EX_STATICEDGE = &H20000ăCONST WS_EX_APPWINDOW = &H40000ăă'-- Button stylesăCONST BS_PUSHBUTTON = 0ăCONST BS_DEFPUSHBUTTON = 1ăCONST BS_CHECKBOX = 2ăCONST BS_AUTOCHECKBOX = 3ăCONST BS_RADIOBUTTON = 4ăCONST BS_3STATE = 5ăCONST BS_AUTO3STATE = 6ăCONST BS_GROUPBOX = 7ăCONST BS_USERBUTTON = 8ăCONST BS_AUTORADIOBUTTON = 9ăCONST BS_OWNERDRAW = 11ăCONST BS_LEFTTEXT = &H20ăCONST BS_TEXT = 0ăCONST BS_ICON = &H40ăCONST BS_BITMAP = &H80ăCONST BS_LEFT = &H100ăCONST BS_RIGHT = &H200ăCONST BS_CENTER = 768ăCONST BS_TOP = &H400ăCONST BS_BOTTOM = &H800ăCONST BS_VCENTER = 3072ăCONST BS_PUSHLIKE = &H1000ăCONST BS_MULTILINE = &H2000ăCONST BS_NOTIFY = &H4000ăCONST BS_FLAT = &H8000ăCONST BS_RIGHTBUTTON = BS_LEFTTEXTăăăCONST WM_DESTORY = 2ăăăăăTYPE TWNDCLASSEXă    cbSize AS LONGă    style AS LONGă    lpfnWndProc AS LONGă    cbClsExtra AS LONGă    cbWndExtra AS LONGă    hInstance AS LONGă    hIcon AS LONGă    hCursor AS LONGă    hbrBackground AS LONGă    lpszMenuName AS LONGă    lpszClassName AS LONGă    hIconSm AS LONGăEND TYPEăăTYPE TMSGă    hwnd AS LONGă    message AS LONGă    wParam AS LONGă    lParam AS LONGă    time AS DWORDă    x as LONGă    y as LONGăEND TYPEăăDECLARE FUNCTION RegisterClassEx LIB "USER32" ALIAS "RegisterClassExA" _ă                 (WndClass AS TWNDCLASSEX) AS WORDăDECLARE FUNCTION GetMessage LIB "USER32" ALIAS "GetMessageA" _ă                 (lpMsg AS TMSG, hWnd AS LONG, wMsgFilterMin AS LONG, _ă                  wMsgFilterMax AS LONG) AS LONGăDECLARE FUNCTION LoadCursor LIB "USER32" ALIAS "LoadCursorA" _ă                 (hInst AS LONG, lpCursorName AS LONG) AS LONGăDECLARE FUNCTION LoadIcon LIB "USER32" ALIAS "LoadIconA" _ă                 (hInst AS LONG, lpIconName AS LONG) AS LONGăDECLARE FUNCTION CreateWindowEx LIB "USER32" ALIAS "CreateWindowExA" _ă                 (ExStyle&, ClassName$, WindowName$, Style&, X&, Y&, _ă                  Width&, Height&, WndParent&, hMenu&, hInstance&, Param&) AS LONGăDECLARE FUNCTION UpdateWindow LIB "USER32" ALIAS "UpdateWindow" _ă                 (hWnd AS LONG) AS LONGăDECLARE FUNCTION DefWindowProc LIB "USER32" ALIAS "DefWindowProcA" _ă                 (hWnd AS LONG, Msg AS LONG, wParam AS LONG, lParam AS LONG) AS LONGăDECLARE FUNCTION PostQuitMessage LIB "USER32" ALIAS "PostQuitMessage" _ă                 (nExitCode AS LONG) AS LONGăDECLARE FUNCTION TranslateMessage LIB "USER32" ALIAS "TranslateMessage" _ă                 (lpMsg AS TMSG) AS LONGăDECLARE FUNCTION DispatchMessage LIB "USER32" ALIAS "DispatchMessageA" _ă                 (lpMsg AS TMSG) AS LONGăăăDIM WndClassEx AS TWNDCLASSEXăDIM Msg AS TMSGăăDEFSTR ClassName$ = "RapidQ"ăDEFINT Handle, ChildHandle, Button1, Label1, Edit1ăăFUNCTION WindowProc (hWnd AS LONG, uMsg AS LONG, wParam AS LONG, lParam AS LONG) AS LONGă    Result = DefWindowProc(hWnd, uMsg, wParam, lParam)ă    IF uMsg = WM_DESTORY THENă       PostQuitMessage(0)ă    END IFăEND FUNCTIONăăăWITH WndClassExă    .cbSize = SIZEOF(WndClassEx)ă    .style = CS_CLASSDC or CS_PARENTDCă    .lpfnWndProc = CODEPTR(WindowProc)ă    .cbClsExtra = 0ă    .cbWndExtra = 0ă    .hInstance = Application.hInstanceă    .hbrBackground = clBtnFace + 1ă    .lpszMenuName = 0ă    .lpszClassName = VARPTR(ClassName$)ă    .hCursor = LoadCursor(0, IDC_CROSS)ă    .hIcon = LoadIcon(0, IDI_WINLOGO)ă    .hIconSm = LoadIcon(0, IDI_WINLOGO)ăEND WITHăăRegisterClassEx(WndClassEx)ăăHandle = CreateWindowEx(0, ClassName$, "Pure Rapid-Q", _ă                        WS_CLIPCHILDREN OR WS_VISIBLE OR WS_SIZEBOX OR WS_CAPTION OR WS_SYSMENU OR WS_MINIMIZEBOX OR WS_MAXIMIZEBOX, _ă                        CW_USEDEFAULT, CW_USEDEFAULT, 320, 240, _ă                        0, 0, Application.hInstance, 0)ăăChildHandle = CreateWindowEx(WS_EX_MDICHILD, ClassName$, "Pure Rapid-Q", _ă                        WS_CHILD OR WS_VISIBLE OR WS_SIZEBOX OR WS_CAPTION OR WS_SYSMENU OR WS_MINIMIZEBOX OR WS_MAXIMIZEBOX, _ă                        CW_USEDEFAULT, CW_USEDEFAULT, 200, 200, _ă                        Handle, 0, Application.hInstance, 0)ăăăButton1 = CreateWindowEx(WS_EX_WINDOWEDGE, "Button", "OK", WS_CHILD OR WS_VISIBLE OR WS_BORDER OR BS_PUSHLIKE OR BS_TEXT, _ă                         216, 8, 75, 25, Handle, 0, Application.hInstance, 0)ăăUpdateWindow(Handle)ăăWHILE (GetMessage(Msg, 0, 0, 0))    '-- Main message loopă    TranslateMessage(Msg)ă    DispatchMessage(Msg)ăWENDăStephan Verrips                ACCESSING LPT PORT             Stephan@verrips.com            05-31-00 (10:25)       RAPIDQ                 470  10018    LPTPORT.BAS '***********************************************ă'* LPTport for Windows 95/98 and Linux         *ă'*                                             *ă'* Written by Stephan Verrips,                 *ă'* The netherlands                             *ă'*                                             *ă'* This program is public domain !             *ă'*                                             *ă'* You can use this program for making         *ă'* a interface card on the LPT port.           *ă'* Pen 18 = massa                              *ă'*                                             *ă'* Example:                                    *ă'*                                             *ă'* Switch D0 - pen 2 on with this              *ă'* program, then Pen 2 (D0) and pen 18 (Massa) *ă'* are 5 volt DC                               *ă'*                                             *ă'*     Pen 2--------- +5v ---------pen 18      *ă'***********************************************ăăDECLARE SUB pen1ăDECLARE SUB pen2ăDECLARE SUB pen3ăDECLARE SUB pen4ăDECLARE SUB pen5ăDECLARE SUB pen6ăDECLARE SUB pen7ăDECLARE SUB pen8ăDECLARE SUB pen9ăDECLARE SUB pen10ăDECLARE SUB pen11ăDECLARE SUB pen12ăDECLARE SUB pen13ăDECLARE SUB pen14ăDECLARE SUB pen15ăDECLARE SUB pen16ăDECLARE SUB pen17ăDECLARE SUB readyăăDECLARE SUB statusăăDECLARE SUB P378ăDECLARE SUB P3BCăDECLARE SUB P278ăăDIM Timer1 as QTimerăDIM port AS INTEGERăă'***************ă'* Create Form *ă'***************ăăCREATE Form AS QFORMă    Caption = "LPTport for Windows"ă    Width = 271ă    Height = 387ă    Centeră    CREATE Label1 AS QLABELă        Caption = "OUTPUTS"ă        Left = 21ă        Top = 10ă        Width = 52ă        Transparent = 1ă    END CREATEă    CREATE Label2 AS QLABELă        Caption = "LPT PORT"ă        Left = 142ă        Top = 10ă        Width = 52ă        Transparent = 1ă    END CREATEă    CREATE Label3 AS QLABELă        Caption = "INPUTS"ă        Left = 142ă        Top = 130ă        Width = 42ă        Transparent = 1ă    END CREATEă    CREATE RadioButton2 AS QRADIOBUTTONă        Caption = "LP&T2 - H3BC"ă        OnClick= P3BCă	  Left = 142ă        Top = 70ă        TabOrder = 1ă    END CREATEă    CREATE CheckBox1 AS QCHECKBOXă        Caption = "D&0 - pen 2"ă	   OnClick = pen2ă        Left = 21ă        Top = 49ă        TabOrder = 3ă    END CREATEă    CREATE CheckBox2 AS QCHECKBOXă        Caption = "D&1 - pen 3"ă	  OnClick = pen3ă        Left = 21ă        Top = 72ă        TabOrder = 4ă    END CREATEă    CREATE CheckBox3 AS QCHECKBOXă        Caption = "D&2 - pen 4"ă	  OnClick = pen4ă        Left = 21ă        Top = 95ă        TabOrder = 5ă    END CREATEă    CREATE CheckBox4 AS QCHECKBOXă        Caption = "D&3 - pen 5"ă	  OnClick = pen5ă        Left = 21ă        Top = 118ă        TabOrder = 6ă    END CREATEă    CREATE CheckBox5 AS QCHECKBOXă        Caption = "D&4 - pen 6"ă	  OnClick = pen6ă        Left = 21ă        Top = 143ă        TabOrder = 7ă    END CREATEă    CREATE CheckBox6 AS QCHECKBOXă        Caption = "D&5 - pen 7"ă	  OnClick = pen7ă        Left = 21ă        Top = 167ă        TabOrder = 8ă    END CREATEă    CREATE CheckBox7 AS QCHECKBOXă        Caption = "D&6 - pen 8"ă	  OnClick = pen8ă        Left = 21ă        Top = 191ă        TabOrder = 9ă    END CREATEă    CREATE CheckBox8 AS QCHECKBOXă        Caption = "D&7 - pen 9"ă	  OnClick = pen9ă        Left = 21ă        Top = 216ă        TabOrder = 10ă    END CREATEă    CREATE CheckBox9 AS QCHECKBOXă        Caption = "&Strobe - pen 1"ă	  OnClick = pen1ă        Left = 21ă        Top = 252ă        TabOrder = 11ă    END CREATEă    CREATE CheckBox10 AS QCHECKBOXă        Caption = "&Auto F - pen 14"ă	  OnClick = pen14ă        Left = 21ă        Top = 275ă        TabOrder = 12ă    END CREATEă    CREATE CheckBox11 AS QCHECKBOXă        Caption = "&Init - pen 16"ă	  OnClick = pen16ă        Left = 21ă        Top = 297ă        TabOrder = 13ă    END CREATEă    CREATE CheckBox12 AS QCHECKBOXă        Caption = "Sel I&n - pen 17"ă	  OnClick = pen17ă        Left = 21ă        Top = 322ă        TabOrder = 14ă    END CREATEă    CREATE CheckBox13 AS QCHECKBOXă        Caption = "C Error - pen 15"ă        Left = 142ă        Top = 168ă        TabOrder = 15ă    END CREATEă    CREATE CheckBox14 AS QCHECKBOXă        Caption = "C Sel - pen 13"ă        Left = 142ă        Top = 191ă        TabOrder = 16ă    END CREATEă    CREATE CheckBox15 AS QCHECKBOXă        Caption = "C Pe - pen 12"ă        Left = 142ă        Top = 214ă        TabOrder = 17ă    END CREATEă    CREATE CheckBox16 AS QCHECKBOXă        Caption = "C Ack - pen 10"ă        Left = 142ă        Top = 238ă        TabOrder = 18ă    END CREATEă    CREATE Button1 AS QBUTTONă        Caption = "&Ready"ă	  OnClick = readyă        Left = 142ă        Top = 316ă        TabOrder = 19ă    END CREATEă    CREATE RadioButton3 AS QRADIOBUTTONă        Caption = "LPT3 - &H278"ă        OnClick= P278ă        Left = 142ă        Top = 94ă        TabOrder = 2ă    END CREATEă    CREATE RadioButton1 AS QRADIOBUTTONă        Caption = "&LPT1 - H378"ă        OnClick= P378ă        Left = 142ă        Top = 46ă    END CREATEă    CREATE CheckBox17 AS QCHECKBOXă        Caption = "C Busy - pen 11"ă        Left = 142ă        Top = 264ă        TabOrder = 20ă    END CREATEăEND CREATEăă'******************ă'* Strobe - pen 1 *ă'******************ăăSUB pen1ă    IF CheckBox9.Checked THENă       OUT port+2, (INP(port+2) AND 254)ă    ELSE  ă       OUT port+2, (INP(port+2) OR 1)ă    END IFăEND SUBăă'*******************ă'* Auto F - pen 14 *ă'*******************ăăSUB pen14ă    IF CheckBox10.Checked THENă       OUT port+2, (INP(port+2) AND 253)ă    ELSE	ă       OUT port+2, (INP(port+2) OR 2)ă    END IFăEND SUBăă'*****************ă'* Init - pen 16 *ă'*****************ăăSUB pen16ă    IF CheckBox11.Checked THENă       OUT port+2, (INP(port+2) OR 4)ă    ELSE	ă       OUT port+2, (INP(port+2) AND 251)ă    END IFăEND SUBăă'*******************ă'* Sel In - pen 17 *ă'*******************ăăSUB pen17ă    IF CheckBox12.Checked THENă       OUT port+2, (INP(port+2) AND 247)ă    ELSE	ă       OUT port+2, (INP(port+2) OR 8)ă    END IFăEND SUBăă'**************ă'* D0 - pen 2 *ă'**************ăăSUB pen2ă    IF CheckBox1.Checked THENă       OUT port, (INP(port) OR 1)ă    ELSE	ă       OUT port, (INP(port) AND 254)ă    END IFăEND SUBăă'**************ă'* D1 - pen 3 *ă'**************ăăSUB pen3ă    IF CheckBox2.Checked THENă       OUT port, (INP(port) OR 2)ă    ELSE	ă       OUT port, (INP(port) AND 253)ă    END IFăEND SUBăă'**************ă'* D2 - pen 4 *ă'***************ăăSUB pen4ă    IF CheckBox3.Checked THENă       OUT port, (INP(port) OR 4)ă    ELSE	ă       OUT port, (INP(port) AND 251)ă    END IFăEND SUBăă'**************ă'* D3 - pen 5 *ă'**************ăăSUB pen5ă    IF CheckBox4.Checked THENă       OUT port, (INP(port) OR 8)ă    ELSE	ă       OUT port, (INP(port) AND 247)ă    END IFăEND SUBăă'**************ă'* D4 - pen 6 *ă'**************ăăSUB pen6ă    IF CheckBox5.Checked THENă       OUT port, (INP(port) OR 16)ă    ELSE	ă       OUT port, (INP(port) AND 255-16)ă    END IFăEND SUBăă'**************ă'* D5 - pen 7 *ă'**************ăăSUB pen7ă    IF CheckBox6.Checked THENă       OUT port, (INP(port) OR 32)ă    ELSE	ă       OUT port, (INP(port) AND 255-32)ă    END IFăEND SUBăă'**************ă'* D6 - pen 8 *ă'**************ăăSUB pen8ă    IF CheckBox7.Checked THENă       OUT port, (INP(port) OR 64)ă    ELSE	ă       OUT port, (INP(port) AND 255-64)ă    END IFăEND SUBăă'**************ă'* D7 - pen 9 *ă'**************ăăSUB pen9ă    IF CheckBox8.Checked THENă       OUT port, (INP(port) OR 128)ă    ELSE	ă       OUT port, (INP(port) AND 255-128)ă    END IFăEND SUBăă'********ă'* LPT1 *ă'********ăăSUB P378ă port=&H378ă statusăEND SUBăă'**********ă'* LPT1/2 *ă'**********ăăSUB P3BCă port=&H3BCă statusăEND SUBăă'********ă'* LPT3 *ă'********ăăSUB P278ă port=&H278ă statusăEND SUBăă'******************ă'* End of program *ă'******************ăăSUB readyă Form.CloseăEND SUBăă'**************************ă'* Refresh data on screen *ă'**************************ăăSUB statusăă'***********ă'* Outputs *ă'***********ăă CheckBox1.Checked=((INP(port) AND 1)/1)ă CheckBox2.Checked=((INP(port) AND 2)/2)ă CheckBox3.Checked=((INP(port) AND 4)/4)ă CheckBox4.Checked=((INP(port) AND 8)/8)ă CheckBox5.Checked=((INP(port) AND 16)/16)ă CheckBox6.Checked=((INP(port) AND 32)/32)ă CheckBox7.Checked=((INP(port) AND 64)/64)ă CheckBox8.Checked=((INP(port) AND 128)/128)ăă CheckBox13.Checked=((INP(port+1) AND 8)/8)ă CheckBox14.Checked=((INP(port+1) AND 16)/16)ă CheckBox15.Checked=((INP(port+1) AND 32)/32)ă CheckBox16.Checked=((INP(port+1) AND 64)/64)ă CheckBox17.Checked=(1-((INP(port+1) AND 128)/128))ăă'*********ă'*Inputs *ă'*********ăă CheckBox9.Checked=(1-(INP(port+2) AND 1)/1)ă CheckBox10.Checked=(1-(INP(port+2) AND 2)/2)ă CheckBox11.Checked=((INP(port+2) AND 4)/4)ă CheckBox12.Checked=(1-(INP(port+2) AND 8)/8)ăEND SUBăă'***************************************ă'* Timer for refesh the data on screen *ă'***************************************ăăSUB TimerOveră    Timer1.Interval = 400ă  ă  '**************************ă  '* refresh data on screen *ă  '**************************ăă   statusăEND SUBăă'*************************ă'* Default on LPT1 &H378 *ă'*************************ăăport=&H378ăRadioButton1.Checked=1ăă'************************************ă'* Timer for refresh data on screen *ă'************************************ăăTimer1.Interval = 400ăTimer1.Enabled = 1         ăTimer1.OnTimer = TimerOverăă'*****************ă'* Start program *ă'*****************ăăForm.ShowModalăColin Breame                   SNAKE GAME FOR RAPID-Q         colin.breame@uk.worldplay.com  07-25-00 (15:29)       RAPIDQ                 240  4372     SNAKE.BAS   '  snake.basă' SnakeV1 was written by Colin Breame for fună' Controls:ă'	' = upă'	/ = downă'	z = leftă'	x = rightă'ă' The keyboard is not very responsive becauseă' the inkey$ method does not buffer the last character pressedă' i.e. you must have the key depressed when it checks (I think)ă'ă' Send comments/seguestions to colinbreame@hotmail.comăă$TYPECHECK ONăăă' Def for the appăDIM borderChar AS STRINGădim snakeChar as stringăDIM screenX as integerădim screenY as integerăă' Border characterăborderChar = "#"ăsnakeChar = "+"ăscreenX = 78ăscreenY = 23ăă' SubrountinesăDECLARE SUB drawBorderădeclare sub initSnakeădeclare sub moveSnakeădeclare sub updateFrameădeclare sub checkForColădeclare sub calcNewPositionădeclare sub makeFoodădeclare sub removeListTailădeclare sub addListHeadădeclare sub initListădeclare sub updateFrameădeclare sub handleInputăăăă' Variablesă' Whether were still aliveă'	0 = aliveă'	1 = deadădim snakeDead as integeră' The snake headădim headX as integerădim headY as integeră' How long our snake isădim size as integeră' And what direction weve moving ină'	0 = northă'	1 = eastă'	2 = southă'	3 = westădim dir as integerăăă' List of snake segmentsădim segX(256) as integerădim segY(256) as integerădim listLen as integerălistLen = 256ăădim nextElement as integerădim baseElement as integerădim numOfElements as integerăăă' Where the food isădim foodVal as integerăăăCLSăRANDOMIZE TIMERăă' Draw the borderăcall drawBorderă' initialise the snakeăcall initSnakeăă' Make some foodăcall makeFoodăă' Initialise the list of segmentsăcall initListăcall addListHeadăă' Setup our timerădim interval as integerăinterval = 250ăădim timer1 as QTimerătimer1.Interval = intervalătimer1.Enabled = 1ătimer1.OnTimer = updateFrameăă' Used for inputădim lastInput as stringădim newInput as stringăă' Now loopădoă	lastInput = lastInput + inkey$ă	doeventsăloop until snakeDead = 1ăăăsub updateFrameă	call moveSnakeă	if snakeDead = 0 then timer1.Interval = intervalăend subăăăă' Moves the snakeăsub moveSnakeă	call handleInpută	call calcNewPositionă	call checkForColă	call updateFrameă	if numOfElements>size then call removeListTailăend subăă' Handles user inputăsub handleInpută	SELECT CASE right$(lastInput, 1)ă		CASE "/"ă			dir = 2ă		CASE "'"ă			dir = 0ă		CASE "x"ă			dir = 1ă		CASE "z"ă			dir = 3ă	END SELECTă	lastInput = ""ăend subăăă' Updates this frameăsub updateFrameă	locate headY, headXă	print snakeChară	ă	locate segY(baseElement), segX(baseElement)ă	print " "ăend subăă' Checks for a collition against walls or snakeăsub checkForColă	dim c as stringă	c = CHR$(PEEK((headY-1)*160+(headX-1)*2))ăă	if c = borderChar or c = snakeChar then snakeDead = 1ă	ă	if asc(c) > 48 and asc(c) <= 57 then ă		size = size + foodVală		interval = interval - (foodVal*2)ă		call makeFoodă	end ifăend subăă' Calculates the snakes new position (of head)ăsub calcNewPositionă	if dir = 0 then	headY = headY-1 _ă	else if dir = 1 then headX = headX+1 _ă	else if dir = 2 then headY = headY+1 _ă	else if dir = 3 then headX = headX-1ăă	' Add this new position to the list of snake segmentsă	call addListHeadăend subăăă' Initialises our snakeăsub initSnakeă	headX = screenX/2ă	headY = screenY/2ă	size = 1ă	dir = rnd(4)ă	snakeDead = 0ăend subăă' Makes some foodăsub makeFoodă	foodVal = rnd(9)+1ă	locate rnd(screenY-2)+2, rnd(screenX-2)+2ă	print foodValăend subăă' Draws the borders around the edge of the screenăSUB drawBorderă	DIM i as Integerăă	for i=1 to screenXă		locate 1, iă		print borderChară		locate screenY, iă		print borderChară	nextăă	for i=1 to screenYă		locate i, 1ă		print borderChară		locate i, screenXă		print borderChară	nextăEND SUBăăă' Rotary list methodsăă' Initialise the listăsub initListă	nextElement = 0ă	baseElement = 0ăend subăă' Add headăsub addListHeadă	segX(nextElement) = headXă	segY(nextElement) = headYăă	nextElement = nextElement + 1ă	if (nextElement>listLen) then nextElement = nextElement-listLenă	numOfElements = numOfElements + 1ăend subăă' Remove tailăsub removeListTailă	baseElement = baseElement + 1ă	if (baseElement>listLen) then baseElement = baseElement-listLenă	numOfElements = numOfElements - 1ăend subăGerome Guillemin               SONIDO 1.0 (MP3 PLAYER)        gedd123@free.fr                08-29-00 (01:50)       RAPIDQ                 144  5460     SONIDO.BAS  ' Sonido 1.0 : hidden MCI command to play MP3 Files with PC equipped with Windows 9.x, NT or Win2kă' equipped with MS-Media Player 2 or higheră' Author : Gerome GUILLEMIN (FRANCE)ă' Mailto : gedd123@free.fră' Web page : http://gedd123.free.fr (My own MP3 rippers/encoders, Rapid-Q source code...)ă' Feel free to use this snippet to play your favorite MP3 filesă' Started : 08-08-2000  - Modified 08-29-2000 at 10.30 PM (huh... what a good programming time :)ă' This code is dedicated to William's Great Rapid-Q compiler and for all basic code lovers !ă' This code is also dedicated to ABC packets if William decides to packet it :)ă' BUG fixed in this release : shorten paths & mp3 filename oops... :(ă' Improvements : Added a way to 'registrize' MP3 files with Sonido :) ă' THIS CODE HAS BEEN FULLY DOCUMENTED - TELL ME IF SOMETHING IS MISSING - THANKS A LOT -ăă' Security / Optimizationsă$Include "Rapidq.inc" ă$TypeCheck ON   ' Useful for me :) ă$Optimize ON    ' Yeah...ă$Option Level 3 ' For Funăă' Global Definitions / Prototypesă$Define FALSE  0ă$Define TRUE   1ăDECLARE SUB Button1Click (Sender AS QBUTTON)ăDECLARE SUB Button2Click (Sender AS QBUTTON)ăDECLARE SUB Button3Click (Sender AS QBUTTON)ăă' Main API DeclarationăDECLARE Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" _ ă(ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, _ ăByVal hwndCallback As Long) As Longăă' GlobalsăDim ret as Long            ' Returned value for 'mciSendString'ăDim mp3file As String      ' Name of the MP3 to playăDim nCounter as Integer    ' Counter to manage the action Playing/Pausing/Continuing...ăDim szCmd as string        ' MCI Command -> OpenăDim szPlay as String       ' MCI Command -> Play SonidoăDim szRegCmd as String     ' String for MP3 File description for the Registryăă' My constants ămp3file = command$(1) 'old code was this (hard coded) -> "D:\REGS\Rapid-Q\Projets\GG_Works\Sonido\01-Zarathoustra.mp3" '-> change this to a valid MP3 filename from your PCăszCmd = "Open " & chr$(34) & mp3file & chr$(34) & " Alias Sonido"ăszPlay = "Play sonido"ăăConst HKEY_CLASSES_ROOT = &H80000000     ' Registry constant (William has forgotten to document this one !)ăă$EscapeChars ON 'Put this on the Top of the code to avoid conflicts !ăăDim Registry as Qregistry    ăăCREATE Form AS QFORMă    Caption = "Sonido : FREE MP3 Player"ă    Width = 320ă    Height = 115ă    Centeră    CREATE Button1 AS QBUTTONă        Caption = "Play !"ă        Left = 9ă        Top = 10ă        OnClick = Button1Clickă    END CREATEă    CREATE Button2 AS QBUTTONă        Caption = "Stop !"ă        Left = 89ă        Top = 10ă        TabOrder = 1ă        OnClick = Button2Clickă    END CREATEă    CREATE Button3 AS QBUTTONă            Caption = "Associate MP3@Sonido !"ă        Left = 170        ă        Top = 10ă        Width = 135ă        TabOrder = 1ă        OnClick = Button3Clickă    END CREATEă    ă    CREATE Label1 as Qlabelă        Align = 2ă        Alignment = 2 ă        Color = &hFFFFă        Caption = "By Gérôme GUILLEMIN 08-08-2000\nMailto: gedd123@free.fr\nWeb: http://gedd123.free.fr" '-> fatidic date : 11 years ago i've succeded my driving code license :) ă        Left = 29 '-> will be my age the 12th of August 2000 ;)ă        Top = 40  '-> cool height for my screen :)ă    END CREATEăEND CREATEăă'Initialization codeăif Command$(1) <> "" thenă    ret = mciSendString(szCmd, 0, 0, 0)          ' Open the MP3 fileă    ret = mciSendString(szPlay, 0, 0, 0)         ' Plays the MP3 file !ă        Button1.Caption = "Playing..." : nCounter = 1ăEnd if   ăăForm.ShowModalăăă'--------- Subroutines ---------ăăSUB Button1Click (Sender AS QBUTTON)ăă'nCounter manages the action for the MP3 -> 0 == Plays or Continue // 1 == Pauses the MP3ăSelect Case nCounteră ă Case 0ă   ret = mciSendString(szCmd, 0, 0, 0) 'Open the MP3 fileă      if ret <> 0 AND Button1.Caption = "Play !" thenă         Showmessage ("Invalid Handle -> MP3 File is not present or may be an invalid MP3 file !")ă         Button1.Enabled = FALSEă      elseă         '? ret 'left for debuggingă      end ifă    Button1.Caption = "Playing..." : nCounter = 1ă    ret = mciSendString(szPlay, 0, 0, 0)         ' Plays the MP3 file !ă ă Case 1ă    ret = mciSendString("Stop sonido", 0, 0, 0)  ' Pause (if we want to wait a while for a cup of tea :)ă    Button1.Caption = "Paused !" : nCounter = 0ăEnd Selectă    ăEND SUBăăăSUB Button2Click (Sender AS QBUTTON)ă    ret = mciSendString("Stop sonido", 0, 0, 0)  ' Pause (if we want to wait a while for a second cup of tea :)ă    ret = mciSendString("Close sonido", 0, 0, 0) ' Stop Playing MP3 file (the file is rewinded at this moment)ăEND SUBăăăSUB Button3Click (Sender AS QBUTTON)      ' Associate MP3 files with Sonido !ăszRegCmd = Command$(0) + " \34%1\34"      ' Full Path for Sonido + commandăă Registry.RootKey = HKEY_CLASSES_ROOTă Registry.OpenKey("\\.mp3", 1)ă Registry.WriteString("", "Sonido File")ăă Registry.OpenKey("\\Sonido File", 1)ă Registry.WriteString("", "MP3 File")ă Registry.OpenKey("shell\\open\\command", 1)ă Registry.WriteString("", szRegCmd)ă ăShowMessage ("MP3 files successfully associated with Sonido :)\nJust click onto an MP3 file...\nEnjoy :-p")ăApplication.Terminate ' The 1st job is done... it's time to play mp3 now !ăEND SUBăChristopher S. Bradford        RAPID-Q TELNET CLIENT          csb@psouth.net                 08-27-00 (19:34)       RAPIDQ                 180  5263     TEL.BAS     '** Title: RapidQ Telnet Client / M$ Windows Consoleă'** Author: Christopher S. Bradfordă'**ă'** Release Notes:ă'**      Ver 1.00:  08/21/2000ă'**                 Supports full ANSI terminals, including color, specială'**                 keys, etc... IMPORTANT:  the follow line must be in youră'**                 CONFIG.SYS file:  device=c:\windows\command\ansi.sysă'**                 If you need to add the ansi.sys line to your config.sys,ă'**                 then you will need to reboot before running this program.ă'**ă'**                 There is minor bug when disconnecting from the remoteă'**                 telnet server... the client will not exit.  The press ofă'**                 any key after disconnect will exit.  I need to find a moreă'**                 reliable way of detecting dropped sockets.  Not a big deal.ă'**ă'**                 Mostly RFC854 compliant, supports protocol negotiationă'**ă'**                 Feel free to use, distribute, or otherwise destroy thisă'**                 example.ă'**ă'**                 Compile AS-IS  ...  "rc tel.bas"ăă$OPTIMIZE ONă$APPTYPE CONSOLEă$TYPECHECK ONăăDECLARE SUB NegotiateOptionsăăCONST False = 0ăCONST True  = NOT Falseăă'** NEGOTIATIONSăCONST IAC   = CHR$(255)ăCONST tDo   = CHR$(253)      '** values based on RFC854ăCONST tDont = CHR$(254)ăCONST tWill = CHR$(251)ăCONST tWont = CHR$(252)ăCONST SE    = CHR$(240)ăCONST SB    = CHR$(250)ăă'** TERMINAL OPTIONS TO NEGOTIATEăCONST TermType = CHR$(24)ăCONST TermTypeSB = SB + TermType + CHR$(1) + IAC + SEăCONST TermTypeInfo = IAC + SB +TermType +CHR$(0)+ "ANSI" +IAC +SEăăDIM Socket AS QSocketăDIM SockNum AS INTEGERă    SockNum = 0ăăDIM A$     'Keyboard InputăDIM B$     'Term Read Byte BufferăăDEFSTR tDesc(251 TO 254) = {"WILL","WONT","DO","DONT"}ăăDIM Keys(255) AS String                     'Key maps for special ANSIă                                            'terminal keys... indexed byă                                            'scancodesăKeys(59)=Chr$(27)+"[M"  'F1                 ăKeys(60)=Chr$(27)+"[N"  'F2                 'basically, we're grabbing theăKeys(61)=Chr$(27)+"[O"  'F3                 'scancodes and sending the ansiăKeys(62)=Chr$(27)+"[P"  'F4                 'equivalentăKeys(63)=Chr$(27)+"[Q"  'F5ăKeys(64)=Chr$(27)+"[R"  'F6                 'there are more specialkeys, butăKeys(65)=Chr$(27)+"[S"  'F7                 'this basic set should be good forăKeys(66)=Chr$(27)+"[T"  'F8                 'the first release anywayăKeys(67)=Chr$(27)+"[U"  'F9ăKeys(68)=Chr$(27)+"[V"  'F10ăKeys(71)=Chr$(27)+"[H"  'homeăkeys(72)=Chr$(27)+"[A"  'Up Arrowăkeys(73)=Chr$(27)+"[I"  'PgDnăkeys(75)=Chr$(27)+"[D"  'Down Arrowăkeys(77)=Chr$(27)+"[C"  'Right ArrowăKeys(79)=Chr$(27)+"[F"  'endăkeys(80)=Chr$(27)+"[B"  'Left ArrowăKeys(81)=chr$(27)+"[G"  'PgDnăăăPRINTăPRINT "RapidQ Telnet Client -- Written By C.S.Bradford"ăPRINT "Version 1.00 - Feel Free to distribute"ăPRINTăăIF Command$(1)="" or Command$(1)="/?" or Command$(1)="?" thenăă   PRINT "Command Line Usage: TEL <host or ip>ă   PRINTăă   ENDăEND IFăăPRINT "Connecting to "+Command$(1)+"...";ăSockNum = Socket.Connect(Command$(1),23)ăăIF SockNum < 1 THEN GOTO TelExităăPRINT "[OK]"ăPRINTăăA$=""ăăDO                   '** MAIN LOOPă  ă  A$=INKEY$ăă  IF A$<>"" THENă    IF LEN(A$)=2 AND LEFT$(A$,1)=CHR$(27) THENăă       'Special Key Detected ... Translate A$ to keymapăă        A$=Keys(ASC(RIGHT$(A$,1)))ăă    END IFă    Socket.Write(SockNum,A$,LEN(A$))ă  END IFăă  IF Socket.IsServerReady(SockNum) THENă     B$=Socket.Read(SockNum,1)ă     IF B$=IAC THENă       NegotiateOptionsă     ELSEă       PRINT B$;ă     END IFă  END IFăă  IF Socket.Transferred < 0 THEN Exit DO      'check for dropped connectionăăLOOPăăTelExit:ă  PRINT "No Connection... Exiting"ă  Socket.CloseăăăSUB NegotiateOptionsăă   Print "RCVD ";ă   B$=""ă   B$=Socket.Read(SockNum,1)ăă   IF B$=tWill OR b$=tWont OR b$=tDo OR b$=tDont thenă      B$=B$+Socket.Read(SockNum,1)ă      SELECT CASE B$ă        CASE tDo+TermTypeă          PRINT "IAC DO TermType"ă          Socket.Write(SockNum,IAC + tWill +TermType,3)ă          PRINT "SENT IAC WILL TermType"ăă        '** add more cases here to handle other terminal optionsăă        CASE ELSEă          IF LEFT$(B$,1)=tDo THEN                    'Reply With tWontă             PRINT "IAC ["+str$(asc(left$(b$,1)))+"]["+str$(asc(right$(b$,1)))+"]"ă             Socket.Write(SockNum,IAC + tWont + Right$(b$,1),3)ă             PRINT "SENT IAC WONT "+str$(asc(Right$(b$,1)))ă          END IFăă      END SELECTă   ELSEă      SELECT CASE B$ă         CASE SB           'negotiate sub optionsă            WHILE RIGHT$(B$,1) <> SEă              B$=B$+Socket.Read(SockNum,1)ă            WENDă            IF B$=TermTypeSB THENă              PRINT "REQUEST FOR TermType"ă              Socket.Write(SockNum, TermTypeInfo, LEN(TermTypeInfo))ă              PRINT "SENT TermType INFORMATIONă            ELSEă              PRINT "Unknown SUBOption... Ignoring"ă            END IFăă         CASE ELSEă            PRINT "Unknown Option...Ignoring"ăă      END SELECTă   END IFăă   ăEND SUBăBruno Schaefer                 ADDITIONAL MATH FUNCTIONS      bup.schaefer@planet-interkom.de08-17-00 (17:56)       RAPIDQ                 219  9915     RQ_MATH.INC '>>>>>>   rq_math.inc   Version 1.0 (08-2000)<<<<<<<<<<<<<<<<<<<<ă'##################################################ă'##   Rapid-Q Mathematics                        ##ă'##   written by Bruno Schäfer                   ##ă'##   <bup.schaefer@planet-interkom.de>          ##ă'##################################################ă'   !!!!    All angles are in radiant !!!  (BUT NOT THE FUNCTION DEG2RAD)ă'   If an ERROR occurs there will be a Messageboxă'   and the returned value is ZERO !!!!!ă' Rapid-Q - http://www.basicguru.com/abc/rapidq/ă'                 http://www.egroups.com/group/rapidqă' This .inc.-file  contains additional commonly used mathematical functionsă' and utilities (in addition to the standard mathematical functionsă' supported in William Yu's Rapid-Q)ă' This is a work in progress, so don't expect too much.ă' Try the functions you need for your work, accept them or throw them away...ă' ...but many thanks for ideas and remarks:ă' send an e-mail to (bup.schaefer@planet-interkom.de) or the rapidq-egroup.ă' planned functions perhaps  in next versions:' different round methods,ă' complex functions, vectoroperations, derivation, integral-functions,ă' statistical functions( in own $includes ???)...,ăCONST rqPI = 3.141592654 '(This is PI)ăCONST rqE = 2.718281828  '(This is e)ă'>>> declaration of the functions <<<ă'.....ă'###############################################################################ă'   ACOSH() returns the hyperbolic areacosine of xă'###############################################################################ăFunction ACOSH(value AS DOUBLE) AS DOUBLEă  SELECT CASE valueă   CASE IS < 1ă    MessageBox("Invalid Argument !!!", "ACOSH - Error", 0) ă   CASE IS >= 1ă    ACOSH =  ( LOG (value + SQR( value ^ 2 - 1 )))ă  END SELECTăEnd Functionă'###############################################################################ă'   ACOT() returns the arccotangent of xă'###############################################################################ăFunction ACOT(value AS DOUBLE) AS DOUBLEă ACOT = ((rqPI / 2) - ATAN (value))ăEnd Functionă'###############################################################################ă'   ACOTH() returns the hyperbolic areacotangent of xă'###############################################################################ăFunction ACOTH(value AS DOUBLE) AS DOUBLEă SELECT CASE ABS (value)ă  CASE IS > 1ă   ACOTH =  (LOG((value + 1) / (value - 1)) * 0.5)ă  CASE ELSE        ă   MessageBox("ERROR: Invalid Argument !!!", "ACOTH - Error", 0)     ă END SELECTăEnd Functionă'###############################################################################ă'   ACOSEC() returns the arccosecans of xă'###############################################################################ăFunction ACOSEC(value AS DOUBLE) AS DOUBLEă SELECT CASE ABS (value)ă  CASE IS < 1ă   MessageBox("Invalid Argument !!!", "ACOSEC - Error", 0) ă  CASE ELSE          ă   ACOSEC =  (ASIN(1/value))ă  END SELECT ăEnd Functionă'###############################################################################ă'   ACOSECH() returns the hyperbolic arccosecans of xă'###############################################################################ăFunction ACOSECH(value AS DOUBLE) AS DOUBLEă SELECT CASE ABS(value)ă  CASE = 0ă   MessageBox("Invalid Argument !!!", "ACOSECH - Error", 0) ă  CASE ELSE          ă   ACOSECH =  (ASINH(1 / value))ă END SELECT ăEnd Functionă'###############################################################################ă'   ASINH() returns the hyperbolic areasine of xă'###############################################################################ăFunction ASINH(value AS DOUBLE) AS DOUBLEă ASINH = LOG (value + (SQR(value * value + 1)))ăEnd Functionă'###############################################################################ă'   ASEC() returns the arccosecans of xă'###############################################################################ăFunction ASEC(value AS DOUBLE) AS DOUBLEă SELECT CASE ABS (value)ă  CASE IS < 1ă    MessageBox("ERROR:Invalid Argument !!!", "ASEC - Error", 0)ă  CASE ELSE          ă   ASEC =  (rqPI / 2 - ASIN( 1 / value))ă END SELECT ăEnd Functionă'###############################################################################ă'   ASECH() returns the hyperbolic arccosecans of xă'###############################################################################ăFunction ASECH(value AS DOUBLE) AS DOUBLEă SELECT CASE ABS (value)ă  CASE IS > 1ă   MessageBox("ERROR:Invalid Argument !!!", "ASECH - Error", 0) ă  CASE IS <= 0ă   MessageBox("ERROR:Invalid Argument !!!", "ASECH - Error", 0) ă  CASE ELSE          ă   ASECH = (ACOSH(1 / value))ă END SELECT ăEnd Functionă'###############################################################################ă'   ATANH() returns the hyperbolic areatangent of xă'###############################################################################ăFunction ATANH(value AS DOUBLE) AS DOUBLEă SELECT CASE ABS(value)ă  CASE IS < 1ă   ATANH = (LOG((1 + value) / (1 - value)) * 0.5)ă  CASE 0ă   COSH = 1ă  CASE ELSEă   MessageBox("ERROR:Invalid Argument !!!", "ATANH - Error", 0) ă END SELECTăEnd Function    ă'###############################################################################ă'   COSEC() returns the cosecans of xă'###############################################################################ăFunction COSEC(value AS DOUBLE) AS DOUBLEă COSEC = 1 / SIN(value)ăEnd Functionă'###############################################################################ă'   COSECH() returns the hyperbolic cosecans of xă'###############################################################################ăFunction COSECH(value AS DOUBLE) AS DOUBLEă COSECH = (2 / (EXP(value) - EXP(value * -1)))ăEnd Functionă'###############################################################################ă'   COSH() returns the hyperbolic cosine of xă'###############################################################################ăFunction COSH(value AS DOUBLE) AS DOUBLEă COSH = (0.5 * (EXP(value) + EXP(value * -1)))ă IF value = 0 THEN COSH = 1ăEnd Functionă'###############################################################################ă'   COT() returns the cotangent of xă'###############################################################################ăFunction COT(value AS DOUBLE) AS DOUBLEă COT = 1 / TAN(value)ăEnd Functionă'###############################################################################ă'   COTH() returns the hyperbolic cotangent of xă'###############################################################################ăFunction COTH(value AS DOUBLE) AS DOUBLEă SELECT CASE valueă  CASE 0ă   MessageBox("ERROR: Invalid Argument !!!", "COTH - Error", 0) ă  CASE ELSEă   COTH = COSH(value) / SINH(value)ă  END SELECT ăEnd Functionă'###############################################################################ă'   DEG2RAD() returns radians instead of degreesă'###############################################################################ăFunction DEG2RAD(value AS DOUBLE) AS DOUBLEă DEG2RAD = value * 0.017453ăEnd Functionă'###############################################################################ă'   FAC() returns the factorial of the integer xă'###############################################################################ăFunction FAC(value AS LONG) AS LONGă SELECT CASE valueă  CASE IS < 13  ă   N = value      ă   value = 1 ă    For I = 1 to Nă     value = value * Iă    NEXT I ă   FAC = valueă  CASE IS > 12ă   MessageBox("ERROR: Invalid Argument !!! Argument must <= 12!", "FAC - Error", 0)ă END SELECT  ăEnd Functionă'###############################################################################ă'   LOG10() returns the base 10 log of xă'###############################################################################ă Function LOG10(value AS DOUBLE) AS DOUBLEă  LOG10 = (LOG (value) * LOG(10 * rqE))ă End Functionă'###############################################################################ă'   RAD2DEG() returns degrees instead of radiansă'###############################################################################ăFunction RAD2DEG(value AS DOUBLE) AS DOUBLEă RAD2DEG = value / 0.017453ăEnd Functionă'###############################################################################ă'   SEC() returns the secans of xă'###############################################################################ăFunction SEC(value AS DOUBLE) AS DOUBLEă SEC = 1 / COS(value)ăEnd Functionă'###############################################################################ă'   SECH() returns the hyperbolic secans of xă'###############################################################################ăFunction SECH(value AS DOUBLE) AS DOUBLEă SECH = (2 / (EXP(value) + EXP(value * -1)))ă' SECH = 1/ COSH (value)ăEnd Functionă'###############################################################################ă'   SINH() returns the hyperbolic sine of xă'###############################################################################ăFunction SINH(value AS DOUBLE) AS DOUBLEă SINH = (0.5 * (EXP(value) - EXP(value * -1)))ă  IF value = 0 THEN SINH = 0ăEnd Function ă'###############################################################################ă'   TANH() returns the hyperbolic tangent of xă'###############################################################################ăFunction TANH(value AS DOUBLE) AS DOUBLEă  TANH = SINH(value) / COSH(value)ă   IF value = 0 THEN SINH = 0ăEnd Functionă'###############################################################################ă'>>>>> reserved words  <<<<<<ă'RQPI,RQE,ACOSH,ACOT, ACOSEC, ACOSECH, ASEC, ASECH, ATANH, COSEC, COSECH, COSH, COT, COTH, ă'FAC, LOG10, SEC, SECH, SINH, TANH, DEG2RAD, RAD2DEGăRudy Elyn                      SYSTEM CONFIGURATION PROGRAM   Rudy@vt4.net                   08-23-00 (20:20)       RAPIDQ                 198  5580     CONFIG.BAS  '*********************************************************************ă'* Here is a program i've made to configure the hardwareă'* on the computer becouse i've got some problem with my intenetă'* connectionmanager. I'll allways have to reset an error thată'* occur during turning off the computer. And i become to hate theă'* configurationscreen in 'settings' at the START button, so i decidedă'* to make one program to access it all and put it on my desktop.ă'* ă'* Written by Rudy Elyn (Rudy@VT4.NET) as example code for RAPIDQă'*ă'* PS the buttontext is in Dutch but i think it would not be problem toă'* translate it. I too found some example code to make this program at aă'* VB site somewhere on the net. ă'*********************************************************************ăă$INCLUDE "rapidq.inc"ă'$OPTION ICON "config1.ico"    ăăDECLARE SUB Tijd (Sender AS QBUTTON)ăDECLARE SUB InterNet (Sender AS QBUTTON)ăDECLARE SUB Modem (Sender AS QBUTTON)ăDECLARE SUB Applikatie (Sender AS QBUTTON)ăDECLARE SUB JoySt (Sender AS QBUTTON)ăDECLARE SUB Main1 (Sender AS QBUTTON)ăDECLARE SUB Main2 (Sender AS QBUTTON)ăDECLARE SUB Systeem (Sender AS QBUTTON)ăDECLARE SUB MMSysteem (Sender AS QBUTTON)ăDECLARE SUB NetCpl (Sender AS QBUTTON)ăDECLARE SUB Paswoord (Sender AS QBUTTON)ăDECLARE SUB Intl (Sender AS QBUTTON)ăDECLARE SUB MMSysteem2 (Sender AS QBUTTON)ăăCREATE Form AS QFORMă    Caption = "Systeem configuratie"ă    Width = 252ă    Height = 185ă    Centeră    DelBorderIcons = 2    'stay this sizeă    CREATE Button1 AS QBUTTONă        Caption = "Tijd en datum"ă        Left = 5ă        Top = 10ă        OnClick = Tijdă    END CREATEă    CREATE Button2 AS QBUTTONă        Caption = "Internet"ă        Left = 85ă        Top = 10ă        TabOrder = 1ă        OnClick = InterNetă    END CREATEă    CREATE Button3 AS QBUTTONă        Caption = "Modem"ă        Left = 165ă        Top = 10ă        TabOrder = 2ă        OnClick = Modemă    END CREATEă    CREATE Button4 AS QBUTTONă        Caption = "Software"ă        Left = 5ă        Top = 40ă        TabOrder = 3ă        OnClick = Applikatieă    END CREATEă    CREATE Button5 AS QBUTTONă        Caption = "Joystick"ă        Left = 85ă        Top = 40ă        TabOrder = 4ă        OnClick = JoyStă    END CREATEă    CREATE Button6 AS QBUTTONă        Caption = "Toetsenbord"ă        Left = 165ă        Top = 40ă        TabOrder = 5ă        OnClick = Main1ă    END CREATEă    CREATE Button7 AS QBUTTONă        Caption = "Muis"ă        Left = 5ă        Top = 70ă        TabOrder = 6ă        OnClick = Main2ă    END CREATEă    CREATE Button8 AS QBUTTONă        Caption = "Systeem"ă        Left = 85ă        Top = 70ă        TabOrder = 7ă        OnClick = Systeemă    END CREATEă    CREATE Button9 AS QBUTTONă        Caption = "Multimedia"ă        Left = 165ă        Top = 70ă        TabOrder = 8ă        OnClick = MMSysteemă    END CREATEă    CREATE Button10 AS QBUTTONă        Caption = "Netwerk"ă        Left = 5ă        Top = 100ă        TabOrder = 9ă        OnClick = NetCplă    END CREATEă    CREATE Button11 AS QBUTTONă        Caption = "Paswoord"ă        Left = 85ă        Top = 100ă        TabOrder = 10ă        OnClick = Paswoordă    END CREATEă    CREATE Button12 AS QBUTTONă        Caption = "Land"ă        Left = 165ă        Top = 100ă        TabOrder = 11ă        OnClick = Intlă    END CREATEă    CREATE Button13 AS QBUTTONă        Caption = "Geluiden"ă        Left = 5ă        Top = 130ă        TabOrder = 12ă        OnClick = MMSysteem2ă    END CREATEă    CREATE Button14 AS QBUTTONă        Caption = "?????"ă        Left = 85ă        Top = 130ă        TabOrder = 13ă        'OnClick = ă    END CREATEă    CREATE Button15 AS QBUTTONă        Caption = "?????"ă        Left = 165ă        Top = 130ă        TabOrder = 14ă        'OnClick = ă    END CREATEăEND CREATEăăForm.ShowModalăăăSUB Tijd (Sender AS QBUTTON)ă  dblReturn = SHELL("rundll32.exe shell32.dll,Control_RunDLL timedate.cpl", 4)ăEND SUBăăSUB InterNet (Sender AS QBUTTON)ă  dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL inetcpl.cpl,,0", 5)ăEND SUBăăSUB Modem (Sender AS QBUTTON)ă  dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL modem.cpl", 5)ăEND SUBăăSUB Applikatie (Sender AS QBUTTON)ă  dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,1", 5)ăEND SUBăăSUB JoySt (Sender AS QBUTTON)ă  dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL joy.cpl", 5)ăEND SUBăăSUB Main1 (Sender AS QBUTTON)ă  dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL main.cpl @1", 5)ăEND SUBăăSUB Main2 (Sender AS QBUTTON)ă  dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL main.cpl @0", 5)ăEND SUBăăSUB Systeem (Sender AS QBUTTON)ă  dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,0", 5)ăEND SUBăăSUB MMSysteem (Sender AS QBUTTON)ă  dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,0", 5)ăEND SUBăăSUB NetCpl (Sender AS QBUTTON)ă  dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL netcpl.cpl", 5)ăEND SUBăăSUB Paswoord (Sender AS QBUTTON)ă  dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL password.cpl", 5)ăEND SUBăăSUB Intl (Sender AS QBUTTON)ă  dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,0", 5)ăEND SUBăăSUB MMSysteem2 (Sender AS QBUTTON)ă  dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl @1", 5)ăEND SUBăThe ABC Programmer             DIRECTSOUND EXAMPLE            voxel@edmc.net                 08-28-00 (15:19)       RAPIDQ                 186  5145     DXSOUND.BAS '-- DirectSound example for Rapid-Q by William Yuăă$TYPECHECK ONă$INCLUDE "RAPIDQ.INC"ăăDECLARE SUB exitItemClick (sender AS QMENUITEM)ăDECLARE SUB openItemClick (sender AS QMENUITEM)ăDECLARE SUB formShow (sender AS QFORM)ăDECLARE SUB playButtonClick (sender AS QBUTTON)ăDECLARE SUB stopButtonClick (sender AS QBUTTON)ăDECLARE SUB positionTrackBarChange (sender AS QTRACKBAR)ăDECLARE SUB freqTrackBarChange (sender AS QTRACKBAR)ăDECLARE SUB volumeTrackBarChange (sender AS QTRACKBAR)ăDECLARE SUB panTrackBarChange (sender AS QTRACKBAR)ăăăCREATE form AS QFORMă    width = 360ă    height = 300ă    centeră    CREATE dxSound AS QDXSOUNDă    END CREATEă    CREATE mainMenu AS QMAINMENUă        CREATE fileMenu AS QMENUITEMă            caption = "&File"ă            CREATE openItem AS QMENUITEMă                caption = "&Open..."ă                onClick = openItemClickă            END CREATEă            CREATE breakItem1 AS QMENUITEMă                caption = "-"ă            END CREATEă            CREATE exitItem AS QMENUITEMă                caption = "E&xit"ă                onClick = exitItemClickă            END CREATEă        END CREATEă    END CREATEă    CREATE panTrackBar AS QTRACKBARă        left = 10ă        top = 10ă        width = 200ă        height = 30ă        tickStyle = tsManuală        min = -100ă        max = 100ă        onChange = panTrackBarChangeă        enabled = FALSEă    END CREATEă    CREATE panLabel AS QLABELă        left = 215ă        top = 20ă        caption = "Pan 0dB"ă    END CREATEă    CREATE volumeTrackBar AS QTRACKBARă        left = 10ă        top = 60ă        width = 200ă        height = 30ă        tickStyle = tsManuală        min = 0ă        max = 100ă        position = 100ă        onChange = volumeTrackBarChangeă        enabled = FALSEă    END CREATEă    CREATE volumeLabel AS QLABELă        left = 215ă        top = 70ă        caption = "Volume 100%"ă    END CREATEă    CREATE freqTrackBar AS QTRACKBARă        left = 10ă        top = 110ă        width = 200ă        height = 30ă        tickStyle = tsManuală        max = 44100ă        position = 22050ă        min = 0ă        onChange = freqTrackBarChangeă        enabled = FALSEă    END CREATEă    CREATE freqLabel AS QLABELă        left = 215ă        top = 120ă        caption = "Frequency 22050Hz"ă    END CREATEă    CREATE positionTrackBar AS QTRACKBARă        left = 10ă        top = 160ă        width = 200ă        height = 30ă        tickStyle = tsManuală        onChange = positionTrackBarChangeă        enabled = FALSEă    END CREATEă    CREATE positionLabel AS QLABELă        left = 215ă        top = 170ă        caption = "Position 0 / 0"ă    END CREATEă    CREATE playButton AS QBUTTONă        left = 30ă        top = 210ă        caption = "&Play"ă        enabled = FALSEă        onClick = playButtonClickă    END CREATEă    CREATE stopButton AS QBUTTONă        left = 110ă        top = 210ă        caption = "&Stop"ă        enabled = FALSEă        onClick = stopButtonClickă    END CREATEă    onShow = formShowă    showModalăEND CREATEăăăSUB formShow (sender AS QFORM)ă    panTrackBar.setTick(0)ă    volumeTrackBar.setTick(50)ă    freqTrackBar.setTick(22050)ă    dxSound.looped = FALSEăEND SUBăăSUB exitItemClick (sender AS QMENUITEM)ă    form.closeăEND SUBăăSUB openItemClick (sender AS QMENUITEM)ă    DIM openDialog AS QOPENDIALOGăă    openDialog.filter = "*.wav|*.wav"ă    IF openDialog.execute THENă        dxSound.fileName = openDialog.fileNameă        panTrackBar.enabled = TRUEă        volumeTrackBar.enabled = TRUEă        freqTrackBar.enabled = TRUEă        positionTrackBar.enabled = TRUEă        playButton.enabled = TRUEă        stopButton.enabled = TRUEă        positionTrackBar.position = 0ă        positionTrackBar.max = dxSound.sizeă        freqTrackBar.position = dxSound.frequencyă        freqTrackBarChange(freqTrackBar)ă        positionTrackBarChange(positionTrackBar)ă    END IFăEND SUBăăSUB playButtonClick (sender AS QBUTTON)ă    dxSound.playă    WHILE dxSound.playingă        doEventsă        positionTrackBar.position = dxSound.positionă        positionLabel.caption = "Position "+STR$(positionTrackBar.position)+" / "+STR$(dxSound.size)ă    WENDăEND SUBăăSUB stopButtonClick (sender AS QBUTTON)ă    dxSound.stopă    dxSound.position = 0ă    positionTrackBar.position = 0ăEND SUBăăSUB positionTrackBarChange (sender AS QTRACKBAR)ă    dxSound.position = sender.positionă    positionLabel.caption = "Position "+STR$(sender.position)+" / "+STR$(dxSound.size)ăEND SUBăăSUB freqTrackBarChange (sender AS QTRACKBAR)ă    dxSound.frequency = sender.positionă    freqLabel.caption = "Frequency "+STR$(sender.position)+"Hz"ăEND SUBăăSUB volumeTrackBarChange (sender AS QTRACKBAR)ă    dxSound.volume = sender.positionă    volumeLabel.caption = "Volume "+STR$(sender.position)+"%"ăEND SUBăăSUB panTrackBarChange (sender AS QTRACKBAR)ă    dxSound.pan = sender.positionă    panLabel.caption = "Pan "+STR$(sender.position)+"dB"ăEND SUBăRobert J. Tiess                THE CALCULATIONS STATION       rjtmusic@hotmail.com           08-28-00 (19:19)       RAPIDQ                 1170 32649    CALC.BAS    ' The Calculations Stationă' (beta version .01)ă' by Robert J. Tiessă' Copyright © 2000ă'ă' This program is FREEWARE!ă'ă' Author e-mail: rjtmusic@hotmail.comă' Author website: www.mp3.com/rjtăă$typecheck ONă$include "RAPIDQ.INC"ăă'Include icon at compile time as a resource fileă'to be restributed in the same .exe file as this program.ă'$resource calculationstationicon AS "calculationstation-icon.ico"ăă'Declare all the Subroutines and Button Click Event HandlersăDECLARE SUB PerformOperationsăDECLARE SUB KeyEntry (Key AS STRING)ăDECLARE SUB Button1Click (Sender AS QBUTTON)ăDECLARE SUB Button2Click (Sender AS QBUTTON)ăDECLARE SUB Button3Click (Sender AS QBUTTON)ăDECLARE SUB Button4Click (Sender AS QBUTTON)ăDECLARE SUB Button5Click (Sender AS QBUTTON)ăDECLARE SUB Button6Click (Sender AS QBUTTON)ăDECLARE SUB Button7Click (Sender AS QBUTTON)ăDECLARE SUB Button8Click (Sender AS QBUTTON)ăDECLARE SUB Button9Click (Sender AS QBUTTON)ăDECLARE SUB Button10Click (Sender AS QBUTTON)ăDECLARE SUB Button11Click (Sender AS QBUTTON)ăDECLARE SUB Button12Click (Sender AS QBUTTON)ăDECLARE SUB Button13Click (Sender AS QBUTTON)ăDECLARE SUB Button14Click (Sender AS QBUTTON)ăDECLARE SUB Button15Click (Sender AS QBUTTON)ăDECLARE SUB Button16Click (Sender AS QBUTTON)ăDECLARE SUB Button17Click (Sender AS QBUTTON)ăDECLARE SUB Button18Click (Sender AS QBUTTON)ăDECLARE SUB Button19Click (Sender AS QBUTTON)ăDECLARE SUB Button20Click (Sender AS QBUTTON)ăDECLARE SUB Button21Click (Sender AS QBUTTON)ăDECLARE SUB Button22Click (Sender AS QBUTTON)ăDECLARE SUB Button23Click (Sender AS QBUTTON)ăDECLARE SUB Button24Click (Sender AS QBUTTON)ăDECLARE SUB Button25Click (Sender AS QBUTTON)ăDECLARE SUB Button26Click (Sender AS QBUTTON)ăDECLARE SUB Button27Click (Sender AS QBUTTON)ăDECLARE SUB Button28Click (Sender AS QBUTTON)ăDECLARE SUB Button29Click (Sender AS QBUTTON)ăDECLARE SUB Button30Click (Sender AS QBUTTON)ăDECLARE SUB Button31Click (Sender AS QBUTTON)ăDECLARE SUB Button32Click (Sender AS QBUTTON)ăDECLARE SUB Button33Click (Sender AS QBUTTON)ăDECLARE SUB Button34Click (Sender AS QBUTTON)ăDECLARE SUB Button35Click (Sender AS QBUTTON)ăDECLARE SUB Button36Click (Sender AS QBUTTON)ăDECLARE SUB Button37Click (Sender AS QBUTTON)ăDECLARE SUB Button38Click (Sender AS QBUTTON)ăDECLARE SUB Button39Click (Sender AS QBUTTON)ăDECLARE SUB Button40Click (Sender AS QBUTTON)ăDECLARE SUB Button41Click (Sender AS QBUTTON)ăDECLARE SUB Button42Click (Sender AS QBUTTON)ăDECLARE SUB Button43Click (Sender AS QBUTTON)ăDECLARE SUB EqualButtonClick (Sender AS QBUTTON)ăDECLARE SUB SetFont (Sender AS QEDIT)ăDECLARE SUB ScrollToBottomăDECLARE SUB RadiansButtonClick (Sender AS QRADIOBUTTON)ăDECLARE SUB DegreesButtonClick (Sender AS QRADIOBUTTON)ăDECLARE SUB AboutClick (Sender AS QIMAGE)ăă'Create the Calculations Station interfaceăCREATE Form AS QFORMă    Caption = "The Calculations Station"ă    Width = 610ă    Height = 435ă    Centeră    Color = &hffe080  ' Customize the form's coloră    Cursor = crHandPoint  ' Set form cursor to a handă    BorderStyle = bsToolWindowă    'IcoHandle = calculationstationicon  ' Set iconă    CREATE CalcStatIcon AS QImageă        Left = 16ă        Top = 20ă        Autosize = Trueă        ICOHandle = calculationstationicon ' Show iconă        onClick = AboutClickă    END CREATEă    CREATE Label2 AS QLABELă        Caption = "The Calculations Station"ă        Left = 120ă        Top = 6ă        AutoSize = Trueă        Transparent = 1ă    END CREATEă    CREATE PoweredByRapidQ AS QLABELă        Caption = "FREEWARE * POWERED BY RAPID-Q"ă        Left = 410ă        Top = 384ă        AutoSize = Trueă        Transparent = 1ă    END CREATEă    CREATE edit1 AS QEDIT ' main number displayă        Text = "0"ă        Left = 120ă        Top = 24ă        Width = 200ă        Color = &hffffc0ă        Height = 29ă        MaxLength = 20ă        AutoSize = Trueă        ReadOnly = True ' user must click on # buttonsă        OnChange = SetFont ' on change reset font to Arială    END CREATEă    CREATE Button1 AS QBUTTONă        Caption = "CLEAR ALL"ă        Left = 16ă        Top = 104ă        OnClick = Button1Clickă        taborder = 1ă        Cursor = crHandPointă    END CREATEă    CREATE Button2 AS QBUTTONă        Caption = "&1"ă        Left = 120ă        Top = 160ă        Width = 51ă        Height = 41ă        OnClick = Button2Clickă    END CREATEă    CREATE Button3 AS QBUTTONă        Caption = "&2"ă        Left = 176ă        Top = 160ă        Width = 51ă        Height = 41ă        OnClick = Button3Clickă    END CREATEă    CREATE Button4 AS QBUTTONă        Caption = "&3"ă        Left = 232ă        Top = 160ă        Width = 51ă        Height = 41ă        OnClick = Button4Clickă    END CREATEă    CREATE Button5 AS QBUTTONă        Caption = "&4"ă        Left = 120ă        Top = 112ă        Width = 51ă        Height = 41ă        OnClick = Button5Clickă    END CREATEă    CREATE Button6 AS QBUTTONă        Caption = "&5"ă        Left = 176ă        Top = 112ă        Width = 51ă        Height = 41ă        OnClick = Button6Clickă    END CREATEă    CREATE Button7 AS QBUTTONă        Caption = "&6"ă        Left = 232ă        Top = 112ă        Width = 51ă        Height = 41ă        OnClick = Button7Clickă    END CREATEă    CREATE Button8 AS QBUTTONă        Caption = "&7"ă        Left = 120ă        Top = 64ă        Width = 51ă        Height = 41ă        OnClick = Button8Clickă    END CREATEă    CREATE Button9 AS QBUTTONă        Caption = "&8"ă        Left = 176ă        Top = 64ă        Width = 51ă        Height = 41ă        OnClick = Button9Clickă    END CREATEă    CREATE Button10 AS QBUTTONă        Caption = "&9"ă        Left = 232ă        Top = 64ă        Width = 51ă        Height = 41ă        OnClick = Button10Clickă    END CREATEă    CREATE Button11 AS QBUTTONă        Caption = "&0"ă        Left = 120ă        Top = 208ă        Width = 51ă        Height = 41ă        OnClick = Button11Clickă    END CREATEă    CREATE Button12 AS QBUTTONă        Caption = "+ ADD"ă        Left = 312ă        Top = 64ă        Height = 41ă        OnClick = Button12Clickă    END CREATEă    CREATE Button13 AS QBUTTONă        Caption = "- SUB"ă        Left = 312ă        Top = 112ă        Height = 41ă        OnClick = Button13Clickă    END CREATEă    CREATE Button14 AS QBUTTONă        Caption = "X MUL"ă        Left = 312ă        Top = 160ă        Height = 41ă        OnClick = Button14Clickă    END CREATEă    CREATE Button15 AS QBUTTONă        Caption = "/ DIV"ă        Left = 312ă        Top = 208ă        Height = 41ă        OnClick = Button15Clickă    END CREATEă    CREATE Button16 AS QBUTTONă        Caption = "M-STORE"ă        Left = 16ă        Top = 144ă        OnClick = Button16Clickă    END CREATEă    CREATE Button17 AS QBUTTONă        Caption = "M-READ"ă        Left = 16ă        Top = 184ă        OnClick = Button17Clickă    END CREATEă    CREATE Button18 AS QBUTTONă        Caption = "M-CLEAR"ă        Left = 16ă        Top = 224ă        OnClick = Button18Clickă    END CREATEă    CREATE Button19 AS QBUTTONă        Caption = "."ă        Left = 176ă        Top = 208ă        Width = 30ă        Height = 41ă        OnClick = Button19Clickă    END CREATEă    CREATE Button20 AS QBUTTONă        Caption = "+/-"ă        Left = 212ă        Top = 208ă        Width = 36ă        Height = 41ă        OnClick = Button20Clickă    END CREATEă    CREATE EqualButton AS QBUTTONă        Caption = "="ă        Left = 253ă        Top = 208ă        Width = 30ă        Height = 41ă        OnClick = EqualButtonClickă    END CREATEă    CREATE Button21 AS QBUTTONă        Caption = "SIN"ă        Left = 80ă        Top = 264ă        Width = 51ă        Height = 33ă        OnClick = Button21Clickă    END CREATEă    CREATE Button22 AS QBUTTONă        Caption = "COS"ă        Left = 144ă        Top = 264ă        Width = 51ă        Height = 33ă        OnClick = Button22Clickă    END CREATEă    CREATE Button23 AS QBUTTONă        Caption = "ASIN"ă        Left = 80ă        Top = 304ă        Width = 51ă        Height = 33ă        OnClick = Button23Clickă    END CREATEă    CREATE Button24 AS QBUTTONă        Caption = "ACOS"ă        Left = 144ă        Top = 304ă        Width = 51ă        Height = 33ă        OnClick = Button24Clickă    END CREATEă    CREATE Button25 AS QBUTTONă        Caption = "TAN"ă        Left = 208ă        Top = 264ă        Width = 51ă        Height = 33ă        OnClick = Button25Clickă    END CREATEă    CREATE Button26 AS QBUTTONă        Caption = "ATAN"ă        Left = 208ă        Top = 304ă        Width = 51ă        Height = 33ă        OnClick = Button26Clickă    END CREATEă    CREATE Button27 AS QBUTTONă        Caption = "BINARY"ă        Left = 272ă        Top = 344ă        Width = 51ă        Height = 33ă        OnClick = Button27Clickă    END CREATEă    CREATE Button28 AS QBUTTONă        Caption = "EXP"ă        Left = 16ă        Top = 264ă        Width = 51ă        Height = 33ă        OnClick = Button28Clickă    END CREATEă    CREATE Button29 AS QBUTTONă        Caption = "FIX"ă        Left = 272ă        Top = 264ă        Width = 51ă        Height = 33ă        OnClick = Button29Clickă    END CREATEă    CREATE Button30 AS QBUTTONă        Caption = "MOD"ă        Left = 272ă        Top = 304ă        Width = 51ă        Height = 33ă        OnClick = Button30Clickă    END CREATEă    CREATE Button31 AS QBUTTONă        Caption = "LOG"ă        Left = 16ă        Top = 344ă        Width = 51ă        Height = 33ă        OnClick = Button31Clickă    END CREATEă    CREATE Button32 AS QBUTTONă        Caption = "RND#"ă        Left = 208ă        Top = 344ă        Width = 51ă        Height = 33ă        OnClick = Button32Clickă    END CREATEă    CREATE Button33 AS QBUTTONă        Caption = "HEX"ă        Left = 80ă        Top = 344ă        Width = 51ă        Height = 33ă        OnClick = Button33Clickă    END CREATEă    CREATE Button34 AS QBUTTONă        Caption = "ROUND"ă        Left = 144ă        Top = 344ă        Width = 51ă        Height = 33ă        OnClick = Button34Clickă    END CREATEă    CREATE Button35 AS QBUTTONă        Caption = "SQRT"ă        Left = 16ă        Top = 304ă        Width = 51ă        Height = 33ă        OnClick = Button35Clickă    END CREATEă    CREATE Button36 AS QBUTTONă        Caption = "1/X"ă        Left = 336ă        Top = 264ă        Width = 51ă        Height = 33ă        OnClick = Button36Clickă    END CREATEă    CREATE Button41 AS QBUTTONă        Caption = "X ^ Y"ă        Left = 336ă        Top = 304ă        Width = 51ă        Height = 33ă        OnClick = Button41Clickă    END CREATEă    CREATE Button42 AS QBUTTONă        Caption = "CLEAR"ă        Left = 16ă        Top = 64ă        OnClick = Button42Clickă    END CREATEă    CREATE Button43 AS QBUTTONă        Caption = "PI"ă        Left = 336ă        Top = 344ă        Width = 51ă        Height = 33ă        OnClick = Button43Clickă    END CREATEă    CREATE ModeLabel AS QLABELă        Caption = "MODE:"ă        Left = 18ă        Top = 384ă        Width = 100ă        Transparent = 1ă    END CREATEă    CREATE RadiansButton AS QRADIOBUTTONă        Caption = "Radians"ă        Checked = Trueă        Left = 70ă        Top = 384ă        Width = 73ă        ShowHint = 1ă        Hint = "Results in Radians"ă        OnClick = RadiansButtonClickă    END CREATEă    CREATE DegreesButton AS QRADIOBUTTONă        Caption = "Degrees"ă        Left = 140ă        Top = 384ă        Width = 73ă        ShowHint = 1ă        Hint = "Results in Degrees"ă        OnClick = DegreesButtonClickă    END CREATEă    CREATE Label1 AS QLABELă        Caption = "Calculations History Window"ă        Left = 410ă        Top = 8ă        Width = 136ă        Transparent = 1ă    END CREATEă    CREATE RichEdit1 AS QRICHEDITă        Left = 410ă        Top = 24ă        Width = 180ă        Height = 310ă        Color = &hffffc0ă        ScrollBars = ssVerticală        HideScrollBars = False ' Show the scroll bară        Wordwrap = Trueă        ReadOnly = Trueă        PlainText = True ă    END CREATEă    CREATE Button37 AS QBUTTONă        Caption = "Copy"ă        Left = 410ă        Top = 344ă        Width = 40ă        Height = 33ă        OnClick = Button37Clickă    END CREATEă    CREATE Button38 AS QBUTTONă        Caption = "Save"ă        Left = 455ă        Top = 344ă        Width = 40ă        Height = 33ă        OnClick = Button38Clickă    END CREATEă    CREATE Button39 AS QBUTTONă        Caption = "Print"ă        Left = 500ă        Top = 344ă        Width = 40ă        Height = 33ă        OnClick = Button39Clickă    END CREATEă    CREATE Button40 AS QBUTTONă        Caption = "Clear"ă        Left = 545ă        Top = 344ă        Width = 40ă        Height = 33ă        OnClick = Button40Clickă    END CREATEăEND CREATEăă' Import the SetFocus function from USER32.DLLă' - used to set remote active focus on theă'   Calculations History window (a RichEdit area)ă'   so contents may be scrolled to the endă'   via RichEdit1.SelStart (set to end of contents)ăDECLARE FUNCTION SetFocus LIB "USER32.DLL" ALIAS "SetFocus" _ă                (hwnd AS LONG) AS LONGăă' Declare all variables to be used.  VARIANTS areă' used here to allow for greatest flexibilityă' in floating point/long/integer operationsăDIM value as VARIANTă    value = 0ăDIM total AS VARIANTă    total = 0ăDIM entry AS VARIANTă    entry = 0ăDIM entry2 AS VARIANTă    entry2 = 0ăDIM memory AS VARIANTă    memory = 0ăDIM totaltext AS STRINGă    totaltext = ""ăDIM entrytext AS VARIANTă    entrytext = ""ăDIM lastop as INTEGERă    lastop = 0ăDIM negative as INTEGERă    negative = 0ăDIM newentry as INTEGERă    newentry = 1ăDIM radiansordegrees AS VARIANTă    radiansordegrees = 1 'default is radiansăă' Set main Form and History Window fonts to ArialăDIM TextFont AS QFONTă    TextFont.Name = "Arial"ă    TextFont.AddStyles(fsBold)ă    TextFont.Size = 15ăDIM TextFont2 AS QFONTă    TextFont2.Name = "Arial"ă    TextFont2.AddStyles(fsBold)ă    TextFont2.Size = 8ăDIM ImageList AS QImageListăă' Set the Font where the numbers are displayedăSUB SetFont (Sender AS QEDIT)ă    edit1.Font = TextFontă    form.repaintăEND SUBăăSUB Button1Click (Sender AS QBUTTON)ă'clear all operationsă    lastop = 0ă    total = 0ă    entry = 0ă    entry2 = 0ă    edit1.text = "0"ă    RichEdit1.AddString ("")ă    RichEdit1.AddString ("** CLEAR ALL **")ă    RichEdit1.AddString ("SUBTOTAL RESET TO: 0")ă    RichEdit1.AddString ("")ă    newentry = 1ăEND SUBăă' Handle virtual keypad operationsăSUB KeyEntry (Key AS STRING)ă    SetFocus(edit1.Handle)ă    if newentry = 1 then edit1.text = ""ă    if edit1.text = "0" or edit1.text = "-0" then edit1.text = ""ă    if len(edit1.text) < 9 thenă        entrytext = edit1.textă        entrytext = entrytext + Keyă        edit1.text = entrytextă    end ifă    newentry = 0ăEND SUBăă' Scroll to end of History WindowăSUB ScrollToBottom (SENDER AS QRICHEDIT)ă    SetFocus(RichEdit1.Handle)ă    RichEdit1.SelStart = LEN(RichEdit1.text)ăEND SUBăă' Handle number entryăSUB Button2Click (Sender AS QBUTTON)ă'1ă    KeyEntry("1")ăEND SUBăăSUB Button3Click (Sender AS QBUTTON)ă'2ă    KeyEntry("2")ăEND SUBăăSUB Button4Click (Sender AS QBUTTON)ă'3ă    KeyEntry("3")ăEND SUBăăSUB Button5Click (Sender AS QBUTTON)ă'4ă    KeyEntry("4")ăEND SUBăăSUB Button6Click (Sender AS QBUTTON)ă'5ă    KeyEntry("5")ăEND SUBăăSUB Button7Click (Sender AS QBUTTON)ă'6ă    KeyEntry("6")ăEND SUBăăSUB Button8Click (Sender AS QBUTTON)ă'7ă    KeyEntry("7")ăEND SUBăăSUB Button9Click (Sender AS QBUTTON)ă'8ă    KeyEntry("8")ăEND SUBăăSUB Button10Click (Sender AS QBUTTON)ă'9ă    KeyEntry("9")ăEND SUBăăSUB Button11Click (Sender AS QBUTTON)ă'0ă    KeyEntry("0")ăEND SUBăă' Perform all mathematical operationsăSUB PerformOperationsă    entrytext = edit1.textă    ' Zero is used here and below to scope VARIANTă    ' to numerical rather than string operations:ă    entry2 = 0 + entrytextă    select case lastopă        case 1ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("ADDING " + str$(entry2))ă            RichEdit1.AddString ("TO " + str$(entry))ă            total = 0 + entry + entry2ă            entry = totală            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(total)ă        case 2ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("SUBTRACTING " + str$(entry2))ă            RichEdit1.AddString ("FROM " + str$(entry))ă            total = 0 + entry - entry2ă            entry = totală            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(total)ă        case 3ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("MULTIPLYING " + str$(entry))ă            RichEdit1.AddString ("WITH " + str$(entry2))ă            total = 0 + (entry * entry2)ă            entry = totală            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(total)ă        case 4ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("DIVIDING " + str$(entry))ă            RichEdit1.AddString ("BY " + str$(entry2))ă            total = 0 + (entry / entry2)ă            entry = totală            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(total)ă        case 5ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("SIN " + str$(entry))ă            entry = SIN(entry * radiansordegrees) ă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 6ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("COS " + str$(entry))ă            entry = COS(entry * radiansordegrees)ă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 7ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("ASIN " + str$(entry))ă            entry = ASIN(entry * radiansordegrees)ă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 8ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("ACOS " + str$(entry))ă            entry = ACOS(entry) * radiansordegreesă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 9ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("TAN " + str$(entry))ă            entry = TAN(entry * radiansordegrees)ă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 10ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("ATAN " + str$(entry))ă            entry = ATAN(entry * radiansordegrees)ă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 11ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("BIN " + str$(entry))ă            entry = BIN$(ABS(entry)) ' stringă            RichEdit1.AddString ("RESULT:" + entry)ă            totaltext = entryă        case 12ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("EXP " + str$(entry))ă            entry = EXP(entry)ă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 13ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("FIX " + str$(entry))ă            entry = FIX(entry)ă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 14ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("MOD " + str$(entry) + "/" + str$(entry2))ă            total = 0 + (entry MOD entry2)ă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 15ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("LOG " + str$(entry))ă            entry = LOG(entry)ă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 16ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("RND " + str$(entry))ă            entry = RNDă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 17ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("ROUND " + str$(entry))ă            entry = ROUND(entry)ă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 18ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("SQR " + str$(entry))ă            entry = SQR(entry)ă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 19ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("1/x " + str$(entry))ă            entry = 0 + (1/entry)ă            total = entryă            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(entry)ă        case 20ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("RAISING " + str$(entry))ă            RichEdit1.AddString ("TO THE POWER OF " + str$(entry2))ă            total = 0 + (entry ^ entry2)ă            entry = totală            RichEdit1.AddString ("NEW SUBTOTAL:" + str$(total))ă            totaltext = str$(total)ă        case 21ă            RichEdit1.AddString ("")ă            RichEdit1.AddString ("SUBTOTAL: " + str$(total))ă            RichEdit1.AddString ("HEX " + str$(entry))ă            entry = HEX$(entry) ' stringă            RichEdit1.AddString ("RESULT:" + entry)ă            totaltext = entryă    end selectă    edit1.text = totaltextă    lastop = 0ă    newentry = 1ă    ScrollToBottomăEND SUBăă' Functions to follow handle all mathematicală' operations as user clicks buttons.ă' Sometimes a user will perform several calculationsă' in a row before clicking EQUALS, so lastop is usedă' here so PerformOperations knows what operation wasă' last operation (e.g. addition, multiplication) wasă' being performed, if any.ăăSUB Button12Click (Sender AS QBUTTON)ă'+ă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 1ăEND SUBăăSUB Button13Click (Sender AS QBUTTON)ă'-ă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 2ăEND SUBăăSUB Button14Click (Sender AS QBUTTON)ă'Xă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 3ăEND SUBăăSUB Button15Click (Sender AS QBUTTON)ă' /ă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 4ăEND SUBăăSUB EqualButtonClick (Sender AS QBUTTON)ă'=ă    PerformOperationsăEND SUBăă' Store a number in memoryăSUB Button16Click (Sender AS QBUTTON)ă'm-storeă    entrytext = edit1.textă    entry = val(entrytext)ă    memory = entryăEND SUBăă' Read number stored in memory; zero if none storedăSUB Button17Click (Sender AS QBUTTON)ă'm-readă    edit1.text = str$(memory)ă    entry = memoryăEND SUBăă' Clear memory (memory = zero)ăSUB Button18Click (Sender AS QBUTTON)ă'm-cleară    memory = 0ăEND SUBăă' Handle the decimal buttonăSUB Button19Click (Sender AS QBUTTON)ă' . decă    if newentry = 1 then edit1.text = ""ă    entrytext = edit1.textă    entrytext = entrytext - "."ă    if len(entrytext) > 0 thenă        entrytext = entrytext + "."ă        elseă        entrytext = "."ă    end ifă    edit1.text = entrytextă    newentry = 0ăEND SUBăă'Handle the positive/negative toggle buttonăSUB Button20Click (Sender AS QBUTTON)ă' +/-ă    entrytext = edit1.textă    entrytext = entrytext - "-"ă    if negative = 0 thenă        entrytext = "-" + entrytextă        negative = 1ă        elseă        negative = 0ă        edit1.text = entrytextă        entry = val(entrytext)ă    end ifă    edit1.text = entrytextăEND SUBăă' More native Rapid-Q mathematical functionsăSUB Button21Click (Sender AS QBUTTON)ă'sină    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 5ă    PerformOperationsăEND SUBăăSUB Button22Click (Sender AS QBUTTON)ă'cosă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 6ă    PerformOperationsăEND SUBăăSUB Button23Click (Sender AS QBUTTON)ă'asină    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 7ă    PerformOperationsăEND SUBăăSUB Button24Click (Sender AS QBUTTON)ă'acosă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 8ă    PerformOperationsăEND SUBăăSUB Button25Click (Sender AS QBUTTON)ă'tană    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 9ă    PerformOperationsăEND SUBăăSUB Button26Click (Sender AS QBUTTON)ă'atană    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 10ă    PerformOperationsăEND SUBăăSUB Button27Click (Sender AS QBUTTON)ă'convert to binaryă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 11ă    PerformOperationsăEND SUBăăSUB Button28Click (Sender AS QBUTTON)ă'exp/eă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 12ă    PerformOperationsăEND SUBăăSUB Button29Click (Sender AS QBUTTON)ă'fixă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 13ă    PerformOperationsăEND SUBăăSUB Button30Click (Sender AS QBUTTON)ă'modă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 14ăEND SUBăăSUB Button31Click (Sender AS QBUTTON)ă'logă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 15ă    PerformOperationsăEND SUBăăSUB Button32Click (Sender AS QBUTTON)ă'Produce a random number - actually a decimală'between 0 and 1 as no Upper Bound has been setă    randomizeă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 16ă    PerformOperationsăEND SUBăăSUB Button34Click (Sender AS QBUTTON)ă'roundă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 17ă    PerformOperationsăEND SUBăăSUB Button35Click (Sender AS QBUTTON)ă'sqrtă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 18ă    PerformOperationsăEND SUBăăSUB Button36Click (Sender AS QBUTTON)ă'1/xă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 19ă    PerformOperationsăEND SUBăăSUB Button43Click (Sender AS QBUTTON)ă'Produce the value of pi (using 3.1415927)ă    entry = 3.1415927ă    edit1.text = "3.1415927"ă    lastop = 0ăEND SUBăăSUB Button41Click (Sender AS QBUTTON)ă'X ^ Y  (raise X to the power of Y)ă    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 20ăEND SUBăăSUB Button33Click (Sender AS QBUTTON)ă'convert to hexadecimală    if lastop > 0 then PerformOperationsă    entrytext = edit1.textă    entry = val(entrytext)ă    edit1.text = ""ă    lastop = 21ă    PerformOperationsăEND SUBăă'Two radio buttons toggle the degrees/radiansă'that will affect functions like Sin and CosăSUB RadiansButtonClick (Sender AS QRADIOBUTTON)ă'results in radiansă    DegreesButton.Checked = Falseă    RadiansButton.Checked = Trueă    radiansordegrees = 1ăEND SUBăăSUB DegreesButtonClick (Sender AS QRADIOBUTTON)ă'results in degreesă    DegreesButton.Checked = Trueă    RadiansButton.Checked = Falseă    radiansordegrees = (3.1415927 / 180)ăEND SUBăă'HISTORY WINDOW FUNCTIONSăSUB Button37Click (Sender AS QBUTTON)ă'copy history window text to clipboardă    RichEdit1.SelStart = 0ă    RichEdit1.SelLength = LEN(RichEdit1.text)ă    RichEdit1.CopyToClipboardă    RichEdit1.SelStart = 0ă    RichEdit1.SelLength = 0ăEND SUB    ăăSUB Button38Click (Sender AS QBUTTON)ă'save history window text to a text (.txt) file ă      dim SaveDialog AS QSaveDialogă      SaveDialog.Filter = "Text Files|*.txt"ă      SaveDialog.FilterIndex = 0ă      if SaveDialog.Execute THENă        if FileExists(SaveDialog.FileName) THENă            if MessageBox("FILE ALREADY EXISTS!  Are you sure you want to overwrite it?", "Close", 1) = 1 THENă                RichEdit1.SaveToFile(SaveDialog.FileName)ă            end ifă        elseă            RichEdit1.SaveToFile(SaveDialog.FileName)ă        end ifă      end ifăEND SUBăăSUB Button39Click (Sender AS QBUTTON)ă'print history window textă    if MessageBox("Print contents of Calculation History window.  Turn printer on and click OK to proceed or CANCEL.", "CANCEL", 1) = 1 THENă        LPRINT RichEdit1.textă        LFLUSHă    end ifăEND SUBăăSUB Button40Click (Sender AS QBUTTON)ă'clear history text ă    RichEdit1.text = ""ăEND SUBăăSUB Button42Click (Sender AS QBUTTON)ă'clear the current numbered entered.ă'does not clear total.ă    entry = 0ă    edit1.text = ""ăEND SUBăăSUB AboutClick (Sender AS QIMAGE)ă'show an About This Program messageă'if user clicks the iconă    showmessage "The Calculations Station (beta version .01) was created by Robert J. Tiess © 2000." + chr$(13) + chr$(13) + "THIS PROGRAM IS FREEWARE AND IS POWERED BY RAPID-Q."ăEND SUBăă'Set the fonts and start the program!ăSetFont(edit1)ăForm.Font = TextFont2ăForm.ShowModalăWolfgang Kempin                RAPID-Q E-MAIL FUNCTIONS       wolfgang.kempin@epost.de       10-18-00 (21:05)       RAPIDQ                 568  25605    MAIL.BAS    ' **************************************ă' * RQ/mail - Rapid-Q e-mail functions * Version 1.99d [BETA]ă' **************************************ă' coded by Wolfgang 'DarkWulf' Kempin <wolfgang.kempin@gmx.de>ă'ă' <<< Feel free to use this code (or parts of it) in your programs :) >>>ă'ă' - RQ/mail was formerly known as 'Express Mailer'ă' - There is almost no POP3 support at the moment :(ă' - See demo code at the end of the programă'ă' =============================================================================ă'ă' - WARNING: Don't try to send e-mails to multiple recipients (multiple TOs/CCs/ă'    ! ! !   BCCs) -- I have to rewrite that part first; it's too buggy ;(ă'            (some mails will be sent and some not)ă'ă' <<< BETA VERSION - still a lot of bugs in it >>>ă' <<< I'm not responsible for what you do with >>>ă' <<< this code. This project is in a very     >>>ă' <<< early stage; you have been warned ;-)    >>>ă'ă' =============================================================================ă'ă' Versionsă' --------ă'ă' Date*    Version Change Description              [* = date format DD/MM/YY]ă' ??/??/99   1.00     +   First complete and working versionă' ??/??/99   1.01     +   Fixed '555 Syntax error' when sending mailsă' 03/10/00   1.05     +   Fix: Mails were sent with empty bodyă'                         (only the subject was there)ă' 04/10/00   1.99     +   Decided to rework on the project upon public demand ;)ă'                     +   Complete rewrite of the programă'                    <i>  RENAMED to RQ/mailă'                     +   Splitted the project up into the RQ/mail functionsă'                         and a sample mailer program (not yet done)ă'                     +   All further versions will be tested on Linux, too :)ă' 10/10/00   1.99b    +   Added a simple POP-before-SMTP functionă'                     +   Corrected multi-line SMTP reply bugă'                         (not the POP multi-line replys... but the onlyă'                         POP3 function yet is the POP3beforeSMTP, and thereă'                         will hardly be multi-line replys when just logging in)ă' 11/10/00   1.99c    +   Reduced code size a bită' 21/10/00   1.99d    +   Fixed: tried to send e-mails with emtpy strings asă'                         destinationă'                     +   First working Linux versionă'                    <i>  First public release after a _very_ long timeă'ă' To do/plans for this project:ă' -----------------------------ă'ă' Priority Descriptionă'    1     create sample maileră'    2     add basic POP3 support to get complete RQ/mail libraryă'    3     add support to exclude unused functionsă'    4     change RQmail_SendMail function to just send the e-mails to allă'          addresses at once (and not one e-mail to each address)ă'    5     documentationă'    9     MIME support?ă'    ?     a better interfaceă'    ?     write a complete mail program (sth. like OE, but much better ;-)ă'ă' =============================================================================ă' This library is far from being complete but I think you can already use ită' for some simple tasks. If you've got any questions, want to report bugs oră' have an idea how this library could be improved feel free to mail me ată' <wolfgang.kempin@gmx.de>.ă' =============================================================================ă' Known bugs: (in brackets: state of the function)ă'ă' RQmail_SendRaw:           * none at the moment, seems to be OKă' [WORKING]ă'ă' RQmail_SendMail:          * no format checking is done with the TO$/CC$/BCC$ă' [BUGGY, but working]        variables yetă'                           * multiple recipients don't really work yetă'ă' POP3beforeSMTP:           * no multi-line replys supported yet (but thereă' [UNTESTED]                  will hardly be such replies when you areă'                             just logging in [IMO])ă'                           * has not been tested very muchă'ă' =============================================================================ăăDIM RQmail_Error AS STRING                       ' Global error variableăă' POP3ăDECLARE FUNCTION POP3beforeSMTP (server$, username$, passwd$) AS INTEGERăă' SMTPăDECLARE FUNCTION RQmail_SendMail (from$, to$, cc$, bcc$, priority AS INTEGER, subject$, text$, server$) AS STRINGăDECLARE FUNCTION RQmail_SendRaw (smtp_server$, email_from$, email_to$, content$) AS INTEGERăă' =============================================================================ă' === SMTP support - Send e-mails                                           ===ă' =============================================================================ăă' -----------------------------------------------------------------------------ă' | Function RQmail_SendMail(from$, to$, cc$, bcc$, prior, subject$, text$)   |ă' -----------------------------------------------------------------------------ă' | Send an e-mail to the specified addresses (including cc's and bcc's! :)   |ă' -----------------------------------------------------------------------------ă' | from$ :=       full name and e-mail address of the person sending the     |ă' |                e-mail (format: see below)                                 |ă' | to$ :=         dito for the recipients, but you can add more than one here|ă' | cc$ :=         dito for the 'carbon' copies                               |ă' | bcc$ :=        dito...                                                    |ă' | prior :=       priority { 0 = low; 1 = normal; 2 = high; }                |ă' | subject$ :=    subject of the e-mail                                      |ă' | text$ :=       the content of the e-mail                                  |ă' -----------------------------------------------------------------------------ă' | from$, to$ and cc$ have to be in the following format:                    |ă' | "Mr. Smith <mr.smith@somewhere.com>"                                      |ă' | for multiple reciepients you can add several addresses separated by       |ă' | semicolons (';'):                                                         |ă' | "Mark <see@above.com>;John <j@ohn.net>;bob@cheap.mail.org; . . ."         |ă' -----------------------------------------------------------------------------ă' | Returns 0 if there were no errors, 1 if some e-mails could not be sent and|ă' | 2 if NO e-mail could be sent.                                             |ă' =============================================================================ăăFUNCTION RQmail_SendMail (from$, to$, cc$, bcc$, priority AS INTEGER, subject$, text$, server$) AS INTEGERă   DIM eml AS STRING 'contains the e-mailă   DIM cl AS STRING 'cl will be set to <CR>+<LF>ăă   DIM a AS INTEGER 'counteră   DIM em AS STRING 'one extracted e-mail addressă   DIM ret AS INTEGER 'return codeă   DIM errtmp AS STRING 'temporary error stackăă   DIM m_all AS INTEGER ' count of all mailsă   DIM m_err AS INTEGER ' number of mails which could not be sentăă   ' ---=== FIRST STEP: Create a valid e-mail with a correct header ===---ă   ă   cl = CHR$(13) + CHR$(10) '= <CR>+<LF>ăă   eml = "From: " + from$ +cl '###!!!### TO DO: add format checking hereă   eml = eml + "To: " + to$ +clă   eml = eml + "Cc: " + cc$ +clă                              '###!!!### TO DO: add date info hereă   eml = eml + "Subject: " + subject$ +clă   eml = eml + "X-Mailer: RQ/mail version 2.0" +clă   IF priority = 0 THENă      eml = eml + "X-Priority: 5" +clă      eml = eml + "X-MSMail-Priority: Low" +clă   ELSEIF priority = 1 THENă      eml = eml + "X-Priority: 3" +clă      eml = eml + "X-MSMail-Priority: Normal" +clă   ELSEIF priority = 2 THENă      eml = eml + "X-Priority: 1" +clă      eml = eml + "X-MSMail-Priority: High" +clă   ELSEă      eml = eml + "X-Priority: 3" +clă      eml = eml + "X-MSMail-Priority: Normal" +clă   END IFă   ă   eml = eml +clă   eml = eml + text$ă   ' ---=== SECOND STEP: Send the e-mail ===---ăă   IF INSTR(to$, ";") = 0 THEN to$ = to$ + ";"ă   IF INSTR(cc$, ";") = 0 THEN cc$ = cc$ + ";"ă   IF INSTR(bcc$, ";") = 0 THEN bcc$ = bcc$ + ";"ăă   'Now extract all e-mail addresses from to$, cc$ and bcc$ and sendă   'a copy to each one. If an error is encountered, the process willă   'continue; all errors will be logged to RQmail_Error.ăă   '###!!!### change this soon -- this takes much too long, why not useă   '          multiple "RCPT TO:<>" 's in one session?ăă   errtmp = ""ă   m_all = 0ă   m_err = 0ăă   '>> TO$ă   FOR A = 1 TO TALLY(to$, ";")+1ă      em = FIELD$(FIELD$(to$, ";", A), "<", 2) 'automatically strips of '<'ă      em = MID$(em, 1, LEN(em) - 1)            'now get rid of the '>'ăă      IF em = "" THEN em = FIELD$(to$, ";", A)  'no name given, just a plain e-mail addressăă      IF em <> "" THEN ret = RQmail_SendRaw(server$, MID$(FIELD$(from$, "<", 2), 1, LEN(FIELD$(from$, "<", 2)) - 1), em, eml) ELSE ret = 0ă      IF ret <> 0 THENă         errtmp = "<" + em + ">: '" + RQmail_Error + "'"ă         m_err = m_err + 1ă      ELSEă         m_all = m_all + 1ă      END IFă   NEXT Aăă   '>> CC$ă   IF CC$ <> ";" THENă      FOR A = 1 TO TALLY(cc$, ";")+1ă         em = FIELD$(FIELD$(cc$, ";", A), "<", 2) 'automatically strips of '<'ă         em = MID$(em, 1, LEN(em) - 1)            'now get rid of the '>'ăă         IF em = "" THEN em = FIELD$(cc$, ";", A)  'no name given, just a plain e-mail addressă   ă         IF em <> "" THEN ret = RQmail_SendRaw(server$, MID$(FIELD$(from$, "<", 2), 1, LEN(FIELD$(from$, "<", 2)) - 1), em, eml) ELSE ret = 0ă         IF ret <> 0 THENă            errtmp = "<" + em + ">: '" + RQmail_Error + "'"ă            m_err = m_err + 1ă         ELSEă            m_all = m_all + 1ă         END IFă      NEXT Aă   END IFăă   '>> BCC$ă   IF bcc$ <> ";" THENă      FOR A = 1 TO TALLY(bcc$, ";")+1ă         em = FIELD$(FIELD$(bcc$, ";", A), "<", 2) 'automatically strips of '<'ă         em = MID$(em, 1, LEN(em) - 1)             'now get rid of the '>'ăă         IF em = "" THEN em = FIELD$(bcc$, ";", A)  'no name given, just a plain e-mail addressă   ă         IF em <> "" THEN ret = RQmail_SendRaw(server$, MID$(FIELD$(from$, "<", 2), 1, LEN(FIELD$(from$, "<", 2)) - 1), em, eml) ELSE ret = 0ă         IF ret <> 0 THENă            errtmp = "<" + em + ">: '" + RQmail_Error + "'"ă            m_err = m_err + 1ă         ELSEă            m_all = m_all + 1ă         END IFă      NEXT Aă   END IFăă   RQmail_Error = errtmpăă   IF m_err = m_all THEN                         'no mail could be sentă      RQmail_SendMail = 2ă   ELSEIF (m_all > m_err) AND (m_err > 0)THEN    'some could be sentă      RQmail_SendMail = 1ă   ELSEIF m_err = 0 THEN                         'all could be sentă      RQmail_SendMail = 0ă   END IFăEND FUNCTIONăă' =============================================================================ăă' -----------------------------------------------------------------------------ă' | Function RQmail_Internal_SMTPreply (Socket AS QSocket, Handle AS INTEGER) |ă' | AS STRING                                                                 |ă' -----------------------------------------------------------------------------ă' | Returns a SMTP reply (supports multi-line replies)                        |ă' -----------------------------------------------------------------------------ăăFUNCTION RQmail_Internal_SMTPreply (Socket AS QSocket, Handle AS INTEGER) AS STRINGă   DIM ErrLine AS STRING                         ' Last SMTP server messageă   DIM ErrLinePart AS STRING                     ' Last SMTP server messageă                                                 ' (current line of a multi-ă                                                 ' line reply)ăă   ErrLine = ""ă   DOă      ErrLinePart = Socket.ReadLine(Handle) 'Get the last server messageă      ErrLine = ErrLine + ErrLinePart + CHR$(13) + CHR$(10)ă   LOOP UNTIL MID$(ErrLinePart, 4, 1) <> "-"ă   ErrCode = VAL(MID$(ErrLine, 1, 3))                'Extract the 3 digit error code (will stay the same in multi-line replys)ăă   IF (Socket.Transferred < 0) AND (ErrLine = "") THENă      ErrLine = "5XX Connection was closed unexpectedly."ă      Socket.Close(Handle)ă   END IFăă   RQmail_Internal_SMTPreply = ErrLineăEND FUNCTIONăă' =============================================================================ăă' -----------------------------------------------------------------------------ă' | Function RQmail_SendRaw(smtp_server$, email_from$, email_to$, content$)   |ă' -----------------------------------------------------------------------------ă' | smtp_server$ := Host name of the mail server you want to send the e-mail  |ă' |                 to.                                                       |ă' |                 i.e.: mail.myserver.com                                   |ă' | email_from$ :=  The e-mail address of the account sending the e-mail.     |ă' |                 i.e.: hello@world.net                                     |ă' | email_to$ :=    The e-mail address of the person you want to write to.    |ă' |                 i.e.: wow@this.is.a.very.long.hostname.is.it.cx           |ă' | content$ :=     The e-mail content (including header)                     |ă' -----------------------------------------------------------------------------ă' | This function looks very complicated... but it isn't at all ;)            |ă' | If you take a closer look, you will see that it is just almost the same   |ă' | commands repeated several times; except the parser part of the function.  |ă' | When sending an e-mail you need to verify that your e-mail doesn't contain|ă' | a single line with just a dot ('.') in it -- this is already used to mark |ă' | the end of a mail. So we've got to check that. The parser should work on  |ă' | Windows and on Linux, too.                                                |ă' |                                                                           |ă' | 11/11/00: put most of the SMTP reply check code into a separate function. |ă' |           (-> program size reduced)                                       |ă' -----------------------------------------------------------------------------ă' | Returns 0 if everything went alright and 1 if there was an error.         |ă' -----------------------------------------------------------------------------ăăFUNCTION RQmail_SendRaw (smtp_server$, email_from$, email_to$, content$) AS INTEGERă   DIM SMTP_Socket AS QSocket                    ' Define QSocketă   DIM SMTP_SocketHandle AS INTEGERăă   DIM ErrCode AS INTEGER                        ' Last SMTP error codeă   DIM ErrLine AS STRING                         ' Last SMTP server messageăă   DIM ParsedLine AS STRING                      ' used by the e-mail parseră   DIM a AS INTEGERă   DIM eol AS INTEGER                            ' end of line?ăă   ' Connect to serveră   SMTP_SocketHandle = SMTP_Socket.Connect(smtp_server$, 25)ăă   IF SMTP_SocketHandle < 0 THEN                          ' Connect error?ă      RQmail_Error = "5XX Could not connect to server"ă      RQmail_SendRaw = 1 'abortă      EXIT FUNCTIONă   END IFă   ă   ' ---=== Check for errors or broken connection ===---ă   ErrLine = RQmail_Internal_SMTPreply(SMTP_Socket, SMTP_SocketHandle)ă   ErrCode = VAL(MID$(ErrLine, 1, 3))ă   IF (ErrCode >= 400) THEN 'Error?ă      RQmail_Error = ErrLineă      RQmail_SendRaw = 1 ' ---=== abort ===---ă      EXIT FUNCTIONă   END IFăă   'Say hello ===---ă   SMTP_Socket.WriteLine(SMTP_SocketHandle, "HELO localhost")ăă   ' ---=== Check for errors or broken connection ===---ă   ErrLine = RQmail_Internal_SMTPreply(SMTP_Socket, SMTP_SocketHandle)ă   ErrCode = VAL(MID$(ErrLine, 1, 3))ă   IF (ErrCode >= 400) THEN 'Error?ă      RQmail_Error = ErrLineă      RQmail_SendRaw = 1 ' ---=== abort ===---ă      EXIT FUNCTIONă   END IFăă   'Mail from ===---ă   SMTP_Socket.WriteLine(SMTP_SocketHandle, "MAIL FROM:<" + email_from$ + ">")ăă   ' ---=== Check for errors or broken connection ===---ă   ErrLine = RQmail_Internal_SMTPreply(SMTP_Socket, SMTP_SocketHandle)ă   ErrCode = VAL(MID$(ErrLine, 1, 3))ă   IF (ErrCode >= 400) THEN 'Error?ă      RQmail_Error = ErrLineă      RQmail_SendRaw = 1 ' ---=== abort ===---ă      EXIT FUNCTIONă   END IFăă   'Mail to ===---ă   SMTP_Socket.WriteLine(SMTP_SocketHandle, "RCPT TO:<" + email_to$ + ">")ăă   ' ---=== Check for errors or broken connection ===---ă   ErrLine = RQmail_Internal_SMTPreply(SMTP_Socket, SMTP_SocketHandle)ă   ErrCode = VAL(MID$(ErrLine, 1, 3))ă   IF (ErrCode >= 400) THEN 'Error?ă      RQmail_Error = ErrLineă      RQmail_SendRaw = 1 ' ---=== abort ===---ă      EXIT FUNCTIONă   END IFăă   'Now send the mail ===---ă   SMTP_Socket.WriteLine(SMTP_SocketHandle, "DATA")ăă   ' ---=== Check for errors or broken connection ===---ă   ErrLine = RQmail_Internal_SMTPreply(SMTP_Socket, SMTP_SocketHandle)ă   ErrCode = VAL(MID$(ErrLine, 1, 3))ă   IF (ErrCode >= 400) THEN 'Error?ă      RQmail_Error = ErrLineă      RQmail_SendRaw = 1 ' ---=== abort ===---ă      EXIT FUNCTIONă   END IFăă   'Parse mail ===---ă   '[lines with a single dot ('.') will be changed to ('..') because a singleă   'dot marks the end of the e-mail]ăă   'CHR$(13) = <CR>, CHR$(10) = <LF>ă   ă   ParsedLine = ""ă   FOR A = 1 TO LEN(content$)ă      IF (MID$(content$, A, 1) = CHR$(13)) OR _ă         (MID$(content$, A, 1) = CHR$(10)) THENă         'line ends, check whether content$ usesă         '<CR>, <LF>, <CR>+<LF> or <LF>+<CR> to mark the end of a lineăă         eol = ASC(MID$(content$, A, 1))ă         A = A + 1ă         IF ASC(MID$(content$, A, 1)) = eol THENă            'one line of text plus one empty line ending with 2 <CR>s or <LF>să   ă            IF ParsedLine = "." THENă               SMTP_Socket.WriteLine(SMTP_SocketHandle, "..")ă            ELSEă               SMTP_Socket.WriteLine(SMTP_SocketHandle, ParsedLine)ă            END IFă            SMTP_Socket.WriteLine(SMTP_SocketHandle, "")ă            ParsedLine = ""ă         ELSEă            IF (MID$(content$, A, 1) = CHR$(13)) OR _ă               (MID$(content$, A, 1) = CHR$(10)) THENă               'one line ending with <CR>+<LF> or <LF>+<CR>ăă               IF ParsedLine = "." THENă                  SMTP_Socket.WriteLine(SMTP_SocketHandle, "..")ă               ELSEă                  SMTP_Socket.WriteLine(SMTP_SocketHandle, ParsedLine)ă               END IFă               ParsedLine = ""ă            ELSEă               'one line ending with <CR> or <LF>ăă               IF ParsedLine = "." THENă                  SMTP_Socket.WriteLine(SMTP_SocketHandle, "..")ă               ELSEă                  SMTP_Socket.WriteLine(SMTP_SocketHandle, ParsedLine)ă               END IFă               ParsedLine = ""ă            END IFă         END IFă      ELSEă         ParsedLine = ParsedLine + MID$(content$, A, 1)ă      END IFă   NEXT Aăă   'write the restă   IF ParsedLine <> "" THENă      IF ParsedLine = "." THEN ă         SMTP_Socket.WriteLine(SMTP_SocketHandle, "..")ă      ELSEă         SMTP_Socket.WriteLine(SMTP_SocketHandle, ParsedLine)ă      END IFă   END IFăă   'End of mail ===---ă   SMTP_Socket.WriteLine(SMTP_SocketHandle, ".")ăă   ' ---=== Check for errors or broken connection ===---ă   ErrLine = RQmail_Internal_SMTPreply(SMTP_Socket, SMTP_SocketHandle)ă   ErrCode = VAL(MID$(ErrLine, 1, 3))ă   IF (ErrCode >= 400) THEN 'Error?ă      RQmail_Error = ErrLineă      RQmail_SendRaw = 1 ' ---=== abort ===---ă      EXIT FUNCTIONă   END IFăă   'Bye bye ===---ă   SMTP_Socket.WriteLine(SMTP_SocketHandle, "QUIT")ăă   ' ---=== Check for errors or broken connection ===---ă   ErrLine = RQmail_Internal_SMTPreply(SMTP_Socket, SMTP_SocketHandle)ă   ErrCode = VAL(MID$(ErrLine, 1, 3))ă   IF (ErrCode >= 400) THEN 'Error?ă      RQmail_Error = ErrLineă      RQmail_SendRaw = 1 ' ---=== abort ===---ă      EXIT FUNCTIONă   END IFăă   SMTP_Socket.Close(SMTP_SocketHandle)ă   RQmail_SendRaw = 0 ' ---=== mail sent successfully ===---ăEND FUNCTIONăă' =============================================================================ă' === POP3 support - Recieve e-mails                                        ===ă' =============================================================================ăă' -----------------------------------------------------------------------------ă' | Function RQmail_POP3beforeSMTP(server$, username$, passwd$) AS INTEGER    |ă' -----------------------------------------------------------------------------ă' | Logs in on the specified POP3 server and quits the connection afterwards. |ă' | This function is only of use to someone who's e-mail server requires      |ă' | POP-before-SMTP.                                                          |ă' -----------------------------------------------------------------------------ă' | server$ :=   host name of the server (i.e. pop3.myserver.com)             |ă' | username$ := user name                                                    |ă' | passwd$ :=   password                                                     |ă' -----------------------------------------------------------------------------ă' | The function returns 0 if there were no errors and 1 if the operation     |ă' | could not be completed successfully (see also RQmail_Error$)              |ă' =============================================================================ăăFUNCTION RQmail_POP3beforeSMTP (server$, username$, passwd$) AS INTEGERă   DIM POP3_Socket AS QSocket                    ' Define QSocketă   DIM POP3_SocketHandle AS INTEGERăă   DIM ErrCode AS STRING                         ' Last POP3 error codeă   DIM ErrLine AS STRING                         ' Last POP3 server messageăă   ' Connect to serveră   POP3_SocketHandle = POP3_Socket.Connect(server$, 110)ăă   IF POP3_SocketHandle < 0 THEN                          ' Connect error?ă      RQmail_Error = "-ERR Could not connect to server"ă      POP3beforeSMTP = 1 'abortă      EXIT FUNCTIONă   END IFăă   ' ---=== Check for errors or broken connection ===---ă   ErrLine = POP3_Socket.ReadLine(POP3_SocketHandle) 'Get the last server messageă   ErrCode = LEFT$(ErrLine, 1)                       'Extract the first letter (should be either '+' or '-')ă   IF (ErrCode = "-") OR (POP3_Socket.Transferred < 0) THEN 'Error?ă      IF (POP3_Socket.Transferred < 0) AND (ErrLine = "") THEN ErrLine = "-ERR Connection was closed unexpectedly."ă      POP3_Socket.Close(POP3_SocketHandle)ă      RQmail_Error = ErrLineă      POP3beforeSMTP = 1 ' ---=== abort ===---ă      EXIT FUNCTIONă   END IFăă   'Send username ===---ă   POP3_Socket.WriteLine(POP3_SocketHandle, "USER " + username$)ăă   ' ---=== Check for errors or broken connection ===---ă   ErrLine = POP3_Socket.ReadLine(POP3_SocketHandle) 'Get the last server messageă   ErrCode = LEFT$(ErrLine, 1)                       'Extract the first letter (should be either '+' or '-')ă   IF (ErrCode = "-") OR (POP3_Socket.Transferred < 0) THEN 'Error?ă      IF (POP3_Socket.Transferred < 0) AND (ErrLine = "") THEN ErrLine = "-ERR Connection was closed unexpectedly."ă      POP3_Socket.Close(POP3_SocketHandle)ă      RQmail_Error = ErrLineă      POP3beforeSMTP = 1 ' ---=== abort ===---ă      EXIT FUNCTIONă   END IFăă   'Send password ===---ă   POP3_Socket.WriteLine(POP3_SocketHandle, "PASS " + passwd$)ăă   ' ---=== Check for errors or broken connection ===---ă   ErrLine = POP3_Socket.ReadLine(POP3_SocketHandle) 'Get the last server messageă   ErrCode = LEFT$(ErrLine, 1)                       'Extract the first letter (should be either '+' or '-')ă   IF (ErrCode = "-") OR (POP3_Socket.Transferred < 0) THEN 'Error?ă      IF (POP3_Socket.Transferred < 0) AND (ErrLine = "") THEN ErrLine = "-ERR Connection was closed unexpectedly."ă      POP3_Socket.Close(POP3_SocketHandle)ă      RQmail_Error = ErrLineă      POP3beforeSMTP = 1 ' ---=== abort ===---ă      EXIT FUNCTIONă   END IFăă   'Quit ===---ă   POP3_Socket.WriteLine(POP3_SocketHandle, "QUIT")ăă   ' ---=== Check for errors or broken connection ===---ă   ErrLine = POP3_Socket.ReadLine(POP3_SocketHandle) 'Get the last server messageă   ErrCode = LEFT$(ErrLine, 1)                       'Extract the first letter (should be either '+' or '-')ă   IF (ErrCode = "-") OR (POP3_Socket.Transferred < 0) THEN 'Error?ă      IF (POP3_Socket.Transferred < 0) AND (ErrLine = "") THEN ErrLine = "-ERR Connection was closed unexpectedly."ă      POP3_Socket.Close(POP3_SocketHandle)ă      RQmail_Error = ErrLineă      POP3beforeSMTP = 1 ' ---=== abort ===---ă      EXIT FUNCTIONă   END IFăă   'everything was OKă   POP3_Socket.Close(POP3_SocketHandle)ă   RQmail_Error = ""ă   POP3beforeSMTP = 0ăEND FUNCTIONăă' =============================================================================ăă'Demo codeăDIM ret AS INTEGERăăret = RQmail_POP3beforeSMTP("pop.mail.com", "test@rqmail", "nopwd")ăShowMessage "Return code of POP3-before-SMTP: " + STR$(ret) + " -- Error: '" + RQmail_Error + "'"ăăret = RQmail_SendMail("someone <darkwulf>", "you <user>", "", "", 2, "New version!", "<<<contents>>>", "smtp.mail.com")ăShowMessage "Return code of SendMail: " + STR$(ret) + " --- Error information: '" + RQmail_Error + "' ['' means: no error]"ăParanco                        GUI TELNET CLIENT              paranco@hotmail.com            12-11-00 (19:17)       RAPIDQ                 139  3084     TELE1.BAS   $INCLUDE "RAPIDQ.INC"ăăDECLARE SUB Edit3KeyPress (Key AS WORD, Sender AS QEDIT)ăDECLARE SUB Button1Click (Sender AS QBUTTON)ăDECLARE SUB Button2Click (Sender AS QBUTTON)ăDECLARE SUB Button3Click (Sender AS QBUTTON)ăDECLARE SUB TimerExpiredăăCONST DELAY = 500ăDIM dalserver as stringăDIM TCP1 AS QSocketăDIM SockNum AS INTEGERă    SockNum = 0ăăCREATE Form AS QFORMă    Caption = "TELNET CLIENT"ă    Width = 583ă    Height = 384ă    Centeră    BorderStyle = bsDialogă    CREATE Label2 AS QLABELă        Caption = "Porta"ă        Left = 224ă        Top = 16ă        Transparent = 1ă    END CREATEă    CREATE Label1 AS QLABELă        Caption = "Host remoto"ă        Left = 16ă        Top = 16ă        Width = 64ă        Transparent = 1ă    END CREATEă    CREATE RichEdit1 AS QRICHEDITă        Left = 12ă        Top = 51ă        Width = 550ă        Height = 250ă        ScrollBars = ssBothă        TabOrder = 4ă        AddStrings ""ă    END CREATEă    CREATE Edit1 AS QEDITă        Text = ""ă        Left = 80ă        Top = 16ă        Width = 137ă    END CREATEă    CREATE Edit2 AS QEDITă        Text = ""ă        Left = 260ă        Top = 16ă        Width = 65ă        TabOrder = 1ă    END CREATEă    CREATE Button1 AS QBUTTONă        Caption = "Connetti"ă        Left = 360ă        Top = 16ă        TabOrder = 2ă        OnClick = Button1Clickă    END CREATEă    CREATE Button2 AS QBUTTONă        Caption = "Disconnetti"ă        Left = 456ă        Top = 16ă        TabOrder = 3ă        OnClick = Button2Clickă    END CREATEă    CREATE Edit3 AS QEDITă        Text = ""ă        Left = 16ă        Top = 320ă        Width = 305ă        TabOrder = 5ă        OnKeyPress = Edit3KeyPressă    END CREATEă    CREATE Button3 AS QBUTTONă        Caption = "Invia"ă        Left = 344ă        Top = 320ă        TabOrder = 6ă        OnClick = Button3Clickă    END CREATEă    CREATE ScrollBox1 AS QSCROLLBOXă        Left = 109ă        Top = -75ă        TabOrder = 7ă    END CREATEăEND CREATEăăăDIM Timer1 AS QTimeră    Timer1.Interval = DELAYă    Timer1.OnTimer = TimerExpiredăRichEdit1.PlainText = TrueăRichEdit1.WordWrap = FalseăăăSUB TimerExpiredă  Timer1.Enabled = Falseă  Timer1.Interval = DELAYă  IF SockNum <= 0 THENă    Timer1.Enabled = Trueă    EXIT SUBă  END IFă  IF TCP1.IsServerReady(SockNum) THENă    dalserver = TCP1.ReadLine(SockNum)ă    RichEdit1.Addstring dalserveră    IF TCP1.Transferred  < 0 THENă      SockNum = 0ă      ShowMessage "Server disconnesso!"ă    END IFă  END IFă  Timer1.Enabled = TrueăEND SUBăăSUB Edit3KeyPress (Key AS WORD, Sender AS QEDIT)ăif key=13 thenădim pippo as QbuttonăButton3Click (pippo)ăend ifăEND SUBăăSUB Button3Click (Sender AS QBUTTON)ăRichEdit1.Addstring Edit3.textăa%=TCP1.Writeline(socknum,(Edit3.text+chr$(13)))ăEdit3.text=""ăEND SUBăăSUB Button1Click (Sender AS QBUTTON)ăsocknum=TCP1.Connect(Edit1.text, val(edit2.text))ăEND SUBăăSub Button2Click (Sender AS QBUTTON)ăTCP1.close(socknum)ăend subăăForm.ShowModalăMesut Akcan                    QF Splitter                    makcan@softhome.net            06-15-01 (19:34)       RAPIDQ                 351  9613     Qfsplitt.bas' QFSplitter.bas for rapidqă' coded by Mesut Akcană' updated 30 june 2000ă' http://kaynak.cjb.netă' http://makcan.virtualave.netă' makcan@softhome.netăă$OPTIMIZE ONă$APPTYPE GUIă$TYPECHECK ON ă$OPTION ICON "SPLIT.ICO"ă$INCLUDE "RAPIDQ.INC"ăă$RESOURCE BACK_BMP AS "BACK1.BMP"ă$RESOURCE OPENBMP AS "OPEN.BMP"ă$RESOURCE SPLITBMP AS "SPLIT.BMP"ă$RESOURCE HELPBMP AS "HELP.BMP"ă$RESOURCE EXITBMP AS "EXIT.BMP"ăăDECLARE FUNCTION FPATH(FPFN AS STRING)AS STRINGăDECLARE SUB OKCLICKăDECLARE SUB CANCELCLICKăDECLARE SUB SRCSELECTCLICK (SENDER AS QBUTTON)ăDECLARE SUB TRGSELECTCLICK (SENDER AS QBUTTON)ăDECLARE SUB EDIT3CHANGE (SENDER AS QEDIT)ăDECLARE SUB SPLITCLICK (SENDER AS QBUTTON)ăDECLARE SUB ABOUTCLICK (SENDER AS QBUTTON)ăDECLARE SUB EXITCLICK (SENDER AS QBUTTON)ăDECLARE SUB BACKDRAW (SENDER AS QFORM)ăăAPPLICATION.TITLE = "Qfilesplitter v1.2"ăăCREATE FORM AS QFORMă    CAPTION = APPLICATION.TITLEă    WIDTH = 303ă    HEIGHT = 255ă    BORDERSTYLE = BSSINGLEă    CENTERă    AUTOSCROLL = 0ă    ONPAINT = BACKDRAWă	CREATE MAINMENU AS QMAINMENU 	ă		CREATE MNUFILE AS QMENUITEMă			CAPTION="&File"ă			CREATE MNUSOSEL AS QMENUITEMă				CAPTION="S&ource"ă				ONCLICK = SRCSELECTCLICKă			END CREATEă			CREATE MNUTARSEL AS QMENUITEMă				CAPTION="&Target path"ă				ONCLICK = TRGSELECTCLICK ă			END CREATEă			CREATE MNUSPL AS QMENUITEMă				CAPTION = "&Split"ă				ENABLED = FALSEă				ONCLICK = SPLITCLICKă			END CREATEă			CREATE MNUBRK AS QMENUITEMă				CAPTION="-"ă			END CREATEă			CREATE MNUEXIT AS QMENUITEMă				CAPTION="E&xit"ă				ONCLICK = EXITCLICKă			END CREATEă		END CREATEă		CREATE MNUHELP AS QMENUITEMă			CAPTION = "&Help"ă			CREATE MNUABOUT AS QMENUITEMă				CAPTION ="&About"ă				ONCLICK  = ABOUTCLICKă			END CREATEă		END CREATEă	END CREATEă    CREATE LABEL1 AS QLABELă        CAPTION = "Path / File (SOURCE):"ă        LEFT = 7ă        TOP = 37ă        WIDTH = 112ă        TRANSPARENT = 1ă    END CREATEă    CREATE LABEL2 AS QLABELă        CAPTION = "File size "ă        LEFT = 7ă        TOP = 80ă        WIDTH = 112ă        TRANSPARENT = 1ă    END CREATEă    CREATE LABEL3 AS QLABELă        CAPTION = "Path (TARGET):  "ă        LEFT = 7ă        TOP = 109ă        WIDTH = 112ă        TRANSPARENT = 1ă    END CREATEă    CREATE LABEL4 AS QLABELă        CAPTION = "Split size(Bytes) :"ă        LEFT = 7ă        TOP = 173ă        WIDTH = 84ă        TRANSPARENT = 1ă    END CREATEă    CREATE LABEL5 AS QLABELă        LEFT = 147ă        TOP = 167ă        WIDTH = 107ă        HEIGHT = 29ă        ALIGNMENT = 1ă        TRANSPARENT = 1ă    END CREATEă    CREATE LABEL6 AS QLABELă        LEFT = 91ă        TOP = 195ă        TRANSPARENT = 1ă    END CREATEă    CREATE EDIT1 AS QEDITă        TEXT = ""ă        LEFT = 7ă        TOP = 57ă        WIDTH = 253ă    END CREATEă    CREATE BUTTON1 AS QBUTTONă        CAPTION = ""ă        BMPHANDLE = OPENBMPă        LEFT = 260ă	  HEIGHT = 22ă        TOP = 56ă        WIDTH = 27ă        SHOWHINT = 1ă        HINT = "Select source file"ă        TABORDER = 1ă        ONCLICK = SRCSELECTCLICKă    END CREATEă    CREATE EDIT2 AS QEDITă        TEXT = ""ă        LEFT = 7ă        TOP = 129ă        WIDTH = 253ă        TABORDER = 2ă    END CREATEă    CREATE BUTTON2 AS QBUTTONă        CAPTION = ""ă        BMPHANDLE = OPENBMPă        LEFT = 260ă        TOP = 128ă        WIDTH = 27ă	  HEIGHT = 22ă        SHOWHINT = 1ă        HINT = "Select target path "ă        TABORDER = 3ă        ONCLICK = TRGSELECTCLICKă    END CREATEă    CREATE EDIT3 AS QEDITă        TEXT = "1457152"ă        LEFT = 89ă        TOP = 169ă        WIDTH = 81ă        TABORDER = 4ă        ONCHANGE = EDIT3CHANGEă    END CREATEă    CREATE PANEL1 AS QPANELă        LEFT = 0ă        TOP = 0ă        WIDTH = 295ă        HEIGHT = 31ă        ALIGN = 1ă        TABORDER = 5ă        CREATE BUTTON3 AS QBUTTONă            CAPTION = ""ă            BMPHANDLE = SPLITBMPă            LEFT = 3ă            TOP = 3ă            WIDTH = 35ă            SHOWHINT = 1ă            HINT = "Split file"ă            ONCLICK = SPLITCLICKă        END CREATEă        CREATE BUTTON4 AS QBUTTONă            CAPTION = ""ă            BMPHANDLE = HELPBMPă            LEFT = 40ă            TOP = 3ă            WIDTH = 27ă            SHOWHINT = 1ă            HINT = "About"ă            TABORDER = 1ă            ONCLICK = ABOUTCLICKă        END CREATEă        CREATE BUTTON5 AS QBUTTONă            CAPTION = ""ă            BMPHANDLE = EXITBMPă            LEFT = 69ă            TOP = 3ă            WIDTH = 27ă            SHOWHINT = 1ă            HINT = "Exit"ă            TABORDER = 2ă            ONCLICK = EXITCLICKă        END CREATEă    END CREATEăEND CREATEă'----------- FORM2 --------------------------ăCREATE FORM2 AS QFORMă    CAPTION = "Select a folder"ă    WIDTH = 320ă    HEIGHT = 330ă    BORDERSTYLE = BSSINGLEă    CENTERă    ONPAINT = BACKDRAWă    CREATE BTNOK AS QBUTTONă        CAPTION = "&OK"ă        LEFT = 223ă        TOP = 270ă		ONCLICK = OKCLICKă    END CREATEă    CREATE BTNCANCEL AS QBUTTONă        CAPTION = "&Cancel"ă        LEFT = 138ă        TOP = 270ă        TABORDER = 1ă		ONCLICK = CANCELCLICKă    END CREATEă    CREATE DTREE AS QDIRTREEă		TOP = 5ă		LEFT = 5ă		WIDTH = 300ă		HEIGHT = 260ă    END CREATEăEND CREATEă'=========================================================================ăDIM FILE AS QFILESTREAMăDIM FSIZE AS LONG , SPLSIZE AS LONG , SPL AS LONGăDIM CRLF AS STRING , C34 AS STRINGăDIM BITMAP AS QBITMAPăBITMAP.BMPHANDLE = BACK_BMPăCRLF = CHR$(13) + CHR$(10) : C34  = CHR$(34)ăCALL EDIT3CHANGE (EDIT3)ăFORM.DELBORDERICONS (WSMAXIMIZED)ăFORM2.DELBORDERICONS (WSMAXIMIZED)ăFORM.SHOWMODALăăSUB SRCSELECTCLICK (SENDER AS QBUTTON)  '---------- SOURCE SELECTă  DIM OPENDIALOG AS QOPENDIALOGă  WITH OPENDIALOGă  	IF .EXECUTE THENă		IF FILE.OPEN(.FILENAME , FMOPENREADWRITE) = FALSE THEN ă			SHOWMESSAGE "Problem with reading " + .FILENAME : EXIT SUBă		END IFă		EDIT1.TEXT 	= .FILENAMEă		FSIZE	= FILE.SIZEă		FILE.CLOSEă		LABEL2.CAPTION = STR$(FSIZE) + " Bytes"ă		EDIT2.TEXT = FPATH(EDIT1.TEXT)ă  	END IFă  END WITHă  CALL EDIT3CHANGE(EDIT3)ăEND SUBăăSUB TRGSELECTCLICK (SENDER AS QBUTTON)	'--------- TARGET SELECTă	WITH DTREEă	IF EDIT2.TEXT THEN .INITIALDIR = EDIT2.TEXT ELSE .INITIALDIR = CURDIR$ ă	END WITHă  	FORM2.SHOWMODALăEND SUBăăSUB EDIT3CHANGE (SENDER AS QEDIT)		'---------- EDIT3 CHANGEă	DIM KB AS DOUBLE , MB AS DOUBLE , RMN AS LONGă	SPLSIZE = VAL(EDIT3.TEXT)ă	IF (SPLSIZE >= FSIZE) OR (SPLSIZE<1) THEN ă		BUTTON3.ENABLED  = FALSEă		MNUSPL.ENABLED = FALSEă		LABEL6.CAPTION=""ă	ELSE ă		BUTTON3.ENABLED  = TRUEă		MNUSPL.ENABLED = TRUEă		RMN = FSIZE MOD SPLSIZEă		SPL = INT(FSIZE/SPLSIZE)ă		IF RMN > 0 THEN SPL++ă		LABEL6.CAPTION = STR$(SPL) + " split files"ă	END IFă	KB = (INT(SPLSIZE / 1024 * 100)) / 100ă	MB = (INT(SPLSIZE / 1048576 * 100)) / 100ă	LABEL5.CAPTION = STR$(KB) + " KB" + CRLF + STR$(MB) + " MB"ăEND SUBăăSUB SPLITCLICK (SENDER AS QBUTTON)			'---------- SPLIT CLICKă 	DIM FILE2 AS QFILESTREAM ă	DIM SFNAME AS STRING , BATSTR AS STRING , BATSFN AS STRINGă	DIM TFNAME AS STRING , BF AS STRINGă	DIM N AS SHORTă	WITH EDIT1ă	 	SFNAME = .TEXT - FPATH(.TEXT) 'SOURCE FILE NAMEă 		IF FILE.OPEN(.TEXT , FMOPENREAD) = FALSE THEN 'OPEN SOURCE FILEă			SHOWMESSAGE "Problem with reading " + .TEXT : EXIT SUBă	 	END IFă	END WITHă 	BATSTR = "@ECHO OFF" + CRLFă	FOR N = 0 TO SPL-1 ă		FILE.POSITION = N * SPLSIZEă		IF N = SPL-1 THEN SPLSIZE = FILE.SIZE - FILE.POSITIONă		TFNAME = SFNAME + "." + RIGHT$ (("00" + STR$(N)) , 3) ' TARGET FILENAMEă		IF N>0 THEN BATSFN = C34 + SFNAME + C34 + "+"ă		BATSTR = BATSTR + "COPY /B " + BATSFN + C34 + TFNAME + C34 + " " + C34 + SFNAME + C34 + CRLFă		IF FILE2.OPEN(EDIT2.TEXT + TFNAME , FMCREATE) = FALSE THEN  'CREATE TARGET FILEă			SHOWMESSAGE "Problem with creating " + EDIT2.TEXT + TFNAME : EXIT SUBă		END IFă		FILE2.COPYFROM(FILE,SPLSIZE)ă		FILE2.CLOSEă	NEXTă	FILE.CLOSEă 	BF =  EDIT2.TEXT + "MERGE_" + SFNAME + ".BAT" 	 ' BATCH FILE NAMEă 	IF FILE.OPEN(BF , FMCREATE) = FALSE THEN  ' CREATE BAT FILEă		SHOWMESSAGE "Problem with creating " + BFă 		EXIT SUB ă 	END IF ă 	BATSTR = BATSTR + "REM THIS FILE WAS CREATED BY QFILESPLITTER" + CRLF + "REM http://kaynak.cjb.net"ă 	FILE.WRITESTR(BATSTR,LEN(BATSTR))      ' WRITE TO BATCH FILEă 	FILE.CLOSEă	SHOWMESSAGE SFNAME + " SPLITTED !" ' OK.ăEND SUBăăFUNCTION FPATH(FPFN AS STRING)AS STRING		'---------- FPATHă	DIM POZ AS SHORT , LASTPOZ AS SHORTă	DOă		POZ = INSTR(LASTPOZ + 1 , FPFN,"\" )ă		IF POZ=0 THEN EXIT DOă		LASTPOZ = POZă	LOOPă	FPATH = LEFT$(FPFN,LASTPOZ)ăEND FUNCTIONăăSUB ABOUTCLICK (SENDER AS QBUTTON)			'---------- ABOUT CLICKă	showmessage application.title + " freeware" + crlf + "programmed by Mesut Akcan" + crlf _ă	+ "web: http://kaynak.cjb.net" + crlf + "mail: makcan@softhome.net"ăEND SUBăSUB EXITCLICK (SENDER AS QBUTTON): FORM.CLOSE :END SUB '--- EXIT CLICK ăSUB OKCLICK							'---------- OK CLICKă	EDIT2.TEXT= DTREE.DIRECTORY :	FORM2.CLOSEăEND SUBăSUB CANCELCLICK : FORM2.CLOSE : END SUB		'---------- CANCEL CLICKăăSUB BACKDRAW (SENDER AS QFORM)			'---------- BACK DRAWă	DIM FW AS INTEGER , FH AS INTEGER , X AS INTEGER , Y AS INTEGERă	DIM BW AS INTEGER , BH AS INTEGERă	BW = BITMAP.WIDTH : BH = BITMAP.HEIGHTă	WITH SENDERă	FW = .CLIENTWIDTH : FH = .CLIENTHEIGHTă	FOR X = 0 TO FW STEP BWă		FOR Y = 0 TO FH STEP BHă			.DRAW(X,Y,BITMAP.BMP)ă		NEXTă	NEXTăEND SUBăMesut Akcan                    Text Cleaner                   makcan@softhome.net            06-15-01 (19:34)       RAPIDQ                 319  8264     Temizle.bas ' Text Cleaner v1.0ă' Updated : 30 June 2000ă' Programmed by Mesut Akcană' Compile this codes with Rapid-Qă' RapidQ URL : http://www.basicguru.com/abc/rapidqăă' Metin Temizleyici v1.0ă' Güncelleme : 10 Haziran 2000ă' Programlayan : Mesut Akcană' Bu kodlarý derlemek için Rapid-Q kullanýnăă' http://makcan.virtualave.netă' makcan@softhome.netăă$optimize  onă$typecheck onă$apptype   guiă$option icon "temizle.ico"ă$include   "rapidq.inc"ăăapplication.Title = "Metin Temizleyici v1.1"ăă$RESOURCE resYeni 	AS  "new.bmp"ă$RESOURCE resAc 		AS  "open.bmp"ă$RESOURCE resKaydet 	AS  "save.bmp"ă$RESOURCE resKes		AS  "cut.bmp"ă$RESOURCE resKopyala 	AS  "copy.bmp"ă$RESOURCE resYapistir 	AS  "paste.bmp"ă$RESOURCE resKaydet 	AS  "save.bmp"ă$RESOURCE resTemizle	AS  "cls.bmp"ă$RESOURCE resHakkinda 	AS  "help.bmp"ă$RESOURCE resKapat 	AS  "exit.bmp"ă'$RESOURCE resFrmIco 	AS  "temizle.ico"ăăDECLARE SUB Yeni (Sender AS QBUTTON)ăDECLARE SUB DosyaAc (Sender AS QBUTTON)ăDECLARE SUB DosyaKaydet (Sender AS QBUTTON)ăDECLARE SUB Kopyala (Sender AS QBUTTON)ăDECLARE SUB Temizle (Sender AS QBUTTON)ăDECLARE SUB Hakkinda (Sender AS QBUTTON)ăDECLARE SUB Yapistir (Sender AS QBUTTON)ăDECLARE SUB Kes (Sender AS QBUTTON)ăDECLARE SUB Kapat (Sender AS QBUTTON)ăDECLARE SUB frmResizeăDECLARE SUB tSecăă'declare SUB DummyProcăăCREATE Form AS QFORMă    Caption = application.Titleă    'IcoHandle = resFrmIcoă    Width = 344ă    Height = 455ă    OnResize = frmResize		ă    AutoScroll = 0ă    Centeră'    WndProc = DummyProc	ă    CREATE mainmenu as qmainmenuă	create mnuDosya as qmenuitemă		caption = "&Dosya"ă		create mnuYeni as qmenuitemă			Caption = "&Yeni"ă			OnClick = Yeniă		end createă		create mnuAc as qmenuitemă			Caption = "&Aç"ă			OnClick = DosyaAcă		end createă		create mnuKaydet as qmenuitemă			Caption = "&Kaydet"ă			OnClick = DosyaKaydetă		end createă'		create mnuFarkli as qmenuitemă'			Caption = "&Farklý Kaydet"ă'			OnClick = DosyaKaydetă'		end createă		create mnuCzg as qmenuitemă			Caption = "-"ă		end createă		create mnuKapat as qmenuitemă			Caption = "Ka&pat"ă			OnClick = Kapată		end createă	end createă	CREATE mnuDuzen as QMENUITEM   ă		Caption = "Dü&zen"ă		CREATE mnuDuzenKes as QMENUITEM   ă			Caption = "&Kes"ă			OnClick = Kesă		END CREATE ă		CREATE mDuzenKopyala as QMENUITEM   ă			Caption = "K&opyala"ă			OnClick = Kopyalaă		END CREATE ă		CREATE mnuDuzenYapistir as QMENUITEM   ă			Caption = "&Yapýţtýr"ă			OnClick = Yapistiră		END CREATE ă		CREATE mnuDuzenCzg as QMENUITEM   ă			Caption = "-"ă		END CREATE ă		CREATE mnuDuzenTsec as QMENUITEM   ă			Caption = "Tümünü &seç"ă			OnClick = tSecă		END CREATE ă		CREATE mnuDuzenCzg2 as QMENUITEM   ă			Caption = "-"ă		END CREATE ă		CREATE mnuDuzenTemizle as QMENUITEM   ă			Caption = "&Temizle"ă			OnClick = Temizleă		END CREATE ă	END CREATE ă    end createă    CREATE Label1 AS QLABELă        Caption = "Harfler :"ă        Left = 3ă        Top = 40ă        Width = 37ă    END CREATEă    CREATE Label2 AS QLABELă        Caption = "Özel karakterler:"ă        Left = 3ă        Top = 66ă        Width = 77ă    END CREATEă    CREATE Edit1 AS QEDITă        Text = ""ă        Left = 47ă        Top = 36ă        Width = 280ă        ShowHint = 1ă        Hint = "Silinecek harfleri yazýn"ă    END CREATEă    CREATE RichEdit1 AS QRICHEDITă        Left = 0 ă        Top = 88ă        Width = 330ă        Height = 337ă        ScrollBars = 3ă        TabOrder = 1ă	  WordWrap = 0ă	    Plaintext = Trueă	    font.size=12ă    END CREATEă    CREATE CheckBox1 AS QCHECKBOXă        Caption = "&Enter"ă        Left = 91ă        Top = 64ă        Width = 52ă        ShowHint = 1ă        Hint = "Satýr sonlarý"ă        TabOrder = 2ă    END CREATEă    CREATE CheckBox2 AS QCHECKBOXă        Caption = "TAB"ă        Left = 147ă        Top = 64ă        Width = 55ă        ShowHint = 1ă        Hint = "Tab karakteri"ă        TabOrder = 3ă    END CREATEă    CREATE Panel1 AS QPANELă        Left = 0ă        Top = 0ă        Width = 336ă        Height = 32ă        Align = 1ă        TabOrder = 4ă        CREATE Button1 AS QBUTTONă            BMPhandle = resYeniă            Left = 2ă            Top = 3ă            Width = 25ă            ShowHint = 1ă            Hint = "Yeni"ă            OnClick = Yeniă        END CREATEă        CREATE Button2 AS QBUTTONă            BMPhandle = resAcă            Left = 29ă            Top = 3ă            Width = 25ă            ShowHint = 1ă            Hint = "Aç"ă            TabOrder = 1ă            OnClick = DosyaAcă        END CREATEă        CREATE Button3 AS QBUTTONă            BMPhandle = resKaydetă            Left = 56ă            Top = 3ă            Width = 25ă            ShowHint = 1ă            Hint = "Kaydet"ă            TabOrder = 2ă            OnClick = DosyaKaydetă        END CREATEă        CREATE Button4 AS QBUTTONă		BMPhandle = resKesă            Left = 95ă            Top = 3ă            Width = 25ă            ShowHint = 1ă            Hint = "Kes"ă            TabOrder = 7ă            OnClick = Kesă        END CREATEă        CREATE Button5 AS QBUTTONă		BMPhandle = resKopyalaă            Left = 122ă            Top = 3ă            Width = 25ă            ShowHint = 1ă            Hint = "Kopyala"ă            TabOrder = 3ă            OnClick = Kopyalaă        END CREATEă        CREATE Button6 AS QBUTTONă		BMPhandle = resYapistiră            Left = 149ă            Top = 3ă            Width = 25ă            ShowHint = 1ă            Hint = "Yapýţtýr"ă            TabOrder = 6ă            OnClick = Yapistiră        END CREATEă        CREATE Button7 AS QBUTTONă		BMPhandle = resTemizleă            Left = 189ă            Top = 3ă            Width = 25ă            ShowHint = 1ă            Hint = "Temizle"ă            TabOrder = 4ă            OnClick = Temizleă        END CREATEă        CREATE Button8 AS QBUTTONă		BMPhandle = resHakkindaă            Left = 225ă            Top = 3ă            Width = 25ă            ShowHint = 1ă            Hint = "Hakkýnda"ă            TabOrder = 5ă            OnClick = Hakkindaă        END CREATEă        CREATE Button9 AS QBUTTONă		BMPhandle = resKapată        	Left = 257ă        	Top = 3ă        	Width = 25ă        	ShowHint = 1ă        	Hint = "Kapat"ă        	TabOrder = 5ă        	OnClick = Kapată	  END CREATE ă    END CREATEăEND CREATEăăForm.ShowModalăăSUB Yeni (Sender AS QBUTTON):	RichEdit1.Clear:form.caption = application.Title:END SUBăSUB DosyaAc (Sender AS QBUTTON)ă	DIM OpenDialog AS QOpenDialogă	with OpenDialogă	.Filter = "Tüm dosyalar|*.*"ă	if .Execute then ă		RichEdit1.LoadFromFile .FileNameă		form.caption = application.Title + " - " + .FileNameă	end ifă	end withăEND SUBăSUB DosyaKaydet (Sender AS QBUTTON)ă	DIM SaveDialog AS QSaveDialogă	with SaveDialogă	IF .Execute THENă		RichEdit1.SaveToFile .FileNameă		form.caption = application.Title + " - " + .FileNameă	END IFă	end withăEND SUBăSUB Temizle (Sender AS QBUTTON)ă	dim txt as string , harfler as stringă	dim n as byteă	dim cEnter as string , cTab as stringă	cEnter = chr$(13) + chr$(10)ă	cTab = chr$(9)ă	txt = RichEdit1.textă	harfler = edit1.textă	for  n = 1 to len(harfler)ă		txt = txt - mid$(harfler,n,1)ă	next ă	if checkbox1.checked then txt = txt - cEnteră	if checkbox2.checked then txt = txt - cTabă	RichEdit1.text = txtăEND SUBăSUB Hakkinda (Sender AS QBUTTON)ă	dim mesaj as string , cr as stringă	cr = chr$(13)ă	mesaj = "Program : " + application.Title ă	mesaj =  mesaj + cr + "Programlayan : Mesut Akcan"ă	mesaj = mesaj + cr + "http://kaynak.cjb.net"ă	mesaj	= mesaj + cr + "makcan@softhome.net"ă	showmessage mesajăEND SUBăsub frmResizeă	RichEdit1.width = form.clientwidth ă	RichEdit1.height = form.clientheight - RichEdit1.topăend sub  ăSUB Kes (Sender AS QBUTTON):Richedit1.CutToClipBoard:END SUBăSUB Kopyala (Sender AS QBUTTON):RichEdit1.CopytoClipboard:END SUBăSUB Yapistir (Sender AS QBUTTON):RichEdit1.PasteFromClipBoard:END SUBăsub tSec :RichEdit1.selectall:end sub  ăSUB Kapat (Sender AS QBUTTON) :form.close:END SUBăă'SUB DummyProc:END SUBăJordi Ramos                    About Menu Designer            correodejordi@wanadoo.es       06-18-01 (07:00)       RapidQ                 88   2407     Frmabout.basDeclare sub cmdOK_Click (sender as QBUTTON)ăDeclare sub lblmail_Click (sender as QLABEL)ădim lblmailfont as Qfontă   lblmailfont.Color = &Hff0000ă   lblmailfont.AddStyles(0,2)ăăCREATE frmAbout AS QFORMă    Caption = "About Menu Designer"ă    Width = 391ă    Height = 265ă    DelBorderIcons = biMinimize ă    DelBorderIcons = biMaximizeă    BorderStyle = bsSingle ă    Centeră    CREATE imgIcon AS QIMAGEă        ICOHandle = MenuDesigner_icoă        Left = 16ă        Top = 16ă        Width = 32ă        Height = 32ă    END CREATEă    CREATE LblTitle as QLABELă        Top = 16ă        Left = 70ă        Width = 272ă        Height = 32ă        Caption = "Menu Designer for RapidQ in RapidQ" + chr$(10) + "by Jordi Ramos 06/24/2k (First Version)"ă    END CREATEă    CREATE LblVersion as QLABELă        Top = 52ă        Left = 70ă        Width = 272ă        Height = 15ă        Caption = "Version 1.5.0"ă    END CREATEă    CREATE LblDescription as QLABELă        Top = 75ă        Left = 70ă        Width = 272ă        Height = 78ă        Caption = "This program is one tool for made your live more easy"ă    END CREATEă    CREATE LblDescription1 as QLABELă        Top = 120ă        Left = 17ă        Width = 272ă        Height = 78ă        Caption = "I want to thank to all the people of the mail list," + cr +_ă                  "since this east program incorporates pieces_ă                  the code of many of them." + cr +_ă                  "And in special to William Yu," + cr +_ă                  "without the program he would not exist" ă    END CREATEă    CREATE lblDisclaimer as QLABELă        Top = 180ă        Left = 17ă        Width = 258ă        Height = 55ă        Caption = "This program is Freeware, you can use and abuse"+ chr$(10) + chr$(10) + "e-mail me:"ă    END CREATEă    CREATE lblmail as QLABELă        Top = 206ă        Left = 70ă        Width = 258ă        Height = 55ă        Font = lblmailFontă        Caption = "correodejordi@wanadoo.es"ă        onclick = lblmail_clickă    END CREATEă    CREATE cmdOK as QBUTTONă        Top = 200ă        Left = 283ă        Width = 97ă        Height = 23ă        Caption = "&OK"ă        onClick = cmdOK_Clickă    END CREATEăăEND CREATEăăăsub cmdOK_Click (Sender as QBUTTON)ă  frmAbout.closeăend subăăsub lblmail_Click (Sender as QLABEL)ă  sendemailăend subăJordi Ramos                    Main Entry of Form Designer    correodejordi@wanadoo.es       06-18-01 (07:00)       RapidQ                 717  19107    Frmmain.bas 'Sub DeclaratttionăDECLARE SUB mnuFileNew_Click (Sender AS QMENUITEM)ăDECLARE SUB mnuFileOpen_Click (Sender AS QMENUITEM)ăDECLARE SUB mnuFileSave_click (Sender AS QMENUITEM)ăDECLARE SUB mnuFileSaveAs_Click (Sender AS QMENUITEM)ăDECLARE SUB mnuFileExit_Click (Sender AS QMENUITEM)ăDECLARE SUB mnuViewTBar_Click (Sender AS QMENUITEM)ăDECLARE SUB mnuViewOptions_Click (Sender AS QMENUITEM)ăDECLARE SUB mnuHelpAbout_Click (Sender AS QMENUITEM)ăDECLARE SUB cmdNew_Click (Sender AS QBUTTON)ăDECLARE SUB cmdOpen_Click (Sender AS QBUTTON)ăDECLARE SUB cmdSave_Click (Sender AS QBUTTON)ăDECLARE SUB cmdOptions_Click (Sender AS QBUTTON)ăDECLARE SUB cmdHelp_Click (Sender AS QBUTTON)ăDECLARE SUB cmdExit_Click (Sender AS QBUTTON)ăDECLARE SUB txtCaptionChange (Sender AS QEDIT)ăDECLARE SUB txtNameChange (Sender AS QEDIT)ăDECLARE SUB chkChecked_Click (Sender AS QCHECKBOX)ăDECLARE SUB chkEnabled_Click (Sender AS QCHECKBOX)ăDECLARE SUB chkVisible_Click (Sender AS QCHECKBOX)ăDECLARE SUB cmbShortCut_Change (Sender AS QCOMBOBOX)ăDECLARE SUB cmdLeft_Click (Sender AS QBUTTON)ăDECLARE SUB cmdRight_Click (Sender AS QBUTTON)ăDECLARE SUB cmdDown_Click (Sender AS QBUTTON)ăDECLARE SUB cmdUp_Click (Sender AS QBUTTON)ăDECLARE SUB cmdNext_Click (Sender AS QBUTTON)ăDECLARE SUB cmdInsert_Click (Sender AS QBUTTON)ăDECLARE SUB cmdDelete_Click (Sender AS QBUTTON)ăDECLARE SUB cmdPreview_Click (Sender AS QBUTTON)ăDECLARE SUB lstItems_Click (Sender AS QLISTBOX)ăăăCREATE OpenDialog AS QOpenDialogă  Caption = "Open Menu Template"ă  Filter = "Menu Template (*.mnu)|*.mnu|All Files (*.*)|*.*"ăEND CREATEăăCREATE FrmMain AS QFORMă  ICOHandle = MenuDesigner_icoă  Caption = "MenuDesigner  $NoName.mnu"ă  Width = 560ă  Height = 430ă  BorderStyle = 1ă  DelBorderIcons = 2ă  AutoScroll = 0ă  Centeră'Menuă   CREATE mnuMain as QMAINMENUă      CREATE mnuFile as QMENUITEMă         Caption = "&File"ă         CREATE mnuFileNew as QMENUITEMă            Caption = "&New"ă            onclick = mnuFileNew_Clickă         END CREATE ă         CREATE mnuFileOpen as QMENUITEMă            Caption = "&Open..."ă            onclick = mnuFileOpen_Clickă         END CREATE ă         CREATE mnuFileSave as QMENUITEMă            Caption = "&Save"ă            onclick = mnuFileSave_Clickă         END CREATE ă         CREATE mnuFileSaveAs as QMENUITEMă            Caption = "Save &As..."ă            onclick = mnuFileSaveAs_Clickă         END CREATE ă         CREATE mnuFileseparator as QMENUITEMă            Caption = "-"ă         END CREATE ă         CREATE mnuFileExit as QMENUITEMă            Caption = "&Exit"ă            onclick = mnuFileExit_Clickă         END CREATE ă      END CREATE ă      CREATE mnuView as QMENUITEMă         Caption = "&View"ă         CREATE mnuViewTBar as QMENUITEMă            Caption = "&ToolBar"ă            Checked = Trueă            onclick = mnuViewTBar_Clickă         END CREATE ă         CREATE mnuViewOptions as QMENUITEMă            Caption = "&Options"ă            onclick = mnuViewOptions_Clickă         END CREATE ă      END CREATEă      CREATE mnuHelp as QMENUITEMă         Caption = "&Help"ă         CREATE mnuHelpAbout as QMENUITEMă            Caption = "About..."ă            onclick = mnuHelpAbout_Clickă         END CREATE ă      END CREATEă   END CREATEă'ToolBară   CREATE pnlToolBar AS QPANELă      Left = 0ă      Top = 0ă      Width = 170ă      Height = 35ă      Align = 1ă      BevelInner = bvRaisedă      BevelOuter = bvLoweredă      CREATE pnlToolBar1 AS QPANELă         Left = 0ă         Top = 0ă         Width = 200ă         Height = 35ă         BevelInner = bvRaisedă         BevelOuter = bvLoweredă         CREATE cmdNew AS QBUTTONă            BMPhandle = New_bmpă            Left = 10ă            Top = 5ă            Width = 25ă            ShowHint = 1ă            Hint = "New"ă            OnClick = cmdNew_Clickă          END CREATEă          CREATE cmdOpen AS QBUTTONă             BMPhandle = Open_bmpă             Left = 35ă             Top = 5ă             Width = 25ă             ShowHint = 1ă             Hint = "Open"ă             'TabOrder = 1ă             OnClick = cmdOpen_Clickă          END CREATEă          CREATE cmdSave AS QBUTTONă            BMPhandle = Save_bmpă            Left = 60ă            Top = 5ă            Width = 25ă            ShowHint = 1ă            Hint = "Save"ă            'TabOrder = 2ă            OnClick = cmdSave_Clickă         END CREATEă         CREATE cmdOptions AS QBUTTONă	    BMPhandle = Options_bmpă            Left = 100ă            Top = 5ă            Width = 25ă            ShowHint = 1ă            Hint = "Options"ă            'TabOrder = 3ă            OnClick = cmdOptions_Clickă         END CREATEă         CREATE cmdHelp AS QBUTTONă	      BMPhandle = Help_bmpă            Left = 140ă            Top = 5ă            Width = 25ă            ShowHint = 1ă            Hint = "About"ă            'TabOrder = 4ă            OnClick = cmdHelp_Clickă         END CREATEă         CREATE cmdExit AS QBUTTONă            BMPhandle = Exit_bmpă            Left = 165ă            Top = 5ă            Width = 25ă            ShowHint = 1ă            Hint = "Exit"ă            'TabOrder = 5ă            OnClick = cmdExit_Clickă         END CREATEă      END CREATEă   end createăă   Create pnlMain as QPANELă      BevelInner = bvnoneă      BevelOuter = bvnoneă      BevelInner = bvRaisedă      BevelOuter = bvLoweredă      Height = 350ă      Align = 1ă      'debugă      CREATE Lbldebug AS QLABELă         Caption = "debug"ă         Left = 12ă         Top = 329ă         Width = 39ă      END CREATEă      'Captionă      CREATE LblCaption AS QLABELă         Caption = "Ca&ption:"ă         Left = 12ă         Top = 17ă         Width = 39ă      END CREATEă      CREATE txtCaption AS QEDITă         Text = ""ă         Left = 60ă         Top = 15ă         Width = 175ă         TabOrder = 0ă         OnChange = txtCaptionChangeă      END CREATEă      'Nameă      CREATE LblName AS QLABELă         Caption = "Na&me:"ă         Left = 12ă         Top = 47ă         Width = 31ă         Transparent = 1ă      END CREATEă      CREATE txtName AS QEDITă         Text = ""ă         Left = 60ă         Top = 45ă         Width = 175ă         TabOrder = 1ă         OnChange = txtNameChangeă      END CREATEă      'Checkedă      CREATE chkChecked AS QCHECKBOXă         Caption = "&Checked"ă         Left = 12ă         Top = 90ă         Width = 68ă         TabOrder = 2ă         onClick = chkChecked_clickă      END CREATEă      'Enabledă      CREATE chkEnabled AS QCHECKBOXă         Caption = "&Enabled"ă         Left = 79ă         Top = 90ă         Width = 60ă         TabOrder = 3ă    '    Checked = 1ă         onClick = chkEnabled_clickă      END CREATEă      'Visibleă      CREATE chkVisible AS QCHECKBOXă         Caption = "&Visible"ă         Left = 148ă         Top = 90ă         Width = 50ă         TabOrder = 4ă    '    Checked = 1ă         onClick = chkVisible_clickă      END CREATEă      'ShortCută      CREATE LblShortCut AS QLABELă         Caption = "&ShortCut"ă         Left = 210ă         Top = 91ă         Width = 38ă         Transparent = 1ă      END CREATEă      CREATE CmbShortCut AS QCOMBOBOXă         AddItems  "(None)", _ă                   "Ctrl+A", _ă                   "Ctrl+B", _ă                   "Ctrl+C", _ă                   "Ctrl+D", _ă                   "Ctrl+E", _ă                   "Ctrl+F", _ă                   "Ctrl+G", _ă                   "Ctrl+H", _ă                   "Ctrl+I", _ă                   "Ctrl+J", _ă                   "Ctrl+K", _ă                   "Ctrl+L", _ă                   "Ctrl+M", _ă                   "Ctrl+N", _ă                   "Ctrl+O", _ă                   "Ctrl+P", _ă                   "Ctrl+Q", _ă                   "Ctrl+R", _ă                   "Ctrl+S", _ă                   "Ctrl+T", _ă                   "Ctrl+U", _ă                   "Ctrl+V", _ă                   "Ctrl+W", _ă                   "Ctrl+X", _ă                   "Ctrl+Y", _ă                   "Ctrl+Z", _ă                   "F1", _ă                   "F2", _ă                   "F3", _ă                   "F4", _ă                   "F5", _ă                   "F6", _ă                   "F7", _ă                   "F8", _ă                   "F9", _ă                   "F10", _ă                   "F11", _ă                   "F12", _ă                   "Crtl+F1", _ă                   "Crtl+F2", _ă                   "Crtl+F3", _ă                   "Crtl+F4", _ă                   "Crtl+F5", _ă                   "Crtl+F6", _ă                   "Crtl+F7", _ă                   "Crtl+F8", _ă                   "Crtl+F9", _ă                   "Crtl+F10", _ă                   "Crtl+F11", _ă                   "Crtl+F12", _ă                   "Shift+F1", _ă                   "Shift+F2", _ă                   "Shift+F3", _ă                   "Shift+F4", _ă                   "Shift+F5", _ă                   "Shift+F6", _ă                   "Shift+F7", _ă                   "Shift+F8", _ă                   "Shift+F9", _ă                   "Shift+F10", _ă                   "Shift+F11", _ă                   "Shift+F12", _ă                   "Shift+Ctrl+F1", _ă                   "Shift+Ctrl+F2", _ă                   "Shift+Ctrl+F3", _ă                   "Shift+Ctrl+F4", _ă                   "Shift+Ctrl+F5", _ă                   "Shift+Ctrl+F6", _ă                   "Shift+Ctrl+F7", _ă                   "Shift+Ctrl+F8", _ă                   "Shift+Ctrl+F9", _ă                   "Shift+Ctrl+F10", _ă                   "Shift+Ctrl+F11", _ă                   "Shift+Ctrl+F12", _ă                   "Ctrl+Ins", _ă                   "Shift+Ins", _ă                   "Del", _ă                   "Shift+Del", _ă                   "Alt+Enter"ă         ItemIndex = 0ă         Left = 265ă         Top = 86ă         Width = 95ă         DropDownCount = 11ă         TabOrder = 5ă         OnChange = cmbShortCut_Changeă      END CREATEă      'Left buttonă      CREATE cmdLeft AS QBUTTONă         Caption = ""ă         BMPHandle = ARW06LT_bmpă         Left = 12ă         Top = 120ă         Width = 40ă         Height = 22ă         TabOrder = 6ă         onClick = cmdLeft_Clickă      END CREATEă      'Right buttonă      CREATE cmdRight AS QBUTTONă         Caption = ""ă         BMPHandle = ARW06RT_bmpă         Left = 52ă         Top = 120ă         Width = 40ă         Height = 22ă         TabOrder = 7ă         onClick = cmdRight_Clickă      END CREATEă      'Down Buttonă      CREATE cmdDown AS QBUTTONă         Caption = ""ă         BMPHandle = ARW06DN_bmpă         Left = 92ă         Top = 120ă         Width = 40ă         Height = 22ă         TabOrder = 8ă         onClick = cmdDown_Clickă      END CREATEă      'Up Buttonă      CREATE cmdUp AS QBUTTONă         Caption = ""ă         BMPHandle = ARW06UP_bmpă         Left = 132ă         Top = 120ă         Width = 40ă         Height = 22ă         TabOrder = 9ă         onClick = cmdUp_Clickă      END CREATEă      'Next Buttonă      CREATE cmdNext AS QBUTTONă         Caption = "&Next"ă         Left = 175ă         Top = 120ă         Width = 60ă         Height = 22ă         TabOrder = 10ă         Spacing = 13ă         onClick = cmdNext_Clickă      END CREATEă      'Insert buttonă      CREATE cmdInsert AS QBUTTONă         Caption = "&Insert"ă         Left = 238ă         Top = 120ă         Width = 60ă         Height = 22ă         TabOrder = 11ă         onClick = cmdInsert_Clickă      END CREATEă      'Delete Buttonă      CREATE cmdDelete AS QBUTTONă         Caption = "&Delete"ă         Left = 301ă         Top = 120ă         Width = 60ă         Height = 22ă         TabOrder = 12ă         onClick = cmdDelete_Clickă      END CREATEă      'List Itemsă      CREATE LstItems AS QLISTBOXă         Left = 12ă         Top = 145ă         Width = 349ă         Height = 180ă         TabOrder = 13ă         ItemIndex=0ă         additemsă         item(0)=""ă         itemindex=0ă         onClick = lstItems_Clickă      END CREATEă      'Wizard Butttonă      CREATE cmdWizard AS QBUTTONă         Caption = "Wi&zard"ă         BMPHandle = MENU_bmpă         Left = 265ă         Top = 15ă         Width = 90ă         Height = 41ă      END CREATEă      'Preview Buttonă      CREATE cmdPreview AS QBUTTONă         Caption = "Previe&w"ă         BMPhandle = preview_bmpă         Left = 410ă         Top = 15ă         Width = 115ă         Height = 73ă         TabOrder = 16ă         OnClick = cmdPreview_Clickă      END CREATEă      'Gridă      CREATE stgItems AS QSTRINGGRIDă         Left = 379ă         Top = 145ă         Height = 180ă         Width = 162ă         TabOrder = 17ă         ColCount = 2ă         RowCount = 8ă         DefaultColWidth = 104ă         DefaultRowHeight = 19ă         ScrollBars = 1ă         ColWidths(0) = 53ă         Separator = ","ă         Cell(0,0) = "Properties"ă         Cell(1,0) = "Values"ă         Cell(0,1) = "Name"ă         Cell(0,2) = "Caption"ă         Cell(0,3) = "Checked"ă         Cell(0,4) = "Enabled"ă         Cell(0,5) = "Visible"ă         Cell(0,6) = "ShortCut"ă         Cell(0,7) = "Level"ă         FixedCols = 1ă         FixedRows = 1ă         col=0 ă         row=0ă         enabled = Falseă      END CREATEă   End CreateăEND CREATEăăwith stgItemsă  .Cell(1,1) = "" ă  .Cell(1,2) = "" ă  .Cell(1,3) = "0 -False" ă  .Cell(1,4) = "0 -False" ă  .Cell(1,5) = "0 -False" ă  .Cell(1,6) = "0 -(None)" ă  .Cell(1,7) = "0" ăend withăăSUB mnuFileNew_Click (Sender as QMENUITEM)ă   NewMenuăEnd SubăăSUB mnuFileOpen_Click (Sender as QMENUITEM)ă   FileOpenăEnd SubăăSUB mnuFileSave_Click (Sender as QMENUITEM)ă   SaveMenuăEnd SubăăSUB mnuFileSaveAs_Click (Sender as QMENUITEM)ă   SaveAsăEND SUBăăSUB mnuFileExit_Click (Sender as QBUTTON)ă    ExitProgramăEND SUBăăSUB mnuViewTBar_Click (Sender AS QMENUITEM)ă   if mnuViewTBar.Checked thenă      mnuViewTBar.Checked = Falseă      pnlToolBar.Visible = Falseă      frmMain.Height = 395ă   elseă      mnuViewTBar.Checked = Trueă      pnlToolBar.Visible = Trueă      frmMain.Height = 430ă   end ifăEND SUBăăSub mnuViewOptions_Click (Sender as QMENUITEM)ă   OptionsăEND SUBăăSUB mnuHelpAbout_Click (Sender AS QMENUITEM) ă   AboutăEND SUBăăSUB cmdNew_Click (Sender as QButton)ă   NewMenuăEnd SubăăSUB cmdOpen_Click (Sender as QButton)ă   FileOpenăEnd SubăăSUB cmdSave_Click (Sender as QButton)ă   SaveMenuăEnd SubăăSUB cmdOptions_Click (Sender as QButton)ă   OptionsăEND SUBăăSUB cmdHelp_Click (Sender as QButton)ă   AboutăEND SUBăăSUB cmdExit_Click (Sender as QButton)ă    ExitProgramăEND SUBăăSUB txtCaptionChange(Sender AS QEDIT)ă   stgItems.Cell(Indice + 1,2) = txtCaption.textă   CaptionStr = STRING$(Level, "=") + txtCaption.textă   lstItems.Item(Indice)= CaptionStrăEND SUBăăSUB txtNameChange(Sender AS QEDIT)ă   stgItems.Cell(Indice + 1,1) = txtName.textăEND SUBăăSUB ChkChecked_Click (Sender AS QCHECKBOX)ă   IF chkChecked.checked THEN ă      stgItems.Cell(Indice + 1,3) = "1 -True"ă   ELSEă      stgItems.Cell(Indice + 1,3) = "0 -False"ă   END IFăEND SUBăăSUB ChkEnabled_Click (Sender AS QCHECKBOX)ă   IF chkEnabled.checked THEN ă      stgItems.Cell(Indice + 1,4) = "1 -True"ă   ELSEă      stgItems.Cell(Indice + 1,4) = "0 -False"ă   END IFăEND SUBăăSUB ChkVisible_Click (Sender AS QCHECKBOX)ă   IF chkVisible.checked THEN ă      stgItems.Cell(Indice + 1,5) = "1 -True"ă   ELSEă      stgItems.Cell(Indice + 1,5) = "0 -False"ă   END IFăEND SUBăăSUB cmbShortCut_Change (Sender AS QCOMBOBOX)ă   DIM SelectCut as integer ă   SelectCut= cmbShortCut.ItemIndexă   stgItems.Cell(Indice + 1,6) = str$(SelectCut)+ " -" + cmbShortCut.Item(SelectCut)ăEND SUBăăSUB cmdLeft_Click(Sender as QBUTTON)ă   SetFocus (txtCaption.Handle)ă   if Level = 0 thenă      exit subă   elseă      DEC Levelă      stgItems.cell(Indice + 1,7) = str$(Level)ă      CaptionStr = STRING$(Level, "=") + txtCaption.textă      lstItems.Item(Indice)= CaptionStră   end ifăEND SUBăăSUB cmdRight_Click(Sender as QBUTTON)ă   SetFocus (txtCaption.Handle)ă   if Level = 4 thenă      exit subă   elseă      INC Levelă      stgItems.cell(Indice + 1,7) = str$(Level)ă      CaptionStr = STRING$(Level, "=") + txtCaption.textă      lstItems.Item(Indice)= CaptionStră   end ifăEND SUBăăSUB cmdDown_Click(Sender as QBUTTON)ă   SetFocus (txtCaption.Handle)ă   maxItem = lstItems.Itemcountă   IF Indice + 1 > maxItem - 1 thenă      exit subă   elseă      stgItems.SwapCols(Indice + 1, Indice + 2)ă      WriteFieldsă      Inc Indiceă      lstItems.ItemIndex = Indiceă      WriteFieldsă   end ifăEND SUBăăSUB cmdUp_Click(Sender as QBUTTON)ă   SetFocus (txtCaption.Handle)ă   if Indice = 0 THENă      exit subă   elseă      stgItems.SwapCols(Indice , Indice + 1)ă      WriteFieldsă      dec Indiceă      lstItems.ItemIndex = Indiceă      WriteFieldsă   end ifăEND SUBăăSUB cmdNext_Click(Sender as QBUTTON)ă   SetFocus (txtCaption.Handle)ă   maxItem = lstItems.Itemcount - 1ă   inc Indiceă   if Indice > maxItem thenă      If lstItems.Item(MaxItem) = "" thenă         Indice = 0ă         lstItems.ItemIndex = Indiceă         WriteFieldsă         exit subă      elseă         lstItems.additems= ""ă         lstItems.ItemIndex = Indiceă         stgItems.InsertCol(Indice + 1)ă         NewItemă         WriteFieldsă      end ifă   elseă      lstItems.ItemIndex = Indiceă      Call WriteFieldsă   end ifăEND SUBăăSUB cmdInsert_Click(Sender as QBUTTON)ă   SetFocus (txtCaption.Handle)ă   LstItems.InsertItem(Indice,"")ă   stgItems.InsertCol(Indice + 1)ă   LstItems.ItemIndex = Indiceă   NewItemăEND SUBăăSUB cmdDelete_Click(Sender as QBUTTON)ă   SetFocus (txtCaption.Handle)ă   maxItem = lstItems.Itemcount - 1ă   if maxItem = 0 thenă      LstItems.InsertItem(Indice,"")ă      stgItems.InsertCol(Indice + 1)ă      LstItems.ItemIndex = Indiceă      Level = 0ă      NewItemă      lstItems.delItems(Indice + 1)ă      stgItems.deleteCol(Indice + 2)ă   elseă      lstItems.delItems(Indice)ă      stgItems.deleteCol(Indice+1)ă      if Indice = maxItem then dec Indiceă      LstItems.ItemIndex = Indiceă      WriteFieldsă   end ifăEND SUBăăSUB lstItems_Click (Sender as QLISTBOX)ă   SetFocus (txtCaption.Handle)ă   Indice = lstItems.ItemIndexă   WriteFieldsăEND SUBăăSUB cmdPreview_Click (Sender as QBUTTON)ă   if ValidateMenu Thenă      Screen.Cursor = crHourGlassă      MadePreviewMenuă      WriteCodeă      Screen.Cursor = crDefaultă      frmMain.Visible =Falseă      frmPreview.ShowModală      frmMain.Visible = Trueă      SetFocus (txtCaption.Handle)ă    END IFăEnd SUbăJordi Ramos                    Form Designer Options          correodejordi@wanadoo.es       06-18-01 (07:00)       RapidQ                 247  7079     Frmoptio.bas'$Include "RapidQ.inc"ăDeclare Sub cmdBrowser_Click (Sender as QBUTTON)ăDeclare Sub chkOptHardTabs_Click (Sender AS QRADIOBUTTON) ăDeclare Sub chkOptSoftTabs_Click (Sender AS QRADIOBUTTON) ăDeclare Sub cmOptionsOk_Click (Sender as QBUTTON)ăDeclare Sub cmOptionsCancel_Click (Sender as QBUTTON)ăDeclare Function  BrowseForFolder(hwndOwner As Long, sPrompt As String) As StringăăCREATE frmOptions AS QFORMă    ICOHandle = MenuDesigner_icoă    Caption = "MenuDesigner Options"ă    Width = 450ă    Height = 350ă    DelBorderIcons = biMinimize ă    DelBorderIcons = biMaximizeă    BorderStyle = bsSingle ă    Centeră    CREATE GroupBox1 AS QGROUPBOXă        Caption = "Designer"ă        Left = 10ă        Top = 9ă        Width = 321ă        Height = 185ă'        TabOrder = 0ă        CREATE Label1 AS QLABELă            Caption = "Work Folder: "ă            Left = 25ă            Top = 25ă            Width = 64ă        END CREATEă        CREATE txtWorkFolder AS QEDITă            Text = ""ă            Left = 25ă            Top = 41ă            Width = 225ă'            TabOrder = 1ă        END CREATEă        CREATE cmdBrowser AS QBUTTONă            Caption = "..."ă            Left = 256ă            Top = 42ă            Width = 35ă            Height = 20ă'            TabOrder = 2ă            onClick = cmdBrowser_Clickă        END CREATEă        CREATE GroupBox2 AS QGROUPBOXă            Caption = "Menu Item Defaults"ă            Left = 25ă            Top = 77ă            Width = 145ă            Height = 89ă            TabOrder = 0ă            CREATE chkOptChecked AS QCHECKBOXă                Caption = "Checked"ă                Left = 20ă                Top = 20ă'                TabOrder = 1ă            END CREATEă            CREATE chkOptEnabled AS QCHECKBOXă                Caption = "Enabled"ă                Left = 20ă                Top = 40ă'                TabOrder = 2ă            END CREATEă            CREATE chkOptVisible AS QCHECKBOXă                Caption = "Visible"ă                Left = 20ă                Top = 60ă'                TabOrder = 3ă            END CREATEă        END CREATEă        CREATE Label3 AS QLABELă            Caption = "Language:"ă            Left = 198ă            Top = 77ă            Width = 56ă            Transparent = 1ă        END CREATEă        CREATE cmbOptLanguage AS QCOMBOBOXă            Text = "English"ă            Left = 200ă            Top = 100ă            Width = 105ă'            TabOrder = 4ă        END CREATEă    END CREATEă    CREATE GroupBox3 AS QGROUPBOXă        Caption = "Code Genarador"ă        Left = 8ă        Top = 202ă        Width = 321ă        Height = 110ă'        TabOrder = 2ă        CREATE GroupBox4 AS QGROUPBOXă            Caption = ""ă            Left = 25ă            Top = 15ă            Width = 140ă            Height = 80ă            TabOrder = 2ă            CREATE chkOptPreDeclares AS QRADIOBUTTONă                Caption = "PreDeclares"ă                Left = 5ă                Top = 15ă                Width = 89ă                'enabled = Falseă'                TabOrder = 0ă            END CREATEă            CREATE chkOptDeclares AS QRADIOBUTTONă                Caption = "Uncoment Declares"ă                Left = 5ă                Top = 35ă                Width = 121ă                'enabled = Falseă'                TabOrder = 1ă            END CREATEă            CREATE chkOptOnlyMenu AS QRADIOBUTTONă                Caption = "Only Code for menu"ă                Left = 5ă                Top = 55ă                'enabled = Falseă'                TabOrder = 2ă            END CREATEă        END CREATEă        CREATE GroupBox5 AS QGROUPBOXă            Caption = ""ă            Left = 180ă            Top = 15ă            Width = 120ă            Height = 80ă            TabOrder = 2ă            CREATE chkOptHardTabs AS QRADIOBUTTONă                Caption = "Hard Tabs"ă                Left = 5ă                Top = 15ă                Width = 81ă                onclick = chkOptHardTabs_Clickă'                TabOrder = 3ă            END CREATEă            CREATE chkOptSoftTabs AS QRADIOBUTTONă                Caption = "Soft Tabs"ă                Left = 5ă                Top = 35ă                Width = 73ă                onclick = chkOptSoftTabs_Clickă'                TabOrder = 4ă            END CREATEă            CREATE Label2 AS QLABELă                Caption = "Spaces:"ă                Left = 30ă                Top = 55ă                Width = 40ă                Transparent = 1ă            END CREATEă            CREATE txtOptSpaces AS QEDITă                Text = "3"ă                Left = 75ă                Top = 53ă                Width = 25ă                enabled = Falseă                MaxLength = 1ă'                TabOrder = 5ă            END CREATEă        END CREATEă    END CREATEă    CREATE cmdOptionsOK AS QBUTTONă        Caption = "&OK"ă        Left = 352ă        Top = 250ă        Kind = bkOKă'        TabOrder = 3ă        onclick = cmOptionsOk_Clickă    END CREATEă    CREATE cmdOpttionsCancel AS QBUTTONă        Caption = "Cancel"ă        Left = 352ă        Top = 285ă        Kind = bkCancelă'        TabOrder = 4ă        onclick = cmOptionsCancel_Clickă    END CREATEăEND CREATEăăSub cmdBrowser_Click (Sender as QBUTTON)ă   Dim strResFolder As Stringă    Dim hWnd as Longă    hWnd = frmOptions.handleă    strResFolder = BrowseForFolder(hwnd, "Please select a folder.")ăă    If strResFolder <> "" Thenă       txtWorkFolder.text = strResFolderă    End IfăăEnd SubăăSub chkOptHardTabs_Click (Sender AS QRADIOBUTTON) ă    if chkOptHardTabs.Checked then txtOptSpaces.enabled = FalseăEnd SubăăSub chkOptSoftTabs_Click (Sender AS QRADIOBUTTON) ă    if chkOptSoftTabs.Checked then txtOptSpaces.enabled = TrueăEnd SubăăSub cmOptionsOk_Click (Sender as QBUTTON)ă   SetDefaultsă   frmOptions.closeăEnd SubăăSub cmOptionsCancel_Click (Sender as QBUTTON)ă   GetDefaultsă   frmOptions.closeăEnd SubăăFunction BrowseForFolder(hwndOwner As Long, sPrompt As String) As Stringă    'declare variables to be usedă     Dim iNull As Integeră     Dim lpIDList As Longă     Dim lResult As Longă     Dim sPath As Stringă'     Dim udtBI As BrowseInfoăă    'initialise variablesă     With udtBIă        .hwndOwner = hwndOwneră        .lpszTitle = lstrcat(sPrompt, "")ă        .ulFlags = BIF_RETURNONLYFSDIRS or BIF_DONTGOBELOWDOMAINă     End Withăă    'Call the browse for folder APIă     lpIDList = SHBrowseForFolder(udtBI)ă     ă    'get the resulting string pathă     If lpIDList Thenă        sPath = String$(260, 0)ă        lResult = SHGetPathFromIDList(lpIDList, sPath)ă        Call CoTaskMemFree(lpIDList)ă        iNull = InStr(sPath, chr$(0))ă        If iNull Then sPath = Left$(sPath, iNull - 1)ă     End Ifăă    'If cancel was pressed, sPath = ""ă     BrowseForFolder = sPathăEnd Functionăăă'Form.ShowModalăJordi Ramos                    Forms for Form Designer        correodejordi@wanadoo.es       06-18-01 (07:00)       RapidQ                 105  2965     Frmprevi.bas$include "QREdit.inc"ă$RESOURCE Copy_bmp as "Bitmaps\Copy.bmp"ă'$RESOURCE Exit_bmp as "Bitmaps\Exit.bmp"ă'$RESOURCE Save_bmp as "Bitmaps\Save.bmp"ăăDeclare sub cmdSaveCode_click (sender as QBUTTON)ăDeclare sub cmdCopyCode_click (sender as QBUTTON)ăDeclare sub cmdClosePreview_click (sender as QBUTTON)ăDECLARE SUB frmResizeăăăCREATE FrmPreview AS QFORMă    ICOHandle = MenuDesigner_icoă    Caption = "MenuDesigner  Preview  $NoName.inc" ă    Width = 575ă    Height = 460ă    Autoscroll = 0ă    'DelBorderIcons = biMinimize or biMaximizeă    OnResize = frmResizeă    windowState = wsMaximizedă    Centeră    CREATE cmdSaveCode AS QBUTTONă        BMPHandle = Save_bmpă        Caption = "&Save Code"ă        Left = 460ă        Top = 15ă        Width = 100ă        onclick = cmdSaveCode_clickă    END CREATEă    CREATE cmdCopyCode AS QBUTTONă        BMPHandle = Copy_bmpă        Caption = "&Copy Code"ă        Left = 460ă        Top = 50ă        Width = 100ă        onclick = cmdCopyCode_Clickă    END CREATEă    CREATE cmdClosePreview AS QBUTTONă        BMPHandle = Exit_bmpă        Caption = "C&lose Preview"ă        Left = 460ă        Top = 85ă        Width = 100ă        onclick = cmdClosePreview_Clickă    END CREATEă    CREATE rhtCode AS QREdit ă        Left = 15ă        Top = 15ă        Width = 425ă        Height = 390ă        WordWrap = Falseă        Cleară        ScrollBars = 3ă        AddSyntaxes("DECLARE", "SUB", "CREATE ", "END ", " as ", "QMAINMENU", "QMENUITEM")ă        HiLightă        ReadOnly = 0ă    END CREATEăEND CREATEăăăăsub cmdSaveCode_Click (Sender as QButton)ă   dim ext$ as stringă   Dim p as integeră   SaveDialog.Caption = "Save Menu Include as..."ă   SaveDialog.Filter = "Menu Include (*.inc)|*.inc|All Files (*.*)|*.*"ăă   if ArchivoMenu <> "$NoName.inc" thenă      SaveDialog.FileName = ArchivoMenuă   elseă      SaveDialog.FileName = "$NoName.inc"ă   end if ăă   IF SaveDialog.Execute THEN ă     ArchivoMenu = SaveDialog.FileNameă     ext$ = right$(ArchivoMenu,4)ă     if ext$ <> ".inc" then ArchivoMenu = ArchivoMenu + ".inc" ă     rhtCode.PlainText = 1ă     rhtCode.SaveToFile ArchivoMenuă     p = rinstr(ArchivoMenu,"\\")ă     ArchivoMenu = mid$(ArchivoMenu,p + 1)ă     frmPreview.Caption = "MenuDesigner Preview  " + ArchivoMenuă     showmessage ArchivoMenu + " Saved"ă  END IF ă  rhtCode.PlainText = 0ăEnd Subăăsub cmdCopyCode_Click (Sender as QButton)ă    ClipBoard.Cleară    rhtCode.SelectAllă    rhtCode.CopyToClipBoard ă    rhtCode.SelStart = 1ăEnd Subăăsub cmdClosePreview_Click (Sender as QButton)ă   frmPreview.Closeăend subăăsub frmResizeă   rhtCode.width = frmPreview.clientwidth - 150ă   rhtCode.height = frmPreview.clientheight - rhtCode.top - 10ă   cmdSaveCode.Left = frmPreview.clientwidth - 115ă   cmdCopyCode.Left = frmPreview.clientwidth - 115ă   cmdClosePreview.Left = frmPreview.clientwidth - 115ăend sub  ăJordi Ramos                    Setup for Form Designer        correodejordi@wanadoo.es       06-18-01 (07:00)       RapidQ                 29   1057     Inifiles.basDeclare Function GetIniPaht as stringăDeclare Function GetIni(szSection As String, svVariant As String, Default As String) As StringăDeclare Sub WriteIni(szSection As String, svVariant As String, svValue As String)ăă'User's Variables ăDim iLenght As Integerădim lpBuffer as string  ădim uSize as Longădim svReturn as stringăuSize = 260ăă'Function to GET Windows PahtăFunction GetIniPahtă   lpBuffer = Space$(uSize)ă   iLenght = GetWindowsDirectory( Varptr(lpBuffer), uSize)ă   GetIniPaht = Left$(lpBuffer, iLenght)ăEnd Functionăă'Function to GET information into an INI FileăFunction GetIni(szSection As String, svVariant As String, Default As String) As Stringă   lpBuffer = Space$(uSize)ă   iLenght = GetPrivateProfileString(szSection, svVariant, Default, @lpBuffer, uSize, szFile)ă   GetIni = Left$(lpBuffer, ilenght)ăEnd Functionăă'Sub  to WRITE information from an INI FileăSub WriteIni(szSection As String, svVariant As String, svValue As String)ă   WritePrivateProfileString szSection, svVariant, svValue, szFileăEnd SubăAchilles Mina                  perpetual Calendar             Achilles B. Mina               06-17-01 (  :  )       RAPIDQ                 1783 47271    calendri.bas'===========================================================================ă' Subject: perpetual Calendar                 Date: 06-17-01 (  :  )       ă'  Author: Achilles Mina                      Code: RapidQ                 ă'  Origin:                                  Packet: RAPIDQ.ABCă'===========================================================================ă'CalendriX (prototype), a virtually perpetual calendar ă'By Achilles B. Minaă'Updated: June 17, 2001ăă'This utility is based on Days, a dates-days calculator. Days isă'downloadable from ZDNet, Nonags and other freeware sites, and at my ă'website at http://pages.zdnet.com/wasaywasay/wasaywasay/ăă'Nota bene: the algorithms below use the date format mm:dd:yyyy. Alsoă'since this is just an outtake from a larger program, some variables andă'quite possibly, even a few routines are superfluous. Sorry.ăă'You can do as you please with this code.ăă$INCLUDE "RAPIDQ.INC"ă$ESCAPECHARS ONăă$RESOURCE CalendriXIco AS "Calendrix.ico"ă$RESOURCE clocktow AS "clocktow.wav"ă$RESOURCE camera AS "camera.wav"ă$RESOURCE cuckoo AS "cuckoo.wav"ă$RESOURCE gong AS "gong.wav"ă$RESOURCE handbell AS "handbell.wav"ă$RESOURCE whoosh AS "whoosh.wav"ă$RESOURCE whoosh AS "wipe.wav"ăăConst AW_CENTER = &H10 'Makes the window appear to collapse inward if AW_HIDE is used or expand outward if the AW_HIDE is not used.ăConst AW_HIDE = &H10000 'Hides the window. By default, the window is shown.ăăDECLARE FUNCTION AnimateWindow Lib "user32" Alias "AnimateWindow"(ByVal hwnd As Long, ByVal dwTime As Long, ByVal dwFlags As Long) As IntegerăDECLARE SUB Animate(Handle)ăDECLARE SUB Deanimate(Handle)ăDECLARE SUB CloseNoteProductFormăDECLARE SUB ShowNotesăDECLARE SUB NotesShowăDECLARE SUB EMailMeăDECLARE SUB SendMeăDECLARE SUB ColorsăDECLARE SUB New_DateăDECLARE SUB DaysDifferenceăDECLARE FUNCTION GetAOdays AS INTEGERăDECLARE FUNCTION GetOdays AS INTEGERăDECLARE SUB DayTodayLtăDECLARE SUB InitializeăDECLARE SUB MilTimeăDECLARE SUB TimeăDECLARE SUB NightsăDECLARE SUB NoisemakerăDECLARE SUB CalendarăDECLARE SUB PopMonthsăDECLARE SUB MonthChanged(Sender AS QMENUITEM)ăDECLARE SUB YearChangedăDECLARE SUB DayChanged(Sender AS QCOOLBTN)ăDECLARE SUB LoopColorăDECLARE SUB UpdownYear(Sender AS QCOOLBTN)ăDECLARE SUB BlinkăăăDEFWORD monthnow, monththen, monthchecked, yearnow, yearthen, betyearsăDEFBYTE blinking,military,soundoff,juston,colorcount,countyrsmos,leapnow, leapthen, bleap, circa, weekday, fmonth, emonth, pmonth, todate, alwaysăDEFINT totyears, totmonths, byear, bmonth, bleapyear, yearhence, AOyears, fyear, eyear, pyearăDEFINT Bdays, rundays, edays, otherdays, totdays, yeardays,Odays, AOdays, diffdays, betleaps, daynow, daythen, AdaysăDEFINT lastColor, fday, eday, pday, neweday, newpday, monthdays, daysthence, dayshence, bday, daysăDEFSTR PreWeeksPanel$, wday$, month$, thedate$, inifileăăCREATE Arial10B AS QFONTă  Name = "Arial"ă  Size = 10ă  AddStyles(fsBold)ăEND CREATEăăCREATE Arial9B AS QFONTă  Name = "Arial"ă  Size = 12ă  AddStyles(fsBold)ăEND CREATEăăCREATE Timer1 AS QTIMERă  Enabled = 1ă  Interval = 1000ă  OnTimer = TimeăEND CREATEăăCREATE Timer2 AS QTIMERă  Enabled = 0ă  Interval = 1ă  OnTimer = NotesShowăEND CREATEăăCREATE Timer3 AS QTIMERă  Enabled = 1ă  Interval = 80ă  OnTimer = LoopColorăEND CREATE ăăă  CREATE CalendarForm AS QFORMă    Caption = "CalendriX"ă    Width = 215ă    Height = 225ă    Color = &HEEFAFA ă    BorderStyle = 1ă    DelBorderIcons(biMaximize)ă    DelBorderIcons(biMinimize)ă    Hint = "Click on form to change background color."ă    ShowHint = 1ă    Centeră    OnClick = Colorsă    CREATE CDay1 AS QCOOLBTNă      Caption = "1"ă      Left = 7ă      Top = 71ă      Width = 27ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay8 AS QCOOLBTNă      Caption = "8"ă      Left = 7ă      Top = 96ă      Width = 27ă      Flat = 1ă      OnClick = DayChanged  ă    END CREATEă    CREATE CDay15 AS QCOOLBTNă      Caption = "15"ă      Left = 7ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay29 AS QCOOLBTNă      Caption = "29"ă      Left = 7ă      Top = 169ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay22 AS QCOOLBTNă      Caption = "22"ă      Left = 7ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay9 AS QCOOLBTNă      Caption = "9"ă      Left = 35ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay2 AS QCOOLBTNă      Caption = "2"ă      Left = 35ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay16 AS QCOOLBTNă      Caption = "16"ă      Left = 35ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay30 AS QCOOLBTNă      Caption = "30"ă      Left = 35ă      Top = 169ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay23 AS QCOOLBTNă      Caption = "23"ă      Left = 35ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay10 AS QCOOLBTNă      Caption = "10"ă      Left = 63ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay3 AS QCOOLBTNă      Caption = "3"ă      Left = 63ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay17 AS QCOOLBTNă      Caption = "17"ă      Left = 63ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay31 AS QCOOLBTNă      Caption = "31"ă      Left = 63ă      Top = 169ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay24 AS QCOOLBTNă      Caption = "24"ă      Left = 63ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay11 AS QCOOLBTNă      Caption = "11"ă      Left = 91ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay4 AS QCOOLBTNă      Caption = "4"ă      Left = 91ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay18 AS QCOOLBTNă      Caption = "18"ă      Left = 91ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay25 AS QCOOLBTNă      Caption = "25"ă      Left = 91ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay12 AS QCOOLBTNă      Caption = "12"ă      Left = 119ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay5 AS QCOOLBTNă      Caption = "5"ă      Left = 119ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay19 AS QCOOLBTNă      Caption = "19"ă      Left = 119ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay26 AS QCOOLBTNă      Caption = "26"ă      Left = 119ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay13 AS QCOOLBTNă      Caption = "13"ă      Left = 147ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay6 AS QCOOLBTNă      Caption = "6"ă      Left = 147ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay20 AS QCOOLBTNă      Caption = "20"ă      Left = 147ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay27 AS QCOOLBTNă      Caption = "27"ă      Left = 147ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay14 AS QCOOLBTNă      Caption = "14"ă      Left = 175ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay7 AS QCOOLBTNă      Caption = "7"ă      Left = 175ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay21 AS QCOOLBTNă      Caption = "21"ă      Left = 175ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay28 AS QCOOLBTNă      Caption = "28"ă      Left = 175ă      Top = 144ă      Width = 27ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE BlinkButt AS QOVALBTNă      Caption = "B"ă      Left = 91ă      Top = 169ă      Height = 25ă      Width = 27ă      Flat = 1ă      Layout = -1ă      Hint = "Click to switch on/off blinking highlight."ă      ShowHint = 1ă      OnClick = Blinkă    END CREATEă    CREATE MilButt AS QOVALBTNă      Caption = "T"ă      Left = 119ă      Top = 169ă      Height = 25ă      Width = 27ă      Flat = 1ă      Layout = -1ă      Hint = "Click to toggle-switch between \nstandard time and military time."ă      ShowHint = 1ă      OnClick = MilTime ă    END CREATEă    CREATE NoiseButt AS QOVALBTNă      Caption = "S"ă      Left = 147ă      Top = 169ă      Height = 25ă      Width = 27ă      Flat = 1ă      Layout = -1ă      Hint = "Click to turn off sound effects."ă      ShowHint = 1ă      OnClick = NoiseMaker ă    END CREATEă    CREATE NotesButt AS QOVALBTNă      Caption = "?"ă      Left = 175ă      Top = 169ă      Height = 25ă      Width = 27ă      Flat = 1ă      Layout = -1ă      Hint = "Click to know more about CalendriX."ă      ShowHint = 1ă      OnClick = ShowNotes ă    END CREATEă    CREATE DayButt AS QOVALBTNă      Left = 175ă      Top = 144ă      Height = 25ă      Width = 27ă      Color = clGreenă      Flat = 1ă      Layout = -1ă    END CREATEă    CREATE MonthsPop AS QPOPUPMENUă      CREATE Jan AS QMENUITEMă        Caption = "January"ă        OnClick = MonthChangedă      END CREATEă      CREATE Feb AS QMENUITEMă        Caption = "February"ă        OnClick = MonthChangedă      END CREATEă      CREATE Mar AS QMENUITEMă        Caption = "March"ă        OnClick = MonthChangedă      END CREATEă      CREATE Apr AS QMENUITEMă        Caption = "April"ă        OnClick = MonthChangedă      END CREATEă      CREATE May AS QMENUITEMă        Caption = "May"ă        OnClick = MonthChangedă      END CREATEă      CREATE Jun AS QMENUITEMă        Caption = "June"ă        OnClick = MonthChangedă      END CREATEă      CREATE Jul AS QMENUITEMă        Caption = "July"ă        OnClick = MonthChangedă      END CREATEă      CREATE Aug AS QMENUITEMă        Caption = "August"ă        OnClick = MonthChangedă      END CREATEă      CREATE Sep AS QMENUITEMă        Caption = "September"ă        OnClick = MonthChangedă      END CREATEă      CREATE Oct AS QMENUITEMă        Caption = "October"ă        OnClick = MonthChangedă      END CREATEă      CREATE Nov AS QMENUITEMă        Caption = "November"ă        OnClick = MonthChangedă      END CREATEă      CREATE Dece AS QMENUITEMă        Caption = "December"ă        OnClick = MonthChangedă      END CREATE      ă    END CREATEă    CREATE MoYe AS QPANELă      Left = 6ă      Top = 4ă      Width = 197ă      Height = 34ă      BevelInner = 1ă      BorderStyle = 0ă      CREATE CMonth AS QPANELă        Top = 5ă        Left = 4ă        Height = 24ă        Width = 95ă        Color = &H00FF00ă        Font = Arial9Bă        BevelOuter = bvNoneă        BevelInner = bvLoweredă        Alignment = taLeftă        Hint = "Click then select month of choice."ă        ShowHint = 1ă        OnClick = PopMonthsă      END CREATEă      CREATE Increase AS QCOOLBTNă        Top = 5ă        Left = 100ă        Width = 26ă        Height = 12ă        Flat = 1ă        Caption = ">"ă        Hint = "Go up one year."ă        ShowHint = 1ă        OnClick = UpdownYeară      END CREATEă      CREATE Decrease AS QCOOLBTNă        Top = 17ă        Left = 100ă        Width = 26ă        Height = 12ă        Flat = 1ă        Caption = "<"ă        Hint = "Go down one year."ă        ShowHint = 1ă        OnClick = UpdownYeară      END CREATEă      CREATE CYear AS QEDITă        Top = 5ă        Left = 126ă        Height = 24ă        Width = 66ă        Autosize = 0ă        Color = &H00FF00ă        Font = Arial9Bă        Hint = "Click then type in new year."ă        ShowHint = 1ă        OnChange = YearChangedă      END CREATEă    END CREATEă    CREATE One AS QPANELă      Left = 7ă      Top = 42ă      Caption = "Sun"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Initializeă    END CREATEă    CREATE Two AS QPANELă      Left = 35ă      Top = 42ă      Caption = "Mon"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Initializeă    END CREATEă    CREATE Three AS QPANELă      Left = 63ă      Top = 42ă      Caption = "Tue"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Initializeă    END CREATEă    CREATE Four AS QPANELă      Left = 91ă      Top = 42ă      Caption = "Wed"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Initializeă    END CREATEă    CREATE Five AS QPANELă      Left = 119ă      Top = 42ă      Caption = "Thu"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Initializeă    END CREATEă    CREATE Six AS QPANELă      Left = 147ă      Top = 42ă      Caption = "Fri"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Initializeă    END CREATEă    CREATE Seven AS QPANELă      Left = 175ă      Top = 42ă      Caption = "Sat"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Initializeă    END CREATEă  CREATE NoteProductForm AS QFORM    ă    Top = Screen.Height/2 + 25ă    Left = Screen.Width/2 - 170ă    Width = 340 '320ă    Height = 205ă    Color = CalendarForm.Color '&HCC000 '&HABC777ă    DelBorderIcons(biMaximize)ă    DelBorderIcons(biMinimize)ă    BorderStyle = bsSingleă    FormStyle = fsStayOnTopă    Caption = "Notes on CalendriX"ă    OnClose = CloseNoteProductFormă    CREATE DXNotes AS QCANVASă      Top = 21ă      Left = 242ă      Height = 63ă      Width = 84ă      Color = 0ă      Cursor = -21ă      Hint = "Click to email comment or bug report."ă      Showhint = 1ă      OnClick = EmailMeă    END CREATEă    CREATE ProductList AS QLISTBOXă	Width = 232ă      Height = 177ă      AddItems ""ă      AddItems "Welcome!ă      AddItems ""ă      AddItems "  »  Using CalendriX is straightforward.ă      AddItems "      To change the month, click on the ă      AddItems "      Month panel, then select the month. ă      AddItems "      To change the year, select the Yeară      AddItems "      panel, then type in the new year.ă      AddItems "      Or you can use the arrow-left oră      AddItems "      arrow-right button to change theă      AddItems "      year entry one year at a time.ă      AddItems "      To change the day, simply click onă      AddItems "      the appropriate button.ă      AddItems ""                                                                                                                            ă      AddItems "  »  Theoretically, CalendriX can display ă      AddItems "      dates from Year 0 to Year 65000, a ă      AddItems "      span of over 23 million days. For aă      AddItems "      meaningful result, however, confine ă      AddItems "      dates to after September 14, 1752-- ă      AddItems "      the day our calendar, the Gregorian, ă      AddItems "      was last significantly amended and  ă      AddItems "      the day it was adopted by Britain.                                                                            ă      AddItems ""ă      AddItems "  »  Nota bene: this prototype uses theă      AddItems "      date format mm:dd:yyyy. If you have ă      AddItems "      set your date format differently,ă      AddItems "      CalendriX will display the wrongă      AddItems "      the dates.ă      AddItems ""ă      AddItems "  »  CalendriX remembers your preferencesă      AddItems "      so there's no need to readjust your ă      AddItems "      settings each time you open it. ă      AddItems ""          ă      AddItems "Programming"ă      AddItems "  »  CalendriX was written in Rapid-Q,"ă      AddItems "      a compiler developed by William Yu."ă      AddItems "      It's also freeware and downloadable"ă      AddItems "      at www.basicguru.com/abc/rapidq."     ă    END CREATEă    CREATE NotesP0 AS QLABELă      Top = 3ă      Left = 255ă      Width = 84ă      Font = Arial10Bă      Caption = "CalendriX"      ă      Alignment = taCenteră      Layout = -1ă      LabelStyle = 1ă      Hint = "Click to visit website"ă      ShowHint = 1ă      OnClick = SendMeă    END CREATEă    CREATE NotesP1 AS QLABELă      Top = 85ă      Left = 235ă      Caption = "  Copyright (c) 2001\n    Achilles B. Mina\n\nThis is FREEWARE.\n Not for commercial\n       distribution."ă    END CREATEă  END CREATEă  END CREATEăăăSUB Initializeă  RANDOMIZEă  IF FILEEXISTS("calendrix.ini") <> 0 THENă    DIM File AS QFILESTREAMă    File.Open("calendrix.ini",fmOpenReadWrite)ă    inifile = File.ReadStr(File.Size)ă    File.Closeă  END IFă  colorcount = VAL(LEFT$(inifile,1))ă  military = VAL(MID$(inifile,2,1))ă  soundoff = VAL(MID$(inifile,3,1))ă  blinking = VAL(MID$(inifile,4,1))ă  DayButt.Color = VAL(MID$(inifile,5,16))ă  juston = 1ă  Colorsă  juston = 0ă  IF soundoff = 0 THEN PLAYWAV(clocktow,1)ă  Application.IcoHandle = CalendriXIcoă  Application.HintShortPause = 25ă  Application.HintPause = 25ă  Application.HintHidePause = 12000ă  DayTodayLtă  New_Dateă  Timeă  CalendarăEND SUBăăSUB MilTimeă  IF soundoff = 0 THEN PLAYWAV(gong,1)ă  IF military = 0 THENă    military = 1ă  ELSE ă    military = 0ă  END IFă  TimeăEND SUBăăSUB Timeă  DEFINT milhour, hour, mină  hour =  VAL(LEFT$(TIME$,2))ă  min = VAL(MID$(TIME$,4,2))     ă  milhour = houră  IF hour >= 12 AND hour < 24 THENă    hour = hour - 12ă    IF hour = 0 THEN hour = 12ă    ampm$ = " PM"ă  ELSEIF hour = 0 THEN ă    hour = 12ă    ampm$ = " AM"ă  ELSEă    ampm$ = " AM"ă  END IFă  IF min < 10 THENă    IF military = 1 THENă      thetime$ = STR$(milhour) + ":0" + STR$(min) + RIGHT$(TIME$,3)ă    ELSEă      thetime$ = STR$(hour) + ":0" + STR$(min) + RIGHT$(TIME$,3) + ampm$ă    END IFă  ELSEă    IF military = 1 THENă      thetime$ = SPACE$(5) + TIME$ă    ELSEă      thetime$ = STR$(hour) + ":" + STR$(min) + RIGHT$(TIME$,3) + ampm$ă    END IFă  END IFă  CalendarForm.Caption = "CalendriX" + SPACE$(10) + thetime$ăEND SUBăăăSUB New_Dateă  IF soundoff = 0 THEN PLAYWAV(whoosh,1)ă  byear = VAL(REPLACESUBSTR$(CYear.Text,",",""))ă  fday = bdayă  fyear = byeară  fmonth = bmonth                       ă  IF fyear = 0 THENă    fyear = 1ă  ELSEIF fyear < 0 THENă    fyear = ABS(fyear) + 1ă  ELSE                                   ă    DaysDifferenceă  END IF ăEND SUBăăSUB DaysDifference    ăă    monthnow = fmonthă    yearnow = fyeară    daynow = fdayă    monththen = 1    ă    yearthen = 1900 'arbitrary but don't change; day-of-week algorithm uses ită    daythen = 1  ăă  IF yearnow < yearthen THENă    SWAP(yearnow,yearthen)ă    SWAP(monthnow,monththen)ă    SWAP(daynow,daythen)ă  END IFă  AOyears = yearnow - yearthenă  betyears = AOyears - 1ă  IF AOyears = 0 THENă    IF monthnow = monththen THENă      diffdays = daynow - daythenă    ELSEă      IF yearthen MOD 4 = 0 THENă        leapthen = 1ă        IF yearthen MOD 100 = 0 AND yearthen MOD 400 <> 0 THEN leapthen = 0ă      ELSE ă        leapthen = 0ă      END IFă      IF yearnow MOD 4 = 0 THENă        leapnow = 1ă        IF yearnow MOD 100 = 0 AND yearnow MOD 400 <> 0 THEN leapnow = 0ă      ELSE ă        leapnow = 0ă      END IF                ă      SELECT CASE monththenă        CASE 1ă          Adays = daythenă        CASE 2ă          Adays = 31 + daythenă        CASE 3ă          Adays = 59 + daythen + leapthenă        CASE 4ă          Adays = 90 + daythen + leapthenă        CASE 5ă          Adays = 120 + daythen + leapthenă        CASE 6ă          Adays = 151 + daythen + leapthenă        CASE 7ă          Adays = 181 + daythen + leapthenă        CASE 8ă          Adays = 212 + daythen + leapthenă        CASE 9ă          Adays = 243 + daythen + leapthenă        CASE 10ă          Adays = 273 + daythen + leapthenă        CASE 11ă          Adays = 304 + daythen + leapthenă        CASE 12ă          Adays = 334 + daythen + leapthen    ă      END SELECTă      diffdays = GetOdays - Adaysă    END IFă  ELSEIF AOyears = 1 THENă    diffdays = GetAOdaysă  ELSEă    betleaps = 0 'betyears \ 4ă    trialyear = yearthen + 1ă    DOă      IF trialyear MOD 4 = 0 THENă        INC betleapsă        IF trialyear MOD 100 = 0 AND trialyear MOD 400 <> 0 THEN DEC betleapsă      END IFă      INC trialyeară    LOOP UNTIL trialyear = yearnowă    diffdays = (betyears*365) + GetAOdays + betleapsă  END IFă ă    todate = diffdays MOD 7    ă    IF fyear < VAL(RIGHT$(DATE$,4)) THENă      past = 1ă    ELSEIF fyear = VAL(RIGHT$(DATE$,4)) THENă      IF fmonth < VAL(LEFT$(DATE$,2)) THENă        past = 1ă      ELSEIF fmonth = VAL(LEFT$(DATE$,2)) THENă        IF fday < VAL(MID$(DATE$,4,2)) THEN past = 1ă      END IFă    END IFăă    SELECT CASE todateă      CASE 0ă        wday$ = "Monday!"ă      CASE 1ă        IF fyear < 1900 THEN ă          wday$ = "Sunday!"ă        ELSEă          wday$ = "Tuesday!"ă        END IFă      CASE 2ă        IF fyear < 1900 THEN ă          wday$ = "Saturday!"ă        ELSEă          wday$ = "Wednesday!"ă        END IF        ă      CASE 3ă        IF fyear < 1900 THEN ă          wday$ = "Friday!"ă        ELSEă          wday$ = "Thursday!"ă        END IF                      ă      CASE 4ă        IF fyear < 1900 THEN ă          wday$ = "Thursday!"ă        ELSEă          wday$ = "Friday!"ă        END IF             ă      CASE 5ă        IF fyear < 1900 THEN ă          wday$ = "Wednesday!"ă        ELSEă          wday$ = "Saturday!"ă        END IF              ă      CASE 6ă        IF fyear < 1900 THEN ă          wday$ = "Tuesday!"ă        ELSEă          wday$ = "Sunday!"ă        END IF                     ă    END SELECTăEND SUB  ăăFUNCTION GetAOdaysă  IF yearthen MOD 4 = 0 THENă    leapthen = 1ă    IF yearthen MOD 100 = 0 AND yearthen MOD 400 <> 0 THEN leapthen = 0ă   ELSE ă    leapthen = 0ă   END IF  ă  SELECT CASE monththenă    CASE 1ă      Adays = 365 - daythen + leapthenă    CASE 2ă      Adays = 334 - daythen + leapthenă    CASE 3ă      Adays = 306 - daythen        ă    CASE 4ă      Adays = 275 - daythenă    CASE 5ă      Adays = 245 - daythenă    CASE 6ă      Adays = 214 - daythenă    CASE 7ă      Adays = 184 - daythenă    CASE 8ă      Adays = 153 - daythenă    CASE 9ă      Adays = 122 - daythenă    CASE 10ă      Adays = 92 - daythenă    CASE 11ă      Adays = 61 - daythenă    CASE 12ă      Adays = 31 - daythen      ă  END SELECTă  GetAOdays = Adays + GetOdays    ăEND FUNCTIONăăFUNCTION GetOdaysă  IF yearnow MOD 4 = 0 THENă    leapnow = 1ă    IF yearnow MOD 100 = 0 AND yearnow MOD 400 <> 0 THEN leapnow = 0ă  ELSE ă    leapnow = 0ă  END IFă  SELECT CASE monthnowă    CASE 1ă      Odays = daynowă    CASE 2ă      Odays = 31 + daynowă    CASE 3ă      Odays = 59 + daynow + leapnowă    CASE 4ă      Odays = 90 + daynow + leapnowă    CASE 5ă      Odays = 120 + daynow + leapnowă    CASE 6ă      Odays = 151 + daynow + leapnowă    CASE 7ă      Odays = 181 + daynow + leapnowă    CASE 8ă      Odays = 212 + daynow + leapnowă    CASE 9ă      Odays = 243 + daynow + leapnowă    CASE 10ă      Odays = 273 + daynow + leapnowă    CASE 11      ă      Odays = 304 + daynow + leapnowă    CASE 12ă      Odays = 334 + daynow + leapnow      ă  END SELECTă  RESULT = OdaysăEND FUNCTIONăăSUB Colorsă  IF soundoff = 0 THEN PLAYWAV(wipe,1)ă  IF juston = 0 THEN INC colorcountă  IF colorcount = 6 THEN colorcount = 0ă  SELECT CASE colorcountă    CASE 0ă      CalendarForm.Color = &HBCCAAAă    CASE 1ă      CalendarForm.Color = &HEEFAFA ă    CASE 2ă      CalendarForm.Color = &HCCC000ă    CASE 3ă      CalendarForm.Color = &HGFCCCă    CASE 4ă      CalendarForm.Color = &HA000ă    CASE 5ă      CalendarForm.Color = &HBB00CCă  END SELECTă    MoYe.Color = CalendarForm.Coloră    NoteProductForm.Color = CalendarForm.Color                  ăEND SUBăăSUB ShowNotesă  IF soundoff = 0 THEN PLAYWAV(cuckoo,1)ă  Timer2.Enabled = 1ă  Animate(NoteProductForm.Handle)ă  NoteProductForm.Visible = 1ăEND SUBăăSUB NotesShowă  DEFSHORT yă  DXNotes.FillRect(0,0,84,63,0) ă  INC yă  IF y > 84 THEN y = 1ă  IF y < 11 THEN b$ = RIGHT$("wasaywasay",y)ă  IF y < 8 THEN a$ = RIGHT$(".com.ph",y)    ă  DXNotes.TextOut(y,y+2,a$,clGreen,clBlack)ă  DXNotes.TextOut(y+2,2,b$,clWhite,clBlack)ă  DXNotes.TextOut(1,y+16,"@i-manila",&HDDCE,clBlack)  ăEND SUBăăSUB SendMeă  IF soundoff = 0 THEN PLAYWAV(camera,1)ă  dummy = SHELL ("start http://pages.zdnet.com/wasaywasay/wasaywasay", SW_HIDE)ă  IF dummy = 0 THENă    dummy = SHELL ("start http://pages.zdnet.com/wasaywasay/wasaywasay", SW_HIDE)ă    IF dummy = 0 THENă      SHOWMESSAGE "Can't find your Start program. \nPlease go to http://pages.zdnet.com/wasaywasay/wasaywasay manually." ă    END IFă  END IFăEND SUBăăSUB EMailMeă  IF soundoff = 0 THEN PLAYWAV(camera,1)ă  dummy = SHELL("c:\windows\command\Start mailto:wasaywasay@i-manila.com.ph?Subject=Attention_Days_croaks",0)ă  IF dummy = 0 THENă    dummy = SHELL("Start mailto:wasaywasay@i-manila.com.ph?Subject=About_CalendriX",0)ă    IF dummy = 0 THENă      SHOWMESSAGE "Can't find your Start program. Please do manual email instead." ă    END IFă  END IFăEND SUBăăSUB DayTodayLtă  bday = VAL(MID$(DATE$,4,2))ă  bmonth = VAL(LEFT$(DATE$,2))ă  CYear.Text = RIGHT$(DATE$,4)ă  SELECT CASE bmonthă    CASE 1ă      CMonth.Caption = "January"ă    CASE 2ă      CMonth.Caption = "February" ă    CASE 3ă      CMonth.Caption = "March"ă    CASE 4ă      CMonth.Caption = "April" ă    CASE 5ă      CMonth.Caption = "May"ă    CASE 6ă      CMonth.Caption = "June" ă    CASE 7ă      CMonth.Caption = "July"ă    CASE 8ă      CMonth.Caption = "August"ă    CASE 9ă      CMonth.Caption = "September"ă    CASE 10ă      CMonth.Caption = "October" ă    CASE 11ă      CMonth.Caption = "November"ă    CASE 12ă      CMonth.Caption = "December" ă  END SELECT    ăEND SUBăăSUB CloseNoteProductFormă  IF soundoff = 0 THEN PLAYWAV(whoosh,1)ă  Deanimate(NoteProductForm.Handle)ă  NoteProductForm.Visible = 0ăEND SUBăăSUB Nightsă  DIM File AS QFILESTREAMă  IF soundoff = 0 THEN PLAYWAV(gong,1)ă  File.Open("calendrix.ini",fmCreate)ă  inifile = STR$(colorcount) + STR$(military) + STR$(soundoff)_ă            + STR$(blinking) + STR$(DayButt.Color)ă  File.WriteStr(inifile,LEN(inifile))ă  File.Closeă  Application.TerminateăEND SUBăăSUB Noisemakeră  IF soundoff = 0 THENă    NoiseButt.Hint = "Click to turn on sound effects."ă    soundoff = 1ă  ELSEă    PLAYWAV(handbell,1)ă    NoiseButt.Hint = "Click to turn off sound effects."ă    soundoff = 0ă  END IFăEND SUBăăSUB DayChanged(Sender AS QCOOLBTN)ă  bday = VAL(Sender.Caption)ă  New_Dateă  CalendarăEND SUBăăSUB MonthChanged(Sender AS QMENUITEM)ă  CMonth.Caption = Sender.Captionă  SELECT CASE CMonth.Captionă    CASE "January"ă      bmonth = 1ă    CASE "February"ă      bmonth = 2ă    CASE "March"ă      bmonth = 3ă    CASE "April"ă      bmonth = 4ă    CASE "May"ă      bmonth = 5ă    CASE "June"ă      bmonth = 6ă    CASE "July"ă      bmonth = 7ă    CASE "August"ă      bmonth = 8ă    CASE "September"ă      bmonth = 9ă    CASE "October"ă      bmonth = 10ă    CASE "November"ă      bmonth = 11ă    CASE "December"ă      bmonth = 12ă  END SELECTă  New_Dateă  CalendarăEND SUBăăSUB YearChangedă  New_Dateă  CalendarăEND SUBăăSUB Calendară  IF soundoff = 0 THEN PLAYWAV(handbell,1)ă  CYear.Text = STR$(fyear)ăă  One.Color = -2147483633ă  Two.Color = -2147483633ă  Three.Color = -2147483633ă  Four.Color = -2147483633ă  Five.Color = -2147483633ă  Six.Color = -2147483633ă  Seven.Color = -2147483633ăă  CDay1.Visible = 1ă  CDay2.Visible = 1ă  CDay3.Visible = 1ă  CDay4.Visible = 1ă  CDay5.Visible = 1ă  CDay6.Visible = 1ă  CDay7.Visible = 1ă  CDay8.Visible = 1ă  CDay9.Visible = 1ă  CDay10.Visible = 1ă  CDay11.Visible = 1ă  CDay12.Visible = 1ă  CDay13.Visible = 1ă  CDay14.Visible = 1ă  CDay15.Visible = 1ă  CDay16.Visible = 1ă  CDay17.Visible = 1ă  CDay18.Visible = 1ă  CDay19.Visible = 1ă  CDay20.Visible = 1ă  CDay21.Visible = 1ă  CDay22.Visible = 1ă  CDay23.Visible = 1ă  CDay24.Visible = 1ă  CDay25.Visible = 1ă  CDay26.Visible = 1ă  CDay27.Visible = 1ă  CDay28.Visible = 1ă  SELECT CASE fmonthă    CASE 1,3,5,7,8,10,12ă      CDay29.Visible = 1ă      CDay30.Visible = 1ă      CDay31.Visible = 1ă    CASE 4,6,9,11ă      CDay29.Visible = 1ă      CDay30.Visible = 1ă      CDay31.Visible = 0ă    CASE 2ă      IF leapthen = 1 OR leapnow = 1 THENă        CDay29.Visible = 1ă      ELSEă        CDay29.Visible = 0ă      END IFă      CDay30.Visible = 0ă      CDay31.Visible = 0ă  END SELECTă  SELECT CASE fdayă    CASE 1,8,15,22,29ă      One.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Monday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Tuesday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Wednesday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Thursday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Friday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Saturday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă      END SELECT       ă    CASE 2,9,16,23,30ă      Two.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Monday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Tuesday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Wednesday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Thursday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Friday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Saturday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă      END SELECTă    CASE 3,10,17,24,31ă      Three.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Monday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Tuesday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Wednesday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Thursday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Friday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Saturday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă      END SELECTă    CASE 4,11,18,25ă      Four.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Monday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Tuesday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Wednesday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Thursday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Friday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Saturday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă      END SELECTă    CASE 5,12,19,26ă      Five.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Monday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Tuesday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Wednesday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Thursday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Friday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Saturday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă      END SELECTă    CASE 6,13,20,27ă      Six.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Monday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Tuesday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Wednesday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Thursday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Friday!"ă          One.Caption = "Sat"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Saturday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă      END SELECTă    CASE 7,14,21,28ă      Seven.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Monday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Tuesday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Wednesday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Thursday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Friday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Saturday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă      END SELECT     ă  END SELECTă  SELECT CASE fdayă    CASE 1ă      CDay1.Visible = 0ă      DayButt.Top = CDay1.Topă      DayButt.Left = CDay1.Leftă    CASE 2ă      CDay2.Visible = 0ă      DayButt.Top = CDay2.Topă      DayButt.Left = CDay2.Leftă    CASE 3ă      CDay3.Visible = 0ă      DayButt.Top = CDay3.Topă      DayButt.Left = CDay3.Leftă    CASE 4ă      CDay4.Visible = 0ă      DayButt.Top = CDay4.Topă      DayButt.Left = CDay4.Leftă    CASE 5ă      CDay5.Visible = 0ă      DayButt.Top = CDay5.Topă      DayButt.Left = CDay5.Leftă    CASE 6ă      CDay6.Visible = 0ă      DayButt.Top = CDay6.Topă      DayButt.Left = CDay6.Leftă    CASE 7ă      CDay7.Visible = 0ă      DayButt.Top = CDay7.Topă      DayButt.Left = CDay7.Leftă    CASE 8ă      CDay8.Visible = 0ă      DayButt.Top = CDay8.Topă      DayButt.Left = CDay8.Leftă    CASE 9ă      CDay9.Visible = 0ă      DayButt.Top = CDay9.Topă      DayButt.Left = CDay9.Leftă    CASE 10ă      CDay10.Visible = 0ă      DayButt.Top = CDay10.Topă      DayButt.Left = CDay10.Leftă    CASE 11ă      CDay11.Visible = 0ă      DayButt.Top = CDay11.Topă      DayButt.Left = CDay11.Leftă    CASE 12ă      CDay12.Visible = 0ă      DayButt.Top = CDay12.Topă      DayButt.Left = CDay12.Leftă    CASE 13ă      CDay13.Visible = 0ă      DayButt.Top = CDay13.Topă      DayButt.Left = CDay13.Leftă    CASE 14ă      CDay14.Visible = 0ă      DayButt.Top = CDay14.Topă      DayButt.Left = CDay14.Leftă    CASE 15ă      CDay15.Visible = 0ă      DayButt.Top = CDay15.Topă      DayButt.Left = CDay15.Leftă    CASE 16ă      CDay16.Visible = 0ă      DayButt.Top = CDay16.Topă      DayButt.Left = CDay16.Leftă    CASE 17ă      CDay17.Visible = 0ă      DayButt.Top = CDay17.Topă      DayButt.Left = CDay17.Leftă    CASE 18ă      CDay18.Visible = 0ă      DayButt.Top = CDay18.Topă      DayButt.Left = CDay18.Leftă    CASE 19ă      CDay19.Visible = 0ă      DayButt.Top = CDay19.Topă      DayButt.Left = CDay19.Leftă    CASE 20ă      CDay20.Visible = 0ă      DayButt.Top = CDay20.Topă      DayButt.Left = CDay20.Leftă    CASE 21ă      CDay21.Visible = 0ă      DayButt.Top = CDay21.Topă      DayButt.Left = CDay21.Leftă    CASE 22ă      CDay22.Visible = 0ă      DayButt.Top = CDay22.Topă      DayButt.Left = CDay22.Leftă    CASE 23ă      CDay23.Visible = 0ă      DayButt.Top = CDay23.Topă      DayButt.Left = CDay23.Leftă    CASE 24ă      CDay24.Visible = 0ă      DayButt.Top = CDay24.Topă      DayButt.Left = CDay24.Leftă    CASE 25ă      CDay25.Visible = 0ă      DayButt.Top = CDay25.Topă      DayButt.Left = CDay25.Leftă    CASE 26ă      CDay26.Visible = 0ă      DayButt.Top = CDay26.Topă      DayButt.Left = CDay26.Leftă    CASE 27ă      CDay27.Visible = 0ă      DayButt.Top = CDay27.Topă      DayButt.Left = CDay27.Leftă    CASE 28ă      CDay28.Visible = 0ă      DayButt.Top = CDay28.Topă      DayButt.Left = CDay28.Leftă    CASE 29ă      CDay29.Visible = 0ă      DayButt.Top = CDay29.Topă      DayButt.Left = CDay29.Leftă    CASE 30ă      CDay30.Visible = 0ă      DayButt.Top = CDay30.Topă      DayButt.Left = CDay30.Leftă    CASE 31ă      CDay31.Visible = 0ă      DayButt.Top = CDay31.Topă      DayButt.Left = CDay31.Leftă  END SELECTă  DayButt.Caption = STR$(fday)ăEND SUBăăSUB PopMonthsă  MonthsPop.PopUp(Screen.MouseX,Screen.MouseY)ăEND SUBăăSUB Blinkă  IF blinking = 0 THENă    blinking = 1ă  ELSEă    blinking = 0ă  END IFăEND SUBăăSUB LoopColoră  IF blinking = 0 THEN DayButt.Color = 15661818*(1+RND*(5))ăEND SUBăăSUB UpdownYear(Sender AS QCOOLBTN)ă  IF Sender.Caption = ">" THENă    CYear.Text = STR$(VAL(CYear.Text) + 1)ă  ELSEIF Sender.Caption = "<" THENă    CYear.Text = STR$(VAL(CYear.Text) - 1)ă  END IFăEND SUBăăSUB Animate(Handle)ă  AnimateWindow Handle, 300, AW_CENTERă  NoteProductForm.RepaintăEND SUBăăSUB Deanimate(Handle)ă  AnimateWindow Handle, 300, AW_CENTER OR AW_HIDEăEND SUBăăInitializeăCalendarForm.ShowModalăNightsăAchilles Mina                  Math Expression Evaluator      Achilles B. Mina               06-17-01 (  :  )       RAPIDQ                 1165 76616    QEDTUK.bas  '===========================================================================ă' Subject: Math Expression Evaluator          Date: 06-17-01 (  :  )       ă'  Author: Achilles B Mina                    Code: REPID Q                ă'  Origin:                                  Packet: RAPIDQ.ABCă'===========================================================================ă'>>> Page 1 of QEDTUK.ZIP begins here. TYPE:BINAA TLEN:55475ă'-------------------------------------------------------------ă'                  INSTRUCTIONS FOR DECODINGă'If there are multiple parts to this file, merge them into oneă'file using  COPY PART1.EXT+PART2.EXT FILENAME.EXT  Remove allă'message header and footer information (everything outside theă'">>> Page x of..." lines),  load the result into your versionă'of Basic (QBASIC, QuickBASIC, etc.) then RUN it. The originală'file will be decoded into the current directory on your disk.ă'-------------------------------------------------------------ăDEFINT A-Z:DIM SHARED K,S,B&:V1 'Created by PostIt! 7.4ăSUB V1:OPEN "O",1,"QEDTUK.ZIP",4^6:?STRING$(50,177);ăU"%up()%9%%%I-%D#J3O(1(Di5&7%%w'%%%1%%%%vjIiyD:)0:Sn7ht6w:V=<U113ăU"RcJox6R[xF&Na<sY8%jH,4=>d>d'ADa:.?YG3GoWv\R#<A).oIDl7BJ>6GH;=UjăU"<=6rU_X5YKA#KOtN9BL$?ba)NJv[2.tA'QEDQquWrcOI0[ETu0%?5[%x0x*kgE%ăU"D^&c7,Ga*3yP9.5%/OXo+LMRA<d-6GKT%F,1F?HsFa0_.-?/_=thVk)TkC0Qk[băU"vwdLik,nG,FUn8xt7\rfY]Ffn<>pXNc:qfp]1g[q\Zirnqg7U\93-R[_).>7#s<ăU"slhFPUB-Az<p.9:qzEpLnX6OWJYLUyrs-.XIA=.Ou/oPlC(CA^c1+C$st4ZcZ#NăU"+2jo_)DVrNMN'R\up%()9%%%%-%:2AKO_wZ<h%N^%%%[c&%%1%%%%vjiyMD:0:LăU"S10BN-,<>uT1+wnK<Qx[e)jd)1j<$FnLAom0]/L4=*2\tESV><:,IW,<dk7gzXYăU"drv(pHPl(6U5I*3nmVRLrTIoMWclEhGn?mBMl4(log]GuHMsMAHcodThBsyQ]I$ăU"d,^?r7BBNKHp%me*pY6SFYYM\T8('EL\L5LLpuHq]sxP/LN$V^vnzZL?R(QvP.oăU"GG5UL77-LW<>Y9F8F=ZXdG;[Q/K?/:P?Sqe:6'M9[D-J,Q9+]6V[Y92:xw;\Fq_ăU"-B85?=-B^%+(_i1&;4pg(xV1'UGdcF,j]GLx7ACQsv)C1VgR*yi&$tPfF=RrhHRăU"mWJ],S;wgSlNZOBBHX^9*Jn=ojr:uC4G*9;oQQP*+38Q8ToBgO-p.v/vSlXQx]năU"xl<=X:cfLJnTbowb^cciufB(Oh#%agL$+QXPP1M6p.F'8WNqclo<ijghtzpMgq_ăU"r#_Z)TwI+'$luTU>.io<sd'Br]GRm,NrQ.>2mC/*BaYD/Bi]kM)x9nb8LY(l8N0ăU"uSK\MnbwjBWBa73/s19Xe^ohiT)e;.DG;CXuA\5EK;)yl[uKaG9D)?X3$pWa'EnăU"QrYfBdGb_4_$%s-'4_A&<IJI85([wGcB:n(I/I6FGcf4S%'(>8.4Bl=<kITg_GUăU"yGV.s0q*=u(8-1o\0KuiwFzlFUgaaZH]f,iv[OtLbR6o&fQr,eIYp'<DoR)MV-1ăU"(NMT]2F_Ivvr=kZv;F,aSEa9cRc'e6o3Ldl_F5*5%ee7C1,_;LN45k)-s&wA41$ăU"Bifn#g9n)v;k(#0aNT=3cl<oYw+pT/$&-Hl*h=enC)\6gYPYjBLUQfibcf/h8A)ăU"ti6l?168)K,G<vki[wE,]skR+)'Q&rPnmo8Ud_);03Aj[WDfW)tCg#>lhjodd-[ăU"6Ws?Gab[Kkw4^(=QRc&3ettfG\t3%+jvjjBe>hLE6s15a%*_&=(#O5Y5M#&Rh9păU"_qFuk6:,KQdW_r8vv$vZ+Kd1&.n0Ak$S,45d?$_:Swu0Q=1%0H&k/%Qpvp,&-DXăU"QD[QVMUW1[e2RfJa2?uTR4>O-E=,3Kr]rccABK*\UT[hgVRZd^9Is)]9tZhbG2PăU"6,,0]jBK<Ih\0bN%4x&+D?djx#zn'jk\ooJ?Li+*FX'c8)<#1<^9*%[KRXCoyM7ăU"Pkqq;4D-?i2IRVTQh\RQEsIU[o.'H$uW&#fJ*8I:jvFH*o_6rtrP.A_/.Ra'eX,ăU"9D''d?d&E0fmJ..;J[*nefm3?rfm,7mv=^u0AUw^S?)/T,#eMX??6UVC=#=H[YUăU"E7H(XD?>;PH#uu-NXMAUV63(gKl?=<&fFmcI+aA&=_xxP;YA0f1(67:.Sin9o?_ăU"iQ+5Uyo;V\d6FLGa5GQ[/C05aFe93*s$;R6\:rY>2:pM3j<ia[af;IsM>+cNx5-ăU"tPeE=)emt%'&FZ4GI2DUX^,[2x_Ru7f:LXr(lPrAQPgXsgF-AOQv)Ca)^Q0wQoGăU"K5uJ5sP%u_NH#6rKc6L0ZQ\+tahYs]eZ,P9NQ_=TYM$Zx=$gm\)J(Ekjnog4JC0ăU"hzq2gMCh,8#ThuHHgrRC,8Z=>\dT4&lP#h+^Q50*op*C:#9)O3vV4+KPXkgFAWBăU"[sEHYj/1j1#Hqp4hcZ2Iu]K=<m9L?Y\TrA&h:ul9qrDw\o_6H)*[\\pBN2RoB2băU"Vhl;0P#V*YX'rtC3o1(o67GsP<ZNICp%:#sKsQV7mNf)l[s,]u\ct.,Y5,0?m_;ăU"5ph$qONNg1=Klj&4Lag2?[p,^RtmbZiGEXvWA***z8DVj_H57DEr\BIB)T?:??^ăU"46n%UQ#)eCpJjv/,LLHR_[FD;9xCOnu[atiWhV:wNt&cqY4DtR2>0HhZWjQ85Q[ăU"u,XqOH=RI80R_V#=g;4'x1/(<-cj/D)U>Q%jX3Es=QJ9abFG>h_l0T3+.f(\vLVăU"$':CT&[l>01ZLDL;^ol-Y'_q.>$_s)SI\6bKXnxNpTXle%f8\CZt:[rW.bnkP--ăU"8Pu-MELMQ.<HNd(8=R,n#WluMp-^Ok'F,)<RS2]MMUBFtgRD8K#M?P0Y-0ZNs.\ăU"aW5<+i,X(QQ9,3hRaUi1e&VUMzs;l,c;6ex6u)fkIZ9mm<*oHQ#_)R1P>r:$5G<ăU"m'O45u=Lh_myQYeW[+c]h(KJPN58,,D,0>%gK(SkAhd7C.:JB)9_rO2TpEoE%2qăU"uK;5nwY2</&7LB-Y>blqHA8[QRWsRcCmC?)V-W#_FG%,v?0mD6\*&P.Gs/PLgxGăU"$92f_$g8qq_5+Rt)[XGT8f]T#dXNa&sqU9t(E9^Gr0Ii3-$>K/*o4m_3suks1rpăU"If\+k?pN=A74A9pYMb*aWnLW]g8bP2C(3Uth1ANq3^>-t?oBcYGI1vp'VU[0X0măU"vK:Nnr$nd\l+5,gg*#=_\jvmjRA85\^Z:q6V[%S97v4^E/C4*N)9oomJQVOzZ\jăU"CiP=es.Hs&,D-;o6:G5qcZ^r?lOfW2;bQ[umSwuf,D>vcY%%2sQf]S=^##M-dnAăU"uM%h*(u9'5o_[LT+5Su/LC[:zw)^u&OLBXykY3s&eG2hO>H<be8jf*ri;_HO'qGăU"3/u7^eE_*/8h-L[qpySUKh5c#Nrt>N/:TH_\aT:<eVq1W_f1sD.u_ipI<Psr9bjăU"$GD>]zO$oh'b6ONVZds;(gMzfMVgx,Mkc7_:>^SO<Bl+9wM;ww;e7zH'Pqk+zBCăU"0:dC<)z-qyw5MPykrY3C^)zh-xw5WKykbGYCt)Lz-zwl5Oy+)Mu90-GmOz.0eIHăU"(u,N)ZNn?oB3w5yEd\gD\tUyP:#Vco;Pw7lsIC$BHd8uu[I6A1KZ95*RS=B<]_^ăU"r29A)lYDT#]c1J?Ut,mOWNFh\>.1;?1hDq%S.p;RGa#ARr04Q;tW6IuE[+PGnxhăU"zpjC7\Y\I_(,VEXOXorI:^H:Ypsm)Y8*sa$?bXnB&rLtI/K+xYtZ5]3e(sT,I/FăU"ZYESV7et)*x%X^4tJIU0-8nJD%D\wE-R-](.D$F<#fbRfl<\GVNK3\itB\7]P&+ăU"?7w[E6KWU3$h^&_3S[jE>Br9'*')gl%=Go2n+[D?Up_rFjOnNnDG0uYU,NXuOphăU"A3C\ck?I5l#lODpJLBK:<o=?4\8;S+RQYc*2G7+kC1'YT0/l&a?9l\Yfu$w<kYcăU"x$YX47Xb3PrXacCwr8O4NBjY:2EId.n\-ZKW&ebqoi;3R9iUv9Sh2IG%g=6o]F2ăU"DgKhu[d)ruIb6K#xSc5=N23Q?Z%-2b>Q0,mEmCNGz,y(EP#W42hdq'p/b70f_5făU"HfWiTk7.K/ojHHYuN8c$7RzM0/B/[o)sy(PLCi\17+K$IIH[-f]kp43BAZIIDhvăU"\+tf$;rOpQblDX0k'#iv#bef?Jm#rUc'BM<*dJ_<,S0rUd5b4Ej6Mjhaa+_-FY7ăU"a>u6Cf=1,?\v6DBDH1tY0r87IR-GJt,22U#jo#s]GT<P8QRK-godo]V)I#^9mv-ăU"*Bhq1u(G_1jyAD15OQ_GD^Ku'5d[swoAr:IH/6nT3.YbY+3$rguaNHx=hbIFkC8ăU"VRm<]l]c()f\8c8vTc%\#]Sdqy\l?t5p4utcd7nSsMN='d.lO;VWXGjMc8d5;H0ăU"/QI86$7\Smf3(&Ucq-y)7sfs>2jca\cTI<Y[?4lwVbP3dqZlCY>>HYfs<uv3coeăU"<N*AjT:G$(nJ:VMNifkd:^EYn4l-f(LrJHwQd%T#3RfpxPrls)?waf(Orhb/.:1ăU"Z85KVfwx4m145dEY.8swO4uD40iR:BS;WLznQnJ_c%bztYA<hDaStP)fga8JDcDăU"RZ=v(9g=HnkD8-Nn2D6)FN0A44o7;9/4#gm1WB,NQ[5uJgr6*]&?DX3cTBCQLs?ăU"W#;PFJ_\v4OO>B^/z#x5*nw;LqC[S*NpDD>&?W4#QRH0,DidP22>jTn)k;c-QxxăU">$t_T.q[RN*ix>4e6YFV.B?*H4<n?UQhKj3lW^05)Mi7xsXOT_BrNR*2,])nQ/UăU"V+VKeO]zlUP/\NSs,\+)v^HSpq0h22yrN-dnI<-SNs%P_,B[10ux\Xym-vpoQ3NăU"NIz39N8JRY&Q+:,jU.xa5nT%RdO$7,KAhjm>p6p[O:6CjttNV-P(]v/;ypXzqjYăU"73HFQbkr.(]&G/ffIW*q#=sZ03DL[ZK%+[gF1g+v(a>g_eXf'SA_lW&+_.r]'glă'>>> Page 1 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 2 of QEDTUK.ZIP begins here.ăU"-p7i[BR;hXZC799k&U=e+mZJrt\2(h)LWWj2's#ce6kYLR\LwrJ'Bkn<Xq65U\&ăU"2Av,?ir.g6XuQ5FgU(\L)OQXBoWW5sp^+<b/Kh\9>P>oR[6YEw5W[Ad,,J%w?O^ăU"4p[oc3^77;Xp=Z.v5l?YdsRh<99JSLa2wCv#SD(%:ZZWe-7*ZI-ZCso869M;d'dăU"t.\V#q0.H1X4[5IY[WDLT0JVVD#4bUZhbE*=X*<]o/KTpMB<T;Xq8n,YvCC.Ew8ăU"m44Thu1>Yfgv5>GKf3E?JIt1Zt-\1fB2P8M^Ob)qmJ,CUe5aL)LEuLCB&glzSsRăU"aNNrm%gAJckAiYd^ch:%j9)?b+c.UPjg?+h'kz5Q),l[.bGR)D$vHKI2d<I9QR;ăU"sG2Y$FiIXoA_0BOEU<KhJJ5_u'BbBYg,xkUyDPpb53hO04hQ+ga1B]oChn&X(N2ăU"ved\21%AB#=cv&mN;[Jxr?VZ<sRJK6k&(Y]GT+pbSmkbZJ41&,Ji2P:<EuZPm'răU"ikOL4*fJi1qO_,7#P\)/_s%dvYxPYptx#WcBwdYB'_3rwI$dx.9MT(#7DTHTLd,ăU".,fdZJm3<zcaT]CP&AnG%Q,kZHm%5aka'GZt3pKiEV)2AUN-)0:qL3/<BFw^6N6ăU"WQLKL)bQvJV8n*;P/Z[_?)RgWuCn'5+V\&OgG17V*9[U\xUs\%cV,p-nuDo>XWOăU"\sbpj_L76m9jZmUFeVy^&WN,2e5g-BdqDu3YlhZkhOP\>&2IC,%Q73nldy+nS\%ăU"m?)W*NK)8?KC[X8BE;gE;bXbXFiCnhX)+'4+KGYjiOY*fhuuKUl\o)HeC\0ox;_ăU"VUYB,N#'O1g(FSJP800fNg_bl4N>I&I)e-7jwx;TV4j^s6NXj;Y^.Tx<&Sox;=jăU"HOQMp#jYuXBBe[f*<UPD2woZZo1ehu9k-ABY[3o9ygWpn1xW25$-grF?g7:%Ij#ăU"Zz/6m5h2&UboJ,L'iSoOp.8dlfd%Yt&kPmr#zmHF^ox>3&c1o+TJ#*7:rcFTD55ăU"v[g%ms'E])*<6dYhZcfCQmP&b;$9k^]%+C0db+**#]sl:(Ok'U,'3nsKgJeBR+>ăU"?TdsaOO0%#%gB,Q6kU*LfVYM[,7O27nOU,Cj%-(%V_-aH>ic=rWve%QMZ9+EUVhăU">oWX.IZa,=1s\To)O<?wKjGSoCnF8kLoz2(>b$2ol9;tjIM:iJLy&.I_m*8>RI5ăU".1AogEii-^0s6=*=*#-Ep9IUoJufjC/UHd^&zd8ADeCiUmP)yWIOUMt_8nsoGL<ăU"a_=M6ZQs+=EbgOXtpCK0UDc4%:A^c<gDjV9qliT/mw]$I-AR$U?LZuI\2+=6sAZăU"kds5VY_RN9)nK.BYnHmt2jtm&?3K'lKZZjNPBqvf$dJmQJDSqtLY.dADKTwi/7RăU"a_QDgX.0;Z(7>Eqi19TVOa^:yQkZ:7,szjG9)xjb,--;t.pO$UV?.flc5/Gz.HLăU"\p;qT^oEWHKO,q%O])_x=LvMW9nrU&F(=09mNrW;-Rta0Um&=W==bfk;X4w-QEbăU"p'%v&xe#p)o>>ImNx;<w(&i7#cc.U,;V.ezx4lxA/M2S77_EI=bpf+9P+Y#(J\%ăU"(5-S1:wFDs<>p=d6:cKPqKlBZ5ePhppxR>f.7=mM1hXB$4Ch[*mO;qdqH+XjV]păU"/N^lBO8o19sim:*Uur?&9_5)l/p$&ihgywCvs$grE?^1tq(2FHaZ:9)SJJZ(V7UăU")8P*Tw]2RjGwl1QAWYgfX(bThmDIEoN%-+y995qB_BxcFqn2rXOeb8Q,WFq'P3NăU"h(XPaiC?fCF9YQJ1>Q_98s-NeH;vwlGR$-X]'FAtPgOOC]hS)hB40:%V,Kq8-43ăU"Cfoovn6>ac7ycv%rnl6<T+TRsqQqR54*;%4<Be<4kto'Tq&P*/2J#k\c^Ia2nYlăU"F=x7Svv0Wkp(SZ\%i%e(=[K1UHf*x\%t?ZPU:Ltc#rECZ^[6<C_PuI%7f95VOA:ăU"pV=d/d/Y&PTYpac+F-Ys4qM$aPR]eUHYyuXT$<r_tYy/0xuS<oAKqN,80K3YzJ\ăU"l[iV<fSd]Sby'Z2JN'/^?,Dl$1z8]O-Wm(rKze.JSQMQGuw>e3cc/)&=fF:O26/ăU"3St-)WYjt9<H)XybI$U-em/jtWgQbJecP;:A,J+i)X=bQSs^1n9to(F\UQaHatvăU"DSe-J_3Xz4:L)w)((BR.u'(;lh2?JWn-XMp+93UCU&.Xw^G]-TJI6LFf7]#DDGOăU"bs1Y=:EWUu>qxm0eR2prktgq;ImB=(uj^c,%2:pET*69_I3?V#e*>\)Vs+2e:D$ăU"XsmdgjXrf%M,DvCs\]Yed6BU6$+Ur_7EjtU[:Qc5uRH-eWbsfeAA%IH=sv(e:.jăU"_.gC^1iDSb?Gw0ux*l^$\9BD_.iY3AW*m;$Vf=4wJ3$L5wEYr(4'<(Dx^g.4#A]ăU"'dutQTCc3%g]udOZPbYFeC'ThdhntkkfJQ\?Dl=0>>%R?QEcC/<5AR\A4=wkT5UăU"D'%l*2]us+s/Qbka^fF;/*lbU0;aYAY5-F_[hUDo/J<%tFhOuc?K1D2b30>r6ChăU"O2f6plaPFgMSpi4K[#FK<\CdfIP:I)2Kr26NW\8f=:Vhu<>fwN9jgQt)4j>N<j1ăU"aqCD^Zq]mfCX5'Lx?8fMk(TARDIYDs8rO#,esZEV[55LA<DCWT7+M]WM+P0vU^2ăU"[4sjA-RXsek1L.gE^/mqlk=>'Yo<0#7Yqo+mFY2PDy:&d?$.%K4\/9I>6'#z-MxăU",,v(0KMnWS*.R=g:5%>5iC9VIF9U[\<PuZ$bIW=dBdPItYp_IehD9y#Aw<cvLx^ăU"zo&Wix5*cv[I./_q?-0=d[&DA*A_X;/ArxPH,*LJBc*Xa6j-BVVbQ;(ZU.fM[a7ăU"?EUw==5ao)PYmWCjS1M8i?^p[]zz976o?n0K?\HLE#S'0%HHARW4+[:.MJz.*w)ăU"a;T7:A2>DyH#Ne*u(5uGjG8j9m4>/oCIa;Dm1zOOA?M7Z$i#IA.l#NC;H52'[%măU"W#qPCE?F[.JH:,5M^S\YM]jqVhgv&T+qtY]rkT0s/Ou)aHc]rJksrrqE%B6,8jqăU"ATC9RWBoh)<M_:SbTAcWjHS5H*,66i'u_W1?]L95Vjn\KinJk8n$k-#simDpcU$ăU"]d5&Ju0oj4ZHsTGA4BlkyiTu=7#p;L,Z5jbj89rREmsIlZQ_zzmXq:nFUZoBFF8ăU"H&Ln=05sf<HCwJ[dp2#S.$f#Kiqnr=[;on_L-XnlfbWh9oDdTk)0wlsgv1j^gm#ăU"B[376(M\Z3vWVS+^9BCTVN0na<L,a>dRK*2>VOu/8)$l.d)T4x8Il9*E.d5n)YBăU"Ae+rgXn7s)1H>MqCnZU3%J6.jb>Bja<mO=XvivtHk>T*xX2nhLa<6b,;z+/lnB_ăU"of/oXr_m.2n<ABhRxZxPbvCK+ajBInRsr+zk'mr[WP)C3E_9O*o-iTULuqesreGăU"wS?v2d+%-7%fOgo3=8]:>7hOMoJ#2YC;f%7rJdMLLoghwPx&.$:[b[xVkfOXQ=qăU"Oh.h7JtfY29>p*>nuMu+fZh34+V=h]g+V<c#YT1BMz*ciWJ/Qq--K$&o8H1Q7s>ăU"zRef>j:BJh0l2^ExP;VkJPg)NDZ30PxtwSuW0##Q;uwK#pp11aQ,[TM1,PnJyipăU"<4^6796DRc,i83:v,jmEW5>\Qkfmtpt36*n2yCNIo<1m?n)S/Stdyk1k5e,Qa3măU"m4vYg\jfTN.+n0ojb-P0T2j0HFHOnq\K4U-Epa50d\m&JFGPXrt-Z64t^YQq(UCăU"=tcJO-:Cg8:yWTk(%CJR6g&*5S6881L4>+(Ezo<YKe,Eq_GW0HvoV5hax8?V0/lăU"KT;[A78,w8[\T9)5Bn:q^v0A<VjQl;Eo#ZVpF1tc*t-P9Kj;/gB5A#Q4QHeV\SUăU".etI[H_+wC728I#^[,hoI;h)L=qPd9FlHI/?O[::bJb*-F=BU;9)>lRZ)id/+0\ăU"UXr2WVIU+=Z[*k2i=jtK'tO7-_NIt<D+)=d*VSQZME*3V]#'/E,IxOn)2(L[T9FăU"C$JZi2k,.-Or$J#*;;L2=w)h#?(+pft<HCkV&uPwT]'hODs\01DZnqR;wsZKR0yăU"+)]6,o][/nk+D;MZSE2-JFbAAZP55O:yIv:IbdBnaXRFYdiFi\1pqi7SQgtZ,M/ăU"=K]d^fr.>5QtlPNDE%n,.V/;Dy/^)JlQXJKCuKh\AS1d9qSV/]%q$KpcQ<v+=<9ăU"2_gSsfcST)D'odrJ[AcCo$6jEm&#d:?sMS9qGDl)m[t=+WlCqDT)xSbr0Xe^61KăU"$#0cGbHo^B7,D*a#BkpUr8Zf;wcatu?\\>2$?p>Q>V[NWEO\O(h5#m5H#xEBskpăU"aP5B[ib,(MNLhK?]H=Rc<cd(poHxM:'V9\7DmH\M9AAOa)dBy^QBTlMk#&IB^(KăU"%hp#yeXN9n,2QQZLwg?^^Cl9'a:&wk-gdR3rFR8Bnj/ZbgXP'o>:dQY(U/RGOh3ăU"vpR,u/5XOu8&$prI$;8qr:Pv4a2E$7u9qEIH4##T\*Ad-;<(XB(Y3/0u(1q5fc5ăU"sCMbDN+MKe.kMu0o]b(+d8jjZ(o6BomKAm?V=^36jP>Ugno1<?NuR]PHMbn\5s-ăU"-[AeZrjmrnV$J:7*)doe]\wn?]gTq,:]m7W3XQ,W2g\m-2.mKhehbaAe'JeFQJQăU"idFl*uL0#\5-0*'E<\?^+3H=zW%8hpV/beDUja]_/sjEdR?nca>sM\oHn+w8k$MăU"v13+rkI&8epJP+K_e,1ZVnNSWsTJ(Q+a(YunA+jTGn>m9%raPY.eHS-/mZ9)V4RăU"J^;E=T<BXY<p,aXaToO4ncmpdAW(j&XHKRpc#E]'>J_;Jb=n7UXhjX1s-Fc+Z(7ăU"tuXb^.K$x(t#i3+HZvrM0#S%cdoOPA[HPKY)%Rd03CndJ:Jv#-PKe1ebqLfObGeăU">8vbX-o0MH'<i)i8#0#Jr88\\;\5(KD,q96?M]K:Gh0RC/P%WP*_2H)jXzEE/_BăU"9x#bPO.*hnICjZ<<K32LgUsS1&ME6Rt.HCv1itK;R[Coz#t3FL<qDg7RIxp72EAăU"Hbr#_RJO+$-xC<vP_)YX8;bg?,shI6=6Pltm>Po4+<Fhh:%uVrK-Y0kRC07]J,aăU"3E4Z56D7[(BgS_l1$9h-Jx#oS?wS8VD*6%08Z72q*rO1V4*fMf8'oTY9oojrf=DăU"R.,:7^+Upz<t;pT6tE0f-3fUpKKVk/r;4&9\ZTv6%Z,VTRq>,q_]9<#d?Kemn_\ăU"yM$>bk/aaJ(RH=o(cpdPUARM6VbhityHfaglB3noD,r$nzK(W(5<7qg\?WAm)NPă'>>> Page 2 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 3 of QEDTUK.ZIP begins here.ăU"o)A,*:.o5AYj2*f.N3yAa1Gh\lkS7KUDEPg;O]kq4\oWwTJ/f;e5:U_kmF+9[vuăU"(Kcmt%S#,n0/+d6lTo.E816#tqWe6)<Z:z]RM=1=A<HCu]ejpZ>U2Bq8+Hp]ZkXăU"tGGMr^s1P%)>%P4;#Xs=9Y:Ql7s:G6mG0ouYVrL6i'X6H;6U's?fp?Yj6_j)]#*ăU"8,z=,lpK]J<<H5H2NL't=#AlVKZ22u7g?%]G6v^Cs9t7k0[I,1N0NGzi_xAgtQwăU"*9lI,.hc/>a+Y63pbE'r3z(_d0^LIpHJ'I/UK#J'YL$^ATp7>xlhjm.ctu>CCRrăU"cJN;n;S=Vb8B4$+D)x/l(fB?CGgU2Ks;ijZ/B0n$?qU<,fFVSH#?c6K=[ir4;K1ăU"qIoinZlg%n>K3m\vwmMcvT%wXHMtNw.+CU.^-DC1N%dl0[k3K7[#tAoln)vG]rQăU"[q<oBLDuJ)HXW:M^w%HmO3B-HkUx=]OJYD?8Zl:RcPq;HZl-nsLquW0q(ad8QSiăU"#_EUMK-7E[16v2M[Y)fvRRT2lj:gKMpu9*YmI'+P+&QKGM_dUkCO%k=\/Y,g6rDăU"-18BEPPF2LIKW8NzI_8BTkD)J<ofbqvWnewu\8g\WQ5%yNy/.f#Jt89u+k=-l[răU"q<>J+Up[l5T>Hr:oE/cNa7dGR0PDbLpcNEAhi\9jZvn6aLUsOohiNlaC1HqOR/wăU",_;,u[6:_igedNI5Ru$i0r)\I+kr23RrT[Dc[ZAb^mbs=ZsPN>>?e-NLkK5.=#RăU"6Yo#'n4pRJ/GcK.2[_?sICCeHM[W+f&+K#BG,DDDZz*'^szzspd#ipdMjHI3<vMăU"Qr<6PjU1n$\>8qecl'ZrK]Ad_7ZZlV,\odrNkYGt%J'R?;ZSiRVfH&K7jmf\LW1ăU")\tHl2K<%$OeWI.f$OSm-bJ^YLtXS#N-9hFlI'#kbln+ySIN^wpjn+Omw*Ts8_1ăU"<exODF_fQmDqS]Cu*m,DoDP\L?>umq5g*rySgp>%F51S^e.lHB)AVvQ-],JhMU-ăU")ca8Cv/c,Fz+30i>NK^1p8T7H?P&Y?Uj0>R2oqHIBcaCt-^;tx8Y-1La>8yX.=^ăU"1;h4gu)%SX9_o+n(,CK8q-A:KTPYpn5x%=%=XMp-+8#d>LmvZ[+^l:7Xq%%%dZTăU":1;l3IF+wVAl]-<I5Kq,q<qT*2q'rUl=-*xvFQ;eLDRVM\O[qe7di<Dqh]Y4]77ăU"N\I14.r/ust4KlXXlw,MJEZJc4EtbK)$^SR7^uMy'Z$0G$;Vr8l^L$7-z;NFIK$ăU"_FolmdhMZLaL%k4+vo$n/&&hsJ$M9.Xv=_Y#ms8%JbSOdMzP5Zndu^06QiS*<-[ăU"lqgR?Xx3?*KzJji*mXWk''O&Df/Q\lQ*2&1:oPjK)a(-89LpM7X9)&2tf(jeVc&ăU"+ta*>=$'yXL>9s1&#W=PSo%J4KIMA:Op<N.$3ivTMpg2ux'=ejY3Q*+V9x921U9ăU")RQ$^1O4Hzq%InAPP?Vj9^R[<Q-lPY,5>a42MKy,HWA0^E'Zbb^FtagmlC2tgbvăU"E:DOzs19mdoVg)q>Jon,9elKer><XT0.,sR&;Ghm<4HK.Vds2n0.Tc*'/TLO*e;ăU"/&:%J=;T>hP;\[uc>?cGI:zI54]b/_#qx/&a30B7K^d]oQetF4g#eVe#Mn^z<s%ăU"]5R>9Qhk2FMP]T>dRQJQL0QjcHlfEFmraT.z:#LhME[DiAYO;]W)0a7f_&7BR*<ăU".ajpCo[Ry5>4xPc0Vth\33\*lHj%i2t;wdN*hyvfYGVX+uAZR#zRNQsL4.ttljlăU"]N%(5l_r4[RX\m\jn+3uWBDOmjh%Rc:Q:5O&nT[t;8_jZ7p4B&h(Ou:aAB'Gh1^ăU"Y]<06]WVn(vblWK-t^Sc*YOGfP<pnuGuw=3itZ-i5\tI<GG$oCCnD8%2q:eRh>văU"dKZe:sh)mjXU_hM1Ade1iAx0f;YP7l9(7Af/\e)$+--z(cXW&7ORChJ4M%;kQLaăU"Cl:49FAkzr^umP#fBS0D0(lGQ0U7OQ9Q>Ph-Wi;^JM2ha%b(i>*tgGl-ErV2pS6ăU"=nh,LTKT8tOnm[qg/ZP\=5)Ll]fHeq6t&rVK<23cC^rpTS2py+CK9[D$ss_LR/NăU"^4BsQ-b*^PcUk&S.9BO<%:U,21]ox[K#-0n;SzkWmR.ihQ'^:$WeoZsZYYk18?NăU"A1H/(g+2,-Wfv4bk*=h)QD['#NE%ZM,LZ:KEh1-^Wcb-93LF)?y5A5-GEg-I&gUăU">ne?fK(/PL?I%=F=HbPEPx%X[J3uRsCwmWae0:aR+d(j14W]w/Zkek'8Qa9IETaăU"V[bF#EdP$>RQIo0t\'polV<SuQr/OcrWk68-B2JDH_BQ%1Rrw<)oMT_x;AtpI(?ăU"kuA(Z>Qr<Xz/M;>lwI?J],,6mUAp?81vN7[/4a/Yskki$3+(*1]^9W;fC$%DDpRăU"y;b't;]1jy<m)WKmeRZmIX0ux7c5+Dm9P\W0DD]l;+>3lKAqo<#+[TTyL5k)3CwăU"yve#W(y8:OJw77\J]9pf4H(\wuR((9lU3$ewvXpxXRpViU;9Pd3#xY0S-0Yi,\aăU"I-E:.WT/+'Zsx#1KBW.7gPNHx)+=zrGJS,N2EZerZ(KJ7Q38+d/7=gM8E+Y&7]WăU"Kof#hT-9.HKoVns&O.\3EL6.hW0LHc+tC(repCIu;e2ag2z16BmvI4>8tFh'kyEăU"_&k)fRzfuF_Ywv?G]v6Jhg4.Bw7/<(:To\IDN_Ft%]_>2f/C/]cy_wp)<2_[,r*ăU"(54-d;OoIeJVQLvO,<Q>,^Gsq2<K[dMSN4;dMu=ZOpW+&FWOae%t)Y]<Iq()8D6ăU"v<B127tZ(B,t3OZ)dEMACEHVxhXDmPrYImbbL9>%c2%fo*U,8=./wShjQ++S^RMăEND SUBăSUB V2ăU"&#^Rlb0wHx\)cA=7[,R'ejyC0B^ZQ=:/_K'GhA>cERa]F-LDtD<G+LE+.k?>X1BăU"DWfePuWbl]gZ&YShl)f<)\=K<p3;fQGLrl&F?-Xg?K^n4'Y$uewbC'D+R;t3::%ăU"=iSnWWTk?a9p'OTMb;f::#699ct/xf7V7/Q[?<ac2^:8A1d)S0ZOSu&M6MTEaZJăU"$:.RTu:8E$O7m<g7Z8i^eME0?LpvHC/GE#:tXG'.BB>tT5]gZ[cN7<L8Jg'c;1zăU"3hW)_eANqza$CI[%[,5&x6LqfnHV3R;A1P3aJwGGuZY4$[sjk)FfFc/IM+hw(IMăU"uh63>592;\Xq.AJr'=o7'dYof0Fq2:FbqK\ZO]'fV(#oyfeH,l)vO+$'sy5GN$$ăU"gy9Kwq0gIfRiskCP5e_[2#WA^]45[kC_S\g0BDOn1Vd[1V;JpgIb7)=KNG'lF<$ăU"amY>?,<OX]0\uS;Gu[Wtm,bEqOAlZWc&.fYh<A)EE>^Zu(Pi5rvpf_0%.z[2jzxăU"MuaA,]-cfx=Ua=5Slm76g3J+_7<^wFic>Cn\45<OotR(pKN;S0d]aNw+e8ozMAuăU"Na++[_wAJTG5H9h24lBnuY<mW-%v*4qS9a&XtlG4](>D7i+Dey-/'FF9bz;JR5NăU":h\vz78FSr&52EMWe9JZ+I>XHf]?QdXWW^'hXDy#=Pb=n1;6X/YVn3;Pw''umMOăU"1kq&CU#4<8r],Mc=D9uL5GL17K\cO9;dd]^+u[?.V&n;A\B(&x/gZ>i8=qgcv6RăU"/II>h7$C?VM]?w_366&hY&>cK)^)u</X8(OOG,xml<%5r4/f>7tzf7;oEjATW;năU"4L]:9COLOv?kdQpijHYs<O**0PbGW??r]1oRc6?iU>0D)Hu)kq1B'endlH:NwT)ăU"rLsJX6IKVI\PV=tlrJ<gC*F&B&3eU/L;d^<R$4fmn>HIJ?hV??pR9J.;tQ1/Vu,ăU"A:IM3cI9Ae_lM=,,i%XLCEVvqC&(iXR-WpC7yw(i+JNwngj_h8ZIN>.%my7B0AGăU"$eLKI$H^Jhrm+glowtja>_bd][J+0GPnD=q<l;&aVi7Ta(Imb5W6>-Zgp^?v(;AăU"O_JlfL&05qlaOb(Nt75.-t*L7MwKa(Rti+,ieEco(Q8Bm3'mC:7keEag(Q<]B3găU"mfCwke7Ek(QH#B3Q6mCaa,ZgYeD0CLPEa[VcjqjC&6,=/Ra>[veEb;/r%Tne=AIăU"n,T\4I2mJRuvP#ui)Q[fw(\5NTWED&P+1m8-Om)n'L[[1jKNB^k0S(vviE(erLIăU"k8T\/O#8$IZjLnR&%0Ci8_4wBF1\?wGuIQ3-YPe-UYuS0AqHyKc2M9#/BkKX2=>ăU"C%S<&YKGzLk2/.%g++_:?,a'9zm8w(qG=%u0D#l?-ZpTN2ojZ><7HquvVfV6YXHăU"#73NG&a<qB&sJI=grYf,V8TY,#irx\KE9p1DK,<._9c?0<k9%7ka9j_o<%3o3LGăU"mJHdhd-^);0MR5r'7Y$&bAXP*4MrGy^,IPH050QZjY+u+/Xbi\L.)(J+ORO*Y-WăU">;Q&h-qF7Q>tVQ<)t-,k/MkaWxUaKK9.mQ'j4Z7RUnR^;g)%L)k.Ie/jp,Sq::TăU"1UM=hjp[xL>Kc<Br,sYqnA_feG3'zk7gd=6.E/p03g63t6*QXpW_;#-'LEj%[ZMăU"]n?h'6JjdTkkuLWuuX(plqiq,U7&=-^Qb)ejmh7_o6gIe7#MoP/0*C\*V[ONze4ăU"g&y'JjoKc3\f%VO[&4[b#:V?GGF2epS*CDKEQiDZ6Ihq]U?LdP/^tMLXj_brBMWăU"7LjEM'n)S9<d:\.IFH6'[kc2B=QAD<I=9%6Z-?3je\H6.L0)1(\Jmd<KSe5%HGPăU"8\-*$7?O4G,K2M)uQz%qzy%^oqwYCva^[A%Ptu)Oztz#9%eq#eu=XQ8j17Mita[ăU".sAQU[yZ6dbp[i:.,NE6]BPk(ddf^Vssu-Q3x:3oDy+]r)upi*HN(e%g=:-v0;yăU"yj\cVrPpqL4H=8,t2FN4L3up]e'k_Vd,RBFT$$,<FT,e,RFrTa+#kKg'C4AjhHUăU"NBA6:3tE&/n^_Wp*0B+%7iJp.o5cQ%LfqJ%N.wu'ccO-<81AS+RS8qp1Ne+4IAbăU";.BN#X$t>B4eW?.:$hJhibGrOPDrEywRB6.rXkVNoEgyuF4jM,ZEcm+D:tT3L5qăU"gxvfpZwt4OML6MD.\I&ofbuJpCWw:,9Mh42cp/'nuibCyrC8Cu^ywRlGc$O?n'RăU",I%gbd;v^NqwpLK3Q[tYR?p==n*:a.:Kx/n]RMP%QKOhtH&-p*mWq4;LW<l8oSoă'>>> Page 3 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 4 of QEDTUK.ZIP begins here.ăU"T-=J\-PZ%LOh>v&-t\*Wu4K;g<l,XSo#].JHF3?'#O.;n-&2u,Yst\Mf\84+rRtăU"4nGh>14q?UjhtZ<p\=s<#,\J#?pHB:shPPoVO#ti6AeY9WoE66?aD0-UJ278/G4ăU"lE&B9S?Z.8mMje8h_rm^ani;V79<>Xx)%zL(n[]T#VM1EaEmneX,8s2opRZ7NbGăU"m7h>XuPUtno1KpH)Q\=0\NEGlFbeo=[\R*<hFYXelBKe9^upiC+S#\GtCuKv5IZăU"r(JC;FuMV>u)i$t4En:0<TORC2g\N)<fd03jg(07(chs4'VAoV]VNSgqw:k_$;RăU"koK+;.=e&PcV-e=b$(Xi2?,\]cr(\>43a[WBilmtAfPv]qc^gM,5pM\R$2NlksAăU",KvU\bdml-Vbyw\asZJhfi#cCt>bqaXv26iTu2uZ/GW><7ZicG\$U3jeD;6pUKcăU")XEnUEZ*SHEuHlTmgY%(RskF?[3f>^ublaVr+2hb&OHu\%=/(cpGr0*Vl2o33QuăU"p3JEl>UzYFrvUPu.BrIZ#NciCF9+6%:ev9O%RZ,V:_nVL>2Jb2EuutfdDT'Tq)IăU"aFZ$]3R2_S*g8hJskmsoMena#$ffR2oaVA,CX-,Ef>&+M+ydU1.[\$<OTjAl_69ăU"?;nMeQGQ^?.Z#NXdl+IQdZ$R(l^8h-L[^B:t;sk'F%Z_mCR>uL,Oi%%Y%n5Bm,CăU"t89'ZQ3']rbhpYc<iiQ2lmm#aFi36j^22nZl^nc2t2h84WZirMMEvvYb,D2Pe#?ăU"3-r]M9h-iXrj^7F;)x_xm4_=TmhEC\>l=-?r/h&4?H=I<V^r3yFq>CQGdssRUpNăU"OtFD.;xn7/c<+(HD;JR'yJJE9_./0xiK9=-x8%IZOcaeO;;Yi0HSXAjGiH,LdO3ăU"$O8KX],P5EG+Yb:kt,r,jt,bkC.hEkrFva=q3d;(IOxQmcwn^WD=\<_82FZYs6DăU"AFB332CFsdJw%0jH?p\VBKA27>y3*?%f*ilucae^C3jnLoxf('11Bq(-_;R=mMuăU"XumU_L4_Mg[pc:MT4pHabEJv#VR75+mitK:vakC4I\_u>G]$ttUL\]f#&p+;5VvăU">q;=ORpTeh&=[M<Z6'GBV)eO)/t4IB2oM'^%\Ky%U.M)?:StxrK0t0R9iCl-r&(ăU"YE^E8hnYMS&G:,4##VDH\nh[hnjErWhYpn7Ojg&]9wmmzX]>NIfbHb=>-_=<jswăU"/%PeK9RrFud&TKmAm7hCsCk=E8'L]\C%XXzfPYlUK%=<3aZB6PKYu0w:=QR:2$;ăU"ex0U>H:J<c<iuR.S$R6q$MaVbTk3\&M#2xS=7DUdPHF]'eFuHqFH<L2WSg0Jb>'ăU";4V1%7eDp)B(3T<A0U>h(RP)JkYhaL$*n96Ze]XR;K$6<,\hTh:0kjJG]EI;L0&ăU"+)UGTcr%vNf(.ZIXgbx=Pfg-bt0RI,j0B+^KuPL+eB'JuBk,UnSOK./Rig?3Bt?ăU"B;TTqdPbl,f$)WYEgQ)JKd2d[v'HraoL,sQP*Dl9./vWGGMD[Bf[$>bnV;2)0%0ăU"WRPs(Ch6q-Qn_ov7$5f$o;_JrD4K(l_&'tId>4VIszk-'hE:ZwLu9Zn9naSBe:YăU"c][^.\pZWN2f/7-E+l6WoXpD^U/gHm:9U#-\7_LW]'cdb4t)r$bCHQ+?4OM-+[aăU"$/ZgG]e6?TJ:N1o4(1Vp>\3v4SYOo_W6Ru]fs1Q>l:)\;EUoe+;<zAAt$G?:+]VăU"TEB#W^Y%:[+0LrC+:(zXBa24JiYVaG*]?vbuDo2^]ZV,#2oP63/d4vgws3LL._]ăU"M<slK7T]p*Gpi<WZhYKvs6/j^o?Id#]=TL;ek^Q5Q*Istn=#kRWwXQbo;pdPd]:ăU"B>tZo?=)bXB9+5)iG^&7VFR7U%+01-Kv&CRZO9gPI)o'QmY2m5J[_rM'HC2l#E/ăU"9SNI<+TlWsz'm2,G9L?[UoMR,pbi4M)WQqjluj7OGQsB;QJ%D%DgjPEEMm'KFw)ăU"/7.1)K),4N#-qztNPgn8Ug.dO,7muFX/ofLi20#*j(_,sIu=9?paf:hwHW3A2ZOăU"fhX,,FR^rr<KOTCjj=unbO]Vuz&)nD=$V]X+mkgD'P=^B7=GI7/^M'Tc+nf#s/văU"TOQT9,P?LLRK,'&'2-Toa\=at%vi4z#k/1Q':I/#E<=3Vui?'fp%tpp,t97]cg3ăU"i=\rNsx601r(S3n'mW=^UH0%+iVI)w#oUf'*h:D=BY?9l%Y4#ck8SF8a?o/E.^_ăU"zLIryF/g4Iq(*xck%6&0c7W]<S,3B*RJK1cEQ%U9.gKc'w]Rz:Y<uc%]6KGwj'5ăU"lZo$L;kudp(_3oG&9*:_6pF1q>OlW*0TF7\/%w<n6>eWTl;S-8s\-R<**i;'p_băU"zDPT\.Qh-/]d*c[Ira.h;I#Rb4<)H-s)r^f=_8*fM&:)nHtOO/3->?q:oNtn,MbăU"L2;R2$owF\eNXb:94MTY*n^rS)TYH)o+2P:%u.,^Yeepua;^3h8CA&:$e,rudW1ăU"'X<Q%uZKakMFluwn/>V2QGM<grfCtO7mj1C*qO(SlNtwWEJ9#,0#EL]=tpimIdsăU"O2]N:k+Z<so8s>G)TU6\vrb]2WA'*<gDXDaubh-v6n1kqR'FuI;-/w6u/\cvbLAăU"]RhC]pB:R5IQR'2e5B=ow>h=MFX0O*LXn=CcRZ?;IeO4kRtUN6bp0w+IMV*d;6-ăU"<%H(RzUVv&bT)*6G+<_woBc_6zAOt[8cmRP68GFLBHosB0.=kgY4_R7mbeY=6&BăU"Bf=ruJ\*_Y3ba#f3oB[^)D_hnEy%hT:pO'IS8,C1)>f\0dcg^i%CpOMB^^041JaăU"6.FL?Vl>c&Z#MLSSB)vw%&zt:4c'rydt;0fB7ZA]EC3&PDe4:;Aaklj$sTM^,SfăU"-FfHZ_CZrZE.g%sEg.[5i**Cv6e&9=z%GlaABa6_IO1XvsX<nCL;]4LSUa(=S-MăU"c/i)SPTKb2:t6u,S2o'YkPaC\2U?ps_<71Q;bPAa%5sk.Ous_HJ%$/(L22kZY'jăU"o(%dk#%Rz:M>psjS'JSg%6iIQCIoU-S<Tt7'<i.+9&T0b8%7()vuewoV=SejfpdăU"-=UC9^tP%bYtCZPDPu]*btgcYHHEH&6:Ka.b<;NIdV61NqGzpQ]^#pQY%%cUMt7ăU"_Q5=#AM_bc>]oI;%xB^Iq637D%nx?[QGpC6[rz1]E(%>IjS1f6^/9:hMBx74/vvăU"-oOnr1h\Y3:8Jm/H2$I1/A1Z)#)hfW%vS5?ByJIX\3;%neJ<RbFKd1;3P#=Y[-CăU"*:4^&AnZ_e,,8YtT:h7U1B3W&w=%FC$sJfH:P&6Kpvk-,HT)0WK'%AY$sUb>/b,ăU"7nRcWEjOjg89slRN[SeF+EFAdb)Rf+Re2?,DpW\B$8NB3ufm_:%05c9BbufL$b,ăU"t#-?;+6<kil17?igG.[b_PYcxj,7q,AfrTj,s9ugmKvO>Y6(3.YB;cUZ0bE9,9aăU"Mzw-n%qdA3MV(O(>-lMJ#i*yfA$*Kf9;W-Ii87NEWWzE]NV3r$iqet:?k+pU,2xăU"Sk)Rrgz$pT'30+v:uP%5-i.H9r-2h1KEUx[u2eYVLE/N:s.EnTu%5WC2o*ZYqN1ăU"7$Sp./^3o*JSqN^u_N>(%a^85rNgw#=?xYCT2oP>2Cn9LpZP.#q^]]:NV6vBMzSăU"n#o=Ja,A)>.\r=y?R9'?g&1Y=xGYmG0Sah3g+w);x5[<1/gV%32&X&zq1N%YN\UăU"fV>%5L7SLVgX(I/y1eg'$gL4_Vl-&0jqVD7WNUR)V>O^Du=G#hgQTogU>ICAu=IăU"E<ch:-A&F+0KUte(>u=-E<c(,smQ])^;u9/r;s(AnZ=PuS>h9v$gNOXk.#VoJ_găU"7(]9fF(8qiRD8ikTV:2zq\rtKn(tZDlDDn,ALua(Rb5N,F\+I#cL/%ZmqZ-\B3kăU"Vj3+ELGwc]C3X\Q9;T$qwC,w%<up(%)9%%#%-%oaidGALmf7H#.%%c%:%%/%%%%ăU"h%frjw.fS&fM%L'p;]3P6OB,OO.=))/=.)k,1&e1N=P>9EUP4:O,$Nv_0KxCn&PăU"0/9:M?:J%4Y=UW9/:O%J01;%====]],'k^#P^$rMLV,V]cRmubgpghz*DcrMx3tăU"T$d6ILZNLFHp_4Nur\Xwt08rN?VVVLuqpbhugmtBoVTgwis\LlkF%XxQt\GH66băU"tpf'DLIlVsCu?wu\Wi])Xp6gRb\slPF-J]Th+HV4D>&$C(<4xHDa%K8n#]qXWj#ăU"]<?e-=gctP>HL==^15tkRvpfk<1(m3e2>V6)vT4b)<sQho6'eNqkU\tV420rJBGăU"Uqq:$J+9eU#/'Yqj<;j=#Tosh+HL)0Rr9])ak[)j7S/0=am(v\L>opQ.UtTj5i]ăU"Sj1u^u>gBm^*g=Cd'bBrJ7$71hIbbujgm5XF1Y4?p7s*,O'$q[;S2I\]\Z?i(j&ăU"ephcZTqm;9\dTK9.x#H*F6Eyv_VWY3INy)gr9./3VQ^Q6]sAe'4X%_:\GpHU:lpăU"kf,O9a3WWED1GSU6Ze[pbaAuMUI^H_YT,WH3#9s+(+9u>=>%C=(ejKiQboWW00TăU"Ta8h_E8tb5^/$l6=ZP.AGA#AU/_YC3pu+)dDJ.sj]aUVY6qW#(>0Vbl]%a_.(53ăU"X4fRXHdg%^B^7v>2rNI-V-bU[=K4e_hd3OP:PeRggTQi)SC\sTK#ra0m\X>Nh8OăU"3Zh:wv.08As?50v.fl>=TUn+C_5q#t5hGqa,Y3;bI<\IHsSYI>?As;yhw3g+aSBăU"a_9>Em:S=B1\5p4Y2JB/#<;iX\PF4=%L4ZuGddbzW=hL/Zeiuk&1_0&9mof%^dYăU"(*IyG]1ev?cOncJK'$Qzb38fZpJpA,H0FVgl:>fqwp)J2da-7SDC'8ddHr[6tkYăU"\8Dh?$(k9u4foclBSH]?5-0mEIHl-4#chi9S,YeL3mg%du6#GF^*,Zi3z76oU&2ăU"ql?MUUC_sVcP=N(48-MnJh$xQjQ;C1=O<uH?p-]6Tr[p8xusr#quel(wp:6tPnHăU"a6WYMsZflHxHnr^VXsllVVmXTGXno_t8xl$wl6uGwwlofcg8ZaT<FpD/q<c\0mOăU"uvv4LfdxJ7tNX_Q1T<JCMvKG=uf#Qo.C<N2oR]pvXNsr*?0D^)FtSbG6YteL_9XăU"ZT90]HNpNOE-3Owtm_1Qx/Dzk$W1Xr>v-:,q%%k3T97KN9UINIYfa\?QWLMjcK,ăU"qLJD+vKDw'NQfyqp8b&:#TqQLFz+_(x?SJgr%3n0+HYWg>/YofHvebq]&kCYoX=ăU"x/vc%Xiczf^GdSyk]gt8s$3nD$U.]-<1qNKi2<r',S4GV5Wb[[d1p\qHJ$ShCaPă'>>> Page 4 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 5 of QEDTUK.ZIP begins here.ăU"Np'mv*nWIpB(zXvSP4tu7Bj<cXvMhi1%UC=gl,l&^Q9Gw?M8[<KN8&[Bp5_FyjBăU"e'nA$(\u6d]J<AZfP<8E,YaPl&9YOw,&$+/2wEwv0m0G;G7*8g(YR:(bvu9aA)5ăU"XC*&p?[6D^Cu=96uWanU=NGtQEZa*gD>6cn#.=w(q*6JYDxKhw0E6HTi5OZCi[$ăU"i=Q?[NrG=hPt%=uFF^MtP4(agHe^dWs)8mQL3+8I.nZ.fbLV't#6QAc(B9B0>:5ăU"EVzBt<582*5*)B3b)Z1R/hRTu_F)o'[Ufs48%]e/gpXWUjl<>'>E19u;D36wLU1ăU"<O&i(*GqX&8E#6wbyr&G(sqBFSKI)7gX7nbJ69-'#nSQ.N2K46m,(^7GpXZL-Z$ăU"*IdiTTqiE-QpQsRNVVQ]ij9Y3f?EU50O%a,62PEE(pXZBLFa%TFg=2d)s#TY3$'ăU"5vSU<RIR<0u??6_6Javvm_Rf((z#Na^nqUu?SFz&dx$._QYUq^*H%Sqgs/a+2vpăU"f$Q;kn&)NiLzBJ/\z895?\;C[wkfG0Zjdq98+DANBtXo9-vNg1.b27+m'[Fa]'răU"*Pm>sQ+F*$l:GoFcggVvqhs$IjVQR8:Zua^46?1?*G3O]6Vz^CG'$yCz2[q/n,LăU"p*'F)>]gdW$gPlA]p5>j3+-(W]WPn)X1[4X[g?Jv_Z559Te'rJsJYJ_:WdX\G59ăU"*k-_w'LX<'fJKqO0YeFVNAv%(V4'TzJ)^EauFC2cU0]mMp)VKeJ7Bx)uN]=GquQăU"_gi/,OP/e#^$?oA/7Gk//f8+jEP;A*$/EjU3:;aBn+kuL[%kVU-_iP^j>\H,3t-ăU"2^.(ZmGOH,8E\=h?]p;?fclA3B:*f^^hk/IAo?&8889OC(d+c+l$J.nS+D2OYXzăU"WgqB:nbNQZ^Ew)WaF3j[&R&p]h^h](CFKH7e#$O+SoQvg:ahT>Nt>\agLO0D0BnăU"izt'mjzAMz(v9cVc5]k(&UJNbhA$h0c'3\],N$^yr_*MUyoQ\&3_H8EaWv^)#71ăU"KIieaVCq%1trE*c4*+o7;c48yq%jIvD-b0druEPO(-lGw;YpE\(,Z0A%ekZ8:FpăU"[x*?y?$'l6H%TMX#psOW7Vf[zZDq4j1/1d'J_>p5,b=?H]LnE'EZU9A\#'5Zq%WăU")AR1feQcF.M9gY^vkmqW--Rz$EEA,.]9<a4H*GU>ce)nTZjN;=9uj-,],vNASsJăU"1Fta#5JK._d3k%8V[,wk+3NGQln,4=X1]p/Q+.SlkQ&n98A9a9ApqC]);9\xxmeăU"Bc>nPK79*>\NDic7SQef=_Vaa=lJGXh_)0BW(Z%(t7?O/i]lY#C9p,_<V/CA6flăU"lN3iQ]I5InL\Gzh:0cJ)]U^iRuTL4queXlLXDpL=C4f,k_F-d6W:p[v'(#tacphăU"DEuHfj+dViJS+,/d(;^hLsVr<2.[EDM^.L9Nd_n'>,<M[LN(Ft5-[z'e5<&:CBAăU"iEnG2Hxbw5DIju%kZG:K'3u-YbpcKCwyQpqyfgbqA,%Ddz_t53J&IXWn35'Gmd4ăU"*RiQrzE&,\1jRGDPM&#G\^7Z^^gu.mqtpr^PUzguE4ZOnO'i]sR5MQZ:TxZKjb2ăU"dsvh3\8#Oj(:#)*Ja;C:FfAcQDH7&ztT%e'Bo7mA-3sldNjduS^;jaR[JEM#Or^ăU"TP^?^-BnHx3ugZ+MV$zhP:%#goi<p(iaMCRux$l*Z\nTPoW:(TM-:H-Qf#Zn/f0ăU"=yurAsH>+p.l]6Df#&N&up%()9%%%%-%8oidGU:FW1&s)%%'W+%%%/%%%&&mtt#ăU"xmS&1f%Ly:rWTk(=DSJScwS_4hbxu&A-^QGp]5e_4(q,LQZ(+9,Z?-.6H[5/y5RăU"5]<U1<(UWf-(FS5g^=RV?^Q1VT<>g>Q_pS5o]Ih-TSahBtWep#kbJamo&5(.BiTăU"G57cp7d_8JdfbYHk#6i.)J$o$Dt84]XLzkzN=BHHP49lNh%feErJcFavz1caxSkăU"WZm%]KddH-Z&p#^9QDjpBGLune-\'?FM:=&*:gLapk_d1:50;i%5k&haS)qY/1SăU"qIm.*>':(;Tf_SYMka^>u[1JnHCD6t,YYod3tF(g*#'aX-q$VA5l'\]7y3sbK%#ăU"E6vk(2q5#QV_pY4,l4Vg.JJn2IV^tp;T)3,Jn3nGZ^n[.qp&yXe\ZCDk4.%V)V&ăU"e+F5Yf4]CT1NEpyiII$i4i'y79t^690L3Jgtf>n7nmZzZ><b7;Y-^J;%-R+-Q%hăU"VuUI=.ag72XA,+6LeWrEKQfDyLahg1'vRk>hzj2Ai^)QM47C[c1xQ-&h>G7nKL1ăU"XfA.%p8l59V9Nh#>JosqIY[j%uwT^NgXFNl0Y5II(^ngh#v_RAeKVnCY'To;#cVăU"#jNn,JMEn5CCuhXRPLL6f>cj6TgY<;^jl8Hlv\5p>7H63mJT4%t5*DAv]d#6zXiăU"c)1qi5OjXrgoJeY(1n/ev8.u6.=*#'Xa)TNxLFuiWxL7J\Lf&Z$5v7Mr]].\.cDăU"puhXV)u<J,rHIfZi.e1^kn(;sq,/dEb[rBhLY\:%'KExBF_J&2Gtm83iuphWwkPăU"8Mpf$e:O(#EUb\,Q/HD=>c;u^(W5A'i$.>MRA<>fx5gj#X>puY]^hh8:vJQNVGAăU"))[+g6hQSE4VmPpbxLze%EP;hhvL?a1)HeU7-Z>:W=DZ?KcxsxdU1_'_)-_ER)(ăU"&u4>^rfcamYTUHyBTO=]oxSioPnDnUs.J8Ps'pqhWg3TGcl?5XORGlsg[9?>fBDăU"ED9[ClxU**nE]Po?hSd0mQgqg7*ed7+l#h*H7ac)?GwQB$^zEqj,F/QBYGEecX,ăU"P%Z#7T+B]n%hDt2*IM#SP[lB0qDH7PiWbu,19c>Fk#4,vmYt*h9\URXi(^QmceGăU"6v7A2?%ZhKg0..0-Z+A(;8r\v?]A??kvgU>aAfJlIPzW-DeVD#W63D[VCU)gAi*ăU"gleuTmu)rj#Y)ovJ>^Me)AY18Fx='nTD._AqG,T/4%kQU>X2&(=^?UPE#,3vK#VăU"CO\0]SjB<U.XIAvSxDk.%+sG]%s%9'#]eW,P#/s&2<IV/,h/SLSLp]CY.(S#S6-ăU"kvhm+b8y&>()M%'XL%EdNrkZrkQC)Mt1cD1mD_1JSPIHIrp%x(bd3z2.Q3w5wKaăU"wAro8xI%qGAjH&::ka74:%WWN$S,FO:N>*4'(__\qJ=pXrgPJHw#u%>*I.Sd(DfăU"z)ahyM)R^OtJPl;2UWh7<H?^zoO,/jb(0]dZ3(S:Jm)Q)j)HuB.[($ZdLR)VyTPăU"W9iF%I2Fz=&,lE\4_7y=K(M7<ns\QpCNfzAJIBNl*LNup%()9%%%%-%:tx6I5,]ăU"kg%$1%%%A7%%%/%%%MCH?8D=6SFD0Eb'jp(3PFzgm$_/Si=;O0=9(.gj618WWH#ăU"LoI?#A0$lZgTgVftczcsapt6rHzcOhLC.3rfjgQM<D12(EWf7Jhvg(.quS97+q;ăU"4MP>lAl1VDhex_:(Q,oIKZX0d>V-L^dXdqK\p#>u^lp7Mx,wuWS_>K&x6waJ\H_ăU"P<=]uSc2l8pErsjuvFZhX1#YF(Urc8O>d,kNw#5:&%k:02.ZrC(\%QpOT/prW:răU"<Y/bag;78)#ennUhG(6f'g3;>nR:SIJIW^P[A>(PUk?^lT?'UUTl%pGWeKH$06\ăU")P'qE(]EOaCqE-rt;VW'[[/u0RlG9bwoI*7ZdnAsLDIMZ>5ipK4uK5,r2i+Y1<băU"r%\K_G+/=0gz:_ILY;cO5??j(RfF$9^$(I_Br<KU*vvc>TIRQfcag?UkZ^'c(1văU"&1ohfKdGR#AUm2icfM^p;CL(XRKU>XknyUmF&$?Rt+x_P#X8xT*Xtx$&b>W]sunăU"tFhu6o8rVFMr.^4udtGbHcLllRv>GGd4NoiT81Hr_TNYLu>>Qwp>%r(,v[sDwqDăU"XDv$bGr\<6u(wb[u$w40ZWv0zZPft>*AnqwSg(7F>>v:tt^8kF=twwTWCfv^TxZăU"XIc&';PrF^Xx??kLLM;ajbl84FdW,jj&k13Kns,vPhladN8cxsLxl-uzTuuuWw2ăU"4(K5'86D<Zd$F:Ot(>Ztzog<qF.gVtxkkeZ^F\?*v;xAruK5loAon$V>N-Iuu<6ăU"vh5L?du:s,DtVvj0f/DNksHJX5?xGJlRDcZFu,62h5n7'QgcMCuuYG^LqLLwkSvăU"DO.L$eZn$)&C8T1#OJf\pLEkfXDVr:JjZtT7h[h0BISf>9I*u710YonK(;-+gD;ăU"?T$c$YZZbZP>hLGrAn&mZlbG*6H[.TZ[q]9Y#wH&QenZfle_lxlqR&8P.pf.X$răU"m_e,bGju<F\TrkRA2lGXH$->f\C)\q^]fhP>'fsHMoY^LTq3uEBbH.KzI$v-L]PăU"R-(Ll5v%p8rS$ri8L6h&)YDa2:ivh1#J,C121NH10FCWVgj#^Juau?VmfwlK0qVăU"UObSz-sqDF3osc4Wl+Ot1Z]$TOB7axV^GlK#0d8Bvl)pm#_Rts<9aiU]6ja$-IxăU"N'h3Hm5vDlsjD-&hpXYkV&m/ka_lPy4&,QQLK+3tkJqq_#23WT<r8iju(PuvnmqăU"W%xNRrvZ)aiqAbU<SebbY..Zca.hl<r+f2^,*<UYpF(Z/psCTD3U<Y$jPXdn2EHăU"WbrM;9Fr,C4^ceEB7ZNsvUl?4<lE]C](TOP\J]BhzS0,LffexOsL9,K?zTTbfD$ăU"$VM?Wqo7?QV\p6ZDI20gXuqBqgXKn-VQ,K831#joT[p[0,knNT,BK%LSqPhCS2=ăU"a:nA5Ukqh'd(vk&&_6#M/0B2(D>e.U)LvfdEKD8d3GWOZ2Y;,&S4y6AbcL<_]=.ăU"YK+qRQd]2+Lktnrm6-N.+F+&E_sqqz2VBhkyKW/nY&+^cOj54;2&0^6(0UTc[7'ăU"N_8D;aw]rd],UF([8<Ca*PYS-Rot),$-25S)Cb5#/zlo50)uvs4.XDnbYB\SO^BăU"G(337i[2'5Ru4^bu6oDz<k'9^eM:2PNKN0d<C56\_ylE'BE1r=x(I,;u]J&3bq%ăU"#C'EW?'YpUt)t3A;)%F8-(Phh6dw.q>&Et1k;vSHdMPd)q01ED<y_[)vrrh1yIkăU"',./V-1F)\,i/Q/4aQ5zK5ER?6+$WU&f)rR0FV]r6=w$Twj=Ft[<2^7Z8rW2SDLăU"Ju(WNWaTQiJJnP1m0[3?rL:M?&9+PhOES3_U7jB3-Mdq42kI>(f3cF%CXeL]<4:ăEND SUBăSUB V3ă'>>> Page 5 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 6 of QEDTUK.ZIP begins here.ăU"URmEtf?[\C8eN:IFF1L5j'#SY=(NGM%8wyW4k=VP%T=%D(u=fR8/N:gRwK2h5g-ăU"ZsJ9=8=_<:,#(2YxNF4_5<Y2sWx5u]og6>dt)Mo2ih\\gnG.#St7E/^&P%O1JmjăU",UT3[IuwG:sf5th,e<F3)j88S'=+Fa^O*;R3-DC96VA*M7[aORY8HT^=Xq.D_ptăU"Y[>PU,8obIp.m&DVX6lET$meX-p3'#2B/UB[n$7MGYH>JtWY3:)kR-7'\Wa2ud7ăU"ZJH_*qLhaZ\S]57:XKJH,J1a]:Z/14ycqU$_*^dM7gK,QoMW4re>G^/r9Jm[]T:ăU"m6v3Om-CS;3#(1-7+'-_/\m$2a&vgoJBB/a7xs:HM.74<,BhQS&o>5=;whm%8d1ăU"T0MUGKe#67j%&s;mw%el)LL)aP[][3;:BWvi7b*K7qIF&o,(EpF18x41j^q?%L+ăU"%N8Vtw=T1%n3bbj?Dk094m-*Nf8;d%oad:3k3%BgIRKaX\fF*c>4tmQ3(^Y0l<făU"LaLFg_HUbK^_GSZRp9t+F:O,cH1c<1z#]7EgQ9/ZcPHLDu;=6JxUAU#pq5<TOfZăU"Qv'7_7auKOI#q1,.#)NZdWujRQgD]o9uG'<EP?bMb.$emdXtQtDAG8CZNLnT$X_ăU"n5N3LpQGRc6-*401U.JISR:5jt+cs:#.dk(efWDdX&4Np4,5#h-\:#BKk]gq:gjăU"]nQNK1>%k'0(/U4h-IxkIo:#l[qRO*rSkQ\U93UqXW0FbI]^=CMcPpT)jGG3[k\ăU"jVZDg7?O6B0P3;,ARX.ntm+H6-IjVA9?[fka?99(b[jPgUfi.0EEGhL83x\jUrlăU"O;whkhR[3-o16Hr_<P?&%S<nDOCs^e,)\OU)I=V;ddk5W'#^&1mBAy7[<3_o7R(ăU"_Jo,:Y)#l$+<I#G=dWK2elu%n2pFA<WRRRXlVPe;UX7L18=INGl\L]9=]Cm+F[IăU"I,H2n.x'I.$fa,^meVs*0Pj0aI,qB/Pn%ZeOZ>qDi+/(&S)d2am>van/w?s)f3:ăU"w)Xsax38_i2cat7#+Q]L(eY9AvE\jF^O;xn%#KHl/-X-va'UP^oDMvz4j5D.yvNăU"s%PdayU)GPyOPN&)69t:gC+wI/Go9.4;(;0+]-yYiB]%j,D)kte*N;fm.xXq+U)ăU"G^(sme_vkKP*?#X%/fq<[oR_J_EJ[HiU.SCB&;&<ejx->\]H,,O/XEk9RixC0lCăU"LE&P9moEC<,vdAtMsGum^<;VuEJnC+--*:BfBTd#-I_Xt,-$Z&UM*+U&g0tj)2aăU"axW1?qRzJM:;a'6^.'w3B.(d)3X,lkM7vBOT7+No1(JVo:0,P3pX5Dv*3pwO_%qăU"k%^w(COE+UkO%_N%y%h5+cSjKY$5-MgC']VZJBlFqj&[Koxjt%5>4Uof8.+^^VGăU"RZ*'aH0P&9d+Y1#?ftP*$DJ9Q<Gd;%QgSy-e?FM=uGbK#ez)CRKW^QA;?NTR%N-ăU"z^/O-7:8\IGcm9O-.M_m=&SkY(-k9Hi)a_35#L5qi&B?qE9;1&)k;aJ>R#As?nsăU"F[>ZGJ;Q)B)heAZ]VP//wWa9IGJTT1nLcF6WgNcYe93^)g,6F)A(_(\5>En/e)QăU"=B:6(/b>G)MGzy8#>--k/0.%xr=oKj_ai?u3gAn\nv&pspVRUibH-1omuQQ3hZWăU"*H.tZk&-%b2)m,ETF.lta%&9kD18c*a8)y2V7E#tXQgIbs*Z?eKhJ''Q?:%u<O_ăU"X=_4/i>bm0>%9V8lm8h#?>%R?QHLbe14n5#GF7W8yA--reoGYrD2e$[HRSVKEgWăU"'poq0rSS12T.AvsM(3kw['ZgO)^j,fI#QuQc.=US<SV=RTP=wNr#)kFascvui'găU"mx5=8JG9[Z<B.$nK<aE_Pnm$AeqbB94VTn68XF+dAbSN$%?=1lvMc*ea<'\M)t8ăU"[m:u:3E]ERtlA&T$fei:<G9p3mE^PO3EAQqIN*EEPobc<0b2Lz%eV7,WL>Ei8m2ăU"_T=4_hTBEQDx9OkH^N;NtE:6wraC3pj.h'_6s$OQAh2MW>N^7aO-pBY9eWE5=m5ăU"r.nPg-:FjrFeWvtE0Ggb-l3YcVHcf?GSe'E-BdrPJ_w\cwuXt8He,6*RbDdl4pBăU"aM])<fR?nBmP4Hk#%X,jVHK0=3=g#;^uLqQv%Dup(%)9%%[%-%'GyJMWsDCla#>ăU"%%U%L%%1#%%%;M8>=A2>0AShF0E.M)HCk2&D&ost<S+Yc+o_IgF*P2___)>k=*RăU"_*]RD<S<&Hn8YKertKt7ZF'R6jIF7-q*apV'GgA7_eSA;(7oRpRo0fP:(k/un7/ăU"#6QhF[s>S9ZDIcprht>WpgYLpwMr8JXpl26t2Yh42xhx66phm#Vx,u0[ZaZV%x3ăU"WEJ8lw6pb0nr2K?8b<UbU$]q\8AaHF0(cGGMl$K-uG%Y)U2>]V'=d*da;,.&Hk9ăU"iUva=<j<Z8ZdB,fLsY<[:nD8+%hwiyCmGlL%IEnYyri-t=uQ1F^(LGfVRYrPqubăU"b2clUUK2_g\N5M6C;C;7C;W?bmqN)-XIWSTg*cNH4u1o3mrVjs4DK-gk_,ZoVtxăU"eLH+bNm2f&(xYE#BjiiunRc0PE$Ds[q])6-d?tt[r3y#KE2KcbfI^Q[Uz,ZQh=făU"nNS4t#v$h>LCt^6q6X<G=,YRv\=Y^V_5_[WqrWe2<r[3V$8#-sJr0QrP-D_AWfAăU"]Ws*+U2y;is=Ldq<RsC>fx\,S&ZLm.,4*(IS4n)V)zam;pR4D'SbqXq-v<b'n,>ăU"Jjb0Awib6nvlKNd20^pnRstWtsMuu^'s7#7siHfsWVJ>V8UZ''Gcwr<'^yan>-RăU"PDm9FJ%R]4$+?$%-J8<-gH9hf&BeZA#WCkj.?fu#xo]u5ZeViPKw\HYZv0f/qFeăU"*bAL\qmKgR=PLeuKp)lku8iUP)m+nwFhtdCshLXehBsnxcXhTDku4>R*FlbVUx,ăU"4?L[1I3K(ngLHudttuthwiuVfMelb$Nwl,$e;>k(rTZX*HlV+Nbf3Hth,uWKMm&ăU"mh[c8hve$KgB[+QuPnKBlonC2]bhxt.w>n%DBHDNszuu?PVWlsS7q[VxW#9Zgw]ăU"<s,MlXZtFn.h,j\btChvp<g8f_sWQTKcUcdx366AFt*$tWh<-LsR#d6M-vXtkD+ăU"<DK]V#cMg7'I56Is&rfhC)xQZxLBuJ0$:Y$M^>r5Kv#ud;JpsYvR&\l3Gl?r(&XăU"Ye:GJM=KBZtMnT8<5MvliPeuQi*Rn7ixwMbhBxVwYqb?lcW;0866wRX:v.#l?x'ăU".WRD$nrfh#lfuf&Vwh7o6pnRD8rpXb^lMfmVZYNwM9SYXfMb>L2hYMa97uZTx1păU"sF-2nqXR9K7lQvl8r;S:pu_Tuvi0XYao7t?b?tl.oTLL4$kx#;j=/:RSdldq.+xăU"fRp<lQc\9$xWur62pSL\JAY?vL\bH48?\fp2Z&w[&hn\D8Nd,<CPAnZ^*cuc#RDăU"x<8TKX+2evLBc<j\\tkNnth,k[+duu3ph8BK+#2.H#h=BtE#>jWXcD;^BJiut.xăU"<iYg=tJYotlVH.xZRMgJ+3lpTZ5uv8ZTV(:E3#\DEjvd+dIlE53b\VW%#LtdotdăU"P(Q8ud2t(*h61\K/lJfH#K[VJ6oijeJWZRm_,fCd,8ZwVALlhTr(jcoRX_KFJ1căU"dGtfq8:T8cl7b&:lcLtOB$kCZ^=>\-EILcZKGDKuwTxvf2)0fQ7^<Fn*HN.mPTvăU"cl#H-ER_3WHr$7j=ti-p/S^a]+kIw.'[J_ck;eFmi4O*zdor?PPt8Sr_*pC.6><ăU"jdT>.x(<N'=s,?p5lhE4]-dYbl5Bi)ztnKI(FMr+d1kZddxH7RdOWhwnJjJfTN<ăU"XNIups4Uu)_\o+huqT8xnC\.q]u0<DjN.>#sHeUCuUmc^tv8jFt:L7O[B44drL9ăU"#TkjW?#>0TM8ZXtOHkx$e4t;>nNdAXAxT&$VBhfnMgi[K8f0BTkvR+C1v]D;o%>ăU"Nj28Ydr\vJyXplPNvuJi%+Gwnx0BZe*cKP_G#_bgU\hf^hboe$u&cxB=kc2+i;AăU"f$kIY?VH2rWYN14Jri7tgXtU/2p]#rb,6GRQRRT(,,Gspt_l.r,trF0Vuw9gOMMăU"Nu+iKR2VL,EL5ptn)ui=B.5<3m^Keko8^<mT#sWHavJOdjP*nE1j,Z$P<butgsqăU"jb4I5exxnx-UN8X28lC$CB=7CTJMEtM35Awr0F=&*&,_ZX#^5EjO,KoQ[22BpVFăU"dwR&mA'lYAPVQ43]C3sY6sE_3F;?ABrx8fs&Q,&l+#(1Sa[L^t*EVKI$R8J$?.aăU"58g.mYX,wWQxrTuCuCRULm3+SdlhJKh,>N_/Wu=WI'TmE6lh2R[c,MQ_q;+iL[xăU"CZS??9:J2IFqY$2**oR4dMKwNK6;?zYH^01\u+rke;Ca$/fdtKrBBXjA<+:hHAlăU";S-gb%[lhMvxd3i0Zcl0*%EECpuWZLLN9%_?r<UHoS<m4Bg)T2BWO?Vcj7Ox>h\ăU"WDfG%BLVz_3<$GaR?.,[5tr2D3u7V,SY>DA.gY.qmKXN,ZP7mT)zz>hOVK85G3IăU"aGS?tlPml3-n,gVQT_55o^fr86HSm$7gIZYX6Z5/JmZ6pVDWPRVpl[*BdU>\\tDăU"ocSsX*OICbAMY_m-]&\nbf;d6mkAQM.mjhG,S]MkK6q,#Irq)S+Ifmd=Dn-TtGNăU"q=6i*fb)EyDMtAtkavuh<WwoN;:?madGC=[;oj7[E>dD#/txEEkb).Y8duSsRgHăU"lR<Kv,FKYu26NlU^CLi3am'#y\S+Ht;86F;LuVVK-H7Q#I'>q:Bl:UFz>;tEBr^ăU"fltkTM'mzcsp21YH.TkV*tJ__TS3ngIKa9Df2a*VZ1uqdX8lrSbpK8f#lLb-5BDăU"l\6XkxlgkwxkNShbdji5KsKS<nHHu]gQ$+\s1OB/XrAlblIN4^)sckko.sY4-+]ăU"3'dDNN+c?qSIp.PD0FCieJ/P1H,R3qpK_E-*rgSm$b4)hM94'C=0'PV_:awHBcUăU"FsBgaa[?=C.tTq=[usSS*K\<mG?cJ\X8#zYiUK/h>QR2F.nBp0R1P3Y6cS\6Lu>ăU"C?>alHR$p:&#'dhhb_OFL_HMK3;K];r#^9lLCXTd<'+N6K=237g[=t0VLNuWN7hăU"GPtC;J8dYYE0wI%,^(QDr8Gb]<KCS5U=Yjh/Il+sZLZv<&LH;\6BBIGl8)M_6JDăU"6tT%SG&SYnC09cX4qqlVo.[BB]S7\]b8po:LR?uEegqD8vM,XNoSJt+,%XxdGRmăU"bKD92pR,(Gr_nVkfKY#pt=%%ek]FouEbnrT;yE_a=K$WVDon?qJJPJ1.%^J5qBxă'>>> Page 6 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 7 of QEDTUK.ZIP begins here.ăU"yq4LvQA1cGU]U8h<M5Z4KfUYG-l,lWBpnzb>k2dvHenbLsZ]sSA%^#8(OsD$PlJăU":rvHVV(RJu.F_uLKN^3Rx?I>dG]/E>CWyU/sL<+DcD=OA0[*'6F^7JZq4ZQNNTTăU"6rRhw'*%R6#L/FUWkHVl7$CgA%W24qi)m$:1fbRWLozzBqTS=q*BW6T^Q-]0Ya^ăU"uSrP<dcE0*Rrcv6bV5roo9gTR2dtB^CUuk*N>NC+t_;O-CZjcML)q4Nlw#[9*vAăU"jWWZ*#f<;R;<$YX.OfC'sgS<ZYAbA9TR\31W+mTcHEy$3$ee;.<Pt]%D=D]uSWNăU"JC^7?lqkk-SAK)<XUt&$fcPP\OJeP(d]\hcdm5-f]bSRWZ11S7^Lx,Szd<<y,VtăU"1GoSQ&;J3q/6tfxe&$fJvZNNhDUS]ayY8YIsUXJAFb[VVr*g[5=DcZhS8J,>(ZeăU"[w9fb*,z<CLdNADtM/3+?/33uju5r6DllB^ue1x:0VRlKnjT=>BkX0z0#tn^T71ăU"F4K.Wl^;Bm:(dB(RvuV&&V2R5vT'Al/pmLs&(4SH&OAdwNzUv-#??#Z<lbIT3-_ăU"DjKfC&%n3lKR+nQ=RZ6NO&&ejOrga7>_Kd4]ZA%_=Qy9]^2gNgm36CQ>uCx2g]UăU"JM7aHU2?'+c\_7gio2hGJUnekAH;Jcz$#<DlCwCyp[ZHzFU;6+T4>1A+fO?e5klăU"65,kxx?lbpw64%LMt:YZ,Dzbz#;$I<;%f'_oxvM,q+Re,b<t9pBcXNT;%^tnJL,ăU"oDp9eZN>R++G%o7$djUprpCpmOgs^[GQA>yIMlBBoDpNkdqNjF.K2,8hREzF[8AăU"DnEqo>6AHG93[z^9Y_[GiL21xS1=T*)G^Up5:EaYC^GX5Ezby=.3%VZbXP*Au2/ăU"0h$y1jO\(WZBT<eevZ2u8xIwi'p$j0ZfnoQtVSogjqxRJ+Q,i<Dx57%pJxX*rwkăU"]jA\54uLZkk?R%:]&LcSc^ziT]+XByqUGpr&6[2Ci#I'&>,Ok^KdK.(J)GS=sOtăU"^YTkx)pcqiqaBkS:H#utt?64ctS>=)?cJ(>U16&cazO-H]xx$BGiN$;$-$\mAZTăU"TUcPs6N^6iUbhD6XX>CK)DEK4Ac\YdKpg8?D'/3v\^79V1U1Xipa$F=[2H7JCiiăU"-Im(F8THf,2h'6C0%&J'55_oW5(6a*xqR_?Ds*Lxy7]oCx)qBW>^XeIXNl1(NAeăU";V*&.ckYi?Lrbg%S\$dYbD_YB>qGq7NQf>sbKPN3O6ExnqG:giBWt++UNyOJb/BăU"ps5;6H(V8[tpq[TU^f%[;uj)E:mCO%D#WtVQ+QjA)g$;SZ=1#)1<B8Yw.IAe.1tăU"_2g#f':A#f40c?%kIW759o#2E=kM%.I2#dbHlH4KN?yA$:H9EiqIVkrJW;Htvf)ăU"KY=m0$bOdA]kI9qnoTa/hgVI3qVK77df%b#6#AYG'avz\(WdwK=\,5uEEvx0a^YăU"3*2c4SV4I>_J2wx)Q<%RK:6k2ge8#uvzFf]fAO.(4o/6EoKSa.R>l*r'>UmsL#AăU"TF-7+M[xv-Gh467fwOY[eGhsi6EzNO#mJk.StO<1Nisi[b7&J&WIx%)bKOQUWSXăU"8GF3(k,5aWr&a)jX#aL?$.iOdn\v7Efo3Q:g(yp.EdSHy30=77sMvnooGNY>)0KăU"9U7=J8#<ci4Nps-Ad=5/xwZge_Y'Z#\Bg#7Sy5GBRwtkO/jbM3+egE*m&7.IA3YăU"^Bej-VF]=0^#:M..+,K5kGO>0Lq[[O8G/JQAOdCP3]#aK%W9f))QcE..Qjaf,^TăU"2##n^A]u=[j)%'>L=#f7j]/2E<//oX9m[Gt7:+5#o_&/g;NAYJE05i9aCjgYDVIăU"mKqiiEIkg=5<+QNSOZQ.O.a;;\7+IRo9FPMJ_K\dgb_Fg._PD#Gvvc%z=1#/N+iăU"hCs/=m*$oK8LcfR3r5=0LW\AR<L3f^/oA%eUR*fKbErKcfSjS^P),xma#>:^TMDăU"i,c(=XN+.txcIDA9Y(IO:bI6QI3&8cI]0[)(CT?])Rj,OKM%LsC6Phf0SEL)k_7ăU"Fdi#1XgL)CpjR<I/PWaG*+W*AYO;Ho\So'<^Ny+dDbGCC(o1N;OG?y0Nin489qIăU"jQW9m\4.nvPrT+-=$CZ,,2#7,FsI>;kq(EqE%^5F=H%w11<AHC+B+9=\9/s-aG3ăU":Dw*Ko6zDZUg/O?KqBE%J/I&M/dGLCOmnt266P:*L#('nxJma&c=E>)PRCo0[ihăU"<g]-c<&O%j&]I+NiS_8>_ZXZ)J1mUf)TYH9PDu(6G(C%%=7Y(B%P0_w/AW%vW(=ăU"Y-De0kCH:*4DtNKMnnU67Q8%-aj&8ojN-CPq;Z4eOD2Oe=B?aZ:&7:i,]z/-7(văU"1[C,Z)qi6,9AU)y0O(o6BIBGmK$j$tK:fQoUJ,Z(1n50+GN9<sC.if=Rm1=X8E,ăU"6c-O\4_,+G%:lm1Kw.50*0mZ;H=4xRxy:OeFsV4rBc.C&jI%LE)7-.QoW#E8eyCăU">02t/aK8;TU,^#DJLCN,W_5A(jO5hB,A-^.'&1>I3-zo#a'eG+vJZ:A/&VQ9Y/)ăU"wDCVoSn[gW9%946I%nik]II%Oy5q+qe)s3m[[oXjlSQ/ban/a>*)WB%FL6+TH^IăU"ek,MQ#OS6%+c%A'J%m%A0A,AqmWs^1u&p_(m*Z\0mUF[594uakF13HZ?Nia1?)8ăU".L9Ct7s'h(E9K',QE)qy1O)3O%\xSra<+x*/?q%**]6QA?OI7nJa]_1/a3aU%;_ăU"47ukYjrNuPOn()/n/7MJH)&LS551U]sCmELY4/LMuG%1uZu.9?_12(s'eeW)%Z0ăU"Iy(i'p%JzE<REc11Tx,*:bIv*OD5PCj5Me^,a&J&3-)40k/Z*]Aegi]6f6VRL)văU"b)3(gr/SOxu/sE]573/kl*Z0aPPoh:FU9H%_A_j's#d9/SKIM$TrYQ)JaY:)VGSăU"PDC-r15:#GiIRo+Gcj.yWkmP4,h+CNlqS*\yOPBJ]M'.IGP)*A+-NC<ZIT7gG[4ăU"$sLc0[#:hI#895o&AM=G_#1uq\39S=%6m^g_h[<:=FE9/5:Q1uRwfHo[1(-rm_UăU"JNP71Y-Le]Og[7/g\1R^o-'LOEX#W9*O48IkF7'Y9yI)%o;BkA.d(,GLg)Y3e[0ăU"=4,.AWvj[%uM&QPk^7c/)3h+J<,$/MGk1?I0o-W[%F'g1XwUx]-M'g(^$('2bM]ăU"H/,&-EqHcI)[/r(=2:99O^?^KL$r3W%&T8E=Sy+x_AqoukhG]U?%5nD3%AphUg.ăU"aSY^*R)+#=I]e,UU&:'9<-.'3JQG0Fi+;Ru*:1B;E*Raq\#?=GA)/JtpU$,oaU?ăU"FG=HPX8J&5LIND3_qI/d.8:g;/C?P?(G]97/WQo]<\JLm?]R3>+;Z/W^+Nf>_H;ăU"8)hO>?<G&AF].kT7-Rpgqx%u-E<.Ije(GXjtGXj:c_)r+uym>+N'\WONJU9;]AKăU"r'C#O'F9iP/]ptRpK[iI1^Q8#^)6/7,:k_T&8)<%-euUd)&=:,OX,2(ScC%+?=9ăU"F(4%PfL04o]F9Aip,J$O9%JrzU8$]Eu/SG/.)97E*%%lIY%'7\+':/v.$XxlD)PăU"T/W(qu=/DY;BR_o*'M(fO-n0)ACcF7%=yL6?[64h9./06&7H&W(*u24P-8Met/*ăU"NqHOOBN)/f4I[E)&Tx9[ID^O#[U%E9m4;qS+>)-w43ir=+.-(EF.]F(bsW7[L3căU"Aw\VE]3DpVH0.-*o7K]lRw)S#E%m(EC))+7of_a_gM.3I/9EO[EPEXq(cC#$#0+ăU"1(ARo7;8sH$?(\R_f>UAr-W7KZ])G)s[JeXk8nz3=);uUAGa0Sp_;)\PCI<k0IpăU"n0;D'K0qnpl4Qap/,^^3r\\KiL9B=+adocq21M;NynRb;H)69]kngjL+q\^U_9PăU"1Kw8CFMMA+Ch-M%pKk+&4L;9bWmqVws=okO=p1Q<3O^pE]IX,OUh3+jQy==?c)&ăU"[lQ:m\IbCQ'dg1fm>&(IKmwwc.V-J5)#w?I/q]%$0Y^1VhI3q[=MN)(n:wjP4]-ăU"KH'A-/YeYX.D2SODeNUYXWpdraDX=hT0GTN2xFSk*84CIo;(5c&&&bA&7fOIr+ZăU"FP[UEBRuUUsob$$awZPL6a#l[g5<)HC\,-FZ0>sHiA9EMp5j1QQ?6uJe=pm=\7'ăU"]Ca):^7;QC-gZaQ=a/L88^-g$.CJ:]1hj7b)18w&j'N5T?&0#0RI+Z9W:eBZb*oăU"Zginq>/op5^#1(fNjI^3wh;2:8OsA=EDl0:dg(5DI<bB]h8WDj6iKRY+PC+#L*TăU"[<b(=]1)[\2QYs.dj3l<;9*D5uS.M_bRO#tJQW+JUHY(o;xW2uAZR[R;M'EQ97KăU"VQ8]qfAZ<P+Y.bh)IP=3.z=7+;*G'qJpT,7IU^%SfO:f+;?%mI;\#;Z>g.+7qW0ăU"mq_=4&nLM04mz%uj1e*5wU0*4+X?,qONjsDp,e#kQ-p;JTDT1Lqrq\?m,WqCmD,ăU":*Bwx>Bd%;BKY^VyC41-MEw)p_(M=xS:qx?X\-A4m5)LmrCz/\$_Zn;POX0h5,kăU"N_gOVUHK5uo#07L=0=pyKf.B'uZH?;l,qphwi#jR?17LW+lU:Z_k20lZ#jR*qZ0ăU"RH%7rQ$>QSTtNQkXN)B:M/e4:%-z91+1M>eEu3&&'N_Jm%qrq5+'XcfWR1d^o1^ăU"/G\KAg*80BB_]/uhVf_#p'3Q\2XuMTHZPWi*$F9/B*92f&j,,*#mN?iTMP''mf6ăU"3k>rN1\\10VV;)fhk_*Y&RT5,'Q'kT<Uw>p%\kO=]>N##FY?j*&p%8keXk7#68făU";=9IFZoP,MF/1P*JY8LqEVj*?.ibCl%<T5U'sNWAN>Q,rltGn*vuUO1S]#kacr9ăU"xdCp;F13NhKL4Ug2'&Py[:i3'$sK$3\Vn*ZgF]og2>]_T<kdqe:=U<u+t6Zw9*dăU"Bn_Ms6&9<^c7bL8YLs&+n;G+?n[rt(4>UI&hw*x^EcF,<+diGUr--bM?oHqiQvxăU"v?Mj$ylHUm*^Z$d2zKHP;,Wx94N'ARa?<x=DwrfZ3f&<[\BT[?+(RHo\4/:oMp9ăU"I?l.3(L;SGm$#7T'hld:n9]g0Q;zdcgY#Pq;U+7gY;v*kmP+wKh?yBk0TwFu*(AăU"a;:.vljA(k+kMMQThgd>]lvN%clhx_nk&\=T)/MPcr.PT7\Nr7uRc#(DrYzrFg1ăU">m\=?$1+^3-BH/&*2XX*(2?fZtEi?8xQ?XE5;VZs0unKKRK;a?qb'/<di3i-CCwăU"%hxxxUp:lpqe]_Gs49t6OSt'^:N77NtG$#gQ1\u*kEVILT'.hsNhu,-NLstx-bxă'>>> Page 7 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 8 of QEDTUK.ZIP begins here.ăU"&u%p()9%%%%-^%oid%G8J<)pw(%%%R,%%%.%%%%qfx#jwS&(f%zy1Fa;\(1kj.MăU"'_op)xA**Dgj*K%z*OE7f+8O/dOPU+D9,50p&C%n#D9uFBYB/JG3_euXEXFY=F'ăU"tPe3*IYMlt>IidNFu4vrdpD.wwtvvm<ifEJ<rh^8Uuo$fouvf((Hfd#9J)z8,YIăU"f6x?mOjX\)xzuA\X3$%zjE-,jY%-L^XB:hQAxKAymzssHJ.0;P^gc0LM_/CKXKCăU",:a>sK4hVWY7(.X6/&[i%xugxE282$33X$D_,Uj$8/2PUX&cJz7Mz&zLqyfu_s<ăU"--WN3=S^ue..I>Y)\ENYv>/;')HJ6ToSI,Vi;3Ft*#gaZ4HL(='G9IE^FeRv-&PăU"]37UL<#-'7e(%WD8%>4qd(9^NB:'pm32o-X=k,%lHOiX$VaN&c)(3pTRZ(hYLI[ăU"E[w$/(:w^S5j?p$nLMLe]Y)i')Mfcxg%kYmPDh_F%5SR5Np5oRD*i[Hg_v1m&FvăU"SAx9qm]ka)FYju*,WtNJbkb]B<Lt>&h53iGLEc8V8+wEm0N^hVB8OeXE.SpVA/#ăU"KAn^$a7CxKKLpa21n5N]btw]]b-eUG8D1Bj=vnG8Oih$uX$RbkWcK%iVYm$oaQdăU"Vd^bF)ri6[B.V+iHm<h;D(.^s>i.2<r7QBwVTF3Ua+jYU*?*guns,;#V=Qflg)?ăU"2r+k5hs+=UE$'tnCtNGkB/a+cq*kF,h#_ATfj?C9&yi1]Vy]w]4ZSM0u]QH;Zp/ăU"hJrkbAr?sd=lggF1)-Bi6<d+97d=v]$Jf8DV.O?B&Zb-w1383;s-h.9qO7uCNXtăU"U$H<'Z(*K']=^b:;xGb'>_/_hcNsP]&m_Yn#oEYd8khL$uWdMsJYU/B,?y04Tk$ăU"p(O6au)7T28R<,-&dg:[7;k=g^5C)L-j;W6<\<k-A9&Bq3ZBVqOJ905)G^6*)yjăU"KK7,PPcsGmJwV&\(gcCEZ7m9QoMggWqU#FA#shvg,v/?w1:B1:c^]AeF#7mtB::ăU"QG5FcS'1/ESqPdK1wg0##hOt\Z.zQbhTK#QGdm<M,4JO&ZQ;]g\L]O$6Rp:ioYqăU"redaEp&bV8dsN**AkU:wV]%T+eN[1wjQ[+]zMNtBHQsSZWP&[tGa&Y&2/.a0^-oăU"1<$N$6Sm39v]Ua990JD\Ke4&jJaMb/\(=fpV-Of+RK;H/62=0K2=bKT4DjZ8ID4ăU"<Ezt'c=H\iO(6gLVMgs%'iDup%()9%%%%-%:byJM_3(#H&I:%%'w<%%%1%%%M70ăU"=3M14;;LSF0ECzc.?gA&h#260bQ+0D6;KQG_R:I]fI-oS+L_E;^7J3neD2nr:IQăU"FagJW3JsiQ74vJhuvv$gcD[g2*eKnBkR$Y5lQ]BU7aQP[e')+[e/w9k=Q4Jr/k)ăU"eb%Py8us6XxkJXJN]lO/l?lxv#p_,fW)iRB[caZTdtC38LGm(ax?4tt$TVda[T&ăU"ud:\iXzv]jk;3kpIoD*bC]BJ]0=?-^7TdolJuslci*T<kC\(Szdtwt3LPDk18+6ăU"?NpqHL4?rzmdd*$&xTa\6wj^STq[amg2lN\c8]Rp^9<cotZXlA&UTa[;G:rr0hcăU",hBZ0pzs3p6r^4laxebnAHMfYi=WENYopc*w6VdPpa?[<tp*vR\tB3o0:<S5Gq4ăU"WGYg.Mal=D7FA0kkLAKB:[$T15^6Q;[45[S5?&k+*#o87z&dvJ.D/zqDab2g6qtăU"*r'2sEV#kT-^wM^p8U7vku>wbZI4ktNHV7p'GHf;zc8hmN$.tzWnDtBL8BTv^r#ăU"<v_skr.0rW[$dbE/T7ln$+>oP[gC?ucppWYetmrkMx0r0J/VfxTejiNFept<INqăU">Mxw$eu2nTX/&%Mr8NvLg_6=n<Kl5rR_8vjtnx3luZ('0Ml,L8<cx&_q&9ncWtTăU"dCjlU>%$W$DV_oB3&_-M$h^n,8jZ:hWBsdk&(p_^&'Y+S/(uPZvq<6.-bWk^d,WăU"DzP^k=Qw,N?%.NN(3l=gDAJnYEijVCc2D)i6H:H^+,*vrD^Wou%tcPkP\z(YmV7ăU"-uPYx<ZHX-=cq#LUL<%.jQwg2n^VSdw'BPrtkMo([9nd7CkNs:pn*lxkZ<ltncqăU"t'jNXMLbZUurV]V0DxZaq'VK8uuMlmdz/=rp'LW(MmruJfxupZLs\X4HP>i5>zqăEND SUBăSUB V4ăU"rGV(>Z0Vlo5<sFDfGDIa>z4M4hNJhSMyJc+cw^,\Z47qlQ;=VNpa8xPnJDp7-sgăU"t+qELoBqiPpxtBC)j\:tMhHuekAtfgb'o2Dvpb?N(dj[?Ms>j,wBQ3nmdZPxINrăU"amf4nAdwDX5mm&pC%W5SL$,.rp+^eidz8L#htaa?uZt<gHJCTQE$.-t\PW4itXpăU"T\N?:0QX4]J6^?>7bt3htM],*\eO4=qP5s\FA&G,DGHF<fh&d]tBoca#fltRkLXăU"nJau5j[hs96'mW4ZDz=Wv&rTXsVKQd3)yL$KGHn8z9wONhjRXTxmq+w%PMN8AAdăU"u?gBx?oq^4>6]5T6e-+dTp,SqqzMc[f*z(wu_O#<=TwY;G.(PN?wSEOZ^tuPml,ăU"G5\JfMwqK0>n5rx\-?3k#;P5w_bN0K6fZnc>.f1&,nB_#hNiZr.SrtC[]elPm3^ăU"TeC1F^rD?0]XttrF[vcVw_p'Q7wttn._=Hpy<3KlttG]YPV4XPTP.DlS8+7?v.UăU"ltCoW<BT,+MAE;R+h&+?dcqHBBo8TrW4wuRnP#l]qAe0P>;gTtpc0Xq8RDsU.juăU"9^WtMJW7r*3hFfB$mE#<4DgPXvGmQW*v+PNoT:43xRj]tSJW'e0cwdu.\WN33D<ăU"INcG4NaUkGDooOiHq:>oh1>(B6k[4Iis?MBYxi&(Y5DZIuLM.lq%At:.H<JTP4MăU"DTmrw[_Vqr3wu%umBXx538MNB>CS4CV.b-XW.Ca^VHNtivJR;lR6spSZefCVf*răU"u?\eiu3gH($/3L?HE2pP:nupEl2A+?3PUX.UVP:_cEfRVB21xYp9KB--(4N<FF*ăU"bnBx)7PxSh+7ol&r0tu8Q7\&cP64Ux8T6w4xQI\j^D]irTFUSde8r2?O\)_:E'.ăU"_3WZgB]_?4,:eWDB:;pbCAhI_F^EQ1Dk'%_<.ZF$Cg]+xUi2Y.=Qv0MI<X:[UUlăU"cRB7jP?=?irBDl.q%-Bi.(z3j+t<7c#v;T4?FL57N)(iI8\xQq_MyG%,.9GM-XOăU">hQKQ;0f1KFqjaIvh;zTQMpt[aR$?XH#S+8r28DwtYf=NW,b21N$bkV\UegO*)OăU"NGGV=Hgo&pxtB/Yp;\e53<7#(nz-YfQOFE:AicA1bGqr88BhG0u';#e:1FF(BkYăU"20$D>2N/^j#hhA*?I#8er,J#2(JTp,9)6.$A<]'Pyjn5D-G/J;<*d<*zBG0rfCiăU"jlYd;ALNARrIeGpAqVMvDs=C/gag&z0ZBnVz0Q854JVVKs;.3X*B/ib<]a[vW>YăU"#XRi2*/D3D8y0PW*YOdEM*+US_2a?'$o&NV<,KSjj=eQ8%tq\7:Z0Taa$QsP*Y7ăU"_>Noj+IC>h6A4k5agBs7NurD1Y1pN.?]RS8i$7u3-Y3T#Da(GF_P_70qF2PlI5JăU"ZssGE,t?&7kH6mS:ReXFtm8l),IE[RCpY\&dUD#4D;)$:1]mqn)FdD%FZ[c5Yb\ăU"K5:o'TjpOfR6,B$f<3sB+.K;U6Q%7q2.Q$i:?ldfiH]m)/P>%=hiB\yC379z7R]ăU"b^=&;[Yt]Fq5cZ7Co02H0cS/7[D4sQF35.*zDL#h0N4#lh,eT5UhOaocPG\3tnBăU"*&Ih]D?H;9Vy9'(Mg'SbP*cz5\LPh;lws%Ll];84Tkq<$hBPzJ3QeUkU[LrcuD*ăU"82W]1XZ)7Ehxub1x?pMF1%txbME:0]Qk$<pjrn%a-,&u3>^AJ+em%Z9RLe=vhnnăU"UHb=iNrsZ?r_3Xl<(OJ>D?vL:g>=g]4POiMXT4WkGCCaFge3dVGyr/>ypCYZT5,ăU"xubmYdk_k7P;m2j$?:IlJPVbhb8faA8\ljpBVFXAute5W:S:H7U-fnB0hRF?hYrăU"V46GIX3y\V3:)bB#T,-'#_o2^6Nkos\0eTeB8mX0a0%]Ss1Vq5W#3Ql?UNd=uYpăU"jCY]FJ-:,^\E:t_fW8s$^Pm0H)nj0?Mn7;n+>qNtV;:S$Yh8Jrfc\f1q^]Wol2OăU"ho<^5X.iqYnHEln]#gS3I%i28Gunvc]2Vil*TXP<Zup2tiMr]<N5DxtED0ks'MEăU"XlLn&)a#Xpa%POj\p2NH.hm-6aEZH4FvbjZQQUzujo&.qt$,(YtRc6<oY#t1RvjăU"[Fz/JfTWmSZd3C_HdRtVd.\:p(#0\WUab>:kE>f+wbif,q6RL6XcnHAgU--5m8BăU"yeQ0iS-]U6zTe#4KS,C>;bke&J+3RaHM;BDLlfsT]coK$>tzMfvkdfXRu$ITTszăU"6oeE)G.7U<4QX%h)l(c>>wU.,Lr-.gSwTV1V1%Gn.iPn^fe>Jr_3>zJj[9Nlf]năU"2nT_KHxm<;]keR$$qrp^GOY&&0$^Tkc$FSXzS+15[$:u(2C6oWiboXvr-m&^oKeăU"qy)uJ,IA6fqyLfmh575\G.OVn*%nXnm='M.dm?\W#.ew-QU+s*8AOu+w,6zkNQFăU"7,xof\<5CZW;)+5#Xo6TFu-3bdsYvk=?.gKBqD]:0&vw:R74u[#7bT0zY<)3uM.ăU"(_].Yc]PNhs-7-'v[/5m5C.7dwj1C9JTL=wXq2d7bJcp/G]ip&&c#9vxN+u&O.ZăU"id,4TkjeR0Avx:U#,MnzWN)vSr<Dm^jXe$cV<?]l$e1h<d()EZ$qZeBTwH'mf0lăU"ANaRXKr2jR&_.O\D%,bPt)jOcm=U'>nnk<MN#D\kcB#&Pbc?hG7^m_wLiO-G-j/ăU"'[&bHTYCH&4Kzz]p9KWI=$2yEV1iuD&],y(onjhE(]B>r'NSc8(_6e8%BEl+xPLăU"l6n.*AEMt8vQ9S,duQACJ:y,R31m+hdV9xXxQpEkna0P<gtRND#r?[.4O1Mxtp>ăU">vwmGt_;hX+BroW3gUTK]W_&&g2R+BHY;jC+Y$]G3_dip%?,s0,*?H6>uGNbK>6ăU"gz0\)T)Ye>]GPF,l#G3S(3f\pd0<JA_uLJ;l]U+UM_&2&i$%1/byk7br=18K$s+ăU"^N^d#VW,$XyL(DJFg#ZDOaUKv_2$?lRV2$X:/1y(*=8g$JD4[gwl;JU'+/<,\J)ă'>>> Page 8 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 9 of QEDTUK.ZIP begins here.ăU"ph<9T*^8'/i=)1JFd:=qY\UiFW.zVg'bb\.?UhX$R&)eH)buGSKF'E4aXO3k3'WăU"gu6/[=$YYTIUw+G\WoljP:$k.bhh&7**5teBAmC/'2FFD3$=>ue^&*f+Nx;'8jPăU"K2<_hZQ*#8O#Wh,rdk&ew^\#VK'JG;&Hp8fbw(ioqCkSC]I%BS'2vrGH1VFuRu?ăU"STzD*kz>mj#v3_3L\[xfQIY-o0%dGK:=7M#;_+hV,[T4yG^tTaA$gp<UMK-^K.zăU"'[)2$jIbC9zV#TROA_,z6G$_u57'QvdF=RIJGA:pehKgLlIP:t7C(3X9_j?sT\YăU"087rm#q$?oVw26/0gk88ql%KT8YN^YPFOeHjiIeXM+/vbhRIPWK4,5Btlet-SKWăU"KFqqh4R[#\nEaV6r)t<IWmmjDF0V.5a6>-)B3O3NTr[:gg*EH,y-2W+uE7pQYkgăU"&l6\$1#MnF$<U(ei[_,,GmS2\YuS_:^d&3sj;UBb#qrkw<1Di=1qU]S*,596N;1ăU"O%'?>>c[FB.uy]k)HbBJ3uL#4U')9?mGMl_Us^]Z%Ln$-N;P;_CJO3+I3*qccVcăU"FuTBUfU-&1TF8x)Qj'LoMo:g=9H\tI>:(_(KOW>?QU48w7e&OU0l+Lr-m2D#'i(ăU"/$=-(VKquVlC0SbsQM='Q-G5G_u%05bV8_;5dEQ=7\vQTg+u'e[sCrQE+rVUw0JăU"PNjqn\iQ(JQ,inI_*<5&q_$qm9Goc3$28r90bD_UNF:/8k2nt23oG:hAV1Xoc1zăU"C4uD-q6FWEx[(FhU68(DO(e0EnWG7jI&G;c;HEmvxOb^*bU\D2#I=p4ob/[)=[oăU"&PcU&Uu-:R%LAc]3NeCl%ZM&.)_e)'&^$I]NNmQr-?%p'7wUD0IM?TK,'C9'IZ8ăU"%;m.L>B%I>*]jMRl=6[?sxa)K=$&4u]'2ymsVT]uFLA'%wkSSEjC-Q>'6b*C8d+ăU"3R*]CsXATo9/'KsV,H'.]W35^;lCW-d$yL9$u9Y%:'iL.rNaMN;SECn#Kem]SiYăU"?7PIZk8GcEPg%2bi%=<gN7<nrybnaKe7'B$g1-02N.jv7)((8FSpMw#;(VYAK&/ăU"\kmJ#D^0C[)/Z#O._7'C<znU=B[P5g]r&[0RoZ4-bSv#ys*7O?-GQSMJE)geQ_KăU"RF4ZE]9vZYEliBS0ALrC[<'&SnfktEm[YE>E<;<[1FP;)M4lE&q)Yq^n%5$r0W=ăU"Ye(SJKA5pM%LLApJqec>E4)qx=7=URfbRq[Y:tQ.h5jdZu&UsBGn/5gI54ybPMAăU"8,e*(Kagh*FORrR2)>EC-QHh4Ye:(7$,RfOf&Vl/kTfggb,/$;O>98<&PFVe5i:ăU"U#3]X$+A%>B66EgI%#%,6lBmqW,5=YMP[LpI<1*j2<?80.c+nN\hw)R.,6rnvX[ăU"S&3sQNhZimwxX[$r+nB)nvA\#3[1W&L7(:yx:2s.x1e',>Bmpkl9>P9;_dG]KojăU"6V]\Lot>+S-LJHBH#^Kw#j24S+I)&)lKwHUP*d8[nVK5+*F/FwBc9r&k$&XYsabăU"h/K/pXGWOZNGJ;VHmj5So_k/5.j((\sG1;g5mFbJ?YdqVaFA398$mc.':<fpIAEăU"FC_*1'xCIO%NQgL?k5W2Es,s^3W7Ik9_qcAo)\1\%^[B^U%p4ecoTv2/RZ-YU#6ăU"Wj6c_KC(a<7od7[JIc>;U[%N^[/tAesgVd[q':;,:nW3sVKVSz_?flle$4(-#eIăU"'OJR..bM=dZeWa0BiM=4-Tn+NNPhhEZlH&3yCY6RQ/GR:%%%PSDsQj)Q0$gGXgXăU"$N<JrA;O-R/lEbqpkG)DcCqX*sEYe=)g;ag)Ql3K;g]ASRl,>4]<6=c4ea7G';&ăU"[P4HnwO%%?NKgB]J9_=Ow+byX*/UX;(aA?hkkJ[Kq[-DNrpEvA)S.21dwJb]/TaăU"m2\YL,_%]Qfjt/*0XIg&X-(e?V-QLIkF<Q)[TY8V?7XrhwQ7,:evu>a))E10UPZăU"E6OGAbkKK\-BjiIcKi%oZ>_s=%&S>)K^Ru6Au[:^%N;RGj25A8=%[WCZ[;J&=pqăU"Htq:-S.-#yis1n_8nq:wM(#j\*;K/je0X3^$bf+3;_>7SJ=6<1ZoMB*5(pp;)AiăU"#6=ZA[yI5p]1&\ZUp9xKi5Z4\KWMY'%MW5vI>\1r3rs&j0*SU/(N07+[FooqJKUăU"55DgwT[IH3[a%H&CkA<1<bRy1,bD:f+R-3.pHaGrvE4sJ9e\pu%ORS08W/o3i.]ăU"t:4_o==8c%<5\e5BZOD*#+]8(y33*oV1(C17UQC7K=iV#=-Xq^GZM[#K=z$#MAeăU"'S.eoqm5q*:;of9EnS2AS&\)E1%Du*A.ju%.)G(Ai,'(t6J?\]BnPEHY=5ErI38ăU"ORC)QbhQJTF=-*oX'3HY-ETn(':Vi5%*i7%]\:#hQ.b4-h&=WGrVg;a&Z.5_;GNăU"]=U]cg;Kq=%8%j-9WUFEm)Iqu355G=&$4V94i<-VHAi]Q_AqE,XIAY-7Fi*M]Z;ăU"iB*D$5jMY+W1uU-Td8d>W(E\)y0(=Wfih-tGEArjjX<N9ZGC#s]Smg):#H(njYTăU"%g*=HF]')AN=fZ'5qX?h_'T_.V'6*6(=7%&b=2E>)\S;.=/ta%7PxaiE/-?-H+CăU"4UnX5^c[YZL-HiMnOU5&sU>c?L)[n;5ZS<*aT9uq)'Ml.U-fjWc5]n_I[J-GBG0ăU"-l1#IRob%QP/9(r7KL%w'o8V-)['_kqMWRPuU)..k+X:N%TQ(rb9FT+'<2Pi9GHăU")UoNwiYHil1usf6'-MrX3%fv=8A2iQB0+YbPuhiki/HY_(YbF>bi[Z98a9FX3SOăU"s>Ai:]iApm2?Mk%k0AgZe:g6]4.8i?IqMYp8eS6>F3q'eN9_)C2Is?IOI^7[[IuăU"WS<kA[[h9gej)d:kjPUQ2o-*M<<Q4'g3c&OQFLqK%&e)X(uxiO1t&RrKu-pWSy-ăU"U0h'%$g;e5PGqE?oKh'Y*/ZW:v;ir-MQBV\M)9L'Y\BRk(2(:?RJyz)Z-W.cVr.ăU")mV+geL0T%j.Uf1t%uq*CfMcQ8goe=qznfb':iq=>xHV)RUvuV,Ex>XWndC*ngUăU"9w9uZfsNoxjkh)E'x%up%()9%%%%-%:,yJMH:cw*%y=%%&[A%%%-%%%M6>=6LSFăU"0E1ZHLug#6i$<lE05jkcMXe=.kR1=x*'D+b=7ML/EF71-]I(\*V-Vgl6yj#T/$WăU"o^4)C#Nqu6gc=qCwJz&W.dQj6&v>TnRXpPD-196KdcE1t_fRV/h)p+AknA_rMa\ăU"=7VwpP-9\]mHVP]Fp2wJtuj5HttKuWXoLbj<p<.uD.(%N[cu\<w]uTSC.v%/%GPăU"qaOZ0FrQ1]_0,W2lxm>ERGL\3E&M]2TFN?w(a>6tHvtk.]kh$xK=YkdbZL/qH$năU"nOXQGk=]NtuJxwt-ecv7M^3bXR$*Xf:hRB)AJI,jP#_Z33mEaxnb$cv%&W>DQk?ăU"r3txMT=h]OhuOE'M$G33LFOG0Vr0?>n\]7bY2,y7xo'/TL85H/4Ms>A'm_k-#R#ăU"MB238hhB:$rfIsaudu,<wwR>k(Pq42T?ZCQ$,+s9coUN\x0av3/g[=8,vEq)GZlăU"(rD70Y4#';t:/*<pm(wY6FwYb%-VQ_RpXbfD679J9D>?H-IRS;ng/3(n<f1\+8băU"IILBdT)fcRZk**ju;4]al:a6e6pjTd_7pPDm5j;-D:p;/vt87fk'SeqLUh,Wg4?ăU"0e*i^gLg30s'CCv-1FjeG?r[)\T^#d?.)e_pR7kPC[_#4]nh=<9eNX&-85%bD8lăU"vfR$'bwDw_.M?GsA'[Qj_A>0RWtnwDOF,CH:.7u]?<AL4Wy?P-^4SxD42RF;Y*uăU",*EYWdA:O\&foSZ-vVKI+:iqR;$V:'0N'$Nmu0j'>K*raO3j.Fj]V[gJzpx+]sGăU"M]6#EuMQqo2'F1<fMl#+3bM.&=6o>p[(f/gBee<>]ilZ*+&ztFemC[6EIg(mkrkăU"5A7%O*4\*:Q4T,gi[:LPo*TL<rpML>?E2?<?eY'eI%J^xsR1D/h0c,d0S7B:l/]ăU"9bX]XU0/t7=WEB#pu,M9Pj?jiGckLl>?fwPF#Ew[^=l.lJ?=1Xk5<)(bY6UbSCKăU"qlC.;0NtfPE[%pHwQ-M)?4.qwnH%#+/XAN;joA5<)p9IJd$5aFl3LVL?r'3yZF]ăU"MVGrP4,2)O)mjkt-PvJ_?NyI<=e[;<5vL#Rj[SDXY[e/>0JON_Rou4mUBcps./năU"ga+&Z60B_h8DF\):Db/C[U-wp\u5VA)0$>n4S6NF%*$zDS7$+gt2Xq)THKeawl?ăU"c?6AEFJFpi?G5M$Da]drOp7Y'mMSTET_fC/_7.8W8;+hB*Xehk,(OG3so+I6:'7ăU"fYj\*$g1uS*[#n9RDy%q,xr%t:qXKipyY.%L<EHl#nn80^%e9Z7fJ8y3VwDA(1VăU"hGn'p4/IJ=T^QfGGn8>i_\bfO2D\uZ-n?r3;8sFBt)__.[b1m..m\cyG:26d+JbăU"*Mhv<j'QLX.rH\LgM2x&/qCrH3wCo^Bmruqrxlm;6s);F0]_I?$2A8f4Kj7.i3lăU"H#^e[b$kgYR2'3a[SJs1Q,c3>2qu*B;WOW&F^f]zgV)MY(o.*u6,TK)Vl/iJS:iăU"?::j6mx9nqp%I&g\H2h,2u*'gH#Mck2LU*TooUoLL^0#T)TRKqRSQVZ+1qPF[1văU"bcNl5R+lk,Z*3_fW,[kSDUJdq3%);zj3IrVb>L)//2R\sSH<u/PF[t)=gI/hZ3TăU"p_SqyI1_Q)Rqe&g+Zb$30LfW/vk.9b;A%zOUfsUn]R>#Px)<)ojV/\FYTcLlH52ăU"bNZ-54P-j^+dBmoZ<v[$'m&bgM9c4Mo=2??t6d5Q;Mvo&&GD>\[QUkVK<3Lnl.BăU"<$C,xe?Fcph=wEtF9f76m7&Bxk]4bsmX5O2mL\8ag6)j_122<3ka[f24Lz87lJsăU"'5p0xaxHt;%Y3TwxBz(HPKxRzSosrc4mGjM/+k&AfGrM#A(RGoW6R?wOcWQAor_ăU"c0JF5e&c[=(60&h-Z(^ia=nHD>vY#FKWeFj%F)58Hk^i%B8E?1NY\j;:TEV*sUZăU"W2qOuWFDp#MTgPB4Ji1B-]k(hafR'H'Gtwu&R&vgNvlBNQP-1jEk\GCjrKNnDp;ăU"7v(_+fANCI8.B<,aPk]l#B%d3:/P/^RatIEUAZR^5B6fV1UHdOzvt_-#%N2jScPăU"jQgpCejm$oc,&7[vYSbaHV&6^4&5gyw%4P52WcMAC%.0P8r+Wq4Mo%l_>1*vV8<ăU"g19=;r?#-nfxiges&$gT:b<Xg*1^n0E\o\RzZadv^__2+%uOfo2n-mq9iiPQhQIă'>>> Page 9 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 10 of QEDTUK.ZIP begins here.ăU"//v6>k$J,X:%/iqPE8$pAp66&<v$?#AIlDR^<AM;,JuBcKmUnXF2T_R4]d\Y4\;ăU")g$<5bR/jdY)kBN9q8vanjs#R%r8Iqn%U0u.8?vQH<nDLG^X2pAtSUr*>+)HX.&ăU"MCEYPhA6speeC;;Tx9a=z9*ImbrWM.EG])H,ay2'';kBQ:X)[5yVYH:s9Bg:L/*ăU"\S\+(4]Si>pE'2DN'<\WiGR8OU;uIFIONKVB\zV:XaHRR^sX&8<Q+fKE1g;?T=5ăU"L);E2#w_UEn/Z1rv)R(,[R.O<t6+[&)3oCQ7'kt%#-A)h\'4nVl]5ZGi4[(9N:aăU"/ekW0#VqDnh,3K&UG-Mp_m6t#Ux3,](ijov=zrFg&xhn&:-cxz#zcTQn_<;*-4iăU"H*>&+dU(S2YQX#?xOV]#ARZ>,4e2J)<=aau_=cH2I(Pp(Mh&3Py/fG#-Onl-]*1ăU"g_9b.cZCRChX7DoU][FX'TcUYy?o%VC]df'5^bIrS/V4P?e)][xGI)MWU*YA5aQăU"FW8zt5&;,-IWQk#05hc[]uB8D0hTW(ECVMtTh:2Q'#'e5QdD'fYX0eAwevw#>79ăU"LjI<qEBcgAQK*qCg^FkJ(Q,J>?\GpQ.[%3JoLVNn)d$YSc5rs+W)0r[/_CfL.6,ăU"cJjFWVU#kmI.8$m)TYTG>&.lHl6G$$M1W5V82hh;B/SMGi2]3kF[X<b%?pa<X0GăU"(Csmu;[)9.9zmEGh_a</tDICx&KQK'M?1/yUlXw]F)mQv(kHUJcMfRwTcW,tOB*ăU"&U.WJabK7=+HdM(9&OY;AEPp29$#c;fXowSeAeQ2\\oi(9pCd&IEp$qU2:HA+3<ăU";DEwr9&#3J_)FSa2pJG?=5,iF*,#S4f^#shx:2BCuWH\uf43EYXs7s3:$tq=T?kăU"2:L[K$>;hZHYAkVo3kEpE*r.]Nu:t(q&22iKpK6aGQ0\&uq&H$(UM2S&bn'qQLUăU"CHwgdgNazqIhX3(B(VgTroF)44+^)Vf(plOi(SJBBiL2YGqo#QmPIPl-Dj3MIWTăU"wR*PeEAQ/LIGb;m+X]^IlWDU?bF]NFZ?F'-OPL26xePK:d[PI&)c$-;9t^hRDljăU"E>7whZZq0o)-JZpk0Tn9(BK*o8D4jGo_D6<l8Q')<$>^1<w9qXa[&>pJVW%6MupăU")OS),Ct(4V$*#Z^9Rj[qM=+ok/IL7pWusB3Btkc9N=aq5pu-l)A,>5Hnn/e=pDHăU"E;T&tC0p_9B*;WL70pJxsyoRDXoAF*rj+_V0U_Qnw]-VpoR/D+2SSUkl'?(A;_'ăU">>Edw7ao*:YIG<rTbmH1._HzZLNCmG7B/c84.8)GRD:R&#k9Pj\BmP[Jah6[F^UăU")2Rso[V(z>Y>5zJy+pt;rXZCVdh4^]2iu#uaXF&-g*4[<--8h2Fg*#J$tGvS\z3ăU"s)C=5)TSD-ahh]:VgPa1g#n?[$RZ_R1GJOKa3L*=VQOsF+(w'Dktq'V<.GO6sk_ăU"P6eg-\'-mPgsg#9j#JtMkCeZjVt,cEr-ZW(#kcj06_CiyWCYEkU\P<*sD/f3V7năU"Hvc0<El$=QlPO)*kiY1K$wQ+=vBEi]CO?+:'t/$'*YC$[\u+BpD\7;bn:2PhY:BăU"N=to\I_v4P\<oNt0E1Ymj;)Vf,DfsdC0Dx6cnRwmLU:<gdMJJ:dt'>4H?oou;eTăU"ijF6CwV-nj_X*UT2(=X)DAnl96dX;<A\XR0;6GN*:j4>,8.cP8&OptQD;#3?/;TăU"85nKM;ipc[/irfq5=+<N<\Y4lChgt'25y[(V$nHVk/7(JvSnqoM*U19*-\H,WH>ăU"SL6K<MP'S;c4$Ri4XGS.4]sH\ahU/e)>Ai5M1=8jU\S6t/%y1=^Bh,XoFRG*:f<ăU"V)Q?)]#B&w8*T+<Y[?k%T69H)qNEtgMl4;\jkqIM;x3'_Uz8sWa8Z5<.2aOJdTIăU"[*h<\hr\(mrU-uPptBjGn9Ft9FK&wgM*HQ&R5F$<*u<hLtLwIBdtq0L9Z+%DCdoăU"[1H^l685F6]flntP6Zn.&^mlz-MrA:,V\<F3%MQ]V#bb;aUk;:[<MARo.3RsCoGăU"4kzGL0X<;XmG7&'#BZvh0Uj60/TI/NqQeh-DB,^TJ#EOR-Qtx3i+Z%_0nG<<Y*2ăU"rTcxH(2IiqVbkeGV'rP>;XF%m,X<K3z.H]c;PC\LlVk]osf*8X#V3AW:)+UwlU=ăU"b:b<4-Vc]C*0t[%,J2ad?aRVDO(DW(+_5</.TFjLL8%JS,6kSq^0;$v]v<Y&oC6ăU"'gP;*2*Aix(<lz(N$?mA_+Wnh$c-fTWhaA/IK(obpt(QU+LeU6dnwBWKH0F/q9_ăU"FIfN(1ce#/S[jhIL1O2GQ<<X$u]5?t:a1,*+y[K&RlRI-gi35*pWWcZV&;]HEY$ăU"MgiR>7+5b-&<HLb;hrD0qgnw+to->Q?>oJ$/6\6L&l1qfvI2kbGjIP42,cGC;U4ăU"y,GVWl,$UG3,Sg/bkbwS&4$?hTWr+K$.he*n6pQrR*uN)2=^nx3^aiv00wkF3BvăU"q#w0W/QcA,zs#-_#knoeOVmGP+_:C2vgh._9cg3_.K.fe2I<Ew16u$A\rumM7LaăU"_XbgGM:^s7:so'f=;4w9+WN+1WpCHD4ma2e?j7$F#2ITcBUV:5AP30zj[$NQ1g8ăU"[>F?tLJ4k\<v:rG59Al2w4,kE])l'O9WKcC60t%i>5DfGMJr&L6749m7UiS%FqeăU"eP,i^3[I/RpBWhJ1(EKL,m:6Kq5Th&$8h#m:eqOGpII8KO.jSU8DYFOX^A*Be=SăU"mNQMM>]x1U#YI4CBU>-V$nKIk89e_VS#XT4+8Nd)RhkDX:GPc7JF:9zyhl8vYmwăU"H#wO5TIu&LL6l%lau_n*8:2b6');a6?tWd.yG/VKGf('(<EZ/G[qc-Dh8=?i&ueăU"gK?ThPaHw)_Pv>u6:w%#_;M,nehuR2d*2vGdV[P9RzTu][(hXrAMu]EPyVgD7-PăU",pC=7&<9?t?;d'e&XaLcpa/%:gu?QtX*oMQaE\?g[rE<uu.Fba8yC0hmbQ&)=UMăU"Nqfq-%:D0hlx:0dsPX3eM:R^'sh,zj&gzLu:$atr+^C01lQj4D?(30XcmucCK33ăU"AiM:0QI_uBFpUGRQN[UTC$fae('ImOg8F.*d14W,U5cNlgeIrM]Pq24m_\l)W%ZăU"Ka&HJ&/)DI<:>$VkqE_'U5_KS&,>=rhKTJc6HDh((j>Ahu<<O\$3X_t9Wu/owvvăU"fnLqVeB.j-#XsaC8eu#ghb^oCfTLrAjgahs%\i1p>RsNEG+.Emcav-T2yCA$o[#ăU"5Zecl<9c'Q$VqDJ$K%1-2&^o]OBM<M2$RI3(/(]?I\_&B^q]p=CfY^AD-E?k*cFăU"?\P-D_a$.OF;N^E0s3Qg3[-fm3)o4.6=I327Q$T8O\\JBc*B7G5JFJ]$lc>=gFdăU"]XsWhj]^Nh\VsxUM2w0MH14\D$L,sAZOHLXd)5;F]GXI=8p^OIY.qT-KkT?vIo?ăU"O4Qa+n[-U*I$Ai40gu1B'AND6jxy3DZDQc2O3C_sT\q)SkON/<;,GeLv80[*o+răU"j%GT)ed:^.[vokZ+hd(mLK9RhSb>(,CpmIj?m_9nB*[Rau^%'F71ouHFkq;>hlDăU"LHg.:/g#c(PtDdL7bW]S^jY?1eWo2i$67qMKOfYlErO<Y?G%cxLoPy5D-i=B83măU"rylpKs>apf[pOf[_7UHiG[zrT[zNTgp?ek3liko''ct-EF;+USNSPTOwis7$GK.ăU"QZI&iXq<b4ptX*5\JE$w'%'F8yEwc.528FNU:mX4*L[Ijk^gjDd?2n5k=Sr6[MNăU"nA4E_.u>&P\j\Ju-noBi0J#5-IF,Feq,z8df)n-4HFBW?wpyD#nII;V=TLTd(o?ăU"0LbLsgHqzUnL6\?gc$YY6cSJwF/h]N9FGp:0:26PSeZNS?7[DJq$\wK.+WNzMF?ăU"]WTf3DL9&Q;Jj_d\a/21m+Sp%_.%Ms..<i\pEJ\*T>Gh2fJNtn:*Civ)5DQry;HăU"g2/4YAmPoR6)aD.Yon:-adiRQnJJI70Cq'c2X,3nB8I9H2gEsV<Er4PT42]Y]7>ăU"oG/Hct-1v6'HxStW.b;seXA?Kkr?V3C?aWw:lEpK+a+tPV(l3gDTPy^H/'a54?uăU"*e\]?RegKfeXW](:)\mP\MM^GA0iI,/_58;XgW=k&XbCWmZgTDQ2LY5>WJ]/1X$ăU"KE1s#2y+-$b'O+aKdS[DPG/vjKwRPb&z&#B/6df.Q0WR,3^uaBYPdp5_0Z%e>2:ăU"ByW]mJZ$WPl^f.t%4=Y.sfeH/4)-,cF+ag#gP-D?>,T^5w^M1#_]6<jPl<ARrlbăU":6%(FF+L0N_km-XbMFdm0<C?,X3owS76wLLTu?Q.>1KN6ma]Btw4V7[1r%]6^=năU")t8&u54'i%eLI>pP6#QS(#bl+wR#j'j5mIObZ<,>eRC[<XT#,mh'?.p/=[2AxouăU"lF0Az$iObnw8aju3Vwqe1-sTe;:66s%-oB'#T>8NO9._ot[UQTLsJF,ElzB]1rDăEND SUBăSUB V5ăU"k2m[M2z.919mAs'i9,%gAgUDHk9L6qIDM?5/5:w(KJAA1\S_dQmbxOZF47TfMktăU"^\X3cXbZBaarBpV[.5evFc2DU,LH5]mw(ZNuGFr_1EWK6YZ%z'dD'5?E)_n2)s1ăU"bC>^i*AX+]VtA0U$XICX8PE<SCGEsJluE]a>1yh$/]pU:L4^5t<bW7[J$kNPj>*ăU"WivYgx8U-AyaBXdpQmrNbhX>ZQ8,XU:^7oNxNS<auTi&:=X85VCbUY8XcR,L[W/ăU"wu)DF^g]FlAQ<i8>A=Atb7Ekd+R1T0Q1,nOpKjbPi:_bL[2Zu:(ETCKF,i(o^?iăU"E8,q$B\=uBFT\UmId31'=PX2RsxplIm=m-j7(bx/-.<s>blqga5u8CAYJuJu<-9ăU"1*A#Y58s&s%+OOx6OBV&3PrTgJjQfK%#:A]Jbclw<sj-OYh'MqLG;i[JCKs&K).ăU"(,?<+lhHais'Fi5q>X5Mos(G%1SX)PJw6Ph4iTX.^+m[>g8'6,GE-=]6xbW'&_3ăU"bag6/;#Xb9m:.K+oYM(Hg7-o];6r2rrZpOcMY:E05KuLKwjl;JHba7fa^T:mCu9ăU"nk&17#*H<>FIRm<3[,g2t?]O,CX<aJ\]p.Z>rp6m3Hm\TXq]lPs=HZ6hDrlm=Y5ăU"nVjggq-I65Qsv=4imMOWI_EbxdRBbP&\C*C,>XV5)hdB41xGzi>4slBNj]Hzlu%ă'>>> Page 10 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 11 of QEDTUK.ZIP begins here.ăU"A;:fkPfnf&83Q[=9HBf>6/3CUeCmV:MV([Ni=muTb\qu2QPY3c+Ms'Hf^:diT%4ăU"m983l9\Th9'\(]arB9i.Y28T-daI],;q'eR#4b[l_bO6^GETITVO2krVJL]RcjYăU"gV6>+*nR;W2<8q3eilO6h&,y'A\qqttlPg354CWzeHcb_]sDt:bGA;;uU]e-O;răU"P\eAgP_AZYaWg^^OPI[Lul/aP+\h#hlEU40]x)_F3tVa^FVx1jV>^jp,JFZ,W6SăU"hBv'A_Gn'm3WwL1\AI[b7sx?fsOQt.Gn7SBbz$Am;QDQ$p50cbY?klxVq6Hx'iXăU"+eRp(0eg^UpR<bI%Kr90,be[XkT9TOI06ABeP'GM:ZW:F)IX&:^e)vqSgFgtsc2ăU"bmIXmMUrxVdC'BnJ/AGnc0tq.b(u7dt$(#R%aE8bJ6sDmxn,i-x3s$1P:]/&Bt:ăU"s%$DtL.ZdD%<1,GqY6sWm^WJ2mQ5txiOt(5VZ11p]mcKjM?xB1hA7]:)?kik4ULăU"Nm[uLl<JO<#MgSk]3vk/]^wra?0S'PBb1?xZx'%up()%9%%%#-%M9'HM1j2Mg,3ăU".%%?5%%%/%I%%2DM2:>>LSF0E1B&,ug#&ivD=F0;ua7p/#)K:R-MV7K0*(9nPgBăU"n$t_9RMK=kO6Ep47RVliSf<=Ol_#>Wt*f4#VVDLm1x]EaJ/W^3/9Mz1R?FW.z#7ăU"e2/8e6%x:>E[Qgo3Reqmlwpon;zPftJtwnuvGbLf$#LnQiZNua%xYiS^h8H'dBJăU"/#%AE_I4%WJ'U+7ekPtwJQ&vNfN\e_Tm)UpwO2KlN[ft^8Sh]r]-Y/4)O%WkGG6ăU"[&#GVglnC-n-xdMF6P/ep[deg1yG2b\B1NQmguJa#Ha%LAYI2$aJyEW55A8&zUzăU"bEF^nVZ4Yv#h/<EdSR,E)r7M?XpMH-T*rY1CN<U?Y8&55=N7QYiY+#<h#?2)p4găU"\79ML^7\RV=l[21yPO\_ZuC[sj45)FnR9^657;8P'KC;-5IDYKaJAieENoPis+$ăU"(FoZ7[Wtr/930tRw7[f)G#&fq_%5aY3#2aHo=qP^K#6Hi=It\R7T&mQ=U'QNErIăU"#4f?<oSh#M:Z?9+TS\9G]P?FwV;NxW_6uJc(pJrQl/M#4fJYiRKWAZ2oR'qar=MăU"fGJNr$qoS;sRKDQTTAKKAT%X:lZdQ0H?Yu<bD6GJFmEgmysP76jZagIzKtQ[-79ăU"=z7x1HhHk;#ttK(H$\0=*qwZzTHK*R>Y&SBUS;3RJD[If#4Tycl+;Uu5Qk\l9XeăU"C_;yA\3LD'l-Z\9_m_32[([CyTkojAp=a==;)?]g&iA--5p7NpDc,NgUE<pC4q*ăU".'v/nVNd1C^U<wn3+GlDYHWyKZ4H1%adTu+X>bfcxnxr6$/y^su]ircGi+k?/Y#ăU"Q7.ux[B6y.65bdm&a%472_Ww^+LvHbcs^StQ7%QeZ8]v]TW=i+-1Uj&kINhoDBxăU"$wgYI7(r=eDt'f2EPWK(R4RR*]^^ou-Z;90l'U5;bt[K>yYduZ,pb[+5[]gjy[xăU"h6B/<BV]gQ)^&7#4$\Ds4QAH=6Lhhvgt<4K3Z>ge_OD2Q[qQ)hkgM4q;/SUe8cZăU"^YY;JC8hkB'k#o[:/'Q]+JZObHNY,JF-VA?hQR01BF.wIl6%_;]oZ*IBlo'\wU5ăU"i1P%E6k0PXplO]A[jv/t=I/3IXF)6u:,J_Htjg?Cci]VFMHZ*R(>QG%xOL.?lW4ăU"UpO=o,]Y7d5[WKWvMqh5$r5Vq;K,5$5q)iV)C*0xyPkqX#APoGfn;kGG'i_<B>măU"\7<<mkT4E_o8_c,xb5l=\_-::B-qndD2=jDFwK/FOEQUjM5qkg#9U+vLfNQ1:)<ăU"ZMvRWh394M+dDLm2L=;B('+)p.4Ne<+?SrCX,>^.UN4O#)HGnX.4pjRmE6hC]=2ăU"9WawGlnCad;^XZMIRBkP22kPxW4$]dJKU'&x&tx/O5Tw:^XC11U<re:0[F^3MZNăU"&d=DPVt1sk=6;c;ByEarCksmGe+B,7*A5^erxgf>,8x7FM_vZHI0SF?g^^1'>K6ăU"q.]j*/a(d4T+>>BO9p<VcFv4:mP#jBpb::]K'%dJ]Mu=q'Qpe#V6XFlWCG1*;MxăU"$$s9VNkGa#G(t<^<-\u=EX&>?4xS/DO+s+<5,]VaLvu:>G'2Vd)AkGm^jnqN*P$ăU"/>lA49T6V76&95XVF:6^V+m-L+SLd/+)I(MUA;iolr_Hrr_>28cBoK9qo#Sx,m+ăU"AZQ'o+rH_(*apd%Y4ZfFg69'fr9l9(Hrnj6Bk/>?%4&jGx>T'(t%1D#s9R2da7uăU"YxaT8w5ozW^t11R1dZn4+>#)54?&gCTRUr\Y'&E1zHi2:[H*V\=e45evY#-FcGaăU"DE:5i,fpj5n]vA=vaP7lZ4Tr1P6Fa4ygqd&Wku?LJCa+xcXT:Y6txBxMnQ<LQ9\ăU"uxs9&Bg\NByskXWmF*C00Vch$^-L*PJ2N=EMa6*wX%#o8-%CFrsG)YZQu:r08BTăU"*iJ]3rdwDX9.E0X.gL&#R_OsE0H4;f#P.,GdF#y,uggEv;v4R>Ck\zs)>kguF?(ăU"0MtsFbKsR9-*1+Xy3rXEA3itSi\1j^R,g=^*f<$/$39a<M<&H1ld:hJ6PMPKv3dăU"qUWhae_RGWUXHGpiT+=P4hQ=i;Evv<R#e&0))x#)5^Qkqz$ZN4H0/^6Gw9L<QD^ăU"nZIva%SFvrr:%G/ZN-Gw6fHlYFZ43i6'9C.7F$>m/1K;J1?gInERvTh<f_i,6.QăU"Zv535:g$b>eMh4H-^oiG):<=:1v4uh7kS/r^[kaE0qa:.J6uV]]F<J6=[6Wf<gPăU"UyI=g00oe>?ApCXU105cL&zJ<[\&yW#clQ)CZ5-Q)i'K9Q_80u,+8vOmxJt6S<GăU"xboKWlsSzpn:kcw#2p19YKnQFd]rLKRPLTMl6XRM27\>KnvA[hZ4<?'Z:'g4[0PăU"8N5juLN[r,apE90_rH)Kg5u88?*<C9MSR$d(.AW-r:p'[pi-c70*t<P$qAPIAA4ăU"taAPJp<]ktNl.tY>P\C1x0M<BpTO\WR(pwtbe)SrL%2:mbaP67w)&Qw63+-M]mSăU",CE:8dj?MC8#%ESkoA9F%tyuc]1Jp5DQ<>o?V&bcM'=\7#uvb]R;LdF4v#qcmkNăU"r*3S?.UBZ_&(_Bg+7wF=[>Uo7eFY(=,$*6iQC:2)MkaLx=mI_K=ggH*,u.v*35\ăU"Y4anSy%(z%OLe7-Oh+wn=<[#A)hA?h0fp%-T$OxMU/\/?66R2yV9TJK]7/Kt_p$ăU"eOWM]D4\Cn+QuPSO<3+Jps:KXpFP:CrAc6aypu(cp:]^8odmX/'.Wq(+&?ctO%lăU"$&)D\6J5Ii76Li3J1nI<nV>CZ6SlYCCDKptqVQHCRFAv[QtsBMQjRX>0NoTH=3lăU"fJ]IN2uaf];^43W7azj%7T60Iga.#0P(BP#5Yukp>nVSHbFS7'nlG,vG*tH&[UNăU"-&pSGG0wlN/#Awsr,YCF2QHpRauJ>vj67vQqYV/E[nK5+P9;<M>F8iX=k<RC7DyăU"LJji\?d>WJQrbFww^d9HO8g:r$p,c)Pz?D%\mI(/o-)U*\o^sIshF;aCH.kNromăU"lXh8L\]Wle52j)U,)r#JReN5bov_*kI'BdK\M/AVBUdBbIrqi8\jUqh[Uy%AdLqăU"4j[)A=a/X9#f/#<=B1<F-Pu5><?dVUUjHG#]Mt>6p?QFxihp\Gn8Hj3Z+pjZ25văU"EG+EC.M.[?Yn-gbztwW$5]<9hlm^A-N3*ER\x5Hvazzg[$TP^rhBQ(i^MWe:_xoăU"kaDSGS)r9'MkN'&&/3q])b?OE[p4(oe<Qahd1$hn&1Z0U8R^uV1mnbK;IlN7$',ăU"uGLfGe:ZP016U6Widsva$,VKzr2?5Ui6Oal'J9U9Gyroi*RL]V9ADF%wf>pk40'ăU"C0S\<D<ovae4eB3do,#Hbrw(38hL&_=q(\L-kChU7BTifsthCU'd7b*cVuk0br'ăU"xo9msk1Rxd.QVPFE0D-snnfd=QsT<$<o92LFl?$,<UIIbus?t1#dJ387C:w4KonăU"_$S2:qK8,a'CbkmwY1k1XLu%$EaNqt&aFNMFkyB]OT?&?)cLTbs(B4%)FgE+mG_ăU"k[i?<[4CgB6%VY7OOG5p;t4QYl_2/PFF3b6#j,NJM+1X_*YI+7_>G;vtx6TX0OvăU"dq8:o<u.ZHLWZBXRcTnnR;C'_80/6.[8t8>E(B:f^QPB$O&7L(?+^-</F9NUXjIăU"(kM]s#jCoAH#J)r]J1Y+bQ,G/hHK)iZ)E.aXJ'DH,qc<nT?0V.%V;aE/$CL/Rb<ăU"gmg4N/ZfDmo?CG[g#<B,%X\0m#(c&TZhqSQH/1KGlNed5rb\3V5*<Gsr_3YepTiăU"bRqn2\c+6,+ZiQ5+7m^Jpom^jB>tSS.QE;edM)/Ww]rGBAd.dM4S-oo^4%;vqqwăU"=R\r=hUs:4EmNX8>v^:#SC$MtrQDo..?jXKO[$t+E5%O?pHr)X:Y#Dmjj=t2_-4ăU",,st05<?*9uWOg*b_RNm8&sz1rABRqxPn<mP6J796y-YnNY<xb6XRiRl>'o(43FăU"orw4UA\Y;=2g0O(u)OBj9;Irb[brDMIbP(W+$Sz<djbs-[#0QJik=)-=a.4^Y(7ăU"k4j^,QI(v<ZdaO&m)7RI;\%7N&6x%7coIh/lGWUwc6A3g:%moMdAe]=&=E$]4g+ăU"H:vjx=xSbs6+AQ\d-(B+TYKX'HVL-_#$ITO7'.BvesV;k]u^;e7jgW*OmbHBKS1ăU"\q6DDVXZOS4OPjq\eu8T;1eLs)J:w8]\G.AD;&?r9:er4KG3la>\3RNk[rtK>(aăU"mk(A#C_*2#U\^_1gcrI[F1KMM,Hoee-N7t<+mmBxb?&Hn03EREFf*ud/UV:OHz+ăU"ppSAm?=^c34hw*0r3J^[(xSs]>RLV]C$jd/X?azsU$bdLC1T6.9KVO37zPp?ZHgăU"ke>wLkRO^g)<=,Ew-5'i?^\.p-e0Us>,S#/ARZGC_Atc(#p]&v[7vhh.k=2Wo(6ăU"cUc7IEm7]5]3:9nK?i]r)u+l1Kn?b'5%C;xY70r5'$WAvYyUSm>(jXjdvf*qD5KăU",pkfbHZ^bVik:=3cW4bDZhPoP<=ecNrPL<pjQ^ug2F+$w<37Ji#I[+1N,l\ElkeăU"=:Lwc8t*2?x?%aKR]%+1jVo-<+<4M=E>[$Y]F^ibRh_kC-DLn,ixUZh?:JC4a9SăU"eb&$R2N4gYiutP\hgZ.BB'1V8t7Bg2*Sb3J41CO_>L1EtDb(6:_EeN5&T-bqIGqăU"NlMaoa]OHT5?IP&d$h-%x%,up(%)9%%[%-%vGwJM<;RFt%[.%%U%0%%0#%%%2M7ă'>>> Page 11 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 12 of QEDTUK.ZIP begins here.ăU"82:D4=SFV0EF%q,;T?XBxX$2el'IM^slsATRvq2ks8AmvDG#Cw*9tm9mP?3+,;4ăU"5<v$33>-i]Oh*fp>RpM2+md%(Ko[&(VnU/XYkf&xURvTO,0.R^EReY#[qn3c-/*ăU"qvt8I1/Q1,lorDO7hsMWv8uhqPVrvN6#VnLo)jH9^\md_oSEd>M04%9OenK?96/ăU"RWW*O*gpI1o<yABSh;C?)aqNNKk.r5,G:h?(7:w#cqbMsWm?I15\'l%EjD%U'*7ăU"^a8XHWaI7luuxgorKiL,uACFWp>M?,giV0Gd]:DC-t]=PM[W-u3G-;Hx$llK]8MăU"[Vb(W7&;b;WGWlntln*dMx&&zJ48'nlvHi:a_x%gO#'KUi?aYUw1e[#7ZEs(<rBăU"6Z,KzoOPf/TWxT&A(o0<YMfO)k%RR=aq&emU^ioEFPlY*$LZCAb8$,j1W3s]LYeăU"$s-3&1Kh[jTAKT'rR3v$+?NAfh5;7(B3AYUhY(b,xXaN4zEN=+41BNbH[?#u2zIăU"yL'uSdGd5qb%W?+_w:m[#PUxey#*g&IS[s:Y6O<elLV8^;og0'CxU*38Rw6A\k7ăU"XuF'\Bhh+wbET**n_.LIT?ebT#[uxDWPe]?1$LKxvcAJUWXT$uM9n$bH?(=<FBjăU"BpnW)>\>;$qBijWs'T$+^ag:5tZ7>j+=hHtAkc:2Qk6d?rYo]njGJP]]U9erjbJăU"oFUBF1mX3l*=W+GSLvxxh$/e9Q*,'9VC#av3XkJu\KDQ%Pwn7GN=Z:OX-]>c<R>ăU"K87W#hrMbYo'clTq0>7r]eXE2VhRiKY-MHVm=Ri'B:g&;K:3^2%Km7u]dM]xdTLăU"b)'GmlMf0r%&.I^=+>)bk)Oh*6E\*RA0VG6k9.b\7j0NpRX2Lbw_h])X9^zKYJ*ăU":FMNwegE1LBH/-a7AnPDYIJ3*v?hl$&o$-\mS,ki[X2C6f[X)Tq5;HZDkYI-nG9ăU"xc1O+jQ=40<b)b#%jcJ&6GZ1f+KX5rQ4B-j6<i)74*w38\m._&h^TZ31(nHrP4uăU">QAM5:1.=:l'RQ/:#'iS.'UV0R)qVQBZY'-(;/42+->EU*(nxQ\-,UWJt/%Of/+ăU"I9*'=MW4/MIQ(m[V;Hh[j5q*T9U:%o:YepFGM'j2)*n*V^whB'?;%aoS&:6YV*5ăU"xxq'pP$+h3Ifo]rNgROI^O(5&oK?\4O=(1S)rv8']ZzsSqS1UEmKxJ937Ej:)K_ăU"0LO/1E'#S0.dj2E/N]_F+=,/vAD_+/pa<GF::/*c47X-_g57#E0l5'ba1Rx*A0%ăU"HC*Mu)XBbrK/OlMQ(EA0AWeokoGhsp1X>*dMV&<8VooAyN[bFv+_rRTts53<Gw[ăU"*&M?l(N0;Tr0(6g+?WSfPC&%<A_eRNaJX/Tah^ZrP51c)(TzD41GL0jiDSgLF0răU"8fE3E-4*4t?qQkLD:pWC%H(,=*ODR=liKhfx4mxpdqW=<dHY*bY5-)tc=Zl^9seăU")?k.kcj=Or,KHF;GbUIc4%gX8yHV32r0FsNH7_)ez)v3a>^x4ivy-h,l=A8ja=6ăU"=eD:IU-RQo%hU%P1d=yI[Q$kh5Zf+fh3LjdvJ9,$e+6;X55<)Q;#(b47\9ImVl=ăU"5t\rw(eQKSF=%D)=k<oTR[)Y/U-c\;-4KbJI1NT<1FlDAaS92PTmZgx+WUU#-GFăU"t^#cAY;*6sLAQZWo#I:6,Zb2<2.n^qHa%[n)%u9<qhnd5a9THUajtVbi^ujgHsJăU"u<;%mnXDR:P)b%(HX,i*PI%oSHt.nqISCy81R5jidz0_q2sQBrEa?4r'PTCfh63ăU"A2Z.AM9$'Wc8EX&4zch)&i0,Q3#_vR7_At_,6ve?dX]K2itpz'sNwx2;[=3+RRWăU"NeAQ]W/oWh296h8pGFj0gP2Bh>4**uWevLP]*n5ShR8Jo-ev>afbPB2X$V\;[,(ăU"MXrrp8UNAiKa%7_cTUE9vWC>6c'Znov>Lb83BnQ3?Y&K9oKC:HDexX*[Yg[VK/5ăU"hP.ila/oelarB&/Bko[5Dd1,vU>VX<gDlq#Jv$I(K[f5]]H68b/PV9K$P<(;3,oăU"\E:&c97]_.kvEb'&cr_8R]'TOT:T6ucYJ^O/uJy2gFqtgpo8-.giQHFDQ&LG_O&ăU"hEV2[z&=q6^ro*a/t4x)Y&SB#S.uT*MWw5O9oUk8rE\^ETRO,3?w%%P$vUxm*>dăU"MAt(%,*c'MTZqheqoLH(7Q^kOx.6)*1%hLKz'7Lr>QX[-Iqlc5FmXcLL/336[,3ăU">xx7,eI;d,Ws[oqOBd6Qj1u%wH,5'(zgpuQmW\UZL=Z7]B]+$]CRkP)lSAKnnntăU"U)N^0GAVzGWr)FfJNf-;N95?$opVMdd%;K'FT*nYa),2-Ksy+N;SvIVTZItA7+5ăU"h(6^QfuUuY5%E(K*e\5&?k/,%*IVT?9iBOksR:JoCcu)A.v]R[\\hecyp6=XG6oăU"9_lnql.UZ/cgZTANyW8NFofIm2\h.*p25'[3S,/cX$J_5rIGP1[.?.C7V9p\=g#ăU"$Jct]/DZZqD</44=fqOagK-B,muMwe:E\,jVs<x2VGnn7zUvxW\(X3EUs>=^M?făU"7^%$oTG?BTh3-gz&_/6looE+7>d^\+EG,]C/jJXLr<U>$QviQ.lya_9Q\h.0mkrăU"^^qMC8a?9f0q%M0WMonmOT-V25tg[;Z1Vwf/_Fzk+Gw[7Z>8L&rDUuce5f^msA5ăU"d2,s=XA*\^ueaE8Wg?ld$9&X^_<kYe=-E>?e\3my9t3-HnrW$&0OE;5>]gk\]dIăU"-NpZ/qI=f1*yp:+b+*>)qXRvcm8%=JF=2Z0RWGq9wdiF'**7CR74Fr\^%p=Vog9ăU"W)yU6u:2)*7^5RGXnT/&*X$2$t+d2tVQ$pD^PGN;JEqb&03rq9]KP0a5?&r(CHYăU"XHI**0(E&;Z_/_jR*X$LmdW-p[S_RCdj;Hpji>oKrbI\$H,T?.<m,'iDup%()9%ăU"%%%-%<FzJM0kzx8'&)%%'a*%%%-%%%MF8?4LSF0ES<yB]%Pz7R[;mQb:d/HLK)găU"w$h)[IiR=z5AEF4$<k6WkgUa6WjBbq$<2f,B.PGiG9SPeFaU2NKnTKn(X.ump]0ăU"*]p8m6twnZg4xLqD>hlo0dt$n858jusWWWsP6x\uF6x#pPJ(fmB4[:^DLt;[/o^ăU"#WU9k&COTIk(N]*:2TQXuFr:-5cIaCY/SNepA41<[&2w=FO^;L$%PF6Pa]<gTRgăU"7KRu'E*GA$OE%2)59sLW0S71jYaCE&Ak_0[[vw%#QapM_$A0[f3ubdOsa7CKBn4ăU"\<NNj8g:/QjMAx0)Q5yy#+6SsS%M\T.koz1:/7S/[JMz'NexqamE_$K1<;wAsq6ăU"D*i#pDGe/-S.#Rr5T/T;Qx0dWz74M65/Rt>PBdj%6N7ZnL=>.k1))x.O0.FKZ7[ăU"F8G?\t:i\0C6ihE6SuUGwdUih0(+jg.y1bH\-SG2X?qAGr7q343qEckj?KWU[0XăU"r))frZ]$Jr*8dO,+5a;5ouEAS#MHYC,KBGmP/EnXreC:vrA.8mbGt?e.bOU#=s>ăU"9G-_*?am?DSJe8fbJg.#mDq&gVsLtpoANd6NpR*jZ8$8.[RU+y.6JPb6_0U.+\3ăU"1Y0]YEdS[/\%<NINWx;CW[=_a(GpuwaZElLS+N_#mT9,+A+XEG2--%<hr+dK9_hăU"6+]1PJDQ9K%Z;bbKN)nUIO7SVTZD(gKz-O,6/pEf'&21i9v>)L^vBeF6wJ%1SGoăU"^x_Fgg\QsMmV?QZSge3/&,unJ9_C&Z+%oRtDF(Gf77gX7pyLqQ^Y0RH\JmDl6w-ăU"?.zy)<)d:?'Dq==Qc,l>6QS.rvKftz9Zubu&kFm;aiOKg(\%=lJB.kzl#7bu^fGăU"cNx06^vdG6*n#>b;#_gkr?*L'g($u2)XCrJI:<+e1,'H,REbrp&N,Q('M)BG4dMăU"]u4dqkIMCa=yVOM;iYT/LobuEawUy2SK/Oi2,]WLKLwFFErG_4$0jEGi+9XinU8ăU"I_7Wn=h/B7S[G&ISET<xvGr.hF3m[_1i]T%wo5wHBxb+4nc\2uN*S#l\G-6.vCmăU"Z2S$kFHFRi:8aV#T)r^e8z=c)#NP^UBhf,(:-AP_MBjl?j:_3f4jo.gbP#.ZT:(ăU"^]Zrv:Z-)2$$3*W<crRI4n-<_BsX8&VrJwS3h;;=3,IF']1-M'r5%:$r0ZpE+utăU"f-qNGszARq3Zl[,BCb=5uR1tULbgYi/q[D.Ua+;upW)X))X-F+$+g?oDa+,yn\8ăU"Ut=g#Ui0N5R_]'=tvbbSE\\>CkS67#1x'_O)Ji]ar#VwK2Ff]VnyWjjL\ZVWC1%ăU"BHOQ8G_3Y*Ds'[?hXgcrqxmSNQW9&\ReuEZkiaH8#t^ULsIq^v%T9X;\kYsu)GsăU"Vr-8uCX\0?u8np<t]QKcXJ4=Ek+y6gTenV*(nYvW7oOn^k]ynOywqUZ_mqpC==qăU"wn^cxoU<>:'Vhq>ASNu.;p;<U[^[G_x,p49D,]$s%<SMkvr2IuwuYBk2BwS.[j'ăU"P?CE=TT;R$$belt3gFu>XRx%%up(%)9%%[%-%UGzJMLBQ3b)%+%%Q%5%%.#%%%FăU"M7>>7LSF0E3f%*q\+j=W0?=XtR?rs3k1-uJ)'ZnxQTm1z2TuuoYT;;A>v4DS5J8ăU"kb64$Mdq6>9+cDgwCtt)--mu1-Q#'zpz$-g;t\/UvtiYZLjRfDeZU4D_kD,=K9\ăU"[Vciu:;Eu?xxFd9,XXd-^#opf0brLKb4&d8gBw<7fx0*Hu5ytIxd*Cdj_2,*8(,ăU"1]EK[*7.2mDjf&8xJH1tQS+*e=+EJ+/)P)YAt2O*,R%AqTiYHP$$:.%QSTKFRNDăU"jPR[E'm+(7]iGA0j7G$FXN]ji,k_[Ho*AB+I/k*cvJ*CW&80%]Cu&dS*IiJip0$ăU"s1Dj;p/\AJ1IPTu.).of)[s^v,X=$7,X'il%aQWijUYDSf%;Z.iF5FrAQ)HSSP^ăU"Rl6bBs_A2/tTfuCVN/;[jqa;4#:IMs]EXILRC,F+bG]j1>kQ2e%/k<.'fnm%?iRăU"wIWhCqtwXAG9sOEsLCvQF_?HEu7-v_t'aWHWJC^/TJmJUhWT06,T;s904>mpkc<ăU"*BGy_jCrFjGXAjQ[#2+h,>2,R:m9_KvK$Kuu+K#l,nbG_*XYbD]dB^K1N]G4bI2ăU":bR,2L\;1;>LWCZa.Vl%sa0bYXMWPLi7Hi6l;htj17q?npXR*XjB$B&)QU<+FWOăU"lW2:HDPaWRfBjEoMlnmjGj2_D1Nf\vp&f*/W+q[3=r,>h]>W(2ilrR6\vxvONX)ăU".,n,xXMHci6Afkq=m3;7=UVjWkgHXOwJi+qu*r*pB[pFceIu2*BRld,&?bBbM^Vă'>>> Page 12 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 13 of QEDTUK.ZIP begins here.ăU"7ysoVC.j]q,VW(kF*XZZbr>tYt405XTn>#tzw60tZ06+>2h4:Dv+FtM>1I=t5skăU"]pm%j0_cdASr,:pW)a9,:IdX#Lt0jo;6frz<UXCDXWKL(<pRIcRF<Waq90PvxrpăU"Mqr60#^DFb1be;sL_8ct0dxnsspm9D,m3Gkd=iu3*u\*(^DbiuE#ge1L\2rd]77ăU"Q.aXq?$/hdQb[s3t=[S;uv^^t5nHKYbI/ljX#n^dEF=gWGEo3.^]n#A(i'AjYK/ăU"_i6C3e[u)Hv<[H<d7?r^K<=X\6B17Tbfl(.x/Z/GevYrR7Pu:ZjD5&(\4X2o?4eăU"hfl_Ikh\p?Wai8tAcE2uB2H_r$>W2Z4mNlItTleeRsZ*Hw<HJtE73\-Yj;YKS$AăU"4iZjV8uumi:ZV2jP%Sc%[r/y+3M).,6eA)'i/<1lb6TXjsq4V:_Np6a,QBgmCMkăU"Ci)E%mETgH=vD1tVrVOj]t'S5MPf,X*=f%0/t8PwT9P,VQB%^,\8=;7q4LL8rKEăU"7,gky-IWuvV-LCT8S5(\am#WRemsXZ/ciuLMt_=BVRp/pCs.zMYqKI7JB_K7V_%ăU"SbQbg=G'GH7:I%p8;C_4Wi>)&YG]rhI<)_'Mi3B0$H#(Clj*<=V#)*[kx>j<b/%ăU"5)fVRuN9Lg&&k=%-a5eXv=d#Q4U-N%%fasPf#RSpUQ=9'6FM7#Y'Cfc,&2UmJD[ăU"l8Pv)3Am(<,>]=[6YP?u-Z(P\91Xj[k-,N+-/K&['TC%g;.YOB1((d44^F/7(R4ăU"f5/dK93C0J)Xx%a90WF9=-YLGO/oJofR8V#Q_G%5n5IfIMi=LVks7>U;*E)YqfAăU"89M)vFYQyP/t-Y:/3j1N1as=Y6#Y?3%f;]/3<7-97*KH*8kV)WIzL(%)_3v%d_OăU"yxI]M#a-A,Y07GiI%7gO9&>ULMy(%OSe+%:%UGys0dA'8do)_H2z?4+%ohyqS<_ăU"Yq%jCy/xQk5Q%V%flJ)n_IA#[.?bQd#Z+A%Xf4&TE(^-(rm*G'EfPqIoJP#kimRăU"MkHN\\,G&EUE%%d'fa%qN0+&&*X#c1)OcM)q8m7)_ADp)dLmO[9.E,vzNTKmi9DăU"4]X=xR9N8Rn;'<:y.'QG9z3Y)b[(Z.K*HDF=*T,KM=s&tN=Y10&wa3M9D*JV(ExăU"dg.4OJe^9tlc_LbKn*L\Fj,WTAq0x/p[I&ET4_3mA:(X,4MhCc,$Nle8mVxS+EYăU">RRa4kp]r?p&SJe%,k]c'aH&S/X=9U-)S%;?7q:+,mRzDft6:%=h_07*rNhV*Z=ăU"2V8&ionOrdte>[k.;.hTnKwf'qBup%()9%%%%-%8oidG'JS(H%'6%%&NB%%%0%%ăU"%%hfxm%wjlSJ&f%,5(HZIp^Eg6<r7x&g+nK*:Vg:QT71d4-6<U1j(fuU#99jaIKăU".Q?GOI/(06O\o.RHS5.&f_I%.nvY%YjXYRYh,fn5=o[8R47R97=xPBwcj%:tJ4_ăEND SUBăSUB V6ăU"i,qcKuLtv7Zpkbfu8w.w]lLtw]rDSwt#p(8ErZdLuk]BHQil6NWns6MHo]tm?uDăU"_\;jN;C?x#xAt.qpqluL.du\s0ttCrLNq^3U#>.g\TZ5U\PHo8b?aR-BoH5Cb0păU"b<j\u6v]+Snc=-9d'0]-\\oJFkh'&eD$4&)\pV535J39gDVEQ^+6#J>W./D1Y12ăU"9odS1lUdJ7nZ4SDl&(dX:tK9xaRdvLrSWP#EVt/P*]5&,1+F%Djou3:1*n1DbirăU"JcH(=?>E46H#2^D06$NSx7L\[6aTZYGS#^uUX?Z2,[GW-,ei0aaTX.NIk0Ff4KvăU"3*\NpCb9<\$?^IL,/ELWM:p)RHV:MvFIh1'K%JsS1<gu]8)vnS([t)?+(UPBOQAăU"P:=2/qi'RFxqL[s5i.9B3-)]Qw:016qvdIw:CJ':5H_%j6-]5&tU#3RerJ)P_O0ăU"G17L'1'9>E:'s$dwvR1_l;[WVRpSp4=eU+.F^c(qXc/q.v;+wZpgeJo1I:=qX)-ăU"YMcMaallfEa6,Y7Y-q$#B15UPEQ+-o=(F]+#BCk:lX'LCj=E<W,'*MPrWCP]oa6ăU"+6.&\c,bJzMHi>u\FWBcn<f9a.Gp4P5ds^,<riLEg[T%JA-Ls(J,Bs./<Z1Nf_hăU"BjwNwJ\ksrIpCRA9ZoRkeg-e>/,&Ir#5&/\-I5r_Xuf:6\Yq0.kw9Y<VT[.uhN9ăU"lc/C9.PY_GUg8pZc#-Cjy3tlAd=/?*bK+-d*]Ko;1P10G57^k*P6I7Nc3;y+E'OăU"J3(c(&]vl:bSe337]0?f%;xIiP3_I35PUoT='.aq1i5O.CoTl?\7jI>ZjtrkcOvăU"V^c,K0B:&(FXOZ1JQLV^5XDc,kEmg[D2:RS'&]lB3;&Z1X$_08gqJ4g8usjdplvăU"7K,lhsVdFYSnW_Ff4XW5NWLHxr4ngdCASpr&Ll;G?([?xj>4j<X<_kLpp4tbXn,ăU"swD^JmBT#R;,6N0r4('C$^1Sol'4y>OB#H>ugpYrtlxG$Q*mEGtMi[KN_=&^B4năU"?BH$3wC/6\BC7ToBgiXX.gs\h75c735cr4L6k_v:Zxg=-LQ686JdN6IL&\u\x2uăU"qDi>mT[kcubl8wQ[hfMurJ8sHNiPHmo#*6qGugCsffo#WxKlVuxbxt$vjhwuioWăU"HpfsFtqn*rNrX<(/V>Mj.pVKnUkKV.xrh0lF6<>6nu56qvEbhsvuD\V4'Hj=l*2ăU"CDsqMMpvT<D[JLX>niP#2Gjug4diHF<XvA]<hMOmHuZZql$-s/ltwVF.vgEuFtNăU"cqK9pOsH,Iuon$Z>)PDACd;<n$XThx_rN\7gcM$xpKKom,j$vT3cRNzQkvp[3#ZăU"wkovjv%H8C*Xudgr<;4#66QLN:L5.>DQuT4F*lDk13P+3&43WVF[MEByBq\5sU>ăU"YRrOlugCJoRVsbQbG5ljoF8SsB=UPPIn5+QYSAeVJ#K(h<]1X84)2bK:DznW>A+ăU"vufVauWG-:Nl(pW,b,UscsCbJg6(Ktn\BmLvVo6h634w2\*RirvcD.BeMq.ztW(ăU"RQYKMDFJLxZkVbr:jl3mIKRNh$\CTQq+C9AqrO>-EP-9-_g\ft&$4e&l#cnRy/DăU"*P8mGCj_$wZRHt)?>:EWp<d0tk,e[du[_)F4b[Dd+S<6vs]qd)2z,?WAXG4EcKbăU"MkJ5?_(HVG24i$;iV#I;bH38wt$Yg>Q4qgII/&M[x\Sz.RM4Q48q?TW;'Cz%8b)ăU"-U_QC->bD,D%qA7Lv#*S$d_0:?6M'2BOEP2Ax+yib_f[,'^Q7DQ&s5^C_Ue.=)săU"%%flCXLou[yJW-20#*D.30fIpHDdrp9/^IYaMcpWy:u=CU\xGv\15(1gXW/qTrtăU"Aml%-#O=6-Ax,Cnr8q&>?v6SYM4qd7M^.<D2I_422z_8(znaS%*'0IjMu'OxmMgăU"ume9H#WsGr#%3>CPaK=kWjWuc**HTKg8ai4/8Mwp7hB$CgG5(sY4EKHOv?x^1M9ăU"2>Qo+97n7?_*(eI&H8[ns).jr2vsSASHMLeo+K3j%37qz4_j9^r'P1(Gf,l94C_ăU"Qi)aJ7acp=g0WN&;B/E/bq/)kv5h]#asKPFWgOyM<mUY[xUA][uVmABN<>/8n&'ăU"0^uObt_#acaZCFQr6k)WG=uFdU)Z9gy.EMa%9mmvI#OI*Va8^go(C6=4-0PC[?LăU"WJn5oYOUH>_>]+Hd]2\wonZIHU^A4.32&_/_>w&aZ/V2SPff:AGIeaBC1R(F/e9ăU"%qHa-4PifI=vsa0S?w(YeQ,P+BGu0[R'N9.=+HQxafRv9%G0CI1SO>goH8qDj;GăU"%bbFOK'=-MI-V=y;m,sZ,GPpwPH9a'nlA4&<DL+j4$(M_vyCV:_sAQ1/tU$\,yrăU")S>Ff1#eALE&/)PR<qq^My1dgiAkY>.]Qqqo[1Yd*-/i,6C=l\?(pa7O(u%&cf3ăU"m4m<TJJo']9nwDw&-Z_7]s)??V8OVq-Iwk6qc=V/j;ip^qJS.,w%-8f+8/29,NAăU"Xn^[4eCu%mHZjnb:(m\/'49&1vJUF33f2&VG5v&'(g%LePD0[E0,*khavZa8[g%ăU"oYja:2,Pw/8X?Q(7gM%5:B1,'0c&]fK='GIhfd&e+/9nG.7k1%%T)lOAQWSW7+>ăU"=8F8S1S-Cog6S[6C0%RYq2l5K%92Q8O]Apo8Z4&&P$Ic+MS(b/W5G,jTugRWd:FăU"pdw/h'nO9LY0A:#oM<Pl%^E[.lWy.'0YS.C)4C(su,L:QZe)bAOb]qCQhusDQ;;ăU",+hLY4?*)o_7Mhq*JaS$\,1RH&6S9XaMO%EX&6e8?%bPNOf[_o%23W2:;S8F-15ăU"uvyIa(wUB0KU==s9DvS8gWy<,BiiiQ4Ai7OdO61cp#,\QO9d8$Ltnd&-qbD/ON5ăU"D3Za,oa&+Me,*<$Bs]kPA[0DSD#?>_9ufr'A-y=2r0+;)5p(9oIZ:3I&Rw?lI^?ăU"zOCD0;rYWKnQe^WyS;W+T<>j5Ce<kO=8n4),Of;6QIF?9Ae&O3)b^4D(IXC':?DăU"C?xC7g?jjZu(b1#a*$o=a+*g0DenfKDh6Q,qZ9M1vXoC[yI-LFNY^C1c;tMC;E+ăU"O&B6vF*2Uw%K]/v<(b+IcVV::+k$)e'9DB?og[wS^G/WUIU5_Q<bP(bX2a:M24BăU"Loe'g1zWV/*pRmEZerJGD9]4<I9g%]Xe5+liBhO(0=h2L^1d.2DS\2rDst%Vo5păU"SW'q(eoPte3T03B++1lwA7B&3O[ej)7-f#>n6Wtou.X,eM1lD^2pPl:2xR\+&[măU"hG&C7Dbn)tWCT_w;0VpE)^-MLa<.bw55MR88jJjXUoCMqY-+79BSlMeg:nLka$3ăU"5ELJK)N4*F3g6e;/d#EC>i,_+U$ccnviX#(Zer,1'Y(ba;4erOSNo\pE+;V*eXiăU"wsw+(GR^?qshP[e6+54hM%1rzo%9CB6et1#C=uW=F4+SaMHt)&a-tsUQKcrdVhgăU"Fj'qnEptHg1pj9\PxQrr980]TaEX562;kVH)Eze.SfX<m42wk>WKQ#cax8pdw\TăU"Z^cf8n6lv0mwa45i4Fvv$.h43qnM05ac6'4lVqDPh.YZ)l6+FwBby4#M]vFFGvqăU"UiX61lH$NlAoiL=r5.e4bt)4S+5Oq9VlHKaUtL>kkaF<s)^62LV^5Vj?aoVR#vOăU"G0&?WV#U=G,(,PmGY4[Yu5pb*/VO%Y'EO^%1*vvJg3BtYzO:[P7*Pl4qUU?.OPPă'>>> Page 13 of QEDTUK.ZIP ends here. Continued on next page.ă'>>> Page 14 of QEDTUK.ZIP begins here.ăU"kWL7t3*#eo&NK1yT0CDS+CUluo*YKVR9th'0bo(jrOWec64R/rDqDnv;i%%0NaUăU"4*N*)od\C&G<XH&;4yVpN3L%e_-g&D3*<M=P7\-*_1TDz0k'\h(7JYqNg9BaIoLăU"mWwog._rHO/vY(;)*N18uk2.;/w/6VT*p;juJ*;sONJTdgBC^5VtJ#(L)GTNcH.ăU"s?d3%6i(BkhSP2h[9-Fbt;[eSmp5uYv'MW[0?&lwM2>DS$y\:nJgmpkeBjUaP<UăU"B8eSNUduS%PRp(/rCqHBjULpe\UWk+NONj&X1a3FH,NBg<I5<Uy^uaNScX>5]>PăU"HR5r$=T85^tE;9c:Sr]j?NIB1:*WuX%Ms<+q(6--j4rK[?WDgZ/tt_;IJ/Qc+/(ăU"hpaPT4s7'Bm6#QYhXbLAs9z2x53Z31';Fb3kwVJ/57k%9EibYO7MiWA0,bR32-]ăU"#^W;RZekZOW'iNFdP%8u,AQP\3Scyk)faP[lp%v'_i16_C-,swaw'Q5)ku>6QDEăU"HbgATPW;$/ZHJ--X;/i2K'-M%#vN953h)O1:'k+GX6c\mr?(VVWF.FTWMD+m-=)ăU"QC(WU<KRfdme3n87Y]z4%whN4;cAN4tEM9W)\u_(?t=Yr#-GF_TG4G441O/RG^5ăU"P'v/Y3[lkq12QqRYp9(x)k$>QnAP=(d&aHj]\nYQ7NE[)B*=R_64f<3MO6WZAo\ăU"?;ZZ5E+3c,glm7pq[M/+UEPm_2O-NRl>R=pi;fDo88uKAv=r(hJgaeQH]g#]t0SăU"O2YTGg)J(6[]WifHZ%7S7e>$-<6glv*#'[Y5t]LR6R;,Y2+d/3h;BuR3C=j&3;RăU"(I1AvCr>9C^wS/n]G$2dJT++=AB6KlH.Wvd>OTdMqi(%y&n:9GPKA2Asb:jMK+;ăU"9]p81B7YgGoA]QG&Q[m8uoSy5ic(,*M<spWf8g2RV$H<qH]N&Y#Q':((5me]u'0ăU"%JjblPP;&9Vc:Tm(J\ix/*WIC;UlIF)5f2fwZ(kk\n[':q=k7*jrTIWMq5OEQqGăU"[&e-0*XR/MCyX_%j,-9FIX+uT]i5brV9TL.y;L%12NXXkG/,4t1uRmS,G>i:%J]ăU"s-V#n<TP/^?-F7Bu/$F7/<K>rgj]mCUBzM<]Mq0-8xXkrfTfcH6B/,\GBwp;]ZDăU"N(l5%;2X+_vhr5F$JS8]D?)Ewzos?Q.Fpicm&HI7J'sLwd0gHp\g>Rt]U+:)_k*ăU"\4ZkftOrjlKEKokX/hkE3Exok2QnE6>MMK38a*z3-a:w48)LYD&'D&H?H+<l,sEăU"Qu%XEQndR8sZ5pg$F<dcIeR$*xEu4prr\%Mblwau/&2R[D5>+^3iob<TSSc1uYqăU"QmH2EldrY7Z/(;O;SlZ8\Z*tk46ncuu;Mh>.A>lXkuTS^sC>qw7Tn*4qK(X\lFIăU"Yk?$Kf].Bok7/Yw-o^pQ*XQM-9V[Cr\4TNIbh?oR<wjZ$X385,8T(Blu/)$^lf&ăU"Jri+LUP_Zd&+cn[jlY?4+XXzu;h\EDMuNt<ba,[lQ4YBXf([+S$xJqnHJZ7ioEZăU"NqFZHnDQNkJ\-IIq\6]b&we[eUwBn<OlHZ&L[_\*7HVN6-#j#N$>=MAJh_z=7rOăU"CD>=?4<K8p,7c,u&YaUJ[cjx[lLBc>M(p9\r3MjDl],A3Krl=2UQgwS\Qoq7[_uăU"9WD?LMrLg$7gnQUCBbu3*Qq1GVz1lgT>6uxoTx%(up&%'9%9%%%%-L%D#31O(1DăU"&i5&%+%w'%%%1%%%%%%%%%%%E4%/P%%%%%v#jiyD2:0:S%nhtu%p&'9%%9%%%%-ăU"%2GAKOw8Z<hN%^%%[%c&%1%%%%%%%%%&[%E%/&P_&%%%vjiLyD:0J:S10&Bup&%ăU"'9%9%%%%-^%oidFGAmf)7H.%(%c:%%%/%%%%%%%%%%%EO%/P\%_%%h%frjw.fS&ăU"f&%up&%'9%9%%%%-^%oiddG:FW)1s)%+%W+%%%/%%%%%%%%%%%E4%/PS#i%%&%măU"ttx.mS&f&%up&%'9%9%%%%-d%tx6UI,]k%g$1%%%A7%%%/%%%%%%%%%%%Ej%/PsăU"#m%%CMH?8=J6SF0&Eup&%'9%9%%%%-j%'yJ^MWDC-la>%(%UL%%%1%%%%%%%%%%ăU"%EO%/P,#z%%;M8>=A2>0AS2F0Eu%p&'9%%9%%#%-%o+idG8IJ<pw%(%%R%,%%.%ăU"%%%%%%%%%[%E%/2P>>%%%qfx#jwS&(f%up%&'9%%9%%%#-%byKJM3(4#HI:7%%wăU"<%%%1%%%%%%%%%%%RE%/P(cB%%M70=3M14;;LSF0E%up&'%9%9%%%%-%:,yJMH:ăU"cw*%y=%%&[A%%%-%%%%%%%%%%%E%W/P[WI%%6>D=6SF)0Eup%&'9%%9%%%#-%M9ăU"'HM1j2Mg,3.%%?5%%%/%%%%%%%%%%%RE%/P)+p%%M2D2:D>>SF)0Eup%&'9%%9%ăU"%%R-%vwKJM<R,Ft%.7%%U0%%%0%%%%%%%%%%%RE%/P-Z(%%M27822:4=S2F0Eu%ăU"p&'9%%9%%[%-%FbzJMk^zx8&[)%%a%*%%-%%%%%%%%%%[%E%/8P/2%L%F8?J4SFăU"0&Eup&%'9%9%%%%-j%UzJ:MLQ3(b)+%%%Q5%%%.%%%%%%%%%%%Ej%/PVB6%%FM7ăU">>7LSF0E%up&'%9%9%%%%-%8oidG'JS(H%'6%%&NB%%%0%%%%%%%%%%%E%i/P-=ăU"%%%hf%xmwj.lS&f&%up*%+%%%%%3%3%%9(%:%XN%%%%%ăEND SUBăV2ăV3ăV4ăV5ăV6ăCLOSE:IF S=105AND B&=55475THEN?" :) 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\55475,219);:END SUBă'>>> Page 14 of QEDTUK.ZIP ends here. Last page. TCHK:105ăAchilles B. Mina               scientific calculator          wasaywasay@i-manila.com.ph     09-29-01 (  :  )       rapidq                 1277 323498   Calculait.ba'Calculait 3.41ă'Updated: Sept. 29, 2001ă'Now includes a Functions Selector and email senderă'Calculait is a full-featured scientific calculator with a world clock. ă'It's downloadable at ZDNet, RocketDownload, CNet and other freeware ă'sites, and at my website at http://pages.zdnet.com/wasaywasay/wasaywasay/ăă'You can do as you please with this code.ăă$INCLUDE "RAPIDQ.INC"ă'$RESOURCE autumn AS "autumn.bmp"ă'$RESOURCE Ico_Cal AS "cal.ico"ă'$RESOURCE lionroar AS "lionroar.wav"ă'$RESOURCE camera AS "camera.wav"ă'$RESOURCE cashreg AS "cashreg.wav"ă'$RESOURCE chicken AS "chicken.wav"ă'$RESOURCE cuckoo AS "cuckoo.wav"ă'$RESOURCE wipe AS "wipe.wav"ă'$RESOURCE gong AS "gong.wav"ă'$RESOURCE handbell AS "handbell.wav"ă'$RESOURCE laser AS "laser.wav"ă'$RESOURCE typing AS "typing.wav"ă'$RESOURCE whooh AS "whooh.wav"ă'$RESOURCE whoosh AS "whoosh.wav"ăăDECLARE Function GetFocus Lib "user32" Alias "GetFocus"() As LongăDECLARE FUNCTION SetFocus LIB "USER32" ALIAS "SetFocus" (HWnd AS LONG) AS LONGăDECLARE FUNCTION LoadCursorFromFile LIB "USER32" ALIAS "LoadCursorFromFileA" _ă                 (CursorFileName AS STRING) AS LONGăăDECLARE SUB SendAnswerăDECLARE SUB VariablesEntered(key AS BYTE)ăDECLARE SUB EmailMeăDECLARE SUB CloseSolverăDECLARE SUB ClrExpEdităDECLARE SUB ClrLastExpEdităDECLARE SUB OperatorButts ăDECLARE SUB MathButts(Sender AS QCOOLBTN)ăDECLARE SUB CheckE(newstring$ AS STRING)ăDECLARE SUB RoundFăDECLARE SUB ModulusăDECLARE SUB CubedăDECLARE SUB CubeRootăDECLARE SUB DaytoHrăDECLARE SUB HrtoDayăDECLARE SUB MessageEdit(key AS BYTE)ăDECLARE SUB ScreenăDECLARE SUB ColorChangeButăDECLARE SUB preMessageEdităDECLARE SUB MessageChangeăDECLARE SUB StarfieldăDECLARE SUB CometăDECLARE SUB MessageăDECLARE SUB IniăDECLARE SUB ExitSaveăDECLARE SUB ChangeAvocadoăDECLARE SUB ChangeBurgundyăDECLARE SUB ChangeGreenăDECLARE SUB ChangeLavenderăDECLARE SUB ChangeBlueăDECLARE SUB ChangeCobaltăDECLARE SUB ChangeFleshăDECLARE SUB ChangeBlackăDECLARE SUB ChangePowderăDECLARE SUB ChangeWhiteăDECLARE SUB ChangePurpleăDECLARE SUB ChangeChromeăDECLARE SUB ChangeEtatăDECLARE SUB ButtonClickEnterăDECLARE SUB Keys09(key$ AS STRING)ăDECLARE SUB ButtonClick1ăDECLARE SUB ButtonClick2ăDECLARE SUB ButtonClick3ăDECLARE SUB ButtonClick4ăDECLARE SUB ButtonClick5ăDECLARE SUB ButtonClick6ăDECLARE SUB ButtonClick7ăDECLARE SUB ButtonClick8ăDECLARE SUB ButtonClick9ăDECLARE SUB ButtonClick0ăDECLARE SUB BackslashăDECLARE SUB ButtonClickCăDECLARE SUB ButtonClickCAăDECLARE SUB ButtonClickPlusăDECLARE SUB ButtonClickMultăDECLARE SUB ButtonClickDotăDECLARE SUB ButtonClickMinusăDECLARE SUB ButtonClickDivăDECLARE SUB ButtonClickPercentăDECLARE SUB ErrorhandlerăDECLARE SUB ButtonClickPiăDECLARE SUB ButtonClickSqrăDECLARE SUB ButtonClickSinăDECLARE SUB ButtonClickCosăDECLARE SUB ButtonClickTanăDECLARE SUB ButtonClickAtnăDECLARE SUB ButtonClickMPlusăDECLARE SUB MemNewăDECLARE SUB ButtonClickMRăDECLARE SUB ButtonClickMCăDECLARE SUB ButtonClickPowerăDECLARE SUB ButtonClickInverseăDECLARE SUB ButtonClickftmăDECLARE SUB ButtonClickmftăDECLARE SUB ButtonClickft2m2ăDECLARE SUB ButtonClickm2ft2ăDECLARE SUB ButtonClickincmăDECLARE SUB ButtonClickcminăDECLARE SUB ButtonClickin2cm2ăDECLARE SUB ButtonClickcm2in2ăDECLARE SUB ButtonClickft3m3ăDECLARE SUB ButtonClickm3ft3ăDECLARE SUB ButtonClickkglbăDECLARE SUB ButtonClicklbkgăDECLARE SUB ButtonClickFCăDECLARE SUB ButtonClickCFăDECLARE SUB ButtonClickkmmiăDECLARE SUB ButtonClickmikmăDECLARE SUB ButtonClickinftăDECLARE SUB ButtonClickftinăDECLARE SUB ButtonClickydmăDECLARE SUB ButtonClickmydăDECLARE SUB ButtonClickmilyăDECLARE SUB ButtonClicklymiăDECLARE SUB ButtonClickhaacăDECLARE SUB ButtonClickachaăDECLARE SUB DegtoRadăDECLARE SUB RadtoDegăDECLARE SUB PsitoPasăDECLARE SUB PastoPsiăDECLARE SUB PsitoAtmăDECLARE SUB AtmtoPsiăDECLARE SUB PsitoKgscmăDECLARE SUB KgscmtoPsiăDECLARE SUB SectoMinăDECLARE SUB MintoSecăDECLARE SUB MintoHrăDECLARE SUB HrtoMinăDECLARE SUB MintoDayăDECLARE SUB DaytoMinăDECLARE SUB TsptoTbsăDECLARE SUB TbstoTspăDECLARE SUB FoztoTbsăDECLARE SUB TbstoFozăDECLARE SUB CupstoTbsăDECLARE SUB TbstoCupsăDECLARE SUB PartoLyăDECLARE SUB LytoParăDECLARE SUB CartoMgăDECLARE SUB MgtoCarăDECLARE SUB QrtoGalăDECLARE SUB GaltoQrtăDECLARE SUB ButtonClickmfaăDECLARE SUB ButtonClickfamăDECLARE SUB TontoKiloăDECLARE SUB KilotoTonăDECLARE SUB HptoWattăDECLARE SUB WatttoHpăDECLARE SUB BTUtoWattăDECLARE SUB WatttoBTUăDECLARE SUB KwtoWattăDECLARE SUB WatttoKwăDECLARE SUB KphtoMphăDECLARE SUB MphtoKphăDECLARE SUB KnottoMphăDECLARE SUB MphtoKnotăDECLARE SUB FpstoMpsăDECLARE SUB MpstoFpsăDECLARE SUB LittoGalăDECLARE SUB GaltoLităDECLARE SUB OztoGramăDECLARE SUB GramtoOzăDECLARE SUB PinttoLtrăDECLARE SUB LtrtoPintăDECLARE SUB DegtoDmsăDECLARE SUB DmstoDegăDECLARE SUB ButtonClickCKăDECLARE SUB ButtonClickKCăDECLARE SUB WorldTimeDateăDECLARE SUB GMTăDECLARE SUB SquaredăDECLARE SUB SignăDECLARE SUB LnăDECLARE SUB KeyPressed(key AS BYTE)ăDECLARE SUB DoMathăDECLARE SUB DoCheckăDECLARE SUB FormClose(Action AS INTEGER)ăDECLARE SUB DummyProcăDECLARE SUB TZoneăDECLARE SUB CloseTZoneăDECLARE SUB CloseStatsăDECLARE SUB ClipboardCopyăDECLARE SUB ClipboardPasteăDECLARE SUB HonTimeăDECLARE SUB NYTimeăDECLARE SUB HKTimeăDECLARE SUB LATimeăDECLARE SUB LonTimeăDECLARE SUB ParTimeăDECLARE SUB MadTimeăDECLARE SUB RomTimeăDECLARE SUB HelTimeăDECLARE SUB BerTimeăDECLARE SUB MosTimeăDECLARE SUB TokTimeăDECLARE SUB StoTimeăDECLARE SUB ManTimeăDECLARE SUB SydTimeăDECLARE SUB RioTimeăDECLARE SUB AucTimeăDECLARE SUB GuaTimeăDECLARE SUB MexTimeăDECLARE SUB TorTimeăDECLARE SUB MumTimeăDECLARE SUB JakTimeăDECLARE SUB RiyTimeăDECLARE SUB HavTimeăDECLARE SUB MilTimeăDECLARE SUB CaiTimeăDECLARE SUB SLTimeăDECLARE SUB HouTimeăDECLARE SUB KarTimeăDECLARE SUB CarTimeăDECLARE SUB TehTimeăDECLARE SUB RanTimeăDECLARE SUB CityăDECLARE SUB StatsăDECLARE SUB NumberăDECLARE SUB SumăDECLARE SUB AverageăDECLARE SUB SumSquaresăDECLARE SUB StdDevăDECLARE SUB PopDevăDECLARE SUB SortăDECLARE SUB ClearăDECLARE SUB CorrelateăDECLARE SUB Correlate0ăDECLARE SUB Correlate1ăDECLARE SUB Correlate2ăDECLARE SUB CorrelationăDECLARE SUB StatsFormCloseăDECLARE SUB RatesăDECLARE SUB InterestăDECLARE SUB FactorăDECLARE SUB FinClearăDECLARE SUB EnterRateăDECLARE SUB EnterTermăDECLARE SUB Rate(key AS BYTE)ăDECLARE SUB Term(key AS BYTE)ăDECLARE SUB GetRateăDECLARE SUB GetPValueăDECLARE SUB CompoundInterestăDECLARE SUB CompInterest(key AS BYTE)ăDECLARE SUB CompCInterest(key AS BYTE)ăDECLARE SUB CompPeriod(key AS BYTE)ăDECLARE SUB CompPrincipal(key AS BYTE)ăDECLARE SUB EnterPeriodăDECLARE SUB EnterPrincipalăDECLARE SUB EnterInterestăDECLARE SUB EnterCInterestăDECLARE SUB InterestClearăDECLARE SUB PresentValueăDECLARE SUB PValueClearăDECLARE SUB IPValue(key AS BYTE)ăDECLARE SUB CIPValue(key AS BYTE)ăDECLARE SUB FVPValue(key AS BYTE)ăDECLARE SUB PPValue(key AS BYTE)ăDECLARE SUB EnterIPValueăDECLARE SUB EnterCIPValueăDECLARE SUB EnterFVPValueăDECLARE SUB EnterPPValueăDECLARE SUB PValueClearăDECLARE SUB FPValueăDECLARE SUB FSaveăDECLARE SUB FSaveHăDECLARE SUB FPrintHăDECLARE SUB FPrintSăDECLARE SUB FSaveCăDECLARE SUB FPrintCăDECLARE SUB AuthorăDECLARE SUB ProductăDECLARE SUB EquivalentsăDECLARE SUB RNGăDECLARE SUB RNGLower(key AS BYTE)ăDECLARE SUB RNGUpper(key AS BYTE)ăDECLARE SUB RNGLowEnterăDECLARE SUB RNGHighEnterăDECLARE SUB RNGClrăDECLARE SUB RainSnowăDECLARE SUB InitSnowăDECLARE SUB CloseGenericăDECLARE SUB TZaskăDECLARE SUB ExpăDECLARE SUB LogăDECLARE SUB RootăDECLARE SUB RadiansăDECLARE SUB SineăDECLARE SUB CosineăDECLARE SUB TangentăDECLARE SUB SecantăDECLARE SUB CoSecantăDECLARE SUB CoTangentăDECLARE SUB ArcSinăDECLARE SUB ArcCosăDECLARE SUB ArcTanăDECLARE SUB ArcSecăDECLARE SUB ArcCscăDECLARE SUB ArcCotăDECLARE SUB HyperSinăDECLARE SUB HyperCosăDECLARE SUB HyperTanăDECLARE SUB HyperCotăDECLARE SUB HyperSecăDECLARE SUB HyperCscăDECLARE SUB ArcHyperSinăDECLARE SUB ArcHyperCosăDECLARE SUB ArcHyperTanăDECLARE SUB ArcHyperCotăDECLARE SUB ArcHyperSecăDECLARE SUB ArcHyperCscăDECLARE SUB TrigFuncăDECLARE SUB ChangeModeăDECLARE SUB 10powerăDECLARE SUB FactorialăDECLARE SUB ChoicesăDECLARE SUB ColorsăDECLARE SUB SeparatorăDECLARE SUB DectoHexăDECLARE SUB preHextoDecăDECLARE SUB HextoDec(key AS BYTE)ăDECLARE SUB DectoBinăDECLARE SUB preBintoDecăDECLARE SUB BintoDec(key AS BYTE)ăDECLARE SUB AmortizationăDECLARE SUB ALoan(key AS BYTE)ăDECLARE SUB AInterest(key AS BYTE)ăDECLARE SUB APeriod(key AS BYTE)ăDECLARE SUB AcInterest(key AS BYTE)ăDECLARE SUB APaymentăDECLARE SUB EnterALoanăDECLARE SUB EnterAInterestăDECLARE SUB EnterAPeriodăDECLARE SUB EnterAcInterestăDECLARE SUB AmortClearăDECLARE SUB HistoryăDECLARE SUB DaysDăDECLARE SUB DaysDEndăDECLARE SUB preDaysDifferenceăDECLARE SUB DaysDifference(key AS BYTE)ăDECLARE SUB NewDăDECLARE SUB NewDEndăDECLARE SUB preNew_DateăDECLARE SUB New_Date(key AS BYTE)ăDECLARE SUB GetMonth(monthtocheck AS STRING)ăDECLARE SUB GetDay(daytocheck AS STRING)ăDECLARE FUNCTION GetAOdays AS INTEGERăDECLARE FUNCTION GetOdays AS INTEGERăDECLARE SUB OutFinancialăDECLARE SUB OutScientificăDECLARE SUB OutCommaăDECLARE SUB OutNoneăDECLARE SUB OutUser(Sender AS QMENUITEM)ăDECLARE SUB OutFormatăDECLARE SUB OutFormatTypeăDECLARE SUB FormsColorăDECLARE SUB NotesShowăDECLARE SUB CloseNotesăDECLARE SUB ConstantsAll(Sender AS QMENUITEM)ăDECLARE SUB QuadraticăDECLARE SUB preQuadRootsăDECLARE SUB QuadRoots(key AS BYTE)ăDECLARE SUB PythagoreanăDECLARE SUB preSolvePythaăDECLARE SUB SolvePytha(key AS BYTE)ăDECLARE SUB getPosPanelăDECLARE SUB getNegPanelăDECLARE SUB getPythaPanel1ăDECLARE SUB getPythaPanel2ăDECLARE SUB CubicăDECLARE SUB preCubicRootsăDECLARE SUB CubicRoots(key AS BYTE)ăDECLARE SUB CubicRoot1ăDECLARE SUB CubicRoot2ăDECLARE SUB CubicRoot3ăDECLARE SUB DrakeăDECLARE SUB preDrakeSolveăDECLARE SUB DrakeSolve(key AS BYTE)ăDECLARE SUB CoordinateăDECLARE SUB preRecPolarăDECLARE SUB RecPolar(key AS BYTE)ăDECLARE SUB PRRadioăDECLARE SUB ExpSolverăDECLARE SUB ExpSolverEdităDECLARE SUB Functions(par1 AS INTEGER, mathval$ AS STRING)ăDECLARE SUB DoInPrecision(value AS DOUBLE, value$ AS STRING)ăDECLARE SUB DoPrecisionăDECLARE SUB preCheckSyntaxăDECLARE SUB CheckSyntax(key AS BYTE)ăDECLARE SUB IntImpăDECLARE SUB ClickDateăDECLARE SUB USDateăDECLARE SUB UKDateăDECLARE SUB IntDateăDECLARE SUB changeEăDECLARE SUB GaltoLitUKăDECLARE SUB LittoGalUKăDECLARE SUB PinttoLtrUKăDECLARE SUB LtrtoPintUKăDECLARE SUB HptoWattUKăDECLARE SUB WatttoHpUKăDECLARE SUB SendMeăăăTYPE Stară  X(100) AS BYTEă  Y(100) AS BYTEă  Z(100) AS BYTEăEND TYPEăăDEFSTR entry, entrynext, memvalue, memvaluenext, memvaluetotal, GMTDiff$, usermessage$, outform$, precision$ăDEFSTR oldexpression, MathText, formula$, operand, operandold, inifile, FVPValueEdit$, PrincipalEdit$, ALoanEdit$, City$, DateLine$, wday$ăDEFBYTE soundoff, Military, CometV, StarV, MessageV, ScreenV, dochecktag, escapeăDEFSHORT HourDiff, MinDiff, GMTDiffăDEFDBL CMode, CModeN, funcanswerăDEFWORD monthnow, monththen, monthchecked, yearnow, yearthen, betyearsăDEFBYTE formdate, clickeddate, leapnow, leapthen, bleap, circa, weekday, fmonth, emonth, pmonth, todate, inthepastăDEFINT byear, bmonth, bleapyear, yearhence, AOyears, fyear, eyear, pyearăDEFINT Bdays, rundays, edays, otherdays, totdays, yeardays,Odays, AOdays, diffdays, betleaps, daynow, daythen, AdaysăDEFINT fday, eday, pday, neweday, newpday, monthdays, daysthence, dayshence, bday, daysăăDIM Snow AS StarăDIM Data1(1000) AS INTEGER, Data2(1000) AS INTEGERăDIM Math(1 TO 39) AS STRINGăăCREATE Symbol AS QFONTă    Name = "Symbol"ă    Color = clRedă    AddStyles(fsBold)ă    Size = 11ăEND CREATEăăCREATE SymbolG AS QFONTă    Name = "Symbol"ă    Color = clGreenă    AddStyles(fsBold)ă    Size = 11ăEND CREATEăăCREATE SymbolB AS QFONTă    Name = "Symbol"ă    Color = clRedă    AddStyles(fsBold)ă    Size = 13ăEND CREATEăăCREATE Arial AS QFONTă    Name = "Arial"ă    Color = clRed  '&H00EAAă    AddStyles(fsBold)ă    Size = 10ăEND CREATEăăCREATE Helvetica12 AS QFONTă    Name = "Arial"ă    Color = clRed  '&H00EAAă    AddStyles(fsBold)ă    Size = 12ăEND CREATEăăCREATE Helvetica16 AS QFONTă    Name = "Arial"ă    Color = clRed  '&H00EAAă    AddStyles(fsBold)ă    Size = 16ăEND CREATEăăCREATE Helvetica10 AS QFONTă    Name = "Arial"ă    Color = &H00FF00ă    AddStyles(fsBold)ă    Size = 10ăEND CREATEăăCREATE HelveticaTae AS QFONTă    Name = "Arial"ă    Color = &H00FF00ă    AddStyles(fsBold)ă    Size = 11ăEND CREATEăăCREATE ArialG AS QFONTă    Name = "Arial"ă    Color = clGreen   ă    AddStyles(fsBold)ă    Size = 12ăEND CREATEăăCREATE ArialG1 AS QFONTă    Name = "Arial"ă    Color = clBlack '&HEEFE   ă    AddStyles(fsBold)ă    Size = 10ăEND CREATEăăCREATE ArialG11 AS QFONTă    Name = "Arial"ă    Color = clBlack '&HEEFE   ă    AddStyles(fsBold)ă    Size = 11ăEND CREATEăăCREATE Arial9R AS QFONTă    Name = "Arial"ă    Color = &HEEFEă    AddStyles(fsBold)ă    Size = 9ăEND CREATEăăCREATE Arial9G AS QFONTă    Name = "Arial"ă    Color = clGreenă    AddStyles(fsBold)ă    Size = 9ăEND CREATEăăCREATE Arial11G AS QFONTă    Name = "Arial"ă    Color = clGreenă    AddStyles(fsBold)ă    Size = 11ăEND CREATEăăCREATE Arial9B AS QFONTă    Name = "Arial"ă    Color = clBlackă    AddStyles(fsBold)ă    Size = 9ăEND CREATEăăCREATE Arial9Y AS QFONTă    Name = "Arial"ă    Color = &HFFFFFă    AddStyles(fsBold)ă    Size = 9ăEND CREATEăăCREATE Arial9W AS QFONTă    Name = "Arial"ă    Color = clWhiteă    AddStyles(fsBold)ă    Size = 9ăEND CREATEăăCREATE ArialW AS QFONTă    Name = "Arial"ă    Color = clWhiteă    AddStyles(fsBold)ă    Size = 12ăEND CREATEăăCREATE Arial10B AS QFONTă    Name = "Arial"ă    Color = clBlackă    AddStyles(fsBold)ă    Size = 10ăEND CREATEăăCREATE Arial10W AS QFONTă    Name = "Arial"ă    Color = clWhiteă    AddStyles(fsBold)ă    Size = 10ăEND CREATEăăCREATE ArialB AS QFONTă    Name = "Arial"ă    Color = clBlackă    AddStyles(fsBold)ă    Size = 12ăEND CREATEăăCREATE ArialR AS QFONTă    Name = "Arial"ă    Color = &HEEFEă    AddStyles(fsBold)ă    Size = 11ăEND CREATEăăCREATE ArialW14 AS QFONTă    Name = "Arial"ă    Color = clWhiteă    AddStyles(fsBold)ă    Size = 14ăEND CREATEăăCREATE ArialR14 AS QFONTă    Name = "Arial"ă    Color = 3333333ă    AddStyles(fsBold)ă    Size = 14ăEND CREATEăăCREATE Vivaldi AS QFONTă    Name = "Arial"ă    Color = clGreenă    AddStyles(fsBold)ă    Size = 10ăEND CREATEăăCREATE TimeFont AS QFONTă    Name = "Verdana"ă    Color = clGreenă    Size = 12ă    AddStyles(fsBold)ăEND CREATEăăCREATE TimeFont11 AS QFONTă    Name = "Verdana"ă    Color = clGreenă    Size = 10ă    AddStyles(fsBold)ăEND CREATEăăCREATE ArialBl AS QFONTă    Name = "Arial"ă    Color = clBlueă    Size = 12ă    AddStyles(fsBold)ăEND CREATEăăCREATE DXTimer AS QTimeră  Enabled = 0ă  Interval = 1ă  OnTimer = RainSnowăEND CREATEăăCREATE Timer1 AS QTIMERă  Enabled = 1ă  Interval = 1000ă  OnTimer = WorldTimeDateăEND CREATEăăCREATE Timer2 AS QTIMERă  Enabled = 0ă  Interval = 1ă  OnTimer = NotesShowăEND CREATEăăCREATE Form AS QFORM  ă  Centeră  Caption = "Calculait"ă  Width = 430ă  Height = 345  '335ă  Color = clBlackă  AutoScroll = 0ă  'DelBorderIcons(biMaximize)ă  'BorderStyle = bsSingleă  OnKeyPress = Keypressedă  WndProc = DummyProcă  CREATE TopPanel AS QPANELă    Width = 425ă    Height = 13ă    Color = clBlackă    Hint = "Click to bring up Math-Expression Solver"ă    Showhint = 1ă    Cursor = -21ă    BevelWidth = 0ă    OnClick = ExpSolveră  END CREATEă  CREATE BottomPanel AS QPANELă    Top = 287ă    Width = 425ă    Height = 13ă    Color = clBlackă    Hint = "Click to bring up Math-Expression Solver"ă    Showhint = 1ă    Cursor = -21ă    BevelWidth = 0ă    OnClick = ExpSolveră  END CREATEă  CREATE ExpSolverForm AS QFORMă    Top = (Screen.Height + Form.Height)/2 ă    Left = (Screen.Width - Form.Width)/2ă    Height = 50ă    Width = 430ă    Color = &HABC111ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    Caption = "Math-Expression Solver"ă    OnClose = CloseSolveră    Hint = "Type in entry then press Enter to get answer"ă    ShowHint = 1ă    CREATE ExpEdit AS QEDITă      Top = 1ă      Left = 1ă      Width = 423ă      Height = 23ă      Font = ArialG11ă      OnKeyPress = CheckSyntaxă    END CREATEă  END CREATEă  CREATE VariablesForm AS QFORMă    Top = Screen.Height/2 - 285ă    Left = Screen.Width/2 - 215ă    Height = 112ă    Width = 430ă    DelBorderIcons(biMaximize)ă    FormStyle = fsStayOnTopă    Hint = "Type in value of each variable you used above"ă    ShowHint = 1ă    Caption = "Variables Input"ă    Color = &HABC999ă    OnClose = CloseGenerică    CREATE UVarPanel AS QPANELă      Top = 1ă      Left = 5ă      Width = 30ă      Height = 25ă      BevelOuter = 0ă      Font = Arial10Bă      Caption = " U = "ă      Color = &HABC999ă    END CREATEă    CREATE UVarEdit AS QEDITă      Top = 1ă      Left = 37ă      Width = 170ă      Height = 25ă      Color = 0ă      Font = Arial10Wă      OnKeyPress = VariablesEnteredă    END CREATEă    CREATE WVarPanel AS QPANELă      Top = 30ă      Left = 5ă      Width = 30ă      Height = 25ă      BevelOuter = 0ă      Font = Arial10Bă      Caption = " W = "ă      Color = &HABC999ă    END CREATEă    CREATE WVarEdit AS QEDITă      Top = 30ă      Left = 37ă      Width = 170ă      Height = 25ă      Color = 0ă      Font = Arial10Wă      OnKeyPress = VariablesEnteredă    END CREATEă    CREATE YVarPanel AS QPANELă      Top = 1ă      Left = 215ă      Width = 30ă      Height = 25ă      BevelOuter = 0ă      Font = Arial10Bă      Caption = " Y = "ă      Color = &HABC999ă    END CREATEă    CREATE YVarEdit AS QEDITă      Top = 1ă      Left = 247ă      Width = 170ă      Height = 25ă      Color = 0ă      Font = Arial10Wă      OnKeyPress = VariablesEnteredă    END CREATEă    CREATE ZVarPanel AS QPANELă      Top = 30ă      Left = 215ă      Width = 30ă      Height = 25ă      BevelOuter = 0ă      Font = Arial10Bă      Caption = " Z = "ă      Color = &HABC999ă    END CREATEă    CREATE ZVarEdit AS QEDITă      Top = 30ă      Left = 247ă      Width = 170ă      Height = 25ă      Color = 0ă      Font = Arial10Wă      OnKeyPress = VariablesEnteredă    END CREATEă    CREATE JVarPanel AS QPANELă      Top = 59ă      Left = 5ă      Width = 30ă      Height = 25ă      BevelOuter = 0ă      Font = Arial10Bă      Caption = " J = "ă      Color = &HABC999ă    END CREATEă    CREATE JVarEdit AS QEDITă      Top = 59ă      Left = 37ă      Width = 170ă      Height = 25ă      Color = 0ă      Font = Arial10Wă      OnKeyPress = VariablesEnteredă    END CREATEă    CREATE KVarPanel AS QPANELă      Top = 59ă      Left = 215ă      Width = 30ă      Height = 25ă      BevelOuter = 0ă      Font = Arial10Bă      Caption = " K = "ă      Color = &HABC999ă    END CREATEă    CREATE KVarEdit AS QEDITă      Top = 59ă      Left = 247ă      Width = 170ă      Height = 25ă      Color = 0ă      Font = Arial10Wă      OnKeyPress = VariablesEnteredă    END CREATEă  END CREATE ă  CREATE FunctionsForm AS QFORM    ă    Color = &HABC111ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/1.34ă    Caption = "Functions Selector"ă    Width =  354 '296ă    Height = 220    ă    Visible = 0ă    Color = &HABC111ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = CloseGenerică    CREATE ZeroButt AS QCOOLBTNă      Font = ArialBă      Top = 5ă      Left = 232ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "0"ă      OnClick = MathButtsă    END CREATEă    CREATE OneButt AS QCOOLBTNă      Font = ArialWă      Top = 24ă      Left = 232ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "1"ă      OnClick = MathButtsă    END CREATEă    CREATE TwoButt AS QCOOLBTNă      Font = ArialBă      Top = 43ă      Left = 232ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "2"ă      OnClick = MathButtsă    END CREATEă    CREATE ThreeButt AS QCOOLBTNă      Font = ArialWă      Top = 62ă      Left = 232ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "3"ă      OnClick = MathButtsă    END CREATEă    CREATE FourButt AS QCOOLBTNă      Font = ArialBă      Top = 81ă      Left = 232ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "4"ă      OnClick = MathButtsă    END CREATEă    CREATE FiveButt AS QCOOLBTNă      Font = ArialWă      Top = 100ă      Left = 232ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "5"ă      OnClick = MathButtsă    END CREATEă    CREATE SixButt AS QCOOLBTNă      Font = ArialBă      Top = 119ă      Left = 232ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "6"ă      OnClick = MathButtsă    END CREATEă    CREATE SevenButt AS QCOOLBTNă      Font = ArialWă      Top = 138ă      Left = 232ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "7"ă      OnClick = MathButtsă    END CREATEă    CREATE EightButt AS QCOOLBTNă      Font = ArialBă      Top = 157ă      Left = 232ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "8"ă      OnClick = MathButtsă    END CREATEă    CREATE NineButt AS QCOOLBTNă      Font = ArialWă      Top = 176ă      Left = 232ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "9"ă      OnClick = MathButtsă    END CREATEă    CREATE ClrButt AS QOVALBTNă      Layout = -1ă      Flat = 1ă      Font = ArialWă      Top = 5ă      Left = 290ă      Width = 29ă      Height = 18.5ă      Flat = 1ă      Caption = "AC"ă      Hint = "Clear all"ă      ShowHint = 1ă      OnClick = ClrExpEdită    END CREATEă    CREATE LastClrButt AS QOVALBTNă      Layout = -1ă      Flat = 1ă      Font = ArialWă      Top = 5ă      Left = 319ă      Width = 29ă      Height = 18.5ă      Flat = 1ă      Caption = "C"ă      Hint = "Clear last entry"ă      ShowHint = 1ă      OnClick = ClrLastExpEdită    END CREATEă    CREATE SendButt AS QCOOLBTNă      Font = Arial9Bă      Top = 43ă      Left = 290ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Send"ă      Hint = "Send answer to expression"ă      ShowHint = 1ă      OnClick = SendAnsweră    END CREATEă    CREATE AddButt AS QCOOLBTNă      Font = ArialWă      Top = 62ă      Left = 290ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "+"ă      Hint = "Addition"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE SubButt AS QCOOLBTNă      Font = ArialBă      Top = 81ă      Left = 290ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "--"ă      Hint = "Subtraction"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE MulButt AS QCOOLBTNă      Font = ArialWă      Top = 100ă      Left = 290ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "x"ă      Hint = "Multiplication"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE DivButt AS QCOOLBTNă      Font = ArialBă      Top = 119ă      Left = 290ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "÷"ă      Hint = "Division"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE PowButt AS QCOOLBTNă      Font = ArialWă      Top = 138ă      Left = 290ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "^"ă      Hint = "Raise to the power..."ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE AnsButt AS QOVALBTNă      Layout = -1ă      Flat = 1ă      Font = ArialWă      Top = 175.5ă      Left = 290ă      Width = 58ă      Height = 18.5ă      Flat = 1ă      Caption = "Ans"ă      Hint = "Get answer"ă      ShowHint = 1ă      OnClick = preCheckSyntaxă    END CREATEă    CREATE SinButt AS QCOOLBTNă      Font = Arial9Bă      Top = 5ă      Left = 0ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Sin"ă      Hint = "Sine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CosButt AS QCOOLBTNă      Font = Arial9Bă      Top = 5ă      Left = 58ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Cos"ă      Hint = "Cosine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE TanButt AS QCOOLBTNă      Font = Arial9Bă      Top = 5ă      Left = 116ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Tan"ă      Hint = "Tangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CotButt AS QCOOLBTNă      Font = Arial9Bă      Top = 5ă      Left = 174ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Cot"ă      Hint = "Cotangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ASinButt AS QCOOLBTNă      Font = Arial9Wă      Top = 24ă      Left = 0ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "ASin"ă      Hint = "Arcsine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ACosButt AS QCOOLBTNă      Font = Arial9Wă      Top = 24ă      Left = 58ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "ACos"ă      Hint = "Arccosine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ATanButt AS QCOOLBTNă      Font = Arial9Wă      Top = 24ă      Left = 116ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "ATan"ă      Hint = "Arctangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ACotButt AS QCOOLBTNă      Font = Arial9Wă      Top = 24ă      Left = 174ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "ACot"ă      Hint = "Arccotangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE SinhButt AS QCOOLBTNă      Font = Arial9Bă      Top = 43ă      Left = 0ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Sinh"ă      Hint = "Hyperbolic sine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CoshButt AS QCOOLBTNă      Font = Arial9Bă      Top = 43ă      Left = 58ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Cosh"ă      Hint = "Hyperbolic cosine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE TanhButt AS QCOOLBTNă      Font = Arial9Bă      Top = 43ă      Left = 116ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Tanh"ă      Hint = "Hyperbolic tangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CothButt AS QCOOLBTNă      Font = Arial9Bă      Top = 43ă      Left = 174ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Coth"ă      Hint = "Hyperbolic cotangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ASinhButt AS QCOOLBTNă      Font = Arial9Wă      Top = 62ă      Left = 0ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "ASinh"ă      Hint = "Hyperbolic arcsine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ACoshButt AS QCOOLBTNă      Font = Arial9Wă      Top = 62ă      Left = 58ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "ACosh"ă      Hint = "Hyperbolic arccosine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ATanhButt AS QCOOLBTNă      Font = Arial9Wă      Top = 62ă      Left = 116ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "ATanh"ă      Hint = "Hyperbolic arctangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ACothButt AS QCOOLBTNă      Font = Arial9Wă      Top = 62ă      Left = 174ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "ACoth"ă      Hint = "Hyperbolic arccotangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE SecButt AS QCOOLBTNă      Font = Arial9Bă      Top = 81ă      Left = 0ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Sec"ă      Hint = "Secant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CscButt AS QCOOLBTNă      Font = Arial9Bă      Top = 81ă      Left = 58ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Csc"ă      Hint = "Cosecant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ASecButt AS QCOOLBTNă      Font = Arial9Bă      Top = 81ă      Left = 116ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "ASec"ă      Hint = "Arcsecant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ACscButt AS QCOOLBTNă      Font = Arial9Bă      Top = 81ă      Left = 174ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "ACsc"ă      Hint = "Arccosecant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE SechButt AS QCOOLBTNă      Font = Arial9Wă      Top = 100ă      Left = 0ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Sech"ă      Hint = "Hyperbolic secant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CschButt AS QCOOLBTNă      Font = Arial9Wă      Top = 100ă      Left = 58ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Csch"ă      Hint = "Hyperbolic cosecant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ASechButt AS QCOOLBTNă      Font = Arial9Wă      Top = 100ă      Left = 116ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "ASech"ă      Hint = "Hyperbolic arcsecant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ACschButt AS QCOOLBTNă      Font = Arial9Wă      Top = 100ă      Left = 174ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "ACsch"ă      Hint = "Hyperbolic arccosecant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE IntButt AS QCOOLBTNă      Font = Arial9Bă      Top = 119ă      Left = 0ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Int"ă      Hint = "Largest integer less than or equal to input number"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE FracButt AS QCOOLBTNă      Font = Arial9Bă      Top = 119ă      Left = 58ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Frac"ă      Hint = "Returns fractional part of input number"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE FloorButt AS QCOOLBTNă      Font = Arial9Bă      Top = 119ă      Left = 116ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Floor"ă      Hint = "Rounds input number to integer closest to negative infinity"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CeilButt AS QCOOLBTNă      Font = Arial9Bă      Top = 119ă      Left = 174ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Ceil"ă      Hint = "Rounds input number to integer closest to positive infinity"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE LogButt AS QCOOLBTNă      Font = Arial9Wă      Top = 138ă      Left = 0ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Log"ă      Hint = "Logarithm (base 10)"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE LnButt AS QCOOLBTNă      Font = Arial9Wă      Top = 138ă      Left = 58ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Ln"ă      Hint = "Natural logarithm (base e)"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE InvButt AS QCOOLBTNă      Font = Arial9Wă      Top = 138ă      Left = 116ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Inv"ă      Hint = "Inverse (1/x)"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE PiButt AS QCOOLBTNă      Font = Arial9Wă      Top = 138ă      Left = 174ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Pi"ă      Hint = "Pi (3.14159265358979)"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE SqrtButt AS QCOOLBTNă      Font = Arial9Bă      Top = 157ă      Left = 0ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Sqrt"ă      Hint = "Square root"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CbrtButt AS QCOOLBTNă      Font = Arial9Bă      Top = 157ă      Left = 58ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Cbrt"ă      Hint = "Cube root"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE AbsButt AS QCOOLBTNă      Font = Arial9Bă      Top = 157ă      Left = 116ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Abs"ă      Hint = "Absolute value"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ExpButt AS QCOOLBTNă      Font = Arial9Bă      Top = 157ă      Left = 174ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Exp"ă      Hint = "e raised to the input number"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE sqrButt AS QCOOLBTNă      Font = Arial9Wă      Top = 176ă      Left = 0ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Sqr"ă      Hint = "Squared"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE BegParButt AS QCOOLBTNă      Font = Arial9Wă      Top = 24ă      Left = 290ă      Width = 29ă      Height = 18ă      Flat = 1ă      Caption = "("ă      Hint = "Left parenthesis"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE EndParButt AS QCOOLBTNă      Font = Arial9Wă      Top = 24ă      Left = 319ă      Width = 29ă      Height = 18ă      Flat = 1ă      Caption = ")"ă      Hint = "Right parenthesis"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE DotButt AS QCOOLBTNă      Font = Arial9Bă      Top = 157ă      Left = 290ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "."ă      Hint = "Decimal point"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE FactButt AS QCOOLBTNă      Font = Arial9Wă      Top = 176ă      Left = 58ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Fact"ă      Hint = "Factorial"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE RandButt AS QCOOLBTNă      Font = Arial9Wă      Top = 176ă      Left = 116ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Rand"ă      Hint = "rand() = random decimal; rand(9) = random integer"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ModButt AS QCOOLBTNă      Font = Arial9Wă      Top = 176ă      Left = 174ă      Width = 58ă      Height = 18ă      Flat = 1ă      Caption = "Mod"ă      Hint = "Modulus"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă  END CREATEă  CREATE DXScreen AS QCanvasă    Top = 75ă    Left = 1ă    Width = 248ă    Height = 212ă    Visible = 0ă    Cursor = 1ă    Font = Vivaldiă    Color = 0ă  END CREATEă  CREATE HistoryView AS QLISTBOXă    Top = 75ă    Left = 1ă    Width = 248ă    Height = 212ă    Color = clBlackă    Font = Arial9Wă    Visible = 0ă    Enabled = 0ă    BorderStyle = bsNoneă  END CREATEă  CREATE MessForm AS QFORM    ă    Centeră    Height = 80ă    Width = 300ă    Color = &HABC111ă    Visible = 0ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    BorderStyle = bsSingleă    Caption = "Message board"ă    OnClose = CloseGenerică    CREATE MessEdit AS QEDITă      Top = 5ă      Left = 1ă      Width = 290ă      OnKeyPress = MessageEdită    END CREATEă    CREATE MessButton AS QButtonă      Top = 31ă      Left = 1ă      Width = 290ă      Height = 20ă      Caption = "Enter message here"ă      OnClick = preMessageEdită    END CREATEă  END CREATE  ă  CREATE PanelExtra AS QPANELă    Top = 75ă    Left = 1ă    Width = 248ă    Height = 212ă    Color = 77777777ă    Visible = 1ă    'CREATE Backglass AS QIMAGEă      'Autosize = 1ă      'Align = alClientă      'BMPHandle = autumnă    'END CREATEă    CREATE BFactor AS QCOOLBTNă	  Caption = "n!"ă        Left = 1ă        Top = 10ă        Width = 48ă        Flat = 1ă        'Color = clBlackă	  Font = Arial9Gă        Hint = "Factorial"ă        Showhint = 1ă	  OnClick = Factorială    END CREATEă    CREATE ModOper AS QCOOLBTNă	  Caption = "MOD"ă        Left = 51ă        Top = 10ă        Width = 48ă        Flat = 1ă        'Color = clBlackă	  Font = Arial9Gă        Hint = "Modulus operator"ă        Showhint = 1ă	  OnClick = Modulusă    END CREATEă    CREATE CoordB AS QCOOLBTNă	  Caption = "Coord"ă        Left = 101ă        Top = 180ă        Width = 48ă        Flat = 1ă        'Color = clBlackă	  Font = Arial9Ră        Hint = "Rec-Polar Converter"ă        Showhint = 1ă	  OnClick = Coordinateă    END CREATEă    CREATE CubedB AS QCOOLBTNă	  Caption = "X" + CHR$(0179)ă        Left = 151ă        Top = 10ă        Width = 48ă        Flat = 1ă        'Color = clBlackă	  Font = Arial11Gă        Hint = "Cubed"ă        Showhint = 1ă	  OnClick = Cubedă    END CREATEă    CREATE CubeRootB AS QCOOLBTNă	  Caption = "3" + CHR$(214)ă        Left = 201ă        Top = 10ă        Width = 48ă        Flat = 1ă        'Color = clBlackă	  Font = SymbolGă        Hint = "Cube root"ă        Showhint = 1ă	  OnClick = CubeRootă    END CREATEă    CREATE ft_mB AS QCOOLBTNă	  Caption = "ft>m"ă        Left = 1ă        Top = 43ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Feet to meters"ă        Showhint = 1ă	  OnClick = ButtonClickftmă    END CREATEă    CREATE m_ftB AS QCOOLBTNă	  Caption = "m>ft"ă        Left = 51ă        Top = 43ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Meters to feet"ă        Showhint = 1ă	  OnClick = ButtonClickmftă    END CREATEă    CREATE DateB AS QCOOLBTNă	  Caption = "Date"ă        Left = 101ă        Top = 43ă        Width = 48ă        Flat = 1ă        'Color = clBlackă	  Font = Arial9Wă        Hint = "New-Date Calculator"ă        Showhint = 1ă	  OnClick = NewDă    END CREATEă    CREATE kg_lbB AS QCOOLBTNă	  Caption = "kg>lb"ă        Left = 151ă        Top = 43ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Kilograms to pounds"ă        Showhint = 1ă	  OnClick = ButtonClickkglbă    END CREATEă    CREATE lb_kgB AS QCOOLBTNă	  Caption = "lb>kg"ă        Left = 201ă        Top = 43ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Pounds to kilograms"ă        Showhint = 1ă	  OnClick = ButtonClicklbkgă    END CREATEă    CREATE km_miB AS QCOOLBTNă	  Caption = "k>mi"ă        Left = 1ă        Top = 76ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Kilometers to miles"ă        Showhint = 1ă	  OnClick = ButtonClickkmmiă    END CREATEă    CREATE mi_kmB AS QCOOLBTNă	  Caption = "mi>k"ă        Left = 51ă        Top = 76ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Miles to kilometers"ă        Showhint = 1ă	  OnClick = ButtonClickmikmă    END CREATEă    CREATE PayB AS QCOOLBTNă	  Caption = "Pay"ă        Left = 101ă        Top = 76ă        Width = 48ă        Flat = 1ă        'Color = clBlueă	  Font = Arial9Wă        Hint = "Amortization payment"ă        Showhint = 1ă	  OnClick = Amortizationă    END CREATEă    CREATE F_CB AS QCOOLBTNă	  Caption = "°F>°C"ă        Left = 151ă        Top = 76ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Fahrenheit to Celsius"ă        Showhint = 1ă	  OnClick = ButtonClickFCă    END CREATEă    CREATE C_FB AS QCOOLBTNă	  Caption = "°C>°F"ă        Left = 201ă        Top = 76ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Celsius to Fahrenheit"ă        Showhint = 1ă	  OnClick = ButtonClickCFă    END CREATEă    CREATE sqf_sqmB AS QCOOLBTNă	  Caption = "f˛>m˛"ă        Left = 1ă        Top = 113ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Square feet to square meters"ă        Showhint = 1ă	  OnClick = ButtonClickft2m2ă    END CREATEă    CREATE sqm_sqfB AS QCOOLBTNă	  Caption = "m˛>f˛"ă        Left = 51ă        Top = 113ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Square meters to square feet"ă        Showhint = 1ă	  OnClick = ButtonClickm2ft2ă    END CREATEă    CREATE CIntB AS QCOOLBTNă	  Caption = "Int"ă        Left = 101ă        Top = 113ă        Width = 48ă        Flat = 1ă        'Color = clBlueă	  Font = Arial9Wă        Hint = "Compound interest"ă        Showhint = 1ă	  OnClick = CompoundInterestă    END CREATEă    CREATE DectoHexB AS QCOOLBTNă	  Caption = "D>H"ă        Left = 151ă        Top = 113ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Decimal to hexadecimal"ă        Showhint = 1ă	  OnClick = DectoHexă    END CREATEă    CREATE DectoBinB AS QCOOLBTNă	  Caption = "D>B"ă        Left = 201ă        Top = 113ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Decimal to binary"ă        Showhint = 1ă	  OnClick = DectoBină    END CREATEă    CREATE ltr_galB AS QCOOLBTNă	  Caption = "lt>gal"ă        Left = 1ă        Top = 147ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Liters to gallons"ă        Showhint = 1ă	  OnClick = LittoGală    END CREATEă    CREATE gal_ltrB AS QCOOLBTNă	  Caption = "gal>lt"ă        Left = 51ă        Top = 147ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Gallons to liters"ă        Showhint = 1ă	  OnClick = GaltoLită    END CREATEă    CREATE DayDiffB AS QCOOLBTNă	  Caption = "Days"ă        Left = 101ă        Top = 147ă        Width = 48ă        Flat = 1ă        'Color = clBlackă	  Font = Arial9Wă        Hint = "Days-Difference Calculator"ă        Showhint = 1ă	  OnClick = DaysDă    END CREATEă    CREATE day_hrB AS QCOOLBTNă	  Caption = "da>hr"ă        Left = 151ă        Top = 147ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Days to hours"ă        Showhint = 1ă	  OnClick = DaytoHră    END CREATEă    CREATE hr_dayB AS QCOOLBTNă	  Caption = "hr>da"ă        Left = 201ă        Top = 147ă        Width = 48ă        Flat = 1ă        'Color = 66666666ă	  Font = Arial9Yă        Hint = "Hours to days"ă        Showhint = 1ă	  OnClick = HrtoDayă    END CREATEă    CREATE Clock AS QCOOLBTNă	  Caption = "Clock"ă        Left = 1ă        Top = 180ă        Width = 48ă        Flat = 1ă        'Color = clBlackă	  Font = Arial9Gă        Hint = "World Clock"ă        Showhint = 1ă	  OnClick = TZoneă    END CREATEă    CREATE Converter AS QCOOLBTNă	  Caption = "Equiv"ă        Left = 51ă        Top = 180ă        Width = 48ă        Flat = 1ă        'Color = clBlackă	  Font = Arial9Gă        Hint = "Equivalents Converter"ă        Showhint = 1ă	  OnClick = Equivalentsă    END CREATEă    CREATE QuadB AS QCOOLBTNă	  Caption = "Quad"ă        Left = 101ă        Top = 10ă        Width = 48ă        Flat = 1ă        'Color = clBlackă	  Font = Arial9Ră        Hint = "Click to get quadratic roots"ă        Showhint = 1ă	  OnClick = Quadratică    END CREATEă    CREATE Trigo AS QCOOLBTNă	  Caption = "Trigo"ă        Left = 151ă        Top = 180ă        Width = 48ă        Flat = 1ă        'Color = clBlackă	  Font = Arial9Gă        Hint = "Trigonometric functions"ă        Showhint = 1ă	  OnClick = TrigFuncă    END CREATEă    CREATE Statist AS QCOOLBTNă	  Caption = "Stat"ă        Left = 201ă        Top = 180ă        Width = 48ă        Flat = 1ă        'Color = clBlackă	  Font = Arial9Gă        Hint = "Statistics functions"ă        Showhint = 1ă	  OnClick = Statsă    END CREATEă  END CREATEă  CREATE HexForm AS QFORMă    Centeră    Height = 80ă    Width = 300ă    Color = &HABC111ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    Caption = "Hexadecimal to decimal"ă    OnClose = preHextoDecă    CREATE HexEdit AS QEDITă      Top = 5ă      Left = 1ă      Width = 290ă      OnKeyPress = HextoDecă    END CREATEă    CREATE HexButton AS QButtonă      Top = 31ă      Left = 1ă      Width = 290ă      Height = 20ă      Caption = "Enter hexadecimal number"ă      OnClick = preHextoDecă    END CREATEă  END CREATEă  CREATE BinForm AS QFORM    ă    Centeră    Height = 80ă    Width = 300ă    Color = &HABC111ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    Caption = "Binary to decimal"ă    OnClose = preBintoDecă    CREATE BinEdit AS QEDITă      Top = 5ă      Left = 1ă      Width = 290ă      OnKeyPress = BintoDecă    END CREATEă    CREATE BinButton AS QButtonă      Top = 31ă      Left = 1ă      Width = 290ă      Height = 20ă      Caption = "Enter binary number"ă      OnClick = preBintoDecă    END CREATEă  END CREATEă  CREATE ColorForm AS QFORM    ă    Visible = 0ă    Centeră    Width = 400ă    Height = 80ă    Color = &HABC111ă    BorderStyle = bsSingleă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    Caption = "Background Color"ă    OnClose = CloseGenerică    CREATE ColorPanel AS QBUTTONă      Top = 32ă      Height = 22ă      Width = 400ă      Caption = "Click a button to change the background color. If OK, click this bar."ă      OnClick = ColorChangeBut ă    END CREATEă    CREATE Blue AS QOVALBTNă      Color = &HFF0000ă      Left = 2ă      Height = 30ă      Width = 30ă      OnClick = ChangeBlueă    END CREATEă    CREATE Burgundy AS QOVALBTNă      Color = &H00EABă      Left = 32ă      Height = 30ă      Width = 30ă      OnClick = ChangeBurgundyă    END CREATEă    CREATE Green AS QOVALBTNă      Color = &HABC111ă      Left = 62ă      Height = 30ă      Width = 30ă      OnClick = ChangeGreenă    END CREATEă    CREATE Purple AS QOVALBTNă      Color = &HFF00FFă      Left = 92ă      Height = 30ă      Width = 30ă      OnClick = ChangePurpleă    END CREATEă    CREATE White AS QOVALBTNă      Color = &HFFFFFFă      Left = 122ă      Height = 30ă      Width = 30ă      OnClick = ChangeWhiteă    END CREATEă    CREATE Black AS QOVALBTNă      Color = 0ă      Left = 152ă      Height = 30ă      Width = 30ă      OnClick = ChangeBlackă    END CREATEă    CREATE Powder AS QOVALBTNă      Color = 226081ă      Left = 182ă      Height = 30ă      Width = 30ă      OnClick = ChangePowderă    END CREATEă    CREATE Flesh AS QOVALBTNă      Color = &HAAAFFFă      Left = 212ă      Height = 30ă      Width = 30ă      OnClick = ChangeFleshă    END CREATEă    CREATE Chrome AS QOVALBTNă      Color = &H00EFFFă      Left = 242ă      Height = 30ă      Width = 30ă      OnClick = ChangeChromeă    END CREATEă    CREATE Lavender AS QOVALBTNă      Color = &HCEAAAAă      Left = 272ă      Height = 30ă      Width = 30ă      OnClick = ChangeLavenderă    END CREATEă    CREATE Etat AS QOVALBTNă      Color = &H0BCDEFă      Left = 302ă      Height = 30ă      Width = 30ă      OnClick = ChangeEtată    END CREATEă    CREATE Avocado AS QOVALBTNă      Color = &HFDCBAă      Left = 332ă      Height = 30ă      Width = 30ă      OnClick = ChangeAvocadoă    END CREATEă    CREATE Cobalt AS QOVALBTNă      Color = &HBBA00Bă      Left = 362ă      Height = 30ă      Width = 30ă      OnClick = ChangeCobaltă    END CREATEă  END CREATEă  CREATE NoteProductForm AS QFORM    ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/1.4ă    Width = 340 '320ă    Height = 205ă    Visible = 0ă    Color = &HABC111ă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    FormStyle = fsStayOnTopă    Caption = "Notes on Calculait"ă    OnClose = CloseNotesă    CREATE DXNotes AS QCanvasă      Top = 21ă      Left = 242ă      Height = 63ă      Width = 84ă      Color = 0ă      Cursor = -21ă      Hint = "Click to email comment or bug report."ă      Showhint = 1ă      OnClick = EmailMeă    END CREATEă    CREATE ProductList AS QLISTBOXă	Width = 232ă      Height = 177ă      AddItems "Welcome!"ă      AddItems ""ă      AddItems "Here's an easy-to-use, customizable ă      AddItems "32-bit Windows multifunction scientific ă      AddItems "calculator that's also a world clock.ă      AddItems "Although designed as a versatile tool foră      AddItems "the nonprofessional, it has now acquiredă      AddItems "a whole portmanteau of computatională      AddItems "functionalities, including a powerful ă      AddItems "expression evaluator, suitable for theă      AddItems "engineer or scientist. Still, it retainsă      AddItems "many of the fun features that were  ă      AddItems "originally included for the casual user.ă      AddItems ""ă      AddItems "Features:"ă      AddItems "	*   Math-Expression Solveră      AddItems "	       w/ Functions Selectoră      AddItems "	*   Scientific Calculatoră      AddItems "	*   Pythagorean Calculatoră      AddItems "	*   Quadratic-Equation Calculatoră      AddItems "	*   Cubic-Equation Calculatoră      AddItems "	*   Statistics Calculatoră      AddItems "	*   Financial Calculatoră      AddItems "	*   Date-Days Calculatoră      AddItems "	*   Drake-Equation Calculatoră      AddItems "	*   Equivalents Converteră      AddItems "	*   English-Metric Converteră      AddItems "	*   Random Number Generatoră      AddItems "	*   Animated Message Boardă      AddItems "	*   History Tapeă      AddItems "	*   Constants Libraryă      AddItems "	*   Rec-Polar Coordinates Converteră      AddItems "	*   World Clock     ă      AddItems ""ă      AddItems "Each of these components resides in a"ă      AddItems "resizable form of its own. This way you"ă      AddItems "can have more than one (or all) the"ă      AddItems "components open at once! For example,"ă      AddItems "you can have the World Clock up even"ă      AddItems "as you compute compound interests and"ă      AddItems "convert feet to meters without you"ă      AddItems "having to trawl many embedded menus"ă      AddItems "and to switch from one to another."ă      AddItems ""ă      AddItems "Reminders:"ă      AddItems "  »  Calculait is a 32-bit application for"ă      AddItems "      Windows 95/98/2000/Me/NT. It "ă      AddItems "      runs best on Pentium PCs. For slower"ă      AddItems "      machines (486s), simply turn off the"ă      AddItems "      graphics via Screen > Screen off."ă      AddItems "  »  Turning off the screen brings up a"ă      AddItems "      plate of convenience buttons, most"ă      AddItems "      of which are shortcut counterparts of"ă      AddItems "      features available on the different"ă      AddItems "      drop-down menus."ă      AddItems "  »  16-bit high-color screen setting is"ă      AddItems "      recommended."ă      AddItems "  »  Calculait is mouse and keyboard"ă      AddItems "      enabled. You can use either to enter"ă      AddItems "      data or navigate the menus."ă      AddItems "  »  Input is calculated as entered, i.e.ă      AddItems "      1 + 2 * 3 + 4 equals 13 NOT 24. Ifă      AddItems "      you want calculation by precedenceă      AddItems "      you can use the Math-Expression ă      AddItems "      Solver.                       ă      AddItems "  »  Results on the display can be saved"ă      AddItems "      to the Clipboard for use by other"ă      AddItems "      applications through Edit > Copy."ă      AddItems "      Conversely, numbers or text on the"ă      AddItems "      Clipboard can be copied to the"ă      AddItems "      the display through Edit > Paste."ă      AddItems "  »  The Panel display, when clicked, ă      AddItems "      rounds result to the nearest integer.ă      AddItems "  »  Almost all buttons have each a hint"ă      AddItems "      bubble to explain its use. Buttons"ă      AddItems "      without a hint bubble have self-"ă      AddItems "      explanatory labels."ă      AddItems "  »  The Options menu enables you to"ă      AddItems "      change the background color via"ă      AddItems "      Color. You can also turn off the"ă      AddItems "      sound effects through Sound off."ă      AddItems "  »  The Uses menu lets you access"ă      AddItems "      the Scientific/Statistics/Financial/"ă      AddItems "      Date-Days/Pythagorean/Quadratic-ă      AddItems "      Equation/Cubic-Equation Calculators,ă      AddItems "      Math-Expression Solver, Equivalents/"ă      AddItems "      Rec-Polar Converters,World Clock, ă      AddItems "	     and Random Number Generator."ă	AddItems "  »  Output is centered for better"ă      AddItems "      readability. Four formats are"ă      AddItems "      available: Financial, Scientific,"ă      AddItems "      Comma-separated, and User-set."ă	AddItems "  »  The keys are arranged in a more"ă      AddItems "      natural manner (i.e. left to right)."ă      AddItems "  »  The % button works differently from"ă      AddItems "      traditional % buttons to make it"ă      AddItems "      more intuitive and useful. Example:"ă      AddItems "      to get 6 percent of 250, you simply"ă      AddItems "      press 6, press %, enter 250, then"ă      AddItems "      press Answer."ă	AddItems "  »  Value stored via M+ or MN can be"ă      AddItems "      previewed by placing pointer over"ă      AddItems "      the MR button."ă      AddItems "  »  This Help file is hard-wired into"ă      AddItems "      Calculait to allow instantaneous"ă      AddItems "      access. No need to open another"ă      AddItems "      program or navigate other menus."ă      AddItems "      A separate help.txt version can be"ă      AddItems "      read with your word processor."ă      AddItems ""ă      AddItems "World Clock:"ă      AddItems "  »  The first time you use the World"ă	AddItems "      Clock you'll be asked to enter the"ă	AddItems "      city you're in. If you change your"ă	AddItems "      location, you can change your time"ă      Additems "      zone via Options > Change city."ă      AddItems "  »  The accuracy of the World Clock"ă	AddItems "      depends on your PC's internal clock."ă	AddItems "      If it's incorrectly set, then the"ă      AddItems "      World Clock will give the wrong time."ă      AddItems "  »  Cities/regions that don't have"ă      AddItems "      their own buttons but are in the"ă      AddItems "      same time zone as the city/region"ă      AddItems "      chosen are listed in a hint bubble."ă      AddItems "      Just point to the button of choice"ă      AddItems "      and that hint bubble will pop up."ă      AddItems "      In general, cities in the same"ă      AddItems "      country are in the same time zone."ă      AddItems "  »  The World Clock displays standard" ă      AddItems "      times only. For cities on DST, like"ă      AddItems "      New York, add one hour."ă      AddItems "  »  You can click the time panel to ă      AddItems "      toggle between standard time and ă      AddItems "      24-hour military time, relative to ă      AddItems "      the active time zone. Calculait  ă      AddItems "      remembers this new setting andă      AddItems "      loads it the next time you useă      AddItems "      Calculait.ă      AddItems "  »  You can also click the date panel to ă      AddItems "      toggle between date and day of theă      AddItems "      week, relative to the active timeă      AddItems "      zone.Again, Calculait remembersă      AddItems "      this new setting and loads it theă      AddItems "      next time you use Calculait. Three ă      AddItems "      date options can be used:ă      AddItems "      mm-dd-yyyy, dd-mm-yyyy, yyyy-mm-dd.ă      AddItems "  »  A convenience button allows theă      AddItems "      international user easy access to  ă      AddItems "      the English-Metric converter fromă      AddItems "      the World Clock.ă      AddItems ""ă      AddItems "Equivalents Converter"ă      AddItems "  »  The Equivalents Converter has a"ă      AddItems "      wealth of 82 measures categorized"ă      AddItems "      into Length, Area, Volume,"ă      AddItems "      Mass/Weight, Temparature, Power"ă      AddItems "      Speed, Kitchen Measures, Time,"ă      AddItems "      Pressure, Angle, and Number.ă      AddItems "  »  It has 2 components: English-Metrică      AddItems "      and Equivalents by Category.ă      AddItems "  »  It can be accessed via Uses >"ă      AddItems "      Equivalents, or by clicking Convert"ă      AddItems "      (turn off the screen [i.e. Message"ă      AddItems "      Board] first.)"ă      AddItems "  »  The English-Metric component cană      AddItems "      be accessed from the World Clock."ă      AddItems ""ă      AddItems "Statistics Calculator"ă      AddItems "  »  The Statistics Calculator computes"ă      AddItems "      for pop. & samp. standard deviations,"ă      AddItems "      correlation, mean, sum, number of"ă      AddItems "      entries, sum of squares and sorts."ă      AddItems "  »  Use either +  -  *  ÷ to input data"  ă      AddItems "      for processing."ă      AddItems "  »  Entries can be viewed on the"ă      AddItems "      Statistics tape."ă      AddItems "  »  You can save your data entries via"ă      AddItems "      File > Save stats tape."ă      AddItems "  »  It can be accessed via Uses >"ă      AddItems "      Statistics, or by clicking Stat"ă      AddItems "      (turn off the screen [i.e. Message"ă      AddItems "      Board] first.)"ă      AddItems ""ă      AddItems "Scientific Calculator"ă      AddItems "  »  The Scientific Calculator has an"ă      AddItems "      extensive library of trigonometric"ă      AddItems "      functions, each with its own button."ă      AddItems "      They default to degrees but that can"ă      AddItems "      easily be changed to radians."ă      AddItems "  »  The trigonometric functions output"ă      AddItems "      useful values at their range limitsă      AddItems "      (e.g. COS(90) = 0 instead of wrongă      AddItems "      results like -3.49148336110938E-15,"ă      AddItems "      the result of overflow)."ă      AddItems "  »  The trigonometric functions are"ă      AddItems "      accessed via Uses > Trigonometric"ă      AddItems "      functions, or by clicking Trigo"ă      AddItems "      (turn off the screen [i.e. Message"ă      AddItems "      Board] first.)"ă      AddItems "  »  Degree entries should normally be in"ă      AddItems "      decimal format. Deg-min-sec entries"ă      AddItems "      can be converted to pure degrees"ă      AddItems "      via the Uses-Equivalents menu."ă      AddItems "  »  Use ' as separator between degrees"ă      AddItems "      and minutes, and between minutes"ă      AddItems "      and seconds."ă      AddItems "  »  The Scientific Calculator can also do"ă      AddItems "      fraction arithmetic with fraction output."ă      AddItems "      Remember to use \ (backslash):"ă      AddItems "      e.g. 3Ľ is 3\1\4,  ˝ is 1\2"ă      AddItems "  »  Use MOD like you would any of the"ă      AddItems "      arithmetic operators: e.g. 7 MOD 3"ă      AddItems "      gives 1,  8 MOD 2 gives 0." ă      AddItems ""ă      AddItems "Math-Expression Solveră      AddItems "  »  The Math-Expression Solver is aă      AddItems "      full-pledged expression evaluatoră      AddItems "      that can evaluate expressions like:ă      AddItems "      Sin(.1)^2 - 3*Ln(Tan(.1*PI)).ă      AddItems "  »  The precedence rule followed is: ă      AddItems "      ^   *   /   \   +   -ă      AddItems "  »  To access the Math-Expression ă      AddItems "      Solver, go to Uses or click on the ă      AddItems "      black band above or below the keys.ă      AddItems "  »  The Functions Selector automaticallyă      AddItems "      comes up whenever the Expressionă      AddItems "      Solver is invoked. Just click on theă      AddItems "      the appropriate function buttons toă      AddItems "      build your math expression.ă      AddItems "  »  You can alternatively input theă      AddItems "      functions by typing them in oră      AddItems "      simply by clicking the appropriateă      AddItems "      buttons.ă      AddItems "  »  If you're typing, refer to your Functionsă      AddItems "      Selector for the function syntax.ă      AddItems "      The functions are NOT case-sensitive.ă      AddItems "  »  Remember, don't put a + after E: i.e.ă      AddItems "      1000 is 1E3 NOT 1E+3. However, ă      AddItems "      .001 can be written as 1E-3.ă      AddItems "  »  To clear your entry, just press Esc.  ă      AddItems "" ă      AddItems "Financial Calculator"ă      AddItems "  »  The Financial Calculator computes"ă      AddItems "      for interest/factor rates, compound"ă      AddItems "      interest, present/future values,"ă      AddItems "      and amortization payment."ă      AddItems "  »  Functions are accessed via Uses >"ă      AddItems "      Financial, or by clicking the"ă      AddItems "      appropriate Financial blue buttons"ă      AddItems "      (turn off the screen [i.e. Message"ă      AddItems "      Board] first.)"ă      AddItems ""ă      AddItems "History Tape"      ă      AddItems "  »  Your calculations are automatically"ă      AddItems "      posted on the History Tape. You can"ă      AddItems "      save its contents to file by going"ă      AddItems "      to File > Save history tape."ă      AddItems "  »  Turn on the History Tape by going to"ă      AddItems "      Screen > History tape on."      ă      AddItems ""ă      AddItems "Date-Days Calculator"      ă      AddItems "  »  Get the number of days between"ă      AddItems "      two dates or determine a new date"ă      AddItems "      given the number of days before or"ă      AddItems "      after a given date via Uses > Dates."ă      AddItems "      Choose Days Difference or New Date."      ă      AddItems "  »  To get a new date in the past from,ă      AddItems "      say, today, simply enter theă      AddItems "      number of days in the Days past (left)ă      AddItems "      field. Conversely, to get a date ină      AddItems "      the future, enter the number of ă      AddItems "      days in the Days hence (right) field.ă      AddItems "  »  If both Days past and Days hence fieldsă      AddItems "      are filled, it calculates days past.ă      AddItems "  »  To calculate the difference betweenă      AddItems "      two dates, you must fill in sixă      AddItems "      fields, three to each row. The firstă      AddItems "      field of either row is for the month;ă      AddItems "      the second, for the day; the third,ă      AddItems "      for the year.ă      AddItems "  »  You can use either numbers or wordsă      AddItems "      (e.g. 01, 1, Jan, january), theă      AddItems "      calculator will know what to do. Theă      AddItems "      year, however, must be written in fullă      AddItems "      and in numbers.ă      AddItems "  »  Press Enter while in any of the fieldsă      AddItems "      or click on the appropriate button to ă      AddItems "      get the answer.ă      AddItems "  »  Theoretically, it can calculate theă      AddItems "      date from Year 0 to beyond Year 60000,ă      AddItems "      a span of over 22 million days. For aă      AddItems "      meaningful result, however, confine ă      AddItems "      dates to after October 15, 1582, the ă      AddItems "      day our calendar system, the Gregorian, ă      AddItems "      replaced the Julian system in most ofă      AddItems "      the West.ă      AddItems ""       ă      AddItems "Animated Message Board"      ă      AddItems "  »  Personal reminders or messages can"ă      AddItems "      be posted on the Message Board"ă      AddItems "      via Options > Change message."ă      AddItems "      Your post will automatically be"ă      AddItems "      saved and will be available for you"ă      AddItems "      on your next Message Board visit."     ă      AddItems ""      ă      AddItems "Random Number Generator"ă      AddItems "  »  This is a simple RNG that asks for"ă      AddItems "      the minimum and maximum values of"ă      AddItems "      your range. If you don't supply a"ă      AddItems "      minimum, it assumes 0."ă      AddItems "  »  It's accessed via Uses > Random,"ă      AddItems "      or by clicking Rand (turn off the"ă      AddItems "      screen [i.e. Message Board] first."ă      AddItems ""           ă      AddItems "Programming"ă      AddItems "  »  Calculait was written in Rapid-Q,"ă      AddItems "      a compiler developed by William Yu."ă      AddItems "      It's also freeware and downloadable"ă      AddItems "      at www.basicguru.com/abc/rapidq."     ă    END CREATEă    CREATE NotesP0 AS QLABELă      Top = 5ă      Left = 235ă      Font = Arial9Bă      Caption = "    Calculait 3.41"ă      Layout = -1ă      LabelStyle = 1ă      Hint = "Click to visit website"ă      ShowHint = 1ă      OnClick = SendMeă    END CREATEă    CREATE NotesP1 AS QLABELă      Top = 85ă      Left = 235ă      Caption = "  Copyright (c) 2001" + CHR$(13) + "    Achilles B. Mina"ă    END CREATEă    CREATE NotesP3 AS QLABELă      Top = 130ă      Left = 235ă      Caption = "This is FREEWARE." + CHR$(13) + " Not for commercial" + CHR$(13) + "       distribution."ă    END CREATEă  END CREATEă  CREATE CubicForm AS QFORMă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Cubic Equation"ă    Width = 238ă    Height = 205ă    Visible = 0ă    Color = &HABC111ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = CloseGenerică    CREATE CubicPanel AS QPanelă      Font = ArialBă      Left = 10ă      Top = 5ă      Width = 220ă      Height = 15ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Caption = "x" + CHR$(0179) + " + ax˛ + bx + c"ă    END CREATEă    CREATE Ac AS QEDITă      Left = 10ă      Top = 30ă      Width = 45ă      Height = 21ă      TabOrder = 1ă      OnKeyPress = CubicRootsă    END CREATEă    CREATE CubicPanel1 AS QPanelă      Font = ArialBă      Alignment = taLeftJustifyă      Left = 56ă      Top = 31ă      Width = 53ă      Height = 21ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Caption = "x˛"ă    END CREATE    ă    CREATE Bc AS QEDITă      Left = 95ă      Top = 30ă      Width = 45ă      Height = 21ă      TabOrder = 2ă      OnKeyPress = CubicRootsă    END CREATEă    CREATE CubicPanel2 AS QPanelă      Font = ArialBă      Alignment = taLeftJustifyă      Left = 141ă      Top = 31ă      Width = 47ă      Height = 21ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Caption = "x"ă    END CREATEă    CREATE Cc AS QEDITă      Left = 174ă      Top = 30ă      Width = 45ă      Height = 21ă      TabOrder = 3ă      OnKeyPress = CubicRootsă    END CREATE      ă    CREATE CubicButt AS QBUTTONă      Font = Arial9Bă      Caption = "Press to get roots"ă      Left = 10ă      Top = 60ă      Width = 210ă      TabOrder = 6ă      OnClick = preCubicRootsă    END CREATEă    CREATE CubicPanel3 AS QPANELă      Left = 10ă      Top = 85ă      Width = 210ă      Height = 30ă      Color = Blackă      Font = TimeFontă      Cursor = -21ă      Hint = "Click to transfer value to display window"ă      Showhint = 1ă      OnClick = CubicRoot1ă    END CREATEă    CREATE CubicPanel4 AS QPANELă      Left = 10ă      Top = 116ă      Width = 210ă      Height = 30ă      Color = Blackă      Font = TimeFontă      Cursor = -21ă      Hint = "Click to transfer value to display window"ă      Showhint = 1ă      OnClick = CubicRoot2ă    END CREATEă    CREATE CubicPanel5 AS QPANELă      Left = 10ă      Top = 147ă      Width = 210ă      Height = 30ă      Color = Blackă      Font = TimeFontă      Cursor = -21ă      Hint = "Click to transfer value to display window"ă      Showhint = 1ă      OnClick = CubicRoot3ă    END CREATE         ă  END CREATEă  CREATE DrakeForm AS QFORMă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Drake Equation"ă    Width = 238ă    Height = 290ă    Visible = 0ă    Color = &HABC111ă    Cursor = 1ă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = CloseGenerică    CREATE DrakePanel1 AS QPANELă      Color = Blackă      Cursor = 1ă      Font = TimeFontă      Left = 5ă      Top = 3ă      Width = 220ă      Height = 25ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Caption = "N = R*Fp*Ne*Fl*Fi*Fc*L"ă    END CREATEă    CREATE Rt AS QEDITă      Left = 10ă      Top = 30ă      Width = 90ă      Height = 20ă      TabOrder = 1ă      OnKeyPress = DrakeSolveă      Hint = "Rate at which suitable stars develop in our galaxy (number per year)"ă      ShowHint = 1ă    END CREATEă    CREATE RtPanel AS QPANELă      Cursor = 1ă      Caption = "R"ă      Font = ArialG1ă      Alignment = taLeftJustifyă      Left = 130ă      Top = 30ă      Width = 50ă      Height = 20ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Hint = "Rate at which suitable stars develop in our galaxy (number per year)"ă      ShowHint = 1ă    END CREATE    ă    CREATE Fp AS QEDITă      Left = 10ă      Top = 55ă      Width = 90ă      Height = 20ă      TabOrder = 2ă      OnKeyPress = DrakeSolveă      Hint = "Percentage (in whole numbers) of those stars with planets."ă      Showhint = 1ă    END CREATEă    CREATE FpPanel AS QPANELă      Cursor = 1ă      Caption = "Fp"ă      Font = ArialG1ă      Alignment = taLeftJustifyă      Left = 130ă      Top = 55ă      Width = 50ă      Height = 20ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Hint = "Percentage (in whole numbers) of those stars with planets"ă      Showhint = 1ă    END CREATEă    CREATE Ne AS QEDITă      Left = 10ă      Top = 80ă      Width = 90ă      Height = 20ă      TabOrder = 3ă      OnKeyPress = DrakeSolveă      Hint = "Number of earthlike planets in our galaxy"ă      Showhint = 1ă    END CREATEă    CREATE NePanel AS QPANELă      Cursor = 1ă      Caption = "Ne"ă      Font = ArialG1ă      Alignment = taLeftJustifyă      Left = 130ă      Top = 80ă      Width = 50ă      Height = 20ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Hint = "Number of earthlike planets in our galaxy"ă      Showhint = 1ă    END CREATEă    CREATE Fl AS QEDITă      Left = 10ă      Top = 105ă      Width = 90ă      Height = 20ă      TabOrder = 4ă      OnKeyPress = DrakeSolveă      Hint = "Percentage (in whole numbers) of those planets with life"ă      Showhint = 1ă    END CREATEă    CREATE FlPanel AS QPANELă      Cursor = 1ă      Caption = "Fl"ă      Font = ArialG1ă      Alignment = taLeftJustifyă      Left = 130ă      Top = 105ă      Width = 50ă      Height = 20ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Hint = "Percentage (in whole numbers) of those planets with life"ă      Showhint = 1ă    END CREATEă    CREATE Fi AS QEDITă      Left = 10ă      Top = 130ă      Width = 90ă      Height = 20ă      TabOrder = 5ă      OnKeyPress = DrakeSolveă      Hint = "Percentage (in whole numbers) of those planets with intelligent life"ă      Showhint = 1ă    END CREATEă    CREATE FiPanel AS QPANELă      Cursor = 1ă      Caption = "Fi"ă      Font = ArialG1ă      Alignment = taLeftJustifyă      Left = 130ă      Top = 130ă      Width = 50ă      Height = 20ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Hint = "Percentage (in whole numbers) of those planets with intelligent life"ă      Showhint = 1ă    END CREATEă    CREATE Fc AS QEDITă      Left = 10ă      Top = 155ă      Width = 90ă      Height = 20ă      TabOrder = 6ă      OnKeyPress = DrakeSolveă      Hint = "Percentage (in whole numbers) of those planets with technology"ă      Showhint = 1      ă    END CREATEă    CREATE FcPanel AS QPANELă      Cursor = 1ă      Caption = "Fc"ă      Font = ArialG1ă      Alignment = taLeftJustifyă      Left = 130ă      Top = 155ă      Width = 50ă      Height = 20ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Hint = "Percentage (in whole numbers) of those planets with technology"ă      Showhint = 1ă    END CREATEă    CREATE L AS QEDITă      Left = 10ă      Top = 180ă      Width = 90ă      Height = 20ă      TabOrder = 7ă      OnKeyPress = DrakeSolveă      Hint = "Lifetime of communicative civilizations (years)"ă      Showhint = 1ă    END CREATEă    CREATE LPanel AS QPANELă      Cursor = 1ă      Caption = "L"ă      Font = ArialG1ă      Alignment = taLeftJustifyă      Left = 130ă      Top = 180ă      Width = 50ă      Height = 20ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Hint = "Lifetime of communicative civilizations (years)"ă      Showhint = 1ă    END CREATEă    CREATE DrakeButt AS QBUTTONă      Cursor = -21ă      Font = Arial9Bă      Caption = "Compute ET"ă      Left = 10ă      Top = 205ă      Width = 210ă      TabOrder = 8ă      OnClick = preDrakeSolveă    END CREATEă    CREATE DrakePanel2 AS QPANELă      Cursor = 1ă      Left = 10ă      Top = 230ă      Width = 210ă      Height = 30ă      Color = Blackă      Font = TimeFontă      Hint = "Number of communicative civilizations"ă      Showhint = 1ă    END CREATEă    CREATE PopUpDrake AS QPOPUPMENUă      CREATE Menu1 AS QMENUITEMă        Caption = "The Drake Equation was first presented by the astronomer"ă      END CREATEă      CREATE Menu2 AS QMENUITEMă        Caption = "Dr. Frank Drake in 1961 and identifies specific factors thought" ă      END CREATEă      CREATE Menu3 AS QMENUITEMă        Caption = "to play a role in the development of technological civilizations."ă      END CREATEă      CREATE Menu4 AS QMENUITEMă        Caption = "Although no unique solution exists for the equation, it is,"ă      END CREATEă      CREATE Menu5 AS QMENUITEMă        Caption = "today, a generally accepted tool in the scientific community."ă      END CREATEă    END CREATE    ă  END CREATEă  CREATE QuadForm AS QFORM    ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Quadratic Equation"ă    Width = 238ă    Height = 205ă    Visible = 0ă    Color = &HABC111ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = CloseGenerică    CREATE QuadPanel AS QPanelă      Font = ArialBă      Left = 10ă      Top = 5ă      Width = 220ă      Height = 21ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Caption = "ax˛ + bx + c"ă    END CREATEă    CREATE Ax AS QEDITă      Left = 10ă      Top = 35ă      Width = 45ă      Height = 21ă      TabOrder = 1ă      OnKeyPress = QuadRootsă    END CREATEă    CREATE APanel AS QPanelă      Font = ArialBă      Alignment = taLeftJustifyă      Left = 56ă      Top = 36ă      Width = 53ă      Height = 21ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Caption = "x˛"ă    END CREATE    ă    CREATE Bx AS QEDITă      Left = 95ă      Top = 35ă      Width = 45ă      Height = 21ă      TabOrder = 2ă      OnKeyPress = QuadRootsă    END CREATEă    CREATE BPanel AS QPanelă      Font = ArialBă      Alignment = taLeftJustifyă      Left = 141ă      Top = 36ă      Width = 47ă      Height = 21ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Caption = "x"ă    END CREATEă    CREATE Cx AS QEDITă      Left = 174ă      Top = 35ă      Width = 45ă      Height = 21ă      TabOrder = 3ă      OnKeyPress = QuadRootsă    END CREATE      ă    CREATE QuadButt AS QBUTTONă      Font = Arial9Bă      Caption = "Press to get roots"ă      Left = 10ă      Top = 65ă      Width = 210ă      TabOrder = 6ă      OnClick = preQuadRootsă    END CREATEă    CREATE PosPanel AS QPANELă      Left = 10ă      Top = 90ă      Width = 210ă      Color = Blackă      Font = TimeFontă      Cursor = -21ă      Hint = "Click to transfer value to display window"ă      Showhint = 1ă      OnClick = getPosPanel ă    END CREATEă    CREATE NegPanel AS QPANELă      Left = 10ă      Top = 130ă      Width = 210ă      Color = Blackă      Font = TimeFontă      Cursor = -21ă      Hint = "Click to transfer value to display window"ă      Showhint = 1ă      OnClick = getNegPanelă    END CREATE         ă  END CREATEă  CREATE PythaForm AS QFORM    ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Pythagorean Equation"ă    Width = 238ă    Height = 205ă    Visible = 0ă    Color = &HABC111ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = CloseGenerică    CREATE PythaPanel AS QPanelă      Font = ArialBă      Left = 10ă      Top = 5ă      Width = 210ă      Height = 21ă      Color = &HABC111ă      BevelInner = bvNone 'bvLoweredă      BevelOuter = bvNone 'bvRaisedă      Bevelwidth = bvNone '1 ă      Caption = "a˛ + b˛ = c˛"ă    END CREATEă    CREATE Ap AS QEDITă      Left = 10ă      Top = 35ă      Width = 45ă      Height = 21ă      TabOrder = 1ă      OnKeyPress = SolvePythaă    END CREATE    ă    CREATE Bp AS QEDITă      Left = 95ă      Top = 35ă      Width = 45ă      Height = 21ă      TabOrder = 2ă      OnKeyPress = SolvePythaă    END CREATEă    CREATE Cp AS QEDITă      Left = 174ă      Top = 35ă      Width = 45ă      Height = 21ă      TabOrder = 3ă      OnKeyPress = SolvePythaă    END CREATE      ă    CREATE PythaButt AS QBUTTONă      Font = Arial9Bă      Caption = "Press to get unknown variable"ă      Left = 10ă      Top = 65ă      Width = 210ă      TabOrder = 6ă      OnClick = preSolvePythaă    END CREATEă    CREATE PythaPanel1 AS QPANELă      Left = 10ă      Top = 90ă      Width = 210ă      Color = Blackă      Font = TimeFontă      Cursor = -21ă      Hint = "Click to transfer value to display window"ă      Showhint = 1ă      OnClick = getPythaPanel1ă    END CREATEă    CREATE PythaPanel2 AS QPANELă      Left = 10ă      Top = 130ă      Width = 210ă      Color = Blackă      Font = TimeFontă      Cursor = -21ă      Hint = "Click to transfer value to display window"ă      Showhint = 1ă      OnClick = getPythaPanel2ă    END CREATE         ă  END CREATEă  CREATE CoordForm AS QFORM    ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Coordinate Systems"ă    Width = 238ă    Height = 205ă    Visible = 0ă    Color = &HABC111ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = CloseGenerică    CREATE RectPolarB AS QRADIOBUTTONă      Left = 10ă      Top = 10ă      Checked = 1ă      OnClick = PRRadioă    END CREATEă    CREATE PolarRectB AS QRADIOBUTTONă      Left = 205ă      Top = 10ă      Checked = 0ă      OnClick = PRRadioă    END CREATEă    CREATE PolarRect AS QPANELă      Left = 25ă      Top = 8ă      Width = 180ă      Height = 20ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Font = Arial9Bă      Caption = "< Rect to Polar   Polar to Rect >"ă    END CREATEă    CREATE xRadius AS QEDITă      Left = 10ă      Top = 35ă      Width = 45ă      Height = 21ă      TabOrder = 1ă      OnKeyPress = RecPolară    END CREATEă    CREATE xPanel AS QPANELă      Font = ArialBă      Alignment = taLeftJustifyă      Left = 56ă      Top = 36ă      Width = 20ă      Height = 21ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Caption = "x"ă    END CREATE    ă    CREATE yPanel AS QPANELă      Font = ArialBă      Alignment = taRightJustifyă      Left = 154ă      Top = 36ă      Width = 20ă      Height = 21ă      Color = &HABC111ă      BevelInner = bvNoneă      BevelOuter = bvNoneă      Bevelwidth = bvNoneă      Caption = "y"ă    END CREATEă    CREATE yAngle AS QEDITă      Left = 174ă      Top = 35ă      Width = 45ă      Height = 21ă      TabOrder = 3ă      OnKeyPress = RecPolară    END CREATE      ă    CREATE CoordButt AS QBUTTONă      Font = Arial9Bă      Caption = "Press to convert"ă      Left = 10ă      Top = 65ă      Width = 210ă      TabOrder = 6ă      OnClick = preRecPolară    END CREATEă    CREATE CoordPanel1 AS QPANELă      Left = 10ă      Top = 90ă      Width = 210ă      Color = Blackă      Font = TimeFontă    END CREATEă    CREATE CoordPanel2 AS QPANELă      Left = 10ă      Top = 130ă      Width = 210ă      Color = Blackă      Font = TimeFontă    END CREATE         ă  END CREATEă  CREATE NewDForm AS QFORM    ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "New Date"ă    Width = 238ă    Height = 205ă    Visible = 0ă    Color = &HABC111ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = NewDEndă    CREATE Month AS QEDITă        Text = LEFT$(DATE$,2)ă        Left = 10ă        Top = 5ă        Width = 65ă        TabOrder = 1ă        OnKeyPress = New_Dateă    END CREATE    ă    CREATE Day AS QEDITă        Text = MID$(DATE$,4,2)ă        Left = 82ă        Top = 5ă        Width = 65ă        TabOrder = 2ă        OnKeyPress = New_Dateă    END CREATEă    CREATE Year AS QEDITă        Text = RIGHT$(DATE$,4)ă        Left = 154ă        Top = 5ă        Width = 65ă        TabOrder = 3ă        OnKeyPress = New_Date ă    END CREATEă    CREATE DayThence AS QEDITă        Text = "Days past"ă        Left = 10ă        Top = 30ă        Width = 65ă        TabOrder = 4ă        OnKeyPress = New_Date ă    END CREATE     ă    CREATE DayHence AS QEDITă        Text = "Days hence"ă        Left = 154ă        Top = 30ă        Width = 65ă        TabOrder = 5ă        OnKeyPress = New_Date ă    END CREATE      ă    CREATE DateButt AS QBUTTONă        Font = Arial9Bă        Caption = "Press to get date"ă        Left = 10ă        Top = 65ă        Width = 210ă        TabOrder = 6ă        OnClick = preNew_Dateă    END CREATEă    CREATE DatePanel AS QPANELă        Left = 10ă        Top = 90ă        Width = 210ă        Color = Blackă        Font = TimeFontă    END CREATEă    CREATE WeekdayPanel AS QPANELă        Left = 10ă        Top = 130ă        Width = 210ă        Color = Blackă        Font = TimeFontă    END CREATE         ă  END CREATEă  CREATE DaysDForm AS QFORM    ă    Color = &HABC111ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Days Difference"ă    Width = 238ă    Height = 205ă    Visible = 0ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = DaysDEndă    CREATE Month1 AS QEDITă        Text = LEFT$(DATE$,2)ă        Left = 10ă        Top = 5ă        Width = 65ă        TabOrder = 1ă        OnKeyPress = DaysDifferenceă    END CREATE    ă    CREATE Day1 AS QEDITă        Text = MID$(DATE$,4,2)ă        Left = 82ă        Top = 5ă        Width = 65ă        TabOrder = 2ă        OnKeyPress = DaysDifferenceă    END CREATEă    CREATE Year1 AS QEDITă        Text = RIGHT$(DATE$,4)ă        Left = 154ă        Top = 5ă        Width = 65ă        TabOrder = 3ă        OnKeyPress = DaysDifferenceă    END CREATEă    CREATE Month2 AS QEDITă        Text = "End month"ă        Left = 10ă        Top = 30ă        Width = 65ă        TabOrder = 4ă        OnKeyPress = DaysDifferenceă    END CREATEă    CREATE Day2 AS QEDITă        Text = "End day"ă        Left = 82ă        Top = 30ă        Width = 65ă        TabOrder = 5ă        OnKeyPress = DaysDifferenceă    END CREATEă    CREATE Year2 AS QEDITă        Text = "End year"ă        Left = 154ă        Top = 30ă        Width = 65ă        TabOrder = 6ă        OnKeyPress = DaysDifferenceă    END CREATEă    CREATE DaysButt AS QBUTTONă        Font = Arial9Bă        Caption = "Press to get days"ă        Left = 10ă        Top = 65ă        Width = 210ă        TabOrder = 7ă        OnClick = preDaysDifferenceă    END CREATEă    CREATE DaysPanel AS QPANELă        Left = 10ă        Top = 90ă        Width = 210ă        Color = Blackă        Font = TimeFontă    END CREATEă    CREATE WeeksPanel AS QPANELă        Left = 10ă        Top = 130ă        Width = 210ă        Color = Blackă        Font = TimeFontă    END CREATE                              ă  END CREATE  ă  CREATE AmortForm AS QFORM    ă    Color = &HABC111ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Amortization"ă    Width = 238ă    Height = 205ă    Visible = 0ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = AmortCleară    CREATE ALoanEdit AS QEDITă	Top = 15ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă	Enabled = 0ă      Font = Arial9Bă	OnKeyPress = ALoană    END CREATEă    CREATE AInterestEdit AS QEDITă	Top = 45ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = AInterestă    END CREATEă    CREATE AcInterestEdit AS QEDITă	Top = 75ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = AcInterestă    END CREATEă    CREATE APeriodEdit AS QEDITă	Top = 105ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = APeriodă    END CREATEă    CREATE APaymentEdit AS QEDITă	Top = 135ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă    END CREATEă    CREATE ALoanPanel AS QBUTTONă	Top = 15ă	Left = 120ă	Height = 22ă	Width = 108ă      Caption = "LOAN"      ă	Enabled = 0ă      Hint = "Amount of loan"ă      ShowHint = 1ă      OnClick = EnterALoană    END CREATEă    CREATE AInterestPanel AS QBUTTONă	Top = 45ă	Left = 120ă	Height = 22ă	Width = 108ă      Caption = "INTEREST"     ă	Enabled = 0ă      Hint = "Quoted interest rate"ă      ShowHint = 1ă      OnClick = EnterAInterestă    END CREATEă    CREATE AcInterestPanel AS QBUTTONă	Top = 75ă	Left = 120ă	Height = 22ă	Width = 108ă      Caption = "COMP. FREQUENCY"      ă      Enabled = 0ă      Hint = "Frequency interest is compounded (in months per year)"ă      ShowHint = 1ă	OnClick = EnterAcInterestă    END CREATEă    CREATE APeriodPanel AS QBUTTONă	Top = 105ă	Left = 120ă	Height = 22ă	Width = 108ă      Caption = "PERIOD"      ă      Enabled = 0ă      Hint = "Total number of interest periods (in months)"ă      ShowHint = 1ă	OnClick = EnterAPeriodă    END CREATEă    CREATE ClearAmort AS QBUTTONă	Top = 135ă	Left = 120ă	Height = 22ă	Width = 108ă	Caption = "CLEAR"ă	OnClick = AmortCleară    END CREATEă  END CREATEă  CREATE CompIntForm AS QFORM    ă    Color = &HABC111ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Compound Interest"ă    Width = 238ă    Height = 205ă    Visible = 0ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = InterestCleară    CREATE PeriodEdit AS QEDITă	Top = 15ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = CompPeriodă    END CREATEă    CREATE PrincipalEdit AS QEDITă	Top = 45ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = CompPrincipală    END CREATEă    CREATE InterestEdit AS QEDITă	Top = 75ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = CompInterestă    END CREATEă    CREATE CInterestEdit AS QEDITă	Top = 105ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = CompCInterestă    END CREATEă    CREATE CAnswerEdit AS QEDITă	Top = 135ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă    END CREATEă    CREATE PeriodPanel AS QBUTTONă	Top = 15ă	Left = 120ă	Height = 22ă	Width = 108ă      Caption = "PERIOD"ă	Enabled = 0ă      Hint = "Total number of interest periods (in months)"ă      ShowHint = 1ă      OnClick = EnterPeriod ă    END CREATEă    CREATE PrincipalPanel AS QBUTTONă	Top = 45ă	Left = 120ă	Height = 22ă	Width = 108ă      Caption = "PRINCIPAL"ă	Enabled = 0ă      Hint = "Beginning amount"ă      ShowHint = 1ă      OnClick = EnterPrincipal ă    END CREATEă    CREATE InterestPanel AS QBUTTONă	Top = 75ă	Left = 120ă	Height = 22ă	Width = 108ă      Caption = "INTEREST"ă      Enabled = 0ă      Hint = "Quoted interest rate"ă      ShowHint = 1ă	OnClick = EnterInterestă    END CREATEă    CREATE CInterestPanel AS QBUTTONă	Top = 105ă	Left = 120ă	Height = 22ă	Width = 108ă      Caption = "COMP. FREQUENCY"ă      Enabled = 0ă      Hint = "Frequency interest is compounded (in months per year)"ă      ShowHint = 1ă	OnClick = EnterCInterestă    END CREATEă    CREATE ClearCompInterest AS QBUTTONă	Top = 135ă	Left = 120ă	Height = 22ă	Width = 108ă	Caption = "CLEAR"ă	OnClick = InterestCleară    END CREATEă  END CREATEă  CREATE PValueForm AS QFORM    ă    Color = &HABC111ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Present/Future Value"ă    Width = 238ă    Height = 205ă    Visible = 0    ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = PValueCleară    CREATE PVFVSelect AS QLABELă      Top = 10ă	Left = 5ă	Caption = "LOOKING FOR:"ă    END CREATEă    CREATE PValueB AS QRADIOBUTTONă      Top = 25ă	Left = 5ă	Checked = 0ă	Caption = "Present Value"ă	OnClick = FPValueă    END CREATEă    CREATE FValueB AS QRADIOBUTTONă      Top = 25ă	Left = 100ă	Checked = 0ă	Caption = "Future Value"ă	OnClick = FPValueă    END CREATEă    CREATE IPValueEdit AS QEDITă	Top = 50ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = IPValueă    END CREATEă    CREATE CIPValueEdit AS QEDITă	Top = 75ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = CIPValueă    END CREATEă    CREATE FVPValueEdit AS QEDITă	Top = 100ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = FVPValueă    END CREATEă    CREATE PPValueEdit AS QEDITă	Top = 125ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = PPValueă    END CREATEă    CREATE PAnswerEdit AS QEDITă	Top = 150ă	Left = 5ă	Width = 110ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă    END CREATEă    CREATE IPValuePanel AS QBUTTONă	Top = 50ă	Left = 120ă	Height = 22ă	Width = 108ă      Caption = "INTEREST"ă	Enabled = 0ă      Hint = "Quoted interest rate"ă      ShowHint = 1ă      OnClick = EnterIPValue ă    END CREATEă    CREATE CIPValuePanel AS QBUTTONă	Top = 75ă	Left = 120ă	Height = 22ă	Width = 108ă      Caption = "COMP. FREQUENCY"ă	Enabled = 0ă      Hint = "Frequency interest is compounded (in months per year)"ă      ShowHint = 1ă      OnClick = EnterCIPValue ă    END CREATEă    CREATE FVPValuePanel AS QBUTTONă	Top = 100ă	Left = 120ă	Height = 22ă	Width = 108ă      Caption = "VALUE"ă	Enabled = 0ă      OnClick = EnterFVPValue ă    END CREATEă    CREATE PPValuEPanel AS QBUTTONă	Top = 125ă	Left = 120ă	Height = 22ă	Width = 108ă      Caption = "PERIOD"ă      Enabled = 0ă      Hint = "Total number of interest periods (in months)"ă      ShowHint = 1ă	OnClick = EnterPPValueă    END CREATEă    CREATE ClearPValue AS QBUTTONă	Top = 150ă	Left = 120ă	Height = 22ă	Width = 108ă	Caption = "CLEAR"ă	OnClick = PValueCleară    END CREATEă  END CREATEă  CREATE FinForm AS QFORM    ă    Color = &HABC111ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Factor Rate"ă    Width = 238ă    Height = 205ă    Visible = 0ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = FinCleară    CREATE FinPanel AS QLABELă	Top = 10ă	Left = 5ă	Height = 15ă      Caption = "LOOKING FOR:"ă    END CREATEă    CREATE FacForm AS QRADIOBUTTONă	Top = 30ă	Left = 5ă      Checked = 0ă	Caption = "Factor Rate"ă	OnClick = Factoră    END CREATEă    CREATE IntForm AS QRADIOBUTTONă      Top = 50ă	Left = 5ă	Checked = 0ă	Caption = "Interest Rate"ă	OnClick = Interestă    END CREATEă    CREATE RateEdit AS QEDITă	Top = 80ă	Left = 5ă      Height = 22ă	Width = 75ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = Rateă    END CREATEă    CREATE TermEdit AS QEDITă	Top = 110ă	Left = 5ă      Height = 22ă	Width = 75ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă	OnKeyPress = Termă    END CREATEă    CREATE AnswerEdit AS QEDITă	Top = 140ă	Left = 5ă      Height = 22ă	Width = 75ă	Color = &HBBB000ă      Font = Arial9Bă	Enabled = 0ă    END CREATEă    CREATE RatePanel AS QBUTTONă	Top = 80ă	Left = 85ă	Height = 22ă	Width = 143ă      Caption = "Enter RATE here"ă	Enabled = 0ă      OnClick = EnterRate ă    END CREATEă    CREATE TermPanel AS QBUTTONă	Top = 110ă	Left = 85ă	Height = 22ă	Width = 143ă      Caption = "Enter TERM here"ă      Enabled = 0ă	OnClick = EnterTermă    END CREATEă    CREATE ClearFin AS QBUTTONă	Top = 140ă	Left = 85ă      Height = 22ă	Caption = "CLEAR"ă	OnClick = FinCleară    END CREATEă  END CREATEă  CREATE RNGForm AS QFORM    ă    Color = &HABC111ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Random Number Generator"ă    Width = 238ă    Height = 205ă    Visible = 0ă    FormStyle = fsStayOnTopă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = RNGClră    CREATE LowEdit AS QEDITă      Top = 40ă      Left = 10ă      Width = 100ă      OnKeyPress = RNGLoweră    END CREATEă    CREATE HighEdit AS QEDITă      Top = 70ă      Left = 10ă      Width = 100ă      OnKeyPress = RNGUpperă    END CREATEă    CREATE HighPanel AS QBUTTONă	Top = 40ă      Left = 120ă      Width = 100ă      Height = 22ă      Caption = "Enter minimum"ă	Hint = "Lowest possible number that you want generated"ă	Showhint = 1ă	OnClick = RNGLowEnteră    END CREATEă    CREATE LowPanel AS QBUTTONă	Top = 70ă      Left = 120ă      Width = 100ă      Height = 22ă      Caption = "Enter maximum"ă	Hint = "Highest possible number that you want generated"ă	Showhint = 1ă	OnClick = RNGHighEnteră    END CREATEă    CREATE AnotherRNG AS QBUTTONă      Top = 110ă      Left = 10ă      Width = 100ă      Caption = "ANOTHER"ă	Hint = "New random number in the same range"ă	Showhint = 1ă      OnClick = RNGHighEnteră    END CREATEă    CREATE ClearRNG AS QBUTTONă      Top = 110ă      Left = 120ă      Width = 100ă      Caption = "CLEAR"ă	Hint = "New random number in a new range"ă	Showhint = 1ă      OnClick = RNGClră    END CREATEă  END CREATEă  CREATE TrigForm AS QFORM    ă    Color = &HABC111ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Trigonometric Functions"ă    Width = 238ă    Height = 300ă    Visible = 0ă    FormStyle = fsStayOnTopă    'AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = CloseGenerică    CREATE ModeForm AS QPANELă      Top = 5ă      Left = 57ă	Width = 100ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "DEGREES"ă      Hint = "Toggle-switch between degrees and radians"ă      Showhint = 1ă      OnClick = ChangeModeă    END CREATEă    CREATE SinP AS QCOOLBTNă      Top = 35ă      Left = 5ă	Width = 100ă	Height = 25ă      Font = Arială      Caption = "SIN"ă      Hint = "Sine"ă      Showhint = 1ă      OnClick = ButtonClickSină    END CREATEă    CREATE ASinP AS QCOOLBTNă      Top = 35ă      Left = 110ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ARCSIN"ă      Hint = "Arc Sine"ă      Showhint = 1ă      OnClick = ArcSină    END CREATEă    CREATE CosP AS QCOOLBTNă      Top = 65ă      Left = 5ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "COS"ă      Hint = "Cosine"ă      Showhint = 1ă      OnClick = ButtonClickCosă    END CREATEă    CREATE ACosP AS QCOOLBTNă      Top = 65ă      Left = 110ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ARCCOS"ă      Hint = "Arc Cosine"ă      Showhint = 1ă      OnClick = ArcCosă    END CREATEă    CREATE TanP AS QCOOLBTNă      Top = 95ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "TAN"ă      Hint = "Tangent"ă      Showhint = 1ă	Font = Arială      OnClick = ButtonClickTană    END CREATEă    CREATE ATanP AS QCOOLBTNă      Top = 95ă      Left = 110ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ARCTAN"ă      Hint = "Arc Tangent"ă      Showhint = 1ă      OnClick = ButtonClickAtnă    END CREATEă    CREATE CotP AS QCOOLBTNă      Top = 125ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "COT"ă      Hint = "Cotangent"ă      Showhint = 1ă	Font = Arială      OnClick = CoTangentă    END CREATEă    CREATE ACotP AS QCOOLBTNă      Top = 125ă      Left = 110ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ARCCOT"ă      Hint = "Arc Cotangent"ă      Showhint = 1ă      OnClick = ArcCotă    END CREATEă    CREATE SecP AS QCOOLBTNă      Top = 155ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "SEC"ă      Hint = "Secant"ă      Showhint = 1ă	Font = Arială      OnClick = Secantă    END CREATEă    CREATE ASecP AS QCOOLBTNă      Top = 155ă      Left = 110ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ARCSEC"ă      Hint = "Arc Secant"ă      Showhint = 1ă      OnClick = ArcSecă    END CREATEă    CREATE CscP AS QCOOLBTNă      Top = 185ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "CSC"ă      Hint = "Cosecant"ă      Showhint = 1ă	Font = Arială      OnClick = Cosecantă    END CREATEă    CREATE ACscP AS QCOOLBTNă      Top = 185ă      Left = 110ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ARCCSC"ă      Hint = "Arc Cosecant"ă      Showhint = 1ă      OnClick = ArcCscă    END CREATEă    CREATE HSinP AS QCOOLBTNă      Top = 215ă      Left = 5ă	Width = 100ă	Height = 25ă      Font = Arială      Caption = "SINH"ă      Hint = "Hyperbolic Sine"ă      Showhint = 1ă      OnClick = HyperSină    END CREATEă    CREATE AHSinP AS QCOOLBTNă      Top = 215ă      Left = 110ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ARCSINH"ă      Hint = "Hyperbolic Arc Sine"ă      Showhint = 1ă      OnClick = ArcHyperSină    END CREATEă    CREATE HCosP AS QCOOLBTNă      Top = 245ă      Left = 5ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "COSH"ă      Hint = "Hyperbolic Cosine"ă      Showhint = 1ă      OnClick = HyperCosă    END CREATEă    CREATE AHCosP AS QCOOLBTNă      Top = 245ă      Left = 110ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ARCCOSH"ă      Hint = "Hyperbolic Arc Cosine"ă      Showhint = 1ă      OnClick = ArcHyperCosă    END CREATEă    CREATE HTanP AS QCOOLBTNă      Top = 275ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "TANH"ă      Hint = "Hyperbolic Tangent"ă      Showhint = 1ă	Font = Arială      OnClick = HyperTană    END CREATEă    CREATE AHTanP AS QCOOLBTNă      Top = 275ă      Left = 110ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ARCTANH"ă      Hint = "Hyperbolic Arc Tangent"ă      Showhint = 1ă      OnClick = ArcHyperTană    END CREATEă    CREATE HCotP AS QCOOLBTNă      Top = 305ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "COTH"ă      Hint = "Hyperbolic Cotangent"ă      Showhint = 1ă	Font = Arială      OnClick = HyperCotă    END CREATEă    CREATE AHCotP AS QCOOLBTNă      Top = 305ă      Left = 110ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ARCCOTH"ă      Hint = "Hyperbolic Arc Cotangent"ă      Showhint = 1ă      OnClick = ArcHyperCotă    END CREATEă    CREATE HSecP AS QCOOLBTNă      Top = 335ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "SECH"ă      Hint = "Hyperbolic Secant"ă      Showhint = 1ă	Font = Arială      OnClick = HyperSecă    END CREATEă    CREATE AHSecP AS QCOOLBTNă      Top = 335ă      Left = 110ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ARCSECH"ă      Hint = "Hyperbolic Arc Secant"ă      Showhint = 1ă      OnClick = ArcHyperSecă    END CREATEă    CREATE HCscP AS QCOOLBTNă      Top = 365ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "CSCH"ă      Hint = "Hyperbolic Cosecant"ă      Showhint = 1ă	Font = Arială      OnClick = HyperCscă    END CREATEă    CREATE AHCscP AS QCOOLBTNă      Top = 365ă      Left = 110ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ARCCSCH"ă      Hint = "Hyperbolic Arc Cosecant"ă      Showhint = 1ă      OnClick = ArcHyperCscă    END CREATEă  END CREATEă  CREATE EngMetricForm AS QFORMă    Color = &HABC111ă    Top = Screen.Height/2ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "English-Metric"ă    Width = 238ă    Height = 300ă    Visible = 0ă    FormStyle = fsStayOnTopă    'AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = CloseGenerică    CREATE LenPanel1 AS QPANELă      Top = 5ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "LENGTH"ă    END CREATEă    CREATE ft_m1 AS QCOOLBTNă      Top = 35ă      Left = 5ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ft » m"ă	Hint = "Feet to meters"ă	Showhint = 1ă      OnClick = ButtonClickftmă    END CREATEă    CREATE m_ft1 AS QCOOLBTNă      Top = 35ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "m » ft"ă	Font = Arială	Hint = "Meters to feet"ă	Showhint = 1ă      OnClick = ButtonClickmftă    END CREATEă    CREATE in_cm1 AS QCOOLBTNă      Top = 65ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "in » cm"ă	Font = Arială	Hint = "Inches to centimeters"ă	Showhint = 1ă      OnClick = ButtonClickincmă    END CREATEă    CREATE cm_in1 AS QCOOLBTNă      Top = 65ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "cm » in"ă	Font = Arială	Hint = "Centimeters to inches"ă	Showhint = 1ă      OnClick = ButtonClickcmină    END CREATEă    CREATE yd_m1 AS QCOOLBTNă      Top = 95ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "yd » m"ă	Font = Arială	Hint = "Yards to meters"ă	Showhint = 1ă      OnClick = ButtonClickydmă    END CREATEă    CREATE m_yd1 AS QCOOLBTNă      Top = 95ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "m » yd"ă	Font = Arială	Hint = "Meters to yards"ă	Showhint = 1ă      OnClick = ButtonClickmydă    END CREATEă    CREATE m_fa1 AS QCOOLBTNă      Top = 125ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "m » fa"ă	Font = Arială	Hint = "Meters to fathoms"ă	Showhint = 1ă      OnClick = ButtonClickmfaă    END CREATEă    CREATE fa_m1 AS QCOOLBTNă      Top = 125ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "fa » m"ă	Font = Arială	Hint = "Fathoms to meters"ă	Showhint = 1ă      OnClick = ButtonClickfamă    END CREATEă    CREATE km_mi1 AS QCOOLBTNă      Top = 155ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "km » mi"ă	Font = Arială	Hint = "Kilometers to miles"ă	Showhint = 1ă      OnClick = ButtonClickkmmiă    END CREATEă    CREATE mi_km1 AS QCOOLBTNă      Top = 155ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "mi » km"ă	Font = Arială	Hint = "Miles to kilometers"ă	Showhint = 1ă      OnClick = ButtonClickmikmă    END CREATEă    CREATE AreaPanel1 AS QPANELă      Top = 185ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "AREA"ă    END CREATEă    CREATE ha_ac1 AS QCOOLBTNă      Top = 215ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "ha » ac"ă	Font = Arială	Hint = "Hectares to acres"ă	Showhint = 1ă      OnClick = ButtonClickhaacă    END CREATEă    CREATE ac_ha1 AS QCOOLBTNă      Top = 215ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "ac » ha"ă	Font = Arială	Hint = "Acres to hectares"ă	Showhint = 1ă      OnClick = ButtonClickachaă    END CREATEă    CREATE f2_m21 AS QCOOLBTNă      Top = 245ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "sq.ft » sq.m"ă	Font = Arială	Hint = "Square feet to square meters"ă	Showhint = 1ă      OnClick = ButtonClickft2m2ă    END CREATEă    CREATE m2_ft21 AS QCOOLBTNă      Top = 245ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "sq.m » sq.ft"ă	Font = Arială	Hint = "Square meters to square feet"ă	Showhint = 1ă      OnClick = ButtonClickm2ft2ă    END CREATEă    CREATE in2_cm21 AS QCOOLBTNă      Top = 275ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "sq.in » sq.cm"ă	Font = Arială	Hint = "Square inches to square centimeters"ă	Showhint = 1ă      OnClick = ButtonClickin2cm2ă    END CREATEă    CREATE cm2_in21 AS QCOOLBTNă      Top = 275ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "sq.cm » sq.in"ă	Font = Arială	Hint = "Square centimeters to square inches"ă	Showhint = 1ă      OnClick = ButtonClickcm2in2ă    END CREATEă    CREATE VolPanel1 AS QPANELă      Top = 305ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "VOLUME"ă    END CREATEă    CREATE ft3_m31 AS QCOOLBTNă      Top = 335ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "cu.ft » cu.m"ă	Font = Arială	Hint = "Cubic feet to cubic meters"ă	Showhint = 1ă      OnClick = ButtonClickft3m3ă    END CREATEă    CREATE m3_ft31 AS QCOOLBTNă      Top = 335ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "cu.m » cu.ft"ă	Font = Arială	Hint = "Cubic meters to cubic feet"ă	Showhint = 1ă      OnClick = ButtonClickm3ft3ă    END CREATEă    CREATE ltr_gal1 AS QCOOLBTNă      Top = 365ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "ltr » gal"ă	Font = Arială	Hint = "Liters to gallons"ă	Showhint = 1ă      OnClick = LittoGalUKă    END CREATEă    CREATE gal_ltr1 AS QCOOLBTNă      Top = 365ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "gal » ltr"ă	Font = Arială	Hint = "Gallons to liters"ă	Showhint = 1ă      OnClick = GaltoLitUKă    END CREATEă    CREATE ltr_pint1 AS QCOOLBTNă      Top = 395ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "ltr » pint"ă	Font = Arială	Hint = "Liters to pints"ă	Showhint = 1ă      OnClick = LtrtoPintUKă    END CREATEă    CREATE pint_ltr1 AS QCOOLBTNă      Top = 395ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "pint » ltr"ă	Font = Arială	Hint = "Pints to liters"ă	Showhint = 1ă      OnClick = PinttoLtrUKă    END CREATEă    CREATE MasPanel1 AS QPANELă      Top = 425ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "MASS/WEIGHT"ă    END CREATEă    CREATE kg_lb1 AS QCOOLBTNă      Top = 455ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "kg » lb"ă	Font = Arială	Hint = "Kilograms to pounds"ă	Showhint = 1ă      OnClick = ButtonClickkglbă    END CREATEă    CREATE lb_kg1 AS QCOOLBTNă      Top = 455ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "lb » kg"ă	Font = Arială	Hint = "Pounds to kilograms"ă	Showhint = 1ă      OnClick = ButtonClicklbkgă    END CREATEă    CREATE oz_gm1 AS QCOOLBTNă      Top = 485ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "oz » gm"ă	Font = Arială	Hint = "Ounces to grams"ă	Showhint = 1ă      OnClick = OztoGramă    END CREATEă    CREATE gm_oz1 AS QCOOLBTNă      Top = 485ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "gm » oz"ă	Font = Arială	Hint = "Grams to ounces"ă	Showhint = 1ă      OnClick = GramtoOză    END CREATEă    CREATE mton_kg1 AS QCOOLBTNă      Top = 515ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "ton » kg"ă	Font = Arială	Hint = "Metric tons to kilograms"ă	Showhint = 1ă      OnClick = TontoKiloă    END CREATEă    CREATE kg_mton1 AS QCOOLBTNă      Top = 515ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "kg » ton"ă	Font = Arială	Hint = "Kilograms to metric tons"ă	Showhint = 1ă      OnClick = KilotoTonă    END CREATEă    CREATE TempPanel1 AS QPANELă      Top = 545ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "TEMPERATURE"ă    END CREATEă    CREATE F_C1 AS QCOOLBTNă      Top = 575ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "°F » °C"ă	Font = Arială	Hint = "Fahrenheit to Celsius"ă	Showhint = 1ă      OnClick = ButtonClickFCă    END CREATEă    CREATE C_F1 AS QCOOLBTNă      Top = 575ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "°C » °F"ă	Font = Arială	Hint = "Celsius to Fahrenheit"ă	Showhint = 1ă      OnClick = ButtonClickCFă    END CREATEă    CREATE PowerPanel1 AS QPANELă      Top = 605ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "POWER"ă    END CREATEă    CREATE hp_watt1 AS QCOOLBTNă      Top = 635ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "hp » watt"ă	Font = Arială	Hint = "Metric horsepower to watts"ă	Showhint = 1ă      OnClick = HptoWattUKă    END CREATEă    CREATE watt_hp1 AS QCOOLBTNă      Top = 635ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "watt » hp"ă	Font = Arială	Hint = "Watts to metric horsepower"ă	Showhint = 1ă      OnClick = WatttoHpUKă    END CREATEă    CREATE BTU_watt1 AS QCOOLBTNă      Top = 665ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "BTU » watt"ă	Font = Arială	Hint = "BTUs per hour to watts"ă	Showhint = 1ă      OnClick = BTUtoWattă    END CREATEă    CREATE watt_BTU1 AS QCOOLBTNă      Top = 665ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "watt » BTU"ă	Font = Arială	Hint = "Watts to BTUs per hour"ă	Showhint = 1ă      OnClick = WatttoBTUă    END CREATEă    CREATE SpeedPanel1 AS QPANELă      Top = 695ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "SPEED"ă    END CREATEă    CREATE Kph_mph1 AS QCOOLBTNă      Top = 725ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "kph » mph"ă	Font = Arială	Hint = "Kilometers per hour to miles per hour"ă	Showhint = 1ă      OnClick = KphtoMphă    END CREATEă    CREATE Mph_kph1 AS QCOOLBTNă      Top = 725ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "mph » kph"ă	Font = Arială	Hint = "Miles per hour to kilometers per hour"ă	Showhint = 1ă      OnClick = MphtoKphă    END CREATEă    CREATE mps_fps1 AS QCOOLBTNă      Top = 755ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "mps » fps"ă	Font = Arială	Hint = "Meters per second to feet per second"ă	Showhint = 1ă      OnClick = MpstoFpsă    END CREATEă    CREATE Fps_mps1 AS QCOOLBTNă      Top = 755ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "fps » mps"ă	Font = Arială	Hint = "Feet per second to meters per second"ă	Showhint = 1ă      OnClick = FpstoMpsă    END CREATEă    CREATE PressurePanel1 AS QPANELă      Top = 785ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "PRESSURE"ă    END CREATEă    CREATE psi_pas1 AS QCOOLBTNă      Top = 815ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "psi » pas"ă	Font = Arială	Hint = "Pounds per square inch to pascals"ă	Showhint = 1ă      OnClick = PsitoPasă    END CREATEă    CREATE pas_psi1 AS QCOOLBTNă      Top = 815ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "pas » psi"ă	Font = Arială	Hint = "Pascals to pounds per square inch"ă	Showhint = 1ă      OnClick = PastoPsiă    END CREATEă    CREATE psi_kgscm1 AS QCOOLBTNă      Top = 845ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "psi » kgscm"ă	Font = Arială	Hint = "Pounds per square inch to kilograms per square centimeter"ă	Showhint = 1ă      OnClick = PsitoKgscmă    END CREATEă    CREATE kgscm_psi1 AS QCOOLBTNă      Top = 845ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "kgscm » psi"ă	Font = Arială	Hint = "Kilograms per square centimeter to pounds per square inch"ă	Showhint = 1ă      OnClick = KgscmtoPsiă    END CREATEă  END CREATEă  CREATE ConvertForm AS QFORM    ă    Color = &HABC111ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "Equivalents by Category"ă    Width = 238ă    Height = 300ă    Visible = 0ă    FormStyle = fsStayOnTopă    'AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = CloseGenerică    CREATE LenPanel AS QPANELă      Top = 5ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "LENGTH"ă    END CREATEă    CREATE ft_m AS QCOOLBTNă      Top = 35ă      Left = 5ă      Width = 100ă      Height = 25ă	Font = Arială      Caption = "ft » m"ă	Hint = "Feet to meters"ă	Showhint = 1ă      OnClick = ButtonClickftmă    END CREATEă    CREATE m_ft AS QCOOLBTNă      Top = 35ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "m » ft"ă	Font = Arială	Hint = "Meters to feet"ă	Showhint = 1ă      OnClick = ButtonClickmftă    END CREATEă    CREATE in_cm AS QCOOLBTNă      Top = 65ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "in » cm"ă	Font = Arială	Hint = "Inches to centimeters"ă	Showhint = 1ă      OnClick = ButtonClickincmă    END CREATEă    CREATE cm_in AS QCOOLBTNă      Top = 65ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "cm » in"ă	Font = Arială	Hint = "Centimeters to inches"ă	Showhint = 1ă      OnClick = ButtonClickcmină    END CREATEă    CREATE in_ft AS QCOOLBTNă      Top = 95ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "in » ft"ă	Font = Arială	Hint = "Inches to feet"ă	Showhint = 1ă      OnClick = ButtonClickinftă    END CREATEă    CREATE ft_in AS QCOOLBTNă      Top = 95ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "ft » in"ă	Font = Arială	Hint = "Feet to inches"ă	Showhint = 1ă      OnClick = ButtonClickftină    END CREATEă    CREATE yd_m AS QCOOLBTNă      Top = 125ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "yd » m"ă	Font = Arială	Hint = "Yards to meters"ă	Showhint = 1ă      OnClick = ButtonClickydmă    END CREATEă    CREATE m_yd AS QCOOLBTNă      Top = 125ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "m » yd"ă	Font = Arială	Hint = "Meters to yards"ă	Showhint = 1ă      OnClick = ButtonClickmydă    END CREATEă    CREATE m_fa AS QCOOLBTNă      Top = 155ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "m » fa"ă	Font = Arială	Hint = "Meters to fathoms"ă	Showhint = 1ă      OnClick = ButtonClickmfaă    END CREATEă    CREATE fa_m AS QCOOLBTNă      Top = 155ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "fa » m"ă	Font = Arială	Hint = "Fathoms to meters"ă	Showhint = 1ă      OnClick = ButtonClickfamă    END CREATEă    CREATE km_mi AS QCOOLBTNă      Top = 185ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "km » mi"ă	Font = Arială	Hint = "Kilometers to miles"ă	Showhint = 1ă      OnClick = ButtonClickkmmiă    END CREATEă    CREATE mi_km AS QCOOLBTNă      Top = 185ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "mi » km"ă	Font = Arială	Hint = "Miles to kilometers"ă	Showhint = 1ă      OnClick = ButtonClickmikmă    END CREATEă    CREATE mi_ly AS QCOOLBTNă      Top = 215ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "mi » ly"ă	Font = Arială	Hint = "Miles to light-years"ă	Showhint = 1ă      OnClick = ButtonClickmilyă    END CREATEă    CREATE ly_mi AS QCOOLBTNă      Top = 215ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "ly » mi"ă	Font = Arială	Hint = "Light-years to miles"ă	Showhint = 1ă      OnClick = ButtonClicklymiă    END CREATEă    CREATE par_ly AS QCOOLBTNă      Top = 245ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "par » ly"ă	Font = Arială	Hint = "Parsecs to light-years"ă	Showhint = 1ă      OnClick = PartoLyă    END CREATEă    CREATE ly_par AS QCOOLBTNă      Top = 245ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "ly » par"ă	Font = Arială	Hint = "Light-years to parsecs"ă	Showhint = 1ă      OnClick = LytoPară    END CREATEă    CREATE AreaPanel AS QPANELă      Top = 275ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "AREA"ă    END CREATEă    CREATE ha_ac AS QCOOLBTNă      Top = 305ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "ha » ac"ă	Font = Arială	Hint = "Hectares to acres"ă	Showhint = 1ă      OnClick = ButtonClickhaacă    END CREATEă    CREATE ac_ha AS QCOOLBTNă      Top = 305ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "ac » ha"ă	Font = Arială	Hint = "Acres to hectares"ă	Showhint = 1ă      OnClick = ButtonClickachaă    END CREATEă    CREATE f2_m2 AS QCOOLBTNă      Top = 335ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "sq.ft » sq.m"ă	Font = Arială	Hint = "Square feet to square meters"ă	Showhint = 1ă      OnClick = ButtonClickft2m2ă    END CREATEă    CREATE m2_ft2 AS QCOOLBTNă      Top = 335ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "sq.m » sq.ft"ă	Font = Arială	Hint = "Square meters to square feet"ă	Showhint = 1ă      OnClick = ButtonClickm2ft2ă    END CREATEă    CREATE in2_cm2 AS QCOOLBTNă      Top = 365ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "sq.in » sq.cm"ă	Font = Arială	Hint = "Square inches to square centimeters"ă	Showhint = 1ă      OnClick = ButtonClickin2cm2ă    END CREATEă    CREATE cm2_in2 AS QCOOLBTNă      Top = 365ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "sq.cm » sq.in"ă	Font = Arială	Hint = "Square centimeters to square inches"ă	Showhint = 1ă      OnClick = ButtonClickcm2in2ă    END CREATEă    CREATE VolPanel AS QPANELă      Top = 395ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "VOLUME"ă    END CREATEă    CREATE ft3_m3 AS QCOOLBTNă      Top = 425ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "cu.ft » cu.m"ă	Font = Arială	Hint = "Cubic feet to cubic meters"ă	Showhint = 1ă      OnClick = ButtonClickft3m3ă    END CREATEă    CREATE m3_ft3 AS QCOOLBTNă      Top = 425ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "cu.m » cu.ft"ă	Font = Arială	Hint = "Cubic meters to cubic feet"ă	Showhint = 1ă      OnClick = ButtonClickm3ft3ă    END CREATEă    CREATE ltr_gal AS QCOOLBTNă      Top = 455ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "ltr » gal"ă	Font = Arială	Hint = "Liters to gallons"ă	Showhint = 1ă      OnClick = LittoGală    END CREATEă    CREATE gal_ltr AS QCOOLBTNă      Top = 455ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "gal » ltr"ă	Font = Arială	Hint = "Gallons to liters"ă	Showhint = 1ă      OnClick = GaltoLită    END CREATEă    CREATE ltr_pint AS QCOOLBTNă      Top = 485ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "ltr » pint"ă	Font = Arială	Hint = "Liters to pints"ă	Showhint = 1ă      OnClick = LtrtoPintă    END CREATEă    CREATE pint_ltr AS QCOOLBTNă      Top = 485ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "pint » ltr"ă	Font = Arială	Hint = "Pints to liters"ă	Showhint = 1ă      OnClick = PinttoLtră    END CREATEă    CREATE qrt_gal AS QCOOLBTNă      Top = 515ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "qrt » gal"ă	Font = Arială	Hint = "Quarts to gallons"ă	Showhint = 1ă      OnClick = QrtoGală    END CREATEă    CREATE gal_qrt AS QCOOLBTNă      Top = 515ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "gal » qrt"ă	Font = Arială	Hint = "Gallons to quarts"ă	Showhint = 1ă      OnClick = GaltoQrtă    END CREATEă    CREATE MasPanel AS QPANELă      Top = 545ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "MASS/WEIGHT"ă    END CREATEă    CREATE kg_lb AS QCOOLBTNă      Top = 575ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "kg » lb"ă	Font = Arială	Hint = "Kilograms to pounds"ă	Showhint = 1ă      OnClick = ButtonClickkglbă    END CREATEă    CREATE lb_kg AS QCOOLBTNă      Top = 575ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "lb » kg"ă	Font = Arială	Hint = "Pounds to kilograms"ă	Showhint = 1ă      OnClick = ButtonClicklbkgă    END CREATEă    CREATE oz_gm AS QCOOLBTNă      Top = 605ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "oz » gm"ă	Font = Arială	Hint = "Ounces to grams"ă	Showhint = 1ă      OnClick = OztoGramă    END CREATEă    CREATE gm_oz AS QCOOLBTNă      Top = 605ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "gm » oz"ă	Font = Arială	Hint = "Grams to ounces"ă	Showhint = 1ă      OnClick = GramtoOză    END CREATEă    CREATE car_mg AS QCOOLBTNă      Top = 635ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "car » mg"ă	Font = Arială	Hint = "Carats (metric) to milligrams"ă	Showhint = 1ă      OnClick = CartoMgă    END CREATEă    CREATE mg_car AS QCOOLBTNă      Top = 635ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "mg » car"ă	Font = Arială	Hint = "Milligrams to carats (metric)"ă	Showhint = 1ă      OnClick = MgtoCară    END CREATEă    CREATE mton_kg AS QCOOLBTNă      Top = 665ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "ton » kg"ă	Font = Arială	Hint = "Metric tons to kilograms"ă	Showhint = 1ă      OnClick = TontoKiloă    END CREATEă    CREATE kg_mton AS QCOOLBTNă      Top = 665ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "kg » ton"ă	Font = Arială	Hint = "Kilograms to metric tons"ă	Showhint = 1ă      OnClick = KilotoTonă    END CREATEă    CREATE TempPanel AS QPANELă      Top = 695ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "TEMPERATURE"ă    END CREATEă    CREATE F_C AS QCOOLBTNă      Top = 725ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "°F » °C"ă	Font = Arială	Hint = "Fahrenheit to Celsius"ă	Showhint = 1ă      OnClick = ButtonClickFCă    END CREATEă    CREATE C_F AS QCOOLBTNă      Top = 725ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "°C » °F"ă	Font = Arială	Hint = "Celsius to Fahrenheit"ă	Showhint = 1ă      OnClick = ButtonClickCFă    END CREATEă    CREATE K_C AS QCOOLBTNă      Top = 755ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "°K » °C"ă	Font = Arială	Hint = "Kelvin to Celsius"ă	Showhint = 1ă      OnClick = ButtonClickKCă    END CREATEă    CREATE C_K AS QCOOLBTNă      Top = 755ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "°C » °K"ă	Font = Arială	Hint = "Celsius to Kelvin"ă	Showhint = 1ă      OnClick = ButtonClickCKă    END CREATEă    CREATE PowerPanel AS QPANELă      Top = 785ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "POWER"ă    END CREATEă    CREATE hp_watt AS QCOOLBTNă      Top = 815ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "hp » watt"ă	Font = Arială	Hint = "Horsepower to watts"ă	Showhint = 1ă      OnClick = HptoWattă    END CREATEă    CREATE watt_hp AS QCOOLBTNă      Top = 815ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "watt » hp"ă	Font = Arială	Hint = "Watts to horsepower"ă	Showhint = 1ă      OnClick = WatttoHpă    END CREATEă    CREATE BTU_watt AS QCOOLBTNă      Top = 845ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "BTU » watt"ă	Font = Arială	Hint = "BTUs per hour to watts"ă	Showhint = 1ă      OnClick = BTUtoWattă    END CREATEă    CREATE watt_BTU AS QCOOLBTNă      Top = 845ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "watt » BTU"ă	Font = Arială	Hint = "Watts to BTUs per hour"ă	Showhint = 1ă      OnClick = WatttoBTUă    END CREATEă    CREATE Kw_watt AS QCOOLBTNă      Top = 875ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "kw » watt"ă	Font = Arială	Hint = "Kilowatts to watts"ă	Showhint = 1ă      OnClick = KwtoWattă    END CREATEă    CREATE watt_Kw AS QCOOLBTNă      Top = 875ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "watt » kw"ă	Font = Arială	Hint = "Watts to kilowatts"ă	Showhint = 1ă      OnClick = WatttoKwă    END CREATEă    CREATE SpeedPanel AS QPANELă      Top = 905ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "SPEED"ă    END CREATEă    CREATE Kph_mph AS QCOOLBTNă      Top = 935ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "kph » mph"ă	Font = Arială	Hint = "Kilometers per hour to miles per hour"ă	Showhint = 1ă      OnClick = KphtoMphă    END CREATEă    CREATE Mph_kph AS QCOOLBTNă      Top = 935ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "mph » kph"ă	Font = Arială	Hint = "Miles per hour to kilometers per hour"ă	Showhint = 1ă      OnClick = MphtoKphă    END CREATEă    CREATE Knot_mph AS QCOOLBTNă      Top = 965ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "knots » mph"ă	Font = Arială	Hint = "Knots to miles per hour"ă	Showhint = 1ă      OnClick = KnottoMphă    END CREATEă    CREATE Mph_knot AS QCOOLBTNă      Top = 965ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "mph » knots"ă	Font = Arială	Hint = "Miles per hour to knots"ă	Showhint = 1ă      OnClick = MphtoKnotă    END CREATEă    CREATE mps_fps AS QCOOLBTNă      Top = 995ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "mps » fps"ă	Font = Arială	Hint = "Meters per second to feet per second"ă	Showhint = 1ă      OnClick = MpstoFpsă    END CREATEă    CREATE Fps_mps AS QCOOLBTNă      Top = 995ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "fps » mps"ă	Font = Arială	Hint = "Feet per second to meters per second"ă	Showhint = 1ă      OnClick = FpstoMpsă    END CREATEă    CREATE KitchenPanel AS QPANELă      Top = 1025ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "KITCHEN MEASURES"ă    END CREATEă    CREATE tsp_tbs AS QCOOLBTNă      Top = 1055ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "tsp » tbs"ă	Font = Arială	Hint = "Teaspoons to tablespoons"ă	Showhint = 1ă      OnClick = TsptoTbsă    END CREATEă    CREATE tbs_tsp AS QCOOLBTNă      Top = 1055ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "tbs » tsp"ă	Font = Arială	Hint = "Tablespoons to teaspoons"ă	Showhint = 1ă      OnClick = TbstoTspă    END CREATEă    CREATE tbs_foz AS QCOOLBTNă      Top = 1085ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "tbs » foz"ă	Font = Arială	Hint = "Tablespoons to fluid ounces"ă	Showhint = 1ă      OnClick = TbstoFoză    END CREATEă    CREATE foz_tbs AS QCOOLBTNă      Top = 1085ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "foz » tbs"ă	Font = Arială	Hint = "Fluid ounces to tablespoons"ă	Showhint = 1ă      OnClick = FoztoTbsă    END CREATEă    CREATE cups_tbs AS QCOOLBTNă      Top = 1115ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "cups » tbs"ă	Font = Arială	Hint = "Cups to tablespoons"ă	Showhint = 1ă      OnClick = CupstoTbsă    END CREATEă    CREATE tbs_cups AS QCOOLBTNă      Top = 1115ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "tbs » cups"ă	Font = Arială	Hint = "Tablespoons to cups"ă	Showhint = 1ă      OnClick = TbstoCupsă    END CREATEă    CREATE TimesPanel AS QPANELă      Top = 1145ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "TIME"ă    END CREATEă    CREATE sec_min AS QCOOLBTNă      Top = 1175ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "sec » min"ă	Font = Arială	Hint = "Seconds to minutes"ă	Showhint = 1ă      OnClick = SectoMină    END CREATEă    CREATE min_sec AS QCOOLBTNă      Top = 1175ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "min » sec"ă	Font = Arială	Hint = "Minutes to seconds"ă	Showhint = 1ă      OnClick = MintoSecă    END CREATEă    CREATE min_hr AS QCOOLBTNă      Top = 1205ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "min » hr"ă	Font = Arială	Hint = "Minutes to hours"ă	Showhint = 1ă      OnClick = MintoHră    END CREATEă    CREATE hr_min AS QCOOLBTNă      Top = 1205ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "hr » min"ă	Font = Arială	Hint = "Hours to minutes"ă	Showhint = 1ă      OnClick = HrtoMină    END CREATEă    CREATE min_day AS QCOOLBTNă      Top = 1235ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "min » day"ă	Font = Arială	Hint = "Minutes to days"ă	Showhint = 1ă      OnClick = MintoDayă    END CREATEă    CREATE day_min AS QCOOLBTNă      Top = 1235ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "day » min"ă	Font = Arială	Hint = "Days to minutes"ă	Showhint = 1ă      OnClick = DaytoMină    END CREATEă    CREATE hr_day AS QCOOLBTNă      Top = 1265ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "hr » day"ă	Font = Arială	Hint = "Hours to days"ă	Showhint = 1ă      OnClick = HrtoDayă    END CREATEă    CREATE day_hr AS QCOOLBTNă      Top = 1265ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "day » hr"ă	Font = Arială	Hint = "Days to hours"ă	Showhint = 1ă      OnClick = DaytoHră    END CREATEă    CREATE PressurePanel AS QPANELă      Top = 1295ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "PRESSURE"ă    END CREATEă    CREATE psi_pas AS QCOOLBTNă      Top = 1325ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "psi » pas"ă	Font = Arială	Hint = "Pounds per square inch to pascals"ă	Showhint = 1ă      OnClick = PsitoPasă    END CREATEă    CREATE pas_psi AS QCOOLBTNă      Top = 1325ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "pas » psi"ă	Font = Arială	Hint = "Pascals to pounds per square inch"ă	Showhint = 1ă      OnClick = PastoPsiă    END CREATEă    CREATE psi_atm AS QCOOLBTNă      Top = 1355ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "psi » atm"ă	Font = Arială	Hint = "Pounds per square inch to atmospheres"ă	Showhint = 1ă      OnClick = PsitoAtmă    END CREATEă    CREATE atm_psi AS QCOOLBTNă      Top = 1355ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "atm » psi"ă	Font = Arială	Hint = "Atmospheres to pounds per square inch"ă	Showhint = 1ă      OnClick = atmtopsiă    END CREATEă    CREATE psi_kgscm AS QCOOLBTNă      Top = 1385ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "psi » kgscm"ă	Font = Arială	Hint = "Pounds per square inch to kilograms per square centimeter"ă	Showhint = 1ă      OnClick = PsitoKgscmă    END CREATEă    CREATE kgscm_psi AS QCOOLBTNă      Top = 1385ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "kgscm » psi"ă	Font = Arială	Hint = "Kilograms per square centimeter to pounds per square inch"ă	Showhint = 1ă      OnClick = KgscmtoPsiă    END CREATEă    CREATE AnglePanel AS QPANELă      Top = 1415ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "ANGLE"ă    END CREATEă    CREATE deg_rad AS QCOOLBTNă      Top = 1445ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "deg » rad"ă	Font = Arială	Hint = "Degrees to radians"ă	Showhint = 1ă      OnClick = DegtoRadă    END CREATEă    CREATE rad_deg AS QCOOLBTNă      Top = 1445ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "rad » deg"ă	Font = Arială	Hint = "Radians to degrees"ă	Showhint = 1ă      OnClick = RadtoDegă    END CREATEă    CREATE deg_dms AS QCOOLBTNă      Top = 1475ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "deg » d-m-s"ă	Font = Arială	Hint = "Degrees to degrees-minutes-seconds"ă	Showhint = 1ă      OnClick = DegtoDmsă    END CREATEă    CREATE dms_deg AS QCOOLBTNă      Top = 1475ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "d-m-s » deg"ă	Font = Arială	Hint = "Degrees-minutes-seconds to degrees"ă	Showhint = 1ă      OnClick = DmstoDegă    END CREATEă    CREATE NumbersPanel AS QPANELă      Top = 1505ă      Left = 5ă	Width = 205ă	Height = 25ă      Alignment = taCenteră      Font = ArialBă      Caption = "NUMBER"ă    END CREATEă    CREATE dec_hex AS QCOOLBTNă      Top = 1535ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "dec » hex"ă	Font = Arială	Hint = "Decimal to Hexadecimal"ă	Showhint = 1ă      OnClick = DectoHexă    END CREATEă    CREATE hex_dec AS QCOOLBTNă      Top = 1535ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "hex » dec"ă	Font = Arială	Hint = "Hexadecimal to decimal"ă	Showhint = 1ă      OnClick = preHextoDecă    END CREATEă    CREATE bin_dec AS QCOOLBTNă      Top = 1565ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "bin » dec"ă	Font = Arială	Hint = "Binary to decimal"ă	Showhint = 1ă      OnClick = preBintoDecă    END CREATEă    CREATE dec_bin AS QCOOLBTNă      Top = 1565ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "dec » bin"ă	Font = Arială	Hint = "Decimal to binary"ă	Showhint = 1ă      OnClick = DectoBină    END CREATEă  END CREATEă  CREATE TimeForm AS QFORM    ă    Color = &HABC111ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Caption = "World Clock: standard time"ă    Width = 238ă    Height = 300ă    Visible = 0    ă    FormStyle = fsStayOnTopă    ShowHint = 1ă    Hint = "Remember, to get DST: World Clock time + 1 hour"ă    'AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = CloseTZoneă    CREATE IntImpButton AS QOVALBTNă      Top = 1ă      Left = 5ă      Width = 100ă      Height = 31ă      Color = clBlackă      Caption = "English-Metric"ă      Font = Arial9Wă	Hint = "Convert English to Metric units"ă	Showhint = 1ă      OnClick = IntImpă    END CREATEă    CREATE ManButton AS QCOOLBTNă      Top = 5ă      Left = 110ă      Width = 100ă      Height = 25ă	Caption = "Manila"ă      Hint = "Manila, Singapore, Kuala Lumpur, Brunei" ă	Showhint = 1ă      OnClick = ManTimeă    END CREATEă    CREATE HKButton AS QCOOLBTNă      Top = 35ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "Hong Kong"ă	Hint = "Hong Kong, Macau, Taipei, Beijing, Perth"ă	Showhint = 1ă      OnClick = HKTimeă    END CREATEă    CREATE LAButton AS QCOOLBTNă      Top = 395ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "Los Angeles"ă	Hint = "Los Angeles, San Francisco, Las Vegas, U.S. Pacific Coast"ă	Showhint = 1ă      OnClick = LATimeă    END CREATEă    CREATE LonButton AS QCOOLBTNă      Top = 65ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "London"ă	Hint = "London, Dublin, Edinburgh, Greenwich, Lisbon" ă	Showhint = 1ă      OnClick = LonTimeă    END CREATEă    CREATE ParButton AS QCOOLBTNă      Top = 65ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "Paris"ă	Hint = "Paris, Provence, Vienna, Normandy, Monaco"ă	Showhint = 1ă      OnClick = ParTimeă    END CREATEă    CREATE MadButton AS QCOOLBTNă      Top = 95ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "Madrid"ă	Hint = "Madrid, Barcelona, Seville, Sofia, Luxemburg"ă	Showhint = 1ă      OnClick = MadTimeă    END CREATEă    CREATE BerButton AS QCOOLBTNă      Top = 95ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "Berlin"ă  	Hint = "Berlin, Munich, Hamburg, Warsaw, Sarajevo, Zagreb"ă	Showhint = 1ă      OnClick = BerTimeă    END CREATEă    CREATE HelButton AS QCOOLBTNă      Top = 125ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "Helsinki"ă	Hint = "Helsinki, Riga, Talinn, Minsk"ă	Showhint = 1ă      OnClick = HelTimeă    END CREATEă    CREATE MosButton AS QCOOLBTNă      Top = 125ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "Moscow"ă      Hint = "Moscow, St. Petersburg, Volgograd"ă	Showhint = 1ă      OnClick = MosTimeă    END CREATEă    CREATE RomButton AS QCOOLBTNă      Top = 155ă      Left = 5ă      Width = 100ă      Height = 25ă	Caption = "Rome"ă      Hint = "Rome, Milan, Venice, Amsterdam, Bern, Prague"ă	Showhint = 1ă      OnClick = RomTimeă    END CREATEă    CREATE TokButton AS QCOOLBTNă      Top = 245ă      Left = 110ă      Width = 100ă      Height = 25ă	Caption = "Tokyo"ă      Hint = "Tokyo, Osaka, Sapporo, Okinawa, Seoul, Yakutsk"ă	Showhint = 1ă      OnClick = TokTimeă    END CREATEă    CREATE HonButton AS QCOOLBTNă      Top = 185ă      Left = 5ă      Width = 100ă      Height = 25ă	Caption = "Honolulu"ă      Hint = "Honolulu, Tahiti, French Polynesia, Fairbanks, Anchorage"ă	Showhint = 1ă      OnClick = HonTimeă    END CREATEă    CREATE StoButton AS QCOOLBTNă      Top = 155ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "Stockholm"ă      Hint = "Stockholm, Copenhagen, Oslo, Vilnius"ă	Showhint = 1ă      OnClick = StoTimeă    END CREATEă    CREATE SydButton AS QCOOLBTNă      Top = 215ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "Sydney"ă	Hint = "Sydney, Canberra, Melbourne, Brisbane, Hobart, Vladivostok"ă	Showhint = 1ă      OnClick = SydTimeă    END CREATEă    CREATE RioButton AS QCOOLBTNă      Top = 275ă      Left = 110ă      Width = 100ă      Height = 25ă	Caption = "Rio de Janeiro"ă      Hint = "Rio de Janeiro, Buenos Aires, Sao Paolo, Uruguay, Greenland"ă	Showhint = 1ă      OnClick = RioTimeă    END CREATEă    CREATE AucButton AS QCOOLBTNă      Top = 245ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "Auckland"ă      Hint = "Auckland, Wellington, Suva, Marshall Islands"ă	Showhint = 1ă      OnClick = AucTimeă    END CREATEă    CREATE GuaButton AS QCOOLBTNă      Top = 185ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "Guam"ă      Hint = "Guam, Saipan, Port Moresby, Marianas"ă	Showhint = 1ă      OnClick = GuaTimeă    END CREATEă    CREATE MexButton AS QCOOLBTNă      Top = 275ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "Mexico"ă      Hint = "Mexico, Honduras, Guatemala, Nicaragua, Costa Rica"ă	Showhint = 1ă      OnClick = MexTimeă    END CREATEă    CREATE TorButton AS QCOOLBTNă      Top = 215ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "Toronto"ă	Hint = "Toronto, Quebec, Ottawa, Montreal"ă	Showhint = 1ă      OnClick = TorTimeă    END CREATEă    CREATE MumButton AS QCOOLBTNă      Top = 305ă      Left = 5ă      Width = 100ă      Height = 25ă	Caption = "Mumbai"ă      Hint = "Mumbai, Calcutta, Madras, New Delhi"ă	Showhint = 1ă      OnClick = MumTimeă    END CREATEă    CREATE KarButton AS QCOOLBTNă      Top = 305ă      Left = 110ă      Width = 100ă      Height = 25ă	Caption = "Karachi"ă      Hint = "Karachi, Islamabad, Tashkent"ă	Showhint = 1ă      OnClick = KarTimeă    END CREATEă    CREATE CarButton AS QCOOLBTNă      Top = 335ă      Left = 5ă      Width = 100ă      Height = 25ă	Caption = "Caracas"ă      Hint = "Caracas, Santiago, La Paz, Bermuda, Virgin Is."ă	Showhint = 1ă      OnClick = CarTimeă    END CREATEă    CREATE DelButton AS QCOOLBTNă      Top = 35ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "Jakarta"ă	Hint = "Jakarta, Hanoi, Saigon, Bangkok, Sumatra"ă	Showhint = 1ă      OnClick = JakTimeă    END CREATEă    CREATE RiyButton AS QCOOLBTNă      Top = 365ă      Left = 5ă      Width = 100ă      Height = 25ă      Caption = "Riyadh"ă	Hint = "Riyadh, Kuwait, Bahrain, Nairobi, Addis Ababa"ă	Showhint = 1ă      OnClick = RiyTimeă    END CREATEă    CREATE HavButton AS QCOOLBTNă      Top = 335ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "Havana"ă	Hint = "Havana, Jamaica, Bahamas, Haiti, Ecuador"ă	Showhint = 1ă      OnClick = HavTimeă    END CREATEă    CREATE NYButton AS QCOOLBTNă      Top = 395ă      Left = 5ă      Width = 100ă      Height = 25ă	Caption = "New York"ă      Hint = "New York, Washington D.C., Boston, Atlanta, Miami, U.S. Atlantic Coast"ă	Showhint = 1ă      OnClick = NYTimeă    END CREATEă    CREATE CaiButton AS QCOOLBTNă      Top = 365ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "Cairo"ă      Hint = "Cairo, Jerusalem, Baghdad, Istanbul, Athens, Bucharest"ă	Showhint = 1ă      OnClick = CaiTimeă    END CREATEă    CREATE SLButton AS QCOOLBTNă      Top = 425ă      Left = 5ă      Width = 100ă      Height = 25ă	Caption = "Salt Lake"ă      Hint = "Salt Lake, Phoenix, Denver, U.S. Mountain Zone"ă	Showhint = 1ă      OnClick = SLTimeă    END CREATEă    CREATE HouButton AS QCOOLBTNă      Top = 425ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "Houston"ă      Hint = "Houston, Dallas, Chicago, New Orleans, Memphis, U.S. Central Zone"ă	Showhint = 1ă      OnClick = HouTimeă    END CREATEă    CREATE TehButton AS QCOOLBTNă      Top = 455ă      Left = 5ă      Width = 100ă      Height = 25ă	Caption = "Tehran"ă      Hint = "Tehran"ă	Showhint = 1ă      OnClick = TehTimeă    END CREATEă    CREATE RanButton AS QCOOLBTNă      Top = 455ă      Left = 110ă      Width = 100ă      Height = 25ă      Caption = "Rangoon"ă      Hint = "Rangoon"ă	Showhint = 1ă      OnClick = RanTimeă    END CREATEă  END CREATEă  CREATE StatsForm AS QFORM    ă    Color = &HABC111ă    Visible = 0ă    Top = Screen.Height/2 - Form.Height/7.18ă    Left = Screen.Width/2 - Form.Width/2.09ă    Width = 238ă    Height = 300ă    FormStyle = fsStayOnTop   ă    Caption = "Statistics"ă    AutoScroll = 0ă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    BorderStyle = bsSingleă    OnClose = Cleară    CREATE StatsBox AS QLISTBOXă      Width = 125ă      Align = alLeftă    END CREATEă    CREATE TotalButton AS QCOOLBTNă      Top = 5ă      Left = 130ă      Width = 100ă      Height = 25ă      Caption = "# of Items"ă	Hint = "Total number of entries"ă	Showhint = 1ă      OnClick = Numberă    END CREATEă    CREATE SumButton AS QCOOLBTNă      Top = 35ă      Left = 130ă      Width = 100ă      Height = 25ă      Caption = "Sum of Items"ă	Hint = "Sum of entries"ă	Showhint = 1ă      OnClick = Sumă    END CREATEă    CREATE SortButton AS QCOOLBTNă      Top = 65ă      Left = 130ă      Width = 100ă      Height = 25ă      Caption = "Sort"ă	Hint = "Sort items in ascending order"ă	Showhint = 1 ă      OnClick = Sortă    END CREATEă    CREATE AverButton AS QCOOLBTNă      Top = 95ă      Left = 130ă      Width = 100ă      Height = 25ă      Caption = "Average"ă	Hint = "Average (Arithmetic Mean)"ă	Showhint = 1ă      OnClick = Averageă    END CREATEă    CREATE SumSquaresButton AS QCOOLBTNă      Top = 125ă      Left = 130ă      Width = 100ă      Height = 25ă      Caption = "Sum of Squares"ă      OnClick = SumSquaresă    END CREATEă    CREATE SDevButton AS QCOOLBTNă      Top = 155ă      Left = 130ă      Width = 100ă      Height = 25ă      Caption = "S. Stand. Deviation"ă	Hint = "Sample Standard Deviation"ă	Showhint = 1ă      OnClick = StdDevă    END CREATEă    CREATE PDevButton AS QCOOLBTNă      Top = 185ă      Left = 130ă      Width = 100ă      Height = 25ă      Caption = "P. Stand. Deviation"ă	Hint = "Population Standard Deviation"ă	Showhint = 1ă      OnClick = PopDevă    END CREATEă    CREATE CorrelButton AS QCOOLBTNă      Top = 215ă      Left = 130ă      Width = 100ă      Height = 25ă      Caption = "Correlation"ă	Hint = "Association: r˛ (correlation coefficient squared)"ă	Showhint = 1ă      OnClick = Correlateă    END CREATEă    CREATE ClearButton AS QCOOLBTNă      Top = 245ă      Left = 130ă      Width = 100ă      Height = 25ă      Caption = "CLEAR"ă      OnClick = Cleară    END CREATEă    CREATE CorrelateForm AS QFORMă      Color = &HABC111ă      Visible = 0ă      Top = Screen.Height/2 - Form.Height/7.18ă      Left = Screen.Width/2 - Form.Width/2.09ă      Width = 238ă      Height = 205ă      FormStyle = fsStayOnTop   ă      Caption = "Correlation"ă      AutoScroll = 0ă      'DelBorderIcons(biMaximize)ă      'BorderStyle = bsSingleă      OnClose = Cleară      CREATE CorrelateBox AS QLISTBOXă        Width = 120ă        Align = alLeftă      END CREATEă      CREATE CorrelatePanel1 AS QLABELă        Top = 5ă        Width = 90ă        Left = 122ă        Caption = "  Enter FIRST data set." ă      END CREATEă      CREATE CorrelatePanel2 AS QLABELă        Top = 20ă        Width = 90ă        Left = 142ă        Caption = "Then, press OK" ă      END CREATEă      CREATE CorrelateButton AS QButtonă        Top = 40ă        Left = 142ă        Caption = "OK"ă        OnClick = Correlate0 ă      END CREATE      ă    END CREATEă  END CREATEă  CREATE MainMenu AS QMAINMENUă    CREATE File AS QMENUITEMă      Caption = "&File"ă      CREATE SaveH AS QMENUITEMă        Caption = "&Save history tape"ă        OnClick = FSaveHă      END CREATEă      CREATE PrintH AS QMENUITEMă        Caption = "&Print history tape"ă        OnClick = FPrintHă      END CREATEă      CREATE BreakH AS QMENUITEMă        Caption = "-"ă      END CREATE      ă      CREATE Save AS QMENUITEMă        Caption = "S&ave stats tape"ă        OnClick = FSaveă      END CREATEă      CREATE PrintS AS QMENUITEMă        Caption = "P&rint stats tape"ă        OnClick = FPrintSă      END CREATEă      CREATE BreakS AS QMENUITEMă        Caption = "-"ă      END CREATEă      CREATE SaveC AS QMENUITEMă        Caption = "Sa&ve &correlation tape"ă        OnClick = FSaveCă      END CREATEă      CREATE PrintC AS QMENUITEMă        Caption = "Pr&int correlation tape"ă        OnClick = FPrintCă      END CREATEă      CREATE BreakC AS QMENUITEMă        Caption = "-"ă      END CREATEă      CREATE Close AS QMENUITEMă        Caption = "&Close"ă        OnClick = FormCloseă      END CREATEă    END CREATEă    CREATE Edit AS QMENUITEMă      Caption = "&Edit"ă      CREATE Copy AS QMENUITEMă        Caption = "&Copy"ă        Shortcut = "Ctrl+C"ă        OnClick = ClipboardCopy ă      END CREATEă      CREATE Paste AS QMENUITEMă        Caption = "&Paste"ă        Shortcut = "Ctrl+V"ă        OnClick = ClipboardPasteă      END CREATEă    END CREATEă    CREATE Uses AS QMENUITEMă      Caption = "&Uses"ă      CREATE CoordinateSys AS QMENUITEMă        Caption = "&Coordinates"ă	  OnClick = Coordinateă      END CREATEă      CREATE DateCalc AS QMENUITEMă        Caption = "&Dates"ă        CREATE DaysDiff AS QMENUITEMă          Caption = "&Days Difference"ă	    OnClick = DaysDă        END CREATEă        CREATE NewDate AS QMENUITEMă          Caption = "&New Date"ă	    OnClick = NewDă        END CREATE        ă      END CREATEă      CREATE Equations AS QMENUITEMă        Caption = "&Equations"ă        CREATE CubicEquation AS QMENUITEMă          Caption = "&Cubic"ă	    OnClick = Cubică        END CREATEă        CREATE DrakeEquation AS QMENUITEMă          Caption = "&Drake"ă	    OnClick = Drakeă        END CREATEă        CREATE PythaEquation AS QMENUITEMă          Caption = "&Pythagorean"ă	    OnClick = Pythagoreană        END CREATEă        CREATE QuadEquation AS QMENUITEMă          Caption = "&Quadratic"ă	    OnClick = Quadratică        END CREATEă      END CREATE      ă      CREATE Convertion AS QMENUITEMă        Caption = "E&quivalents"ă        CREATE ConvEquivs AS QMENUITEMă          Caption = "E&quivalents by Category"ă          OnClick = Equivalentsă        END CREATEă        CREATE EngMetric AS QMENUITEMă          Caption = "English-&Metric"ă          OnClick = IntImpă        END CREATEă      END CREATEă      CREATE Expression AS QMENUITEMă        Caption = "Math-E&xpression Solver"ă        OnClick = ExpSolveră      END CREATEă      CREATE Financial AS QMENUITEMă        Caption = "&Financial"ă        CREATE FinRates AS QMENUITEMă          Caption = "&Factor Rate"ă	    OnClick = Ratesă        END CREATEă        CREATE Amortize AS QMENUITEMă          Caption = "&Amortization Payment"ă	    OnClick = Amortizationă        END CREATEă        CREATE Compound AS QMENUITEMă          Caption = "&Compound Interest"ă          OnClick = CompoundInterestă        END CREATEă        CREATE PValue AS QMENUITEMă          Caption = "&Present/Future Value"ă          OnClick = PresentValueă        END CREATEă      END CREATEă      CREATE RNGm AS QMENUITEMă        Caption = "&Random Numbers"ă	  OnClick = RNGă      END CREATEă      CREATE Statistics AS QMENUITEMă        Caption = "&Statistics"ă        OnClick = Stats ă      END CREATEă      CREATE Trigonometry AS QMENUITEMă        Caption = "&Trigonometric Functions"ă        OnClick = TrigFuncă      END CREATEă      CREATE TimeZones AS QMENUITEMă        Caption = "&World Clock"ă        OnClick = TZoneă      END CREATEă    END CREATEă    CREATE ScreenM AS QMENUITEMă      Caption = "&Screen"ă      CREATE ScreenOnOff AS QMENUITEMă        Caption = "&Screen off"ă        OnClick = Screenă      END CREATEă      CREATE StarfieldM AS QMENUITEMă        Caption = "S&tarfield off"ă        OnClick = Starfieldă      END CREATEă      CREATE CometM AS QMENUITEMă        Caption = "&Comet trail off"ă        OnClick = Cometă      END CREATEă      CREATE HistoryM AS QMENUITEMă        Caption = "&History tape on"ă        OnClick = Historyă      END CREATE      ă      CREATE MessageOnOff AS QMENUITEMă        Caption = "&Message on"ă        OnClick = Messageă      END CREATEă    END CREATEă    CREATE FormatOptions AS QMENUITEMă      Caption = "For&mat"ă      CREATE OutFin AS QMENUITEMă        Caption = "&Financial"ă        OnClick = OutFinancială      END CREATEă      CREATE OutSci AS QMENUITEMă        Caption = "&Scientific"ă        OnClick = OutScientifică      END CREATEă      CREATE OutCom AS QMENUITEMă        Caption = "&Comma separated"ă        OnClick = OutCommaă      END CREATEă      CREATE OutNon AS QMENUITEMă        Caption = "&No format"ă        OnClick = OutNoneă      END CREATEă      CREATE OutNoForm AS QMENUITEMă        Caption = "&User-set precision"ă        CREATE OutPrecise1 AS QMENUITEMă          Caption = "1"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise2 AS QMENUITEMă          Caption = "2"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise3 AS QMENUITEMă          Caption = "3"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise4 AS QMENUITEMă          Caption = "4"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise5 AS QMENUITEMă          Caption = "5"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise6 AS QMENUITEMă          Caption = "6"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise7 AS QMENUITEMă          Caption = "7"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise8 AS QMENUITEMă          Caption = "8"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise9 AS QMENUITEMă          Caption = "9"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise10 AS QMENUITEMă          Caption = "10"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise11 AS QMENUITEMă          Caption = "11"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise12 AS QMENUITEMă          Caption = "12"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise13 AS QMENUITEMă          Caption = "13"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise14 AS QMENUITEMă          Caption = "14"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise15 AS QMENUITEMă          Caption = "15"ă          OnClick = OutUseră        END CREATEă      END CREATE                  ă    END CREATEă    CREATE Constants AS QMENUITEMă      Caption = "&Constants"ă      CREATE AccelerationG AS QMENUITEMă        Caption = "Acceleration of gravity (m/sec˛)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE ADensity AS QMENUITEMă        Caption = "Dry air density at STP (kg/m" + CHR$(0179) + ")"ă        OnClick = ConstantsAllă      END CREATEă      CREATE LSpeed AS QMENUITEMă        Caption = "Light speed in a vacuum (m/sec)"ă        OnClick = ConstantsAll ă      END CREATEă      CREATE SolarC AS QMENUITEMă        Caption = "Solar constant (watts/m˛)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE SSpeed AS QMENUITEMă        Caption = "Sound speed at STP (m/sec)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE SAtmosphere AS QMENUITEMă        Caption = "Standard atmosphere (nt/m˛)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE BreakEarth1 AS QMENUITEMă        Caption = "-"ă      END CREATEă      CREATE EERadius AS QMENUITEMă        Caption = "Earth equatorial radius (m)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE EEscapeV AS QMENUITEMă        Caption = "Earth escape velcity (m/sec)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE MEarthDipole AS QMENUITEMă        Caption = "Earth magnetic dipole moment (amp-m˛)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE MEarth AS QMENUITEMă        Caption = "Earth mass (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE MAngularS AS QMENUITEMă        Caption = "Earth mean angular rotational speed (rads/sec)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE DEarth AS QMENUITEMă        Caption = "Earth mean density (kg/m" + CHR$(0179) + ")"ă        OnClick = ConstantsAll ă      END CREATEă      CREATE MOrbitalS AS QMENUITEMă        Caption = "Earth mean orbital speed (m/sec)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE PERadius AS QMENUITEMă        Caption = "Earth polar radius (m)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE VEarth AS QMENUITEMă        Caption = "Earth volume (m" + CHR$(0179) + ")"ă        OnClick = ConstantsAllă      END CREATEă      CREATE BreakEarth2 AS QMENUITEMă        Caption = "-"ă      END CREATEă      CREATE AlphaPMass AS QMENUITEMă        Caption = "Alpha particle mass (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE ElectronCMassR AS QMENUITEMă        Caption = "Electron charge-mass ratio (coul/kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE ElectronMass AS QMENUITEMă        Caption = "Electron rest mass (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE MuonMass AS QMENUITEMă        Caption = "Muon rest mass (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE NeutronMass AS QMENUITEMă        Caption = "Neutron rest mass (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE ProtonMass AS QMENUITEMă        Caption = "Proton rest mass (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE AtomicBreak AS QMENUITEMă        Caption = "-"ă      END CREATEă      CREATE ATomicMC AS QMENUITEMă        Caption = "Atomic mass constant (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE AvogadroC AS QMENUITEMă        Caption = "Avogadro constant (1/mole)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE BoltzmannC AS QMENUITEMă        Caption = "Boltzmann constant (joule/K)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE ECharge AS QMENUITEMă        Caption = "Elementary charge (coul)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE FaradayC AS QMENUITEMă        Caption = "Faraday constant (coul/mole)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE GravityC AS QMENUITEMă        Caption = "Gravitational constant (nt-m˛/kg˛)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE PermeabilityC AS QMENUITEMă        Caption = "Permeability constant (henry/m)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE PermittivityC AS QMENUITEMă        Caption = "Permittivity constant (farad/m)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE PlankC AS QMENUITEMă        Caption = "Planck constant (joule-sec)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE RydbergC AS QMENUITEMă        Caption = "Rydberg constant (1/m)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE SBoltzmannC AS QMENUITEMă        Caption = "Stefan-Boltzmann constant (watt/m˛K4)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE UnivGasC AS QMENUITEMă        Caption = "Universal gas constant (joule/K-mole)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE WienC AS QMENUITEMă        Caption = "Wien displacement constant (m-K)"ă        OnClick = ConstantsAllă      END CREATEă    END CREATE                  ă    CREATE Options AS QMENUITEMă      Caption = "&Options"ă      CREATE Sownd AS QMENUITEMă        Caption = "&Sound off"ă        OnClick = Choicesă      END CREATEă      CREATE Colour AS QMENUITEMă        Caption = "Change &background color"ă        OnClick = Colorsă      END CREATEă      CREATE Location AS QMENUITEMă        Caption = "Change &city"ă        OnClick = Cityă      END CREATEă      CREATE Date AS QMENUITEMă        Caption = "Change &date format"ă        CREATE DateUS AS QMENUITEMă          Caption = "&mm-dd-yyyy"ă          OnClick = USDateă        END CREATEă        CREATE DateUK AS QMENUITEMă          Caption = "&dd-mm-yyyy"ă          OnClick = UKDateă        END CREATEă        CREATE DateInt AS QMENUITEMă          Caption = "&yyyy-dd-mm"ă          OnClick = IntDateă        END CREATEă      END CREATEă      CREATE MessageNew AS QMENUITEMă        Caption = "Change &message"ă        OnClick = MessageChangeă      END CREATEă    END CREATEă    CREATE Notes AS QMENUITEMă      Caption = "&Notes"ă      OnClick = Productă    END CREATEă  END CREATE  ă    CREATE OvalBtn1 AS QOVALBTNă        Caption = "Answer"ă        Left = 252ă        Top = 220ă        Width = 68ă        Height = 36ă        Cursor = -12ă	  Font = Vivaldiă        Hint = "Equals"ă        Showhint = 1ă        Color = clRedă	  OnClick = ButtonClickEnteră    END CREATEă    CREATE CoolBtn1 AS QCOOLBTNă	  Caption = "1"ă        Left = 252ă        Top = 13ă        Width = 30ă        Height = 30ă        Cursor = -21ă	  Font = ArialBlă	  OnClick = ButtonClick1ă    END CREATEă    CREATE CoolBtn2 AS QCOOLBTNă	  Caption = "2"ă        Left = 287ă        Top = 13ă        Width = 30ă        Height = 30ă        Cursor = -21ă	  Font = ArialBlă	  OnClick = ButtonClick2ă    END CREATEă    CREATE CoolBtn3 AS QCOOLBTNă        Caption = "3"ă	  Left = 322ă        Top = 13ă        Width = 30ă        Height = 30ă        Cursor = -21ă	  Font = ArialBlă	  OnClick = ButtonClick3ă    END CREATEă    CREATE CoolBtn4 AS QCOOLBTNă	  Caption = "4"ă        Left = 252ă        Top = 48ă        Width = 30ă        Height = 30ă        Cursor = -21ă	  Font = ArialBlă	  OnClick = ButtonClick4ă    END CREATEă    CREATE CoolBtn5 AS QCOOLBTNă	  Caption = "5"ă        Left = 287ă        Top = 48ă        Width = 30ă        Height = 30ă        Cursor = -21ă	  Font = ArialBlă	  OnClick = ButtonClick5ă    END CREATEă    CREATE CoolBtn6 AS QCOOLBTNă	  Caption = "6"ă        Left = 322ă        Top = 48ă        Width = 30ă        Height = 30ă        Cursor = -21ă        Font = ArialBlă	  OnClick = ButtonClick6ă    END CREATEă    CREATE CoolBtn7 AS QCOOLBTNă	  Caption = "7"ă        Left = 252ă        Top = 83ă        Width = 30ă        Height = 30ă        Cursor = -21ă	  Font = ArialBlă	  OnClick = ButtonClick7ă    END CREATEă    CREATE CoolBtn8 AS QCOOLBTNă	  Caption = "8"ă        Left = 287ă        Top = 83ă        Width = 30ă        Height = 30ă        Cursor = -21ă	  Font = ArialBlă	  OnClick = ButtonClick8ă    END CREATEă    CREATE CoolBtn9 AS QCOOLBTNă	  Caption = "9"ă        Left = 322ă        Top = 83ă        Width = 30ă        Height = 30ă        Cursor = -21ă	  Font = ArialBlă	  OnClick = ButtonClick9ă    END CREATEă    CREATE CoolBtn10 AS QCOOLBTNă	  Caption = "0"ă        Left = 252ă        Top = 118ă        Width = 30ă        Height = 30ă        Cursor = -21ă	  Font = ArialBlă	  OnClick = ButtonClick0ă    END CREATEă    CREATE FSeparator AS QCOOLBTNă	  Caption = "\"ă        Left = 287ă        Top = 258ă        Width = 30ă        Height = 30ă	  Font = Helvetica12ă        Cursor = -21ă        Hint = "Fraction separator: 3˝ is 3\1\2"ă        Showhint = 1ă	  OnClick = Backslashă    END CREATEă    CREATE CoolBtn11 AS QCOOLBTNă	  Caption = "C"ă        Left = 287ă        Top = 118ă        Width = 30ă        Height = 30ă	  Font = ArialRă        Cursor = -21ă        Hint = "Clears last digit"ă        Showhint = 1ă	  OnClick = ButtonClickCă    END CREATEă    CREATE CoolBtn12 AS QCOOLBTNă	  Caption = "CA"ă        Left = 322ă        Top = 118ă        Width = 30ă        Height = 30ă	  Font = ArialRă        Cursor = -21ă        Hint = "Clears display"ă        Showhint = 1ă	  OnClick = ButtonClickCAă    END CREATEă    CREATE CoolBtn13 AS QOVALBTNă	  Caption = "+"ă        Left = 252ă        Top = 153ă        Width = 33ă        Height = 30ă        Layout = -1ă        Color = clWhite '55555555 '&H00FF00ă	  Font = ArialBă        Hint = "Addition"ă        Showhint = 1ă	  OnClick = ButtonClickPlusă    END CREATEă    CREATE CoolBtn14 AS QOVALBTNă	  Caption = "x"ă        Left = 287ă        Top = 153ă        Width = 33ă        Height = 30ă        Layout = -1ă        Color = clWhite '55555555 '&H00FF00ă	  Font = ArialBă        Hint = "Multiplication"ă        Showhint = 1ă	  OnClick = ButtonClickMultă    END CREATEă    CREATE CoolBtn15 AS QOVALBTNă	  Caption = "."ă        Left = 322ă        Top = 153ă        Width = 33ă        Height = 30ă        Layout = -1ă        Color = clWhite '55555555 '&H00FF00ă	  Font = ArialBă        Hint = "Decimal point"ă        Showhint = 1ă	  OnClick = ButtonClickDotă    END CREATEă    CREATE CoolBtn16 AS QOVALBTNă	  Caption = "--"ă        Left = 252ă        Top = 188ă        Width = 33ă        Height = 30ă        Layout = -1ă        Color = clWhite '55555555 '&H00FF00ă	  Font = ArialBă        Hint = "Subtraction"ă        Showhint = 1ă	  OnClick = ButtonClickMinusă    END CREATEă    CREATE CoolBtn17 AS QOVALBTNă	  Caption = "÷"ă        Left = 287ă        Top = 188ă        Width = 33ă        Height = 30ă        Layout = -1ă        Color = clWhite '55555555 '&H00FF00ă	  Font = ArialBă        Hint = "Division"ă        Showhint = 1ă	  OnClick = ButtonClickDivă    END CREATEă    CREATE CoolBtn18 AS QCOOLBTNă	  Caption = "%"ă        Left = 322ă        Top = 223ă        Width = 30ă        Height = 30ă	  Font = Helvetica12ă        Cursor = -21ă        Hint = "Percentage: 50 % 10 = 5"ă        Showhint = 1ă	  OnClick = ButtonClickPercentă    END CREATEă    CREATE CoolBtn19 AS QCOOLBTNă	  Caption = CHR$(112)ă        Left = 392ă        Top = 118ă        Width = 30ă        Height = 30ă	  Font = SymbolBă        Cursor = -21ă        Hint = "Pi"ă        Showhint = 1ă	  OnClick = ButtonClickPiă    END CREATEă    CREATE CoolBtn20 AS QCOOLBTNă	  Caption = CHR$(214)ă        Left = 392ă        Top = 258ă        Width = 30ă        Height = 30ă	  Font = Symbolă        Hint = "Square root"ă        Cursor = -21ă        Showhint = 1ă	  OnClick = ButtonClickSqră    END CREATEă    CREATE CoolBtn21 AS QCOOLBTNă        Caption = "sin"ă	  Left = 357ă        Top = 83ă        Width = 30ă        Height = 30ă	  Font = Arială        Cursor = -21ă        Hint = "Sine"ă        Showhint = 1ă	  OnClick = ButtonClickSină    END CREATEă    CREATE CoolBtn22 AS QCOOLBTNă	  Caption = "cos"ă        Left = 392ă        Top = 83ă        Width = 30ă        Height = 30ă	  Font = Arială        Cursor = -21ă        Hint = "Cosine"ă        Showhint = 1ă	  OnClick = ButtonClickCosă    END CREATEă    CREATE CoolBtn23 AS QCOOLBTNă	  Caption = "tan"ă        Left = 357ă        Top = 118ă        Width = 30ă        Height = 30ă	  Font = Arială        Cursor = -21ă        Hint = "Tangent"ă        Showhint = 1ă	  OnClick = ButtonClickTană    END CREATEă    CREATE CoolBtn25 AS QCOOLBTNă	  Caption = "M+"ă        Left = 357ă        Top = 153ă        Width = 30ă        Height = 30ă	  Font = HelveticaTaeă        Cursor = -21ă        Hint = "Adds amount to value in memory"ă        Showhint = 1ă	  OnClick = ButtonClickMPlusă    END CREATEă    CREATE CoolBtn27 AS QCOOLBTNă	  Caption = "MR"ă        Left = 392ă        Top = 153ă        Width = 30ă        Height = 30ă	  Font = HelveticaTaeă        Cursor = -21ă        Hint = "Recalls total amount in memory"ă        Showhint = 1ă	  OnClick = ButtonClickMRă    END CREATEă    CREATE CoolBtn28 AS QCOOLBTNă	  Caption = "MC"ă        Left = 357ă        Top = 188ă        Width = 30ă        Height = 30ă	  Font = HelveticaTaeă        Cursor = -21ă        Hint = "Erases total amount in memory"ă        Showhint = 1ă	  OnClick = ButtonClickMCă    END CREATEă    CREATE MemNewBut AS QCOOLBTNă	  Caption = "MN"ă        Left = 392ă        Top = 188ă        Width = 30ă        Height = 30ă	  Font = HelveticaTaeă        Cursor = -21ă        Hint = "Replaces amount in memory with new value"ă        Showhint = 1ă	  OnClick = MemNew ă    END CREATEă    CREATE CoolBtn29 AS QCOOLBTNă	  Caption = "^"ă        Left = 357ă        Top = 223ă        Width = 30ă        Height = 30ă	  Font = Helvetica12ă        Cursor = -21ă        Hint = "Exponent: 2 ^ 3 = 8"ă        Showhint = 1 ă	  OnClick = ButtonClickPoweră    END CREATEă    CREATE BSquared AS QCOOLBTNă	  Caption = "x˛"ă        Left = 357ă        Top = 258ă        Width = 30ă        Height = 30ă	  Font = Helvetica12ă        Cursor = -21ă        Hint = "Squared"ă        Showhint = 1ă	  OnClick = Squaredă    END CREATEă    CREATE BSign AS QOVALBTNă	  Caption = "+/-"ă        Left = 322ă        Top = 188ă        Width = 33ă        Height = 30ă        Layout = -1ă        Color = clWhite '55555555 '&H00FF00ă	  Font = ArialG1ă        Hint = "Change sign"ă        Showhint = 1ă	  OnClick = Signă    END CREATEă    CREATE Brt AS QCOOLBTNă	  Caption = "rt"ă        Left = 392ă        Top = 223ă        Width = 30ă        Height = 30ă	  Font = Arială        Cursor = -21ă        Hint = "Root: 8 rt 3 = 2"ă        Showhint = 1ă	  OnClick = Rootă    END CREATEă    CREATE Be AS QCOOLBTNă	  Caption = "10^"ă        Left = 357ă        Top = 48ă        Width = 30ă        Height = 30ă	  Font = Arială        Cursor = -21ă        Hint = "Common antilogarithm"ă        Showhint = 1ă	  OnClick = 10poweră    END CREATE ă    CREATE BLog AS QCOOLBTNă	  Caption = "log"ă        Left = 357ă        Top = 13ă        Width = 30ă        Height = 30ă	  Font = Arială        Cursor = -21ă        Hint = "Common logarithm"ă        Showhint = 1ă	  OnClick = Logă    END CREATEă    CREATE CoolBtn30 AS QCOOLBTNă	  Caption = "1/x"ă        Left = 322ă        Top = 258ă        Width = 30ă        Height = 30ă	  Font = Helvetica12ă        Cursor = -21ă        Hint = "Reciprocal"ă        Showhint = 1ă	  OnClick = ButtonClickInverseă    END CREATEă    CREATE BSeparator AS QCOOLBTNă	  Caption = "’"ă        Left = 252ă        Top = 258ă        Width = 30ă        Height = 30ă	  Font = Helvetica16ă        Cursor = -21ă        Hint = "Separator for deg-min-sec input"ă        Showhint = 1ă	  OnClick = Separatoră    END CREATEă    CREATE epower AS QCOOLBTNă	  Caption = "e^"ă        Left = 392ă        Top = 48ă        Width = 30ă        Height = 30ă	  Font = Arială        Cursor = -21ă        Hint = "Natural antilogarithm"ă        Showhint = 1ă	  OnClick = Expă    END CREATEă    CREATE Bln AS QCOOLBTNă	  Caption = "ln"ă        Left = 392ă        Top = 13ă        Width = 30ă        Height = 30ă	  Font = Arială        Cursor = -21ă        Hint = "Natural logarithm"ă        Showhint = 1ă	  OnClick = Lnă    END CREATEă    CREATE Label1 AS QPANELă        Color = clBlueă        Alignment = taCenteră        Caption = "0"ă        BevelInner = 1ă        BevelOuter = 2ă        BevelWidth = 3ă        Left = 10ă        Top = 13ă        Width = 230ă        Height = 36ă	  Font = ArialW14ă        Cursor = -21ă        Hint = "Click to round result to the nearest integer"ă        Showhint = 1ă        OnClick = RoundFă    END CREATEă    CREATE BlankLabel1 AS QPANELă        Alignment = taCenter ă        Left = 10ă        Top = 53ă        Width = 105ă        Color = clBlackă        Height = 30ă	  Font = TimeFont11ă        Cursor = -21ă        Hint = "Click to toggle between active standard and military time"ă        Showhint = 1ă        OnClick = MilTimeă    END CREATEă    CREATE DegRadButt AS QPANELă        Top = 53ă        Left= 115ă        Width = 20ă        Height = 30ă        Color = clBlackă	  Font = TimeFont11ă        Cursor = -21ă        Caption = "D"ă        Hint = "Now in Degrees. Click to compute in Radians.""ă        Showhint = 1ă        OnClick = ChangeModeă    END CREATEă    CREATE BlankLabel2 AS QPANELă        Alignment = taCenteră        Left = 135ă        Top = 53ă        Width = 105ă        Height = 30ă        Color = clBlackă	  Font = TimeFont11ă        Cursor = -21ă        Hint = "Click to toggle between date and day of the week"ă        Showhint = 1ă        OnClick = ClickDateă    END CREATEăEND CREATEăăSUB ButtonClickEnteră  DEFBYTE first, second, firstR, secondR, divă  first = INSTR(memvalue,"\")ă  firstR = RINSTR(memvalue,"\")ă  second = INSTR(memvaluenext,"\")ă  secondR = RINSTR(memvaluenext,"\")ă  wholeF$ = ""ă  wholeS$ = ""ă  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  entry = memvalueă  entrynext = memvaluenextă  HistoryView.AddItems operand + "     " + memvaluenextă  HistoryView.ItemIndex = HistoryView.Itemcount - 1ă  IF first = 0 AND second = 0 THEN ă    SELECT CASE operandă      CASE "+"ă        answer = VAL(entry) + VAL(entrynext) ă      CASE "-"						ă        answer = VAL(entry) - VAL(entrynext)ă      CASE "x"ă        answer = VAL(entry) * VAL(entrynext)ă      CASE "÷"ă        IF VAL(entrynext) = 0 THEN	    ă	    Errorhandler	             	ă	    EXIT SUB      ă        ELSEă          answer = VAL(entry) / VAL(entrynext)ă        END IFă      CASE "%"ă        answer = .01 * VAL(entry) * VAL(entrynext)ă      CASE "^"ă        baseN = VAL(entry)ă        IF baseN = 0 AND VAL(entrynext) < 0 THENă          Label1.Caption = "UNDEFINED"ă          IF soundoff = 0 THEN PLAYWAV (chicken,1)ă          IF operand <> "" THEN entry = ""    ă          entrynext = ""ă          memvalue = Label1.Captionă          operand = ""ă          EXIT SUBă        ELSEă          IF baseN < 0 AND VAL(entrynext) < 1 THENă            SHOWMESSAGE("You're extracting the root of a negative number." + CHR$(13)_ă                        + "Calculait will display the real solution only.")ă          END IF ă          IF baseN < 0 THENă            IF VAL(entrynext) > 1 AND VAL(entrynext) MOD 2 = 0 THENă              answer = baseN ^ VAL(entrynext)ă            ELSEă              answer = SGN(baseN)*(ABS(baseN) ^ VAL(entrynext))ă            END IFă          ELSEă            answer = baseN ^ VAL(entrynext)ă          END IFă        END IFă      CASE "MOD"ă        IF VAL(entrynext) = 0 THENă          IF soundoff = 0 THEN PLAYWAV (chicken,1)ă          MessageDlg("Can't divide by zero. Please correct entry.", mtError, mbOK, 0)ă        ELSEă          answer = VAL(entry) MOD VAL(entrynext)ă        END IFă      CASE "ROOT"ă        baseN = VAL(entry)ă        IF baseN = 0 AND VAL(entrynext) < 0 THENă          Label1.Caption = "UNDEFINED"ă          IF soundoff = 0 THEN PLAYWAV (chicken,1)ă          IF operand <> "" THEN entry = ""    ă          entrynext = ""ă          memvalue = Label1.Captionă          operand = ""ă          EXIT SUBă        ELSEă          IF baseN < 0 THENă            SHOWMESSAGE("You're extracting the root of a negative number." + CHR$(13)_ă                        + "Calculait will display the real solution only.")ă          END IF ă          answer = SGN(baseN)*ABS(baseN) ^ (1/VAL(entrynext))ă        END IFă      CASE ""ă        answer = VAL(Label1.Caption)ă    END SELECTă    HistoryView.Enabled = 1ă  ELSEă    IF first = 0 THEN ă      entry = entry + "\" + "1"ă      first = LEN(entry) - 1ă      firstR = firstă    END IFă    IF second = 0 THEN ă      entrynext = entrynext + "\" + "1"ă      second = LEN(entrynext) - 1ă      secondR = secondă    END IFă    IF first = firstR THENă      numerF$ = LEFT$(entry,first-1)ă      denomF$ = RIGHT$(entry,LEN(entry)-first)ă      numerF = VAL(numerF$)ă      denomF = VAL(denomF$)ă    ELSEă      wholeF$ = LEFT$(entry,first-1)ă      numerF$ = MID$(entry,first+1,firstR-1)ă      denomF$ = RIGHT$(entry,LEN(entry)-firstR)ă      wholeF = VAL(wholeF$)ă      denomF = VAL(denomF$)ă      numerF = (denomF*wholeF) + VAL(numerF$)ă    END IFă    IF second = secondR THENă      numerS$ = LEFT$(entrynext,second-1)ă      denomS$ = RIGHT$(entrynext,LEN(entrynext)-second)ă      numerS = VAL(numerS$)ă      denomS = VAL(denomS$)     ă    ELSEă      wholeS$ = LEFT$(entrynext,second-1)ă      numerS$ = MID$(entrynext,second+1,secondR-1)ă      denomS$ = RIGHT$(entrynext,LEN(entrynext)-secondR)ă      wholeS = VAL(wholeS$)ă      denomS = VAL(denomS$)ă      numerS = (denomS*wholeS) + VAL(numerS$)ă    END IFă    SELECT CASE operandă      CASE "+","-"ă        IF denomF <> denomS THENă          denominator = denomF * denomSă          numerF = numerF * denomSă          numerS = numerS * denomFă        ELSEă          denominator = denomFă        END IFă        IF operand = "+" THENă          numerator = numerF + numerSă        ELSEă          numerator = numerF - numerSă        END IFă      CASE "x"ă        numerator = numerF * numerSă        denominator = denomF * denomSă      CASE "÷"ă        numerator = numerF * denomSă        denominator = denomF * numerSă    END SELECTă    IF numerator = 0 THEN ă      entry = "0"ă      Label1.Caption = entryă      IF operand <> "" THEN	entry = ""    ă      entrynext = ""ă      memvalue = Label1.Captionă      operand = ""ă      HistoryView.AddItems "--------------------------------"ă      HistoryView.AddItems "      " + Label1.Captionă      HistoryView.ItemIndex = HistoryView.Itemcount - 1ă      HistoryView.AddItems       ă      EXIT SUBă    ELSEIF denominator = 0 THENă      IF soundoff = 0 THEN PLAYWAV (chicken,1)ă      entry = "Infinitely big"ă      Label1.Caption = entryă      IF operand <> "" THEN	entry = ""    ă      entrynext = ""ă      memvalue = Label1.Captionă      operand = ""ă      HistoryView.AddItems "--------------------------------"ă      HistoryView.AddItems "      " + Label1.Captionă      HistoryView.ItemIndex = HistoryView.Itemcount - 1ă      HistoryView.AddItems      ă      EXIT SUBă    END IFă    IF numerator < denominator THENă      IF denominator MOD numerator = 0 THENă        denominator = denominator/numeratoră        IF denominator < 0 AND ABS(denominator) <> 1 THENă          entry = "-1" + "\" + STR$(ABS(denominator))ă        ELSEIF denominator < 0 AND ABS(denominator) = 1 THENă          entry = "-1"ă        ELSEă          entry = "1" + "\" + STR$(denominator)ă        END IFă        Label1.Caption = entryă        IF operand <> "" THEN	entry = ""    ă        entrynext = ""ă        memvalue = Label1.Captionă        operand = ""ă        HistoryView.AddItems "--------------------------------"ă        HistoryView.AddItems "      " + Label1.Captionă        HistoryView.ItemIndex = HistoryView.Itemcount - 1ă        HistoryView.AddItems            ă        EXIT SUBă      END IFă    ELSEă      IF numerator MOD denominator = 0 THENă        numerator = numerator/denominatoră        entry = STR$(numerator)ă        Label1.Caption = entryă        IF operand <> "" THEN	entry = ""    ă        entrynext = ""ă        memvalue = Label1.Captionă        operand = ""ă        HistoryView.AddItems "--------------------------------"ă        HistoryView.AddItems "      " + Label1.Captionă        HistoryView.ItemIndex = HistoryView.Itemcount - 1ă        HistoryView.AddItems        ă        EXIT SUBă      END IFă    END IFă    FOR x = 1 TO 2ă      IF numerator MOD 2 = 0 AND denominator MOD 2 = 0 THENă        div = 2ă      ELSEIF numerator MOD 3 = 0 AND denominator MOD 3 = 0 THENă        div = 3ă      ELSEIF numerator MOD 5 = 0 AND denominator MOD 5 = 0 THENă        div = 5ă      ELSEIF numerator MOD 7 = 0 AND denominator MOD 7 = 0 THENă        div = 7ă      ELSEă        div = 1ă      END IFă      IF div <> 1 THENă        DOă          numerator = numerator/divă          denominator = denominator/divă        LOOP UNTIL numerator MOD div <> 0 OR denominator MOD div <> 0ă      END IFă    NEXTă  END IFă  IF first = 0 and second = 0 THENă    IF outform$ = "fin" THENă      memvalue = FORMAT$("%n",answer)ă    ELSEIF outform$ = "sci" THENă      memvalue = FORMAT$("%.9e",answer)   ă    ELSEIF outform$ = "com" THEN    ă      memvalue = FORMAT$("%.2n",answer)ă    ELSEIF outform$ = "use" THEN    ă      memvalue = FORMAT$(precision$,answer) ă    ELSEă      IF precision$ = "" THENă        memvalue = FORMAT$("%g",answer)ă      ELSEă        memvalue = FORMAT$(precision$,answer)    ă      END IFă    END IFă  ELSEă    IF denominator < 0 THENă      memvalue = "-" + STR$(numerator) + "\" + STR$(ABS(denominator))ă    ELSEIF denominator = 1 THENă      memvalue = STR$(numerator)ă    ELSEă      memvalue = STR$(numerator) + "\" + STR$(denominator)ă    END IF    ă  END IFă  IF operand <> "" THEN	entry = ""    ă  entrynext = ""ă  Label1.Caption = memvalueă  DOă    start = INSTR(memvalue,",")ă    IF start = 0 THEN EXIT DOă    memvalue = DELETE$(memvalue,start,1)ă  LOOPă  operand = ""ă  HistoryView.AddItems "--------------------------------"ă  HistoryView.AddItems "      " + Label1.Captionă  HistoryView.ItemIndex = HistoryView.Itemcount - 1ă  HistoryView.AddItemsăEND SUBăăSUB ButtonClick1ă  Keys09("1")    ăEND SUBăăSUB ButtonClick2ă  Keys09("2")    ăEND SUBăăSUB ButtonClick3ă  Keys09("3")     ăEND SUBăăSUB ButtonClick4ă  Keys09("4") ăEND SUBăăSUB ButtonClick5ă  Keys09("5")ăEND SUBăăSUB ButtonClick6ă  Keys09("6") ăEND SUBăăSUB ButtonClick7ă  Keys09("7") ăEND SUBăăSUB ButtonClick8ă  Keys09("8") ăEND SUBăăSUB ButtonClick9ă  Keys09("9") ăEND SUBăăSUB ButtonClick0ă  Keys09("0") ăEND SUBăăSUB Keys09(key$ AS STRING)ă  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (typing,1)ă  IF operand = "" AND LEN(entry) < 19 THENă    IF entry = "0" THEN entry = ""ă    entry = entry + key$ă    Label1.Caption = entryă    memvalue = entryă  ELSEIF operand <> "" AND LEN(entrynext) < 19 THENă    IF entrynext = "0" THEN entrynext = ""ă    entrynext = entrynext + key$ă    Label1.Caption = entrynextă    memvaluenext = entrynextă  END IFăEND SUBăăSUB Backslashă  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (typing,1)ă  IF operand = "" AND LEN(entry) < 19 THENă    IF entry = "0" THEN entry = ""ă    IF tally(entry,"\") < 2 THEN ă      entry = entry + "\"ă      Label1.Caption = entryă      memvalue = entryă    END IFă  ELSEIF operand <> "" AND LEN(entrynext) < 19 THENă    IF entrynext = "0" THEN entrynext = ""ă    IF tally(entrynext,"\") < 2 THEN ă      entrynext = entrynext + "\"ă      Label1.Caption = entrynextă      memvaluenext = entrynextă    END IFă  END IFăEND SUBăăSUB Separatoră  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (typing,1)ă  IF operand = "" AND LEN(entry) < 19 THENă    entry = entry + "'"ă    Label1.Caption = entryă    memvalue = entryă  ELSEIF operand <> "" AND LEN(entrynext) < 19 THENă    entrynext = entrynext + "'"ă    Label1.Caption = entrynextă    memvaluenext = entrynextă  END IFăEND SUBăăSUB ButtonClickCă  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (wipe,1)ă  IF operand = "" THENă    entry = LEFT$(entry,LEN(entry) - 1)ă    IF entry = "" THENă      Label1.Caption = "0"ă    ELSEă      Label1.Caption = entryă    END IFă  ELSEă    entrynext = LEFT$(entrynext,LEN(entrynext) - 1)ă    IF entrynext = "" THENă      Label1.Caption = "0"ă    ELSEă      Label1.Caption = entrynextă    END IFă  END IFăEND SUBăăSUB ButtonClickCAă  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (wipe,1)ă  operand = ""ă  memvalue = ""ă  entry = ""ă  memvaluenext = ""ă  entrynext = ""ă  Label1.Caption = "0"ă  HistoryView.Cleară  HistoryView.AddItemsăEND SUBăăSUB ButtonClickPlusă  Label1.Font = ArialR14ă  IF soundoff = 0 THEN PLAYWAV (laser,1)ă  StatsBox.AddItems Label1.Captionă  CorrelateBox.AddItems Label1.Caption ă  IF operand <> "" THENă    DoMathă  ELSEă    HistoryView.AddItems "      " + Label1.Captionă    HistoryView.ItemIndex = HistoryView.Itemcount - 1ă    Label1.Caption = "+"ă  END IFă  operand = "+"ă  operandold = "+"ăEND SUBăăSUB ButtonClickMultă  Label1.Font = ArialR14ă  IF soundoff = 0 THEN PLAYWAV (laser,1)ă  StatsBox.AddItems Label1.Caption ă  IF operand <> "" THENă    DoMathă  ELSEă    HistoryView.AddItems "      " + Label1.Captionă    HistoryView.ItemIndex = HistoryView.Itemcount - 1ă    Label1.Caption = "x"ă  END IFă  operand = "x"ă  operandold = "x"ăEND SUBăăSUB ButtonClickMinusă  Label1.Font = ArialR14ă  IF soundoff = 0 THEN PLAYWAV (laser,1)ă  StatsBox.AddItems Label1.Caption ă  IF operand <> "" THENă    DoMathă  ELSEă    HistoryView.AddItems "      " + Label1.Captionă    HistoryView.ItemIndex = HistoryView.Itemcount - 1 ă    Label1.Caption = "-"ă  END IFă  operand = "-"ă  operandold = "-"ăEND SUBăăSUB ButtonClickDivă  Label1.Font = ArialR14ă  IF soundoff = 0 THEN PLAYWAV (laser,1)ă  StatsBox.AddItems Label1.Caption ă  IF operand <> "" THENă    DoMathă  ELSEă    HistoryView.AddItems "      " + Label1.Captionă    HistoryView.ItemIndex = HistoryView.Itemcount - 1ă    Label1.Caption = "÷"ă  END IFă  operand = "÷"ă  operandold = "÷" ăEND SUBăăSUB Modulusă  Label1.Font = ArialR14ă  IF soundoff = 0 THEN PLAYWAV (laser,1)ă  HistoryView.AddItems "      " + Label1.Captionă  HistoryView.ItemIndex = HistoryView.Itemcount - 1ă  Label1.Caption = "MOD"ă  operand = "MOD"ăEND SUBăăSUB ButtonClickDotă  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (typing,1)ă  DIM position AS INTEGERă  IF operand = "" AND LEN(entry) < 19 THENă    IF INSTR(entry,".") THEN EXIT SUBă    entry = entry + "."ă    Label1.Caption = entryă  ELSEIF operand <> "" AND LEN(entrynext) < 19 THENă    IF INSTR(entrynext,".") THEN EXIT SUBă    entrynext = entrynext + "."ă    Label1.Caption = entrynextă  END IFăEND SUBăăSUB ButtonClickPercentă  Label1.Font = ArialR14ă  IF soundoff = 0 THEN PLAYWAV (laser,1)ă  IF operand <> "" THENă    memvalue = STR$(.01 * (VAL(memvalue) * VAL(memvaluenext)))ă    entrynext = ""ă    Label1.Caption = memvalueă  ELSEă    HistoryView.AddItems "      " + Label1.Captionă    HistoryView.ItemIndex = HistoryView.Itemcount - 1ă    Label1.Caption = "%"ă  END IFă  operand = "%"ăEND SUBăăSUB ButtonClickMPlusă  DEFBYTE first, second, firstR, secondR, divă  first = INSTR(memvalue,"\")ă  firstR = RINSTR(memvalue,"\")ă  second = INSTR(memvaluenext,"\")ă  secondR = RINSTR(memvaluenext,"\")ă  wholeF$ = ""ă  wholeS$ = ""ă  IF soundoff = 0 THEN PLAYWAV (camera,1)ă  IF first = 0 AND second = 0 THENă    memvaluetotal = STR$(VAL(memvaluetotal) + VAL(Label1.Caption))ă  ELSEă    IF first = 0 THEN ă      memvalue = memvalue + "\" + "1"ă      first = LEN(memvaluetotal) - 1ă      firstR = firstă    END IFă    IF second = 0 THEN ă      memvaluenext = memvaluenext + "\" + "1"ă      second = LEN(memvaluenext) - 1ă      secondR = secondă    END IFă    IF first = firstR THENă      numerF$ = LEFT$(memvalue,first-1)ă      denomF$ = RIGHT$(memvalue,LEN(memvalue)-first)ă      numerF = VAL(numerF$)ă      denomF = VAL(denomF$)ă    ELSEă      wholeF$ = LEFT$(memvalue,first-1)ă      numerF$ = MID$(memvalue,first+1,firstR-1)ă      denomF$ = RIGHT$(memvalue,LEN(memvalue)-firstR)ă      wholeF = VAL(wholeF$)ă      denomF = VAL(denomF$)ă      numerF = (denomF*wholeF) + VAL(numerF$)ă    END IFă    IF second = secondR THENă      numerS$ = LEFT$(memvaluenext,second-1)ă      denomS$ = RIGHT$(memvaluenext,LEN(memvaluenext)-second)ă      numerS = VAL(numerS$)ă      denomS = VAL(denomS$)     ă    ELSEă      wholeS$ = LEFT$(memvaluenext,second-1)ă      numerS$ = MID$(memvaluenext,second+1,secondR-1)ă      denomS$ = RIGHT$(memvaluenext,LEN(memvaluenext)-secondR)ă      wholeS = VAL(wholeS$)ă      denomS = VAL(denomS$)ă      numerS = (denomS*wholeS) + VAL(numerS$)ă    END IFă    IF denomF <> denomS THENă      denominator = denomF * denomSă      numerF = numerF * denomSă      numerS = numerS * denomFă    ELSEă      denominator = denomFă    END IFă    numerator = numerF + numerSă    IF numerator = 0 THEN ă      memvaluetotal = "0"ă      CoolBtn27.Hint = "Recalls " + memvaluetotal + " from memory"ă      EXIT SUBă    ELSEIF denominator = 0 THENă      IF soundoff = 0 THEN PLAYWAV (chicken,1)ă      Label1.Font = Helvetica10ă      Label1.Caption = "Can't store 0 denominator!"ă      EXIT SUBă    END IFă    IF numerator < denominator THENă      IF denominator MOD numerator = 0 THENă        denominator = denominator/numeratoră        IF denominator < 0 AND ABS(denominator) <> 1 THENă          memvaluetotal = "-1" + "\" + STR$(ABS(denominator))ă        ELSEIF denominator < 0 AND ABS(denominator) = 1 THENă          memvaluetotal = "-1"ă        ELSEă          memvaluetotal = "1" + "\" + STR$(denominator)ă        END IFă        CoolBtn27.Hint = "Recalls " + memvaluetotal + " from memory"ă        EXIT SUBă      END IFă    ELSEă      IF numerator MOD denominator = 0 THENă        numerator = numerator/denominatoră        memvaluetotal = STR$(numerator)ă        CoolBtn27.Hint = "Recalls " + memvaluetotal + " from memory"ă        EXIT SUBă      END IFă    END IFă    FOR x = 1 TO 2ă      IF numerator MOD 2 = 0 AND denominator MOD 2 = 0 THENă        div = 2ă      ELSEIF numerator MOD 3 = 0 AND denominator MOD 3 = 0 THENă        div = 3ă      ELSEIF numerator MOD 5 = 0 AND denominator MOD 5 = 0 THENă        div = 5ă      ELSEIF numerator MOD 7 = 0 AND denominator MOD 7 = 0 THENă        div = 7ă      ELSEă        div = 1ă      END IFă      IF div <> 1 THENă        DOă          numerator = numerator/divă          denominator = denominator/divă        LOOP UNTIL numerator MOD div <> 0 OR denominator MOD div <> 0ă      END IFă    NEXTă  END IFă  IF first = 0 and second = 0 THENă    'no code here for nowă  ELSEă    IF denominator < 0 THENă      memvaluetotal = "-" + STR$(numerator) + "\" + STR$(ABS(denominator))ă    ELSEIF denominator = 1 THENă      memvaluetotal = STR$(numerator)ă    ELSEă      memvaluetotal = STR$(numerator) + "\" + STR$(denominator)ă    END IF    ă  END IFă  CoolBtn27.Hint = "Recalls " + memvaluetotal + " from memory"ăEND SUBăăSUB MemNewă  IF soundoff = 0 THEN PLAYWAV (camera,1)ă  memvaluetotal = Label1.Captionă  CoolBtn27.Hint = "Recalls " + memvaluetotal + " from memory"ăEND SUBăăSUB ButtonClickMRă  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (camera,1)ă  IF memvaluetotal = "" THENă    Label1.Caption = "0"ă    IF operand = "" THENă      memvalue = ""ă    ELSEă      memvaluenext = memvaluetotală    END IFă  ELSEă    Label1.Caption = memvaluetotală    IF operand = "" THENă      memvalue = memvaluetotală    ELSEă      memvaluenext = memvaluetotală    END IFă  END IFăEND SUBăăSUB ButtonClickMCă  IF soundoff = 0 THEN PLAYWAV (camera,1)ă  memvaluetotal = ""ă  CoolBtn27.Hint = "Recalls 0 from memory"ăEND SUBăăSUB Signă  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  IF operand = "" THENă    IF LEFT$(Label1.Caption,1) = "-" THENă      memvalue = RIGHT$(Label1.Caption,LEN(Label1.Caption)-1)ă      Label1.Caption = memvalueă    ELSEă      Label1.Caption = "-" + Label1.Captionă      memvalue = Label1.Caption ă    END IFă    entry = ""ă  ELSEă    IF LEFT$(Label1.Caption,1) = "-" THENă      memvaluenext = RIGHT$(Label1.Caption,LEN(Label1.Caption)-1)ă      Label1.Caption = memvaluenextă    ELSEă      Label1.Caption = "-" + Label1.Captionă      memvaluenext = Label1.Caption      ă    END IFă    entrynext = ""ă  END IFăEND SUBăăSUB ConstantsAll(Sender AS QMENUITEM)ă  DIM AddCaption AS STRINGă  SELECT CASE Sender.Handleă    CASE AccelerationG.Handleă      AddCaption = "9.80665"ă    CASE ADensity.Handleă      AddCaption = "1.293"ă    CASE LSpeed.Handleă      AddCaption = "299792458"ă    CASE SolarC.Handleă      AddCaption = "1340"ă    CASE SSpeed.Handleă      AddCaption = "331.4"ă    CASE SAtmosphere.Handleă      AddCaption = "101300"ă    CASE EERadius.Handleă      AddCaption = "6378000"ă    CASE EEscapeV.Handleă      AddCaption = "11186"ă    CASE MEarthDipole.Handleă      AddCaption = "6.400E21"ă    CASE MEarth.Handleă      AddCaption = "5.983E24"ă    CASE MAngularS.Handleă      AddCaption = ".0000729"    ă    CASE DEarth.Handleă      AddCaption = "5522"ă    CASE MOrbitalS.Handleă      AddCaption = "29770"  ă    CASE PERadius.Handleă      AddCaption = "6357000"ă    CASE VEarth.Handleă      AddCaption = "1.087E21"ă    CASE AlphaPMass.Handleă      AddCaption = "6.64465598E-27"ă    CASE ElectronCMassR.Handleă      AddCaption = "175881961000"ă    CASE ElectronMass.Handleă      AddCaption = "9.10938188E-31"ă    CASE MuonMass.Handleă      AddCaption = "1.88353109E-28"ă    CASE NeutronMass.Handleă      AddCaption = "1.67492716E-27"ă    CASE ProtonMass.Handleă      AddCaption = "1.67262158E-27"ă    CASE ATomicMC.Handleă      AddCaption = "1.66053873E-27"ă    CASE AvogadroC.Handleă      AddCaption = "6.02214199E23"ă    CASE BoltzmannC.Handleă      AddCaption = "1.3806503E-23"ă    CASE ECharge.Handleă      AddCaption = "1.602176462E-19"ă    CASE FaradayC.Handleă      AddCaption = "96485.3415"ă    CASE GravityC.Handleă      AddCaption = ".000000000066726"ă    CASE PermeabilityC.Handleă      AddCaption = "1.25663706143E-6"ă    CASE PermittivityC.Handleă      AddCaption = "8.85418781762E-12"ă    CASE PlankC.Handleă      AddCaption = "6.62606876E-34"ă    CASE RydbergC.Handleă      AddCaption = "10973731.568549"ă    CASE SBoltzmannC.Handleă      AddCaption = ".000000056704"ă    CASE UnivGasC.Handleă      AddCaption = "8.314472"ă    CASE WienC.Handleă      AddCaption = ".00290"                ă  END SELECTă  ExpEdit.Text = ExpEdit.Text + " " + AddCaptionă  ExpEdit.SelStart = LEN(ExpEdit.Text)ă  Label1.Caption = AddCaptionă  dochecktag = 1ă  DoCheck    ăEND SUBăăSUB ButtonClickPiă  Label1.Font = ArialW14ă  Label1.Caption = "3.14159265358979"ă  dochecktag = 1ă  DoCheckăEND SUBăăSUB RoundFă  Label1.Caption = STR$(ROUND(VAL(Label1.Caption)))ă  dochecktag = 1ă  DoCheckăEND SUBăăSUB ButtonClickSqră  HistoryView.AddItems " SQrt " + Label1.Captionă  Label1.Font = ArialW14ă  IF VAL(Label1.Caption) < 0 THENă    SHOWMESSAGE("You're extracting the root of a negative number." + CHR$(13)_ă                + "Calculait will display the real solution only.")ă    Label1.Caption = STR$(SGN(VAL(Label1.Caption))*SQR(ABS(VAL(Label1.Caption))))ă    dochecktag = 1ă  ELSEă    funcanswer = SQR(VAL(Label1.Caption))ă  END IFă  DoCheckăEND SUBăăSUB Squaredă  HistoryView.AddItems "      " + Label1.Caption + " ^ 2"ă  Label1.Font = ArialW14ă  funcanswer = VAL(Label1.Caption) ^ 2ă  DoCheckăEND SUBăăSUB CubeRootă  Label1.Font = ArialW14ă  HistoryView.AddItems "CUBrt " + Label1.Captionă  IF VAL(Label1.Caption) = 0 THENă    Label1.Caption = "0"ă    dochecktag = 1    ă  ELSEă    IF VAL(Label1.Caption) < 0 THENă      SHOWMESSAGE("You're extracting the root of a negative number." + CHR$(13)_ă                  + "Calculait will display the real solution only.")ă    END IFă    funcanswer = SGN(VAL(Label1.Caption))*(ABS(VAL(Label1.Caption))^(1/3))ă  END IFă  DoCheckăEND SUBăăSUB Cubedă  Label1.Font = ArialW14ă  HistoryView.AddItems "      " + Label1.Caption + " ^ 3"ă  funcanswer = VAL(Label1.Caption) ^ 3ă  DoCheckăEND SUBăăSUB Factorială  Label1.Font = ArialW14ă  HistoryView.AddItems "      " + Label1.Caption + "!"ă  n = FIX(VAL(Label1.Caption))ă  IF n > 170 THENă    Label1.Caption = "Too big!"ă    dochecktag = 1ă  ELSEă    limit = n - 1ă    FOR x = 1 TO limită      n = n * xă    NEXTă    funcanswer = nă  END IFă  DoCheckăEND SUBăăSUB 10poweră  Label1.Font = ArialW14ă  HistoryView.AddItems "      10 ^ " + Label1.Captionă  funcanswer = 10 ^ VAL(Label1.Caption)ă  DoCheckăEND SUBăăSUB ButtonClickSină  Label1.Font = ArialW14ă  HistoryView.AddItems "  SIN " + Label1.Captionă  funcanswer = SIN(VAL(Label1.Caption) * CModeN)ă  DoCheckăEND SUBăăSUB ButtonClickCosă  Label1.Font = ArialW14ă  HistoryView.AddItems "  COS " + Label1.Captionă  IF Label1.Caption = "90" AND CModeN <> 1 THEN ă    Label1.Caption = "0"ă    dochecktag = 1ă  ELSEă    funcanswer = COS(VAL(Label1.Caption) * CModeN)ă  END IFă  DoCheck ăEND SUBăăSUB ButtonClickTană  Label1.Font = ArialW14ă  HistoryView.AddItems "  TAN " + Label1.Captionă  IF Label1.Caption = "90" AND CModeN <> 1 THENă    Label1.Caption = "Infinitely big"ă    dochecktag = 1ă  ELSEă    funcanswer = TAN(VAL(Label1.Caption) * CModeN)ă  END IFă  DoCheck ăEND SUBăăSUB ButtonClickAtnă  HistoryView.AddItems "  ATN " + Label1.Captionă  funcanswer = ATN(VAL(Label1.Caption))* CModeă  DoCheck ăEND SUBăăSUB Secantă  HistoryView.AddItems "  SEC " + Label1.Captionă  IF Label1.Caption = "90" AND CModeN <> 1 THENă    Label1.Caption = "Infinitely big"ă    dochecktag = 1ă  ELSEă    funcanswer = 1/(COS(VAL(Label1.Caption) * CModeN))ă  END IFă  DoCheckăEND SUBăăSUB CoSecantă  HistoryView.AddItems "  CSC " + Label1.Captionă  IF Label1.Caption = "0" AND CModeN <> 1 THENă    Label1.Caption = "Infinitely big"ă    dochecktag = 1ă  ELSEă    funcanswer = 1/(SIN(VAL(Label1.Caption) * CModeN))ă  END IFă  DoCheckăEND SUBăăSUB CoTangentă  HistoryView.AddItems "  COT " + Label1.Captionă  IF Label1.Caption = "0" AND CModeN <> 1 THENă    Label1.Caption = "Infinitely big" ă    dochecktag = 1ă  ELSEIF Label1.Caption = "90" AND CModeN <> 1 THENă    Label1.Caption = "0"ă    dochecktag = 1ă  ELSE  ă    funcanswer = 1/(TAN(VAL(Label1.Caption) * CModeN))ă  END IFă  DoCheck ăEND SUBăăSUB ArcSină  HistoryView.AddItems " ASIN " + Label1.Captionă  x = VAL(Label1.Caption)ă  IF x > 1 THEN  ă    Label1.Caption = "UNDEFINED"ă    dochecktag = 1ă  ELSEIF x = 1 THENă    IF CMode = 1 THENă      funcanswer = 1.5707963267949ă    ELSEă      funcanswer = 90ă    END IF           ă  ELSE ă    funcanswer = ATN( x / SQR(-x * x + 1 )) * CModeă  END IFă  DoCheck ăEND SUBăăSUB ArcCosă  HistoryView.AddItems " ACOS " + Label1.Captionă  x = VAL(Label1.Caption)ă  IF x > 1 THEN  ă    Label1.Caption = "UNDEFINED"ă    dochecktag = 1ă  ELSEIF x = 0 THENă    IF CMode = 1 THENă      funcanswer = 1.5707963267949ă    ELSEă      funcanswer = 90ă    END IFă  ELSEIF x = 1 THENă    funcanswer = 0    ă  ELSE  ă    funcanswer = (-ATN(x / SQR(-x * x + 1)) + 1.570796) * CModeă  END IFă  DoCheck ăEND SUBăăSUB ArcSecă  HistoryView.AddItems " ASEC " + Label1.Captionă  x = VAL(Label1.Caption)ă  IF x = 0 THEN  ă    Label1.Caption = "UNDEFINED"ă    dochecktag = 1ă  ELSE ă    funcanswer = (ATN(SQR(x * x - 1)) + (SGN(x) - 1) * 1.570796) * CModeă  END IFă  DoCheck ăEND SUBăăSUB ArcCscă  HistoryView.AddItems " ACSC " + Label1.Captionă  x = VAL(Label1.Caption)ă  IF x = 0 THEN  ă    Label1.Caption = "UNDEFINED"ă    dochecktag = 1ă  ELSEIF x = 1 THENă    IF CMode = 1 THENă      funcanswer = 1.5707963267949ă    ELSEă      funcanswer = 90ă    END IF    ă  ELSE ă    funcanswer = (ATN(1/SQR(x * x - 1)) + (SGN(x) - 1) * 1.570796) * CModeă  END IFă  DoCheck ăEND SUBăăSUB ArcCotă  HistoryView.AddItems " ACOT " + Label1.Captionă  x = VAL(Label1.Caption)ă  funcanswer = (-ATN(x) + 1.570796) * CModeă  DoCheck ăEND SUBăăSUB HyperSină  HistoryView.AddItems " HSIN " + Label1.Captionă  x = VAL(Label1.Caption) ă  funcanswer = (EXP(x) - EXP(-x)) / 2ă  DoCheck ăEND SUBăăSUB HyperCosă  HistoryView.AddItems " HCOS " + Label1.Captionă  x = VAL(Label1.Caption) ă  funcanswer = (EXP(x) + EXP(-x)) / 2ă  DoCheckăEND SUBăăSUB HyperTană  HistoryView.AddItems " HTAN " + Label1.Captionă  x = VAL(Label1.Caption)ă  funcanswer = -EXP(-x) /(EXP(x) + EXP(-x)) * 2 + 1ă  DoCheck   ăEND SUBăăSUB HyperSecă  HistoryView.AddItems " HSEC " + Label1.Captionă  x = VAL(Label1.Caption) ă  funcanswer = 2 / (EXP(x) + EXP(-x))ă  DoCheck  ăEND SUBăăSUB HyperCscă  HistoryView.AddItems " HCSC " + Label1.Captionă  x = VAL(Label1.Caption)ă  IF x = 0 THENă    Label1.Caption = "Infinitely big"ă    dochecktag = 1ă  ELSE  ă    funcanswer = 2 / (EXP(x) - EXP(-x))ă  END IFă  DoCheck ăEND SUBăăSUB HyperCotă  HistoryView.AddItems " HCOT " + Label1.Captionă  x = VAL(Label1.Caption)ă  IF x = 0 THENă    Label1.Caption = "Infinitely big"ă    dochecktag = 1 ă  ELSE  ă    funcanswer = EXP(-x) / (EXP(x) - EXP(-x)) * 2 + 1ă  END IFă  DoCheckăEND SUBăăSUB ArcHyperSină  HistoryView.AddItems "AHSIN " + Label1.Captionă  x = VAL(Label1.Caption)ă  funcanswer = LOG(x + SQR(x * x + 1))ă  DoCheckăEND SUBăăSUB ArcHyperCosă  HistoryView.AddItems "AHCOS " + Label1.Captionă  x = VAL(Label1.Caption)ă  IF x < 1 THENă    Label1.Caption = "UNDEFINED"ă    dochecktag = 1ă  ELSEă    funcanswer = LOG(x + SQR(x * x - 1))ă  END IFă  DoCheckăEND SUBăăSUB ArcHyperTană  HistoryView.AddItems "AHTAN " + Label1.Captionă  x = VAL(Label1.Caption)ă  IF x >= 1 THENă    Label1.Caption = "UNDEFINED"ă    dochecktag = 1ă  ELSEă    funcanswer = LOG((1 + x)/(1 - x)) / 2ă  END IFă  DoCheckăEND SUBăăSUB ArcHyperCotă  HistoryView.AddItems "AHCOT " + Label1.Captionă  x = VAL(Label1.Caption)ă  IF x <= 1 THENă    Label1.Caption = "UNDEFINED"ă    dochecktag = 1ă  ELSE ă    funcanswer = LOG((x + 1)/(x - 1)) / 2ă  END IFă  DoCheckăEND SUBăăSUB ArcHyperSecă  HistoryView.AddItems "AHSEC " + Label1.Captionă  x = VAL(Label1.Caption)ă  IF x = 0 THENă    Label1.Caption = "Infinitely big"ă    dochecktag = 1ă  ELSEă    funcanswer = LOG((SGN(x)*SQR(-x * x + 1) + 1) / x)ă  END IFă  DoCheckăEND SUBăăSUB ArcHyperCscă  HistoryView.AddItems "AHCSC " + Label1.Captionă  x = VAL(Label1.Caption)ă  IF x = 0 THENă    Label1.Caption = "Infinitely big"ă    dochecktag = 1ă  ELSE ă    funcanswer = LOG((SGN(x)*SQR(x * x + 1) + 1) / x)ă  END IFă  DoCheckăEND SUBăăSUB ButtonClickPoweră  Label1.Font = ArialR14ă  IF soundoff = 0 THEN PLAYWAV (laser,1)ă  IF operand <> "" THENă    DoMathă  ELSEă    HistoryView.AddItems "      " + Label1.Captionă    Label1.Caption = "^"ă  END IFă  operand = "^"ă  operandold = "^"ăEND SUBăăSUB ButtonClickInverseă  HistoryView.AddItems "      1/" + Label1.Captionă  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  IF VAL(Label1.Caption) = 0 THENă    Label1.Caption ="UNDEFINED"ă    dochecktag = 1ă  ELSEă    funcanswer = 1/VAL(Label1.Caption)ă  END IFă  DoCheck ăEND SUBăăSUB Lnă  HistoryView.AddItems "   Ln " + Label1.Captionă  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  funcanswer = LOG(VAL(Label1.Caption))ă  DoCheckăEND SUBăăSUB Logă  HistoryView.AddItems "  Log " + Label1.Captionă  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  funcanswer = LOG(VAL(Label1.Caption))/LOG(10)ă  DoCheckăEND SUBăăSUB Rootă  Label1.Font = ArialR14ă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  IF operand <> "" THENă    DoMathă  ELSEă    HistoryView.AddItems "      " + Label1.Caption ă    Label1.Caption = "ROOT"ă  END IFă  operand = "ROOT"ă  operandold = "ROOT" ăEND SUBăăSUB Expă  HistoryView.AddItems "    e " + Label1.Captionă  Label1.Font = ArialW14ă  IF soundoff = 0 THEN PLAYWAV (laser,1)ă  funcanswer = EXP(VAL(Label1.Caption))ă  DoCheckăEND SUBăăSUB ButtonClickftmă  funcanswer = VAL(Label1.Caption) / 3.28084ă  DoCheck ăEND SUBăăSUB ButtonClickmftă  funcanswer = VAL(Label1.Caption) * 3.28084ă  DoCheck ăEND SUBăăSUB ButtonClickft2m2ă  funcanswer = VAL(Label1.Caption) / 10.76391ă  DoCheckăEND SUBăăSUB ButtonClickm2ft2ă  funcanswer = VAL(Label1.Caption) * 10.76391ă  DoCheckăEND SUBăăSUB ButtonClickft3m3ă  funcanswer = VAL(Label1.Caption) / 35.314667ă  DoCheck ăEND SUBăăSUB ButtonClickm3ft3ă  funcanswer = VAL(Label1.Caption) * 35.314667ă  DoCheck ăEND SUBăăSUB ButtonClickincmă  funcanswer = VAL(Label1.Caption) * 2.54ă  DoCheck ăEND SUBăăSUB ButtonClickcmină  funcanswer = VAL(Label1.Caption) / 2.54ă  DoCheck ăEND SUBăăSUB ButtonClickin2cm2ă  funcanswer = VAL(Label1.Caption) * 6.4516ă  DoCheckăEND SUBăăSUB ButtonClickcm2in2ă  funcanswer = VAL(Label1.Caption) / 6.4516ă  DoCheck ăEND SUBăăSUB ButtonClicklbkgă  funcanswer = VAL(Label1.Caption) / 2.204623ă  DoCheck ăEND SUBăăSUB ButtonClickkglbă  funcanswer = VAL(Label1.Caption) * 2.204623ă  DoCheck ăEND SUBăăSUB ButtonClickFCă  funcanswer = (VAL(Label1.Caption) - 32) / 1.8 ă  DoCheck ăEND SUBăăSUB ButtonClickCFă  funcanswer = (VAL(Label1.Caption) * 1.8) + 32ă  DoCheck ăEND SUBăăSUB ButtonClickkmmiă  funcanswer = VAL(Label1.Caption) / 1.609344ă  DoCheck ăEND SUBăăSUB ButtonClickmikmă  funcanswer = VAL(Label1.Caption) * 1.609344ă  DoCheck ăEND SUBăăSUB GaltoLită  funcanswer = VAL(Label1.Caption) * 3.785412ă  DoCheck ăEND SUBăăSUB LittoGală  funcanswer = VAL(Label1.Caption) / 3.785412ă  DoCheck ăEND SUBăăSUB GaltoLitUKă  funcanswer = VAL(Label1.Caption) * 4.54609ă  DoCheck ăEND SUBăăSUB LittoGalUKă  funcanswer = VAL(Label1.Caption) / 4.54609ă  DoCheck ăEND SUBăăSUB OztoGramă  funcanswer = VAL(Label1.Caption) * 28.349551ă  DoCheck ăEND SUBăăSUB GramtoOză  funcanswer = VAL(Label1.Caption) / 28.349551ă  DoCheckăEND SUBăăSUB ButtonClickinftă  funcanswer = VAL(Label1.Caption) / 12ă  DoCheckăEND SUBăăSUB ButtonClickftină  funcanswer = VAL(Label1.Caption) * 12ă  DoCheckăEND SUBăăSUB ButtonClickydmă  funcanswer = VAL(Label1.Caption) / 1.093613ă  DoCheckăEND SUBăăSUB ButtonClickmydă  funcanswer = VAL(Label1.Caption) * 1.093613ă  DoCheckăEND SUBăăSUB ButtonClickmilyă  funcanswer = VAL(Label1.Caption) / 5880000000000ă  DoCheckăEND SUBăăSUB ButtonClicklymiă  funcanswer = VAL(Label1.Caption) * 5880000000000ă  DoCheckăEND SUBăăSUB ButtonClickhaacă  funcanswer = VAL(Label1.Caption) * 2.471054ă  DoCheckăEND SUBăăSUB ButtonClickachaă  funcanswer = VAL(Label1.Caption) / 2.471054ă  DoCheckăEND SUBăăSUB QrtoGală  funcanswer = VAL(Label1.Caption) / 4ă  DoCheckăEND SUBăăSUB GaltoQrtă  funcanswer = VAL(Label1.Caption) * 4ă  DoCheckăEND SUBăăSUB ButtonClickfamă  funcanswer = VAL(Label1.Caption) * 1.8288ă  DoCheckăEND SUBăăSUB ButtonClickmfaă  funcanswer = VAL(Label1.Caption) / 1.8288 ă  DoCheckăEND SUBăăSUB TontoKiloă  funcanswer = VAL(Label1.Caption) * 1000ă  DoCheckăEND SUBăăSUB KilotoTonă  funcanswer = VAL(Label1.Caption) / 1000ă  DoCheckăEND SUBăăSUB HptoWattă  funcanswer = VAL(Label1.Caption) * 746ă  DoCheckăEND SUBăăSUB WatttoHpă  funcanswer = VAL(Label1.Caption) / 746ă  DoCheckăEND SUBăăSUB HptoWattUKă  funcanswer = VAL(Label1.Caption) * 735.499ă  DoCheckăEND SUBăăSUB WatttoHpUKă  funcanswer = VAL(Label1.Caption) / 735.499ă  DoCheckăEND SUBăăSUB BTUtoWattă  funcanswer = VAL(Label1.Caption) * 0.293071ă  DoCheckăEND SUBăăSUB WatttoBTUă  funcanswer = VAL(Label1.Caption) / 0.293071ă  DoCheckăEND SUBăăSUB KwtoWattă  funcanswer = VAL(Label1.Caption) * 1000ă  DoCheckăEND SUBăăSUB WatttoKwă  funcanswer = VAL(Label1.Caption) / 1000ă  DoCheckăEND SUBăăSUB KphtoMphă  funcanswer = VAL(Label1.Caption) / 1.609344 ă  DoCheckăEND SUBăăSUB MphtoKphă  funcanswer = VAL(Label1.Caption) * 1.609344ă  DoCheckăEND SUBăăSUB KnottoMphă  funcanswer = VAL(Label1.Caption) * 1.150778ă  DoCheckăEND SUBăăSUB MphtoKnotă  funcanswer = VAL(Label1.Caption) / 1.150778ă  DoCheckăEND SUBăăSUB MpstoFpsă  funcanswer = VAL(Label1.Caption) * 3.28084ă  DoCheckăEND SUBăăSUB FpstoMpsă  funcanswer = VAL(Label1.Caption) / 3.28084ă  DoCheckăEND SUBăăSUB PinttoLtră  funcanswer = VAL(Label1.Caption) * 0.55061ă  DoCheckăEND SUBăăSUB LtrtoPintă  funcanswer = VAL(Label1.Caption) / 0.55061ă  DoCheckăEND SUBăăSUB PinttoLtrUKă  funcanswer = VAL(Label1.Caption) * 0.568261ă  DoCheckăEND SUBăăSUB LtrtoPintUKă  funcanswer = VAL(Label1.Caption) / 0.568261ă  DoCheckăEND SUBăăSUB PartoLyă  funcanswer = VAL(Label1.Caption) * 3.261643ă  DoCheckăEND SUBăăSUB LytoPară  funcanswer = VAL(Label1.Caption) / 3.261643ă  DoCheckăEND SUBăăSUB CartoMgă  funcanswer = VAL(Label1.Caption) * 200ă  DoCheckăEND SUBăăSUB MgtoCară  funcanswer = VAL(Label1.Caption) / 200ă  DoCheckăEND SUBăăSUB TsptoTbsă  funcanswer = VAL(Label1.Caption) / 3 ă  DoCheckăEND SUBăăSUB TbstoTspă  funcanswer = VAL(Label1.Caption) * 3 ă  DoCheckăEND SUBăăSUB CupstoTbsă  funcanswer = VAL(Label1.Caption) * 16 ă  DoCheckăEND SUBăăSUB TbstoCupsă  funcanswer = VAL(Label1.Caption) / 16 ă  DoCheckăEND SUBăăSUB FoztoTbsă  funcanswer = VAL(Label1.Caption) * 2ă  DoCheckăEND SUBăăSUB TbstoFoză  funcanswer = VAL(Label1.Caption) / 2ă  DoCheckăEND SUBăăSUB SectoMină  funcanswer = VAL(Label1.Caption) / 60ă  DoCheckăEND SUBăăSUB MintoSecă  funcanswer = VAL(Label1.Caption) * 60ă  DoCheckăEND SUBăăSUB MintoHră  funcanswer = VAL(Label1.Caption) / 60ă  DoCheckăEND SUBăăSUB HrtoMină  funcanswer = VAL(Label1.Caption) * 60ă  DoCheckăEND SUBăăSUB MintoDayă  funcanswer = VAL(Label1.Caption) / 1440ă  DoCheckăEND SUBăăSUB DaytoMină  funcanswer = VAL(Label1.Caption) * 1440ă  DoCheckăEND SUBăăSUB DaytoHră  funcanswer = VAL(Label1.Caption) * 24ă  DoCheckăEND SUBăăSUB HrtoDayă  funcanswer = VAL(Label1.Caption) / 24ă  DoCheckăEND SUBăăSUB ButtonClickCKă  funcanswer = VAL(Label1.Caption) + 273.16ă  DoCheckăEND SUBăăSUB ButtonClickKCă  funcanswer = VAL(Label1.Caption) - 273.16ă  DoCheckăEND SUBăăSUB PsitoPasă  funcanswer = VAL(Label1.Caption) * 6894.757ă  DoCheckăEND SUBăăSUB PastoPsiă  funcanswer = VAL(Label1.Caption) / 6894.757ă  DoCheckăEND SUBăăSUB PsitoAtmă  funcanswer = VAL(Label1.Caption) * 0.068046ă  DoCheckăEND SUBăăSUB Atmtopsiă  funcanswer = VAL(Label1.Caption) / 0.068046ă  DoCheckăEND SUBăăSUB PsitoKgscmă  funcanswer = VAL(Label1.Caption) * 0.070307ă  DoCheckăEND SUBăăSUB KgscmtoPsiă  funcanswer = VAL(Label1.Caption) / 0.070307ă  DoCheckăEND SUBăăSUB DegtoRadă  DEFBYTE tallysep, sec, min, secstart, minstartă  DEFWORD deg, lengthă  length = LEN(Label1.Caption)ă  secstart = RINSTR(Label1.Caption,"'")ă  minstart = INSTR(Label1.Caption,"'") ă  tallysep = TALLY(Label1.Caption,"'")ă  IF tallysep = 2 THENă    sec = VAL(LCASE$(RIGHT$(Label1.Caption,length - secstart)))ă    min = VAL(LCASE$(MID$(Label1.Caption,minstart+1,secstart-minstart-1)))ă    deg = VAL(LCASE$(LEFT$(Label1.Caption,minstart-1)))ă    funcanswer = (deg + min/60 + sec/360) * 0.0174532925ă  ELSEIF tallysep = 1 THENă    min = VAL(LCASE$(RIGHT$(Label1.Caption,length - minstart)))ă    deg = VAL(LCASE$(LEFT$(Label1.Caption,minstart-1)))ă    funcanswer = (deg + min/60) * 0.0174532925ă  ELSEă    funcanswer = VAL(LCASE$(Label1.Caption)) * 0.0174532925ă  END IF ă  DoCheckăEND SUBăăSUB RadtoDegă  funcanswer = VAL(Label1.Caption) * 57.2957795ă  DoCheckăEND SUBăăSUB DegtoDmsă  deg$ = STR$(FIX(VAL(Label1.Caption)))ă  min$ = STR$(FIX(FRAC(VAL(Label1.Caption))*60))ă  sec$ = STR$(FRAC(FRAC(VAL(Label1.Caption))*60)*60)ă  Label1.Caption = deg$ + "'" + min$ + "'" + sec$ ă  dochecktag = 1ă  DoCheckăEND SUBăăSUB DmstoDegă  DEFBYTE tallysep, secstart, minstartă  DEFWORD lengthă  DEFINT deg, min, secă  length = LEN(Label1.Caption)ă  secstart = RINSTR(Label1.Caption,"'")ă  minstart = INSTR(Label1.Caption,"'") ă  tallysep = TALLY(Label1.Caption,"'")ă  IF tallysep = 2 THENă    sec = VAL(LCASE$(RIGHT$(Label1.Caption,length - secstart)))ă    min = VAL(LCASE$(MID$(Label1.Caption,minstart+1,secstart-minstart-1)))ă    deg = VAL(LCASE$(LEFT$(Label1.Caption,minstart-1)))ă    funcanswer = deg + min/60 + sec/3600ă  ELSEIF tallysep = 1 THENă    min = VAL(LCASE$(RIGHT$(Label1.Caption,length - minstart)))ă    deg = VAL(LCASE$(LEFT$(Label1.Caption,minstart-1)))ă    funcanswer = deg + min/60ă  END IF ă  DoCheckăEND SUBăăSUB DectoHexă  Caption$ = HEX$(VAL(LCASE$(Label1.Caption)))ă  IF LEN(Caption$) > 19 THEN Label1.Font = Helvetica10ă  Label1.Caption = Caption$ă  dochecktag = 1ă  DoCheckăEND SUBăăSUB preHextoDecă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  HextoDec(13)ăEND SUBăăSUB HextoDec(key AS BYTE)ă  DEFINT numb, numberă  DEFBYTE x,length, yă  HexForm.Visible = 1ă  number = 0ă  IF HexEdit.EditText = "" THEN HexEdit.EditText = Label1.Captionă  IF key = 13 THENă    length = LEN(HexEdit.EditText)ă    FOR x = 1 TO lengthă      y = length - xă      digit$ = UCASE$(MID$(HexEdit.EditText,x,1))ă      SELECT CASE digit$ă        CASE "A"ă          numb = 10 * 16^yă        CASE "B"ă          numb = 11 * 16^yă        CASE "C"ă          numb = 12 * 16^yă        CASE "D"ă          numb = 13 * 16^yă        CASE "E"ă         numb = 14 * 16^yă        CASE "F"ă          numb = 15 * 16^yă        CASE ELSEă          numb = VAL(LCASE$(digit$)) * 16^yă      END SELECTă      number = number + numbă    NEXTă    Caption$ = STR$(number)ă    IF LEN(Caption$) > 19 THEN Label1.Font = Helvetica10ă    Label1.Caption = Caption$ă    dochecktag = 1ă    DoCheckă  END IFăEND SUBăăSUB DectoBină  Caption$ = BIN$(VAL(LCASE$(Label1.Caption)))ă  IF LEN(Caption$) > 19 THEN Label1.Font = Helvetica10ă  IF Caption$ = "" THEN Caption$ = "0"ă  Label1.Caption = Caption$ă  dochecktag = 1ă  DoCheckăEND SUBăăSUB preBintoDecă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  BintoDec(13)ăEND SUBăăSUB BintoDec(key AS BYTE)ă  DEFINT numberă  DEFBYTE x, length, yă  BinForm.Visible = 1ă  number = 0ă  IF BinEdit.EditText = "" THEN BinEdit.EditText = Label1.Captionă  IF key = 13 THEN  ă    length = LEN(BinEdit.EditText)ă    FOR x = 1 TO lengthă      y = length - xă      digit$ = MID$(BinEdit.EditText,x,1)ă      number = number + VAL(LCASE$(digit$)) * 2^yă    NEXTă    Caption$ = STR$(number)ă    IF LEN(Caption$) > 19 THEN ă      Label1.Font = Helvetica10ă    ELSEă      Label1.Font = ArialW14ă    END IF    ă    Label1.Caption = Caption$ă    dochecktag = 1ă    DoCheckă  END IFăEND SUBă ăSUB Errorhandleră  IF soundoff = 0 THEN PLAYWAV (chicken,1)ă  Label1.Caption = "Infinitely big"ă  operand = ""					ă  entry = ""					ă  entrynext = ""ăEND SUBăăSUB Keypressedă  SELECT CASE CHR$(key)ă    CASE "0" ă      ButtonClick0ă    CASE "1"ă      ButtonClick1ă    CASE "2"ă      ButtonClick2ă    CASE "3"ă      ButtonClick3ă    CASE "4"ă      ButtonClick4ă    CASE "5"ă      ButtonClick5ă    CASE "6"ă      ButtonClick6ă    CASE "7"ă      ButtonClick7ă    CASE "8"ă      ButtonClick8ă    CASE "9"ă      ButtonClick9ă    CASE "\"ă      Backslashă    CASE "'"ă      Separatoră    CASE "+"ă      ButtonClickPlusă    CASE "-"ă      ButtonClickMinusă    CASE "*", "x"ă      ButtonClickMultă    CASE "/"ă      ButtonClickDivă    CASE CHR$(13)ă      ButtonClickEnteră    CASE CHR$(8)ă      ButtonClickCă    CASE CHR$(27)ă      ButtonClickCA ă    CASE "."ă      ButtonClickDotă    CASE "%"ă      ButtonClickPercentă  END SELECTăEND SUBăăSUB DoMathă  DEFBYTE first, second, firstR, secondR, divă  HistoryView.Enabled = 1ă  first = INSTR(memvalue,"\")ă  firstR = RINSTR(memvalue,"\")ă  second = INSTR(memvaluenext,"\")ă  secondR = RINSTR(memvaluenext,"\")ă  wholeF$ = ""ă  wholeS$ = ""ă  HistoryView.AddItems operand + "     " + memvaluenextă  HistoryView.ItemIndex = HistoryView.Itemcount - 1ă  IF first = 0 AND second = 0 THENă    SELECT CASE operandă      CASE "+"ă        memvalue = STR$(VAL(memvalue) + VAL(memvaluenext))ă      CASE "-"ă        memvalue = STR$(VAL(memvalue) - VAL(memvaluenext))ă      CASE "x"ă        memvalue = STR$(VAL(memvalue) * VAL(memvaluenext))ă      CASE "÷"ă        memvalue = STR$(VAL(memvalue) / VAL(memvaluenext))ă      CASE "^"ă        IF VAL(memvaluenext) = 0 THENă          IF soundoff = 0 THEN PLAYWAV (chicken,1)ă          memvalue = "UNDEFINED"ă        ELSEă          IF VAL(memvalue) < 0 AND VAL(memvaluenext) < 1 THENă            SHOWMESSAGE("You're extracting the root of a negative number." + CHR$(13)_ă                        + "Calculait will display the real solution only.")ă          END IFă          IF VAL(memvalue) < 0 THENă            IF VAL(memvaluenext) > 1 AND VAL(memvaluenext) MOD 2 = 0 THENă              memvalue = STR$(VAL(memvalue) ^ VAL(memvaluenext))ă            ELSEă              memvalue = STR$(SGN(VAL(memvalue))*(ABS(VAL(memvalue)) ^ VAL(memvaluenext)))ă            END IFă          ELSEă            memvalue = STR$(VAL(memvalue) ^ VAL(memvaluenext))ă          END IFă        END IFă      CASE "ROOT"ă        IF VAL(memvaluenext) = 0 THENă          IF soundoff = 0 THEN PLAYWAV (chicken,1)ă          memvalue = "UNDEFINED"ă        ELSEă          IF VAL(memvalue) < 0 THENă            SHOWMESSAGE("You're extracting the root of a negative number." + CHR$(13)_ă                        + "Calculait will display the real solution only.")ă          END IFă          memvalue = STR$(SGN(VAL(memvalue))*(ABS(VAL(memvalue)) ^ (1/VAL(memvaluenext))))ă        END IFă    END SELECTă    HistoryView.Enabled = 1ă  ELSEă    IF first = 0 THEN ă      memvalue = memvalue + "\" + "1"ă      first = LEN(memvalue) - 1ă      firstR = firstă    END IFă    IF second = 0 THEN ă      memvaluenext = memvaluenext + "\" + "1"ă      second = LEN(memvaluenext) - 1ă      secondR = secondă    END IFă    IF first = firstR THENă      numerF$ = LEFT$(memvalue,first-1)ă      denomF$ = RIGHT$(memvalue,LEN(memvalue)-first)ă      numerF = VAL(numerF$)ă      denomF = VAL(denomF$)ă    ELSEă      wholeF$ = LEFT$(memvalue,first-1)ă      numerF$ = MID$(memvalue,first+1,firstR-1)ă      denomF$ = RIGHT$(memvalue,LEN(memvalue)-firstR)ă      wholeF = VAL(wholeF$)ă      denomF = VAL(denomF$)ă      numerF = (denomF*wholeF) + VAL(numerF$)ă    END IFă    IF second = secondR THENă      numerS$ = LEFT$(memvaluenext,second-1)ă      denomS$ = RIGHT$(memvaluenext,LEN(memvaluenext)-second)ă      numerS = VAL(numerS$)ă      denomS = VAL(denomS$)     ă    ELSEă      wholeS$ = LEFT$(memvaluenext,second-1)ă      numerS$ = MID$(memvaluenext,second+1,secondR-1)ă      denomS$ = RIGHT$(memvaluenext,LEN(memvaluenext)-secondR)ă      wholeS = VAL(wholeS$)ă      denomS = VAL(denomS$)ă      numerS = (denomS*wholeS) + VAL(numerS$)ă    END IFă    SELECT CASE operandă      CASE "+","-"ă        IF denomF <> denomS THENă          denominator = denomF * denomSă          numerF = numerF * denomSă          numerS = numerS * denomFă        ELSEă          denominator = denomFă        END IFă        IF operand = "+" THENă          numerator = numerF + numerSă        ELSEă          numerator = numerF - numerSă        END IFă      CASE "x"ă        numerator = numerF * numerSă        denominator = denomF * denomSă      CASE "÷"ă        numerator = numerF * denomSă        denominator = denomF * numerSă    END SELECTă    IF numerator = 0 THEN ă      memvalue = "0"ă      Label1.Caption = memvalue    ă      entrynext = ""ă      EXIT SUBă    ELSEIF denominator = 0 THENă      IF soundoff = 0 THEN PLAYWAV (chicken,1)ă      memvalue = "Infinitely big"ă      Label1.Caption = memvalue    ă      entrynext = ""ă      EXIT SUBă    END IFă    IF numerator < denominator THENă      IF denominator MOD numerator = 0 THENă        denominator = denominator/numeratoră        IF denominator < 0 AND ABS(denominator) <> 1 THENă          memvalue = "-1" + "\" + STR$(ABS(denominator))ă        ELSEIF denominator < 0 AND ABS(denominator) = 1 THENă          memvalue = "-1"ă        ELSEă          memvalue = "1" + "\" + STR$(denominator)ă        END IFă        Label1.Caption = memvalue    ă        entrynext = ""ă        EXIT SUBă      END IFă    ELSEă      IF numerator MOD denominator = 0 THENă        numerator = numerator/denominatoră        memvalue = STR$(numerator)ă        Label1.Caption = memvalue   ă        entrynext = ""ă        EXIT SUBă      END IFă    END IFă    FOR x = 1 TO 2ă      IF numerator MOD 2 = 0 AND denominator MOD 2 = 0 THENă        div = 2ă      ELSEIF numerator MOD 3 = 0 AND denominator MOD 3 = 0 THENă        div = 3ă      ELSEIF numerator MOD 5 = 0 AND denominator MOD 5 = 0 THENă        div = 5ă      ELSEIF numerator MOD 7 = 0 AND denominator MOD 7 = 0 THENă        div = 7ă      ELSEă        div = 1ă      END IFă      IF div <> 1 THENă        DOă          numerator = numerator/divă          denominator = denominator/divă        LOOP UNTIL numerator MOD div <> 0 OR denominator MOD div <> 0ă      END IFă    NEXTă  END IFă  IF first = 0 and second = 0 THENă    'no code hereă  ELSEă    IF denominator < 0 THENă      memvalue = "-" + STR$(numerator) + "\" + STR$(ABS(denominator))ă    ELSEIF denominator = 1 THENă      memvalue = STR$(numerator)ă    ELSEă      memvalue = STR$(numerator) + "\" + STR$(denominator)ă    END IF    ă  END IFă  entrynext = ""ă  Label1.Caption = memvalue     ăEND SUBăăSUB DoCheckă  HistoryView.Enabled = 1ă  IF dochecktag = 0 THENă    IF precision$ = "" THENă      Label1.Caption = FORMAT$("%g",funcanswer)ă    ELSEă      Label1.Caption = FORMAT$(precision$,funcanswer)    ă    END IFă  ELSEă    dochecktag = 0ă  END IFă  HistoryView.AddItems operand + "     " + Label1.Captionă  IF Label1.Caption = "Infinitely big" OR Label1.Caption = "Too big!" OR Label1.Caption = "UNDEFINED" THEN ă    IF soundoff = 0 THEN PLAYWAV (chicken,1)ă  ELSEă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  END IF  ă  IF operand = "" THENă    memvalue = Label1.Caption    ă    entry = ""ă  ELSEă    memvaluenext = Label1.Captionă    entrynext = ""ă  END IFă  HistoryView.ItemIndex = HistoryView.Itemcount - 1  ă  HistoryView.AddItemsă  SetFocus(Form.Handle)ăEND SUBăăSUB DummyProcăEND SUBăăSUB FormCloseă  ExitSaveăEND SUBăăSUB ClipboardCopyă  IF soundoff = 0 THEN PLAYWAV (camera,1)ă  ClipBoard.Openă  ClipBoard.SetAsText(Label1.Caption)ă  ClipBoard.CloseăEND SUBăăSUB ClipboardPasteă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  ClipBoard.Open   ă  funcanswer = VAL(ClipBoard.Text)ă  DoCheckă  ClipBoard.CloseăEND SUBăăSUB Statsă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  StatsForm.Visible = 1ă  SetFocus(Form.Handle)ăEND SUBăăSUB Numberă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  Label1.Caption = STR$(StatsBox.ItemCount)ăEND SUBăăSUB Sumă  DEFWORD x, lastitemă  DEFDBL totă  tot = 0ă  lastitem = StatsBox.Itemcount - 1ă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  FOR x = 0 TO lastitemă    tot = tot + VAL(StatsBox.Item(x))ă  NEXTă  Label1.Caption = STR$(tot)ăEND SUBăăSUB Averageă  DEFWORD x, lastitemă  DEFDBL totă  tot = 0ă  lastitem = StatsBox.Itemcount - 1ă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  FOR x = 0 TO lastitemă    tot = tot + VAL(StatsBox.Item(x))ă  NEXTă  Label1.Caption = STR$(tot/StatsBox.ItemCount)ăEND SUBăăSUB SumSquaresă  DEFDBL sumsquared, sumxă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  lastitem = StatsBox.ItemCount - 1ă  sumsquared = 0ă  sumx = 0ă  FOR x = 0 TO lastitemă    sumsquared = sumsquared + VAL(StatsBox.Item(x))^2ă    sumx = sumx + VAL(StatsBox.Item(x))ă  NEXTă  Label1.Caption = STR$(sumsquared - (sumx^2 / StatsBox.ItemCount))ăEND SUBăăSUB StdDevă  DEFDBL sumsquared, sumxă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  lastitem = StatsBox.ItemCount - 1ă  sumsquared = 0ă  sumx = 0ă  FOR x = 0 TO lastitemă    sumsquared = sumsquared + VAL(StatsBox.Item(x))^2ă    sumx = sumx + VAL(StatsBox.Item(x))ă  NEXTă  Label1.Caption = STR$(SQR(((StatsBox.ItemCount * sumsquared) - sumx^2) / (StatsBox.ItemCount * lastitem)))ăEND SUBăăSUB PopDevă  DEFDBL sumsquared, sumxă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  lastitem = StatsBox.ItemCount - 1ă  sumsquared = 0ă  sumx = 0ă  FOR x = 0 TO lastitemă    sumsquared = sumsquared + VAL(StatsBox.Item(x))^2ă    sumx = sumx + VAL(StatsBox.Item(x))ă  NEXTă  Label1.Caption = STR$((SQR(StatsBox.ItemCount * sumsquared - sumx^2)) / StatsBox.ItemCount)ăEND SUBăăSUB Sortă  DEFWORD lastitemă  lastitem = StatsBox.ItemCount - 1ă  DIM StatsArray(0 TO lastitem) AS DOUBLEă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  FOR x = 0 TO lastitemă    StatsArray(x) = VAL(StatsBox.Item(x))ă  NEXT    ă  QUICKSORT(StatsArray(0),StatsArray(lastitem),ascend)ă  StatsBox.Cleară  FOR x = 0 TO lastitemă    StatsBox.AddItems STR$(StatsArray(x))ă  NEXT  ăEND SUBăăSUB Correlateă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  CorrelateForm.Visible = 1ă  SetFocus(Form.Handle)ăEND SUBăăSUB Correlate0ă  IF CorrelatePanel1.Caption = "  Enter FIRST data set." THENă    Correlate1ă  ELSEIF CorrelatePanel1.Caption = "Enter OTHER data set." THENă    Correlate2ă  ELSEă    Cleară  END IFăEND SUBăăSUB Correlate1ă  DIM lastitem AS WORDă  lastitem = CorrelateBox.ItemCount - 1ă  FOR x = 0 TO lastitemă    Data1(x) = VAL(CorrelateBox.Item(x))ă  NEXTă  Cleară  CorrelatePanel1.Caption = "Enter OTHER data set."ă  SetFocus(Form.Handle)ăEND SUBăăSUB Correlate2ă  DIM lastitem AS WORDă  lastitem = CorrelateBox.ItemCount - 1ă  FOR x = 0 TO lastitemă    Data2(x) = VAL(CorrelateBox.Item(x))ă  NEXTă  CorrelationăEND SUBăăSUB Correlationă  DIM lastitem AS WORDă  lastitem = CorrelateBox.ItemCount - 1ă  SumData1 = 0ă  FOR x = 0 TO lastitemă    SumData1 = SumData1 + Data1(x)ă  NEXTă  SumData2 = 0ă  FOR x = 0 TO lastitemă    SumData2 = SumData2 + Data2(x)ă  NEXTă  Sum12 = 0ă  FOR x = 0 TO lastitemă    Sum12 = Sum12 + Data1(x)*Data2(x)ă  NEXTă  SumData1sq = 0ă  FOR x = 0 TO lastitemă    SumData1sq = SumData1sq + Data1(x)*Data1(x)ă  NEXTă  SumData2sq = 0ă  FOR x = 0 TO lastitemă    SumData2sq = SumData2sq + Data2(x)*Data2(x)ă  NEXTă  numerator = CorrelateBox.ItemCount*Sum12 - SumData1*SumData2ă  denominator = SQR(CorrelateBox.ItemCount*SumData1sq - SumData1^2) * SQR(CorrelateBox.ItemCount*SumData2sq - SumData2^2)ă  IF numerator = 0 AND denominator = 0 THENă    Label1.Caption = "100.0%"ă  ELSEă    Label1.Caption = LEFT$(STR$(((numerator /denominator)^2)*100),7) + "%"ă  END IFă  CorrelatePanel1.Caption = "       Another?"ăEND SUBăăSUB Cleară  IF soundoff = 0 THEN PLAYWAV (whooh,1)ă  Label1.Caption = "0"ă  entrynext = ""    ă  entry = ""ă  operand = ""ă  StatsBox.Cleară  CorrelateBox.Cleară  CorrelatePanel1.Caption = "  Enter FIRST data set."ă  SetFocus(Form.Handle)ăEND SUBăăSUB WorldTimeDateă  DEFBYTE Interval, yesterday, tomorrow, day, endday, monthă  DEFINT milhour, hour, hour0, min, min0, yeară  hour0 =  VAL(LEFT$(TIME$,2))ă  min0 = VAL(MID$(TIME$,4,2)) ă  IF City$ = DateLine$ THENă    MinDiff = 0ă  ELSEIF City$ <> "" AND DateLine$ = "" THENă    MinDiff = 0  ă  ELSEă    SELECT CASE City$ă      CASE "Mum","Ran","Teh"ă        MinDiff = -30  ă    END SELECTă  END IF    ă  min = min0 + MinDiffă  IF min >= 60 THENă    min = min - 60ă    hour0 = VAL(LEFT$(time$,2)) + 1ă  ELSEIF min < 0 THENă    min = min + 60ă    hour0 = VAL(LEFT$(time$,2)) - 1ă  END IFă  hour = hour0 + HourDiffă  milhour = houră  IF hour < 0 THENă    hour = hour + 24ă    milhour = houră    ampm$ = " AM"ă    IF hour > 12 THEN ă      hour = hour - 12ă      ampm$ = " PM"ă    END IFă    yesterday = 1ă  ELSEIF hour >= 24 THENă    hour = hour - 24ă    milhour = houră    IF hour = 0 THEN hour = 12ă    ampm$ = " AM"ă    tomorrow = 1ă  ELSEIF hour >= 12 AND hour < 24 THENă    hour = hour - 12ă    IF hour = 0 THEN hour = 12ă    ampm$ = " PM"ă  ELSEIF hour = 0 THEN ă    hour = 12ă    ampm$ = " AM"ă  ELSEă    ampm$ = " AM"ă  END IFă  IF min < 10 THENă    IF military = 1 THENă      BlankLabel1.Caption = STR$(milhour) + ":0" + STR$(min) + RIGHT$(TIME$,3)ă    ELSEă      BlankLabel1.Caption = STR$(hour) + ":0" + STR$(min) + RIGHT$(TIME$,3) + ampm$ă    END IFă  ELSEă    IF military = 1 THENă      BlankLabel1.Caption = STR$(milhour) + ":" + STR$(min) + RIGHT$(TIME$,3)ă    ELSEă      BlankLabel1.Caption = STR$(hour) + ":" + STR$(min) + RIGHT$(TIME$,3) + ampm$ă    END IFă  END IFă  IF clickeddate = 0 THENă    day = VAL(MID$(date$,4,2))ă    month$ = LEFT$(date$,2)ă    month = VAL(month$)ă    year$ = RIGHT$(date$,4)ă    year = VAL(year$)ă    IF yesterday = 1 THENă      IF day = 1 THENă        SELECT CASE monthă          CASE 5, 7, 10, 12ă            day = 30ă          CASE 3ă            IF year MOD 4 = 0 THENă              day = 29ă              IF year MOD 100 = 0 THENă                IF year MOD 400 <> 0 THEN day = 28ă              END IFă            ELSEă              day = 28ă            END IFă          CASE ELSEă            day = 31ă        END SELECTă        DEC monthă        IF month = 0 THEN month = 12        ă      ELSEă        DEC day ă      END IFă      yesterday = 0ă    ELSEIF tomorrow = 1 THENă      endday = 0ă      SELECT CASE monthă        CASE 1, 3, 5, 7, 8, 10, 12ă          endday = 31ă        CASE 2ă          IF year MOD 4 = 0 THENă            endday = 29ă            IF year MOD 100 = 0 THENă              IF year MOD 400 = 0 THEN endday = 29ă            END IFă          ELSEă            endday = 28ă          END IFă        CASE ELSEă          endday = 30ă      END SELECTă      IF day = endday THEN ă        day = 1ă        INC monthă        IF month = 13 THENă          month = 1ă          INC yeară        END IFă      ELSEă        INC dayă      END IF  ă      tomorrow = 0ă    END IFă    month$ = STR$(month)ă    day$ = STR$(day)ă    year$ = STR$(year)ă    IF formdate = 0 THEN  ă      BlankLabel2.Caption =  month$ + "-" + day$ + "-" + year$ă    ELSEIF formdate = 1 THENă      BlankLabel2.Caption =  day$ + "-" + month$ + "-" + year$ă    ELSEIF formdate = 2 THENă      BlankLabel2.Caption =  year$ + "-" + month$ + "-" + day$ă    END IFă  END IFăEND SUBăăSUB Cityă  IF soundoff = 0 THEN PLAYWAV (gong,1)ă  TimeForm.Color = clRedă  Label1.Caption = "Click city you're in."ă  TimeForm.Visible = 1  ăEND SUBăăSUB TZoneă  IF soundoff = 0 THEN PLAYWAV (gong,1)ă  IF GMTDiff$ = "" THENă    TimeForm.Color = clRedă    Label1.Caption = "Click city you're in."ă  ELSEă    Label1.Caption = "Click a city." ă  END IFă  TimeForm.Visible = 1ăEND SUBă  ăSUB CloseTZoneă  IF soundoff = 0 THEN PLAYWAV (whooh,1)ă  Label1.Caption = "0"ă  HourDiff = 0ă  MinDiff = 0ă  DateLine$ = ""ă  WorldTimeDateăEND SUBăăSUB ManTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -8ă    GMTDiff$ = "-8"ă    City$ = "Man"ă  END IFă  DateLine$ = "Man" ă  MinDiff = 0ă  HourDiff = GMTDiff + 8ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Manila time/date:"ăEND SUBăăSUB NYTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = 5ă    GMTDiff$ = "5"ă    City$ = "NY"ă  END IFă  DateLine$ = "NY" ă  MinDiff = 0ă  HourDiff = GMTDiff - 5ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "New York time/date:"ăEND SUBăăSUB LATimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = 8ă    GMTDiff$ = "8"ă    City$ = "LA"ă  END IFă  DateLine$ = "LA" ă  MinDiff = 0ă  HourDiff = GMTDiff - 8ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Los Angeles time/date:"ăEND SUBăăSUB SLTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = 7ă    GMTDiff$ = "7"ă    City$ = "SL"ă  END IFă  DateLine$ = "SL" ă  MinDiff = 0ă  HourDiff = GMTDiff - 7ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Salt Lake time/date:"ăEND SUBăăSUB HouTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = 6ă    GMTDiff$ = "6"ă    City$ = "Hou"ă  END IFă  DateLine$ = "Hou"ă  MinDiff = 0ă  HourDiff = GMTDiff - 6ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Houston time/date:"ăEND SUBăăSUB TehTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -3ă    GMTDiff$ = "-3"ă    City$ = "Teh"ă  END IFă  DateLine$ = "Teh"ă  MinDiff = 30ă  HourDiff = GMTDiff + 3ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Tehran time/date:"ăEND SUBăăSUB RanTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -6ă    GMTDiff$ = "-6"ă    City$ = "Ran"ă  END IFă  DateLine$ = "Ran"ă  MinDiff = 30ă  HourDiff = GMTDiff + 6ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Rangoon time/date:"ăEND SUBăăSUB HKTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -8ă    GMTDiff$ = "-8"ă    Label1.Caption = "Dateline: Hong Kong"ă    City$ = "HK"ă  END IFă  DateLine$ = "HK"ă  MinDiff = 0ă  HourDiff = GMTDiff + 8ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Hong Kong time/date:"ăEND SUBăăSUB LonTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = 0ă    GMTDiff$ = ""ă    City$ = "Lon"ă  END IFă  DateLine$ = "Lon"ă  MinDiff = 0ă  HourDiff = GMTDiffă  Military = 0ă  WorldTimeDateă  Label1.Caption = "London time/date:"ăEND SUBăăSUB MadTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -1ă    GMTDiff$ = "-1"ă    City$ = "Mad"ă  END IFă  DateLine$ = "Mad"ă  MinDiff = 0ă  HourDiff = GMTDiff + 1ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Madrid time/date:"ăEND SUBăăSUB ParTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -1ă    GMTDiff$ = "-1"ă    City$ = "Par"ă  END IFă  DateLine$ = "Par"ă  MinDiff = 0ă  HourDiff = GMTDiff + 1ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Paris time/date:"ăEND SUBăăSUB BerTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -1ă    GMTDiff$ = "-1"ă    City$ = "Ber"ă  END IFă  DateLine$ = "Ber"ă  MinDiff = 0ă  HourDiff = GMTDiff + 1ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Berlin time/date:"ăEND SUBăăSUB RomTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -1ă    GMTDiff$ = "-1"ă    City$ = "Rom"ă  END IFă  DateLine$ = "Rom"ă  MinDiff = 0ă  HourDiff = GMTDiff + 1ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Rome time/date:"ăEND SUBăăSUB HelTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -2ă    GMTDiff$ = "-2"ă    City$ = "Hel"ă  END IFă  DateLine$ = "Hel"ă  MinDiff = 0ă  HourDiff = GMTDiff + 2ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Helsinki time/date:"ăEND SUBăăSUB MosTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -3ă    GMTDiff$ = "-3"ă    City$ = "Mos"ă  END IFă  DateLine$ = "Mos"ă  MinDiff = 0ă  HourDiff = GMTDiff + 3ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Moscow time/date:"ăEND SUBăăSUB TokTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -9ă    GMTDiff$ = "-9"ă    City$ = "Tok"ă  END IFă  DateLine$ = "Tok"ă  MinDiff = 0ă  HourDiff = GMTDiff + 9ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Tokyo time/date:"ăEND SUBăăSUB HonTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = 10ă    GMTDiff$ = "10"ă    City$ = "Hon"ă  END IFă  DateLine$ = "Hon"ă  MinDiff = 0ă  HourDiff = GMTDiff - 10ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Honolulu time/date:"ăEND SUBăăSUB StoTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -1ă    GMTDiff$ = "-1"ă    City$ = "Sto"ă  END IFă  DateLine$ = "Sto"ă  MinDiff = 0ă  HourDiff = GMTDiff + 1ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Stockholm time/date:"ăEND SUBăăSUB SydTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -10ă    GMTDiff$ = "-10"ă    City$ = "Syd"ă  END IFă  DateLine$ = "Syd"ă  MinDiff = 0ă  HourDiff = GMTDiff + 10ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Sydney time/date:"ăEND SUBăăSUB RioTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = 3ă    GMTDiff$ = "3"ă    City$ = "Rio"ă  END IFă  DateLine$ = "Rio"ă  MinDiff = 0ă  HourDiff = GMTDiff - 3ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "R. de Janeiro time/date:"ăEND SUBăăSUB AucTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -12ă    GMTDiff$ = "-12"ă    City$ = "Auc"ă  END IFă  DateLine$ = "Auc"ă  MinDiff = 0ă  HourDiff = GMTDiff + 12ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Auckland time/date:"ăEND SUBăăSUB GuaTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -10ă    GMTDiff$ = "-10"ă    City$ = "Gua"ă  END IFă  DateLine$ = "Gua"ă  MinDiff = 0ă  HourDiff = GMTDiff + 10ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Guam time/date:"ăEND SUBăăSUB MexTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = 6ă    GMTDiff$ = "6"ă    City$ = "Mex"ă  END IFă  DateLine$ = "Mex"ă  MinDiff = 0ă  HourDiff = GMTDiff - 6ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Mexico time/date:"ăEND SUBăăSUB TorTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = 5ă    GMTDiff$ = "5"ă    City$ = "Tor"ă  END IFă  DateLine$ = "Tor"ă  MinDiff = 0ă  HourDiff = GMTDiff - 5ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Toronto time/date:"ăEND SUBăăSUB MumTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -5ă    GMTDiff$ = "-5"ă    City$ = "Mum"    ă  END IFă  DateLine$ = "Mum"    ă  MinDiff = 30ă  HourDiff = GMTDiff + 5ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Mumbai time/date:"ăEND SUBăăSUB JakTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -7ă    GMTDiff$ = "-7"ă    City$ = "Jak"ă  END IFă  DateLine$ = "Jak"ă  MinDiff = 0ă  HourDiff = GMTDiff + 7ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Jakarta time/date:"ăEND SUBăăSUB RiyTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -3ă    GMTDiff$ = "-3"ă    City$ = "Riy"ă  END IFă  DateLine$ = "Riy"ă  MinDiff = 0ă  HourDiff = GMTDiff + 3ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Riyadh time/date:"ăEND SUBăăSUB HavTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = 5ă    GMTDiff$ = "5"ă    City$ = "Hav"ă  END IFă  DateLine$ = "Hav"ă  MinDiff = 0ă  HourDiff = GMTDiff - 5ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Havana time/date:"ăEND SUBăăSUB CaiTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -2ă    GMTDiff$ = "-2"ă    City$ = "Cai"ă  END IFă  DateLine$ = "Cai"ă  MinDiff = 0ă  HourDiff = GMTDiff + 2ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Cairo time/date:"ăEND SUBăăSUB CarTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = 4ă    GMTDiff$ = "4"ă    City$ = "Car"ă  END IFă  DateLine$ = "Car"ă  MinDiff = 0ă  HourDiff = GMTDiff - 4ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Caracas time/date:"ăEND SUBăăSUB KarTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF TimeForm.Color = clRed THENă    TimeForm.Color = &HABC111ă    GMTDiff = -5ă    GMTDiff$ = "-5"ă    City$ = "Kar"ă  END IFă  DateLine$ = "Kar"ă  MinDiff = 0    ă  HourDiff = GMTDiff + 5ă  Military = 0ă  WorldTimeDateă  Label1.Caption = "Karachi time/date:"ăEND SUBăăSUB MilTimeă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  IF military = 0 THEN ă    military = 1ă  ELSEă    military = 0ă  END IFă  WorldTimeDateăEND SUBăăSUB CompoundInterestă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  CompIntForm.Visible = 1ă  PeriodEdit.Enabled = 1ă  PeriodEdit.Color = clWhiteă  PeriodPanel.Enabled = 1ă  SetFocus(PeriodEdit.Handle)ăEND SUBăăSUB CompPeriodă  IF key = 13 THEN EnterPeriodăEND SUBăăSUB EnterPeriodă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  PeriodEdit.Enabled = 0ă  PeriodEdit.Color = &HBBB000ă  PeriodPanel.Enabled = 0ă  PrincipalEdit.Enabled = 1ă  PrincipalEdit.Color = clWhiteă  PrincipalPanel.Enabled = 1ă  SetFocus(PrincipalEdit.Handle)ăEND SUBăăSUB CompPrincipală  IF key = 13 THEN EnterPrincipalăEND SUBăăSUB EnterPrincipală  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  PrincipalEdit$ = PrincipalEdit.EditTextă  PrincipalEdit.EditText = FORMAT$("%-n",VAL(PrincipalEdit$))ă  PrincipalEdit.Enabled = 0ă  PrincipalEdit.Color = &HBBB000ă  PrincipalPanel.Enabled = 0ă  InterestEdit.Enabled = 1ă  InterestEdit.Color = clWhiteă  InterestPanel.Enabled = 1ă  SetFocus(InterestEdit.Handle)ăEND SUBăăSUB CompInterestă  IF key = 13 THEN EnterInterestăEND SUBăăSUB EnterInterestă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  InterestEdit.Enabled = 0ă  InterestEdit.Color = &HBBB000ă  InterestPanel.Enabled = 0ă  CInterestEdit.Enabled = 1ă  CInterestEdit.Color = clWhiteă  CInterestPanel.Enabled = 1ă  SetFocus(CInterestEdit.Handle)ăEND SUBăăSUB CompCInterestă  IF key = 13 THEN EnterCInterestăEND SUBăăSUB EnterCInterestă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  CInterestEdit.Enabled = 0ă  CInterestEdit.Color = &HBBB000ă  CInterestPanel.Enabled = 0ă  SetFocus(ClearCompInterest.Handle)ă  P = VAL(PrincipalEdit$)ă  n = VAL(PeriodEdit.EditText)ă  ci = VAL(CInterestEdit.EditText)ă  IF ci = 0 THEN EXIT SUBă  i = (VAL(InterestEdit.EditText)/ci) * .01ă  Label1.Caption = STR$(P*(1 + i)^n)ă  CAnswerEdit.Enabled = 1 ă  CAnswerEdit.Color = clWhite ă  CAnswerEdit.EditText = FORMAT$("%-.2n",P*(1 + i)^n)ăEND SUBăăSUB InterestCleară  IF soundoff = 0 THEN PLAYWAV (whooh,1)ă  PeriodEdit.Enabled = 1ă  PeriodEdit.Color = clWhiteă  PeriodPanel.Enabled = 1 ă  PrincipalEdit.Enabled = 0ă  PrincipalEdit.Color = &HBBB000ă  InterestEdit.Enabled = 0ă  InterestEdit.Color = &HBBB000ă  CInterestEdit.Enabled = 0ă  CInterestEdit.Color = &HBBB000  ă  PrincipalEdit.EditText = ""ă  PeriodEdit.EditText = ""ă  InterestEdit.EditText = ""ă  CInterestEdit.EditText = ""ă  CAnswerEdit.Enabled = 0 ă  CAnswerEdit.Color = &HBBB000 ă  CAnswerEdit.EditText = ""ă  SetFocus(PeriodEdit.Handle)   ăEND SUBăăSUB Amortization  ă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  AmortForm.Visible = 1ă  ALoanEdit.Enabled = 1ă  ALoanEdit.Color = clWhiteă  ALoanPanel.Enabled = 1ă  SetFocus(ALoanEdit.Handle)ăEND SUBăăSUB ALoană  IF key = 13 THENă    IF soundoff = 0 THEN PLAYWAV (handbell,1)ă    ALoanEdit$ = ALoanEdit.EditTextă    ALoanEdit.EditText = FORMAT$("%-n",VAL(ALoanEdit$))ă    ALoanEdit.Enabled = 0ă    ALoanEdit.Color = &HBBB000ă    ALoanPanel.Enabled = 0ă    AInterestEdit.Enabled = 1ă    AInterestEdit.Color = clWhiteă    AInterestPanel.Enabled = 1ă    SetFocus(AInterestEdit.Handle)ă  END IFăEND SUBăăSUB AInterestă  IF key = 13 THENă    IF soundoff = 0 THEN PLAYWAV (handbell,1)ă    AInterestEdit.Enabled = 0ă    AInterestEdit.Color = &HBBB000ă    AInterestPanel.Enabled = 0ă    AcInterestEdit.Enabled = 1ă    AcInterestEdit.Color = clWhiteă    AcInterestPanel.Enabled = 1ă    SetFocus(AcInterestEdit.Handle)ă  END IFăEND SUBăăSUB AcInterestă  IF key = 13 THENă    IF soundoff = 0 THEN PLAYWAV (handbell,1)ă    AcInterestEdit.Enabled = 0ă    AcInterestEdit.Color = &HBBB000ă    AcInterestPanel.Enabled = 0ă    APeriodEdit.Enabled = 1ă    APeriodEdit.Color = clWhiteă    APeriodPanel.Enabled = 1ă    SetFocus(APeriodEdit.Handle)ă  END IFăEND SUBăăSUB APeriodă  IF key = 13 THENă    IF soundoff = 0 THEN PLAYWAV (handbell,1)ă    APeriodEdit.Enabled = 0ă    APeriodEdit.Color = &HBBB000ă    APeriodPanel.Enabled = 0ă    APaymentEdit.Enabled = 1ă    APaymentEdit.Color = clWhiteă    SetFocus(ClearAmort.Handle)ă    APaymentă  END IFăEND SUBăăSUB APaymentă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  APaymentEdit.Enabled = 0ă  loan = VAL(ALoanEdit$)ă  ci = VAL(AcInterestEdit.EditText)ă  IF ci = 0 THEN EXIT SUBă  i = VAL(AInterestEdit.EditText)*.01/ciă  n = VAL(APeriodEdit.EditText)ă  APaymentEdit.EditText = FORMAT$("%-n",(loan * i * (1 + i)^n)/((1 + i)^n - 1))ă  Label1.Caption = STR$((loan * i * (1 + i)^n)/((1 + i)^n - 1)) ăEND SUBăăSUB EnterALoană  ALoan(13)ăEND SUBăăSUB EnterAInterestă  AInterest(13)ăEND SUBăăSUB EnterAcInterestă  AcInterest(13)ăEND SUBăăSUB EnterAPeriodă  APeriod(13)ăEND SUBăăSUB AmortCleară  IF soundoff = 0 THEN PLAYWAV (whooh,1)ă  ALoanEdit.Enabled = 1ă  ALoanEdit.Color = clWhiteă  ALoanPanel.Enabled = 1 ă  AInterestEdit.Enabled = 0ă  AInterestEdit.Color = &HBBB000ă  AcInterestEdit.Enabled = 0ă  AcInterestEdit.Color = &HBBB000ă  APeriodEdit.Enabled = 0ă  APeriodEdit.Color = &HBBB000  ă  ALoanEdit.EditText = ""ă  AInterestEdit.EditText = ""ă  AcInterestEdit.EditText = ""ă  APeriodEdit.EditText = ""ă  APaymentEdit.Enabled = 0 ă  APaymentEdit.Color = &HBBB000 ă  APaymentEdit.EditText = ""ă  SetFocus(ALoanEdit.Handle)ăEND SUBăăăSUB PresentValueă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  PValueForm.Visible = 1ăEND SUBăăSUB FPValueă  IF FValueB.Checked = 1 THEN ă    FVPValuePanel.Caption = "PRESENT VALUE"ă  ELSEIF PValueB.Checked = 1 THENă    FVPValuePanel.Caption = "FUTURE VALUE"ă  END IFă  IPValueEdit.Enabled = 1ă  IPValueEdit.Color = clWhiteă  IPValuePanel.Enabled = 1ă  SetFocus(IPValueEdit.Handle)   ăEND SUBăăSUB IPValueă  FValueB.Enabled = 0ă  PValueB.Enabled = 0ă  IF key = 13 THEN EnterIPValueăEND SUBăăSUB EnterIPValueă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  FValueB.Enabled = 0ă  PValueB.Enabled = 0ă  IPValueEdit.Enabled = 0ă  IPValuePanel.Enabled = 0ă  IPValueEdit.Color = &HBBB000ă  CIPValueEdit.Enabled = 1ă  CIPValuePanel.Enabled = 1ă  CIPValueEdit.Color = clWhiteă  SetFocus(CIPValueEdit.Handle)ăEND SUBăăSUB CIPValueă  IF key = 13 THEN EnterCIPValueăEND SUBăăSUB EnterCIPValueă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  CIPValueEdit.Enabled = 0ă  CIPValuePanel.Enabled = 0ă  CIPValueEdit.Color = &HBBB000ă  FVPValueEdit.Enabled = 1ă  FVPValuePanel.Enabled = 1ă  FVPValueEdit.Color = clWhiteă  SetFocus(FVPValueEdit.Handle)ăEND SUBăăSUB FVPValueă  IF key = 13 THEN EnterFVPValue  ăEND SUBăăSUB EnterFVPValueă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  FVPValueEdit$ = FVPValueEdit.EditTextă  FVPValueEdit.EditText = FORMAT$("%-n",VAL(FVPValueEdit$))ă  FVPValueEdit.Enabled = 0ă  FVPValuePanel.Enabled = 0ă  FVPValueEdit.Color = &HBBB000ă  PPValueEdit.Enabled = 1ă  PPValuePanel.Enabled = 1ă  PPValueEdit.Color = clWhiteă  SetFocus(PPValueEdit.Handle)ăEND SUBăăSUB PPValueă  IF key = 13 THEN EnterPPValue ăEND SUBăăSUB EnterPPValueă  IF soundoff = 0 THEN PLAYWAV (handbell,1)  ă  PPValueEdit.Enabled = 0ă  PPValuePanel.Enabled = 0ă  PPValueEdit.Color = &HBBB000ă  ClearPValue.Enabled = 1ă  PAnswerEdit.Enabled = 1ă  PAnswerEdit.Color = clWhiteă  GetPValueăEND SUBăăSUB PValueCleară  IF soundoff = 0 THEN PLAYWAV (whooh,1)ă  FValueB.Enabled = 1ă  PValueB.Enabled = 1ă  FValueB.Checked = 0ă  PValueB.Checked = 0ă  IPValueEdit.Enabled = 0ă  IPValueEdit.EditText = ""ă  IPValueEdit.Color = &HBBB000ă  CIPValueEdit.EditText = ""ă  CIPValueEdit.Color = &HBBB000ă  FVPValueEdit.EditText = ""ă  FVPValueEdit.Color = &HBBB000ă  PPValueEdit.EditText = ""ă  PPValueEdit.Color = &HBBB000ă  IPValuePanel.Enabled = 0ă  PAnswerEdit.Enabled = 0ă  PAnswerEdit.Color = &HBBB000ă  PAnswerEdit.EditText = ""ăEND SUBăăSUB GetPValueă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  n = VAL(PPValueEdit.EditText)ă  FV = VAL(FVPValueEdit$)ă  PV = VAL(FVPValueEdit$)ă  ci = VAL(CIPValueEdit.EditText)ă  IF ci = 0 THEN EXIT SUBă  i = .01*VAL(IPValueEdit.EditText)/ci  ă  IF FValueB.Checked = 1 THEN ă    Label1.Caption = STR$(PV*(1 + i)^n)ă    PAnswerEdit.EditText = FORMAT$("%-n",PV*(1 + i)^n)ă  ELSEIF PValueB.Checked = 1 THENă    Label1.Caption = STR$(FV/(1 + i)^n)ă    PAnswerEdit.EditText = FORMAT$("%-n",FV/(1 + i)^n)ă  END IF ă  SetFocus(ClearPValue.Handle)ăEND SUBăăSUB Ratesă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  FinForm.Visible = 1ă  FacForm.Checked = 0ă  IntForm.Checked = 0ăEND SUBăăSUB Factoră  RatePanel.Enabled = 1ă  FacForm.Checked = 1ă  IntForm.Checked = 0ă  RateEdit.Enabled = 1ă  RateEdit.Color = clWhiteă  RatePanel.Caption = "Enter INTEREST RATE"ă  SetFocus(RateEdit.Handle)ăEND SUBăăSUB Interestă  RatePanel.Enabled = 1ă  IntForm.Checked = 1ă  FacForm.Checked = 0ă  RateEdit.Enabled = 1ă  RateEdit.Color = clWhiteă  SetFocus(RateEdit.Handle)ă  RatePanel.Caption = "Enter FACTOR RATE"ăEND SUBăăSUB EnterRateă  Rate(13)ăEND SUBăăSUB Rateă  FacForm.Enabled = 0ă  IntForm.Enabled = 0ă  IF key = 13 THENă    IF soundoff = 0 THEN PLAYWAV (handbell,1)ă    RatePanel.Enabled = 0ă    TermPanel.Enabled = 1ă    TermPanel.Caption = "Enter INSTALLMENT TERM"ă    TermEdit.Enabled = 1ă    TermEdit.Color = clWhiteă    RateEdit.Enabled = 0ă    RateEdit.Color = &HBBB000ă    SetFocus(TermEdit.Handle)ă  END IFăEND SUBăăSUB EnterTermă  Term(13)ăEND SUBăăSUB Termă  IF key = 13 THENă    IF soundoff = 0 THEN PLAYWAV (handbell,1)ă    TermPanel.Enabled = 0ă    TermEdit.Enabled = 0ă    TermEdit.Color = &HBBB000ă    AnswerEdit.Enabled = 1ă    AnswerEdit.Color = clWhite   ă    SetFocus(ClearFin.Handle)ă    GetRate    ă  END IFăEND SUBăăSUB GetRateă  DIM F AS SINGLE, i AS SINGLE, ans AS SINGLE, mult AS SINGLEă  IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă  IF IntForm.Checked = 1 THENă    rate$ = "I"ă    F = VAL(RateEdit.EditText)ă  ELSEIF FacForm.Checked = 1 THENă    rate$ = "F"ă    i = VAL(RateEdit.EditText) * .01ă  END IFă  n = VAL(TermEdit.EditText)ă  IF n = 0 THEN EXIT SUBă  SELECT CASE rate$ă    CASE "F"ă      ans = i/(1-(1/(1+i)^n))ă    CASE "I"ă      SELECT CASE nă        CASE 1 to 6ă          mult = .138ă        CASE 7 to 12ă          mult = .253ă        CASE 13 to 18ă          mult = .344ă        CASE 19 to 24ă          mult = .419ă        CASE 25 to 30ă          mult = .523ă        CASE 31 to 36ă          mult = .589ă        CASE 37 to 42ă          mult = .646ă        CASE 43 to 48ă          mult = .694ă        CASE 49 to 54ă          mult = .736ă        CASE 55 to 60ă          mult = .772ă        CASE ELSEă          mult = 1ă      END SELECTă      i = F*multă      'testF = i/(1-(1/(1+i)^n))ă      DOă        IF testF < F THENă          difratio = F/testFă          i = i*difratioă        ELSEIF testF > F THENă          difratio = F/testFă          i = i*difratioă        END IFă        'testF = i/(1-(1/(1+i)^n))ă      LOOP UNTIL abs(F-testF) <= .0001ă      IF testF < F THENă        DOă          INC i,.000055ă          'testF = i/(1-(1/(1+i)^n))ă        LOOP UNTIL testF >= Fă      ELSEIF testF > F THENă        DOă          DEC i,.000055ă          'testF = i/(1-(1/(1+i)^n))ă        LOOP UNTIL testF <= Fă      END IFă      IF i < 0 THEN INC i,.000055ă      ans = 100*iă  END SELECTă  IF IntForm.Checked = 1 THENă    Label1.Caption = "Interest rate: " + STR$(FIX(ans)) + MID$(STR$(FRAC(ans)),2,4)ă  ELSEIF FacForm.Checked = 1 THENă    Label1.Caption = "Factor rate: " + STR$(FIX(ans)) + MID$(STR$(FRAC(ans)),2,4)ă  END IFă  AnswerEdit.EditText = STR$(ans)ăEND SUBăăSUB FinCleară  IF soundoff = 0 THEN PLAYWAV (whooh,1)ă  FacForm.Checked = 0ă  IntForm.Checked = 0ă  FacForm.Enabled = 1ă  IntForm.Enabled = 1ă  RateEdit.Enabled = 0ă  TermEdit.Enabled = 0ă  RateEdit.EditText = ""ă  TermEdit.EditText = ""ă  RatePanel.Caption = "Enter RATE here"ă  TermPanel.Caption = "Enter TERM here"ă  RateEdit.Color = &HBBB000ă  TermEdit.Color = &HBBB000ă  AnswerEdit.EditText = ""ă  AnswerEdit.Color = &HBBB000ă  AnswerEdit.Enabled = 0  ăEND SUBăăSUB FSaveă  DIM lastitem AS WORDă  DIM FileS AS QSAVEDIALOGă  DIM SaveFileS AS QSTRINGLISTă  lastitem = StatsBox.ItemCount - 1ă  FOR x = 0 TO lastitemă    SaveFileS.AddItems StatsBox.Item(x)ă  NEXTă  IF FileS.Execute THEN ă    ShowMessage "Saving to: " + FileS.FileNameă  END IF ă  SaveFileS.SaveToFile(FileS.FileName)ăEND SUBăăSUB FSaveCă  DIM lastitem AS WORDă  DIM FileC AS QSAVEDIALOGă  DIM SaveFileC AS QSTRINGLISTă  lastitem = CorrelateBox.ItemCount - 1ă  FOR x = 0 TO lastitemă    SaveFileC.AddItems CorrelateBox.Item(x)ă  NEXTă  IF FileC.Execute THEN ă    ShowMessage "Saving to: " + FileC.FileNameă  END IF ă  SaveFileC.SaveToFile(FileC.FileName)ăEND SUBăăSUB FSaveHă  DIM lastitem AS WORDă  DIM FileH AS QSAVEDIALOGă  DIM SaveFileH AS QSTRINGLISTă  lastitem = HistoryView.ItemCount - 1ă  FOR x = 0 TO lastitemă    SaveFileH.AddItems HistoryView.Item(x)ă  NEXTă  IF FileH.Execute THEN ă    ShowMessage "Saving to: " + FileH.FileNameă  END IF ă  SaveFileH.SaveToFile(FileH.FileName)ăEND SUBăăSUB FPrintHă LPRINT HistoryView.Textă LFLUSHăEND SUBăăSUB FPrintSă LPRINT StatsBox.Textă LFLUSHăEND SUBăăSUB FPrintCă LPRINT CorrelateBox.Textă LFLUSHăEND SUBăăSUB Equivalentsă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  ConvertForm.Visible = 1ă  SetFocus(Form.Handle)ăEND SUBăăSUB RNGă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  RNGForm.Visible = 1ăEND SUBăăSUB RNGLowEnteră  RNGLower(13)ăEND SUBăăSUB RNGLoweră  IF key = 13 THENă    HighPanel.Enabled = 0ă    LowEdit.Enabled = 0ă    LowEdit.Color = &HBBB000ă    SetFocus(HighEdit.Handle)ă  END IFăEND SUBăăSUB RNGHighEnteră  RNGUpper(13)ăEND SUBăăSUB RNGUpperă  IF key = 13 THENă    LowPanel.Enabled = 0ă    HighEdit.Enabled = 0ă    HighEdit.Color = &HBBB000ă    SetFocus(AnotherRNG.Handle)ă    high = VAL(LCASE$(HighEdit.EditText))ă    low = VAL(LCASE$(LowEdit.EditText))ă    range = high - lowă    IF range < 0 THENă      IF soundoff = 0 THEN PLAYWAV  "honk.wav",1ă      Label1.Caption = "Ouch! Check entries."    ă    ELSE ă      IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă      Label1.Caption = STR$(low + RND(range + 1))ă    END IFă  END IFăEND SUBăăSUB RNGClră  IF soundoff = 0 THEN PLAYWAV (whooh,1)ă  LowEdit.Color = clWhiteă  LowEdit.Enabled = 1ă  LowEdit.EditText = ""ă  HighEdit.Color = clWhiteă  HighEdit.Enabled = 1ă  HighEdit.EditText = ""ă  Label1.Caption = "0"ă  LowPanel.Enabled = 1ă  HighPanel.Enabled = 1ă  SetFocus(LowEdit.Handle)ăEND SUBăăSUB RainSnowă  DEFINT place, setbackă  DEFBYTE I, start, charcount, row, countă  DEFWORD cut, lentextă  IF messageV = 1 THENă    DXScreen.Cursor = 0ă    IF usermessage$ = "" THEN usermessage$ = "Welcome to Calculait! Replace this message with your own by going to Options > Change message. Have fun!"ă    text$ = usermessage$ă    lentext = LEN(text$)ă    DEC yă    IF y < -18*(1+(LEN(usermessage$)\36)) THEN y = 212ă    part = yă    cut = lentextă    DOă      IF lentext > 36 THENă        oldtext$ = text$ă        cut = RINSTR(36,text$," ")ă        text$ = RIGHT$(text$,lentext - cut)ă        lentext = LEN(text$)ă        phrase$ = LEFT$(oldtext$,cut) + SPACE$(65)ă      ELSEă        phrase$ = text$ + SPACE$(65) '36 - lentext)ă        lentext = 1 'this is arbitraryă      END IF             ă      DXScreen.TextOut(1,part,phrase$,clWhite,Form.Color)        ă      part = part + 17      ă    LOOP UNTIL lentext = 1ă    DXScreen.TextOut(1,part,SPACE$(65),clWhite,Form.Color)    ă  ELSEă    DXScreen.FillRect(0,0,248,212,0)ă    DXScreen.Cursor = 1ă    FOR I = 1 TO 100ă      SELECT CASE Snow.Z(I)ă        CASE 0ă          IF CometV = 0 THENă            DXScreen.Circle(Snow.X(I),Snow.Y(I),Snow.X(I)+ 2,Snow.Y(I)+ 2,RND(&HAAAAAA),0)ă            'Snow.Y(I)= 110 - Snow.X(I) + INT(.000001*Snow.X(I)^2) + INT(.0000005*Snow.X(I)^3) + INT(.0000002*Snow.X(I)^4)ă            Snow.Y(I)= 110 - Snow.X(I) + INT(.0000003*Snow.X(I)^2) + INT(.0000003*Snow.X(I)^3) + INT(.0000003*Snow.X(I)^4)ă            Snow.X(I) = Snow.X(I) + 2ă          END IFă        CASE 1ă          IF StarV = 0 THENă            DXScreen.Pset(Snow.X(I),Snow.Y(I),&HFFF000)ă            Snow.Y(I) = Snow.Y(I) + 2ă          END IFă        CASE 2ă          IF StarV = 0 THENă            DXScreen.Pset(Snow.X(I),Snow.Y(I),&HBBBFFF)ă            Snow.Y(I) = Snow.Y(I) + 1ă          END IF               ă        CASE ELSEă          IF StarV = 0 THENă            DXScreen.Pset(Snow.X(I),Snow.Y(I),&HFFFFFF)ă            Snow.Y(I) = Snow.Y(I) + 3ă          END IFă      END SELECTă      IF Snow.Y(I) > 205 THENă        Snow.Y(I) = -1 ă        Snow.X(I) = RND(245)ă      END IFă    NEXTă  END IFăEND SUBă ăSUB Productă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  Timer2.Enabled = 1ă  NoteProductForm.Visible = 1ăEND SUBăăSUB NotesShowă  DEFSHORT yă  DXNotes.FillRect(0,0,84,63,0) ă  INC yă  IF y > 84 THEN y = 1ă  IF y < 11 THEN b$ = RIGHT$("wasaywasay",y)ă  IF y < 8 THEN a$ = RIGHT$(".com.ph",y)    ă  DXNotes.TextOut(y,y+2,a$,clGreen,clBlack)ă  DXNotes.TextOut(y+2,2,b$,clWhite,clBlack)ă  DXNotes.TextOut(1,y+16,"@i-manila",&HDDCE,clBlack)  ăEND SUBăăSUB CloseNotesă  IF soundoff = 0 THEN PLAYWAV (whooh,1)ă  Timer2.Enabled = 0ăEND SUBăăSUB CloseGenerică  IF soundoff = 0 THEN PLAYWAV (whooh,1)ăEND SUBăăSUB TrigFuncă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  Trigform.Visible = 1ăEND SUBăăSUB ChangeModeă  IF soundoff = 0 THEN PLAYWAV (wipe,1)ă  IF ModeForm.Caption = "DEGREES" THENă    CMode = 1ă    CModeN = 1ă    ModeForm.Caption = "RADIANS"ă    DegRadButt.Caption = "R"ă    DegRadButt.Hint = "Now in Radians. Click to compute in Degrees.""ă  ELSEă    CMode = 57.2957795130824ă    CModeN = 0.0174532925199433ă    ModeForm.Caption = "DEGREES"ă    DegRadButt.Caption = "D"ă    DegRadButt.Hint = "Now in Degrees. Click to compute in Radians.""ă  END IF  ăEND SUBăăSUB Choicesă  IF soundoff = 0 THENă    soundoff = 1ă    Sownd.Caption = "&Sound on"ă  ELSEă    soundoff = 0ă    Sownd.Caption = "&Sound off"ă  END IFăEND SUBăăSUB Iniă  DIM I AS BYTEă  FOR I = 1 TO 100ă    Snow.X(I) = RND(245)ă    Snow.Y(I) = RND(210)ă    Snow.Z(I) = RND(4)ă  NEXTă  RANDOMIZE TIMERă  Application.HintPause = 250ă  Application.HintHidePause = 10000ă  HistoryView.AddItemsă  Screen.Cursors(1) = LoadCursorFromFile("rocket.cur")    ă  IF FILEEXISTS("calculait.ini") <> 0 THENă    DIM File as QFileStreamă    File.Open("calculait.ini",fmOpenReadWrite)ă    inifile = File.ReadStr(File.Size)ă    colpos = INSTR(inifile,CHR$(10)) - 1ă    messpos = INSTR(inifile,CHR$(13))ă    messend = RINSTR(inifile,CHR$(10))- 1ă    DOă      find$ = MID$(inifile,messend,1)ă      IF find$ = " " THEN DEC messend ELSE EXIT DOă    LOOPă    City$ = LEFT$(inifile,3)ă    HistoryView.Visible = VAL(MID$(inifile,4,1))  ă    GMTDiff$ = MID$(inifile,5,3)ă    soundoff = VAL(MID$(inifile,8,1))ă    MessageV = VAL(MID$(inifile,9,1))ă    CometV = VAL(MID$(inifile,10,1))ă    StarV = VAL(MID$(inifile,11,1))ă    ScreenV = VAL(MID$(inifile,12,1))ă    Military = VAL(MID$(inifile,13,1))ă    clickeddate = VAL(MID$(inifile,14,1))ă    formdate = VAL(MID$(inifile,15,1))ă    Form.Color = VAL(MID$(inifile,16,colpos))ă    usermessage$ = MID$(inifile,messpos,messend-messpos)ă    ExpEdit.Text = RTRIM$(RIGHT$(inifile,LEN(inifile)-RINSTR(inifile,CHR$(13))))ă    GMTDiff = VAL(GMTDiff$)ă    IF HistoryView.Visible = 1 THEN    ă      HistoryM.Caption = "&History tape off"ă      PanelExtra.Visible = 0ă      DXScreen.Visible = 0ă      DXTimer.Enabled = 0ă    ELSEă      HistoryM.Caption = "&History tape on"ă    END IF  ă    IF soundoff = 0 THENă      Sownd.Caption = "&Sound off"ă     PLAYWAV (lionroar,1)ă    ELSEă      Sownd.Caption = "&Sound on"ă    END IFă    IF ScreenV = 1 THENă      ScreenOnOff.Caption = "&Screen off"ă      DXTimer.Enabled = 1ă      DXScreen.Visible = 1ă      PanelExtra.Visible = 0ă      HistoryView.Visible = 0ă    ELSEă      ScreenOnOff.Caption = "&Screen on"ă      DXScreen.Visible = 0ă      DXTimer.Enabled = 0ă    END IFă    IF CometV = 0 THENă      CometM.Caption = "&Comet trail off"ă    ELSEă      CometM.Caption = "&Comet trail on"ă    END IFă    IF StarV = 0 THENă      StarfieldM.Caption = "S&tarfield off"ă    ELSEă      StarfieldM.Caption = "S&tarfield on"ă    END IFă    IF MessageV = 1 THENă      MessageOnOff.Caption = "&Message off"ă      DXScreen.Visible = 1ă      DXTimer.Enabled = 1ă      PanelExtra.Visible = 0ă      HistoryView.Visible = 0ă    ELSEă      MessageOnOff.Caption = "&Message on"ă    END IFă    IF formdate = 0 THENă      DateUS.Caption = "> &mm-dd-yyyy"ă      DateUK.Caption = "&dd-mm-yyyy"ă      DateInt.Caption = "&yyyy-mm-dd"ă    ELSEIF formdate = 1 THENă      DateUS.Caption = "&mm-dd-yyyy"ă      DateUK.Caption = "> &dd-mm-yyyy"ă      DateInt.Caption = "&yyyy-mm-dd"ă    ELSEIF formdate = 2 THENă      DateUS.Caption = "&mm-dd-yyyy"ă      DateUK.Caption = "&dd-mm-yyyy"ă      DateInt.Caption = "> &yyyy-mm-dd"ă    END IFă    IF clickeddate = 1 THENă      clickeddate = 0ă      WorldTimeDateă      ClickDateă    END IFă    File.Close ă  ELSEă    City$ = ""ă    HistoryView.Visible = 0  ă    GMTDiff$ = ""ă    soundoff = 0ă    MessageV = 0ă    CometV = 1ă    StarV = 1ă    ScreenV = 0ă    Form.Color = 0ă    usermessage$ = ""       ă    GMTDiff = 0ă    HistoryM.Caption = "&History tape on"ă    Sownd.Caption = "&Sound on"ă    StarfieldM.Caption = "S&tarfield on"ă    CometM.Caption = "&Comet trail on"ă    MessageOnOff.Caption = "&Message on"ă    ScreenOnOff.Caption = "&Screen on"ă    Sownd.Caption = "&Sound off"ă    PLAYWAV (lionroar,1)ă    DXScreen.Visible = 0ă    DXTimer.Enabled = 0ă  END IFă  CMode = 57.2957795130824ă  CModeN = 0.0174532925199433 ăEND SUBăăSUB ExitSaveă  DIM File AS QFileStreamă  GMTDiff$ = STR$(GMTDiff)ă  IF LEN(GMTDiff$) = 1 THENă    GMTDiff$ = "  " + GMTDiff$ă  ELSEIF LEN(GMTDiff$) = 2 THENă    GMTDiff$ = " " + GMTDiff$ă  END IFă  File.Open("calculait.ini",fmCreate)ă  inifile = City$ + STR$(HistoryView.Visible) + GMTDiff$ + STR$(soundoff)_ă  + STR$(MessageV) + STR$(CometV) + STR$(StarV) + STR$(ScreenV)_ă  + STR$(Military) + STR$(clickeddate) + STR$(formdate) + STR$(Form.Color)_ă  + CHR$(10) + CHR$(13) + usermessage$ + CHR$(10) + CHR$(13) + ExpEdit.Textă  File.WriteStr(inifile,LEN(inifile))ă  File.Closeă  Application.TerminateăEND SUBăăSUB Colorsă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  ColorForm.Visible = 1ăEND SUBăăSUB ChangeWhiteă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = &HFFFFFFăEND SUBăăSUB ChangeBlackă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = 0ăEND SUBăăSUB ChangeBlueă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = clBlueăEND SUBăăSUB ChangePurpleă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = &HFF00FFăEND SUBăăSUB ChangeBurgundyă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = &H00EABăEND SUBăăSUB ChangeFleshă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = &HAAAFFFăEND SUBăăSUB ChangeGreenă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = &HABC111ăEND SUBăăSUB ChangeLavenderă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = &HCEAAAAăEND SUBăăSUB ChangeChromeă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = &H00EFFFăEND SUBăăSUB ChangePowderă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = 226081ăEND SUBăăSUB ChangeEtată  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = &H0BCDEFăEND SUBăăSUB ChangeAvocadoă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = &HFDCBAăEND SUBăăSUB ChangeCobaltă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  Form.Color = &HBBA00BăEND SUBăăSUB ColorChangeBută  IF soundoff = 0 THEN PLAYWAV (whooh,1)ă  ColorForm.Visible = 0ăEND SUBăăSUB Screenă  IF ScreenV = 0 THENă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    DXTimer.Enabled = 1ă    ScreenV = 1ă    CometV = 0ă    StarV = 0 ă    MessageV = 0ă    DXScreen.Visible = 1ă    PanelExtra.Visible = 0    ă    HistoryView.Visible = 0ă    HistoryM.Caption = "&History tape on"    ă    MessageOnOff.Caption = "&Message on"     ă    ScreenOnOff.Caption = "&Screen off"ă    CometM.Caption = "&Comet trail off"ă    StarfieldM.Caption = "S&tarfield off"ă  ELSEIF ScreenV = 1 THENă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    DXTimer.Enabled = 0  ă    CometV = 1ă    StarV = 1ă    ScreenV = 0ă    MessageV = 0ă    DXScreen.Visible = 0ă    PanelExtra.Visible = 1    ă    HistoryView.Visible = 0ă    HistoryM.Caption = "&History tape on"    ă    MessageOnOff.Caption = "&Message on"    ă    ScreenOnOff.Caption = "&Screen on"ă    CometM.Caption = "&Comet trail on"ă    StarfieldM.Caption = "S&tarfield on"ă  END IFăEND SUBăăSUB Cometă  IF CometV = 0 THENă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    CometV = 1ă    CometM.Caption = "&Comet trail on"ă  ELSEIF CometV = 1 THENă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    CometV = 0ă    CometM.Caption = "&Comet trail off"ă  END IFăEND SUBăăSUB Starfieldă  IF StarV = 0 THENă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    StarV = 1ă    StarfieldM.Caption = "S&tarfield on"ă  ELSEIF StarV = 1 THENă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    StarV = 0ă    StarfieldM.Caption = "S&tarfield off"ă  END IF  ăEND SUBăăSUB Historyă  IF HistoryView.Visible = 0 THENă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    HistoryView.Visible = 1ă    PanelExtra.Visible = 0ă    DXScreen.Visible = 0ă    DXTimer.Enabled = 0ă    StarV = 0ă    CometV = 0      ă    MessageV = 0ă    ScreenV = 0ă    HistoryM.Caption = "&History tape off"     ă    ScreenOnOff.Caption = "&Screen on"    ă    MessageOnOff.Caption = "&Message on"        ă  ELSEIF HistoryView.Visible = 1 THENă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    HistoryView.Visible = 0ă    PanelExtra.Visible = 1ă    HistoryM.Caption = "&History tape on"ă  END IF ăEND SUBăăSUB Messageă  IF MessageV = 0 THENă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    DXTimer.Enabled = 1ă    DXScreen.Visible = 1ă    DXScreen.FillRect(0,0,248,212,Form.Color)ă    MessageV = 1    ă    PanelExtra.Visible = 0ă    HistoryView.Visible = 0    ă    ScreenV = 0ă    HistoryM.Caption = "&History tape on"        ă    ScreenOnOff.Caption = "&Screen on"    ă    MessageOnOff.Caption = "&Message off"ă  ELSEIF MessageV = 1 THENă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    DXTimer.Enabled = 0ă    DXScreen.Visible = 0ă    MessageV = 0ă    PanelExtra.Visible = 1ă    HistoryView.Visible = 0ă    ScreenV = 0ă    ScreenOnOff.Caption = "&Screen on"     ă    MessageOnOff.Caption = "&Message on"ă    HistoryM.Caption = "&History tape on"    ă  END IF ăEND SUBăăSUB MessageChangeă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  MessForm.Visible = 1ăEND SUBăăSUB preMessageEdită  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  MessageEdit(13)ăEND SUBăăSUB MessageEdită  IF key = 13 THENă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    usermessage$ = MessEdit.EditTextă    DXScreen.FillRect(0,0,248,212,Form.Color)ă    MessForm.Visible = 0ă  END IFăEND SUBăăSUB NewDă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  NewDForm.Visible = 1ăEND SUBăăSUB preNew_Dateă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  New_Date(13)ăEND SUBăăSUB New_Date(key AS BYTE)ă  IF key <> 13 THEN EXIT SUBă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  byear = VAL(REPLACESUBSTR$(Year.Text,",",""))ă  GetMonth(Month.Text)ă  bmonth = monthcheckedă  bday = VAL(Day.Text)ă  dayshence = VAL(REPLACESUBSTR$(DayHence.Text,",",""))ă  daysthence = VAL(REPLACESUBSTR$(DayThence.Text,",",""))ă  IF daysthence = 0 THENă    eday = bdayă    eyear = byeară    emonth = bmonth                       ă    SELECT CASE emonthă      CASE 1,3,5,7,8,10,12ă        monthdays = 31ă      CASE 4,6,9,11ă        monthdays = 30ă      CASE 2ă        IF eyear MOD 4 = 0 THENă          leapday = 1ă          IF eyear MOD 100 = 0 AND eyear MOD 400 <> 0 THEN leapday = 0ă        ELSE ă          leapday = 0ă        END IF  ă        monthdays = 28 + leapdayă    END SELECTă    totdays = eday + dayshenceă    IF monthdays >= totdays THENă      fday = totdaysă    ELSE    ă      neweday = monthdays   ă      DOă        INC emonthă        IF emonth = 13 THENă          emonth = 1ă          INC eyeară        END IF  ă        SELECT CASE emonthă          CASE 1,3,5,7,8,10,12ă            monthdays = 31ă          CASE 4,6,9,11ă            monthdays = 30ă          CASE 2ă            IF eyear MOD 4 = 0 THENă              leapday = 1ă              IF eyear MOD 100 = 0 AND eyear MOD 400 <> 0 THEN leapday = 0ă            ELSE ă              leapday = 0ă            END IF  ă            monthdays = 28 + leapdayă        END SELECTă        neweday = neweday + monthdaysă      LOOP UNTIL neweday > totdaysă      DEC neweday,monthdaysă      fday = totdays - neweday ă    END IF  ă    fmonth = emonthă    fyear = eyear ă  ELSEă    pday = bdayă    pyear = byeară    pmonth = bmonth                       ă    IF daysthence < pday THENă      fday = pday - daysthenceă    ELSEă      monthdays = 0ă      newpday = pdayă      DOă        DEC pmonthă        IF pmonth = 0 THENă          pmonth = 12ă          DEC pyeară        END IF  ă        SELECT CASE pmonthă          CASE 1,3,5,7,8,10,12ă            monthdays = 31ă          CASE 4,6,9,11ă            monthdays = 30ă          CASE 2ă            IF pyear MOD 4 = 0 THENă              leapday = 1ă              IF pyear MOD 100 = 0 AND pyear MOD 400 <> 0 THEN leapday = 0ă            ELSE ă              leapday = 0ă            END IF                        ă            monthdays = 28 + leapdayă        END SELECTă        newpday = newpday + monthdaysă      LOOP UNTIL newpday > daysthenceă      fday = newpday - daysthenceă    END IFă    fmonth = pmonthă    fyear = pyeară  END IFă  IF fday = 0 THENă    SELECT CASE fmonthă      CASE 5,7,8,10,12ă        fday = 30ă        DEC fmonthă      CASE 1ă        fday = 31ă        fmonth = 12ă      CASE 2,4,6,9,11ă        fday = 31ă        DEC fmonthă      CASE 3ă        fmonth = 2ă        fday = 28ă        IF fyear MOD 4 = 0 THENă          fday = 29ă          IF fyear MOD 100 = 0 AND fyear MOD 400 <> 0 THEN fday = 28ă        END IFă    END SELECTă  END IFă  SELECT CASE fmonthă    CASE 1ă      month$ = "January"ă    CASE 2ă      month$ = "February"ă    CASE 3ă      month$ = "March"ă    CASE 4ă      month$ = "April"ă    CASE 5ă      month$ = "May"ă    CASE 6ă      month$ = "June"ă    CASE 7ă      month$ = "July"ă    CASE 8ă      month$ = "August"ă    CASE 9ă      month$ = "September"ă    CASE 10ă      month$ = "October"ă    CASE 11ă      month$ = "November"ă    CASE 12ă      month$ = "December"ă  END SELECT                                      ă  IF fyear = 0 THENă    fyear = 1ă    DatePanel.Caption = STR$(fyear) + " BC"ă  ELSEIF fyear < 0 THENă    fyear = ABS(fyear) + 1ă    DatePanel.Caption = STR$(fyear) + " BC"ă  ELSEă    IF month$ = "December" AND fday = 31 THENă      IF daysthence = 0 AND dayshence <> 0 THEN DEC fyeară    END IF                                       ă    DatePanel.Caption = month$ + " " + STR$(fday) + ", " + STR$(fyear)ă    circa = 1ă    DaysDifference(13)ă  END IF  ăEND SUBăăSUB NewDEndă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ăEND SUBăăSUB DaysDă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  DaysDForm.Visible = 1ăEND SUBăăSUB ClickDateăDEFBYTE firstsep, secondsepă  IF soundoff = 0 THEN PLAYWAV (handbell,1)ă  IF clickeddate = 1 THENă    clickeddate = 0ă    WorldTimeDateă  ELSEă    clickeddate = 1ă    circa = 1ă    firstsep = INSTR(BlankLabel2.Caption,"-")ă    secondsep = RINSTR(BlankLabel2.Caption,"-")ă    IF formdate = 0 THEN  ă      fmonth = VAL(LEFT$(BlankLabel2.Caption,firstsep-1))ă      fday = VAL(MID$(BlankLabel2.Caption,firstsep+1,(secondsep-1)-firstsep))ă      fyear = VAL(RIGHT$(BlankLabel2.Caption,4))ă    ELSEIF formdate = 1 THENă      fday = VAL(LEFT$(BlankLabel2.Caption,firstsep-1))ă      fmonth = VAL(MID$(BlankLabel2.Caption,firstsep+1,(secondsep-1)-firstsep))ă      fyear = VAL(RIGHT$(BlankLabel2.Caption,4))ă    ELSEIF formdate = 2 THENă      fyear = VAL(LEFT$(BlankLabel2.Caption,firstsep-1))ă      fmonth= VAL(MID$(BlankLabel2.Caption,firstsep+1,(secondsep-1)-firstsep))ă      fday = VAL(RIGHT$(BlankLabel2.Caption,2))ă    END IFă    DaysDifference(13)ă    BlankLabel2.Caption = wday$ă  END IFăEND SUBăăSUB preDaysDifferenceă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  DaysDifference(13)ăEND SUBăăSUB DaysDifference(key AS BYTE)ă  IF key <> 13 THEN EXIT SUBă  IF circa = 0 THENă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    GetMonth(Month2.text)ă    monthnow = monthcheckedă    daynow = VAL(Day2.text)ă    yearnow = VAL(Year2.text)ă    GetMonth(Month1.text)ă    monththen = monthcheckedă    daythen = VAL(Day1.text)ă    yearthen = VAL(Year1.text)ă  ELSEIF circa = 1 THENă    monthnow = fmonthă    yearnow = fyeară    daynow = fdayă    monththen = 1ă    yearthen = 1900 '1753ă    daythen = 1  ă  END IFă  IF yearnow < yearthen THENă    SWAP(yearnow,yearthen)ă    SWAP(monthnow,monththen)ă    SWAP(daynow,daythen)ă  END IFă  AOyears = yearnow - yearthenă  betyears = AOyears - 1ă  IF AOyears = 0 THENă    IF monthnow = monththen THENă      diffdays = daynow - daythenă    ELSEă      IF yearthen MOD 4 = 0 THENă        leapthen = 1ă        IF yearthen MOD 100 = 0 AND yearthen MOD 400 <> 0 THEN leapthen = 0ă      ELSE ă        leapthen = 0ă      END IFă      IF yearnow MOD 4 = 0 THENă        leapnow = 1ă        IF yearnow MOD 100 = 0 AND yearnow MOD 400 <> 0 THEN leapnow = 0ă      ELSE ă        leapnow = 0ă      END IF                ă      SELECT CASE monththenă        CASE 1ă          Adays = daythenă        CASE 2ă          Adays = 31 + daythenă        CASE 3ă          Adays = 59 + daythen + leapthenă        CASE 4ă          Adays = 90 + daythen + leapthenă        CASE 5ă          Adays = 120 + daythen + leapthenă        CASE 6ă          Adays = 151 + daythen + leapthenă        CASE 7ă          Adays = 181 + daythen + leapthenă        CASE 8ă          Adays = 212 + daythen + leapthenă        CASE 9ă          Adays = 243 + daythen + leapthenă        CASE 10ă          Adays = 273 + daythen + leapthenă        CASE 11ă          Adays = 304 + daythen + leapthenă        CASE 12ă          Adays = 334 + daythen + leapthen    ă      END SELECTă      diffdays = GetOdays - Adays  ă    END IFă  ELSEIF AOyears = 1 THENă    diffdays = GetAOdaysă  ELSEă    betleaps = 0 'betyears \ 4ă    trialyear = yearthen + 1ă    DOă      IF trialyear MOD 4 = 0 THENă        INC betleapsă        IF trialyear MOD 100 = 0 AND trialyear MOD 400 <> 0 THEN DEC betleapsă      END IFă      INC trialyeară    LOOP UNTIL trialyear = yearnow  ă    diffdays = (betyears*365) + GetAOdays + betleaps   ă  END IF  ă  IF circa = 1 THENă    circa = 0ă    IF fday = 0 OR fmonth = 0 OR fyear = 0 THENă      todate = 8ă    ELSEă      todate = diffdays MOD 7  ă    END IFă    IF fyear < VAL(RIGHT$(DATE$,4)) THENă      past = 1ă    ELSEIF fyear = VAL(RIGHT$(DATE$,4)) THENă      IF fmonth < VAL(LEFT$(DATE$,2)) THENă        past = 1ă      ELSEIF fmonth = VAL(LEFT$(DATE$,2)) THENă        IF fday < VAL(MID$(DATE$,4,2)) THEN past = 1ă      END IFă    END IFă    SELECT CASE todateă      CASE 0ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a Monday!"ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a Monday!"ă        END IFă        wday$ = "Monday!"ă      CASE 1ă        IF fyear < 1900 THEN ă          wday$ = "Sunday!"ă        ELSEă          wday$ = "Tuesday!"ă        END IF    ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a " + wday$ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a " + wday$ă        END IF ă      CASE 2ă        IF fyear < 1900 THEN ă          wday$ = "Saturday!"ă        ELSEă          wday$ = "Wednesday!"ă        END IF       ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a " + wday$ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a " + wday$ă        END IF  ă      CASE 3ă        IF fyear < 1900 THEN ă          wday$ = "Friday!"ă        ELSEă          wday$ = "Thursday!"ă        END IF              ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a " + wday$ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a " + wday$ă        END IF         ă      CASE 4ă        IF fyear < 1900 THEN ă          wday$ = "Thursday!"ă        ELSEă          wday$ = "Friday!"ă        END IF           ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a " + wday$ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a " + wday$ă        END IF  ă      CASE 5ă        IF fyear < 1900 THEN ă          wday$ = "Wednesday!"ă        ELSEă          wday$ = "Saturday!"ă        END IF            ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a " + wday$ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a " + wday$ă        END IF  ă      CASE 6ă        IF fyear < 1900 THEN ă          wday$ = "Tuesday!"ă        ELSEă          wday$ = "Sunday!"ă        END IF              ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a " + wday$ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a " + wday$ă        END IF         ă      CASE ELSEă        weekday$ = "Error. Check date entry."  ă    END SELECTă    IF NewDForm.Visible = 1 THEN WeekDayPanel.Caption = weekday$ă  ELSE        ă    IF ABS(diffdays) = 1 THENă      days$ = " day"ă    ELSEă      days$ = " days"ă    END IF    ă    DaysPanel.Caption = FORMAT$("%.0n",diffdays) + days$ă    diffdays = ABS(diffdays)ă    remaindays = diffdays MOD 7ă    IF remaindays = 1 THENă      remaindays$ = " " + STR$(remaindays) + " day)"ă    ELSEIF remaindays > 1 THENă      remaindays$ = " " + STR$(remaindays) + " days)"ă    ELSEIF remaindays = 0 THENă      remaindays$ = ")"ă    ELSEă      diffdays = 0ă      remaindays$ = ")"  ă    END IFă    IF ABS(diffdays\7) = 1 THENă      weeks$ = " week"ă    ELSEă      weeks$ = " weeks"ă    END IF            ă    WeeksPanel.Caption = "(" + STR$(diffdays\7) + weeks$ + remaindays$ă  END IFăEND SUB  ăăFUNCTION GetAOdaysă  IF yearthen MOD 4 = 0 THENă    leapthen = 1ă    IF yearthen MOD 100 = 0 AND yearthen MOD 400 <> 0 THEN leapthen = 0ă   ELSE ă    leapthen = 0ă   END IF  ă  SELECT CASE monththenă    CASE 1ă      Adays = 365 - daythen + leapthenă    CASE 2ă      Adays = 334 - daythen + leapthenă    CASE 3ă      Adays = 306 - daythen        ă    CASE 4ă      Adays = 275 - daythenă    CASE 5ă      Adays = 245 - daythenă    CASE 6ă      Adays = 214 - daythenă    CASE 7ă      Adays = 184 - daythenă    CASE 8ă      Adays = 153 - daythenă    CASE 9ă      Adays = 122 - daythenă    CASE 10ă      Adays = 92 - daythenă    CASE 11ă      Adays = 61 - daythenă    CASE 12ă      Adays = 31 - daythen      ă  END SELECTă  GetAOdays = Adays + GetOdays    ăEND FUNCTIONăăFUNCTION GetOdaysă  IF yearnow MOD 4 = 0 THENă    leapnow = 1ă    IF yearnow MOD 100 = 0 AND yearnow MOD 400 <> 0 THEN leapnow = 0ă  ELSE ă    leapnow = 0ă  END IFă  SELECT CASE monthnowă    CASE 1ă      Odays = daynowă    CASE 2ă      Odays = 31 + daynowă    CASE 3ă      Odays = 59 + daynow + leapnowă    CASE 4ă      Odays = 90 + daynow + leapnowă    CASE 5ă      Odays = 120 + daynow + leapnowă    CASE 6ă      Odays = 151 + daynow + leapnowă    CASE 7ă      Odays = 181 + daynow + leapnowă    CASE 8ă      Odays = 212 + daynow + leapnowă    CASE 9ă      Odays = 243 + daynow + leapnowă    CASE 10ă      Odays = 273 + daynow + leapnowă    CASE 11      ă      Odays = 304 + daynow + leapnowă    CASE 12ă      Odays = 334 + daynow + leapnow      ă  END SELECTă  RESULT = OdaysăEND FUNCTIONăăSUB DaysDEndă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ăEND SUBăăSUB GetMonthă  validmonth = VAL(monthtocheck)ă  IF validmonth > 12 THEN monthtocheck = STR$(validmonth MOD 12)ă  SELECT CASE LCASE$(monthtocheck)ă    CASE "1","01","jan","jan.","january"ă      monthchecked = 1ă    CASE "2","02","feb","feb.","february"ă      monthchecked = 2    ă    CASE "3","03","mar","mar.","march"ă      monthchecked = 3    ă    CASE "4","04","apr","apr.","april"ă      monthchecked = 4    ă    CASE "5","05","may.","may"ă      monthchecked = 5    ă    CASE "6","06","jun","jun.","june"ă      monthchecked = 6    ă    CASE "7","07","jul","jul.","july"ă      monthchecked = 7    ă    CASE "8","08","aug","aug.","august"ă      monthchecked = 8    ă    CASE "9","09","sep","sep.","sept","sept.","september"ă      monthchecked = 9    ă    CASE "10","oct","oct.","october"ă      monthchecked = 10    ă    CASE "11","nov","nov.","november"ă      monthchecked = 11    ă    CASE "12","dec","dec.","december"ă      monthchecked = 12     ă  END SELECTăEND SUB ăăSUB OutFinancială  outform$ = "fin"ă  OutFormatTypeă  OutFin.Caption = "> &Financial"ăEND SUBăăSUB OutScientifică  outform$ = "sci"ă  OutFormatTypeă  OutSci.Caption = "> &Scientific"ăEND SUBăăSUB OutCommaă  outform$ = "com"ă  OutFormatTypeă  OutCom.Caption = "> &Comma separated"ăEND SUBăăSUB OutNoneă  outform$ = "non"ă  OutFormatTypeă  OutNon.Caption = "> &No format"ăEND SUBăăSUB OutFormatTypeă  OutFin.Caption = "&Financial"ă  OutSci.Caption = "&Scientific"ă  OutCom.Caption = "&Comma separated"ă  OutNon.Caption = "&No format"ă  OutNoForm.Caption = "&User-set precision"ă  IF outform$ = "use" THENă    OutNoForm.Caption = "> &User-set precision"ă  ELSEă    OutFormată  END IFăEND SUBăăSUB OutFormată  OutPrecise15.Caption = "15"ă  OutPrecise14.Caption = "14"ă  OutPrecise13.Caption = "13"ă  OutPrecise12.Caption = "12"ă  OutPrecise11.Caption = "11"ă  OutPrecise10.Caption = "10"ă  OutPrecise9.Caption = "9"ă  OutPrecise8.Caption = "8"ă  OutPrecise7.Caption = "7"ă  OutPrecise6.Caption = "6"ă  OutPrecise5.Caption = "5"ă  OutPrecise4.Caption = "4"ă  OutPrecise3.Caption = "3"ă  OutPrecise2.Caption = "2"ă  OutPrecise1.Caption = "1"ăEND SUBăăSUB OutUser(Sender AS QMENUITEM)ă  OutFormată  SELECT CASE Sender.Handleă    CASE OutPrecise1.Handleă      precision$ = "%.1g"ă      OutPrecise1.Caption = "> 1"ă    CASE OutPrecise2.Handleă      precision$ = "%.2g"ă      OutPrecise2.Caption = "> 2"ă    CASE OutPrecise3.Handleă      precision$ = "%.3g"ă      OutPrecise3.Caption = "> 3"ă    CASE OutPrecise4.Handleă      precision$ = "%.4g"ă      OutPrecise4.Caption = "> 4"ă    CASE OutPrecise5.Handleă      precision$ = "%.5g"ă      OutPrecise5.Caption = "> 5"ă    CASE OutPrecise6.Handleă      precision$ = "%.6g"ă      OutPrecise6.Caption = "> 6"ă    CASE OutPrecise7.Handleă      precision$ = "%.7g"ă      OutPrecise7.Caption = "> 7"ă    CASE OutPrecise8.Handleă      precision$ = "%.8g"ă      OutPrecise8.Caption = "> 8"ă    CASE OutPrecise9.Handleă      precision$ = "%.9g"ă      OutPrecise9.Caption = "> 9"ă    CASE OutPrecise10.Handleă      precision$ = "%.10g"ă      OutPrecise10.Caption = "> 10"ă    CASE OutPrecise11.Handleă      precision$ = "%.11g"ă      OutPrecise11.Caption = "> 11"ă    CASE OutPrecise12.Handleă      precision$ = "%.12g"ă      OutPrecise12.Caption = "> 12"ă    CASE OutPrecise13.Handleă      precision$ = "%.13g"ă      OutPrecise13.Caption = "> 13"ă    CASE OutPrecise14.Handleă      precision$ = "%.14g"ă      OutPrecise14.Caption = "> 14"ă    CASE OutPrecise15.Handleă      precision$ = "%.15g"ă      OutPrecise15.Caption = "> 15"ă  END SELECTă  outform$ = "use"ă  OutFormatTypeăEND SUBăăSUB Quadratică  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  QuadForm.Visible = 1 ăEND SUBăăSUB preQuadRootsă  QuadRoots(13)ăEND SUBăăSUB QuadRoots(key AS BYTE)ă  IF key <> 13 THEN EXIT SUBă  a = VAL(Ax.Text)ă  b = VAL(Bx.Text)ă  c = VAL(Cx.Text)ă  d = b^2 - 4*a*că  IF a = 0 THENă    IF soundoff = 0 THEN PLAYWAV (chicken,1)ă    PosPanel.Caption = "Oops, 'a' can't be 0."ă    NegPanel.Caption = "Try again."ă  ELSEIF d < 0 THENă    IF soundoff = 0 THEN PLAYWAV (chicken,1)ă    PosPanel.Caption = "Oops, error."ă    NegPanel.Caption = "Check entries please."ă  ELSEă    IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă    PosPanel.Caption = STR$((-b + SQR(d))/(2*a))ă    NegPanel.Caption = STR$((-b - SQR(d))/(2*a))ă  END IFăEND SUBăăSUB getPosPanelă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  Label1.Caption = PosPanel.Captionă  memvalue = PosPanel.CaptionăEND SUBăăSUB getNegPanelă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  Label1.Caption = NegPanel.Captionă  memvalue = NegPanel.CaptionăEND SUBăăSUB Pythagoreană  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  PythaForm.Visible = 1 ăEND SUBăăSUB preSolvePythaă  SolvePytha(13)ăEND SUBăăSUB SolvePytha(key AS BYTE)ă  IF key <> 13 THEN EXIT SUBă  IF soundoff = 0 THEN PLAYWAV (whooh,1)ă  a = VAL(Ap.Text)ă  b = VAL(Bp.Text)ă  c = VAL(Cp.Text)ă  IF Ap.Text = "" AND (Bp.Text <> "" AND Cp.Text <> "") THENă    a = SQR(c^2 - b^2) ă    PythaPanel1.Caption = "a = " + STR$(a)    ă    PythaPanel2.Caption = "(" + FORMAT$("%.2n",a) + ")"ă  ELSEIF Bp.Text = "" AND (Ap.Text <> "" AND Cp.Text <> "") THENă    b = SQR(c^2 - a^2)ă    PythaPanel1.Caption = "b = " + STR$(b)   ă    PythaPanel2.Caption = "(" + FORMAT$("%.2n",b) + ")"ă  ELSEIF Cp.Text = "" AND (Bp.Text <> "" AND Ap.Text <> "") THENă    c = SQR(a^2 + b^2) ă    PythaPanel1.Caption = "c = " + STR$(c)    ă    PythaPanel2.Caption = "(" + FORMAT$("%.2n",c) + ")"ă  ELSEă    IF soundoff = 0 THEN PLAYWAV (chicken,1)ă    MessageDlg("Please blank the field for unknown variable.", mtError, mbOK, 0)ă    EXIT SUBă  END IF      ăEND SUBăăSUB getPythaPanel1ă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  Label1.Caption = MID$(PythaPanel1.Caption,5,LEN(PythaPanel1.Caption)-4)ă  memvalue = Label1.CaptionăEND SUBăăSUB getPythaPanel2ă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  Label1.Caption = MID$(PythaPanel2.Caption,2,LEN(PythaPanel2.Caption)-2)ă  memvalue = Label1.CaptionăEND SUBăăSUB Cubică  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  CubicForm.Visible = 1ăEND SUBăăSUB preCubicRootsă  CubicRoots(13)ăEND SUBăăSUB CubicRoots(key AS BYTE)ă  IF key <> 13 THEN EXIT SUBă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  a = VAL(Ac.Text)ă  b = VAL(Bc.Text)ă  c = VAL(Cc.Text)ă  Q = (a^2 - 3*b)/9ă  R = (2*a^3 -9*a*b + 27*c)/54ă  IF Q = 0 OR b = 0 THENă    IF soundoff = 0 THEN PLAYWAV (chicken,1)ă    MessageDlg("At least one of your entries is invalid.", mtError, mbOK, 0)ă    EXIT SUBă  END IFă  Qcubed = Q^3ă  d = Qcubed - R^2ă  IF d >= 0 THENă    theta = acos(R/SQR(Qcubed))ă    sqrtQ = SQR(Q)ă    CubicPanel3.Caption = STR$(-2*sqrtQ*COS(theta/3) - a/3)ă    CubicPanel4.Caption = STR$(-2*sqrtQ*COS((theta + 2*3.14159265358979)/3) - a/3)ă    CubicPanel5.Caption = STR$(-2*sqrtQ*COS((theta + 4*3.14159265358979)/3) - a/3)ă  ELSEă    'e = SQR(-d) + (ABS(R))^(1/3)ă    'x1 = (e + Q/e) - a/3ă    'IF R > 0 THEN x1 = -x1ă    x1 = -1ă    DOă      old = x1ă      new = -(old^3 + a*old^2 + c)/bă      x1 = (old + new)/2ă    LOOP UNTIL ABS(new - x1) < .000001ă    CubicPanel3.Caption = STR$(x1)ă    CubicPanel4.Caption = "The other 2 roots"ă    CubicPanel5.Caption = "are complex numbers."ă  END IF   ăEND SUBăăSUB CubicRoot1ă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  Label1.Caption = CubicPanel3.Captionă  memvalue = CubicPanel3.CaptionăEND SUBăăSUB CubicRoot2ă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  Label1.Caption = CubicPanel4.Captionă  memvalue = CubicPanel4.CaptionăEND SUBăăSUB CubicRoot3ă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  Label1.Caption = CubicPanel5.Captionă  memvalue = CubicPanel5.CaptionăEND SUBăăSUB Coordinateă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  CoordForm.Visible = 1ă  SetFocus(xRadius.Handle)ăEND SUBăăSUB PRRadioă  xRadiusL = LEN(CoordPanel1.Caption)ă  yRadiusL = LEN(CoordPanel2.Caption)ă  IF RectPolarB.Checked = 1 THENă    xPanel.Caption = "x"ă    yPanel.Caption = "y"ă    xRadius.Text = RIGHT$(CoordPanel1.Caption,(xRadiusL - 4))    ă    yAngle.Text = RIGHT$(CoordPanel2.Caption,(yRadiusL - 4))ă  ELSEIF PolarRectB.Checked = 1 THENă    xPanel.Caption = "r"ă    yPanel.Caption = "Ř"ă    xRadius.Text = RIGHT$(CoordPanel1.Caption,(xRadiusL - 4)) ă    yAngle.Text = RIGHT$(CoordPanel2.Caption,(yRadiusL - 4))ă    yAngle.Text = LEFT$(yAngle.Text,INSTR(yAngle.Text," ")-1)   ă  END IFă  RecPolar(13)ăEND SUBăăSUB preRecPolară  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  RecPolar(13)ăEND SUBăăSUB RecPolar(key AS BYTE)ă  IF key <> 13 THEN EXIT SUBă  IF soundoff = 0 THEN PLAYWAV (whooh,1)ă  x = VAL(xRadius.Text)ă  y = VAL(yAngle.Text)ă  IF x <> 0 THEN angle = ATAN(ABS(y/x))ă  IF RectPolarB.Checked = 1 THENă    IF x = 0 AND y = 0 THENă      Ř = 0ă    ELSEIF x > 0 AND y > 0 THENă      Ř = angleă    ELSEIF x = 0 AND y > 0 THENă      Ř = 1.5707963267949ă    ELSEIF x < 0 AND y > 0 THEN ă      Ř = 3.14159265358979 - angleă    ELSEIF x < 0 AND y = 0 THENă      Ř = 3.14159265358979ă    ELSEIF x < 0 AND y < 0 THEN ă      Ř = 3.14159265358979 + angleă    ELSEIF x = 0 AND y < 0 THENă      Ř = 4.71238898038469ă    ELSEIF x > 0 AND y < 0 THEN ă      Ř = 6.28318530717958 - angleă    ELSEIF x > 0 AND y = 0 THENă      Ř = 0ă    END IFă    r = SQR(y^2 + x^2)     ă    CoordPanel1.Caption = "r = " + FORMAT$("%.4f",r)ă    CoordPanel2.Caption = "Ř = " + FORMAT$("%.4f",Ř)+ " or " + FORMAT$("%.1f",57.2957795130824*Ř) + "°"ă  ELSEIF PolarRectB.Checked = 1 THENă    IF y = 1.5707963267949 THENă      xcoord = 0ă      ycoord = 1ă    ELSEIF y = 0 THENă      xcoord = 1ă      ycoord = 0ă    ELSEă      xcoord = ABS(x)*COS(y)ă      ycoord = ABS(x)*SIN(y)ă    END IFă    CoordPanel1.Caption = "x = " + STR$(xcoord)ă    CoordPanel2.Caption = "y = " + STR$(ycoord)ă  END IF ăEND SUBăăSUB ExpSolveră  IF soundoff = 0 THEN PLAYWAV (whooh,1)ă  FunctionsForm.Visible = 1ă  ExpSolverForm.Visible = 1ă  VariablesForm.Visible = 1ă  SetFocus(ExpEdit.Handle)ă  Math(1) = "sin"ă  Math(2) = "cos"ă  Math(3) = "tan"ă  Math(4) = "cot"ă  Math(5) = "sec"ă  Math(6) = "csc"ă  Math(7) = "sqrt"ă  Math(8) = "log"ă  Math(9) = "ln"ă  Math(10) = "asin"ă  Math(11) = "acos"ă  Math(12) = "atan"ă  Math(13) = "acot"ă  Math(14) = "asec"ă  Math(15) = "acsc"ă  Math(16) = "sinh"ă  Math(17) = "cosh"ă  Math(18) = "tanh"ă  Math(19) = "coth"ă  Math(20) = "sech"ă  Math(21) = "csch"ă  Math(22) = "asinh"ă  Math(23) = "acosh"ă  Math(24) = "atanh"ă  Math(25) = "acoth"ă  Math(26) = "asech"ă  Math(27) = "acsch"ă  Math(28) = "inv"ă  Math(29) = "exp"ă  Math(30) = "abs"ă  Math(31) = "int"ă  Math(32) = "frac"ă  Math(33) = "floor"ă  Math(34) = "ceil"ă  Math(35) = "cbrt"ă  Math(36) = "sqr"ă  Math(37) = "fact"ă  Math(38) = "rand"ă  Math(39) = "mod"ăEND SUBăăSUB ClrExpEdită  IF soundoff = 0 THEN PLAYWAV (wipe,1)ă  ExpEdit.Text = ""ă  SetFocus(ExpEdit.Handle)ăEND SUBăăSUB ClrLastExpEdită  IF soundoff = 0 THEN PLAYWAV (wipe,1)ă  ExpEdit.Text = oldexpressionă  ExpEdit.SelStart = LEN(ExpEdit.Text)ă  SetFocus(ExpEdit.Handle)ăEND SUBăăSUB VariablesEntered(key AS BYTE)ă  IF key = 13 THEN ă    preCheckSyntaxă  ELSEă    IF soundoff = 0 THEN PLAYWAV (typing,1)ă  END IFăEND SUBăăSUB preCheckSyntaxă  CheckSyntax(13)ă  SetFocus(ExpEdit.Handle)ăEND SUBăăSUB CheckSyntax(key AS BYTE)ă  DEFSHORT posops, startmathă  IF soundoff = 0 THEN PLAYWAV (typing,1)ă      'formula$ = "2^(1 - (2^2)/2 * (1 + ((2 ^ 2) + 1)) + 1)"ă      'formula$ = "(1 + 2+3+4+5+6+7+8+9+10-55)"ă      'formula$ = "3+(4*(-3+2*34)+2)^2"ă      'formula$ = "-5-4-3-2-1" ă      'formula$ = "(-2)^2 +1"ă      'formula$ = "-(-5)+(-4)-(-3)+(2)-(1) + (.5 + 1)^2"ă      'formula$ = "Sin(.1)^2-3*Ln(Tan(.1*PI))"ă      'formula$ = "Sin(.1)-3*Ln(Tam(.1*PI))"ă      'formula$ = "Ln(Tan(.1*PI))"ă      'formula$ = "2^30 + 2.14e9*2.14e10 + 5e19 + exp(2) * exp(2)- exp(2) ^exp(2)/exp(2) -sec(35)"ă  formula$ = LCASE$(REPLACESUBSTR$(ExpEdit.Text," ",""))ă  formula$ = REPLACESUBSTR$(formula$,"pi","3.14159265358979")ă  formula$ = REPLACESUBSTR$(formula$,"--","+")ă  FOR x = 1 TO 2ă    IF JVarEdit.Text <> "" THEN formula$ = REPLACESUBSTR$(formula$,"j",JVarEdit.Text)ă    IF KVarEdit.Text <> "" THEN formula$ = REPLACESUBSTR$(formula$,"k",KVarEdit.Text)ă    IF UVarEdit.Text <> "" THEN formula$ = REPLACESUBSTR$(formula$,"u",UVarEdit.Text)ă    IF WVarEdit.Text <> "" THEN formula$ = REPLACESUBSTR$(formula$,"w",WVarEdit.Text)ă    IF YVarEdit.Text <> "" THEN formula$ = REPLACESUBSTR$(formula$,"y",YVarEdit.Text)ă    IF ZVarEdit.Text <> "" THEN formula$ = REPLACESUBSTR$(formula$,"z",ZVarEdit.Text)ă  NEXTă  oldexpression = ExpEdit.Textă  IF key = 27 OR (key = 13 AND formula$ = "") THENă    IF soundoff = 0 THEN PLAYWAV (wipe,1)ă    ExpEdit.Text = ""ă  ELSEIF (key = 13 OR key = 61) AND ExpEdit.Text <> "" THENă    changeEă    math$ = ""ă    startmath = 0ă    errmath$ = ""ă    mathchar$ = ""ă    IF TALLY(formula$,")(") <> 0 THENă      IF soundoff = 0 THEN PLAYWAV (chicken,1)ă      MessageDlg("Invalid -> ')('. Please correct syntax.", mtError, mbOK, 0)ă      EXIT SUBă    END IF    ă    IF TALLY(formula$,"(") <> TALLY(formula$,")") THENă      IF soundoff = 0 THEN PLAYWAV (chicken,1)ă      MessageDlg("Missing parenthesis. Please correct syntax.", mtError, mbOK, 0)ă      EXIT SUBă    ELSEă      DO        ă        INC startmathă        oldmathchar$ = mathchar$ă        mathchar$ = MID$(formula$,startmath,1)ă        SELECT CASE mathchar$ă          CASE "e"ă            SELECT CASE oldmathchar$ă              CASE "","^","c","s","-","+","*","/","\"ă                math$ = math$ + mathchar$ă                errmath$ = math$ă            END SELECTă          CASE "a","b","c","d","f","g","h","i","l","m","n","o","p","q","r","s","t","v","x"              ă            math$ = math$ + mathchar$ă            errmath$ = errmath$ + mathchar$ă            SELECT CASE oldmathchar$ă              CASE "0" TO "9"ă                IF soundoff = 0 THEN PLAYWAV (chicken,1)ă                MessageDlg(errmath$ + " is invalid. Please correct syntax.", mtError, mbOK, 0)ă                EXIT SUBă            END SELECT            ă          CASE "j","k","m","u","w","y","z"ă            errmath$ = errmath$ + mathchar$ă            FOR x = 1 TO 6ă              ops$ = MID$("+-*/\^",x,1)ă              posops = RINSTR(errmath$,ops$)ă              IF posops <> 0 THEN EXIT FORă            NEXTă            errmath$ = RIGHT$(errmath$,LEN(errmath$)-posops)ă            IF soundoff = 0 THEN PLAYWAV (chicken,1)ă            MessageDlg(errmath$ + "?" + " Please correct syntax.", mtError, mbOK, 0)ă            EXIT SUBă          CASE ")"ă            afterendpar$ = MID$(formula$,startmath+1,1)ă            SELECT CASE afterendpar$ă              CASE "0" TO "9"ă                IF soundoff = 0 THEN PLAYWAV (chicken,1)ă                MessageDlg(")"+ afterendpar$ + " is invalid." + " Please correct syntax.", mtError, mbOK, 0)ă                EXIT SUBă            END SELECT            ă          CASE "("ă            SELECT CASE oldmathchar$ă              CASE "0" TO "9"ă                IF soundoff = 0 THEN PLAYWAV (chicken,1)ă                MessageDlg(oldmathchar$ + "( is invalid." + " Please correct syntax.", mtError, mbOK, 0)ă                EXIT SUBă            END SELECT               ă            IF math$ <> "" THENă              FOR x = 1 TO 39ă                IF math$ = Math(x) THEN ă                  math$ = ""ă                END IFă              NEXTă              IF math$ <> "" AND math$ <> "pi" THEN      'if there's a match, skip thisă                IF soundoff = 0 THEN PLAYWAV (chicken,1)                ă                MessageDlg(errmath$ + "?" + " Please correct syntax.", mtError, mbOK, 0)ă                EXIT SUBă              END IFă            END IFă          CASE "0" TO "9"ă            errmath$ = errmath$ + mathchar$ă            SELECT CASE oldmathchar$ă              CASE "a" TO "d", "f" TO "z"ă                FOR x = 1 TO 6ă                  ops$ = MID$("+-*/\^",x,1)ă                  posops = RINSTR(errmath$,ops$)ă                  IF posops <> 0 THEN EXIT FORă                NEXTă                errmath$ = RIGHT$(errmath$,LEN(errmath$)-posops)ă                IF soundoff = 0 THEN PLAYWAV (chicken,1)ă                MessageDlg(errmath$ + "?" + " Please correct syntax.", mtError, mbOK, 0)ă                EXIT SUBă            END SELECTă          CASE "+","-","*","/","\""^"ă            IF (math$ <> "" AND math$ <> "pi") AND (INSTR(math$,"(") = 0 OR INSTR(math$,")") = 0) THENă              FOR x = 1 TO 6ă                ops$ = MID$("+-*/\^",x,1)ă                posops = RINSTR(errmath$,ops$)ă                IF posops <> 0 THEN EXIT FORă              NEXTă              math$ = RIGHT$(math$,LEN(math$)-posops)ă              IF soundoff = 0 THEN PLAYWAV (chicken,1)ă              MessageDlg("Missing parenthesis. Please correct syntax.", mtError, mbOK, 0)ă              EXIT SUBă            END IF              ă        END SELECT    ă      LOOP UNTIL startmath = LEN(formula$)ă    END IFă    'formula$ = REPLACESUBSTR$(formula$,"pi","3.14159265358979")    ă    ExpSolverEdită  END IFăEND SUBăăSUB ExpSolverEdită  HistoryView.Enabled = 1ă  HistoryView.AddItems formula$ + " ="ă  FOR i = 1 TO 1000ă    DOă      reformatted = 0ă      formula$ = REPLACESUBSTR$(formula$,"--","+")ă      formulaL = LEN(formula$)ă      par1 = RINSTR(formulaL,formula$,"(")ă      par2 = INSTR(par1,formula$,")")ă      IF par1 = 0 OR par2 = 0 THENă        betweenpars$ = formula$ă      ELSEă        betweenpars$ = MID$(formula$,par1+1,(par2-1)-par1)ă      END IFă      IF INSTR(betweenpars$,"^") <> 0 THENă        pivotoperator$ = "^"ă        operator = INSTR(betweenpars$,"^")      ă      ELSEIF INSTR(betweenpars$,"*") <> 0 THENă        pivotoperator$ = "*"ă        operator = INSTR(betweenpars$,"*")ă      ELSEIF INSTR(betweenpars$,"/") <> 0 THENă        pivotoperator$ = "/"ă        operator = INSTR(betweenpars$,"/")ă      ELSEIF INSTR(betweenpars$,"\") <> 0 THENă        pivotoperator$ = "\"ă        operator = INSTR(betweenpars$,"\")ă      ELSEIF (INSTR(betweenpars$,"+") <> 0 OR INSTR(betweenpars$,"-") <> 0) THEN 'AND INSTR(betweenpars$,"E") = 0 THENă        IF MID$(betweenpars$,1,1) = "-" THEN ă          start = 2ă        ELSEă          start = 1ă        END IFă        IF (TALLY(betweenpars$,"-") = 1 AND TALLY(betweenpars$,"+") = 0) AND MID$(betweenpars$,1,1) = "-" THENă          checkback$ = MID$(formula$,par1-1,1)ă          SELECT CASE checkback$ă            CASE "c","d","g","h","l","n","p","r","s","t","v"ă              Functions(par1,betweenpars$)ă            CASE ELSEă              formula$ = DELETE$(formula$,par1,1)ă              formula$ = DELETE$(formula$,par2-1,1) ă          END SELECTă          IF formula$ = betweenpars$ THENă            IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă            DoPrecisionă            EXIT SUBă          END IFă          reformatted = 1ă        ELSEă          FOR y = start TO LEN(betweenpars$)ă            operator$ = MID$(betweenpars$,y,1)ă            SELECT CASE operator$ă              CASE "+","-"ă                operator = yă                pivotoperator$ = MID$(betweenpars$,operator,1)ă                EXIT FORă            END SELECTă          NEXTă        END IFă      ELSEă        checkback$ = MID$(formula$,par1-1,1)ă        SELECT CASE checkback$ă          CASE "c","d","g","h","l","n","p","r","s","t","v"ă            Functions(par1,betweenpars$)ă          CASE ELSEă            formula$ = DELETE$(formula$,par1,1)ă            formula$ = DELETE$(formula$,par2-1,1) ă        END SELECTă        IF formula$ = betweenpars$ THENă          IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă          DoPrecisionă          EXIT SUBă        END IFă        reformatted = 1ă      END IFă      formula$ = REPLACESUBSTR$(formula$,"--","+")ă    LOOP UNTIL reformatted = 0ă    x = operatoră    DOă      INC xă      IF x >= LEN(betweenpars$) THENă        postoperator = xă        EXIT DOă      END IF  ă      operator$ = MID$(betweenpars$,x,1)ă      SELECT CASE operator$ă        CASE "+","*","/","\","^"ă          postoperator = x - 1ă          EXIT DOă        CASE "-"ă          IF x <> operator + 1 THENă            postoperator = x - 1ă            EXIT DOă          END IFă      END SELECTă    LOOPă    x = operatoră    DOă      DEC xă      IF x <= 1 THENă       preoperator = 1ă       EXIT DOă      END IFă      operator$ = MID$(betweenpars$,x,1)ă      SELECT CASE operator$ă        CASE "+","-","*","/","\","^"ă          preoperator = x + 1ă          EXIT DOă      END SELECTă    LOOPă    preopnumber = VAL(MID$(betweenpars$,preoperator,(operator-1)-(preoperator-1)))ă    postopnumber = VAL(MID$(betweenpars$,operator+1,postoperator-operator))ă    oldstring$ = MID$(formula$,par1+preoperator,postoperator-(preoperator-1))ă    SELECT CASE pivotoperator$ă      CASE "^"ă        IF preopnumber < 0 THENă          IF (postopnumber > 1 AND postopnumber MOD 2 = 0) OR postopnumber = 0 THENă            newstring = preopnumber ^ postopnumberă          ELSEă            SHOWMESSAGE("You're extracting the root of a negative number." + CHR$(13)_ă                      + "Calculait will display the real solution only.")ă            newstring = SGN(preopnumber)*(ABS(preopnumber) ^ postopnumber)ă          END IFă        ELSEă          newstring = preopnumber ^ postopnumberă        END IFă      CASE "*"ă        newstring = preopnumber * postopnumberă      CASE "/","\"ă        IF postopnumber = 0 THENă          IF soundoff = 0 THEN PLAYWAV (chicken,1)ă          MessageDlg("Can't divide by zero. Please correct entry.", mtError, mbOK, 0)ă          EXIT SUBă        END IFă        newstring = preopnumber / postopnumberă      CASE "+"ă        newstring = preopnumber + postopnumberă      CASE "-"ă        newstring = preopnumber - postopnumber             ă    END SELECTă    DoInPrecision(newstring,@newstring$)ă    CheckE(@newstring$) ă    formula$ = REPLACESUBSTR$(formula$,oldstring$,newstring$)ă    'formula$ = REPLACESUBSTR$(formula$,"--","+")ă  NEXTăEND SUBăăSUB Functions(par1 AS INTEGER,mathval$ AS STRING)ă  startmath = par1ă  DO        ă    DEC startmathă    mathchar$ = MID$(formula$,startmath,1)ă    SELECT CASE mathchar$ă      CASE "+","-","*","/","^","\","("ă        EXIT DOă      CASE "a","b","c","d","e","f","g","h","i","l","m","n","o","p","q","r","s","t","v","x"ă        math$ = mathchar$ + math$ă    END SELECT        ă  LOOP UNTIL startmath <= 1ă  FOR i = 1 TO 39ă    IF math$ = Math(i) THENă      math$ = ""ă      oldval$ = Math(i) + "(" + mathval$ + ")"ă      SELECT CASE iă        CASE 1ă          insertval = SIN(VAL(mathval$)*CModeN)ă        CASE 2ă          insertval = COS(VAL(mathval$)*CModeN)ă        CASE 3ă          insertval = TAN(VAL(mathval$)*CModeN)ă        CASE 4ă          insertval = 1/(TAN(VAL(mathval$)*CModeN))ă        CASE 5ă          insertval = 1/(COS(VAL(mathval$)*CModeN))ă        CASE 6ă          insertval = 1/(SIN(VAL(mathval$)*CModeN))ă        CASE 7ă          IF VAL(mathval$) < 0 THEN ă             SHOWMESSAGE("You're extracting the root of a negative number." + CHR$(13)_ă                       + "Calculait will display the real solution only.")ă          END IFă          insertval = SGN(VAL(mathval$))*(ABS(VAL(mathval$))^(1/2))ă          'insertval = SQR(ABS(VAL(mathval$)))ă        CASE 8ă          insertval = LOG(VAL(mathval$))/LOG(10)ă        CASE 9ă          insertval = LOG(VAL(mathval$))ă        CASE 10ă          IF VAL(mathval$) > 1 THENă            outformold$ = outform$  ă            outform$ = "und"ă          ELSEIF VAL(mathval$) = 1 THENă            IF CMode = 1 THENă              insertval = 1.5707963267949ă            ELSEă              insertval = 90ă            END IF           ă          ELSEă            insertval = ATN(VAL(mathval$)/SQR(-VAL(mathval$)*VAL(mathval$) +1))*CModeă          END IF ă        CASE 11ă          IF VAL(mathval$) > 1 THENă            outformold$ = outform$  ă            outform$ = "und"ă          ELSEIF VAL(mathval$) = 0 THENă            IF CMode = 1 THENă              insertval = 1.5707963267949ă            ELSEă              insertval = 90ă            END IFă          ELSEIF VAL(mathval$) = 1 THENă            insertval = 0                                 ă          ELSE        ă            insertval = (-ATN(VAL(mathval$)/SQR(-VAL(mathval$)*VAL(mathval$) +1)) + 1.570796)*CModeă          END IF  ă        CASE 12ă          insertval = ATN(VAL(mathval$))*CModeă        CASE 13ă          insertval = (-ATN(VAL(mathval$)) + 1.570796)*CModeă        CASE 14ă          IF VAL(mathval$) = 0 THENă            outformold$ = outform$  ă            outform$ = "und"ă          ELSE        ă            insertval = (ATN(SQR(VAL(mathval$)*VAL(mathval$) -1)) + (SGN(VAL(mathval$)) -1)*1.570796)*CModeă          END IFă        CASE 15ă          IF VAL(mathval$) = 0 THENă            outformold$ = outform$  ă            outform$ = "und"       ă          ELSEIF VAL(mathval$) = 1 THENă            IF CMode = 1 THENă              insertval = 1.5707963267949ă            ELSEă              insertval = 90ă            END IF ă          ELSE  ă            insertval = (ATN(1/SQR(VAL(mathval$)*VAL(mathval$) -1)) + (SGN(VAL(mathval$)) -1)*1.570796)*CModeă          END IF           ă        CASE 16ă          insertval = (EXP(VAL(mathval$)) - EXP(-VAL(mathval$)))/2ă        CASE 17ă          insertval = (EXP(VAL(mathval$)) + EXP(-VAL(mathval$)))/2ă        CASE 18ă          insertval = -EXP(-VAL(mathval$)) /(EXP(VAL(mathval$)) + EXP(-VAL(mathval$)))*2 + 1ă        CASE 19ă          insertval = EXP(-VAL(mathval$))/(EXP(VAL(mathval$)) - EXP(-VAL(mathval$)))*2 + 1ă        CASE 20ă          insertval = 2/(EXP(VAL(mathval$)) + EXP(-VAL(mathval$)))ă        CASE 21ă          insertval = 2/(EXP(VAL(mathval$)) - EXP(-VAL(mathval$)))ă        CASE 22ă          insertval = LOG(VAL(mathval$) + SQR(VAL(mathval$)*VAL(mathval$) + 1))ă        CASE 23ă          insertval = LOG(VAL(mathval$) + SQR(VAL(mathval$)*VAL(mathval$) - 1))ă        CASE 24ă          insertval = LOG((1 + VAL(mathval$))/(1 - VAL(mathval$)))/2ă        CASE 25ă          insertval = LOG((VAL(mathval$) + 1)/(VAL(mathval$) - 1))/2ă        CASE 26ă          insertval = LOG((SGN(VAL(mathval$))*SQR(-VAL(mathval$)*VAL(mathval$) + 1) + 1)/VAL(mathval$))ă        CASE 27ă          insertval = LOG((SGN(VAL(mathval$))*SQR(VAL(mathval$)*VAL(mathval$) + 1) + 1)/VAL(mathval$))ă        CASE 28ă          IF VAL(mathval$) = 0 THENă            IF soundoff = 0 THEN PLAYWAV (chicken,1)ă            MessageDlg("Can't divide by zero. Please correct entry.", mtError, mbOK, 0)ă          ELSEă            insertval = 1/VAL(mathval$)ă          END IFă        CASE 29ă          insertval = EXP(VAL(mathval$))ă        CASE 30ă          insertval = ABS(VAL(mathval$))ă        CASE 31ă          insertval = INT(VAL(mathval$))ă        CASE 32ă          insertval = FRAC(VAL(mathval$))ă        CASE 33ă          insertval = FLOOR(VAL(mathval$))ă        CASE 34ă          insertval = CEIL(VAL(mathval$))ă        CASE 35ă          IF VAL(mathval$) < 0 THEN ă             SHOWMESSAGE("You're extracting the root of a negative number." + CHR$(13)_ă                       + "Calculait will display the real solution only.")ă          END IFă          insertval = SGN(VAL(mathval$))*(ABS(VAL(mathval$))^(1/3))ă        CASE 36ă          insertval = VAL(mathval$)^2ă        CASE 37ă          insertval = FIX(VAL(mathval$))ă          tempval = insertval-1ă          FOR x = 1 TO tempvală            insertval = insertval*tempvală            tempval = tempval-1ă          NEXTă        CASE 38ă          IF mathval$ = "" THENă            insertval = RNDă          ELSEă            insertval = RND(VAL(mathval$))ă          END IFă        CASE 39ă          comma = INSTR(mathval$,",")ă          IF comma = 0 THENă            IF soundoff = 0 THEN PLAYWAV (chicken,1)ă            MessageDlg("Missing comma. Please correct.", mtError, mbOK, 0)ă          ELSEă            IF MID$(mathval$,comma+1,1) = "" THENă              IF soundoff = 0 THEN PLAYWAV (chicken,1)ă              MessageDlg("Missing second argument. Please correct.", mtError, mbOK, 0)ă            ELSEă              IF VAL(RIGHT$(mathval$,LEN(mathval$)-comma)) = 0 THENă                IF soundoff = 0 THEN PLAYWAV (chicken,1)ă                MessageDlg("Can't divide by zero. Please correct entry.", mtError, mbOK, 0)ă              ELSEă                insertval = VAL(LEFT$(mathval$,comma-1)) MOD VAL(RIGHT$(mathval$,LEN(mathval$)-comma))ă              END IFă            END IFă          END IFă      END SELECTă      DoInPrecision(insertval,@insertval$)ă    END IFă  NEXTă  CheckE(@insertval$)ă  formula$ = REPLACESUBSTR$(formula$,oldval$,insertval$)ăEND SUBăăSUB DoInPrecision(value AS DOUBLE, value$ AS STRING)ă  IF dochecktag = 0 THENă    IF precision$ = "" THENă      value$ = FORMAT$("%g",value)ă    ELSEă      value$ = FORMAT$(precision$,value)    ă    END IFă  ELSEă    dochecktag = 0ă  END IFăEND SUBăăSUB changeEă  DEFBYTE posE, xă  x = 0ă  DOă    INC xă    E$ = MID$(formula$,x,1)ă    IF E$ = "" THENă      EXIT SUBă    ELSEIF E$ = "e" THENă      posE = xă      INC xă      E$ = MID$(formula$,x,1)  ă      SELECT CASE E$ă        CASE "-","0" TO "9"ă          formula$ = DELETE$(formula$,posE,1)ă          formula$ = INSERT$("*10^",formula$,posE)ă        CASE "c","i","x"ă        CASE ELSEă          IF sound = 0 THEN PLAYWAV (chicken,1)ă          SHOWMESSAGE "Syntax error."ă          EXIT SUBă      END SELECTă    END IFă  LOOP                  ăEND SUBăăSUB CheckE(newstring$ AS STRING)ă  DEFBYTE whereE, whereDot, x, move, powerEndă  DEFSHORT poweră  whereE = INSTR(newstring$,"E")ă  x = whereEă  IF whereE = 0 THENă    EXIT SUBă  ELSEă    whereDot = RINSTR(whereE,newstring$,".")ă    IF whereDot < 2 THEN whereDot = 2      'since in scientific formată    DOă      INC xă      IF x >= LEN(newstring$) THENă        powerEnd = xă        EXIT DOă      END IF  ă      powerEnd$ = MID$(newstring$,x,1)ă      SELECT CASE powerEnd$ă        CASE "+","*","/","\",")"ă          powerEnd = x - 1ă          EXIT DOă        CASE "-"ă          IF x <> whereE + 1 THENă            powerEnd = x - 1ă            EXIT DOă          END IFă      END SELECTă    LOOPă    oldbase$ = LEFT$(newstring$,whereE-1)ă    base$ = REPLACESUBSTR$(oldbase$,".","")ă    power$ = MID$(newstring$,whereE+1,powerEnd-whereE)ă    power = VAL(power$)ă    IF power => 14 THEN EXIT SUBă    checkneg$ = LEFT$(power$,1)ă    IF checkneg$ = "-" THENă      move = ABS(power)ă      newbase$ = "." + STRING$(move-(whereDot-1),"0") + base$ă    END IFă    newstring$ = newbase$ă  END IFăEND SUBăăSUB DoPrecisionă  answer = VAL(formula$)ă  IF outform$ = "und" THENă    memvalue = "Sorry. Beyond reckoning."ă    outform$ = outformold$  ă  ELSEIF outform$ = "fin" THENă    memvalue = FORMAT$("%.2n",answer)ă  ELSEIF outform$ = "sci" THENă    memvalue = FORMAT$("%.9e",answer)   ă  ELSEIF outform$ = "com" THEN    ă    memvalue = FORMAT$("%.2n",answer)ă  ELSEIF outform$ = "non" THEN    ă    memvalue = formula$ă  ELSEIF outform$ = "use" THEN   ă    memvalue = FORMAT$(precision$,answer)ă  ELSEIF outform$ = "ima" THENă    memvalue = "i" + FORMAT$("%.2f",answer) ă  ELSEă    memvalue = formula$ă  END IFă  Label1.Caption = memvalueă  HistoryView.AddItems memvalueă  HistoryView.ItemIndex = HistoryView.Itemcount - 1ă  HistoryView.AddItemsăEND SUBăăSUB IntImpă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  EngMetricForm.Visible = 1ăEND SUBăăSUB USDateă  DateUS.Caption = "> &mm-dd-yyyy"ă  DateUK.Caption = "&dd-mm-yyyy"ă  DateInt.Caption = "&yyyy-mm-dd"ă  formdate = 0ă  WorldTimeDateăEND SUBăăSUB UKDateă  DateUS.Caption = "&mm-dd-yyyy"ă  DateUK.Caption = "> &dd-mm-yyyy"ă  DateInt.Caption = "&yyyy-mm-dd"ă  formdate = 1ă  WorldTimeDateăEND SUBăăSUB IntDateă  DateUS.Caption = "&mm-dd-yyyy"ă  DateUK.Caption = "&dd-mm-yyyy"ă  DateInt.Caption = "> &yyyy-mm-dd"ă  formdate = 2ă  WorldTimeDateăEND SUBăăSUB Drakeă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  DrakeForm.Visible = 1ăEND SUBăăSUB preDrakeSolveă  DrakeSolve(13)ăEND SUBăăSUB DrakeSolve(key AS BYTE)ă  IF key <> 13 THEN EXIT SUBă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  DrakePanel2.Caption = FORMAT$("%g",VAL(Rt.Text)*.01*VAL(Fp.Text)*VAL(Ne.Text)*.01*VAL(Fl.Text)*.01*VAL(Fi.Text)*.01*VAL(Fc.Text)*VAL(L.Text))ăEND SUBăăSUB MathButts(Sender AS QCOOLBTN)ăDEFBYTE countEndPar,indexă  oldexpression = ExpEdit.Textă  countEndPar = 0ă  SELECT CASE Sender.Captionă    CASE "Sin"ă      MathText = "sin()"ă    CASE "Cos"ă      MathText = "cos()"ă    CASE "Tan"ă      MathText = "tan()"ă    CASE "Cot"ă      MathText = "cot()"ă    CASE "Sec"ă      MathText = "sec()"ă    CASE "Csc"ă      MathText = "csc()"ă    CASE "ASin"ă      MathText = "asin()"ă    CASE "ACos"ă      MathText = "acos()"ă    CASE "ATan"ă      MathText = "atan()"ă    CASE "ACot"ă      MathText = "acot()"ă    CASE "ASec"ă      MathText = "asec()"ă    CASE "ACsc"ă      MathText = "acsc()"ă    CASE "Sinh"ă      MathText = "sinh()"ă    CASE "Cosh"ă      MathText = "cosh()"ă    CASE "Tanh"ă      MathText = "tanh()"ă    CASE "Coth"ă      MathText = "coth()"ă    CASE "Sech"ă      MathText = "sech()"ă    CASE "Csch"ă      MathText = "csch()"ă    CASE "ASinh"ă      MathText = "asinh()"ă    CASE "ACosh"ă      MathText = "acosh()"ă    CASE "ATanh"ă      MathText = "atanh()"ă    CASE "ACoth"ă      MathText = "acoth()"ă    CASE "ASech"ă      MathText = "asech()"ă    CASE "ACsch"ă      MathText = "acsch()"ă    CASE "Log"ă      MathText = "log()"ă    CASE "Ln"ă      MathText = "ln()"ă    CASE "Int"ă      MathText = "int()"ă    CASE "Frac"ă      MathText = "frac()"ă    CASE "Floor"ă      MathText = "floor()"ă    CASE "Ceil"ă      MathText = "ceil()"ă    CASE "Exp"ă      MathText = "exp()"ă    CASE "Pi"ă      MathText = "pi"ă    CASE "Sqrt"ă      MathText = "sqrt()"ă    CASE "Cbrt"ă      MathText = "cbrt()"ă    CASE "sqr"ă      MathText = "sqr()"ă    CASE "Abs"ă      MathText = "abs()"ă    CASE "Inv"ă      MathText = "inv()"ă    CASE "Fact"ă      MathText = "fact()"ă    CASE "Rand"ă      MathText = "rand()"ă    CASE "Mod"ă      MathText = "mod()"ă    CASE "."ă      MathText = "."ă    CASE "+"ă      MathText = " + "ă    CASE "--"ă      MathText = " - "ă    CASE "x"ă      MathText = " * "ă    CASE "÷"ă      MathText = " / "ă    CASE "^"ă      MathText = " ^ "ă    CASE "0"ă      MathText = "0"ă    CASE "1"ă      MathText = "1"ă    CASE "2"ă      MathText = "2"ă    CASE "3"ă      MathText = "3"ă    CASE "4"ă      MathText = "4"ă    CASE "5"ă      MathText = "5"ă    CASE "6"ă      MathText = "6"ă    CASE "7"ă      MathText = "7"ă    CASE "8"ă      MathText = "8"ă    CASE "9"ă      MathText = "9"ă    CASE "("ă      MathText = "("ă    CASE ")"ă      MathText = ")"ă  END SELECTă  SELECT CASE MathTextă    CASE "0" TO "9","."ă      IF soundoff = 0 THEN PLAYWAV (typing,1)ă    CASE "+","-","*","/","^"ă      IF soundoff = 0 THEN PLAYWAV (laser,1)ă    CASE ELSEă      IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  END SELECTă  ExpEdit.Text = INSERT$(MathText,ExpEdit.Text,ExpEdit.SelStart+1)ă  index = LEN(ExpEdit.Text)ă  IF MathText <> ")" THENă    DOă      find$ = MID$(ExpEdit.Text,index,1)ă      IF find$ = ")" THEN INC countEndPar ă      DEC indexă    LOOP UNTIL find$ <> ")"ă  END IFă  ExpEdit.SelStart = LEN(ExpEdit.Text) - countEndPară  SetFocus(ExpEdit.Handle)ăEND SUB       ăăSUB SendAnsweră  IF soundoff = 0 THEN PLAYWAV (laser,1)ă  ExpEdit.Text = ExpEdit.Text + " " + memvalueă  ExpEdit.SelStart = LEN(ExpEdit.Text)ăEND SUBăăSUB CloseSolveră  FunctionsForm.Closeă  VariablesForm.Closeă  CloseGenericăEND SUBăăSUB SendMeă  IF soundoff = 0 THEN PLAYWAV(camera,1)ă  dummy = SHELL ("start http://pages.zdnet.com/wasaywasay/wasaywasay", SW_HIDE)ă  IF dummy = 0 THENă    dummy = SHELL ("start http://pages.zdnet.com/wasaywasay/wasaywasay", SW_HIDE)ă    IF dummy = 0 THENă      SHOWMESSAGE "Can't find your Start program. \nPlease go to http://pages.zdnet.com/wasaywasay/wasaywasay manually." ă    END IFă  END IFăEND SUBăăSUB EMailMeă  IF soundoff = 0 THEN PLAYWAV (camera,1)ă  dummy = SHELL("c:\windows\command\Start mailto:wasaywasay@i-manila.com.ph?subject=Calculait",0)ă  IF dummy = 0 THENă    dummy = SHELL("Start mailto:wasaywasay@i-manila.com.ph?subject=Calculait",0)ă    IF dummy = 0 THENă      SHOWMESSAGE "Can't find your Start program. Please do manual email instead." ă    END IFă  END IFăEND SUBăăIniăForm.ShowModal                 ăExitSaveăăAchilles B. Mina               perpetual calendar             wasaywasay@i-manila.com.ph     10-08-01 (  :  )       rapidq                 2111 56791    CalendriX.ba'CalendriX (prototype), a virtually perpetual calendar ă'By Achilles B. Minaă'Updated: Oct. 8, 2001ăă'This utility is based on Days, a dates-days calculator. Days isă'downloadable from ZDNet, CNET, Tucows, RocketDownload and other freeware sites, and at my ă'website at http://pages.zdnet.com/wasaywasay/wasaywasay/ăă'Nota bene: the algorithms below use the date format mm:dd:yyyy. Alsoă'since this is just an outtake from a larger program, some variables and,ă'quite possibly, even a few routines are superfluous. Sorry.ăă'You can do as you please with this code.ăă$INCLUDE "RAPIDQ.INC"ă$ESCAPECHARS ONăă'$RESOURCE CalendriXIco AS "Calendrix.ico"ă'$RESOURCE clocktow AS "clocktow.wav"ă'$RESOURCE camera AS "camera.wav"ă'$RESOURCE cuckoo AS "cuckoo.wav"ă'$RESOURCE gong AS "gong.wav"ă'$RESOURCE handbell AS "handbell.wav"ă'$RESOURCE whoosh AS "whoosh.wav"ă'$RESOURCE whoosh AS "wipe.wav"ăăConst AW_CENTER = &H10 'Makes the window appear to collapse inward if AW_HIDE is used or expand outward if the AW_HIDE is not used.ăConst AW_HIDE = &H10000 'Hides the window. By default, the window is shown.ăConst HWND_TOPMOST = -1ăConst HWND_NOTOPMOST = -2ăConst SWP_NOSIZE = &H1ăConst SWP_NOMOVE = &H2ăConst SWP_NOACTIVATE = &H10ăConst SWP_SHOWWINDOW = &H40ăăDECLARE SUB SetWindowPos Lib "User32" ALIAS "SetWindowPos"(hWnd As Long,hWndInsertAfter As Long,X As Long,Y As Long,cx As Long,cy As Long,wFlags As Long)ăDECLARE FUNCTION Setfocus Lib "user32" Alias "SetFocus"(hwnd As Long) As LongăDECLARE FUNCTION AnimateWindow Lib "user32" Alias "AnimateWindow"(ByVal hwnd As Long, ByVal dwTime As Long, ByVal dwFlags As Long) As IntegerăDECLARE SUB Animate(Handle AS INTEGER)ăDECLARE SUB Deanimate(Handle AS INTEGER)ăDECLARE SUB CloseCalendarăDECLARE SUB CloseNoteProductFormăDECLARE SUB ShowNotesăDECLARE SUB NotesShowăDECLARE SUB EMailMeăDECLARE SUB SendMeăDECLARE SUB New_DateăDECLARE SUB DaysDifferenceăDECLARE FUNCTION GetAOdays AS INTEGERăDECLARE FUNCTION GetOdays AS INTEGERăDECLARE SUB DayTodayLtăDECLARE SUB InitializeăDECLARE SUB OnTopăDECLARE SUB TimeăDECLARE SUB NightsăDECLARE SUB NoisemakerăDECLARE SUB CalendarăDECLARE SUB PopMonthsăDECLARE SUB MonthChanged(Sender AS QMENUITEM)ăDECLARE SUB YearChangedăDECLARE SUB DayChanged(Sender AS QCOOLBTN)ăDECLARE SUB LoopColorăDECLARE SUB UpdownYear(Sender AS QCOOLBTN)ăDECLARE SUB BlinkăDECLARE SUB CalendarColorăDECLARE SUB ButtonColorăDECLARE SUB TodayăDECLARE SUB MinimizeăDECLARE SUB ImageFilesăăDEFWORD monthnow, monththen, monthchecked, yearnow, yearthen, betyearsăDEFBYTE ccolorcount, buttcolor, blinking,always,soundoff,juston,colorcount,countyrsmos,leapnow, leapthen, bleap, circa, weekday, fmonth, emonth, pmonth, todateăDEFINT totyears, totmonths, byear, bmonth, bleapyear, yearhence, AOyears, fyear, eyear, pyearăDEFINT Bdays, rundays, edays, otherdays, totdays, yeardays,Odays, AOdays, diffdays, betleaps, daynow, daythen, AdaysăDEFINT lastColor, fday, eday, pday, neweday, newpday, monthdays, daysthence, dayshence, bday, daysăDEFSTR PreWeeksPanel$, wday$, month$, thedate$, inifile, iDir, image0, image1, image2, image3, image4, image5ăăCREATE Arial8B AS QFONTă  Name = "Arial"ă  Size = 8ă  AddStyles(fsBold)ăEND CREATEăăCREATE Arial10B AS QFONTă  Name = "Arial"ă  Size = 10ă  AddStyles(fsBold)ăEND CREATEăăCREATE Arial9B AS QFONTă  Name = "Arial"ă  Size = 12ă  AddStyles(fsBold)ăEND CREATEăăCREATE ArialY10 AS QFONTă  Name = "Arial"ă  Size = 10ă  Color = &HFFFFF 'HGFCCC '&HBCCCă  AddStyles = fsBoldăEND CREATEăăCREATE ArialP10 AS QFONTă  Name = "Arial"ă  Size = 10ă  Color = clPurpleă  AddStyles = fsBoldăEND CREATEăăCREATE ArialB10 AS QFONTă  Name = "Arial"ă  Size = 10ă  Color = clBlueă  AddStyles = fsBoldăEND CREATEăăCREATE ArialG10 AS QFONTă  Name = "Arial"ă  Size = 10ă  Color = clGreenă  AddStyles = fsBoldăEND CREATEăăăCREATE Timer1 AS QTIMERă  Enabled = 1ă  Interval = 1000ă  OnTimer = TimeăEND CREATEăăCREATE Timer2 AS QTIMERă  Enabled = 0ă  Interval = 1ă  OnTimer = NotesShowăEND CREATEăăCREATE Timer3 AS QTIMERă  Enabled = 1ă  Interval = 80ă  OnTimer = LoopColorăEND CREATE ăăă  CREATE CalendarForm AS QFORMă    Caption = "CalendriX"ă    Width = 215ă    Height = 225ă    Color = &HEEFAFA ă    BorderStyle = 1ă    DelBorderIcons(biMaximize)ă    'DelBorderIcons(biMinimize)ă    Hint = "Click background to look for a new backdrop image file."ă    ShowHint = 1ă    Centeră    'Showă    Visible = 0ă    OnClose = CloseCalendară    Wndproc = Minimizeă    'CREATE Backglass AS QIMAGEă    '  Autosize = 1ă    '  Align = alClientă    '  OnClick = ImageFiles   ă    'END CREATEă    CREATE CDay1 AS QCOOLBTNă      Caption = "1"ă      Left = 7ă      Top = 71ă      Width = 27ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay8 AS QCOOLBTNă      Caption = "8"ă      Left = 7ă      Top = 96ă      Width = 27ă      Flat = 1ă      OnClick = DayChanged  ă    END CREATEă    CREATE CDay15 AS QCOOLBTNă      Caption = "15"ă      Left = 7ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay29 AS QCOOLBTNă      Caption = "29"ă      Left = 7ă      Top = 169ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay22 AS QCOOLBTNă      Caption = "22"ă      Left = 7ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay9 AS QCOOLBTNă      Caption = "9"ă      Left = 35ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay2 AS QCOOLBTNă      Caption = "2"ă      Left = 35ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay16 AS QCOOLBTNă      Caption = "16"ă      Left = 35ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay30 AS QCOOLBTNă      Caption = "30"ă      Left = 35ă      Top = 169ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay23 AS QCOOLBTNă      Caption = "23"ă      Left = 35ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay10 AS QCOOLBTNă      Caption = "10"ă      Left = 63ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay3 AS QCOOLBTNă      Caption = "3"ă      Left = 63ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay17 AS QCOOLBTNă      Caption = "17"ă      Left = 63ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay31 AS QCOOLBTNă      Caption = "31"ă      Left = 63ă      Top = 169ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay24 AS QCOOLBTNă      Caption = "24"ă      Left = 63ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay11 AS QCOOLBTNă      Caption = "11"ă      Left = 91ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay4 AS QCOOLBTNă      Caption = "4"ă      Left = 91ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay18 AS QCOOLBTNă      Caption = "18"ă      Left = 91ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay25 AS QCOOLBTNă      Caption = "25"ă      Left = 91ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay12 AS QCOOLBTNă      Caption = "12"ă      Left = 119ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay5 AS QCOOLBTNă      Caption = "5"ă      Left = 119ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay19 AS QCOOLBTNă      Caption = "19"ă      Left = 119ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay26 AS QCOOLBTNă      Caption = "26"ă      Left = 119ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay13 AS QCOOLBTNă      Caption = "13"ă      Left = 147ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay6 AS QCOOLBTNă      Caption = "6"ă      Left = 147ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay20 AS QCOOLBTNă      Caption = "20"ă      Left = 147ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay27 AS QCOOLBTNă      Caption = "27"ă      Left = 147ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay14 AS QCOOLBTNă      Caption = "14"ă      Left = 175ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay7 AS QCOOLBTNă      Caption = "7"ă      Left = 175ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay21 AS QCOOLBTNă      Caption = "21"ă      Left = 175ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay28 AS QCOOLBTNă      Caption = "28"ă      Left = 175ă      Top = 144ă      Width = 27ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE ColorButt AS QOVALBTNă      Caption = "C"ă      Left = 91ă      Top = 169ă      Height = 25ă      Width = 27ă      Flat = 1ă      Layout = -1ă      Font = Arial8Bă      Hint = "Click to change dates color."ă      ShowHint = 1ă      OnClick = ButtonColoră    END CREATEă    CREATE ImagesButt AS QOVALBTNă      Caption = "B"ă      Left = 119ă      Top = 169ă      Height = 25ă      Width = 27ă      Flat = 1ă      Layout = -1ă      Font = Arial8Bă      Hint = "Click to change backdrop."ă      ShowHint = 1ă      OnClick = CalendarColoră    END CREATEă    'CREATE OnTopButt AS QOVALBTNă      'Caption = "A"ă      'Left = 119ă      'Top = 169ă      'Height = 25ă      'Width = 27ă      'Flat = 1ă      'Layout = -1ă      'Hint = "Click to toggle-switch between \ntopmost and normal."ă      'ShowHint = 1ă      'OnClick = OnTop ă    'END CREATEă    CREATE NoiseButt AS QOVALBTNă      Caption = "S"ă      Left = 147ă      Top = 169ă      Height = 25ă      Width = 27ă      Flat = 1ă      Layout = -1ă      Font = Arial8Bă      Hint = "Click to turn off sound effects."ă      ShowHint = 1ă      OnClick = NoiseMaker ă    END CREATEă    CREATE NotesButt AS QOVALBTNă      Caption = "?"ă      Left = 175ă      Top = 169ă      Height = 25ă      Width = 27ă      Flat = 1ă      Layout = -1ă      Font = Arial8Bă      Hint = "Click to know more about CalendriX."ă      ShowHint = 1ă      OnClick = ShowNotes ă    END CREATEă    CREATE DayButt AS QOVALBTNă      Left = 175ă      Top = 144ă      Height = 25ă      Width = 27ă      Color = clGreenă      Flat = 1ă      Layout = -1ă      Hint = "Click to switch on/off blinking highlight."ă      ShowHint = 1ă      OnClick = Blinkă    END CREATEăă    CREATE MonthsPop AS QPOPUPMENUă      CREATE Jan AS QMENUITEMă        Caption = "January"ă        OnClick = MonthChangedă      END CREATEă      CREATE Feb AS QMENUITEMă        Caption = "February"ă        OnClick = MonthChangedă      END CREATEă      CREATE Mar AS QMENUITEMă        Caption = "March"ă        OnClick = MonthChangedă      END CREATEă      CREATE Apr AS QMENUITEMă        Caption = "April"ă        OnClick = MonthChangedă      END CREATEă      CREATE May AS QMENUITEMă        Caption = "May"ă        OnClick = MonthChangedă      END CREATEă      CREATE Jun AS QMENUITEMă        Caption = "June"ă        OnClick = MonthChangedă      END CREATEă      CREATE Jul AS QMENUITEMă        Caption = "July"ă        OnClick = MonthChangedă      END CREATEă      CREATE Aug AS QMENUITEMă        Caption = "August"ă        OnClick = MonthChangedă      END CREATEă      CREATE Sep AS QMENUITEMă        Caption = "September"ă        OnClick = MonthChangedă      END CREATEă      CREATE Oct AS QMENUITEMă        Caption = "October"ă        OnClick = MonthChangedă      END CREATEă      CREATE Nov AS QMENUITEMă        Caption = "November"ă        OnClick = MonthChangedă      END CREATEă      CREATE Dece AS QMENUITEMă        Caption = "December"ă        OnClick = MonthChangedă      END CREATE      ă    END CREATEă    CREATE MoYe AS QPANELă      Left = 6ă      Top = 4ă      Width = 197ă      Height = 34ă      BevelInner = 1ă      BorderStyle = 0ă      CREATE CMonth AS QPANELă        Top = 5ă        Left = 4ă        Height = 24ă        Width = 95ă        Color = &H00FF00ă        Font = Arial9Bă        BevelOuter = bvNoneă        BevelInner = bvLoweredă        Alignment = taLeftă        Hint = "Click then select month of choice."ă        ShowHint = 1ă        OnClick = PopMonthsă      END CREATEă      'CREATE Increase AS QCOOLBTNă      '  Top = 5ă      '  Left = 100ă      '  Width = 26ă      '  Height = 12ă      '  Flat = 1ă      '  Font = Arial9Bă      '  Caption = ">"ă      '  Hint = "Go up one year."ă      '  ShowHint = 1ă      '  OnClick = UpdownYeară      'END CREATEă      'CREATE Decrease AS QCOOLBTNă      '  Top = 17ă      '  Left = 100ă      '  Width = 26ă      '  Height = 12ă      '  Flat = 1ă      '  Font = Arial9Bă      '  Caption = "<"ă      '  Hint = "Go down one year."ă      '  ShowHint = 1ă      '  OnClick = UpdownYeară      'END CREATEă      CREATE UpDownYr AS QSCROLLBARă        Kind = 0ă        Top = 5ă        Left = 100ă        Width = 25ă        Height = 25ă        Hint = "Click left or right to change years."ă        ShowHint = 1ă        Min = 0ă        Max = 65000ă        OnChange = UpDownYeară      END CREATEă      CREATE CYear AS QEDITă        Top = 5ă        Left = 126ă        Height = 24ă        Width = 66ă        Autosize = 0ă        Color = &H00FF00ă        Font = Arial9Bă        Hint = "Click then type in new year."ă        ShowHint = 1ă        OnChange = YearChangedă      END CREATEă    END CREATEă    CREATE One AS QPANELă      Left = 7ă      Top = 42ă      Caption = "Sun"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Todayă    END CREATEă    CREATE Two AS QPANELă      Left = 35ă      Top = 42ă      Caption = "Mon"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Todayă    END CREATEă    CREATE Three AS QPANELă      Left = 63ă      Top = 42ă      Caption = "Tue"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Todayă    END CREATEă    CREATE Four AS QPANELă      Left = 91ă      Top = 42ă      Caption = "Wed"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Todayă    END CREATEă    CREATE Five AS QPANELă      Left = 119ă      Top = 42ă      Caption = "Thu"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Todayă    END CREATEă    CREATE Six AS QPANELă      Left = 147ă      Top = 42ă      Caption = "Fri"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Todayă    END CREATEă    CREATE Seven AS QPANELă      Left = 175ă      Top = 42ă      Caption = "Sat"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click here to get today's date"ă      ShowHint = 1ă      OnClick = Todayă    END CREATEă  CREATE NoteProductForm AS QFORM    ă    Top = Screen.Height/2 + 25ă    Left = Screen.Width/2 - 170ă    Width = 340 '320ă    Height = 205ă    Color = CalendarForm.Color '&HCC000 '&HABC777ă    DelBorderIcons(biMaximize)ă    DelBorderIcons(biMinimize)ă    BorderStyle = bsSingleă    FormStyle = fsStayOnTopă    Caption = "Notes on CalendriX"ă    OnClose = CloseNoteProductFormă    CREATE DXNotes AS QCANVASă      Top = 21ă      Left = 242ă      Height = 63ă      Width = 84ă      Color = 0ă      Cursor = -21ă      Hint = "Click to email comment or bug report."ă      Showhint = 1ă      OnClick = EmailMeă    END CREATEă    CREATE ProductList AS QLISTBOXă	Width = 232ă      Height = 177ă      AddItems ""ă      AddItems "Welcome!ă      AddItems ""ă      AddItems "  »  CalendriX runs best on Pentium-class  ă      AddItems "      machines with Windows 98 or better.ă      AddItems "      (It will run on older 486 PCsă      AddItems "      on Windows 95 but will show a ă      AddItems "      harmless incompatibility message.ă      AddItems "      Just ignore it.)ă      AddItems ""ă      AddItems "  »  Using CalendriX is straightforward.ă      AddItems "      To change the month, click on the ă      AddItems "      Month panel, then select the month. ă      AddItems "      To change the year, select the Yeară      AddItems "      panel, then type in the new year.ă      AddItems "      Or you can use the arrow-left oră      AddItems "      arrow-right button to change theă      AddItems "      year entry one year at a time.ă      AddItems "      To change the day, simply click onă      AddItems "      the appropriate button.ă      AddItems ""                                                                                                                            ă      AddItems "  »  Theoretically, CalendriX can display ă      AddItems "      dates from Year 0 to Year 65000, a ă      AddItems "      span of over 23 million days. For aă      AddItems "      meaningful result, however, confine ă      AddItems "      dates to after September 14, 1752-- ă      AddItems "      the day our calendar, the Gregorian, ă      AddItems "      was last significantly amended and  ă      AddItems "      the day it was adopted by Britain.ă      AddItems ""ă      AddItems "  »  You can change the calendar's ă      AddItems "      backdrop by clicking on the buttonă      AddItems "      marked B. You can cycle through ă      AddItems "      six backdrops by repeatedlyă      AddItems "      clicking on the backdrop. You can ă      AddItems "      even substitute your own images for ă      AddItems "      the supplied backdrops by clicking ă      AddItems "      on the background then selecting ă      AddItems "      an appropriate image file stored ă      AddItems "      in your computer. Remember to use ă      AddItems "      only images that are at least  ă      AddItems "      210 pixels wide x 200 pixels high.                                                                            ă      AddItems ""ă      AddItems "  »  Nota bene: this prototype uses theă      AddItems "      date format mm:dd:yyyy. If you have ă      AddItems "      set your date format differently,ă      AddItems "      CalendriX will display the wrongă      AddItems "      the dates.ă      AddItems ""ă      AddItems "  »  CalendriX remembers your settings,ă      AddItems "      so there's no need to reset them ă      AddItems "      each time you run CalendriX. ă      AddItems ""          ă      AddItems "Programming"ă      AddItems "  »  CalendriX was written in Rapid-Q,"ă      AddItems "      a computer language developed by "ă      AddItems "      William Yu. It's also freeware at"ă      AddItems "      www.basicguru.com/abc/rapidq."     ă    END CREATEă    CREATE NotesP0 AS QLABELă      Top = 3ă      Left = 255ă      Width = 84ă      Font = Arial10Bă      Caption = "CalendriX"      ă      Alignment = taCenteră      Layout = -1ă      LabelStyle = 1ă      Hint = "Click to visit website"ă      ShowHint = 1ă      OnClick = SendMeă    END CREATEă    CREATE NotesP1 AS QLABELă      Top = 85ă      Left = 235ă      Caption = "  Copyright (c) 2001\n    Achilles B. Mina\n\nThis is FREEWARE.\n Not for commercial\n       distribution."ă    END CREATEă  END CREATEăă  END CREATEăăăSUB Initializeă  RANDOMIZEă  IF FILEEXISTS("calendrix.ini") <> 0 THENă    DIM File AS QFILESTREAMă    File.Open("calendrix.ini",fmOpenReadWrite)ă    inifile = File.ReadStr(File.Size)ă    File.Closeă  END IFă  colorcount = VAL(LEFT$(inifile,1))ă  always = VAL(MID$(inifile,2,1))ă  soundoff = VAL(MID$(inifile,3,1))ă  blinking = VAL(MID$(inifile,4,1))ă  buttcolor = VAL(MID$(inifile,5,1))ă  ccolorcount = VAL(MID$(inifile,6,1))ă  whereC = INSTR(7,inifile,CHR$(13))ă  DayButt.Color = VAL(MID$(inifile,7,(whereC-1)-6))  ă  where0 = INSTR(inifile,"0 =")ă  where0E = INSTR(where0,inifile,CHR$(13))ă  image0 = MID$(inifile,where0+3,(where0E-1)-(where0+2))ă  where1 = INSTR(inifile,"1 =")ă  where1E = INSTR(where1,inifile,CHR$(13))ă  image1 = MID$(inifile,where1+3,(where1E-1)-(where1+2))ă  where2 = INSTR(inifile,"2 =")ă  where2E = INSTR(where2,inifile,CHR$(13))ă  image2 = MID$(inifile,where2+3,(where2E-1)-(where2+2))ă  where3 = INSTR(inifile,"3 =")ă  where3E = INSTR(where3,inifile,CHR$(13))ă  image3 = MID$(inifile,where3+3,(where3E-1)-(where3+2))ă  where4 = INSTR(inifile,"4 =")ă  where4E = INSTR(where4,inifile,CHR$(13))ă  image4 = MID$(inifile,where4+3,(where4E-1)-(where4+2))ă  where5 = INSTR(inifile,"5 =")ă  where5E = INSTR(where5,inifile,CHR$(13))ă  image5 = MID$(inifile,where5+3,(where5E-1)-(where5+2))ă  IF RTRIM$(image0) = "" THEN image0 = "00.bmp"ă  IF RTRIM$(image1) = "" THEN image1 = "10.bmp"ă  IF RTRIM$(image2) = "" THEN image2 = "20.bmp"ă  IF RTRIM$(image3) = "" THEN image3 = "30.bmp"ă  IF RTRIM$(image4) = "" THEN image4 = "40.bmp"ă  IF RTRIM$(image5) = "" THEN image5 = "50.bmp"ă  ButtonColoră  CalendarColoră  IF soundoff = 0 THEN PLAYWAV(clocktow,1)ă  'Application.IcoHandle = CalendriXIcoă  Application.HintShortPause = 25ă  Application.HintPause = 25ă  Application.HintHidePause = 12000ă  DayTodayLtă  New_Dateă  UpDownYr.Position = fyeară  Timeă  CalendarăEND SUBăăSUB OnTopă  IF soundoff = 0 THEN PLAYWAV(gong,1)ă  IF always = 0 THENă    always = 1ă  ELSE ă    always = 0ă  END IFăEND SUBăăSUB Timeă  DEFINT milhour, hour, mină  hour =  VAL(LEFT$(TIME$,2))ă  min = VAL(MID$(TIME$,4,2))     ă  milhour = houră  IF hour >= 12 AND hour < 24 THENă    hour = hour - 12ă    IF hour = 0 THEN hour = 12ă    ampm$ = " pm"ă  ELSEIF hour = 0 THEN ă    hour = 12ă    ampm$ = " am"ă  ELSEă    ampm$ = " am"ă  END IFă  IF min < 10 THENă    thetime$ = STR$(hour) + ":0" + STR$(min) + RIGHT$(TIME$,3) + ampm$ă  ELSEă    thetime$ = STR$(hour) + ":" + STR$(min) + RIGHT$(TIME$,3) + ampm$ă  END IFă  CalendarForm.Caption = "CalendriX" + "  " + thetime$ăEND SUBăăăSUB New_Dateă  IF soundoff = 0 THEN PLAYWAV(whoosh,1)ă  byear = VAL(REPLACESUBSTR$(CYear.Text,",",""))ă  fday = bdayă  fyear = byeară  fmonth = bmonth                       ă  IF fyear = 0 THENă    fyear = 1ă  ELSEIF fyear < 0 THENă    fyear = ABS(fyear) + 1ă  ELSE                                   ă    DaysDifferenceă  END IF ăEND SUBăăSUB DaysDifference    ăă    monthnow = fmonthă    yearnow = fyeară    daynow = fdayă    monththen = 1    ă    yearthen = 1900 'arbitrary but don't change; day-of-week algorithm uses ită    daythen = 1  ăă  IF yearnow < yearthen THENă    SWAP(yearnow,yearthen)ă    SWAP(monthnow,monththen)ă    SWAP(daynow,daythen)ă  END IFă  AOyears = yearnow - yearthenă  betyears = AOyears - 1ă  IF AOyears = 0 THENă    IF monthnow = monththen THENă      diffdays = daynow - daythenă    ELSEă      IF yearthen MOD 4 = 0 THENă        leapthen = 1ă        IF yearthen MOD 100 = 0 AND yearthen MOD 400 <> 0 THEN leapthen = 0ă      ELSE ă        leapthen = 0ă      END IFă      IF yearnow MOD 4 = 0 THENă        leapnow = 1ă        IF yearnow MOD 100 = 0 AND yearnow MOD 400 <> 0 THEN leapnow = 0ă      ELSE ă        leapnow = 0ă      END IF                ă      SELECT CASE monththenă        CASE 1ă          Adays = daythenă        CASE 2ă          Adays = 31 + daythenă        CASE 3ă          Adays = 59 + daythen + leapthenă        CASE 4ă          Adays = 90 + daythen + leapthenă        CASE 5ă          Adays = 120 + daythen + leapthenă        CASE 6ă          Adays = 151 + daythen + leapthenă        CASE 7ă          Adays = 181 + daythen + leapthenă        CASE 8ă          Adays = 212 + daythen + leapthenă        CASE 9ă          Adays = 243 + daythen + leapthenă        CASE 10ă          Adays = 273 + daythen + leapthenă        CASE 11ă          Adays = 304 + daythen + leapthenă        CASE 12ă          Adays = 334 + daythen + leapthen    ă      END SELECTă      diffdays = GetOdays - Adaysă    END IFă  ELSEIF AOyears = 1 THENă    diffdays = GetAOdaysă  ELSEă    betleaps = 0 'betyears \ 4ă    trialyear = yearthen + 1ă    DOă      IF trialyear MOD 4 = 0 THENă        INC betleapsă        IF trialyear MOD 100 = 0 AND trialyear MOD 400 <> 0 THEN DEC betleapsă      END IFă      INC trialyeară    LOOP UNTIL trialyear = yearnowă    diffdays = (betyears*365) + GetAOdays + betleapsă  END IFă ă    todate = diffdays MOD 7    ă    IF fyear < VAL(RIGHT$(DATE$,4)) THENă      past = 1ă    ELSEIF fyear = VAL(RIGHT$(DATE$,4)) THENă      IF fmonth < VAL(LEFT$(DATE$,2)) THENă        past = 1ă      ELSEIF fmonth = VAL(LEFT$(DATE$,2)) THENă        IF fday < VAL(MID$(DATE$,4,2)) THEN past = 1ă      END IFă    END IFăă    SELECT CASE todateă      CASE 0ă        wday$ = "Monday!"ă      CASE 1ă        IF fyear < 1900 THEN ă          wday$ = "Sunday!"ă        ELSEă          wday$ = "Tuesday!"ă        END IFă      CASE 2ă        IF fyear < 1900 THEN ă          wday$ = "Saturday!"ă        ELSEă          wday$ = "Wednesday!"ă        END IF        ă      CASE 3ă        IF fyear < 1900 THEN ă          wday$ = "Friday!"ă        ELSEă          wday$ = "Thursday!"ă        END IF                      ă      CASE 4ă        IF fyear < 1900 THEN ă          wday$ = "Thursday!"ă        ELSEă          wday$ = "Friday!"ă        END IF             ă      CASE 5ă        IF fyear < 1900 THEN ă          wday$ = "Wednesday!"ă        ELSEă          wday$ = "Saturday!"ă        END IF              ă      CASE 6ă        IF fyear < 1900 THEN ă          wday$ = "Tuesday!"ă        ELSEă          wday$ = "Sunday!"ă        END IF                     ă    END SELECTăEND SUB  ăăFUNCTION GetAOdaysă  IF yearthen MOD 4 = 0 THENă    leapthen = 1ă    IF yearthen MOD 100 = 0 AND yearthen MOD 400 <> 0 THEN leapthen = 0ă   ELSE ă    leapthen = 0ă   END IF  ă  SELECT CASE monththenă    CASE 1ă      Adays = 365 - daythen + leapthenă    CASE 2ă      Adays = 334 - daythen + leapthenă    CASE 3ă      Adays = 306 - daythen        ă    CASE 4ă      Adays = 275 - daythenă    CASE 5ă      Adays = 245 - daythenă    CASE 6ă      Adays = 214 - daythenă    CASE 7ă      Adays = 184 - daythenă    CASE 8ă      Adays = 153 - daythenă    CASE 9ă      Adays = 122 - daythenă    CASE 10ă      Adays = 92 - daythenă    CASE 11ă      Adays = 61 - daythenă    CASE 12ă      Adays = 31 - daythen      ă  END SELECTă  GetAOdays = Adays + GetOdays    ăEND FUNCTIONăăFUNCTION GetOdaysă  IF yearnow MOD 4 = 0 THENă    leapnow = 1ă    IF yearnow MOD 100 = 0 AND yearnow MOD 400 <> 0 THEN leapnow = 0ă  ELSE ă    leapnow = 0ă  END IFă  SELECT CASE monthnowă    CASE 1ă      Odays = daynowă    CASE 2ă      Odays = 31 + daynowă    CASE 3ă      Odays = 59 + daynow + leapnowă    CASE 4ă      Odays = 90 + daynow + leapnowă    CASE 5ă      Odays = 120 + daynow + leapnowă    CASE 6ă      Odays = 151 + daynow + leapnowă    CASE 7ă      Odays = 181 + daynow + leapnowă    CASE 8ă      Odays = 212 + daynow + leapnowă    CASE 9ă      Odays = 243 + daynow + leapnowă    CASE 10ă      Odays = 273 + daynow + leapnowă    CASE 11      ă      Odays = 304 + daynow + leapnowă    CASE 12ă      Odays = 334 + daynow + leapnow      ă  END SELECTă  RESULT = OdaysăEND FUNCTIONăăSUB ShowNotesă  IF soundoff = 0 THEN PLAYWAV(cuckoo,1)ă  Timer2.Enabled = 1ă  Animate(NoteProductForm.Handle)ă  NoteProductForm.Visible = 1ăEND SUBăăSUB NotesShowă  DEFSHORT yă  DXNotes.FillRect(0,0,84,63,0) ă  INC yă  IF y > 84 THEN y = 1ă  IF y < 11 THEN b$ = RIGHT$("wasaywasay",y)ă  IF y < 8 THEN a$ = RIGHT$(".com.ph",y)    ă  DXNotes.TextOut(y,y+2,a$,clGreen,clBlack)ă  DXNotes.TextOut(y+2,2,b$,clWhite,clBlack)ă  DXNotes.TextOut(1,y+16,"@i-manila",&HDDCE,clBlack)  ăEND SUBăăSUB SendMeă  IF soundoff = 0 THEN PLAYWAV(camera,1)ă  dummy = SHELL ("start http://pages.zdnet.com/wasaywasay/wasaywasay", SW_HIDE)ă  IF dummy = 0 THENă    dummy = SHELL ("start http://pages.zdnet.com/wasaywasay/wasaywasay", SW_HIDE)ă    IF dummy = 0 THENă      SHOWMESSAGE "Can't find your Start program. \nPlease go to http://pages.zdnet.com/wasaywasay/wasaywasay manually." ă    END IFă  END IFăEND SUBăăSUB EMailMeă  IF soundoff = 0 THEN PLAYWAV(camera,1)ă  dummy = SHELL("c:\windows\command\Start mailto:wasaywasay@i-manila.com.ph?Subject=Attention_Days_croaks",0)ă  IF dummy = 0 THENă    dummy = SHELL("Start mailto:wasaywasay@i-manila.com.ph?Subject=About_CalendriX",0)ă    IF dummy = 0 THENă      SHOWMESSAGE "Can't find your Start program. Please do manual email instead." ă    END IFă  END IFăEND SUBăăSUB DayTodayLtă  bday = VAL(MID$(DATE$,4,2))ă  bmonth = VAL(LEFT$(DATE$,2))ă  CYear.Text = RIGHT$(DATE$,4)ă  SELECT CASE bmonthă    CASE 1ă      CMonth.Caption = "January"ă    CASE 2ă      CMonth.Caption = "February" ă    CASE 3ă      CMonth.Caption = "March"ă    CASE 4ă      CMonth.Caption = "April" ă    CASE 5ă      CMonth.Caption = "May"ă    CASE 6ă      CMonth.Caption = "June" ă    CASE 7ă      CMonth.Caption = "July"ă    CASE 8ă      CMonth.Caption = "August"ă    CASE 9ă      CMonth.Caption = "September"ă    CASE 10ă      CMonth.Caption = "October" ă    CASE 11ă      CMonth.Caption = "November"ă    CASE 12ă      CMonth.Caption = "December" ă  END SELECT    ăEND SUBăăSUB CloseNoteProductFormă  IF soundoff = 0 THEN PLAYWAV(whoosh,1)ă  Deanimate(NoteProductForm.Handle)ă  NoteProductForm.Visible = 0ăEND SUBăăSUB Nightsă  DIM File AS QFILESTREAMă  IF soundoff = 0 THEN PLAYWAV(gong,1)ă  IF iDir = "" THENă    where$ = "calendrix.ini"ă  ELSEă    where$ = iDir + "\\" + "calendrix.ini"ă  END IFă  File.Open(where$,fmCreate)ă  inifile = STR$(colorcount) + STR$(always) + STR$(soundoff)_ă            + STR$(blinking) + STR$(buttcolor) + STR$(ccolorcount)_ă            + STR$(DayButt.Color) + CHR$(13)_ă            + "0 =" + image0 + CHR$(13)_ă            + "1 =" + image1 + CHR$(13)_ă            + "2 =" + image2 + CHR$(13)_ă            + "3 =" + image3 + CHR$(13)_ă            + "4 =" + image4 + CHR$(13)_ă            + "5 =" + image5 + CHR$(13)ă  File.WriteStr(inifile,LEN(inifile))ă  File.Closeă  CalendarForm.Closeă  'Application.TerminateăEND SUBăăSUB Noisemakeră  IF soundoff = 0 THENă    NoiseButt.Hint = "Click to turn on sound effects."ă    soundoff = 1ă  ELSEă    PLAYWAV(handbell,1)ă    NoiseButt.Hint = "Click to turn off sound effects."ă    soundoff = 0ă  END IFăEND SUBăăSUB DayChanged(Sender AS QCOOLBTN)ă  bday = VAL(Sender.Caption)ă  New_Dateă  CalendarăEND SUBăăSUB MonthChanged(Sender AS QMENUITEM)ă  CMonth.Caption = Sender.Captionă  SELECT CASE CMonth.Captionă    CASE "January"ă      bmonth = 1ă    CASE "February"ă      bmonth = 2ă    CASE "March"ă      bmonth = 3ă    CASE "April"ă      bmonth = 4ă    CASE "May"ă      bmonth = 5ă    CASE "June"ă      bmonth = 6ă    CASE "July"ă      bmonth = 7ă    CASE "August"ă      bmonth = 8ă    CASE "September"ă      bmonth = 9ă    CASE "October"ă      bmonth = 10ă    CASE "November"ă      bmonth = 11ă    CASE "December"ă      bmonth = 12ă  END SELECTă  New_Dateă  CalendarăEND SUBăăSUB YearChangedă  New_Dateă  UpDownYr.Position = VAL(CYear.Text)ă  CalendarăEND SUBăăSUB Calendară  IF soundoff = 0 THEN PLAYWAV(handbell,1)ă  CYear.Text = STR$(fyear)ăă  One.Color = -2147483633ă  Two.Color = -2147483633ă  Three.Color = -2147483633ă  Four.Color = -2147483633ă  Five.Color = -2147483633ă  Six.Color = -2147483633ă  Seven.Color = -2147483633ăă  CDay1.Visible = 1ă  CDay2.Visible = 1ă  CDay3.Visible = 1ă  CDay4.Visible = 1ă  CDay5.Visible = 1ă  CDay6.Visible = 1ă  CDay7.Visible = 1ă  CDay8.Visible = 1ă  CDay9.Visible = 1ă  CDay10.Visible = 1ă  CDay11.Visible = 1ă  CDay12.Visible = 1ă  CDay13.Visible = 1ă  CDay14.Visible = 1ă  CDay15.Visible = 1ă  CDay16.Visible = 1ă  CDay17.Visible = 1ă  CDay18.Visible = 1ă  CDay19.Visible = 1ă  CDay20.Visible = 1ă  CDay21.Visible = 1ă  CDay22.Visible = 1ă  CDay23.Visible = 1ă  CDay24.Visible = 1ă  CDay25.Visible = 1ă  CDay26.Visible = 1ă  CDay27.Visible = 1ă  CDay28.Visible = 1ă  SELECT CASE fmonthă    CASE 1,3,5,7,8,10,12ă      CDay29.Visible = 1ă      CDay30.Visible = 1ă      CDay31.Visible = 1ă    CASE 4,6,9,11ă      CDay29.Visible = 1ă      CDay30.Visible = 1ă      CDay31.Visible = 0ă    CASE 2ă      IF leapthen = 1 OR leapnow = 1 THENă        CDay29.Visible = 1ă      ELSEă        CDay29.Visible = 0ă      END IFă      CDay30.Visible = 0ă      CDay31.Visible = 0ă  END SELECTă  SELECT CASE fdayă    CASE 1,8,15,22,29ă      One.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Monday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Tuesday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Wednesday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Thursday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Friday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Saturday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă      END SELECT       ă    CASE 2,9,16,23,30ă      Two.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Monday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Tuesday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Wednesday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Thursday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Friday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Saturday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă      END SELECTă    CASE 3,10,17,24,31ă      Three.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Monday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Tuesday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Wednesday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Thursday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Friday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Saturday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă      END SELECTă    CASE 4,11,18,25ă      Four.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Monday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Tuesday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Wednesday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Thursday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Friday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Saturday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă      END SELECTă    CASE 5,12,19,26ă      Five.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Monday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Tuesday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Wednesday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Thursday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Friday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Saturday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă      END SELECTă    CASE 6,13,20,27ă      Six.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Monday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Tuesday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Wednesday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Thursday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Friday!"ă          One.Caption = "Sat"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Saturday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă      END SELECTă    CASE 7,14,21,28ă      Seven.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Monday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Tuesday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Wednesday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Thursday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Friday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Saturday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă      END SELECT     ă  END SELECTă  SELECT CASE fdayă    CASE 1ă      CDay1.Visible = 0ă      DayButt.Top = CDay1.Topă      DayButt.Left = CDay1.Leftă    CASE 2ă      CDay2.Visible = 0ă      DayButt.Top = CDay2.Topă      DayButt.Left = CDay2.Leftă    CASE 3ă      CDay3.Visible = 0ă      DayButt.Top = CDay3.Topă      DayButt.Left = CDay3.Leftă    CASE 4ă      CDay4.Visible = 0ă      DayButt.Top = CDay4.Topă      DayButt.Left = CDay4.Leftă    CASE 5ă      CDay5.Visible = 0ă      DayButt.Top = CDay5.Topă      DayButt.Left = CDay5.Leftă    CASE 6ă      CDay6.Visible = 0ă      DayButt.Top = CDay6.Topă      DayButt.Left = CDay6.Leftă    CASE 7ă      CDay7.Visible = 0ă      DayButt.Top = CDay7.Topă      DayButt.Left = CDay7.Leftă    CASE 8ă      CDay8.Visible = 0ă      DayButt.Top = CDay8.Topă      DayButt.Left = CDay8.Leftă    CASE 9ă      CDay9.Visible = 0ă      DayButt.Top = CDay9.Topă      DayButt.Left = CDay9.Leftă    CASE 10ă      CDay10.Visible = 0ă      DayButt.Top = CDay10.Topă      DayButt.Left = CDay10.Leftă    CASE 11ă      CDay11.Visible = 0ă      DayButt.Top = CDay11.Topă      DayButt.Left = CDay11.Leftă    CASE 12ă      CDay12.Visible = 0ă      DayButt.Top = CDay12.Topă      DayButt.Left = CDay12.Leftă    CASE 13ă      CDay13.Visible = 0ă      DayButt.Top = CDay13.Topă      DayButt.Left = CDay13.Leftă    CASE 14ă      CDay14.Visible = 0ă      DayButt.Top = CDay14.Topă      DayButt.Left = CDay14.Leftă    CASE 15ă      CDay15.Visible = 0ă      DayButt.Top = CDay15.Topă      DayButt.Left = CDay15.Leftă    CASE 16ă      CDay16.Visible = 0ă      DayButt.Top = CDay16.Topă      DayButt.Left = CDay16.Leftă    CASE 17ă      CDay17.Visible = 0ă      DayButt.Top = CDay17.Topă      DayButt.Left = CDay17.Leftă    CASE 18ă      CDay18.Visible = 0ă      DayButt.Top = CDay18.Topă      DayButt.Left = CDay18.Leftă    CASE 19ă      CDay19.Visible = 0ă      DayButt.Top = CDay19.Topă      DayButt.Left = CDay19.Leftă    CASE 20ă      CDay20.Visible = 0ă      DayButt.Top = CDay20.Topă      DayButt.Left = CDay20.Leftă    CASE 21ă      CDay21.Visible = 0ă      DayButt.Top = CDay21.Topă      DayButt.Left = CDay21.Leftă    CASE 22ă      CDay22.Visible = 0ă      DayButt.Top = CDay22.Topă      DayButt.Left = CDay22.Leftă    CASE 23ă      CDay23.Visible = 0ă      DayButt.Top = CDay23.Topă      DayButt.Left = CDay23.Leftă    CASE 24ă      CDay24.Visible = 0ă      DayButt.Top = CDay24.Topă      DayButt.Left = CDay24.Leftă    CASE 25ă      CDay25.Visible = 0ă      DayButt.Top = CDay25.Topă      DayButt.Left = CDay25.Leftă    CASE 26ă      CDay26.Visible = 0ă      DayButt.Top = CDay26.Topă      DayButt.Left = CDay26.Leftă    CASE 27ă      CDay27.Visible = 0ă      DayButt.Top = CDay27.Topă      DayButt.Left = CDay27.Leftă    CASE 28ă      CDay28.Visible = 0ă      DayButt.Top = CDay28.Topă      DayButt.Left = CDay28.Leftă    CASE 29ă      CDay29.Visible = 0ă      DayButt.Top = CDay29.Topă      DayButt.Left = CDay29.Leftă    CASE 30ă      CDay30.Visible = 0ă      DayButt.Top = CDay30.Topă      DayButt.Left = CDay30.Leftă    CASE 31ă      CDay31.Visible = 0ă      DayButt.Top = CDay31.Topă      DayButt.Left = CDay31.Leftă  END SELECTă  DayButt.Caption = STR$(fday)ă  'SetFocus(DayButt.Handle)ăEND SUBăăSUB PopMonthsă  MonthsPop.PopUp(Screen.MouseX,Screen.MouseY)ăEND SUBăăSUB Blinkă  IF blinking = 0 THENă    blinking = 1ă  ELSEă    blinking = 0ă  END IFăEND SUBăăSUB Todayă  DayTodayLtă  New_Dateă  CalendarăEND SUBăăSUB LoopColoră  IF blinking = 0 THEN DayButt.Color = 15661818*(1+RND*(5))ăEND SUBăăSUB UpdownYeară  CYear.Text = STR$(UpDownYr.Position)ăEND SUBăăSUB CalendarColoră  IF CalendarForm.Visible = 1 THEN INC ccolorcountă  IF ccolorcount = 6 THEN ccolorcount = 0ă  SELECT CASE ccolorcountă    CASE 0ă      'Backglass.BMP = image0ă      CalendarForm.Color = &HBCCAAAă    CASE 1ă      'Backglass.BMP = image1ă      CalendarForm.Color = &HEEFAFA  ă    CASE 2ă      'Backglass.BMP = image2ă      CalendarForm.Color = &HCCC000ă    CASE 3ă      'Backglass.BMP = image3ă      CalendarForm.Color = &HGCCCă    CASE 4ă      'Backglass.BMP = image4ă      CalendarForm.Color = &HA000ă    CASE 5ă      'Backglass.BMP = image5ă      CalendarForm.Color = &HBCCC '&HBB00CCă  END SELECTă    MoYe.Color = CalendarForm.Coloră    NoteProductForm.Color = CalendarForm.Color              ăEND SUBăăSUB ButtonColoră  IF CalendarForm.Visible = 1 THEN INC buttcoloră  IF buttcolor = 4 THEN buttcolor = 0ă  SELECT CASE buttcoloră    CASE 0ă      DayButt.Font = ArialY10ă      CDay1.Font = ArialY10ă      CDay2.Font = ArialY10ă      CDay3.Font = ArialY10ă      CDay4.Font = ArialY10ă      CDay5.Font = ArialY10ă      CDay6.Font = ArialY10ă      CDay7.Font = ArialY10ă      CDay8.Font = ArialY10ă      CDay9.Font = ArialY10ă      CDay10.Font = ArialY10ă      CDay11.Font = ArialY10ă      CDay12.Font = ArialY10ă      CDay13.Font = ArialY10ă      CDay14.Font = ArialY10ă      CDay15.Font = ArialY10ă      CDay16.Font = ArialY10ă      CDay17.Font = ArialY10ă      CDay18.Font = ArialY10ă      CDay19.Font = ArialY10ă      CDay20.Font = ArialY10ă      CDay21.Font = ArialY10ă      CDay22.Font = ArialY10ă      CDay23.Font = ArialY10ă      CDay24.Font = ArialY10ă      CDay25.Font = ArialY10ă      CDay26.Font = ArialY10ă      CDay27.Font = ArialY10ă      CDay28.Font = ArialY10ă      CDay29.Font = ArialY10ă      CDay30.Font = ArialY10ă      CDay31.Font = ArialY10ă    CASE 1ă      DayButt.Font = ArialB10ă      CDay1.Font = ArialB10ă      CDay2.Font = ArialB10ă      CDay3.Font = ArialB10ă      CDay4.Font = ArialB10ă      CDay5.Font = ArialB10ă      CDay6.Font = ArialB10ă      CDay7.Font = ArialB10ă      CDay8.Font = ArialB10ă      CDay9.Font = ArialB10ă      CDay10.Font = ArialB10ă      CDay11.Font = ArialB10ă      CDay12.Font = ArialB10ă      CDay13.Font = ArialB10ă      CDay14.Font = ArialB10ă      CDay15.Font = ArialB10ă      CDay16.Font = ArialB10ă      CDay17.Font = ArialB10ă      CDay18.Font = ArialB10ă      CDay19.Font = ArialB10ă      CDay20.Font = ArialB10ă      CDay21.Font = ArialB10ă      CDay22.Font = ArialB10ă      CDay23.Font = ArialB10ă      CDay24.Font = ArialB10ă      CDay25.Font = ArialB10ă      CDay26.Font = ArialB10ă      CDay27.Font = ArialB10ă      CDay28.Font = ArialB10ă      CDay29.Font = ArialB10ă      CDay30.Font = ArialB10ă      CDay31.Font = ArialB10ă    CASE 2ă      DayButt.Font = ArialG10ă      CDay1.Font = ArialG10ă      CDay2.Font = ArialG10ă      CDay3.Font = ArialG10ă      CDay4.Font = ArialG10ă      CDay5.Font = ArialG10ă      CDay6.Font = ArialG10ă      CDay7.Font = ArialG10ă      CDay8.Font = ArialG10ă      CDay9.Font = ArialG10ă      CDay10.Font = ArialG10ă      CDay11.Font = ArialG10ă      CDay12.Font = ArialG10ă      CDay13.Font = ArialG10ă      CDay14.Font = ArialG10ă      CDay15.Font = ArialG10ă      CDay16.Font = ArialG10ă      CDay17.Font = ArialG10ă      CDay18.Font = ArialG10ă      CDay19.Font = ArialG10ă      CDay20.Font = ArialG10ă      CDay21.Font = ArialG10ă      CDay22.Font = ArialG10ă      CDay23.Font = ArialG10ă      CDay24.Font = ArialG10ă      CDay25.Font = ArialG10ă      CDay26.Font = ArialG10ă      CDay27.Font = ArialG10ă      CDay28.Font = ArialG10ă      CDay29.Font = ArialG10ă      CDay30.Font = ArialG10ă      CDay31.Font = ArialG10ă    CASE 3ă      DayButt.Font = ArialP10ă      CDay1.Font = ArialP10ă      CDay2.Font = ArialP10ă      CDay3.Font = ArialP10ă      CDay4.Font = ArialP10ă      CDay5.Font = ArialP10ă      CDay6.Font = ArialP10ă      CDay7.Font = ArialP10ă      CDay8.Font = ArialP10ă      CDay9.Font = ArialP10ă      CDay10.Font = ArialP10ă      CDay11.Font = ArialP10ă      CDay12.Font = ArialP10ă      CDay13.Font = ArialP10ă      CDay14.Font = ArialP10ă      CDay15.Font = ArialP10ă      CDay16.Font = ArialP10ă      CDay17.Font = ArialP10ă      CDay18.Font = ArialP10ă      CDay19.Font = ArialP10ă      CDay20.Font = ArialP10ă      CDay21.Font = ArialP10ă      CDay22.Font = ArialP10ă      CDay23.Font = ArialP10ă      CDay24.Font = ArialP10ă      CDay25.Font = ArialP10ă      CDay26.Font = ArialP10ă      CDay27.Font = ArialP10ă      CDay28.Font = ArialP10ă      CDay29.Font = ArialP10ă      CDay30.Font = ArialP10ă      CDay31.Font = ArialP10ă  END SELECTăEND SUBăăSUB ImageFilesă  CREATE NewImages AS QOPENDIALOGă    InitialDir = CurDir$ă    Filter = "Bitmap image files|*.BMP|All Files|*.*ă    FilterIndex = 1ă  END CREATE ă  iDir = NewImages.InitialDir ă  IF NewImages.Execute THENă    SELECT CASE ccolorcountă      CASE 0ă        image0 = NewImages.FileNameă      CASE 1ă        image1 = NewImages.FileName ă      CASE 2ă        image2 = NewImages.FileNameă      CASE 3ă        image3 = NewImages.FileNameă      CASE 4ă        image4 = NewImages.FileNameă      CASE 5ă        image5 = NewImages.FileNameă    END SELECTă    DEC ccolorcount ă    CalendarColoră  END IFăEND SUBăăSUB Animate(Handle AS INTEGER)ă  AnimateWindow Handle, 300, AW_CENTERă  SELECT CASE Handleă    CASE NoteProductForm.Handleă      NoteProductForm.Repaintă    CASE CalendarForm.Handleă      CalendarForm.Repaintă  END SELECTăEND SUBăăSUB CloseCalendară  Deanimate(CalendarForm.Handle)ăEND SUBăăSUB Deanimate(Handle AS INTEGER)ă  AnimateWindow Handle, 300, AW_CENTER OR AW_HIDEăEND SUBăăInitializeăCalendarForm.ShowModalăă'Animate(CalendarForm.Handle)ă'CalendarForm.Visible = 1ă'DO ă'  SetWindowPos(CalendarForm.Handle,-1,0,0,0,0,SWP_NOMOVE OR SWP_NOSIZE)ă'  DOEVENTSă'LOOP UNTIL CalendarForm.Visible = 0ăăNightsăAchilles B. Mina               days-dates calculator          wasaywasay@i-manila.com.ph     10-09-01 (  :  )       rapidq                 2745 76197    Days.bas    'Days 2.61, a days-dates calculatoră'By Achilles B. Minaă'Updated: October 9, 2001ăă'This utility is based on one of the modules of Calculait, a full-featuredă'scientific calculator with a world clock. Calculait and Days are bothă'downloadable from ZDNet, CNet, Tucows, Rocketdownload and other freeware sites, and at my ă'website at http://pages.zdnet.com/wasaywasay/wasaywasay/ăă'You can do as you please with this code.ăă$INCLUDE "RAPIDQ.INC"ă$ESCAPECHARS ONăă'$RESOURCE DaysIco AS "days.ico"ă'$RESOURCE clocktow AS "clocktow.wav"ă'$RESOURCE camera AS "camera.wav"ă'$RESOURCE cuckoo AS "cuckoo.wav"ă'$RESOURCE gong AS "gong.wav"ă'$RESOURCE handbell AS "handbell.wav"ă'$RESOURCE whoosh AS "whoosh.wav"ăăConst AW_CENTER = &H10 'Makes the window appear to collapse inward if AW_HIDE is used or expand outward if the AW_HIDE is not used.ăConst AW_HIDE = &H10000 'Hides the window. By default, the window is shown.ăăDECLARE FUNCTION AnimateWindow Lib "user32" Alias "AnimateWindow"(ByVal hwnd As Long, ByVal dwTime As Long, ByVal dwFlags As Long) As IntegerăDECLARE FUNCTION SetFocus LIB "USER32" ALIAS "SetFocus" (HWnd AS LONG) AS LONGăDECLARE FUNCTION PaintDesktop LIB "USER32" ALIAS "PaintDesktop" (HDC AS INTEGER) AS INTEGERăDECLARE FUNCTION GetDC LIB "USER32" ALIAS "GetDC" (HWND AS INTEGER) AS INTEGERăDECLARE SUB SetWindowPos Lib "User32" ALIAS "SetWindowPos"(hWnd As Long,hWndInsertAfter As Long,X As Long,Y As Long,cx As Long,cy As Long,wFlags As Long)ăDECLARE SUB PseudoMiniăDECLARE SUB Animate(Handle AS INTEGER)ăDECLARE SUB Deanimate(Handle AS INTEGER)ăDECLARE SUB CloseNoteProductFormăDECLARE SUB CloseDaysăDECLARE SUB ShowNotesăDECLARE SUB NotesShowăDECLARE SUB EMailMeăDECLARE SUB SendMeăDECLARE SUB TopMostăDECLARE SUB GetMonth(monthtocheck AS STRING)ăDECLARE SUB GetDay(daytocheck AS STRING)ăDECLARE SUB NewDăDECLARE SUB preNew_DateăDECLARE SUB New_Date(key AS BYTE)ăDECLARE SUB DaysDifference(key AS BYTE)ăDECLARE SUB preDaysDifferenceăDECLARE FUNCTION GetAOdays AS INTEGERăDECLARE FUNCTION GetOdays AS INTEGERăDECLARE SUB TransDaysLeftăDECLARE SUB TransDaysRightăDECLARE SUB TransDateUpăDECLARE SUB TransDateDnăDECLARE SUB DayTodayRtăDECLARE SUB DayTodayLtăDECLARE SUB InitializeăDECLARE SUB YearsMonthsăDECLARE SUB TimeăDECLARE SUB NightsăDECLARE SUB NoisemakerăDECLARE SUB TodayăDECLARE SUB CalendarăDECLARE SUB CloseCalendarăDECLARE SUB PopMonthsăDECLARE SUB MonthChanged(Sender AS QMENUITEM)ăDECLARE SUB YearChanged(key AS BYTE)ăDECLARE SUB DayChanged(Sender AS QCOOLBTN)ăDECLARE SUB BlinkăDECLARE SUB LoopColorăDECLARE SUB CalendarColorăDECLARE SUB UpDownYearăDECLARE SUB PaintFormăDECLARE SUB PanelColorsăDECLARE SUB ButtonColorăDECLARE SUB ImageFilesăăDEFWORD buttcolor,monthnow, monththen, monthchecked, yearnow, yearthen, betyearsăDEFBYTE ccolorcount,blinking,soundoff,juston,colorcount,countyrsmos,leapnow, leapthen, bleap, circa, weekday, fmonth, emonth, pmonth, todate, alwaysăDEFINT totyears, totmonths, byear, bmonth, bleapyear, yearhence, AOyears, fyear, eyear, pyearăDEFINT Bdays, rundays, edays, otherdays, totdays, yeardays,Odays, AOdays, diffdays, betleaps, daynow, daythen, AdaysăDEFINT lastColor, fday, eday, pday, neweday, newpday, monthdays, daysthence, dayshence, bday, daysăDEFSTR PreWeeksPanel$, wday$, month$, thedate$, inifile, iDir, image0, image1, image2, image3, image4, image5ăăConst HWND_TOPMOST = -1ăConst HWND_NOTOPMOST = -2ăConst SWP_NOSIZE = &H1ăConst SWP_NOMOVE = &H2ăă'CONST SC_SIZE = 61440ă'CONST SC_MOVE = 61456ă'CONST SC_MINIMIZE = 61472ă'CONST SC_MAXIMIZE = 61488ă'CONST SC_CLOSE = 61536ă'CONST SC_RESTORE = 61728ăăCONST WM_SYSCOMMAND = &H0112ă'CONST WM_SIZING = 532ă'CONST WM_MOVING = 534ăăCREATE Arial8B AS QFONTă  Name = "Arial"ă  Size = 8ă  AddStyles(fsBold)ăEND CREATEăăCREATE Arial10B AS QFONTă  Name = "Arial"ă  Size = 10ă  AddStyles(fsBold)ăEND CREATEăăCREATE Arial9B AS QFONTă  Name = "Arial"ă  Size = 12ă  AddStyles(fsBold)ăEND CREATEăăCREATE TimeFont AS QFONTă  Name = "Univers"ă  Color = clGreenă  Size = 12ă  AddStyles(fsBold)ăEND CREATEăăCREATE ArialY10 AS QFONTă  Name = "Arial"ă  Size = 10ă  Color = &HFFFFF 'HGFCCC '&HBCCCă  AddStyles = fsBoldăEND CREATEăăCREATE ArialP10 AS QFONTă  Name = "Arial"ă  Size = 10ă  Color = clPurpleă  AddStyles = fsBoldăEND CREATEăăCREATE ArialB10 AS QFONTă  Name = "Arial"ă  Size = 10ă  Color = clBlueă  AddStyles = fsBoldăEND CREATEăăCREATE ArialG10 AS QFONTă  Name = "Arial"ă  Size = 10ă  Color = clGreenă  AddStyles = fsBoldăEND CREATEăăCREATE Timer1 AS QTIMERă  Enabled = 1ă  Interval = 1000ă  OnTimer = TimeăEND CREATEăăCREATE Timer2 AS QTIMERă  Enabled = 0ă  Interval = 1ă  OnTimer = NotesShowăEND CREATEăăCREATE Timer3 AS QTIMERă  Enabled = 1ă  Interval = 80ă  OnTimer = LoopColorăEND CREATE  ăCREATE DaysDates AS QFORMă  Width = 497 '500ă  Height = 260ă  Centeră  WndProc = PaintFormă  OnClose = CloseDaysă  CREATE NewDForm AS QPANELă    Caption = "New Date"ă    Top = 20 '10ă    Left = 10 '5ă    Width = 230 '237ă    Height = 195 '205ă    Cursor = -21ă    ShowHint = 1ă    Hint = "Click to change the backdrop."ă    OnClick = PanelColorsă  'CREATE NewDImage AS QIMAGEă    'Autosize = 1ă    'Align = alClientă    'Left = 10ă    'OnClick = CalendarColoră  'END CREATEă    CREATE Month AS QEDITă      Text = LEFT$(DATE$,2)ă      Left = 10ă      Top = 5ă      Width = 65ă      TabOrder = 1ă      OnKeyPress = New_Dateă    END CREATE    ă    CREATE Day AS QEDITă      Text = MID$(DATE$,4,2)ă      Left = 82ă      Top = 5ă      Width = 65ă      TabOrder = 2ă      OnKeyPress = New_Dateă    END CREATEă    CREATE Year AS QEDITă      Text = RIGHT$(DATE$,4)ă      Left = 154ă      Top = 5ă      Width = 65ă      TabOrder = 3ă      OnKeyPress = New_Dateă    END CREATEă    CREATE DayThence AS QEDITă      Text = "Days past"ă      Left = 10ă      Top = 30ă      Width = 65ă      TabOrder = 4ă      OnKeyPress = New_Date ă    END CREATEă    CREATE SNotes AS QLABELă      Alignment = taCenteră      Layout = tlCenteră      LabelStyle = 1ă      Caption = "NOTES"ă      Left = 82ă      Top = 31ă      Width = 65ă      Height = 19ă      Color = clWhiteă      Hint = "Click to know more about Days"ă      ShowHint = 1ă      OnClick = ShowNotesă    END CREATE      ă    CREATE DayHence AS QEDITă      Text = "Days hence"ă      Left = 154ă      Top = 30ă      Width = 65ă      TabOrder = 5ă      OnKeyPress = New_Dateă    END CREATE      ă    CREATE DateButt AS QBUTTONă      Font = Arial9Bă      Caption = "New Date"ă      Left = 10ă      Top = 65ă      Width = 210ă      Height = 25ă      Cursor = -21ă      Hint = "Click to get new date"ă      ShowHint = 1ă      OnClick = preNew_Dateă    END CREATEă    CREATE DatePanel AS QPANELă      Left = 10ă      Top = 90ă      Width = 210ă      Color = Blackă      Font = TimeFontă      Caption = "The new date"ă      Hint = "Click to send date to the Clipboard\nand the Days Difference lower row.\nDouble-click to send to upper row."ă      ShowHint = 1ă      Cursor = -21ă      OnClick = TransDateDnă      OnDblClick = TransDateUp ă    END CREATEă    CREATE WeekdayPanel AS QPANELă      Left = 10ă      Top = 130ă      Width = 210ă      Color = Blackă      Font = TimeFontă      Caption = "Day of the week"ă      Hint = "Click to post today's date on the upper row."ă      ShowHint = 1ă      Cursor = -21ă      OnClick = DayTodayLt     ă    END CREATEă    CREATE Cal AS QOVALBTNă      Left = 105ă      Top = 172ă      Height = 20ă      Width = 20ă      Flat = 1ă      Down = 1ă      Hint = "Click to bring up the calendar."ă      ShowHint = 1ă      Cursor = -12ă      OnClick = Calendar ă    END CREATE        ă  END CREATEă  CREATE DaysDForm AS QPANELă    Caption = "Days Difference"ă    Top = 20 '10ă    Left = 250ă    Width = 230 '237ă    Height = 195 '205ă    Cursor = -21    ă    Hint = "Click to change the backdrop."ă    ShowHint = 1ă    OnClick = TopMostă    'CREATE DaysDImage AS QIMAGEă      'Autosize = 1ă      'Align = alClientă      'Left = 10ă      'OnClick = CalendarColoră    'END CREATEă    CREATE Month1 AS QEDITă      Text = LEFT$(DATE$,2)ă      Left = 10ă      Top = 5ă      Width = 65ă      TabOrder = 1ă      OnKeyPress = DaysDifferenceă    END CREATE    ă    CREATE Day1 AS QEDITă      Text = MID$(DATE$,4,2)ă      Left = 82ă      Top = 5ă      Width = 65ă      TabOrder = 2ă      OnKeyPress = DaysDifferenceă    END CREATEă    CREATE Year1 AS QEDITă      Text = RIGHT$(DATE$,4)ă      Left = 154ă      Top = 5ă      Width = 65ă      TabOrder = 3ă      OnKeyPress = DaysDifferenceă    END CREATEă    CREATE Month2 AS QEDITă      Text = "End month"ă      Left = 10ă      Top = 30ă      Width = 65ă      TabOrder = 4ă      OnKeyPress = DaysDifferenceă    END CREATEă    CREATE Day2 AS QEDITă      Text = "End day"ă      Left = 82ă      Top = 30ă      Width = 65ă      TabOrder = 5ă      OnKeyPress = DaysDifferenceă    END CREATEă    CREATE Year2 AS QEDITă      Text = "End year"ă      Left = 154ă      Top = 30ă      Width = 65ă      TabOrder = 6ă      OnKeyPress = DaysDifferenceă    END CREATEă    CREATE DaysButt AS QBUTTONă      Font = Arial9Bă      Caption = "Days Difference"ă      Left = 10ă      Top = 65ă      Width = 210ă      Height = 25ă      Cursor = -21ă      Hint = "Click to get the difference in days between the dates"ă      ShowHint = 1      ă      OnClick = preDaysDifferenceă    END CREATEă    CREATE DaysPanel AS QPANELă      Left = 10ă      Top = 90ă      Width = 210ă      Color = Blackă      Font = TimeFontă      Caption = "Difference in days"ă      Hint = "Click to send result to the Clipboard \nand to Days-past on the left.\nDouble-click to send to Days-hence,\nalso on the left."ă      ShowHint = 1ă      Cursor = -21ă      OnClick = TransDaysLeftă      OnDblClick = TransDaysRight      ă    END CREATEă    CREATE WeeksPanel AS QPANELă      Left = 10ă      Top = 130ă      Width = 210ă      Color = Blackă      Font = TimeFontă      Caption = "Difference in weeks"ă      Hint = "Click to cycle through weeks, months and years."ă      ShowHint = 1ă      Cursor = -21ă      OnClick = YearsMonths    ă    END CREATEă    CREATE Noise AS QOVALBTNă      Left = 105ă      Top = 172ă      Height = 20ă      Width = 20ă      Flat = 1ă      Down = 1ă      Hint = "Click to turn on/off sound effects."ă      ShowHint = 1ă      Cursor = -12ă      OnClick = Noisemakeră    END CREATE                              ă  END CREATEă  CREATE NoteProductForm AS QFORM    ă    Top = Screen.Height/2 + 25ă    Left = Screen.Width/2 - 170ă    Width = 340 '320ă    Height = 205ă    Color = &HCC000 '&HABC777ă    BorderStyle = 1ă    DelBorderIcons(biMaximize)ă    DelBorderIcons(biMinimize)ă    BorderStyle = bsSingleă    FormStyle = fsStayOnTopă    Caption = "Notes on Days"ă    OnClose = CloseNoteProductFormă    CREATE DXNotes AS QCANVASă      Top = 21ă      Left = 242ă      Height = 63ă      Width = 84ă      Color = 0ă      Cursor = -21ă      Hint = "Click to email comment or bug report."ă      Showhint = 1ă      OnClick = EmailMeă    END CREATEă    CREATE ProductList AS QLISTBOXă	Width = 232ă      Height = 177ă      AddItems ""ă      AddItems "Welcome!ă      AddItems ""ă      AddItems "  »  Days runs best on Pentium-class  ă      AddItems "      machines with Windows 98 or better.ă      AddItems "      (It will run on older 486 PCsă      AddItems "      on Windows 95 but will show a ă      AddItems "      harmless incompatibility message.ă      AddItems "      Just ignore it.)ă      AddItems ""ă      AddItems "  »  Days is an easy-to-use date  ă      AddItems "      calculator and calendar that cană      AddItems "      easily calculate the differenceă      AddItems "      in days, weeks, months or years ă      AddItems "      between two dates or get the date ă      AddItems "      in the future or past given the ă      AddItems "      number of days from any specified ă      AddItems "      date.ă      AddItems ""ă      AddItems "  »  To use Days, just follow the hintsă      AddItems "      attached to each button, panel oră      AddItems "      display. Days doesn't use menus.ă      AddItems ""ă      AddItems "  »  Days has two panels: the left oneă      AddItems "      calculates new dates; the right ă      AddItems "      one, days difference.ă      AddItems ""ă      AddItems "  »  To get a new date in the past from,ă      AddItems "      say, today, enter the number ă      AddItems "      of days in the Days-past (left)ă      AddItems "      field. Conversely, to get a futureă      AddItems "      date, enter the number of daysă      AddItems "      in the Days-hence (right) field.ă      AddItems ""ă      AddItems "  »  To get the day of the week of anyă      AddItems "      date, just input the date in the ă      AddItems "      upper row of the left panel and ă      AddItems "      press Enter or click New Date.ă      AddItems ""ă      AddItems "  »  If both Days-past and Days-hence ă      AddItems "      are filled, Days calculates for ă      AddItems "      days past.ă      AddItems ""ă      AddItems "  »  To calculate the difference betweenă      AddItems "      two dates, you must fill in six ă      AddItems "      fields, three to each row. The first ă      AddItems "      field on either row is for the month;  ă      AddItems "      the second, for the day; the third, ă      AddItems "      for the year.ă      AddItems ""                                                                                                         ă      AddItems "  »  You can use either numbers or wordsă      AddItems "      (e.g. 01, 1, Jan, jan., january), ă      AddItems "      the calculator will know what to do. ă      AddItems "      The year, however, must be written ă      AddItems "      in full and in numbers.ă      AddItems ""                                                                                                         ă      AddItems "  »  Press Enter while in any of the ă      AddItems "      fields or click on the appropriate  ă      AddItems "      button to get the answer.ă      AddItems ""ă      AddItems "  »  Click The-new-date panel to send the ă      AddItems "      new date to the lower-row fields of ă      AddItems "      Days Difference and the Clipboard.  ă      AddItems "      Double-click to send the new date ă      AddItems "      to the upper row.     ă      AddItems ""ă      AddItems "  »  Click the Difference-in-days panel  ă      AddItems "      to send the result to the Days-pastă      AddItems "      field and also to the Clipboard.  ă      AddItems "      Double-click to send it to the ă      AddItems "      Days-hence field.     ă      AddItems ""ă      AddItems "  »  Clicking on the Day-of-the-week   ă      AddItems "      posts the current date on the left ă      AddItems "      upper-row field. Clicking on the   ă      AddItems "      Weeks panel cycles through the   ă      AddItems "      number of weeks, months and years.ă      AddItems ""                                                                                                                            ă      AddItems "  »  Theoretically, Days can calculate ă      AddItems "      dates from Year 0 to Year 65000, a ă      AddItems "      span of over 23 million days. For aă      AddItems "      meaningful result, however, confine ă      AddItems "      dates to after September 14, 1752-- ă      AddItems "      the day our calendar, the Gregorian, ă      AddItems "      was last significantly amended and  ă      AddItems "      the day it was adopted by Britain.                                                                            ă      AddItems ""ă      AddItems "  »  You can change the calendar's ă      AddItems "      backdrop by clicking on the buttonă      AddItems "      marked B. You can cycle through ă      AddItems "      six backdrops by repeatedlyă      AddItems "      clicking on the backdrop. You can ă      AddItems "      even substitute your own images for ă      AddItems "      the supplied backdrops by clicking ă      AddItems "      on the background then selecting ă      AddItems "      an appropriate image file stored ă      AddItems "      in your computer. Remember to use ă      AddItems "      only images that are at least  ă      AddItems "      210 pixels wide x 200 pixels high.ă      AddItems ""ă      AddItems "  »  You can put Days always on top ă      AddItems "      by clicking on the green backdrop ă      AddItems "      on the right.ă      AddItems ""ă      AddItems "  »  Days remembers your preferences--ă      AddItems "      no need to readjust your settings ă      AddItems "      each time you use it.ă      AddItems ""ă      AddItems "  »  Click the round depression at theă      AddItems "      bottom of the left panel to accessă      AddItems "      Days' perpetual calendar.ă      AddItems ""ă      AddItems "  »  Using the calendar is straightforward.ă      AddItems "      To change the month, click on the ă      AddItems "      Month panel, then select the month. ă      AddItems "      To change the year, select the Yeară      AddItems "      panel, then type in the new year.ă      AddItems "      Or you can use the arrow-left oră      AddItems "      arrow-right button to change theă      AddItems "      year entry one year at a time.ă      AddItems "      To change the day, simply click onă      AddItems "      the appropriate button.ă      AddItems ""          ă      AddItems "Programming"ă      AddItems "  »  Days was written in Rapid-Q, a"ă      AddItems "      computer language developed by "ă      AddItems "      William Yu. It's also freeware at"ă      AddItems "      www.basicguru.com/abc/rapidq."   ă    END CREATEă    CREATE NotesP0 AS QLABELă      Top = 3ă      Left = 255ă      Width = 84ă      Font = Arial10Bă      Caption = "Days 2.61"      ă      Alignment = taCenteră      Layout = -1ă      LabelStyle = 1ă      OnClick = SendMeă      Hint = "Click to go to website"ă      ShowHint = 1ă    END CREATEă    CREATE NotesP1 AS QLABELă      Top = 85ă      Left = 235ă      Caption = "  Copyright (c) 2001\n    Achilles B. Mina\n\nThis is FREEWARE.\n Not for commercial\n       distribution."ă    END CREATEă  END CREATEă  CREATE CalendarForm AS QFORMă    Visible = 0ă    Caption = "Days"ă    Width = 216ă    Height = 224ă    Centeră    BorderStyle = 1ă    FormStyle = fsStayOnTopă    DelBorderIcons(biMaximize)ă    DelBorderIcons(biMinimize)ă    Hint = "Click background to look for a new backdrop image file."ă    ShowHint = 1ă    OnClose = CloseCalendară    'CREATE Backglass AS QIMAGEă      'Autosize = 1ă      'Align = alClientă      'OnClick = ImageFilesă    'END CREATEă    CREATE CDay1 AS QCOOLBTNă      Caption = "1"ă      Left = 7ă      Top = 71ă      Width = 27ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay8 AS QCOOLBTNă      Caption = "8"ă      Left = 7ă      Top = 96ă      Width = 27ă      Flat = 1ă      OnClick = DayChanged  ă    END CREATEă    CREATE CDay15 AS QCOOLBTNă      Caption = "15"ă      Left = 7ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay29 AS QCOOLBTNă      Caption = "29"ă      Left = 7ă      Top = 169ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay22 AS QCOOLBTNă      Caption = "22"ă      Left = 7ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay9 AS QCOOLBTNă      Caption = "9"ă      Left = 35ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay2 AS QCOOLBTNă      Caption = "2"ă      Left = 35ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay16 AS QCOOLBTNă      Caption = "16"ă      Left = 35ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay30 AS QCOOLBTNă      Caption = "30"ă      Left = 35ă      Top = 169ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay23 AS QCOOLBTNă      Caption = "23"ă      Left = 35ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay10 AS QCOOLBTNă      Caption = "10"ă      Left = 63ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay3 AS QCOOLBTNă      Caption = "3"ă      Left = 63ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay17 AS QCOOLBTNă      Caption = "17"ă      Left = 63ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay31 AS QCOOLBTNă      Caption = "31"ă      Left = 63ă      Top = 169ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay24 AS QCOOLBTNă      Caption = "24"ă      Left = 63ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay11 AS QCOOLBTNă      Caption = "11"ă      Left = 91ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay4 AS QCOOLBTNă      Caption = "4"ă      Left = 91ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay18 AS QCOOLBTNă      Caption = "18"ă      Left = 91ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay25 AS QCOOLBTNă      Caption = "25"ă      Left = 91ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay12 AS QCOOLBTNă      Caption = "12"ă      Left = 119ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay5 AS QCOOLBTNă      Caption = "5"ă      Left = 119ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay19 AS QCOOLBTNă      Caption = "19"ă      Left = 119ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay26 AS QCOOLBTNă      Caption = "26"ă      Left = 119ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay13 AS QCOOLBTNă      Caption = "13"ă      Left = 147ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay6 AS QCOOLBTNă      Caption = "6"ă      Left = 147ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay20 AS QCOOLBTNă      Caption = "20"ă      Left = 147ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay27 AS QCOOLBTNă      Caption = "27"ă      Left = 147ă      Top = 144ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay14 AS QCOOLBTNă      Caption = "14"ă      Left = 175ă      Top = 96ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay7 AS QCOOLBTNă      Caption = "7"ă      Left = 175ă      Top = 71ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay21 AS QCOOLBTNă      Caption = "21"ă      Left = 175ă      Top = 120ă      Width = 27 ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE CDay28 AS QCOOLBTNă      Caption = "28"ă      Left = 175ă      Top = 144ă      Width = 27ă      Flat = 1ă      OnClick = DayChanged ă    END CREATEă    CREATE BackdropButt AS QOVALBTNă      Caption = "B"ă      Left = 175ă      Top = 169ă      Height = 25ă      Width = 27ă      Flat = 1ă      Layout = -1ă      Font = Arial8Bă      Hint = "Click to change the backdrop."ă      ShowHint = 1ă      OnClick = CalendarColoră    END CREATEă    CREATE ColorButt AS QOVALBTNă      Caption = "C"ă      Left = 147ă      Top = 169ă      Height = 25ă      Width = 27ă      Flat = 1ă      Layout = -1ă      Font = Arial8Bă      Hint = "Click to change dates color."ă      ShowHint = 1ă      OnClick = ButtonColoră    END CREATEă    CREATE DayButt AS QOVALBTNă      Left = 147ă      Top = 144ă      Height = 25ă      Width = 27ă      Color = clGreenă      Flat = 1ă      Layout = -1ă      Hint = "Click to switch on/off blinking highlight."ă      ShowHint = 1      ă      OnClick = Blinkă    END CREATEă    CREATE MonthsPop AS QPOPUPMENUă      CREATE Jan AS QMENUITEMă        Caption = "January"ă        OnClick = MonthChangedă      END CREATEă      CREATE Feb AS QMENUITEMă        Caption = "February"ă        OnClick = MonthChangedă      END CREATEă      CREATE Mar AS QMENUITEMă        Caption = "March"ă        OnClick = MonthChangedă      END CREATEă      CREATE Apr AS QMENUITEMă        Caption = "April"ă        OnClick = MonthChangedă      END CREATEă      CREATE May AS QMENUITEMă        Caption = "May"ă        OnClick = MonthChangedă      END CREATEă      CREATE Jun AS QMENUITEMă        Caption = "June"ă        OnClick = MonthChangedă      END CREATEă      CREATE Jul AS QMENUITEMă        Caption = "July"ă        OnClick = MonthChangedă      END CREATEă      CREATE Aug AS QMENUITEMă        Caption = "August"ă        OnClick = MonthChangedă      END CREATEă      CREATE Sep AS QMENUITEMă        Caption = "September"ă        OnClick = MonthChangedă      END CREATEă      CREATE Oct AS QMENUITEMă        Caption = "October"ă        OnClick = MonthChangedă      END CREATEă      CREATE Nov AS QMENUITEMă        Caption = "November"ă        OnClick = MonthChangedă      END CREATEă      CREATE Dece AS QMENUITEMă        Caption = "December"ă        OnClick = MonthChangedă      END CREATE     ă    END CREATEă    CREATE MoYe AS QPANELă      Left = 6ă      Top = 4ă      Width = 197ă      Height = 34ă      BevelInner = 1ă      BorderStyle = 0ă      CREATE CMonth AS QPANELă        Top = 5ă        Left = 4ă        Height = 24ă        Width = 95ă        Color = &H00FF00ă        Font = Arial9Bă        BevelOuter = bvNoneă        BevelInner = bvLoweredă        Alignment = taLeftă        Hint = "Click then select month of choice."ă        ShowHint = 1ă        OnClick = PopMonthsă      END CREATEă      'CREATE Increase AS QCOOLBTNă      '  Top = 5ă      '  Left = 100ă      '  Width = 26ă      '  Height = 12ă      '  Flat = 1ă      '  Font = Arial9Bă      '  Caption = ">"ă      '  Hint = "Go up one year."ă      '  ShowHint = 1ă      '  OnClick = UpdownYeară      'END CREATEă      'CREATE Decrease AS QCOOLBTNă      '  Top = 17ă      '  Left = 100ă      '  Width = 26ă      '  Height = 12ă      '  Flat = 1ă      '  Font = Arial9Bă      '  Caption = "<"ă      '  Hint = "Go down one year."ă      '  ShowHint = 1ă      '  OnClick = UpdownYeară      'END CREATEă      CREATE UpDownYr AS QSCROLLBARă        Kind = 0ă        Top = 5ă        Left = 101ă        Width = 24ă        Height = 24ă        Hint = "Click left or right to change years."ă        ShowHint = 1ă        Min = 0ă        Max = 65000ă        Position = VAL(Year.Text)ă        OnChange = UpDownYeară      END CREATEă      CREATE CYear AS QEDITă        Top = 5ă        Left = 126ă        Height = 24ă        Width = 66ă        Autosize = 0ă        Color = &H00FF00ă        Font = Arial9Bă        Hint = "Click then type in new year."ă        ShowHint = 1ă        OnKeyPress = YearChangedă      END CREATEă    END CREATEă    CREATE One AS QPANELă      Left = 7ă      Top = 42ă      Caption = "Sun"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click to show today's date"ă      Showhint = 1ă      OnClick = Todayă    END CREATEă    CREATE Two AS QPANELă      Left = 35ă      Top = 42ă      Caption = "Mon"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click to show today's date"ă      Showhint = 1ă      OnClick = Todayă    END CREATEă    CREATE Three AS QPANELă      Left = 63ă      Top = 42ă      Caption = "Tue"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click to show today's date"ă      Showhint = 1ă      OnClick = Todayă    END CREATEă    CREATE Four AS QPANELă      Left = 91ă      Top = 42ă      Caption = "Wed"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click to show today's date"ă      Showhint = 1ă      OnClick = Todayă    END CREATEă    CREATE Five AS QPANELă      Left = 119ă      Top = 42ă      Caption = "Thu"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click to show today's date"ă      Showhint = 1ă      OnClick = Todayă    END CREATEă    CREATE Six AS QPANELă      Left = 147ă      Top = 42ă      Caption = "Fri"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click to show today's date"ă      Showhint = 1ă      OnClick = Todayă    END CREATEă    CREATE Seven AS QPANELă      Left = 175ă      Top = 42ă      Caption = "Sat"ă      Width = 27ă      Height = 25ă      BevelOuter = 1ă      Hint = "Click to show today's date"ă      Showhint = 1ă      OnClick = Todayă    END CREATEă  END CREATE  ăEND CREATEăăSUB Initializeă  RANDOMIZEă  IF FILEEXISTS("days.ini") <> 0 THENă    DIM File AS QFILESTREAMă    File.Open("days.ini",fmOpenReadWrite)ă    inifile = File.ReadStr(File.Size)ă    File.Closeă  END IFă  colorcount = VAL(LEFT$(inifile,1))ă  always = VAL(MID$(inifile,2,1))ă  soundoff = VAL(MID$(inifile,3,1))ă  blinking = VAL(MID$(inifile,4,1))ă  ccolorcount = VAL(MID$(inifile,5,1))ă  buttcolor = VAL(MID$(inifile,6,1))ă  whereC = INSTR(7,inifile,CHR$(13))ă  DayButt.Color = VAL(MID$(inifile,7,(whereC-1)-6))  ă  where0 = INSTR(inifile,"0 =")ă  where0E = INSTR(where0,inifile,CHR$(13))ă  image0 = MID$(inifile,where0+3,(where0E-1)-(where0+2))ă  where1 = INSTR(inifile,"1 =")ă  where1E = INSTR(where1,inifile,CHR$(13))ă  image1 = MID$(inifile,where1+3,(where1E-1)-(where1+2))ă  where2 = INSTR(inifile,"2 =")ă  where2E = INSTR(where2,inifile,CHR$(13))ă  image2 = MID$(inifile,where2+3,(where2E-1)-(where2+2))ă  where3 = INSTR(inifile,"3 =")ă  where3E = INSTR(where3,inifile,CHR$(13))ă  image3 = MID$(inifile,where3+3,(where3E-1)-(where3+2))ă  where4 = INSTR(inifile,"4 =")ă  where4E = INSTR(where4,inifile,CHR$(13))ă  image4 = MID$(inifile,where4+3,(where4E-1)-(where4+2))ă  where5 = INSTR(inifile,"5 =")ă  where5E = INSTR(where5,inifile,CHR$(13))ă  image5 = MID$(inifile,where5+3,(where5E-1)-(where5+2))ă  IF RTRIM$(image0) = "" THEN image0 = "00.bmp"ă  IF RTRIM$(image1) = "" THEN image1 = "10.bmp"ă  IF RTRIM$(image2) = "" THEN image2 = "20.bmp"ă  IF RTRIM$(image3) = "" THEN image3 = "30.bmp"ă  IF RTRIM$(image4) = "" THEN image4 = "40.bmp"ă  IF RTRIM$(image5) = "" THEN image5 = "50.bmp"ă  IF soundoff = 0 THEN PLAYWAV(clocktow,1)ă  'Application.IcoHandle = DaysIcoă  Application.HintShortPause = 25ă  Application.HintPause = 25ă  Application.HintHidePause = 12000ă  PanelColorsă  ButtonColoră  CalendarColoră  juston = 1ă  'DayTodayLtă  New_Date(13)ă  dayname$ = "(" + wday$ - "!" + ")"ă  thedate$ = month$ + " " + STR$(fday) + ", " + STR$(fyear) + " " + dayname$ + " "ă  TimeăEND SUBăăSUB Timeă  DEFINT milhour, hour, mină  hour =  VAL(LEFT$(TIME$,2))ă  min = VAL(MID$(TIME$,4,2))     ă  milhour = houră  IF hour >= 12 AND hour < 24 THENă    hour = hour - 12ă    IF hour = 0 THEN hour = 12ă    ampm$ = " PM"ă  ELSEIF hour = 0 THEN ă    hour = 12ă    ampm$ = " AM"ă  ELSEă    ampm$ = " AM"ă  END IFă  IF min < 10 THENă    IF military = 1 THENă      DaysDates.Caption = thedate$ + STR$(milhour) + ":0" + STR$(min) + RIGHT$(TIME$,3)ă    ELSEă      thetime$ = STR$(hour) + ":0" + STR$(min) + RIGHT$(TIME$,3) + ampm$ă      spaceCap$ = SPACE$((64 - LEN("Days" + thedate$ + thetime$))*.875)ă      DaysDates.Caption = "Days" + spaceCap$ + thedate$ + thetime$ă    END IFă  ELSEă    IF military = 1 THENă      DaysDates.Caption = thedate$ + TIME$ă    ELSEă      thetime$ = STR$(hour) + ":" + STR$(min) + RIGHT$(TIME$,3) + ampm$ă        spaceCap$ = SPACE$((64 - LEN("Days" + thedate$ + thetime$))*.875)ă      DaysDates.Caption = "Days" + spaceCap$ + thedate$ + thetime$ă    END IFă  END IFăEND SUBăăSUB preNew_Dateă  New_Date(13)ăEND SUBăăSUB New_Date(key AS BYTE)ă  IF key <> 13 THEN EXIT SUBă  IF soundoff = 0 THEN PLAYWAV(whoosh,1)ă  byear = VAL(REPLACESUBSTR$(Year.Text,",",""))ă  GetMonth(Month.Text)ă  bmonth = monthcheckedă  bday = VAL(Day.Text)ă  dayshence = VAL(REPLACESUBSTR$(DayHence.Text,",",""))ă  daysthence = VAL(REPLACESUBSTR$(DayThence.Text,",",""))ă  IF daysthence = 0 THENă    eday = bdayă    eyear = byeară    emonth = bmonth                       ă    SELECT CASE emonthă      CASE 1,3,5,7,8,10,12ă        monthdays = 31ă      CASE 4,6,9,11ă        monthdays = 30ă      CASE 2ă        IF eyear MOD 4 = 0 THENă          leapday = 1ă          IF eyear MOD 100 = 0 AND eyear MOD 400 <> 0 THEN leapday = 0ă        ELSE ă          leapday = 0ă        END IF  ă        monthdays = 28 + leapdayă    END SELECTă    totdays = eday + dayshenceă    IF monthdays >= totdays THENă      fday = totdaysă    ELSE    ă      neweday = monthdays   ă      DOă        INC emonthă        IF emonth = 13 THENă          emonth = 1ă          INC eyeară        END IF  ă        SELECT CASE emonthă          CASE 1,3,5,7,8,10,12ă            monthdays = 31ă          CASE 4,6,9,11ă            monthdays = 30ă          CASE 2ă            IF eyear MOD 4 = 0 THENă              leapday = 1ă              IF eyear MOD 100 = 0 AND eyear MOD 400 <> 0 THEN leapday = 0ă            ELSE ă              leapday = 0ă            END IF  ă            monthdays = 28 + leapdayă        END SELECTă        neweday = neweday + monthdaysă      LOOP UNTIL neweday > totdaysă      DEC neweday,monthdaysă      fday = totdays - neweday ă    END IF  ă    fmonth = emonthă    fyear = eyear ă  ELSEă    pday = bdayă    pyear = byeară    pmonth = bmonth                       ă    IF daysthence < pday THENă      fday = pday - daysthenceă    ELSEă      monthdays = 0ă      newpday = pdayă      DOă        DEC pmonthă        IF pmonth = 0 THENă          pmonth = 12ă          DEC pyeară        END IF  ă        SELECT CASE pmonthă          CASE 1,3,5,7,8,10,12ă            monthdays = 31ă          CASE 4,6,9,11ă            monthdays = 30ă          CASE 2ă            IF pyear MOD 4 = 0 THENă              leapday = 1ă              IF pyear MOD 100 = 0 AND pyear MOD 400 <> 0 THEN leapday = 0ă            ELSE ă              leapday = 0ă            END IF                        ă            monthdays = 28 + leapdayă        END SELECTă        newpday = newpday + monthdaysă      LOOP UNTIL newpday > daysthenceă      fday = newpday - daysthenceă    END IFă    fmonth = pmonthă    fyear = pyeară  END IFă  IF fday = 0 THENă    SELECT CASE fmonthă      CASE 5,7,8,10,12ă        fday = 30ă        DEC fmonthă      CASE 1ă        fday = 31ă        fmonth = 12ă      CASE 2,4,6,9,11ă        fday = 31ă        DEC fmonthă      CASE 3ă        fmonth = 2ă        fday = 28ă        IF fyear MOD 4 = 0 THENă          fday = 29ă          IF fyear MOD 100 = 0 AND fyear MOD 400 <> 0 THEN fday = 28ă        END IFă    END SELECTă  END IFă  SELECT CASE fmonthă    CASE 1ă      month$ = "January"ă    CASE 2ă      month$ = "February"ă    CASE 3ă      month$ = "March"ă    CASE 4ă      month$ = "April"ă    CASE 5ă      month$ = "May"ă    CASE 6ă      month$ = "June"ă    CASE 7ă      month$ = "July"ă    CASE 8ă      month$ = "August"ă    CASE 9ă      month$ = "September"ă    CASE 10ă      month$ = "October"ă    CASE 11ă      month$ = "November"ă    CASE 12ă      month$ = "December"ă  END SELECTă  IF fyear = 0 THENă    fyear = 1ă    DatePanel.Caption = STR$(fyear) + " BC"ă  ELSEIF fyear < 0 THENă    fyear = ABS(fyear) + 1ă    DatePanel.Caption = STR$(fyear) + " BC"ă  ELSEă    IF month$ = "December" AND fday = 31 THENă      IF daysthence = 0 AND dayshence <> 0 THEN DEC fyeară    END IF                                    ă    IF thedate$ <> "" THEN DatePanel.Caption = month$ + " " + STR$(fday) + ", " + STR$(fyear)ă    circa = 1ă    DaysDifference(13)ă  END IF ăEND SUBăăSUB preDaysDifferenceă  DaysDifference(13)ăEND SUBăăSUB DaysDifference(key AS BYTE)ă  IF key <> 13 THEN EXIT SUB      ă  IF circa = 0 THENă    IF soundoff = 0 THEN PLAYWAV(whoosh,1)ă    GetMonth(Month2.text)ă    monthnow = monthcheckedă    daynow = VAL(Day2.text)ă    yearnow = VAL(Year2.text)ă    GetMonth(Month1.text)ă    monththen = monthcheckedă    daythen = VAL(Day1.text)ă    yearthen = VAL(Year1.text)ă  ELSEIF circa = 1 THENă    monthnow = fmonthă    yearnow = fyeară    daynow = fdayă    monththen = 1    ă    yearthen = 1900 'arbitrary but don't change; day-of-week algorithm uses ită    daythen = 1  ă  END IFă  IF yearnow < yearthen THENă    SWAP(yearnow,yearthen)ă    SWAP(monthnow,monththen)ă    SWAP(daynow,daythen)ă  END IFă  AOyears = yearnow - yearthenă  betyears = AOyears - 1ă  IF AOyears = 0 THENă    IF monthnow = monththen THENă      diffdays = daynow - daythenă    ELSEă      IF yearthen MOD 4 = 0 THENă        leapthen = 1ă        IF yearthen MOD 100 = 0 AND yearthen MOD 400 <> 0 THEN leapthen = 0ă      ELSE ă        leapthen = 0ă      END IFă      IF yearnow MOD 4 = 0 THENă        leapnow = 1ă        IF yearnow MOD 100 = 0 AND yearnow MOD 400 <> 0 THEN leapnow = 0ă      ELSE ă        leapnow = 0ă      END IF                ă      SELECT CASE monththenă        CASE 1ă          Adays = daythenă        CASE 2ă          Adays = 31 + daythenă        CASE 3ă          Adays = 59 + daythen + leapthenă        CASE 4ă          Adays = 90 + daythen + leapthenă        CASE 5ă          Adays = 120 + daythen + leapthenă        CASE 6ă          Adays = 151 + daythen + leapthenă        CASE 7ă          Adays = 181 + daythen + leapthenă        CASE 8ă          Adays = 212 + daythen + leapthenă        CASE 9ă          Adays = 243 + daythen + leapthenă        CASE 10ă          Adays = 273 + daythen + leapthenă        CASE 11ă          Adays = 304 + daythen + leapthenă        CASE 12ă          Adays = 334 + daythen + leapthen    ă      END SELECTă      diffdays = GetOdays - Adaysă    END IFă  ELSEIF AOyears = 1 THENă    diffdays = GetAOdaysă  ELSEă    betleaps = 0 'betyears \ 4ă    trialyear = yearthen + 1ă    DOă      IF trialyear MOD 4 = 0 THENă        INC betleapsă        IF trialyear MOD 100 = 0 AND trialyear MOD 400 <> 0 THEN DEC betleapsă      END IFă      INC trialyeară    LOOP UNTIL trialyear = yearnowă    diffdays = (betyears*365) + GetAOdays + betleapsă    'showmessage(str$((betyears*365)) + " " + str$(GetAOdays) +" " + str$(betleaps))   ă  END IF  ă  IF circa = 1 THENă    circa = 0ă    IF fday = 0 OR fmonth = 0 OR fyear = 0 THENă      todate = 8ă    ELSEă      todate = diffdays MOD 7    ă    END IFă    IF fyear < VAL(RIGHT$(DATE$,4)) THENă      past = 1ă    ELSEIF fyear = VAL(RIGHT$(DATE$,4)) THENă      IF fmonth < VAL(LEFT$(DATE$,2)) THENă        past = 1ă      ELSEIF fmonth = VAL(LEFT$(DATE$,2)) THENă        IF fday < VAL(MID$(DATE$,4,2)) THEN past = 1ă      END IFă    END IFă    SELECT CASE todateă      CASE 0ă        wday$ = "Monday!"ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a Monday!"ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a Monday!"ă        END IFă      CASE 1ă        IF fyear < 1900 THEN ă          wday$ = "Sunday!"ă        ELSEă          wday$ = "Tuesday!"ă        END IF    ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a " + wday$ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a " + wday$ă        END IF ă      CASE 2ă        IF fyear < 1900 THEN ă          wday$ = "Saturday!"ă        ELSEă          wday$ = "Wednesday!"ă        END IF       ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a " + wday$ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a " + wday$ă        END IF  ă      CASE 3ă        IF fyear < 1900 THEN ă          wday$ = "Friday!"ă        ELSEă          wday$ = "Thursday!"ă        END IF              ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a " + wday$ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a " + wday$ă        END IF         ă      CASE 4ă        IF fyear < 1900 THEN ă          wday$ = "Thursday!"ă        ELSEă          wday$ = "Friday!"ă        END IF           ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a " + wday$ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a " + wday$ă        END IF  ă      CASE 5ă        IF fyear < 1900 THEN ă          wday$ = "Wednesday!"ă        ELSEă          wday$ = "Saturday!"ă        END IF            ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a " + wday$ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a " + wday$ă        END IF  ă      CASE 6ă        IF fyear < 1900 THEN ă          wday$ = "Tuesday!"ă        ELSEă          wday$ = "Sunday!"ă        END IF              ă        IF daysthence = 0 AND past = 0 THEN     ă          weekday$ = "It's a " + wday$ă        ELSEIF daysthence <> 0 OR past = 1 THENă          past = 0ă          weekday$ = "It was a " + wday$ă        END IF          ă      CASE ELSEă        weekday$ = "Error. Check date entry."  ă    END SELECTă    IF thedate$ <> "" THEN WeekDayPanel.Caption = weekday$ă  ELSE        ă    IF ABS(diffdays) = 1 THENă      days$ = " day"ă    ELSEă      days$ = " days"ă    END IF    ă    DaysPanel.Caption = FORMAT$("%.0n",diffdays) + days$ă    diffdays = ABS(diffdays)ă    remaindays = diffdays MOD 7ă    IF remaindays = 1 THENă      remaindays$ = " " + STR$(remaindays) + " day)"ă    ELSEIF remaindays > 1 THENă      remaindays$ = " " + STR$(remaindays) + " days)"ă    ELSEIF remaindays = 0 THENă      remaindays$ = ")"ă    ELSEă      diffdays = 0ă      remaindays$ = ")"  ă    END IFă    IF ABS(diffdays\7) = 1 THENă      weeks$ = " week"ă    ELSEă      weeks$ = " weeks"ă    END IF            ă    WeeksPanel.Caption = "(" + STR$(diffdays\7) + weeks$ + remaindays$ă    PreWeeksPanel$ = WeeksPanel.Captionă  END IFăEND SUB  ăăFUNCTION GetAOdaysă  IF yearthen MOD 4 = 0 THENă    leapthen = 1ă    IF yearthen MOD 100 = 0 AND yearthen MOD 400 <> 0 THEN leapthen = 0ă   ELSE ă    leapthen = 0ă   END IF  ă  SELECT CASE monththenă    CASE 1ă      Adays = 365 - daythen + leapthenă    CASE 2ă      Adays = 334 - daythen + leapthenă    CASE 3ă      Adays = 306 - daythen        ă    CASE 4ă      Adays = 275 - daythenă    CASE 5ă      Adays = 245 - daythenă    CASE 6ă      Adays = 214 - daythenă    CASE 7ă      Adays = 184 - daythenă    CASE 8ă      Adays = 153 - daythenă    CASE 9ă      Adays = 122 - daythenă    CASE 10ă      Adays = 92 - daythenă    CASE 11ă      Adays = 61 - daythenă    CASE 12ă      Adays = 31 - daythen      ă  END SELECTă  GetAOdays = Adays + GetOdays    ăEND FUNCTIONăăFUNCTION GetOdaysă  IF yearnow MOD 4 = 0 THENă    leapnow = 1ă    IF yearnow MOD 100 = 0 AND yearnow MOD 400 <> 0 THEN leapnow = 0ă  ELSE ă    leapnow = 0ă  END IFă  SELECT CASE monthnowă    CASE 1ă      Odays = daynowă    CASE 2ă      Odays = 31 + daynowă    CASE 3ă      Odays = 59 + daynow + leapnowă    CASE 4ă      Odays = 90 + daynow + leapnowă    CASE 5ă      Odays = 120 + daynow + leapnowă    CASE 6ă      Odays = 151 + daynow + leapnowă    CASE 7ă      Odays = 181 + daynow + leapnowă    CASE 8ă      Odays = 212 + daynow + leapnowă    CASE 9ă      Odays = 243 + daynow + leapnowă    CASE 10ă      Odays = 273 + daynow + leapnowă    CASE 11      ă      Odays = 304 + daynow + leapnowă    CASE 12ă      Odays = 334 + daynow + leapnow      ă  END SELECTă  RESULT = OdaysăEND FUNCTIONăăSUB GetMonthă  validmonth = VAL(monthtocheck)ă  IF validmonth > 12 THEN monthtocheck = STR$(validmonth MOD 12)ă  SELECT CASE LCASE$(monthtocheck)ă    CASE "1","01","jan","jan.","january"ă      monthchecked = 1ă    CASE "2","02","feb","feb.","february"ă      monthchecked = 2    ă    CASE "3","03","mar","mar.","march"ă      monthchecked = 3    ă    CASE "4","04","apr","apr.","april"ă      monthchecked = 4    ă    CASE "5","05","may.","may"ă      monthchecked = 5    ă    CASE "6","06","jun","jun.","june"ă      monthchecked = 6    ă    CASE "7","07","jul","jul.","july"ă      monthchecked = 7    ă    CASE "8","08","aug","aug.","august"ă      monthchecked = 8    ă    CASE "9","09","sep","sep.","sept","sept.","september"ă      monthchecked = 9    ă    CASE "10","oct","oct.","october"ă      monthchecked = 10    ă    CASE "11","nov","nov.","november"ă      monthchecked = 11    ă    CASE "12","dec","dec.","december"ă      monthchecked = 12     ă  END SELECTăEND SUBăăSUB TopMostă  IF always = 0 THENă    always = 1ă  ELSEIF always = 1 THENă    always = 0ă  END IF    ăEND SUBăăSUB ShowNotesă  IF soundoff = 0 THEN PLAYWAV(cuckoo,1)ă  Timer2.Enabled = 1ă  Animate(NoteProductForm.Handle)ă  NoteProductForm.Visible = 1ăEND SUBăăSUB NotesShowă  DEFSHORT yă  DXNotes.FillRect(0,0,84,63,0) ă  INC yă  IF y > 84 THEN y = 1ă  IF y < 11 THEN b$ = RIGHT$("wasaywasay",y)ă  IF y < 8 THEN a$ = RIGHT$(".com.ph",y)    ă  DXNotes.TextOut(y,y+2,a$,clGreen,clBlack)ă  DXNotes.TextOut(y+2,2,b$,clWhite,clBlack)ă  DXNotes.TextOut(1,y+16,"@i-manila",&HDDCE,clBlack)  ăEND SUBăăSUB SendMeă  IF soundoff = 0 THEN PLAYWAV(camera,1)ă  dummy = SHELL ("start http://pages.zdnet.com/wasaywasay/wasaywasay", SW_HIDE)ă  IF dummy = 0 THENă    dummy = SHELL ("start http://pages.zdnet.com/wasaywasay/wasaywasay", SW_HIDE)ă    IF dummy = 0 THENă      SHOWMESSAGE "Can't find your Start program. \nPlease go to http://pages.zdnet.com/wasaywasay/wasaywasay manually." ă    END IFă  END IFăEND SUBăăSUB EMailMeă  IF soundoff = 0 THEN PLAYWAV(camera,1)ă  dummy = SHELL("c:\windows\command\Start mailto:wasaywasay@i-manila.com.ph?Subject=Attention_Days_croaks",0)ă  IF dummy = 0 THENă    dummy = SHELL("Start mailto:wasaywasay@i-manila.com.ph?Subject=Attention_Days_croaks",0)ă    IF dummy = 0 THENă      SHOWMESSAGE "Can't find your Start program. Please do manual email instead." ă    END IFă  END IFăEND SUBăăSUB TransDaysLeftă  'DayThence.Text = STR$(diffdays) - diffdays has an intermediate valueă  DayThence.Text = LEFT$(DaysPanel.Caption,INSTR(DaysPanel.Caption," ")-1)ă  Clipboard.Text = DayThence.Text ăEND SUBăăSUB TransDaysRightă  'DayHence.Text = STR$(diffdays) - diffdays has an intermediate valueă  DayHence.Text = LEFT$(DaysPanel.Caption,INSTR(DaysPanel.Caption," ")-1)ăEND  SUBăăSUB TransDateUpă  Day1.Text = STR$(fday)ă  Month1.Text = STR$(fmonth) ă  Year1.Text = STR$(fyear)ăEND SUBăăSUB TransDateDnă  Day2.Text = STR$(fday)ă  Month2.Text = STR$(fmonth) ă  Year2.Text = STR$(fyear)ă  Clipboard.Text = DatePanel.CaptionăEND SUBăăSUB DayTodayLtă  Day.Text = MID$(DATE$,4,2)ă  Month.Text = LEFT$(DATE$,2)ă  Year.Text = RIGHT$(DATE$,4)ăEND SUBăă'SUB DayTodayRtă'  Day1.Text = MID$(DATE$,4,2)ă'  Month1.Text = LEFT$(DATE$,2)ă'  Year1.Text = RIGHT$(DATE$,4)ă'END SUBăăSUB YearsMonthsă  totweeks = INT(diffdays/7)ă  inttotyears = (diffdays - 366*betleaps)/365 + 366*betleaps/366ă  totyears = FIX(inttotyears)ă  totmonths = 12*FIX(inttotyears) + CEIL(12*FRAC(inttotyears))ă  INC countyrsmosă  IF countyrsmos = 5 THEN countyrsmos = 1ă  SELECT CASE countyrsmosă    CASE 1ă      yrsmos$ = STR$(totmonths)ă      unit$ = " months"ă    CASE 2ă      yrsmos$ = STR$(totyears)ă      unit$ = " years"ă    CASE 3ă      yrsmos$ = STR$(totweeks)ă      unit$ = " weeks"ă  END SELECTă  IF countyrsmos = 4 THENă    WeeksPanel.Caption = PreWeeksPanel$ă  ELSEă    IF VAL(yrsmos$) <= 1 THEN unit$ = unit$ - "s"ă    WeeksPanel.Caption = "(" + yrsmos$ + unit$ + ")"ă  END IFăEND SUBăăSUB CloseNoteProductFormă  Deanimate(NoteProductForm.Handle)ă  NoteProductForm.Visible = 0ăEND SUBăăSUB Nightsă  DIM File AS QFILESTREAMă  IF soundoff = 0 THEN PLAYWAV(gong,1)ă  IF iDir = "" THENă    where$ = "days.ini"ă  ELSEă    where$ = iDir + "\\" + "days.ini"ă  END IFă  File.Open(where$,fmCreate)ă  inifile = STR$(colorcount) + STR$(always) + STR$(soundoff)_ă            + STR$(blinking) + STR$(ccolorcount) + STR$(buttcolor)_ă            + STR$(DayButt.Color) + CHR$(13)_ă            + "0 =" + image0 + CHR$(13)_ă            + "1 =" + image1 + CHR$(13)_ă            + "2 =" + image2 + CHR$(13)_ă            + "3 =" + image3 + CHR$(13)_ă            + "4 =" + image4 + CHR$(13)_ă            + "5 =" + image5 + CHR$(13)ă  File.WriteStr(inifile,LEN(inifile))ă  File.CloseăEND SUBăăSUB Noisemakeră  IF soundoff = 0 THENă    Noise.Hint = "Click to turn on sound effects."ă    soundoff = 1ă  ELSEă    PLAYWAV(handbell,1)ă    Noise.Hint = "Click to turn off sound effects."ă    soundoff = 0ă  END IFăEND SUBăăSUB MonthChanged(Sender AS QMENUITEM)ă  Month.Text = Sender.Caption ă  New_Date(13)ă  CalendarăEND SUBăăSUB YearChanged(key AS BYTE)ă  IF key <> 13 THEN EXIT SUB ă  Year.Text = CYear.Textă  DayThence.Text = "0"ă  DayHence.Text = "0" ă  New_Date(13)ă  UpDownYr.Position = fyeară  CalendarăEND SUBăăSUB DayChanged(Sender AS QCOOLBTN)ă  Day.Text = Sender.Captionă  Daythence.Text = ""ă  Dayhence.Text = ""ă  New_Date(13)ă  CalendarăEND SUBăăSUB Calendară  CalendarForm.Visible = 1ă  IF soundoff = 0 THEN PLAYWAV(handbell,1)ă  CYear.Text = STR$(fyear)ă  CMonth.Caption = month$ă  One.Color = -2147483633ă  Two.Color = -2147483633ă  Three.Color = -2147483633ă  Four.Color = -2147483633ă  Five.Color = -2147483633ă  Six.Color = -2147483633ă  Seven.Color = -2147483633ă  CDay1.Visible = 1ă  CDay2.Visible = 1ă  CDay3.Visible = 1ă  CDay4.Visible = 1ă  CDay5.Visible = 1ă  CDay6.Visible = 1ă  CDay7.Visible = 1ă  CDay8.Visible = 1ă  CDay9.Visible = 1ă  CDay10.Visible = 1ă  CDay11.Visible = 1ă  CDay12.Visible = 1ă  CDay13.Visible = 1ă  CDay14.Visible = 1ă  CDay15.Visible = 1ă  CDay16.Visible = 1ă  CDay17.Visible = 1ă  CDay18.Visible = 1ă  CDay19.Visible = 1ă  CDay20.Visible = 1ă  CDay21.Visible = 1ă  CDay22.Visible = 1ă  CDay23.Visible = 1ă  CDay24.Visible = 1ă  CDay25.Visible = 1ă  CDay26.Visible = 1ă  CDay27.Visible = 1ă  CDay28.Visible = 1ă  SELECT CASE fmonthă    CASE 1,3,5,7,8,10,12ă      CDay29.Visible = 1ă      CDay30.Visible = 1ă      CDay31.Visible = 1ă    CASE 4,6,9,11ă      CDay29.Visible = 1ă      CDay30.Visible = 1ă      CDay31.Visible = 0ă    CASE 2ă      IF leapthen = 1 OR leapnow = 1 THENă        CDay29.Visible = 1ă      ELSEă        CDay29.Visible = 0ă      END IFă      CDay30.Visible = 0ă      CDay31.Visible = 0ă  END SELECTă  SELECT CASE fdayă    CASE 1,8,15,22,29ă      One.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Monday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Tuesday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Wednesday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Thursday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Friday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Saturday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă      END SELECT       ă    CASE 2,9,16,23,30ă      Two.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Monday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Tuesday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Wednesday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Thursday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Friday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Saturday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă      END SELECTă    CASE 3,10,17,24,31ă      Three.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Monday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Tuesday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Wednesday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Thursday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Friday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Saturday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă      END SELECTă    CASE 4,11,18,25ă      Four.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Monday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Tuesday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Wednesday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Thursday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Friday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Saturday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă      END SELECTă    CASE 5,12,19,26ă      Five.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Monday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Tuesday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Wednesday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Thursday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Friday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Saturday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă      END SELECTă    CASE 6,13,20,27ă      Six.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Monday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Tuesday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Wednesday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Thursday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Friday!"ă          One.Caption = "Sat"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă        CASE "Saturday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă      END SELECTă    CASE 7,14,21,28ă      Seven.Color = &HEEFAFAă      SELECT CASE wday$ă        CASE "Sunday!"ă          One.Caption = "Mon"ă          Two.Caption = "Tue"ă          Three.Caption = "Wed"ă          Four.Caption = "Thu"ă          Five.Caption = "Fri"ă          Six.Caption = "Sat"ă          Seven.Caption = "Sun"ă        CASE "Monday!"ă          One.Caption = "Tue"ă          Two.Caption = "Wed"ă          Three.Caption = "Thu"ă          Four.Caption = "Fri"ă          Five.Caption = "Sat"ă          Six.Caption = "Sun"ă          Seven.Caption = "Mon"ă        CASE "Tuesday!"ă          One.Caption = "Wed"ă          Two.Caption = "Thu"ă          Three.Caption = "Fri"ă          Four.Caption = "Sat"ă          Five.Caption = "Sun"ă          Six.Caption = "Mon"ă          Seven.Caption = "Tue"ă        CASE "Wednesday!"ă          One.Caption = "Thu"ă          Two.Caption = "Fri"ă          Three.Caption = "Sat"ă          Four.Caption = "Sun"ă          Five.Caption = "Mon"ă          Six.Caption = "Tue"ă          Seven.Caption = "Wed"ă        CASE "Thursday!"ă          One.Caption = "Fri"ă          Two.Caption = "Sat"ă          Three.Caption = "Sun"ă          Four.Caption = "Mon"ă          Five.Caption = "Tue"ă          Six.Caption = "Wed"ă          Seven.Caption = "Thu"ă        CASE "Friday!"ă          One.Caption = "Sat"ă          Two.Caption = "Sun"ă          Three.Caption = "Mon"ă          Four.Caption = "Tue"ă          Five.Caption = "Wed"ă          Six.Caption = "Thu"ă          Seven.Caption = "Fri"ă        CASE "Saturday!"ă          One.Caption = "Sun"ă          Two.Caption = "Mon"ă          Three.Caption = "Tue"ă          Four.Caption = "Wed"ă          Five.Caption = "Thu"ă          Six.Caption = "Fri"ă          Seven.Caption = "Sat"ă      END SELECT    ă  END SELECTă  SELECT CASE fdayă    CASE 1ă      CDay1.Visible = 0ă      DayButt.Top = CDay1.Topă      DayButt.Left = CDay1.Leftă    CASE 2ă      CDay2.Visible = 0ă      DayButt.Top = CDay2.Topă      DayButt.Left = CDay2.Leftă    CASE 3ă      CDay3.Visible = 0ă      DayButt.Top = CDay3.Topă      DayButt.Left = CDay3.Leftă    CASE 4ă      CDay4.Visible = 0ă      DayButt.Top = CDay4.Topă      DayButt.Left = CDay4.Leftă    CASE 5ă      CDay5.Visible = 0ă      DayButt.Top = CDay5.Topă      DayButt.Left = CDay5.Leftă    CASE 6ă      CDay6.Visible = 0ă      DayButt.Top = CDay6.Topă      DayButt.Left = CDay6.Leftă    CASE 7ă      CDay7.Visible = 0ă      DayButt.Top = CDay7.Topă      DayButt.Left = CDay7.Leftă    CASE 8ă      CDay8.Visible = 0ă      DayButt.Top = CDay8.Topă      DayButt.Left = CDay8.Leftă    CASE 9ă      CDay9.Visible = 0ă      DayButt.Top = CDay9.Topă      DayButt.Left = CDay9.Leftă    CASE 10ă      CDay10.Visible = 0ă      DayButt.Top = CDay10.Topă      DayButt.Left = CDay10.Leftă    CASE 11ă      CDay11.Visible = 0ă      DayButt.Top = CDay11.Topă      DayButt.Left = CDay11.Leftă    CASE 12ă      CDay12.Visible = 0ă      DayButt.Top = CDay12.Topă      DayButt.Left = CDay12.Leftă    CASE 13ă      CDay13.Visible = 0ă      DayButt.Top = CDay13.Topă      DayButt.Left = CDay13.Leftă    CASE 14ă      CDay14.Visible = 0ă      DayButt.Top = CDay14.Topă      DayButt.Left = CDay14.Leftă    CASE 15ă      CDay15.Visible = 0ă      DayButt.Top = CDay15.Topă      DayButt.Left = CDay15.Leftă    CASE 16ă      CDay16.Visible = 0ă      DayButt.Top = CDay16.Topă      DayButt.Left = CDay16.Leftă    CASE 17ă      CDay17.Visible = 0ă      DayButt.Top = CDay17.Topă      DayButt.Left = CDay17.Leftă    CASE 18ă      CDay18.Visible = 0ă      DayButt.Top = CDay18.Topă      DayButt.Left = CDay18.Leftă    CASE 19ă      CDay19.Visible = 0ă      DayButt.Top = CDay19.Topă      DayButt.Left = CDay19.Leftă    CASE 20ă      CDay20.Visible = 0ă      DayButt.Top = CDay20.Topă      DayButt.Left = CDay20.Leftă    CASE 21ă      CDay21.Visible = 0ă      DayButt.Top = CDay21.Topă      DayButt.Left = CDay21.Leftă    CASE 22ă      CDay22.Visible = 0ă      DayButt.Top = CDay22.Topă      DayButt.Left = CDay22.Leftă    CASE 23ă      CDay23.Visible = 0ă      DayButt.Top = CDay23.Topă      DayButt.Left = CDay23.Leftă    CASE 24ă      CDay24.Visible = 0ă      DayButt.Top = CDay24.Topă      DayButt.Left = CDay24.Leftă    CASE 25ă      CDay25.Visible = 0ă      DayButt.Top = CDay25.Topă      DayButt.Left = CDay25.Leftă    CASE 26ă      CDay26.Visible = 0ă      DayButt.Top = CDay26.Topă      DayButt.Left = CDay26.Leftă    CASE 27ă      CDay27.Visible = 0ă      DayButt.Top = CDay27.Topă      DayButt.Left = CDay27.Leftă    CASE 28ă      CDay28.Visible = 0ă      DayButt.Top = CDay28.Topă      DayButt.Left = CDay28.Leftă    CASE 29ă      CDay29.Visible = 0ă      DayButt.Top = CDay29.Topă      DayButt.Left = CDay29.Leftă    CASE 30ă      CDay30.Visible = 0ă      DayButt.Top = CDay30.Topă      DayButt.Left = CDay30.Leftă    CASE 31ă      CDay31.Visible = 0ă      DayButt.Top = CDay31.Topă      DayButt.Left = CDay31.Leftă  END SELECTă  DayButt.Caption = STR$(fday) ăEND SUBăăSUB PopMonthsă  MonthsPop.PopUp(Screen.MouseX,Screen.MouseY)ăEND SUBăăSUB Blinkă  IF blinking = 0 THENă    blinking = 1ă  ELSEă    blinking = 0ă  END IFăEND SUBăăSUB LoopColoră  IF blinking = 0 THEN DayButt.Color = 15661818*(1+RND*(5))ăEND SUBăăSUB PanelColorsă  IF DaysDates.Visible = 1 THEN INC colorcountă  IF colorcount = 6 THEN colorcount = 0ă  SELECT CASE colorcountă    CASE 0ă      NewDForm.Color = &HBCCAAAă    CASE 1ă      NewDForm.Color =  &HEEFAFA   ă    CASE 2ă      NewDForm.Color = &HCCC000ă    CASE 3ă      NewDForm.Color = &HGCCCă    CASE 4ă      NewDForm.Color = &HA000ă    CASE 5ă      NewDForm.Color = &HEFFF '&HBB00CCă  END SELECTă  DaysDForm.Color = NewDForm.Color               ăEND SUBăăSUB CalendarColoră  IF juston = 1 THEN INC ccolorcountă  IF ccolorcount = 6 THEN ccolorcount = 0ă  SELECT CASE ccolorcountă    CASE 0ă      'Backglass.BMP = image0ă      'NewDImage.BMP = image0ă      'DaysDImage.BMP = image0ă      CalendarForm.Color = &HBCCAAAă    CASE 1ă      'Backglass.BMP = image1ă      'NewDImage.BMP = image1ă      'DaysDImage.BMP = image1ă      CalendarForm.Color = &HEEFAFA  ă    CASE 2ă      'Backglass.BMP = image2ă      'NewDImage.BMP = image2ă      'DaysDImage.BMP = image2ă      CalendarForm.Color = &HCCC000ă    CASE 3ă      'Backglass.BMP = image3ă      'NewDImage.BMP = image3ă      'DaysDImage.BMP = image3ă      CalendarForm.Color = &HGCCCă    CASE 4ă      'Backglass.BMP = image4ă      'NewDImage.BMP = image4ă      'DaysDImage.BMP = image4ă      CalendarForm.Color = &HA000ă    CASE 5ă      'Backglass.BMP = image5ă      'NewDImage.BMP = image5ă      'DaysDImage.BMP = image5ă      CalendarForm.Color = &HBCCC '&HBB00CCă  END SELECTă  MoYe.Color = CalendarForm.Coloră  NoteProductForm.Color = CalendarForm.Coloră  PanelColors                ăEND SUBăăSUB UpdownYeară  CYear.Text = STR$(UpDownYr.Position)ă  Year.Text = CYear.Textă  New_Date(13)ă  CalendarăEND SUBăăSUB CloseCalendară  IF soundoff = 0 THEN PLAYWAV(whoosh,1)ă  Deanimate(CalendarForm.Handle)ă  CalendarForm.Visible = 0ăEND SUBăăSUB PaintFormă  PaintDesktop GetDC(DaysDates.Handle)ăEND SUBăăSUB Animate(Handle AS INTEGER)ă  AnimateWindow Handle, 300, AW_CENTERă  SELECT CASE Handleă    CASE NoteProductForm.Handleă      NoteProductForm.Repaintă    CASE CalendarForm.Handleă      CalendarForm.Repaintă      SetFocus(CalendarForm.Handle)ă  END SELECTăEND SUBăăSUB Deanimate(Handle AS INTEGER)ă  AnimateWindow Handle, 300, AW_CENTER OR AW_HIDEăEND SUBăăSUB Todayă  Day.Text = MID$(DATE$,4,2)ă  Month.Text = LEFT$(DATE$,2)ă  Year.Text = "20" + RIGHT$(DATE$,2)ă  Daythence.Text = ""ă  Dayhence.Text = ""ă  New_Date(13)ă  UpDownYr.Position = fyeară  CalendarăEND SUBăăSUB ButtonColoră  IF CalendarForm.Visible = 1 THEN INC buttcoloră  IF buttcolor = 4 THEN buttcolor = 0ă  SELECT CASE buttcoloră    CASE 0ă      DayButt.Font = ArialY10ă      CDay1.Font = ArialY10ă      CDay2.Font = ArialY10ă      CDay3.Font = ArialY10ă      CDay4.Font = ArialY10ă      CDay5.Font = ArialY10ă      CDay6.Font = ArialY10ă      CDay7.Font = ArialY10ă      CDay8.Font = ArialY10ă      CDay9.Font = ArialY10ă      CDay10.Font = ArialY10ă      CDay11.Font = ArialY10ă      CDay12.Font = ArialY10ă      CDay13.Font = ArialY10ă      CDay14.Font = ArialY10ă      CDay15.Font = ArialY10ă      CDay16.Font = ArialY10ă      CDay17.Font = ArialY10ă      CDay18.Font = ArialY10ă      CDay19.Font = ArialY10ă      CDay20.Font = ArialY10ă      CDay21.Font = ArialY10ă      CDay22.Font = ArialY10ă      CDay23.Font = ArialY10ă      CDay24.Font = ArialY10ă      CDay25.Font = ArialY10ă      CDay26.Font = ArialY10ă      CDay27.Font = ArialY10ă      CDay28.Font = ArialY10ă      CDay29.Font = ArialY10ă      CDay30.Font = ArialY10ă      CDay31.Font = ArialY10ă    CASE 1ă      DayButt.Font = ArialB10ă      CDay1.Font = ArialB10ă      CDay2.Font = ArialB10ă      CDay3.Font = ArialB10ă      CDay4.Font = ArialB10ă      CDay5.Font = ArialB10ă      CDay6.Font = ArialB10ă      CDay7.Font = ArialB10ă      CDay8.Font = ArialB10ă      CDay9.Font = ArialB10ă      CDay10.Font = ArialB10ă      CDay11.Font = ArialB10ă      CDay12.Font = ArialB10ă      CDay13.Font = ArialB10ă      CDay14.Font = ArialB10ă      CDay15.Font = ArialB10ă      CDay16.Font = ArialB10ă      CDay17.Font = ArialB10ă      CDay18.Font = ArialB10ă      CDay19.Font = ArialB10ă      CDay20.Font = ArialB10ă      CDay21.Font = ArialB10ă      CDay22.Font = ArialB10ă      CDay23.Font = ArialB10ă      CDay24.Font = ArialB10ă      CDay25.Font = ArialB10ă      CDay26.Font = ArialB10ă      CDay27.Font = ArialB10ă      CDay28.Font = ArialB10ă      CDay29.Font = ArialB10ă      CDay30.Font = ArialB10ă      CDay31.Font = ArialB10ă    CASE 2ă      DayButt.Font = ArialG10ă      CDay1.Font = ArialG10ă      CDay2.Font = ArialG10ă      CDay3.Font = ArialG10ă      CDay4.Font = ArialG10ă      CDay5.Font = ArialG10ă      CDay6.Font = ArialG10ă      CDay7.Font = ArialG10ă      CDay8.Font = ArialG10ă      CDay9.Font = ArialG10ă      CDay10.Font = ArialG10ă      CDay11.Font = ArialG10ă      CDay12.Font = ArialG10ă      CDay13.Font = ArialG10ă      CDay14.Font = ArialG10ă      CDay15.Font = ArialG10ă      CDay16.Font = ArialG10ă      CDay17.Font = ArialG10ă      CDay18.Font = ArialG10ă      CDay19.Font = ArialG10ă      CDay20.Font = ArialG10ă      CDay21.Font = ArialG10ă      CDay22.Font = ArialG10ă      CDay23.Font = ArialG10ă      CDay24.Font = ArialG10ă      CDay25.Font = ArialG10ă      CDay26.Font = ArialG10ă      CDay27.Font = ArialG10ă      CDay28.Font = ArialG10ă      CDay29.Font = ArialG10ă      CDay30.Font = ArialG10ă      CDay31.Font = ArialG10ă    CASE 3ă      DayButt.Font = ArialP10ă      CDay1.Font = ArialP10ă      CDay2.Font = ArialP10ă      CDay3.Font = ArialP10ă      CDay4.Font = ArialP10ă      CDay5.Font = ArialP10ă      CDay6.Font = ArialP10ă      CDay7.Font = ArialP10ă      CDay8.Font = ArialP10ă      CDay9.Font = ArialP10ă      CDay10.Font = ArialP10ă      CDay11.Font = ArialP10ă      CDay12.Font = ArialP10ă      CDay13.Font = ArialP10ă      CDay14.Font = ArialP10ă      CDay15.Font = ArialP10ă      CDay16.Font = ArialP10ă      CDay17.Font = ArialP10ă      CDay18.Font = ArialP10ă      CDay19.Font = ArialP10ă      CDay20.Font = ArialP10ă      CDay21.Font = ArialP10ă      CDay22.Font = ArialP10ă      CDay23.Font = ArialP10ă      CDay24.Font = ArialP10ă      CDay25.Font = ArialP10ă      CDay26.Font = ArialP10ă      CDay27.Font = ArialP10ă      CDay28.Font = ArialP10ă      CDay29.Font = ArialP10ă      CDay30.Font = ArialP10ă      CDay31.Font = ArialP10ă  END SELECTăEND SUBăăSUB ImageFilesă  CREATE NewImages AS QOPENDIALOGă    InitialDir = CurDir$ă    Filter = "Bitmap image files|*.BMP|All Files|*.*ă    FilterIndex = 1ă  END CREATE ă  iDir = NewImages.InitialDir ă  IF NewImages.Execute THENă    SELECT CASE ccolorcountă      CASE 0ă        image0 = NewImages.FileNameă      CASE 1ă        image1 = NewImages.FileName ă      CASE 2ă        image2 = NewImages.FileNameă      CASE 3ă        image3 = NewImages.FileNameă      CASE 4ă        image4 = NewImages.FileNameă      CASE 5ă        image5 = NewImages.FileNameă    END SELECTă    DEC ccolorcount ă    CalendarColoră  END IFăEND SUBăăSUB CloseDaysă  IF soundoff = 0 THEN PLAYWAV(whoosh,1)ă  Deanimate(DaysDates.Handle)ăEND SUBăăInitializeă'IF soundoff = 0 THEN PLAYWAV(clocktow,1)ăDaysDates.ShowModalăNightsăApplication.Terminateăă'DOă'  IF always = 1 THEN SetWindowPos(DaysDates.Handle, -1, 0, 0, 0, 0,SWP_NOMOVE OR SWP_NOSIZE)ă'  DOEVENTSă'LOOP UNTIL DaysDates.Visible = 0ăAchilles B. Mina               Math-Expression Evaluator      wasaywasay@i-manila.com.ph     09-29-01 (  :  )       rapidq                 3340 95740    QEDTukak.bas'QEDTukak 1.54ă'Math-Expression Evaluatoră'By Achilles B.Minaă'Updated: 9/29/2001ăă'This utility is one of the modules of Calculait, a full-featuredă'scientific calculator with a world clock. It's downloadable ată'ZDNet, CNet, RocketDownload, CNet and other freeware sites, andă'at my website at http://pages.zdnet.com/wasaywasay/wasaywasay/ăă'You can do as you please with this code.ăă$INCLUDE "RAPIDQ.INC"ă$ESCAPECHARS ONăă'$RESOURCE QEDTukak AS "qedtukak.ico"ă'$RESOURCE lionroar AS "lionroar.wav"ă'$RESOURCE camera AS "camera.wav"ă'$RESOURCE cashreg AS "cashreg.wav"ă'$RESOURCE chicken AS "chicken.wav"ă'$RESOURCE cuckoo AS "cuckoo.wav"ă'$RESOURCE wipe AS "wipe.wav"ă'$RESOURCE gong AS "gong.wav"ă'$RESOURCE handbell AS "handbell.wav"ă'$RESOURCE laser AS "laser.wav"ă'$RESOURCE typing AS "typing.wav"ă'$RESOURCE whooh AS "whooh.wav"ă'$RESOURCE whoosh AS "whoosh.wavăăăDECLARE FUNCTION AnimateWindow Lib "user32" Alias "AnimateWindow"(ByVal hwnd As Long, ByVal dwTime As Long, ByVal dwFlags As Long) As IntegerăDECLARE SUB Animate(Handle AS INTEGER)ăDECLARE SUB Deanimate(Handle AS INTEGER)ăDECLARE SUB CloseHistoryăDECLARE SUB CloseFunctionsăDECLARE SUB CloseVariablesăDECLARE FUNCTION PaintDesktop LIB "USER32" ALIAS "PaintDesktop" (HDC AS INTEGER) AS INTEGERăDECLARE FUNCTION GetDC LIB "USER32" ALIAS "GetDC" (HWND AS INTEGER) AS INTEGERăDeclare Function SetForegroundWindow Lib "user32" ALIAS "SetForegroundWindow" (hwnd As Long) As LongăDECLARE SUB SetWindowPos Lib "User32" ALIAS "SetWindowPos"(hWnd As Long, hWndInsertAfter As Long, X As Long, Y As Long, cx As Long, cy As Long, wFlags As Long)ăDECLARE Function GetFocus Lib "user32" Alias "GetFocus"() As LongăDECLARE FUNCTION SetFocus LIB "USER32" ALIAS "SetFocus" (HWnd AS LONG) AS LONGăDECLARE FUNCTION LoadCursorFromFile LIB "USER32" ALIAS "LoadCursorFromFileA" _ă                 (CursorFileName AS STRING) AS LONGăDECLARE SUB DummyMin(Hwnd&, uMsg&, wParam&, lParam&)ăDECLARE SUB OnTopăDECLARE SUB ClickăDECLARE SUB ChangeModeăDECLARE SUB EmailMeăDECLARE SUB SendMeăDECLARE SUB CloseSolverăDECLARE SUB ClrLastExpEdităDECLARE SUB ClrExpEdităDECLARE SUB OperatorButts ăDECLARE SUB MathButts(Sender AS QBUTTON)ăDECLARE SUB CheckE(newstring$ AS STRING)ăDECLARE SUB ExpSolverăDECLARE SUB ExpSolverEdităDECLARE SUB Functions(par1 AS INTEGER, mathval$ AS STRING)ăDECLARE SUB DoInPrecision(value AS DOUBLE, value$ AS STRING)ăDECLARE SUB DoPrecisionăDECLARE SUB preCheckSyntaxăDECLARE SUB CheckSyntax(key AS BYTE)ăDECLARE SUB SaveFileăDECLARE SUB PrintFileăDECLARE SUB OutUser(Sender AS QMENUITEM)ăDECLARE SUB OutScientificăDECLARE SUB OutFinancialăDECLARE SUB OutCommaăDECLARE SUB OutNoneăDECLARE SUB OutFormatăDECLARE SUB OutFormatTypeăDECLARE SUB NotesShowăDECLARE SUB CloseNotesăDECLARE SUB ShowNotesăDECLARE SUB SoundOnOffăDECLARE SUB ClipboardCopyăDECLARE SUB ClipboardPasteăDECLARE SUB TimeăDECLARE SUB MilSTDTimeăDECLARE SUB ConstantsAll(Sender AS QMENUITEM)ăDECLARE SUB ConstantsShowăDECLARE SUB FunctionsShowăDECLARE SUB HistoryShowăDECLARE SUB SendAnswerăDECLARE SUB changeEăDECLARE SUB InitializeăDECLARE SUB ConversionsShowăDECLARE SUB ConversionsAll(Sender AS QMENUITEM)ăDECLARE SUB PaintFormăDECLARE SUB ResizeViewăDECLARE SUB OutPrecisionăDECLARE SUB VariablesShowăDECLARE SUB VariablesEntered(key AS BYTE)ăăăDIM Math(1 TO 39) AS STRINGăDEFSTR memvalue, outform$, precision$, MathText, formula$, oldexpressionăDEFBYTE soundoff, dochecktag, military, alwaysăDEFDBL CMode, CModeNăăConst AW_CENTER = &H10 'Makes the window appear to collapse inward if AW_HIDE is used or expand outward if the AW_HIDE is not used.ăConst AW_HIDE = &H10000 'Hides the window. By default, the window is shown.ăConst SWP_NOSIZE = &H1ăConst SWP_NOMOVE = &H2ăăCREATE Arial10B AS QFONTă    Name = "Arial"ă    Color = clBlack '&HEEFE   ă    AddStyles(fsBold)ă    Size = 10ăEND CREATEăăCREATE ArialW AS QFONTă    Name = "Arial"ă    Color = clWhiteă    AddStyles(fsBold)ă    Size = 12ăEND CREATEăăCREATE ArialB AS QFONTă    Name = "Arial"ă    Color = clBlackă    AddStyles(fsBold)ă    Size = 12ăEND CREATEăăCREATE Arial9B AS QFONTă    Name = "Arial"ă    Color = clBlackă    AddStyles(fsBold)ă    Size = 9ăEND CREATEăăCREATE Arial9G AS QFONTă    Name = "Arial"ă    Color = clGreenă    AddStyles(fsBold)ă    Size = 9ăEND CREATEăăCREATE Arial10W AS QFONTă    Name = "Arial"ă    Color = clWhiteă    AddStyles(fsBold)ă    Size = 10ăEND CREATEăăCREATE Arial9W AS QFONTă    Name = "Arial"ă    Color = clWhiteă    AddStyles(fsBold)ă    Size = 9ăEND CREATEăăCREATE Verdana10W AS QFONTă    Name = "Verdana"ă    Color = clWhiteă    AddStyles(fsBold)ă    Size = 10ăEND CREATEăăCREATE Timer1 AS QTIMERă  Enabled = 1ă  Interval = 1000ă  OnTimer = TimeăEND CREATEăăCREATE Timer2 AS QTIMERă  Enabled = 0ă  Interval = 1ă  OnTimer = NotesShowăEND CREATEăăCREATE ExpSolverForm AS QFORMă  Centeră  Height = 55ă  Width = 430ă  Color = &HABC777ă  FormStyle = fsStayOnTopă  DelBorderIcons(biMaximize)ă  BorderStyle = bsSingleă  Caption = "QEDTukak"ă  Hint = "Right-click to bring up the menus, left-click to\n\rinvoke the Functions Selector & History View"ă  ShowHint = 1ă  WndProc = DummyMină  OnClose = CloseSolveră  CREATE PopUp AS QPOPUPMENUă    CREATE ConstantsMenu AS QMENUITEMă      Caption = "&Constants"ă      OnClick = ConstantsShowă    END CREATEă    CREATE ConsversionsMenu AS QMENUITEMă      Caption = "C&onversions"ă      OnClick = ConversionsShowă    END CREATEă    CREATE FunctionsMenu AS QMENUITEMă      Caption = "F&unctions"ă      OnClick = FunctionsShowă    END CREATEă    CREATE HistoryMenu AS QMENUITEMă      Caption = "&History"ă      OnClick = HistoryShowă    END CREATEă    CREATE VarialblesMenu AS QMENUITEMă      Caption = "&Variables"ă      OnClick = VariablesShowă    END CREATE        ă    CREATE Edit AS QMENUITEMă      Caption = "&Edit"ă      CREATE Copy AS QMENUITEMă        Caption = "&Copy    Ctrl+C"ă        OnClick = ClipboardCopyă      END CREATEă      CREATE Paste AS QMENUITEMă        Caption = "&Paste   Ctrl+V"ă        OnClick = ClipboardPasteă      END CREATEă    END CREATEă    CREATE File AS QMENUITEMă      Caption = "&File"ă      CREATE SaveP AS QMENUITEMă        Caption = "&Save"ă        OnClick = SaveFileă      END CREATEă      CREATE PrintP AS QMENUITEMă        Caption = "&Print"ă        OnClick = PrintFileă      END CREATE ă    END CREATE    ă    CREATE Format AS QMENUITEMă      Caption = "Fo&rmat"ă      CREATE OutFin AS QMENUITEMă        Caption = "&Financial"ă        OnClick = OutFinancială      END CREATEă      CREATE OutSci AS QMENUITEMă        Caption = "&Scientific"ă        OnClick = OutScientifică      END CREATEă      CREATE OutCom AS QMENUITEMă        Caption = "&Comma separated"ă        OnClick = OutCommaă      END CREATEă      CREATE OutNon AS QMENUITEMă        Caption = "&No format"ă        OnClick = OutNoneă      END CREATEă      CREATE OutNoForm AS QMENUITEMă        Caption = "&User-set precision"ă        CREATE OutPrecise1 AS QMENUITEMă          Caption = "1"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise2 AS QMENUITEMă          Caption = "2"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise3 AS QMENUITEMă          Caption = "3"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise4 AS QMENUITEMă          Caption = "4"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise5 AS QMENUITEMă          Caption = "5"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise6 AS QMENUITEMă          Caption = "6"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise7 AS QMENUITEMă          Caption = "7"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise8 AS QMENUITEMă          Caption = "8"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise9 AS QMENUITEMă          Caption = "9"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise10 AS QMENUITEMă          Caption = "10"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise11 AS QMENUITEMă          Caption = "11"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise12 AS QMENUITEMă          Caption = "12"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise13 AS QMENUITEMă          Caption = "13"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise14 AS QMENUITEMă          Caption = "14"ă          OnClick = OutUseră        END CREATEă        CREATE OutPrecise15 AS QMENUITEMă          Caption = "15"ă          OnClick = OutUseră        END CREATEă      END CREATE                  ă    END CREATEă    CREATE Options AS QMENUITEMă      Caption = "O&ptions"ă      CREATE AlwaysTop AS QMENUITEMă        Caption = "&Always on top"ă        OnClick = OnTopă      END CREATE   ă      CREATE Sounds AS QMENUITEMă        Caption = "Switch sounds o&ff"ă        OnClick = SoundOnOffă      END CREATEă      CREATE Times AS QMENUITEMă        Caption = "Switch to &Military Time"ă        OnClick = MilSTDTimeă      END CREATEă    END CREATEă    CREATE Notes AS QMENUITEMă      Caption = "&Notes"ă      OnClick = ShowNotesă    END CREATEă  END CREATEă  CREATE ExpEdit AS QEDITă    Top = 3ă    Left = 3ă    Height = 23ă    Width = 317 '423ă    Font = Arial10Wă    Hint = "Type in entry then press Enter to get answer"ă    ShowHint = 1ă    Color = 0 '&HABC999ă    OnKeyPress = CheckSyntaxă  END CREATEă  CREATE DegRad AS QPANEL    'QBUTTONă    BevelOuter = 0ă    BevelInner = 0ă    BorderStyle = 1ă    Color = 0ă    Top = 4ă    Left = 321ă    Height = 23ă    Width = 20ă    Font = Arial9Gă    Caption = "D"ă    Hint = "Now in Degrees. Click for Radians."ă    ShowHint= 1ă    OnClick = ChangeModeă    Cursor = -21ă  END CREATEă  CREATE TimePanel AS QPANELă    Top = 3ă    Left = 343ă    Width = 78ă    Height = 23ă    Color = 0 '&HABC999ă    BevelOuter = 0ă    BevelInner = 0ă    BorderStyle = 1ă    Font = Arial10Wă    Caption = TIME$ă    Cursor = -21ă    OnClick = Click ă  END CREATEă  CREATE VariablesForm AS QFORMă    Top = Screen.Height/2 + 29ă    Left = Screen.Width/2 - 215ă    Height = 112ă    Width = 430ă    FormStyle = fsStayOnTopă    DelBorderIcons(biMaximize)ă    Hint = "Type in value of each variable you used above"ă    ShowHint = 1ă    Caption = "Variables Input"ă    Color = &HABC999ă    OnClose = CloseVariablesă    CREATE UVarPanel AS QPANELă      Top = 1ă      Left = 5ă      Width = 30ă      Height = 25ă      BevelOuter = 0ă      Font = Arial10Bă      Caption = " U = "ă      Color = &HABC999ă    END CREATEă    CREATE UVarEdit AS QEDITă      Top = 1ă      Left = 37ă      Width = 170ă      Height = 25ă      Color = 0ă      Font = Arial10Wă      OnKeyPress = VariablesEnteredă    END CREATEă    CREATE WVarPanel AS QPANELă      Top = 30ă      Left = 5ă      Width = 30ă      Height = 25ă      BevelOuter = 0ă      Font = Arial10Bă      Caption = " W = "ă      Color = &HABC999ă    END CREATEă    CREATE WVarEdit AS QEDITă      Top = 30ă      Left = 37ă      Width = 170ă      Height = 25ă      Color = 0ă      Font = Arial10Wă      OnKeyPress = VariablesEnteredă    END CREATEă    CREATE YVarPanel AS QPANELă      Top = 1ă      Left = 215ă      Width = 30ă      Height = 25ă      BevelOuter = 0ă      Font = Arial10Bă      Caption = " Y = "ă      Color = &HABC999ă    END CREATEă    CREATE YVarEdit AS QEDITă      Top = 1ă      Left = 247ă      Width = 170ă      Height = 25ă      Color = 0ă      Font = Arial10Wă      OnKeyPress = VariablesEnteredă    END CREATEă    CREATE ZVarPanel AS QPANELă      Top = 30ă      Left = 215ă      Width = 30ă      Height = 25ă      BevelOuter = 0ă      Font = Arial10Bă      Caption = " Z = "ă      Color = &HABC999ă    END CREATEă    CREATE ZVarEdit AS QEDITă      Top = 30ă      Left = 247ă      Width = 170ă      Height = 25ă      Color = 0ă      Font = Arial10Wă      OnKeyPress = VariablesEnteredă    END CREATEă    CREATE JVarPanel AS QPANELă      Top = 59ă      Left = 5ă      Width = 30ă      Height = 25ă      BevelOuter = 0ă      Font = Arial10Bă      Caption = " J = "ă      Color = &HABC999ă    END CREATEă    CREATE JVarEdit AS QEDITă      Top = 59ă      Left = 37ă      Width = 170ă      Height = 25ă      Color = 0ă      Font = Arial10Wă      OnKeyPress = VariablesEnteredă    END CREATEă    CREATE KVarPanel AS QPANELă      Top = 59ă      Left = 215ă      Width = 30ă      Height = 25ă      BevelOuter = 0ă      Font = Arial10Bă      Caption = " K = "ă      Color = &HABC999ă    END CREATEă    CREATE KVarEdit AS QEDITă      Top = 59ă      Left = 247ă      Width = 170ă      Height = 25ă      Color = 0ă      Font = Arial10Wă      OnKeyPress = VariablesEnteredă    END CREATEă  END CREATEă  CREATE HistoryForm AS QFORMă    Color = &HABC111ă    Top = Screen.Height/2 - 253ă    Left = Screen.Width/2ă    Caption = "History View"ă    Width =  354 '296ă    Height = 225    ă    FormStyle = fsStayOnTopă    'DelBorderIcons(biMaximize)ă    'BorderStyle = bsSingleă    OnClose = CloseHistoryă    OnResize = ResizeViewă    CREATE HistoryView AS QLISTBOXă      Top = 5ă      Left = 5ă      Height = HistoryForm.ClientHeight - 10ă      Width = HistoryForm.ClientWidth - 10ă      Color = 0 '&HABC999ă      Font = Arial10W 'Verdana10Wă    END CREATEă  END CREATEă  CREATE FunctionsForm AS QFORM   ă    Top = Screen.Height/2 - 253ă    Left = Screen.Width/2 - 354ă    Caption = "Functions Selector"ă    Width =  354 '296ă    Height = 225    ă    Color = 0 '&HABC999ă    FormStyle = fsStayOnTopă    DelBorderIcons(biMaximize)ă    BorderStyle = bsSingleă    Hint = "Right-click to bring up Constants Menu"ă    ShowHint = 1ă    Cursor = -21ă    OnClose = CloseFunctionsă    CREATE ZeroButt AS QBUTTONă      Font = ArialBă      Top = 5ă      Left = 232ă      Width = 58ă      Height = 18ă      Caption = "0"ă      OnClick = MathButtsă    END CREATEă    CREATE OneButt AS QBUTTONă      Font = ArialWă      Top = 24ă      Left = 232ă      Width = 58ă      Height = 18ă      Caption = "1"ă      OnClick = MathButtsă    END CREATEă    CREATE TwoButt AS QBUTTONă      Font = ArialBă      Top = 43ă      Left = 232ă      Width = 58ă      Height = 18ă      Caption = "2"ă      OnClick = MathButtsă    END CREATEă    CREATE ThreeButt AS QBUTTONă      Font = ArialWă      Top = 62ă      Left = 232ă      Width = 58ă      Height = 18ă      Caption = "3"ă      OnClick = MathButtsă    END CREATEă    CREATE FourButt AS QBUTTONă      Font = ArialBă      Top = 81ă      Left = 232ă      Width = 58ă      Height = 18ă      Caption = "4"ă      OnClick = MathButtsă    END CREATEă    CREATE FiveButt AS QBUTTONă      Font = ArialWă      Top = 100ă      Left = 232ă      Width = 58ă      Height = 18ă      Caption = "5"ă      OnClick = MathButtsă    END CREATEă    CREATE SixButt AS QBUTTONă      Font = ArialBă      Top = 119ă      Left = 232ă      Width = 58ă      Height = 18ă      Caption = "6"ă      OnClick = MathButtsă    END CREATEă    CREATE SevenButt AS QBUTTONă      Font = ArialWă      Top = 138ă      Left = 232ă      Width = 58ă      Height = 18ă      Caption = "7"ă      OnClick = MathButtsă    END CREATEă    CREATE EightButt AS QBUTTONă      Font = ArialBă      Top = 157ă      Left = 232ă      Width = 58ă      Height = 18ă      Caption = "8"ă      OnClick = MathButtsă    END CREATEă    CREATE NineButt AS QBUTTONă      Font = ArialWă      Top = 176ă      Left = 232ă      Width = 58ă      Height = 18ă      Caption = "9"ă      OnClick = MathButtsă    END CREATEă    CREATE ClrButt AS QOVALBTNă      Layout = -1ă      Flat = 1ă      Font = ArialWă      Top = 5ă      Left = 290ă      Width = 29ă      Height = 18.5ă      Caption = "AC"ă      Hint = "Clear all"ă      ShowHint = 1ă      OnClick = ClrExpEdită    END CREATEă    CREATE LastClrButt AS QOVALBTNă      Layout = -1ă      Flat = 1ă      Font = ArialWă      Top = 5ă      Left = 319ă      Width = 29ă      Height = 18.5ă      Caption = "C"ă      Hint = "Clear last entry"ă      ShowHint = 1ă      OnClick = clrlastExpEdită    END CREATEă    CREATE SendButt AS QBUTTONă      Font = Arial9Bă      Top = 43ă      Left = 290ă      Width = 58ă      Height = 18ă      Caption = "Send"ă      Hint = "Send answer to expression"ă      ShowHint = 1ă      OnClick = SendAnsweră    END CREATEă    CREATE AddButt AS QBUTTONă      Font = ArialWă      Top = 62ă      Left = 290ă      Width = 58ă      Height = 18ă      Caption = "+"ă      Hint = "Addition"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE SubButt AS QBUTTONă      Font = ArialBă      Top = 81ă      Left = 290ă      Width = 58ă      Height = 18ă      Caption = "--"ă      Hint = "Subtraction"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE MulButt AS QBUTTONă      Font = ArialWă      Top = 100ă      Left = 290ă      Width = 58ă      Height = 18ă      Caption = "x"ă      Hint = "Multiplication"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE DivButt AS QBUTTONă      Font = ArialBă      Top = 119ă      Left = 290ă      Width = 58ă      Height = 18ă      Caption = "÷"ă      Hint = "Division"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE PowButt AS QBUTTONă      Font = ArialWă      Top = 138ă      Left = 290ă      Width = 58ă      Height = 18ă      Caption = "^"ă      Hint = "Raise to power..."ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE AnsButt AS QOVALBTNă      Layout = -1ă      Flat = 1ă      Font = ArialWă      Top = 175.5ă      Left = 290ă      Width = 58ă      Height = 18.5ă      Caption = "Ans"ă      Hint = "Get answer"ă      ShowHint = 1ă      OnClick = preCheckSyntaxă    END CREATEă    CREATE SinButt AS QBUTTONă      Font = Arial9Bă      Top = 5ă      Left = 0ă      Width = 58ă      Height = 18ă      Caption = "Sin"ă      Hint = "Sine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CosButt AS QBUTTONă      Font = Arial9Bă      Top = 5ă      Left = 58ă      Width = 58ă      Height = 18ă      Caption = "Cos"ă      Hint = "Cosine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE TanButt AS QBUTTONă      Font = Arial9Bă      Top = 5ă      Left = 116ă      Width = 58ă      Height = 18ă      Caption = "Tan"ă      Hint = "Tangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CotButt AS QBUTTONă      Font = Arial9Bă      Top = 5ă      Left = 174ă      Width = 58ă      Height = 18ă      Caption = "Cot"ă      Hint = "Cotangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ASinButt AS QBUTTONă      Font = Arial9Wă      Top = 24ă      Left = 0ă      Width = 58ă      Height = 18ă      Caption = "ASin"ă      Hint = "Arcsine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ACosButt AS QBUTTONă      Font = Arial9Wă      Top = 24ă      Left = 58ă      Width = 58ă      Height = 18ă      Caption = "ACos"ă      Hint = "Arccosine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ATanButt AS QBUTTONă      Font = Arial9Wă      Top = 24ă      Left = 116ă      Width = 58ă      Height = 18ă      Caption = "ATan"ă      Hint = "Arctangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ACotButt AS QBUTTONă      Font = Arial9Wă      Top = 24ă      Left = 174ă      Width = 58ă      Height = 18ă      Caption = "ACot"ă      Hint = "Arccotangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE SinhButt AS QBUTTONă      Font = Arial9Bă      Top = 43ă      Left = 0ă      Width = 58ă      Height = 18ă      Caption = "Sinh"ă      Hint = "Hyperbolic sine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CoshButt AS QBUTTONă      Font = Arial9Bă      Top = 43ă      Left = 58ă      Width = 58ă      Height = 18ă      Caption = "Cosh"ă      Hint = "Hyperbolic cosine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE TanhButt AS QBUTTONă      Font = Arial9Bă      Top = 43ă      Left = 116ă      Width = 58ă      Height = 18ă      Caption = "Tanh"ă      Hint = "Hyperbolic tangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CothButt AS QBUTTONă      Font = Arial9Bă      Top = 43ă      Left = 174ă      Width = 58ă      Height = 18ă      Caption = "Coth"ă      Hint = "Hyperbolic cotangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ASinhButt AS QBUTTONă      Font = Arial9Wă      Top = 62ă      Left = 0ă      Width = 58ă      Height = 18ă      Caption = "ASinh"ă      Hint = "Hyperbolic arcsine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ACoshButt AS QBUTTONă      Font = Arial9Wă      Top = 62ă      Left = 58ă      Width = 58ă      Height = 18ă      Caption = "ACosh"ă      Hint = "Hyperbolic arccosine"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ATanhButt AS QBUTTONă      Font = Arial9Wă      Top = 62ă      Left = 116ă      Width = 58ă      Height = 18ă      Caption = "ATanh"ă      Hint = "Hyperbolic arctangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ACothButt AS QBUTTONă      Font = Arial9Wă      Top = 62ă      Left = 174ă      Width = 58ă      Height = 18ă      Caption = "ACoth"ă      Hint = "Hyperbolic arccotangent"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE SecButt AS QBUTTONă      Font = Arial9Bă      Top = 81ă      Left = 0ă      Width = 58ă      Height = 18ă      Caption = "Sec"ă      Hint = "Secant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CscButt AS QBUTTONă      Font = Arial9Bă      Top = 81ă      Left = 58ă      Width = 58ă      Height = 18ă      Caption = "Csc"ă      Hint = "Cosecant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ASecButt AS QBUTTONă      Font = Arial9Bă      Top = 81ă      Left = 116ă      Width = 58ă      Height = 18ă      Caption = "ASec"ă      Hint = "Arcsecant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ACscButt AS QBUTTONă      Font = Arial9Bă      Top = 81ă      Left = 174ă      Width = 58ă      Height = 18ă      Caption = "ACsc"ă      Hint = "Arccosecant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE SechButt AS QBUTTONă      Font = Arial9Wă      Top = 100ă      Left = 0ă      Width = 58ă      Height = 18ă      Caption = "Sech"ă      Hint = "Hyperbolic secant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CschButt AS QBUTTONă      Font = Arial9Wă      Top = 100ă      Left = 58ă      Width = 58ă      Height = 18ă      Caption = "Csch"ă      Hint = "Hyperbolic cosecant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ASechButt AS QBUTTONă      Font = Arial9Wă      Top = 100ă      Left = 116ă      Width = 58ă      Height = 18ă      Caption = "ASech"ă      Hint = "Hyperbolic arcsecant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ACschButt AS QBUTTONă      Font = Arial9Wă      Top = 100ă      Left = 174ă      Width = 58ă      Height = 18ă      Caption = "ACsch"ă      Hint = "Hyperbolic arccosecant"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE IntButt AS QBUTTONă      Font = Arial9Bă      Top = 119ă      Left = 0ă      Width = 58ă      Height = 18ă      Caption = "Int"ă      Hint = "Largest integer less than or equal to input number"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE FracButt AS QBUTTONă      Font = Arial9Bă      Top = 119ă      Left = 58ă      Width = 58ă      Height = 18ă      Caption = "Frac"ă      Hint = "Returns fractional part of input number"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE FloorButt AS QBUTTONă      Font = Arial9Bă      Top = 119ă      Left = 116ă      Width = 58ă      Height = 18ă      Caption = "Floor"ă      Hint = "Rounds input number to integer closest to negative infinity"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CeilButt AS QBUTTONă      Font = Arial9Bă      Top = 119ă      Left = 174ă      Width = 58ă      Height = 18ă      Caption = "Ceil"ă      Hint = "Rounds input number to integer closest to positive infinity"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE LogButt AS QBUTTONă      Font = Arial9Wă      Top = 138ă      Left = 0ă      Width = 58ă      Height = 18ă      Caption = "Log"ă      Hint = "Logarithm (base 10)"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE LnButt AS QBUTTONă      Font = Arial9Wă      Top = 138ă      Left = 58ă      Width = 58ă      Height = 18ă      Caption = "Ln"ă      Hint = "Natural logarithm (base e)"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE InvButt AS QBUTTONă      Font = Arial9Wă      Top = 138ă      Left = 116ă      Width = 58ă      Height = 18ă      Caption = "Inv"ă      Hint = "Inverse (1/x)"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE PiButt AS QBUTTONă      Font = Arial9Wă      Top = 138ă      Left = 174ă      Width = 58ă      Height = 18ă      Caption = "Pi"ă      Hint = "Pi (3.14159265358979)"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE SqrtButt AS QBUTTONă      Font = Arial9Bă      Top = 157ă      Left = 0ă      Width = 58ă      Height = 18ă      Caption = "Sqrt"ă      Hint = "Square root"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE CbrtButt AS QBUTTONă      Font = Arial9Bă      Top = 157ă      Left = 58ă      Width = 58ă      Height = 18ă      Caption = "Cbrt"ă      Hint = "Cube root"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE AbsButt AS QBUTTONă      Font = Arial9Bă      Top = 157ă      Left = 116ă      Width = 58ă      Height = 18ă      Caption = "Abs"ă      Hint = "Absolute value"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ExpButt AS QBUTTONă      Font = Arial9Bă      Top = 157ă      Left = 174ă      Width = 58ă      Height = 18ă      Caption = "Exp"ă      Hint = "e raised to the input number"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE sqrButt AS QBUTTONă      Font = Arial9Wă      Top = 176ă      Left = 0ă      Width = 58ă      Height = 18ă      Caption = "Sqr"ă      Hint = "Squared"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE BegParButt AS QBUTTONă      Font = Arial9Wă      Top = 24ă      Left = 290ă      Width = 29ă      Height = 18ă      Caption = "("ă      Hint = "Left parenthesis"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE EndParButt AS QBUTTONă      Font = Arial9Wă      Top = 24ă      Left = 319ă      Width = 29ă      Height = 18ă      Caption = ")"ă      Hint = "Right parenthesis"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE DotButt AS QBUTTONă      Font = Arial9Bă      Top = 157ă      Left = 290ă      Width = 58ă      Height = 18ă      Caption = "."ă      Hint = "Decimal point"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE FactButt AS QBUTTONă      Font = Arial9Wă      Top = 176ă      Left = 58ă      Width = 58ă      Height = 18ă      Caption = "Fact"ă      Hint = "Factorial"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE RandButt AS QBUTTONă      Font = Arial9Wă      Top = 176ă      Left = 116ă      Width = 58ă      Height = 18ă      Caption = "Rand"ă      Hint = "rand() = random decimal; rand(9) = random integer"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE ModButt AS QBUTTONă      Font = Arial9Wă      Top = 176ă      Left = 174ă      Width = 58ă      Height = 18ă      Caption = "Mod"ă      Hint = "Modulus"ă      ShowHint = 1ă      OnClick = MathButtsă    END CREATEă    CREATE Conversions AS QPOPUPMENUă       CREATE ftm AS QMENUITEMă         Caption = "Foot > meter"ă         OnClick = ConversionsAllă       END CREATEă       CREATE mft AS QMENUITEMă         Caption = "Meter > foot"ă         OnClick = ConversionsAllă       END CREATEă       CREATE incm AS QMENUITEMă         Caption = "Inch > centimeter"ă         OnClick = ConversionsAllă       END CREATEă       CREATE cmin AS QMENUITEMă         Caption = "Centimeter > inch"ă         OnClick = ConversionsAllă       END CREATEă       CREATE kmmi AS QMENUITEMă         Caption = "Kilometer > mileă         OnClick = ConversionsAllă       END CREATEă       CREATE mikm AS QMENUITEMă         Caption = "Mile > kilometer"ă         OnClick = ConversionsAllă       END CREATEă       CREATE inft AS QMENUITEMă         Caption = "Inch > foot"ă         OnClick = ConversionsAllă       END CREATEă       CREATE ftin AS QMENUITEMă         Caption = "Foot > inch"ă         OnClick = ConversionsAllă       END CREATEă       CREATE ydm AS QMENUITEMă         Caption = "Yard > meter"ă         OnClick = ConversionsAllă       END CREATEă       CREATE myd AS QMENUITEMă         Caption = "Meter > yard"ă         OnClick = ConversionsAllă       END CREATEă       CREATE fam AS QMENUITEMă         Caption = "Fathom > meter"ă         OnClick = ConversionsAllă       END CREATEă       CREATE mfa AS QMENUITEMă         Caption = "Meter > fathom"ă         OnClick = ConversionsAllă       END CREATEă       CREATE mily AS QMENUITEMă         Caption = "Mile > light-year"ă         OnClick = ConversionsAllă       END CREATEă       CREATE lymi AS QMENUITEMă         Caption = "Light-year > mile"ă         OnClick = ConversionsAllă       END CREATEă       CREATE PartoLy AS QMENUITEMă         Caption = "Parsec > light-year"ă         OnClick = ConversionsAllă       END CREATEă       CREATE LytoPar AS QMENUITEMă         Caption = "Light-year > parsec"ă         OnClick = ConversionsAllă       END CREATEă       CREATE LengthBreak AS QMENUITEMă         Caption = "-"ă       END CREATEă       CREATE ft2m2 AS QMENUITEMă         Caption = "Square ft > square m"ă         OnClick = ConversionsAllă       END CREATEă       CREATE m2ft2 AS QMENUITEMă         Caption = "Square m > square ft"ă         OnClick = ConversionsAllă       END CREATEă       CREATE in2cm2 AS QMENUITEMă         Caption = "Square in > square cm"ă         OnClick = ConversionsAllă       END CREATEă       CREATE cm2in2 AS QMENUITEMă         Caption = "Square cm > square in"ă         OnClick = ConversionsAllă       END CREATEă       CREATE haac AS QMENUITEMă         Caption = "Hectare > acre"ă         OnClick = ConversionsAllă       END CREATEă       CREATE acha AS QMENUITEMă         Caption = "Acre > hectare"ă         OnClick = ConversionsAllă       END CREATEă       CREATE AreaBreak AS QMENUITEMă         Caption = "-"ă       END CREATEă       CREATE lbkg AS QMENUITEMă         Caption = "Pound > kilogram"ă         OnClick = ConversionsAllă       END CREATEă       CREATE kglb AS QMENUITEMă         Caption = "Kilogram > pound"ă         OnClick = ConversionsAllă       END CREATEă       CREATE TontoKilo AS QMENUITEMă         Caption = "Ton (metric) > Kilogram"ă         OnClick = ConversionsAllă       END CREATEă       CREATE KilotoTon AS QMENUITEMă         Caption = "Kilogram > ton (metric)"ă         OnClick = ConversionsAllă       END CREATE       ă       CREATE TontoKiloUS AS QMENUITEMă         Caption = "Ton (US) > Kilogram"ă         OnClick = ConversionsAllă       END CREATEă       CREATE KilotoTonUS AS QMENUITEMă         Caption = "Kilogram > ton (US)"ă         OnClick = ConversionsAllă       END CREATEă       CREATE TontoKiloUK AS QMENUITEMă         Caption = "Ton (UK) > Kilogram"ă         OnClick = ConversionsAllă       END CREATEă       CREATE KilotoTonUK AS QMENUITEMă         Caption = "Kilogram > ton (UK)"ă         OnClick = ConversionsAllă       END CREATEă       CREATE OztoGram AS QMENUITEMă         Caption = "Ounce (avoirdupois) > gram"ă         OnClick = ConversionsAllă       END CREATEă       CREATE GramtoOz AS QMENUITEMă         Caption = "Gram > ounce (avoirdupois)"ă         OnClick = ConversionsAllă       END CREATE              ă       CREATE OztoGramT AS QMENUITEMă         Caption = "Ounce (troy) > gram"ă         OnClick = ConversionsAllă       END CREATEă       CREATE GramtoOzT AS QMENUITEMă         Caption = "Gram > ounce (troy)"ă         OnClick = ConversionsAllă       END CREATEă       CREATE MassBreak AS QMENUITEMă         Caption = "-"ă       END CREATEă       CREATE FC AS QMENUITEMă         Caption = "Fahrenheit > Celsius"ă         OnClick = ConversionsAllă       END CREATEă       CREATE CF AS QMENUITEMă         Caption = "Celsius > Fahrenheit"ă         OnClick = ConversionsAllă       END CREATEă       CREATE CK AS QMENUITEMă         Caption = "Celsius > Kelvin"ă         OnClick = ConversionsAllă       END CREATEă       CREATE KC AS QMENUITEMă         Caption = "Kelvin > Celsius"ă         OnClick = ConversionsAllă       END CREATEă       CREATE TempBreak AS QMENUITEMă         Caption = "-"ă       END CREATEă       CREATE GaltoLit AS QMENUITEMă         Caption = "Gallon (US dry) > liter"ă         OnClick = ConversionsAllă       END CREATEă       CREATE LittoGal AS QMENUITEMă         Caption = "Liter > gallon (US dry)"ă         OnClick = ConversionsAllă       END CREATEă       CREATE GaltoLitL AS QMENUITEMă         Caption = "Gallon (US liquid) > liter"ă         OnClick = ConversionsAllă       END CREATEă       CREATE LittoGalL AS QMENUITEMă         Caption = "Liter > gallon (US liquid)"ă         OnClick = ConversionsAllă       END CREATE       ă       CREATE QrtoGal AS QMENUITEMă         Caption = "Quart (US dry) > gallon (US dry)"ă         OnClick = ConversionsAllă       END CREATEă       CREATE GaltoQrt AS QMENUITEMă         Caption = "Gallon (US dry) > quart (US dry)"ă         OnClick = ConversionsAllă       END CREATEă       CREATE PinttoLtr AS QMENUITEMă         Caption = "Pint > liter (US dry)"ă         OnClick = ConversionsAllă       END CREATEă       CREATE LtrtoPint AS QMENUITEMă         Caption = "Liter > pint (US dry)"ă         OnClick = ConversionsAllă       END CREATE       ă       CREATE PinttoLtrL AS QMENUITEMă         Caption = "Pint > liter (US liquid)"ă         OnClick = ConversionsAllă       END CREATEă       CREATE LtrtoPintL AS QMENUITEMă         Caption = "Liter > pint (US liquid)"ă         OnClick = ConversionsAllă       END CREATEă       CREATE ft3m3 AS QMENUITEMă         Caption = "Cubic ft > cubic m"ă         OnClick = ConversionsAllă       END CREATEă       CREATE m3ft3 AS QMENUITEMă         Caption = "Cubic m > cubic ft"ă         OnClick = ConversionsAllă       END CREATEă       CREATE VolumeBreak AS QMENUITEMă         Caption = "-"ă       END CREATEă       CREATE HptoWatt AS QMENUITEMă         Caption = "Horsepower (elec.) > watt"ă         OnClick = ConversionsAllă       END CREATEă       CREATE WatttoHp AS QMENUITEMă         Caption = "Watt > horsepower (elec.)"ă         OnClick = ConversionsAllă       END CREATEă       CREATE HptoWattM AS QMENUITEMă         Caption = "Horsepower (metric) > watt"ă         OnClick = ConversionsAllă       END CREATEă       CREATE WatttoHpM AS QMENUITEMă         Caption = "Watt > horsepower (metric)"ă         OnClick = ConversionsAllă       END CREATE       ă       CREATE BTUtoWatt AS QMENUITEMă         Caption = "BTU/hour > watt"ă         OnClick = ConversionsAllă       END CREATEă       CREATE WatttoBTU AS QMENUITEMă         Caption = "Watt > BTU/hour"ă         OnClick = ConversionsAllă       END CREATEă       CREATE KwtoWatt AS QMENUITEMă         Caption = "Kilowatt > watt"  ă         OnClick = ConversionsAllă       END CREATEă       CREATE WatttoKw AS QMENUITEMă         Caption = "Watt > kilowatt"ă         OnClick = ConversionsAllă       END CREATEă       CREATE PowerBreak AS QMENUITEMă         Caption = "-"ă       END CREATEă       CREATE KphtoMph AS QMENUITEMă         Caption = "Kph > mph"ă         OnClick = ConversionsAllă       END CREATEă       CREATE MphtoKph AS QMENUITEMă         Caption = "Mph > kph"ă         OnClick = ConversionsAllă       END CREATEă       CREATE KnottoMph AS QMENUITEMă         Caption = "Knot > mph"ă         OnClick = ConversionsAllă       END CREATEă       CREATE MphtoKnot AS QMENUITEMă         Caption = "Mph > knot"ă         OnClick = ConversionsAllă       END CREATEă       CREATE MpstoFps AS QMENUITEMă         Caption = "Meter/sec > ft/sec"ă         OnClick = ConversionsAllă       END CREATEă       CREATE FpstoMps AS QMENUITEMă         Caption = "Ft/sec > meter/sec"ă         OnClick = ConversionsAllă       END CREATEă       CREATE SpeedBreak AS QMENUITEMă         Caption = "-"ă       END CREATEă       CREATE SectoMin AS QMENUITEMă         Caption = "Second > minute"ă         OnClick = ConversionsAll ă       END CREATEă       CREATE MintoSec AS QMENUITEMă         Caption = "Minute > second"ă         OnClick = ConversionsAllă       END CREATEă       CREATE MintoHr AS QMENUITEMă         Caption = "Minute > hour"ă         OnClick = ConversionsAllă       END CREATEă       CREATE HrtoMin AS QMENUITEMă         Caption = "Hour > minute"ă         OnClick = ConversionsAllă       END CREATEă       CREATE MintoDay AS QMENUITEMă         Caption = "Minute > day"ă         OnClick = ConversionsAllă       END CREATEă       CREATE DaytoMin AS QMENUITEMă         Caption = "Day > minute"ă         OnClick = ConversionsAllă       END CREATEă       CREATE DaytoHr AS QMENUITEMă         Caption = "Day > hour"ă         OnClick = ConversionsAllă       END CREATEă       CREATE HrtoDay AS QMENUITEMă         Caption = "Hour > day"ă         OnClick = ConversionsAllă       END CREATEă       CREATE TimeBreak AS QMENUITEMă         Caption = "-"ă       END CREATEă       CREATE PsitoPas AS QMENUITEMă         Caption = "Psi > pascal"ă         OnClick = ConversionsAllă       END CREATEă       CREATE PastoPsi AS QMENUITEMă         Caption = "Pascal > psi"ă         OnClick = ConversionsAllă       END CREATEă         CREATE PsitoAtm AS QMENUITEMă         Caption = "Psi > atmosphere"ă         OnClick = ConversionsAllă       END CREATEă       CREATE Atmtopsi AS QMENUITEMă         Caption = "Atmosphere > psi"ă         OnClick = ConversionsAllă       END CREATEă       CREATE PsitoKgscm AS QMENUITEMă         Caption = "Psi > kg/sqcm"ă         OnClick = ConversionsAllă       END CREATEă       CREATE KgscmtoPsi AS QMENUITEMă         Caption = "Kg/sqcm > psi"ă         OnClick = ConversionsAllă       END CREATEă    END CREATE    ă    CREATE Constants AS QPOPUPMENUă      CREATE AccelerationG AS QMENUITEMă        Caption = "Acceleration of gravity (m/sec˛)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE ADensity AS QMENUITEMă        Caption = "Dry air density at STP (kg/m" + CHR$(0179) + ")"ă        OnClick = ConstantsAllă      END CREATEă      CREATE LSpeed AS QMENUITEMă        Caption = "Light speed in a vacuum (m/sec)"ă        OnClick = ConstantsAll ă      END CREATEă      CREATE SolarC AS QMENUITEMă        Caption = "Solar constant (watts/m˛)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE SSpeed AS QMENUITEMă        Caption = "Sound speed at STP (m/sec)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE SAtmosphere AS QMENUITEMă        Caption = "Standard atmosphere (nt/m˛)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE BreakEarth1 AS QMENUITEMă        Caption = "-"ă      END CREATEă      CREATE EERadius AS QMENUITEMă        Caption = "Earth equatorial radius (m)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE EEscapeV AS QMENUITEMă        Caption = "Earth escape velcity (m/sec)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE MEarthDipole AS QMENUITEMă        Caption = "Earth magnetic dipole moment (amp-m˛)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE MEarth AS QMENUITEMă        Caption = "Earth mass (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE MAngularS AS QMENUITEMă        Caption = "Earth mean angular rotational speed (rads/sec)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE DEarth AS QMENUITEMă        Caption = "Earth mean density (kg/m" + CHR$(0179) + ")"ă        OnClick = ConstantsAllă      END CREATEă      CREATE MOrbitalS AS QMENUITEMă        Caption = "Earth mean orbital speed (m/sec)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE PERadius AS QMENUITEMă        Caption = "Earth polar radius (m)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE VEarth AS QMENUITEMă        Caption = "Earth volume (m" + CHR$(0179) + ")"ă        OnClick = ConstantsAllă      END CREATEă      CREATE BreakEarth2 AS QMENUITEMă        Caption = "-"ă      END CREATEă      CREATE AlphaPMass AS QMENUITEMă        Caption = "Alpha particle mass (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE ElectronCMassR AS QMENUITEMă        Caption = "Electron charge-mass ratio (coul/kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE ElectronMass AS QMENUITEMă        Caption = "Electron rest mass (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE MuonMass AS QMENUITEMă        Caption = "Muon rest mass (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE NeutronMass AS QMENUITEMă        Caption = "Neutron rest mass (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE ProtonMass AS QMENUITEMă        Caption = "Proton rest mass (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE AtomicBreak AS QMENUITEMă        Caption = "-"ă      END CREATEă      CREATE ATomicMC AS QMENUITEMă        Caption = "Atomic mass constant (kg)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE AvogadroC AS QMENUITEMă        Caption = "Avogadro constant (1/mole)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE BoltzmannC AS QMENUITEMă        Caption = "Boltzmann constant (joule/K)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE ECharge AS QMENUITEMă        Caption = "Elementary charge (coul)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE FaradayC AS QMENUITEMă        Caption = "Faraday constant (coul/mole)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE GravityC AS QMENUITEMă        Caption = "Gravitational constant (nt-m˛/kg˛)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE PermeabilityC AS QMENUITEMă        Caption = "Permeability constant (henry/m)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE PermittivityC AS QMENUITEMă        Caption = "Permittivity constant (farad/m)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE PlankC AS QMENUITEMă        Caption = "Planck constant (joule-sec)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE RydbergC AS QMENUITEMă        Caption = "Rydberg constant (1/m)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE SBoltzmannC AS QMENUITEMă        Caption = "Stefan-Boltzmann constant (watt/m˛K4)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE UnivGasC AS QMENUITEMă        Caption = "Universal gas constant (joule/K-mole)"ă        OnClick = ConstantsAllă      END CREATEă      CREATE WienC AS QMENUITEMă        Caption = "Wien displacement constant (m-K)"ă        OnClick = ConstantsAllă      END CREATEă    END CREATEă  END CREATEă  CREATE NoteProductForm AS QFORM    ă    Top = Screen.Height/2 + 27ă    Left = Screen.Width/2 - 170ă    Width = 340 '320ă    Height = 205ă    Visible = 0ă    Color = &HABC777ă    BorderStyle = bsSingleă    DelBorderIcons(biMaximize)ă    'DelBorderIcons(biMinimize)ă    FormStyle = fsStayOnTopă    Caption = "Notes on QEDTukak"ă    OnClose = CloseNotesă    CREATE DXNotes AS QCanvasă      Top = 21ă      Left = 242ă      Height = 63ă      Width = 84ă      Color = 0ă      Cursor = -21ă      Hint = "Click to email comment or bug report."ă      Showhint = 1ă      OnClick = EmailMeă    END CREATEă    CREATE ProductList AS QLISTBOXă	Width = 232ă      Height = 177ă      AddItems ""ă      AddItems "Welcome!ă      AddItems ""ă      AddItems "  »  QEDTukak is an easy-to-use yet ă      AddItems "      powerful expression evaluatoră      AddItems "      that can evaluate expressions like:ă      AddItems "      Sin(.1)^2 - 3*Ln(Tan(.1*PI)).ă      AddItems ""ă      AddItems "  »  The precedence rule followed is: ă      AddItems "      ^   *   /   +   -ă      AddItems ""ă      AddItems "  »  To access the different menus, simply ă      AddItems "      right-click on the Time Panel at the  ă      AddItems "      right end of QEDTukak.ă      AddItems ""ă      AddItems "  »  The Functions Selector, the History ă      AddItems "      View and the Variables Input come up ă      AddItems "      whenever you left-click the Time Panel.ă      AddItems ""ă      AddItems "  »  To build your math expression, type in ă      AddItems "      the functions or simply click the ă      AddItems "      appropriate buttons.ă      AddItems ""ă      AddItems "  »  If you're typing, refer to your Functionsă      AddItems "      Selector for the function syntax.ă      AddItems "      The functions are NOT case-sensitive.ă      AddItems "      (When using scientific notation,ă      AddItems "      remember not to put + after E: i.e.ă      AddItems "      1000 is 1E3 NOT 1E+3. However,ă      AddItems "      .001 is 1E-3.)ă      AddItems ""ă      AddItems "  »  You can use variables in your ă      AddItems "      expressions. There are only 6 valid ă      AddItems "      variable names: J,K,U,W,Y,Z. They  ă      AddItems "      are NOT case-sensitive (Y is exactly ă      AddItems "      equal to y). No other variable names ă      AddItems "      are allowed. To assign values to your  ă      AddItems "      variables, right-click on the Time ă      AddItems "      Panel and click Variables Input.                      ă      AddItems "" ă      AddItems "  »  The answer appears on the title bară      AddItems "      and on the History View.ă      AddItems ""ă      AddItems "  »  To clear your entry, press Esc or clickă      AddItems "      on Clear on the Functions Selector.ă      AddItems ""ă      AddItems "  »  To access the Constants Menu, right-ă      AddItems "      click on the Functions Selector.ă      AddItems "      Alternatively, you can right-click onă      AddItems "      the Time Panel then select Constants.ă      AddItems ""ă      AddItems "  »  To access the Conversions Menu, right-ă      AddItems "      click on the Time Panel then select ă      AddItems "      Conversions."                 ă      AddItems ""          ă      AddItems "Programming"ă      AddItems "  »  QEDTukak was written in Rapid-Q,"ă      AddItems "      a compiler developed by William Yu."ă      AddItems "      It's also freeware and downloadable"ă      AddItems "      at www.basicguru.com/abc/rapidq."     ă    END CREATEă    CREATE NotesP0 AS QLABELă      Top = 5ă      Left = 235ă      Font = Arial9Bă      Layout = -1ă      LabelStyle = 1ă      Caption = "  QEDTukak 1.54"ă      Hint = "Click to visit website"ă      ShowHint = 1ă      OnClick = SendMeă    END CREATEă    CREATE NotesP1 AS QLABELă      Top = 85ă      Left = 235ă      Caption = "  Copyright (c) 2001\n    Achilles B. Mina\n\nThis is FREEWARE.\n Not for commercial\n       distribution."ă    END CREATEă  END CREATEă  ShowăEND CREATE ăăSUB ExpSolveră  IF soundoff = 0 THEN PLAYWAV (lionroar,1)ă  'CMode = 57.2957795130824       'converts to degreesă  'CModeN = 0.0174532925199433    'converts to radiansă  Math(1) = "sin"ă  Math(2) = "cos"ă  Math(3) = "tan"ă  Math(4) = "cot"ă  Math(5) = "sec"ă  Math(6) = "csc"ă  Math(7) = "sqrt"ă  Math(8) = "log"ă  Math(9) = "ln"ă  Math(10) = "asin"ă  Math(11) = "acos"ă  Math(12) = "atan"ă  Math(13) = "acot"ă  Math(14) = "asec"ă  Math(15) = "acsc"ă  Math(16) = "sinh"ă  Math(17) = "cosh"ă  Math(18) = "tanh"ă  Math(19) = "coth"ă  Math(20) = "sech"ă  Math(21) = "csch"ă  Math(22) = "asinh"ă  Math(23) = "acosh"ă  Math(24) = "atanh"ă  Math(25) = "acoth"ă  Math(26) = "asech"ă  Math(27) = "acsch"ă  Math(28) = "inv"ă  Math(29) = "exp"ă  Math(30) = "abs"ă  Math(31) = "int"ă  Math(32) = "frac"ă  Math(33) = "floor"ă  Math(34) = "ceil"ă  Math(35) = "cbrt"ă  Math(36) = "sqr"ă  Math(37) = "fact"ă  Math(38) = "rand"ă  Math(39) = "mod"ăEND SUBăăSUB ClrExpEdită  IF soundoff = 0 THEN PLAYWAV (wipe,1)ă  ExpEdit.Text = ""ă  SetFocus(ExpEdit.Handle)ăEND SUBăăSUB ClrLastExpEdită  IF soundoff = 0 THEN PLAYWAV (wipe,1)ă  ExpEdit.Text = oldexpressionă  ExpEdit.SelStart = LEN(ExpEdit.Text)ă  SetFocus(ExpEdit.Handle)ăEND SUBăăSUB VariablesEntered(key AS BYTE)ă  IF key = 13 THEN ă    preCheckSyntaxă  ELSEă    IF soundoff = 0 THEN PLAYWAV (typing,1)ă  END IFăEND SUBăăSUB preCheckSyntax ă  CheckSyntax(13)ă  SetFocus(ExpEdit.Handle)ăEND SUBăăSUB CheckSyntax(key AS BYTE)ă  DEFSHORT posops, startmath, wherepiă  oldexpression = ExpEdit.Textă  IF soundoff = 0 THEN PLAYWAV (typing,1)ă      'formula$ = "2^(1 - (2^2)/2 * (1 + ((2 ^ 2) + 1)) + 1)"ă      'formula$ = "(1 + 2+3+4+5+6+7+8+9+10-55)"ă      'formula$ = "3+(4*(-3+2*34)+2)^2"ă      'formula$ = "-5-4-3-2-1" ă      'formula$ = "(-2)^2 +1"ă      'formula$ = "-(-5)+(-4)-(-3)+(2)-(1) + (.5 + 1)^2"ă      'formula$ = "Sin(.1)^2-3*Ln(Tan(.1*PI))"ă      'formula$ = "Sin(.1)-3*Ln(Tam(.1*PI))"ă      'formula$ = "Ln(Tan(.1*PI))"ă      'formula$ = "2^30 + 2.14e9*2.14e10 + 5e19 + exp(2) * exp(2)- exp(2) ^exp(2)/exp(2) -sec(35)"ă  formula$ = LCASE$(REPLACESUBSTR$(ExpEdit.Text," ",""))ă  formula$ = REPLACESUBSTR$(formula$,"pi","3.14159265358979")ă  formula$ = REPLACESUBSTR$(formula$,"--","+")ă  FOR x = 1 TO 2ă    IF JVarEdit.Text <> "" THEN formula$ = REPLACESUBSTR$(formula$,"j",JVarEdit.Text)ă    IF KVarEdit.Text <> "" THEN formula$ = REPLACESUBSTR$(formula$,"k",KVarEdit.Text)ă    IF UVarEdit.Text <> "" THEN formula$ = REPLACESUBSTR$(formula$,"u",UVarEdit.Text)ă    IF WVarEdit.Text <> "" THEN formula$ = REPLACESUBSTR$(formula$,"w",WVarEdit.Text)ă    IF YVarEdit.Text <> "" THEN formula$ = REPLACESUBSTR$(formula$,"y",YVarEdit.Text)ă    IF ZVarEdit.Text <> "" THEN formula$ = REPLACESUBSTR$(formula$,"z",ZVarEdit.Text)ă  NEXTă  IF key = 27 OR (key = 13 AND formula$ = "") THENă    IF soundoff = 0 THEN PLAYWAV (wipe,1)ă    ExpEdit.Text = ""ă  ELSEIF (key = 13 OR key = 61) AND ExpEdit.Text <> "" THENă    changeEă    math$ = ""ă    startmath = 0ă    errmath$ = ""ă    mathchar$ = ""       ă    IF TALLY(formula$,")(") <> 0 THENă      IF soundoff = 0 THEN PLAYWAV (chicken,1)ă      MessageDlg("Invalid -> ')('. Please correct syntax.", mtError, mbOK, 0)ă      EXIT SUBă    END IF    ă    IF TALLY(formula$,"(") <> TALLY(formula$,")") THENă      IF soundoff = 0 THEN PLAYWAV (chicken,1)ă      MessageDlg("Missing parenthesis. Please correct syntax.", mtError, mbOK, 0)ă      EXIT SUBă    ELSEă      DO     ă        INC startmathă        oldmathchar$ = mathchar$ă        mathchar$ = MID$(formula$,startmath,1)ă        SELECT CASE mathchar$ă          CASE "e"ă            SELECT CASE oldmathchar$ă              CASE "","^","c","s","-","+","*","/","\"ă                math$ = math$ + mathchar$ă                errmath$ = math$ă            END SELECTă          CASE "a","b","c","d","f","g","h","i","l","m","n","o","p","q","r","s","t","v","x"ă            math$ = math$ + mathchar$ă            errmath$ = errmath$ + mathchar$ă            SELECT CASE oldmathchar$ă              CASE "0" TO "9"ă                IF soundoff = 0 THEN PLAYWAV (chicken,1)ă                MessageDlg(errmath$ + " is invalid. Please correct syntax.", mtError, mbOK, 0)ă                EXIT SUBă            END SELECT            ă          CASE "j","k","u","w","y","z"ă            errmath$ = errmath$ + mathchar$ă            FOR x = 1 TO 5ă              ops$ = MID$("+-*/^",x,1)ă              posops = RINSTR(errmath$,ops$)ă              IF posops <> 0 THEN EXIT FORă            NEXTă            errmath$ = RIGHT$(errmath$,LEN(errmath$)-posops)ă            IF soundoff = 0 THEN PLAYWAV (chicken,1)ă            MessageDlg(errmath$ + "?" + " Please correct syntax.", mtError, mbOK, 0)ă            EXIT SUBă          CASE ")"ă            afterendpar$ = MID$(formula$,startmath+1,1)ă            SELECT CASE afterendpar$ă              CASE "0" TO "9"ă                IF soundoff = 0 THEN PLAYWAV (chicken,1)ă                MessageDlg(")"+ afterendpar$ + " is invalid." + " Please correct syntax.", mtError, mbOK, 0)ă                EXIT SUBă            END SELECT            ă          CASE "("ă            SELECT CASE oldmathchar$ă              CASE "0" TO "9"ă                IF soundoff = 0 THEN PLAYWAV (chicken,1)ă                MessageDlg(oldmathchar$ + "( is invalid." + " Please correct syntax.", mtError, mbOK, 0)ă                EXIT SUBă            END SELECT               ă            IF math$ <> "" THENă              FOR x = 1 TO 39ă                IF math$ = Math(x) THEN ă                  math$ = ""ă                END IFă              NEXTă              IF math$ <> "" AND math$ <> "pi" THEN      'if there's a match, skip thisă                IF soundoff = 0 THEN PLAYWAV (chicken,1)                ă                MessageDlg(errmath$ + "?" + " Please correct syntax.", mtError, mbOK, 0)ă                EXIT SUBă              END IFă            END IFă          CASE "0" TO "9"ă            errmath$ = errmath$ + mathchar$ă            SELECT CASE oldmathchar$ă              CASE "a" TO "d", "f" TO "z"ă                FOR x = 1 TO 5ă                  ops$ = MID$("+-*/^",x,1)ă                  posops = RINSTR(errmath$,ops$)ă                  IF posops <> 0 THEN EXIT FORă                NEXTă                errmath$ = RIGHT$(errmath$,LEN(errmath$)-posops)ă                IF soundoff = 0 THEN PLAYWAV (chicken,1)ă                MessageDlg(errmath$ + "?" + " Please correct syntax.", mtError, mbOK, 0)ă                EXIT SUBă            END SELECTă          CASE "+","-","*","/","^"ă            IF (math$ <> "" AND math$ <> "pi") AND (INSTR(math$,"(") = 0 OR INSTR(math$,")") = 0) THENă              FOR x = 1 TO 5ă                ops$ = MID$("+-*/^",x,1)ă                posops = RINSTR(errmath$,ops$)ă                IF posops <> 0 THEN EXIT FORă              NEXTă              math$ = RIGHT$(math$,LEN(math$)-posops)ă              IF soundoff = 0 THEN PLAYWAV (chicken,1)ă              MessageDlg("Missing parenthesis. Please correct syntax.", mtError, mbOK, 0)ă              EXIT SUBă            END IF              ă        END SELECT    ă      LOOP UNTIL startmath = LEN(formula$)ă    END IFă    'formula$ = REPLACESUBSTR$(formula$,"pi","3.14159265358979")ă    ExpSolverEdită  END IFăEND SUBăăSUB ExpSolverEdit  ă  'HistoryView.AddItems formula$ + " ="ă  HistoryView.InsertItem(0,formula$ + " =")ă  FOR i = 1 TO 1000ă    DOă      reformatted = 0ă      formula$ = REPLACESUBSTR$(formula$,"--","+")ă      formulaL = LEN(formula$)ă      par1 = RINSTR(formulaL,formula$,"(")ă      par2 = INSTR(par1,formula$,")")ă      IF par1 = 0 OR par2 = 0 THENă        betweenpars$ = formula$ă      ELSEă        betweenpars$ = MID$(formula$,par1+1,(par2-1)-par1)ă      END IFă      IF INSTR(betweenpars$,"^") <> 0 THENă        pivotoperator$ = "^"ă        operator = INSTR(betweenpars$,"^")      ă      ELSEIF INSTR(betweenpars$,"*") <> 0 THENă        pivotoperator$ = "*"ă        operator = INSTR(betweenpars$,"*")ă      ELSEIF INSTR(betweenpars$,"/") <> 0 THENă        pivotoperator$ = "/"ă        operator = INSTR(betweenpars$,"/")ă      ELSEIF (INSTR(betweenpars$,"+") <> 0 OR INSTR(betweenpars$,"-") <> 0) THEN 'AND INSTR(betweenpars$,"E") = 0 THENă        IF MID$(betweenpars$,1,1) = "-" THEN ă          start = 2ă        ELSEă          start = 1ă        END IFă        IF (TALLY(betweenpars$,"-") = 1 AND TALLY(betweenpars$,"+") = 0) AND MID$(betweenpars$,1,1) = "-" THENă          checkback$ = MID$(formula$,par1-1,1)ă          SELECT CASE checkback$ă            CASE "c","d","g","h","l","n","p","r","s","t","v"ă              Functions(par1,betweenpars$)ă            CASE ELSEă              formula$ = DELETE$(formula$,par1,1)ă              formula$ = DELETE$(formula$,par2-1,1) ă          END SELECTă          IF formula$ = betweenpars$ THENă            IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă            DoPrecisionă            EXIT SUBă          END IFă          reformatted = 1ă        ELSEă          FOR y = start TO LEN(betweenpars$)ă            operator$ = MID$(betweenpars$,y,1)ă            SELECT CASE operator$ă              CASE "+","-"ă                operator = yă                pivotoperator$ = MID$(betweenpars$,operator,1)ă                EXIT FORă            END SELECTă          NEXTă        END IFă      ELSEă        checkback$ = MID$(formula$,par1-1,1)ă        SELECT CASE checkback$ă          CASE "c","d","g","h","l","n","p","r","s","t","v"ă            Functions(par1,betweenpars$)ă          CASE ELSEă            formula$ = DELETE$(formula$,par1,1)ă            formula$ = DELETE$(formula$,par2-1,1) ă        END SELECTă        IF formula$ = betweenpars$ THENă          IF soundoff = 0 THEN PLAYWAV (cashreg,1)ă          DoPrecisionă          EXIT SUBă        END IFă        reformatted = 1ă      END IFă      formula$ = REPLACESUBSTR$(formula$,"--","+")ă    LOOP UNTIL reformatted = 0ă    x = operatoră    DOă      INC xă      IF x >= LEN(betweenpars$) THENă        postoperator = xă        EXIT DOă      END IF  ă      operator$ = MID$(betweenpars$,x,1)ă      SELECT CASE operator$ă        CASE "+","*","/","^"ă          postoperator = x - 1ă          EXIT DOă        CASE "-"ă          IF x <> operator + 1 THENă            postoperator = x - 1ă            EXIT DOă          END IFă      END SELECTă    LOOPă    x = operatoră    DOă      DEC xă      IF x <= 1 THENă       preoperator = 1ă       EXIT DOă      END IFă      operator$ = MID$(betweenpars$,x,1)ă      SELECT CASE operator$ă        CASE "+","-","*","/","^"ă          preoperator = x + 1ă          EXIT DOă      END SELECTă    LOOPă    preopnumber = VAL(MID$(betweenpars$,preoperator,(operator-1)-(preoperator-1)))ă    postopnumber = VAL(MID$(betweenpars$,operator+1,postoperator-operator))ă    oldstring$ = MID$(formula$,par1+preoperator,postoperator-(preoperator-1))ă    SELECT CASE pivotoperator$ă      CASE "^"ă        IF preopnumber < 0 THENă          IF (postopnumber > 1 AND postopnumber MOD 2 = 0) OR postopnumber = 0 THENă            newstring = preopnumber ^ postopnumberă          ELSEă            SHOWMESSAGE("You're extracting the root of a negative number." + CHR$(13)_ă                      + "QEDTukak will display the real solution only.")ă            newstring = SGN(preopnumber)*(ABS(preopnumber) ^ postopnumber)ă          END IFă        ELSEă          newstring = preopnumber ^ postopnumberă        END IFă      CASE "*"ă        newstring = preopnumber * postopnumberă      CASE "/"ă        IF postopnumber = 0 THENă          IF soundoff = 0 THEN PLAYWAV (chicken,1)ă          MessageDlg("Can't divide by zero. Please correct entry.", mtError, mbOK, 0)ă          EXIT SUBă        END IFă        newstring = preopnumber / postopnumberă      CASE "+"ă        newstring = preopnumber + postopnumberă      CASE "-"ă        newstring = preopnumber - postopnumber            ă    END SELECTă    DoInPrecision(newstring,@newstring$)ă    CheckE(@newstring$)ă    formula$ = REPLACESUBSTR$(formula$,oldstring$,newstring$)ă    'formula$ = REPLACESUBSTR$(formula$,"--","+")ă  NEXTăEND SUBăăSUB Functions(par1 AS INTEGER,mathval$ AS STRING)ă  startmath = par1ă  DO        ă    DEC startmathă    mathchar$ = MID$(formula$,startmath,1)ă    SELECT CASE mathchar$ă      CASE "+","-","*","/","^","("ă        EXIT DOă      CASE "a","b","c","d","e","f","g","h","i","l","m","n","o","p","q","r","s","t","v","x"ă        math$ = mathchar$ + math$ă    END SELECT        ă  LOOP UNTIL startmath <= 1ă  FOR i = 1 TO 39ă    IF math$ = Math(i) THENă      math$ = ""ă      oldval$ = Math(i) + "(" + mathval$ + ")"ă      SELECT CASE iă        CASE 1ă          insertval = SIN(VAL(mathval$)*CModeN)ă        CASE 2ă          insertval = COS(VAL(mathval$)*CModeN)ă        CASE 3ă          insertval = TAN(VAL(mathval$)*CModeN)ă        CASE 4ă          insertval = 1/(TAN(VAL(mathval$)*CModeN))ă        CASE 5ă          insertval = 1/(COS(VAL(mathval$)*CModeN))ă        CASE 6ă          insertval = 1/(SIN(VAL(mathval$)*CModeN))ă        CASE 7ă          IF VAL(mathval$) < 0 THENă            SHOWMESSAGE("You're extracting the root of a negative number." + CHR$(13)_ă                      + "QEDTukak will display the real solution only.")ă          END IFă          insertval = SGN(VAL(mathval$))*(ABS(VAL(mathval$))^(1/2))ă        CASE 8ă          insertval = LOG(VAL(mathval$))/LOG(10)ă        CASE 9ă          insertval = LOG(VAL(mathval$))ă        CASE 10ă          IF VAL(mathval$) > 1 THENă            outformold$ = outform$  ă            outform$ = "und"ă          ELSEIF VAL(mathval$) = 1 THENă            IF CMode = 1 THENă              insertval = 1.5707963267949ă            ELSEă              insertval = 90ă            END IF           ă          ELSEă            insertval = ATN(VAL(mathval$)/SQR(-VAL(mathval$)*VAL(mathval$) +1))*CModeă          END IF  ă        CASE 11ă          IF VAL(mathval$) > 1 THENă            outformold$ = outform$  ă            outform$ = "und"ă          ELSEIF VAL(mathval$) = 0 THENă            IF CMode = 1 THENă              insertval = 1.5707963267949ă            ELSEă              insertval = 90ă            END IFă          ELSEIF VAL(mathval$) = 1 THENă            insertval = 0                                 ă          ELSE        ă            insertval = (-ATN(VAL(mathval$)/SQR(-VAL(mathval$)*VAL(mathval$) +1)) + 1.570796)*CModeă          END IF          ă        CASE 12ă          insertval = ATN(VAL(mathval$))*CModeă        CASE 13ă          insertval = (-ATN(VAL(mathval$)) + 1.570796)*CModeă        CASE 14ă          IF VAL(mathval$) = 0 THENă            outformold$ = outform$  ă            outform$ = "und"ă          ELSE        ă            insertval = (ATN(SQR(VAL(mathval$)*VAL(mathval$) -1)) + (SGN(VAL(mathval$)) -1)*1.570796)*CModeă          END IFă        CASE 15ă          IF VAL(mathval$) = 0 THENă            outformold$ = outform$  ă            outform$ = "und"       ă          ELSEIF VAL(mathval$) = 1 THENă            IF CMode = 1 THENă              insertval = 1.5707963267949ă            ELSEă              insertval = 90ă            END IF ă          ELSE  ă            insertval = (ATN(1/SQR(VAL(mathval$)*VAL(mathval$) -1)) + (SGN(VAL(mathval$)) -1)*1.570796)*CModeă          END IF  ă        CASE 16ă          insertval = (EXP(VAL(mathval$)) - EXP(-VAL(mathval$)))/2ă        CASE 17ă          insertval = (EXP(VAL(mathval$)) + EXP(-VAL(mathval$)))/2ă        CASE 18ă          insertval = -EXP(-VAL(mathval$)) /(EXP(VAL(mathval$)) + EXP(-VAL(mathval$)))*2 + 1ă        CASE 19ă          insertval = EXP(-VAL(mathval$))/(EXP(VAL(mathval$)) - EXP(-VAL(mathval$)))*2 + 1ă        CASE 20ă          insertval = 2/(EXP(VAL(mathval$)) + EXP(-VAL(mathval$)))ă        CASE 21ă          insertval = 2/(EXP(VAL(mathval$)) - EXP(-VAL(mathval$)))ă        CASE 22ă          insertval = LOG(VAL(mathval$) + SQR(VAL(mathval$)*VAL(mathval$) + 1))ă        CASE 23ă          insertval = LOG(VAL(mathval$) + SQR(VAL(mathval$)*VAL(mathval$) - 1))ă        CASE 24ă          insertval = LOG((1 + VAL(mathval$))/(1 - VAL(mathval$)))/2ă        CASE 25ă          insertval = LOG((VAL(mathval$) + 1)/(VAL(mathval$) - 1))/2ă        CASE 26ă          insertval = LOG((SGN(VAL(mathval$))*SQR(-VAL(mathval$)*VAL(mathval$) + 1) + 1)/VAL(mathval$))ă        CASE 27ă          insertval = LOG((SGN(VAL(mathval$))*SQR(VAL(mathval$)*VAL(mathval$) + 1) + 1)/VAL(mathval$))ă        CASE 28ă          IF VAL(mathval$) = 0 THENă            IF soundoff = 0 THEN PLAYWAV (chicken,1)ă            MessageDlg("Can't divide by zero. Please correct entry.", mtError, mbOK, 0)ă          ELSEă            insertval = 1/VAL(mathval$)ă          END IFă        CASE 29ă          insertval = EXP(VAL(mathval$))ă        CASE 30ă          insertval = ABS(VAL(mathval$))ă        CASE 31ă          insertval = INT(VAL(mathval$))ă        CASE 32ă          insertval = FRAC(VAL(mathval$))ă        CASE 33ă          insertval = FLOOR(VAL(mathval$))ă        CASE 34ă          insertval = CEIL(VAL(mathval$))ă        CASE 35ă          IF VAL(mathval$) < 0 THENă            SHOWMESSAGE("You're extracting the root of a negative number." + CHR$(13)_ă                      + "QEDTukak will display the real solution only.")ă          END IFă          insertval = SGN(VAL(mathval$))*(ABS(VAL(mathval$))^(1/3))ă        CASE 36ă          insertval = VAL(mathval$)^2ă        CASE 37ă          insertval = FIX(VAL(mathval$))ă          tempval = insertval-1ă          FOR x = 1 TO tempvală            insertval = insertval*tempvală            tempval = tempval-1ă          NEXTă        CASE 38ă          IF mathval$ = "" THENă            insertval = RNDă          ELSEă            insertval = RND(VAL(mathval$))ă          END IFă        CASE 39ă          comma = INSTR(mathval$,",")ă          IF comma = 0 THENă            IF soundoff = 0 THEN PLAYWAV (chicken,1)ă            MessageDlg("Missing comma. Please correct.", mtError, mbOK, 0)ă          ELSEă            IF MID$(mathval$,comma+1,1) = "" THENă              IF soundoff = 0 THEN PLAYWAV (chicken,1)ă              MessageDlg("Missing second argument. Please correct.", mtError, mbOK, 0)ă            ELSEă              IF VAL(RIGHT$(mathval$,LEN(mathval$)-comma)) = 0 THENă                IF soundoff = 0 THEN PLAYWAV (chicken,1)ă                MessageDlg("Can't divide by zero. Please correct entry.", mtError, mbOK, 0)ă              ELSEă                insertval = VAL(LEFT$(mathval$,comma-1)) MOD VAL(RIGHT$(mathval$,LEN(mathval$)-comma))ă              END IFă            END IFă          END IFă      END SELECTă      DoInPrecision(insertval,@insertval$)ă    END IFă  NEXTă  CheckE(@insertval$)ă  formula$ = REPLACESUBSTR$(formula$,oldval$,insertval$)ăEND SUBăăSUB DoInPrecision(value AS DOUBLE, value$ AS STRING)ă  IF dochecktag = 0 THENă    IF precision$ = "" THENă      value$ = FORMAT$("%g",value)ă    ELSEă      value$ = FORMAT$(precision$,value)    ă    END IFă  ELSEă    dochecktag = 0ă  END IFăEND SUBăăSUB changeEă  DEFBYTE posE, xă  x = 0ă  DOă    INC xă    E$ = MID$(formula$,x,1)ă    IF E$ = "" THENă      EXIT SUBă    ELSEIF E$ = "e" THENă      posE = xă      INC xă      E$ = MID$(formula$,x,1)  ă      SELECT CASE E$ă        CASE "-","0" TO "9"ă          formula$ = DELETE$(formula$,posE,1)ă          formula$ = INSERT$("*10^",formula$,posE)ă        CASE "c","i","x"ă        CASE ELSEă          IF sound = 0 THEN PLAYWAV (chicken,1)ă          SHOWMESSAGE "Syntax error."ă          EXIT SUBă      END SELECTă    END IFă  LOOP                  ăEND SUBăăSUB CheckE(newstring$ AS STRING)ă  DEFBYTE whereE, whereDot, x, move, powerEndă  DEFSHORT poweră  whereE = INSTR(newstring$,"E")ă  x = whereEă  IF whereE = 0 THENă    EXIT SUBă  ELSEă    whereDot = RINSTR(whereE,newstring$,".")ă    IF whereDot < 2 THEN whereDot = 2      'since in scientific formată    DOă      INC xă      IF x >= LEN(newstring$) THENă        powerEnd = xă        EXIT DOă      END IF  ă      powerEnd$ = MID$(newstring$,x,1)ă      SELECT CASE powerEnd$ă        CASE "+","*","/",")"ă          powerEnd = x - 1ă          EXIT DOă        CASE "-"ă          IF x <> whereE + 1 THENă            powerEnd = x - 1ă            EXIT DOă          END IFă      END SELECTă    LOOPă    oldbase$ = LEFT$(newstring$,whereE-1)ă    base$ = REPLACESUBSTR$(oldbase$,".","")ă    power$ = MID$(newstring$,whereE+1,powerEnd-whereE)ă    power = VAL(power$)ă    IF power => 14 THEN EXIT SUBă    checkneg$ = LEFT$(power$,1)ă    IF checkneg$ = "-" THENă      move = ABS(power)ă      newbase$ = "." + STRING$(move-(whereDot-1),"0") + base$ă    END IFă    newstring$ = newbase$ă  END IFăEND SUBăăSUB DoPrecisionă  answer = VAL(formula$)ă  IF outform$ = "und" THENă    memvalue = "Sorry. Beyond reckoning."ă    outform$ = outformold$  ă  ELSEIF outform$ = "fin" THENă    memvalue = FORMAT$("%.2n",answer)ă  ELSEIF outform$ = "sci" THENă    memvalue = FORMAT$("%.9e",answer)   ă  ELSEIF outform$ = "com" THEN    ă    memvalue = FORMAT$("%.2n",answer)ă  ELSEIF outform$ = "non" THEN    ă    memvalue = formula$ă  ELSEIF outform$ = "use" THEN   ă    memvalue = FORMAT$(precision$,answer)ă  ELSEIF outform$ = "ima" THENă    memvalue = "i" + FORMAT$("%.2f",answer) ă  ELSEă    memvalue = formula$ă  END IFă  ExpSolverForm.Caption = "QEDTukak:  ANSWER = " + memvalueă  HistoryView.InsertItem(1,memvalue)ă  HistoryView.InsertItem(2,"")ăEND SUBăăSUB MathButts(Sender AS QBUTTON)ăDEFBYTE countEndPar,indexă  oldexpression = ExpEdit.Textă  countEndPar = 0ă  SELECT CASE Sender.Handleă    CASE SinButt.Handleă      MathText = "sin()"ă    CASE CosButt.Handleă      MathText = "cos()"ă    CASE TanButt.Handleă      MathText = "tan()"ă    CASE CotButt.Handleă      MathText = "cot()"ă    CASE SecButt.Handleă      MathText = "sec()"ă    CASE CscButt.Handleă      MathText = "csc()"ă    CASE ASinButt.Handleă      MathText = "asin()"ă    CASE ACosButt.Handleă      MathText = "acos()"ă    CASE ATanButt.Handleă      MathText = "atan()"ă    CASE ACotButt.Handleă      MathText = "acot()"ă    CASE ASecButt.Handleă      MathText = "asec()"ă    CASE ACscButt.Handleă      MathText = "acsc()"ă    CASE SinhButt.Handleă      MathText = "sinh()"ă    CASE CoshButt.Handleă      MathText = "cosh()"ă    CASE TanhButt.Handleă      MathText = "tanh()"ă    CASE CothButt.Handleă      MathText = "coth()"ă    CASE SechButt.Handleă      MathText = "sech()"ă    CASE CschButt.Handleă      MathText = "csch()"ă    CASE ASinhButt.Handleă      MathText = "asinh()"ă    CASE ACoshButt.Handleă      MathText = "acosh()"ă    CASE ATanhButt.Handleă      MathText = "atanh()"ă    CASE ACothButt.Handleă      MathText = "acoth()"ă    CASE ASechButt.Handleă      MathText = "asech()"ă    CASE ACschButt.Handleă      MathText = "acsch()"ă    CASE LogButt.Handleă      MathText = "log()"ă    CASE LnButt.Handleă      MathText = "ln()"ă    CASE IntButt.Handleă      MathText = "int()"ă    CASE FracButt.Handleă      MathText = "frac()"ă    CASE FloorButt.Handleă      MathText = "floor()"ă    CASE CeilButt.Handleă      MathText = "ceil()"ă    CASE ExpButt.Handleă      MathText = "exp()"ă    CASE PiButt.Handleă      MathText = "pi"ă    CASE SqrtButt.Handleă      MathText = "sqrt()"ă    CASE CbrtButt.Handleă      MathText = "cbrt()"ă    CASE sqrButt.Handleă      MathText = "sqr()"ă    CASE AbsButt.Handleă      MathText = "abs()"ă    CASE InvButt.Handleă      MathText = "inv()"ă    CASE FactButt.Handleă      MathText = "fact()"ă    CASE RandButt.Handleă      MathText = "rand()"ă    CASE ModButt.Handleă      MathText = "mod()"ă    CASE DotButt.Handleă      MathText = "."ă    CASE AddButt.Handleă      MathText = " + "ă    CASE SubButt.Handleă      MathText = " - "ă    CASE MulButt.Handleă      MathText = " * "ă    CASE DivButt.Handleă      MathText = " / "ă    CASE PowButt.Handleă      MathText = " ^ "ă    CASE ZeroButt.Handleă      MathText = "0"ă    CASE OneButt.Handleă      MathText = "1"ă    CASE TwoButt.Handleă      MathText = "2"ă    CASE ThreeButt.Handleă      MathText = "3"ă    CASE FourButt.Handleă      MathText = "4"ă    CASE FiveButt.Handleă      MathText = "5"ă    CASE SixButt.Handleă      MathText = "6"ă    CASE SevenButt.Handleă      MathText = "7"ă    CASE EightButt.Handleă      MathText = "8"ă    CASE NineButt.Handleă      MathText = "9"ă    CASE BegParButt.Handleă      MathText = "("ă    CASE EndParButt.Handleă      MathText = ")"ă  END SELECTă  SELECT CASE MathTextă    CASE "0" TO "9","."ă      IF soundoff = 0 THEN PLAYWAV (typing,1)ă    CASE "+","-","*","/","^"ă      IF soundoff = 0 THEN PLAYWAV (laser,1)ă    CASE ELSEă      IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  END SELECTă  ExpEdit.Text = INSERT$(MathText,ExpEdit.Text,ExpEdit.SelStart+1)ă  index = LEN(ExpEdit.Text)ă  IF MathText <> ")" THENă    DOă      find$ = MID$(ExpEdit.Text,index,1)ă      IF find$ = ")" THEN INC countEndPar ă      DEC indexă    LOOP UNTIL find$ <> ")"ă  END IFă  ExpEdit.SelStart = LEN(ExpEdit.Text) - countEndPară  SetFocus(ExpEdit.Handle)ăEND SUB        ăăSUB ChangeModeă  IF soundoff = 0 THEN PLAYWAV (wipe,1)ă  IF DegRad.Caption = "D" THENă    CMode = 1ă    CModeN = 1ă    DegRad.Caption = "R"ă    DegRad.Hint = "Now in Radians. Click for Degrees."ă  ELSEă    CMode = 57.2957795130824ă    CModeN = 0.0174532925199433ă    DegRad.Caption = "D"ă    DegRad.Hint = "Now in Degrees. Click for Radians."ă  END IF  ăEND SUBăăSUB Clickă  IF soundoff = 0 THEN PLAYWAV (gong,1)ă  Animate(HistoryForm.Handle)ă  Animate(FunctionsForm.Handle)ă  Animate(VariablesForm.Handle)ă  HistoryForm.Visible = 1ă  FunctionsForm.Visible = 1ă  VariablesForm.Visible = 1ă  SetFocus(ExpEdit.Handle)ăEND SUBăăSUB FunctionsShowă  IF soundoff = 0 THEN PLAYWAV (gong,1)ă  Animate(FunctionsForm.Handle)ă  FunctionsForm.Visible = 1ă  SetFocus(ExpEdit.Handle)ăEND SUBăăSUB HistoryShowă  IF soundoff = 0 THEN PLAYWAV (gong,1)ă  Animate(HistoryForm.Handle)ă  HistoryForm.Visible = 1ă  SetFocus(ExpEdit.Handle)ăEND SUBăăSUB OutFinancială  outform$ = "fin"ă  OutFormatTypeă  OutFin.Caption = "> &Financial"ăEND SUBăăSUB OutScientifică  outform$ = "sci"ă  OutFormatTypeă  OutSci.Caption = "> &Scientific"ăEND SUBăăSUB OutCommaă  outform$ = "com"ă  OutFormatTypeă  OutCom.Caption = "> &Comma separated"ăEND SUBăăSUB OutNoneă  outform$ = "non"ă  OutFormatTypeă  OutNon.Caption = "> &No format"ăEND SUBăăSUB OutFormatTypeă  OutFin.Caption = "&Financial"ă  OutSci.Caption = "&Scientific"ă  OutCom.Caption = "&Comma separated"ă  OutNon.Caption = "&No format"ă  OutNoForm.Caption = "&User-set precision"ă  IF outform$ = "use" THENă    OutNoForm.Caption = "> &User-set precision"ă  ELSEă    OutFormată  END IFăEND SUBăăSUB OutFormată  OutPrecise15.Caption = "15"ă  OutPrecise14.Caption = "14"ă  OutPrecise13.Caption = "13"ă  OutPrecise12.Caption = "12"ă  OutPrecise11.Caption = "11"ă  OutPrecise10.Caption = "10"ă  OutPrecise9.Caption = "9"ă  OutPrecise8.Caption = "8"ă  OutPrecise7.Caption = "7"ă  OutPrecise6.Caption = "6"ă  OutPrecise5.Caption = "5"ă  OutPrecise4.Caption = "4"ă  OutPrecise3.Caption = "3"ă  OutPrecise2.Caption = "2"ă  OutPrecise1.Caption = "1"ăEND SUBăăSUB OutUser(Sender AS QMENUITEM)ă  OutFormată  SELECT CASE Sender.Handleă    CASE OutPrecise1.Handleă      precision$ = "%.1g"ă      OutPrecise1.Caption = "> 1"ă    CASE OutPrecise2.Handleă      precision$ = "%.2g"ă      OutPrecise2.Caption = "> 2"ă    CASE OutPrecise3.Handleă      precision$ = "%.3g"ă      OutPrecise3.Caption = "> 3"ă    CASE OutPrecise4.Handleă      precision$ = "%.4g"ă      OutPrecise4.Caption = "> 4"ă    CASE OutPrecise5.Handleă      precision$ = "%.5g"ă      OutPrecise5.Caption = "> 5"ă    CASE OutPrecise6.Handleă      precision$ = "%.6g"ă      OutPrecise6.Caption = "> 6"ă    CASE OutPrecise7.Handleă      precision$ = "%.7g"ă      OutPrecise7.Caption = "> 7"ă    CASE OutPrecise8.Handleă      precision$ = "%.8g"ă      OutPrecise8.Caption = "> 8"ă    CASE OutPrecise9.Handleă      precision$ = "%.9g"ă      OutPrecise9.Caption = "> 9"ă    CASE OutPrecise10.Handleă      precision$ = "%.10g"ă      OutPrecise10.Caption = "> 10"ă    CASE OutPrecise11.Handleă      precision$ = "%.11g"ă      OutPrecise11.Caption = "> 11"ă    CASE OutPrecise12.Handleă      precision$ = "%.12g"ă      OutPrecise12.Caption = "> 12"ă    CASE OutPrecise13.Handleă      precision$ = "%.13g"ă      OutPrecise13.Caption = "> 13"ă    CASE OutPrecise14.Handleă      precision$ = "%.14g"ă      OutPrecise14.Caption = "> 14"ă    CASE OutPrecise15.Handleă      precision$ = "%.15g"ă      OutPrecise15.Caption = "> 15"ă  END SELECTă  outform$ = "use"ă  OutFormatTypeăEND SUBăăSUB OutPrecisionă  OutFormată  SELECT CASE precision$ă    CASE "%.1g"ă      OutPrecise1.Caption = "> 1"ă    CASE "%.2g"ă      OutPrecise2.Caption = "> 2"ă    CASE "%.3g" ă      OutPrecise3.Caption = "> 3"ă    CASE "%.4g"ă      OutPrecise4.Caption = "> 4"ă    CASE "%.5g" ă      OutPrecise5.Caption = "> 5"ă    CASE "%.6g" ă      OutPrecise6.Caption = "> 6"ă    CASE "%.7g" ă      OutPrecise7.Caption = "> 7"ă    CASE "%.8g" ă      OutPrecise8.Caption = "> 8"ă    CASE "%.9g" ă      OutPrecise9.Caption = "> 9"ă    CASE "%.10g" ă      OutPrecise10.Caption = "> 10"ă    CASE "%.11g" ă      OutPrecise11.Caption = "> 11"ă    CASE "%.12g" ă      OutPrecise12.Caption = "> 12"ă    CASE "%.13g" ă      OutPrecise13.Caption = "> 13"ă    CASE "%.14g" ă      OutPrecise14.Caption = "> 14"ă    CASE "%.15g" ă      OutPrecise15.Caption = "> 15"ă  END SELECTă  OutFormatTypeăEND SUBăăSUB ShowNotesă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  Timer2.Enabled = 1ă  Animate(NoteProductForm.Handle)ă  NoteProductForm.Visible = 1ăEND SUBăăSUB NotesShowă  DEFSHORT yă  DXNotes.FillRect(0,0,84,63,0) ă  INC yă  IF y > 84 THEN y = 1ă  IF y < 11 THEN b$ = RIGHT$("wasaywasay",y)ă  IF y < 8 THEN a$ = RIGHT$(".com.ph",y)    ă  DXNotes.TextOut(y,y+2,a$,clGreen,clBlack)ă  DXNotes.TextOut(y+2,2,b$,clWhite,clBlack)ă  DXNotes.TextOut(1,y+16,"@i-manila",&HDDCE,clBlack)  ăEND SUBăăSUB SendMeă  IF soundoff = 0 THEN PLAYWAV(camera,1)ă  dummy = SHELL ("start http://pages.zdnet.com/wasaywasay/wasaywasay", SW_HIDE)ă  IF dummy = 0 THENă    dummy = SHELL ("start http://pages.zdnet.com/wasaywasay/wasaywasay", SW_HIDE)ă    IF dummy = 0 THENă      SHOWMESSAGE "Can't find your Start program. \nPlease go to http://pages.zdnet.com/wasaywasay/wasaywasay manually." ă    END IFă  END IFăEND SUBăăSUB EMailMeă  IF soundoff = 0 THEN PLAYWAV (camera,1)ă  dummy = SHELL("c:\windows\command\Start mailto:wasaywasay@i-manila.com.ph?subject=QEDTukak",0)ă  IF dummy = 0 THENă    dummy = SHELL("Start mailto:wasaywasay@i-manila.com.ph?subject=QEDTukak",0)ă    IF dummy = 0 THENă      SHOWMESSAGE "Can't find your Start program. Please do manual email instead." ă    END IFă  END IFăEND SUBăăSUB SoundOnOffă  IF Sounds.Caption = "Switch sounds o&ff" THENă    soundoff = 1ă    Sounds.Caption = "Switch sounds o&n"ă  ELSEă    soundoff = 0ă    Sounds.Caption = "Switch sounds o&ff"ă  END IFăEND SUBăăSUB ClipboardCopyă  IF soundoff = 0 THEN PLAYWAV (camera,1)ă  ClipBoard.Openă  ClipBoard.SetAsText(DELETE$(ExpSolverForm.Caption,1,20))ă  ClipBoard.CloseăEND SUBăăSUB ClipboardPasteă  IF soundoff = 0 THEN PLAYWAV (whoosh,1)ă  ClipBoard.Open   ă  ExpSolverForm.Caption = "QEDTukak:  ANSWER = " + ClipBoard.Textă  ClipBoard.CloseăEND SUBăăSUB SaveFileă  DIM lastitem AS WORDă  DIM FileH AS QSAVEDIALOGă  DIM SaveFileH AS QSTRINGLISTă  lastitem = HistoryView.ItemCount - 1ă  FOR x = 0 TO lastitemă    SaveFileH.AddItems HistoryView.Item(x)ă  NEXTă  IF FileH.Execute THEN ă    ShowMessage "Saving to: " + FileH.FileNameă  END IF ă  SaveFileH.SaveToFile(FileH.FileName)ăEND SUBăăSUB PrintFileă LPRINT HistoryView.Textă LFLUSHăEND SUBăăSUB MilSTDTimeă  IF Times.Caption = "Switch to &Military Time" THENă    military = 1ă    Times.Caption = "Switch to &Standard Time"ă  ELSEă    military = 0ă    Times.Caption = "Switch to &Military Time"ă  END IFăEND SUBăăSUB Timeă  DEFINT milhour, hour, mină  hour =  VAL(LEFT$(TIME$,2))ă  min = VAL(MID$(TIME$,4,2))     ă  milhour = houră  IF hour >= 12 AND hour < 24 THENă    hour = hour - 12ă    IF hour = 0 THEN hour = 12ă    ampm$ = " PM"ă  ELSEIF hour = 0 THEN ă    hour = 12ă    ampm$ = " AM"ă  ELSEă    ampm$ = " AM"ă  END IFă  IF min < 10 THENă    IF military = 1 THENă      TimePanel.Caption = STR$(milhour) + ":0" + STR$(min) + RIGHT$(TIME$,3)ă    ELSEă      TimePanel.Caption = STR$(hour) + ":0" + STR$(min) + RIGHT$(TIME$,3) + ampm$ă    END IFă  ELSEă    IF military = 1 THENă      TimePanel.Caption = TIME$ă    ELSEă      TimePanel.Caption = STR$(hour) + ":" + STR$(min) + RIGHT$(TIME$,3) + ampm$ă    END IFă  END IFăEND SUBăăSUB OnTopă  IF always = 0 THENă    always = 1ă    AlwaysTop.Caption = "> &Always on top"ă  ELSEă    always = 0ă    AlwaysTop.Caption = "&Always on top"ă  END IFăEND SUBăăSUB ConstantsShowă  Constants.PopUp(Screen.MouseX,ScreenMouseY)ăEND SUB  ăăSUB ConstantsAll(Sender AS QMENUITEM)ă  DIM AddCaption AS STRINGă  SELECT CASE Sender.Handleă    CASE AccelerationG.Handleă      AddCaption = "9.80665"ă    CASE ADensity.Handleă      AddCaption = "1.293"ă    CASE LSpeed.Handleă      AddCaption = "299792458"ă    CASE SolarC.Handleă      AddCaption = "1340"ă    CASE SSpeed.Handleă      AddCaption = "331.4"ă    CASE SAtmosphere.Handleă      AddCaption = "101300"ă    CASE EERadius.Handleă      AddCaption = "6378000"ă    CASE EEscapeV.Handleă      AddCaption = "11186"ă    CASE MEarthDipole.Handleă      AddCaption = "6.400E21"ă    CASE MEarth.Handleă      AddCaption = "5.983E24"ă    CASE MAngularS.Handleă      AddCaption = ".0000729"    ă    CASE DEarth.Handleă      AddCaption = "5522"ă    CASE MOrbitalS.Handleă      AddCaption = "29770"  ă    CASE PERadius.Handleă      AddCaption = "6357000"ă    CASE VEarth.Handleă      AddCaption = "1.087E21"ă    CASE AlphaPMass.Handleă      AddCaption = "6.64465598E-27"ă    CASE ElectronCMassR.Handleă      AddCaption = "175881961000"ă    CASE ElectronMass.Handleă      AddCaption = "9.10938188E-31"ă    CASE MuonMass.Handleă      AddCaption = "1.88353109E-28"ă    CASE NeutronMass.Handleă      AddCaption = "1.67492716E-27"ă    CASE ProtonMass.Handleă      AddCaption = "1.67262158E-27"ă    CASE ATomicMC.Handleă      AddCaption = "1.66053873E-27"ă    CASE AvogadroC.Handleă      AddCaption = "6.02214199E23"ă    CASE BoltzmannC.Handleă      AddCaption = "1.3806503E-23"ă    CASE ECharge.Handleă      AddCaption = "1.602176462E-19"ă    CASE FaradayC.Handleă      AddCaption = "96485.3415"ă    CASE GravityC.Handleă      AddCaption = ".000000000066726"ă    CASE PermeabilityC.Handleă      AddCaption = "1.25663706143E-6"ă    CASE PermittivityC.Handleă      AddCaption = "8.85418781762E-12"ă    CASE PlankC.Handleă      AddCaption = "6.62606876E-34"ă    CASE RydbergC.Handleă      AddCaption = "10973731.568549"ă    CASE SBoltzmannC.Handleă      AddCaption = ".000000056704"ă    CASE UnivGasC.Handleă      AddCaption = "8.314472"ă    CASE WienC.Handleă      AddCaption = ".00290"                ă  END SELECTă  ExpEdit.Text = ExpEdit.Text + " " + AddCaptionă  ExpEdit.SelStart = LEN(ExpEdit.Text)ăEND SUBăăSUB ConversionsShowă  Conversions.PopUp(Screen.MouseX,ScreenMouseY)ăEND SUB  ăăSUB ConversionsAll(Sender AS QMENUITEM)ă  DIM AddCaption AS STRINGă  SELECT CASE Sender.Handleă    CASE ftm.Handleă      AddCaption = "/ 3.28084"ă    CASE mft.Handleă      AddCaption = "* 3.28084"ă    CASE incm.Handleă      AddCaption = "* 2.54"ă    CASE cmin.Handleă      AddCaption = "/ 2.54"ă    CASE kmmi.Handleă      AddCaption = "/ 1.609344"ă    CASE mikm.Handleă      AddCaption = "* 1.609344"ă    CASE inft.Handleă      AddCaption = "/ 12"ă    CASE ftin.Handleă      AddCaption = "* 12"ă    CASE ydm.Handleă      AddCaption = "/ 1.093613"ă    CASE myd.Handleă      AddCaption = "* 1.093613"ă    CASE fam.Handleă      AddCaption = "* 1.8288"ă    CASE mfa.Handleă      AddCaption = "/ 1.8288"ă    CASE mily.Handleă      AddCaption = "/ 5880000000000"ă    CASE lymi.Handleă      AddCaption = "* 5880000000000"ă    CASE PartoLy.Handleă      AddCaption = "* 3.261643"ă    CASE LytoPar.Handleă      AddCaption = "/ 3.261643"ă    CASE ft3m3.Handleă      AddCaption = "/ 35.314667"ă    CASE m3ft3.Handleă      AddCaption = "* 35.314667"ă    CASE ft2m2.Handleă      AddCaption = "/ 10.76391"ă    CASE m2ft2.Handleă      AddCaption = "* 10.76391"ă    CASE in2cm2.Handleă      AddCaption = "* 6.4516"ă    CASE cm2in2.Handleă      AddCaption = "/ 6.4516"ă    CASE haac.Handleă      AddCaption = "* 2.471054"ă    CASE acha.Handleă      AddCaption = "/ 2.471054"ă    CASE lbkg.Handleă      AddCaption = "/ 2.204623"ă    CASE kglb.Handleă      AddCaption = "* 2.204623"ă    CASE TontoKilo.Handleă      AddCaption = "* 1000"ă    CASE KilotoTon.Handleă      AddCaption = "/ 1000"      ă    CASE TontoKiloUS.Handleă      AddCaption = "* 907.18474"ă    CASE KilotoTonUS.Handleă      AddCaption = "/ 907.18474"ă    CASE TontoKiloUK.Handleă      AddCaption = "* 1016.046909"ă    CASE KilotoTonUK.Handleă      AddCaption = "/ 1016.046909"      ă    CASE OztoGram.Handleă      AddCaption = "* 28.349551"ă    CASE GramtoOz.Handleă      AddCaption = "/ 28.349551"ă    CASE OztoGramT.Handleă      AddCaption = "* 31.103508"ă    CASE GramtoOzT.Handleă      AddCaption = "/ 31.103508"      ă    CASE FC.Handleă      AddCaption = "- 32 / 1.8"ă    CASE CF.Handleă      AddCaption = "* 1.8 + 32"ă    CASE CK.Handleă      AddCaption = "+ 273.16"ă    CASE KC.Handleă      AddCaption = "- 273.16"ă    CASE GaltoLit.Handleă      AddCaption = "* 4.404884"ă    CASE LittoGal.Handleă      AddCaption = "/ 4.404884"ă    CASE GaltoLitL.Handleă      AddCaption = "* 3.785412"ă    CASE LittoGalL.Handleă      AddCaption = "/ 3.785412"      ă    CASE QrtoGal.Handleă      AddCaption = "/ 4"ă    CASE GaltoQrt.Handleă      AddCaption = "* 4"ă    CASE PinttoLtr.Handleă      AddCaption = "* 0.55061"ă    CASE LtrtoPint.Handleă      AddCaption = "/ 0.55061"      ă    CASE PinttoLtrL.Handleă      AddCaption = "* 0.473176"ă    CASE LtrtoPintL.Handleă      AddCaption = "/ 0.473176"ă    CASE HptoWatt.Handleă      AddCaption = "* 745.7"ă    CASE WatttoHp.Handleă      AddCaption = "/ 745.7"ă    CASE HptoWattM.Handleă      AddCaption = "* 735.499"ă    CASE WatttoHpM.Handleă      AddCaption = "/ 735.499"      ă    CASE BTUtoWatt.Handleă      AddCaption = "* 0.293071"ă    CASE WatttoBTU.Handleă      AddCaption = "/ 0.293071"ă    CASE KwtoWatt.Handleă      AddCaption = "* 1000"ă    CASE WatttoKw.Handleă      AddCaption = "/ 1000"ă    CASE KphtoMph.Handleă      AddCaption = "/ 1.609344"ă    CASE MphtoKph.Handleă      AddCaption = "* 1.609344"ă    CASE KnottoMph.Handleă      AddCaption = "* 1.150778"ă    CASE MphtoKnot.Handleă      AddCaption = "/ 1.150778"ă    CASE MpstoFps.Handleă      AddCaption = "* 3.28084"ă    CASE FpstoMps.Handleă      AddCaption = "/ 3.28084"ă    CASE SectoMin.Handleă      AddCaption = "/ 60"ă    CASE MintoSec.Handleă      AddCaption = "* 60"ă    CASE MintoHr.Handleă      AddCaption = "/ 60"ă    CASE HrtoMin.Handleă      AddCaption = "* 60"ă    CASE MintoDay.Handleă      AddCaption = "/ 1440"ă    CASE DaytoMin.Handleă      AddCaption = "* 1440"ă    CASE DaytoHr.Handleă      AddCaption = "* 24"ă    CASE HrtoDay.Handleă      AddCaption = "/ 24"ă    CASE PsitoPas.Handleă      AddCaption = "* 6894.757"ă    CASE PastoPsi.Handleă      AddCaption = "/ 6894.757"ă    CASE PsitoAtm.Handleă      AddCaption = "* 0.068046"ă    CASE Atmtopsi.Handleă      AddCaption = "/ 0.068046"ă    CASE PsitoKgscm.Handleă      AddCaption = "* 0.070307"ă    CASE KgscmtoPsi.Handleă      AddCaption = "/ 0.070307"ă  END SELECTă  ExpEdit.Text = ExpEdit.Text + " " + AddCaptionă  ExpEdit.SelStart = LEN(ExpEdit.Text)ăEND SUBăăSUB VariablesShowă  IF soundoff = 0 THEN PLAYWAV (gong,1)ă  Animate(VariablesForm.Handle)ă  VariablesForm.Visible = 1ăEND SUBăăSUB SendAnsweră  IF soundoff = 0 THEN PLAYWAV (laser,1)ă  ExpEdit.Text = ExpEdit.Text + " " + memvalueă  ExpEdit.SelStart = LEN(ExpEdit.Text)ăEND SUBăăSUB DummyMin(Hwnd&, uMsg&, wParam&, lParam&)ă  PaintFormăEND SUB ăăSUB PaintFormă  PaintDesktop GetDC(ExpSolverForm.Handle)  ăEND SUBăăSUB CloseNotesă  IF soundoff = 0 THEN PLAYWAV (cuckoo,1)ă  Timer2.Enabled = 0ă  Deanimate(NoteProductForm.Handle)ăEND SUBăăSUB CloseFunctions ă  IF soundoff = 0 THEN PLAYWAV (gong,1)ă  Deanimate(FunctionsForm.Handle)ăEND SUBăăSUB CloseHistory ă  IF soundoff = 0 THEN PLAYWAV (gong,1)ă  Deanimate(HistoryForm.Handle)ăEND SUBăăSUB CloseVariables ă  IF soundoff = 0 THEN PLAYWAV (gong,1)ă  Deanimate(VariablesForm.Handle)ăEND SUBăăSUB Initializeă  RANDOMIZE TIMERă  'Application.IcoHandle = QEDTukakă  Application.HintShortPause = 25ă  Application.HintPause = 25ă  Application.HintHidePause = 6500    ă  IF FILEEXISTS("QEDTukak.ini") <> 0 THENă    DIM File as QFileStreamă    File.Open("QEDTukak.ini",fmOpenReadWrite)ă    inifile$ = File.ReadStr(File.Size)ă    where = INSTR(inifile$,CHR$(13))  ă    outform$ = MID$(inifile$,1,3)ă    soundoff = VAL(MID$(inifile$,4,1))ă    military = VAL(MID$(inifile$,5,1))ă    always = VAL(MID$(inifile$,6,1))ă    DegRad.Caption = MID$(inifile$,7,1)ă    precision$ = RTRIM$(MID$(inifile$,8,where-8))ă    ExpEdit.Text = RTRIM$(RIGHT$(inifile$,LEN(inifile$)-where))ă    ExpEdit.SelStart = LEN(ExpEdit.Text)    ă    File.Closeă  ELSE ă    outform$ = "non"ă    soundoff = 0ă    military = 0ă    always = 0ă    DegRad.Caption = "D"ă    precision$ = ""ă    ExpEdit.Text = ""ă  END IFă  IF military = 1 THENă    Times.Caption = "Switch to &Standard Time"ă  ELSEă    Times.Caption = "Switch to &Military Time"ă  END IFă  IF DegRad.Caption = "D" THENă    CMode = 57.2957795130824ă    CModeN = 0.0174532925199433ă    DegRad.Caption = "D"ă    DegRad.Hint = "Now in Degrees. Click for Radians."ă  ELSEă    CMode = 1ă    CModeN = 1ă    DegRad.Caption = "R"ă    DegRad.Hint = "Now in Radians. Click for Degrees."ă  END IFă  IF always = 1 THENă    AlwaysTop.Caption = "> &Always on top"ă  ELSEă    AlwaysTop.Caption = "&Always on top"ă  END IFă  IF soundoff = 1 THEN    ă    Sounds.Caption = "Switch sounds o&n"ă  ELSEă    Sounds.Caption = "Switch sounds o&ff"ă  END IFă  SELECT CASE outform$ă    CASE "sci"ă      OutScientifică    CASE "fin"ă      OutFinancială    CASE "com"ă      OutCommaă    CASE "non"ă      OutNoneă    CASE "use"ă      OutPrecisionă  END SELECTă  TimeăEND SUBăăSUB CloseSolveră  DIM File AS QFileStreamă  File.Open("QEDTukak.ini",fmCreate)ă  inifile$ = outform$ + STR$(soundoff) + STR$(military) + STR$(always) + _ă             DegRad.Caption + precision$ + CHR$(13) + ExpEdit.Textă  File.WriteStr(inifile$,LEN(inifile$))ă  File.Closeă  IF soundoff = 0 THEN PLAYWAV (wipe,0)ă  ExpSolverForm.Visible = 0ă  HistoryForm.Visible = 0ă  FunctionsForm.Visible = 0ă  VariablesForm.Visible = 0ă  NoteProductForm.Visible = 0ă  Application.TerminateăEND SUBăăSUB Animate(Handle AS INTEGER)ă  AnimateWindow Handle, 300, AW_CENTERă  SELECT CASE Handleă    CASE NoteProductForm.Handleă      NoteProductForm.Repaintă    CASE FunctionsForm.Handleă      FunctionsForm.Repaintă    CASE HistoryForm.Handleă      HistoryForm.Repaintă    CASE VariablesForm.Handleă      VariablesForm.Repaintă  END SELECTăEND SUBăăSUB Deanimate(Handle AS INTEGER)ă  AnimateWindow Handle, 300, AW_CENTER OR AW_HIDEăEND SUBăăSUB ResizeViewă  HistoryView.Height = HistoryForm.ClientHeight - 10ă  HistoryView.Width = HistoryForm.ClientWidth - 10ăEND SUBăăInitializeăExpSolverăDOă  DOEVENTSă  IF always = 1 THENă    ExpSolverForm.Color = &HDBC777ă    HistoryForm.Color = &HDBC777ă    FunctionsForm.Color = &HDBC777ă    NoteProductForm.Color = &HDBC777ă    VariablesForm.Color = &HDBC777   ă    SELECT CASE GetFocus()ă      CASE ExpEdit.Handle ă        SetForegroundWindow(ExpSolverForm.Handle)ă      CASE HistoryForm.Handle ă        SetForegroundWindow(HistoryForm.Handle)ă      CASE VariablesForm.Handle ă        SetForegroundWindow(VariablesForm.Handle)ă      CASE SinButt.Handle,CosButt.Handle,TanButt.Handle,CotButt.Handle,_ă           SecButt.Handle,CscButt.Handle,ASinButt.Handle,ACosButt.Handle,_ă           ATanButt.Handle,ACotButt.Handle,ASecButt.Handle,ACscButt.Handle,_ă           SinhButt.Handle,CoshButt.Handle,TanhButt.Handle,CothButt.Handle,_ă           SechButt.Handle,CschButt.Handle,ASinhButt.Handle,ACoshButt.Handle,_ă           ATanhButt.Handle,ACothButt.Handle,ASechButt.Handle,ACschButt.Handle,_ă           LogButt.Handle,LnButt.Handle,IntButt.Handle,FracButt.Handle,_ă           FloorButt.Handle,CeilButt.Handle,ExpButt.Handle,PiButt.Handle,_ă           SqrtButt.Handle,CbrtButt.Handle,sqrButt.Handle,AbsButt.Handle,_ă           InvButt.Handle,BegParButt.Handle,EndParButt.Handle,DotButt.Handle,_ă           AddButt.Handle,SubButt.Handle,MulButt.Handle,DivButt.Handle,PowButt.Handle,_ă           ZeroButt.Handle,OneButt.Handle,TwoButt.Handle,ThreeButt.Handle,_ă           FourButt.Handle,FiveButt.Handle,SixButt.Handle,SevenButt.Handle,_ă           EightButt.Handle,NineButt.Handle,DegRadButt.Handle,SendButt.Handle,_ă           FactButt.Handle,ModButt.Handle,RandButt.Handleă             SetForegroundWindow(FunctionsForm.Handle)ă      CASE ELSEă        SetWindowPos(ExpSolverForm.Handle, -1, 0, 0, 0, 0,SWP_NOMOVE OR SWP_NOSIZE)ă    END SELECTă  ELSEă    ExpSolverForm.Color = &HABC777ă    HistoryForm.Color = &HABC777ă    FunctionsForm.Color = &HABC777ă    NoteProductForm.Color = &HABC777ă    VariablesForm.Color = &HABC777 ă  END IF   ăLOOP UNTIL ExpSolverForm.Visible = 0ăăApplication.TerminateăStewart Platt                  Banner Example                 shteou@postmaster.co.uk        00-00-01 (  :  )       rapidq                 1    1496     Banners.bas 'An example of a banner, by Stewart Platt shteou@postmaster.co.uk


Showmessage "Welcome to an Example of how to link to an HTML website and open the default browser."

$APPTYPE GUI
$TYPECHECK ON
$INCLUDE "RAPIDQ.INC"

'The rich edit box.
DIM Help AS QMENUITEM
DIM File as qmenuitem
dim exitmenu as qmenuitem
DIM MainMenu AS QMainMenu

'The sub that allows the banner to open the default banner and goto the site.
Declare sub ShellExecute LIB "Shell32" ALIAS "ShellExecuteA" (HWnd AS LONG, ipoperation AS STRING, ipfile AS STRING, ipParameters AS STRING, IpDirectory AS STRING, nShowcmd AS LONG)
Declare sub banclick
declare sub helpclick
declare sub quit


CREATE MainForm AS QFORM
  Height = 150
  Width = 450
  Caption = "Banner example"
  Center
  borderstyle = bstoolwindow
  
  'This Qbutton could be changed to a Qimage to make a real banner effect
    CREATE banner AS Qbutton
        Left = 5
        Top = 25
        Width = 433
        caption = "Click Here to Visit ABC site"
        onclick = banclick
    END CREATE
End create

'This sub defines the site it will go to upon clicking on the banner
sub banclick
ShellExecute 0, "open", "http://www.allbasiccode.com/", "", "", 1
end sub


'I don't know why I put these in! Just to make it look a bit better I guess!  They Don't
'actually do anything!
Help.caption = "&Help"       
file.caption = "&File"
exitmenu.caption = "&Quit"   

mainMenu.Parent = MainForm
mainMenu.AddItems file, help

file.AddItems exitmenu

MainForm.ShowModal
ăAchilles B. Mina               Multi-Media Player             wasaywasay@edsamail.com.ph     06-16-02 (  :  )       rapidq                 803  22240    VAJoJo.bas  'VidAudio JoJo 1.00ă'Uploaded: May 8, 2002ă'By Achilles B. Minaăă'VidAudio JoJo is a simple but fairly complete multimedia playeră'You can do as you please with this code, but please acknowledge the author.ăăăDECLARE SUB SetWindowPos Lib "User32" ALIAS "SetWindowPos"(hWnd As Long, hWndInsertAfter As Long, X As Long, Y As Long, cx As Long, cy As Long, wFlags As Long)ăDECLARE FUNCTION GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As long, ByVal lBuffer As Long) As LongăDECLARE Function PlayMedia Lib "winmm.dll" Alias "mciSendStringA" _ă(ByVal lpstrCommand As String, lpstrReturnString As Long, uReturnLength As _ăLong, hwndCallback As Long) As LongăăDECLARE SUB AlwaysTopăDECLARE SUB TopMostăDECLARE SUB CloseAudioFormăDECLARE SUB Listening(Sender AS QCOOLBTN)ăDECLARE SUB aTextAgainăDECLARE SUB InitAudioăDECLARE SUB Check(hand AS LONG, message AS LONG, one AS LONG, two as LONG) ăDECLARE SUB ChangeDirectoriesăDECLARE SUB ResizeFormăDECLARE SUB PlayList(Sender AS QCOOLBTN)ăDECLARE SUB CloseFFormăDECLARE SUB ChangeDrive(Sender AS QRADIOBUTTON)ăDECLARE SUB Delete(key AS BYTE)ăDECLARE SUB ScrollăDECLARE SUB ChangeăDECLARE SUB FancyăăDIM OpenDialog AS QOPENDIALOGăDIM OpenListDlg AS QOPENDIALOGăDIM SaveListDlg AS QSAVEDIALOGăăDIM aFileName(100) AS STRING  ăDIM mAudio AS STRING*256ăăDEFBYTE loops, bigloops, audx, stopandgo, escape, always, scrolled, videoisonăDEFSTR audio$, audiotype$ăăCREATE Time AS QTIMERă  Interval = 1 '1000ă  OnTimer = TopMostăEND CREATEăăCREATE Arial9G AS QFONTă    Name = "Arial"ă    Color = &H00FF00   'clGreenă    AddStyles(0) 'fsBoldă    Size = 9ăEND CREATEăăCREATE Arial9Tae AS QFONTă    Name = "Arial"ă    Color = &HAAEEEE   '&HDEFFEDă    AddStyles(0)ă    Size = 9ăEND CREATEăăCREATE Arial AS QFONTă    Name = "Arial"ă    Color = &H0000FF  'clRedă    AddStyles(0)ă    Size = 10ăEND CREATEăăCREATE Arial9R AS QFONTă    Name = "Arial"ă    Color = &HEEFEă    AddStyles(0)ă    Size = 9ăEND CREATEăăCREATE Audio AS QFORMă  Width = 340ă  Height = 205ă  Centeră  Color = 0ă  AutoScroll = 0ă  Caption = "VidAudio JoJo"ă  Hint = "Click to turn on/off Always On Top."ă  ShowHint = 1ă  OnClick = AlwaysTop ă  OnPaint = aTextAgaină  WndProc = Checkă  CREATE FancyBox AS QCANVASă    Top = 60ă    Left = 10ă    Height = 70ă    Width = 275ă    Color = 0ă  END CREATE  ă  CREATE AudSlide AS QSCROLLBARă    Top = 10ă    Left = 10ă    Height = 20ă    Width = 275ă    SmallChange = 10ă    OnScroll = Scrollă  END CREATEă  CREATE AudS AS QCOOLBTNă    Flat = 1ă    Font = Arial9G   ă    Caption = "Skip"ă    Top = 32ă    Left = 50ă    Width = 45ă    Hint = "Skip current file"ă    ShowHint = 1ă    OnClick = Listeningă  END CREATEă  CREATE AudAgain AS QCOOLBTNă    Flat = 1ă    Font = Arial9R    ă    Caption = "Again"ă    Top = 32ă    Left = 100ă    Width = 45ă    Hint = "Play current file continuously"ă    ShowHint = 1ă    OnClick = Listeningă  END CREATE  ă  CREATE AudSnd AS QCOOLBTNă    Flat = 1ă    Font = Arial9R    ă    Caption = "Mute"ă    Top = 32ă    Left = 150ă    Width = 45ă    Hint = "Turn audio on or off"ă    ShowHint = 1ă    OnClick = Listeningă  END CREATE      ă  CREATE AudH AS QCOOLBTNă    Flat = 1ă    Font = Arial9G    ă    Caption = "Stop"ă    Top = 32ă    Left = 200ă    Width = 45ă    Hint = "Stop play and rewind"ă    ShowHint = 1ă    OnClick = Listeningă  END CREATEă  CREATE AudList AS QCOOLBTNă    Flat = 1ă    Font = Arial9R   ă    Caption = "List"ă    Top = 2ă    Left = 285ă    Width = 45ă    Hint = "Playlist"ă    ShowHint = 1ă    OnClick = Listeningă  END CREATE                        ă  CREATE AudO AS QCOOLBTNă    Flat = 1ă    Font = Arial9Tae    ă    Caption = "Open"ă    Top = 32ă    Left = 285ă    Width = 45ă    Hint = "Select audio or video file"ă    ShowHint = 1ă    OnClick = Listeningă  END CREATE    ă  CREATE AudA AS QCOOLBTNă    Flat = 1ă    Font = Arial9Taeă    Caption = "Play"ă    Top = 62ă    Left = 285ă    Width = 45ă    Hint = "Play selected file"ă    ShowHint = 1ă    OnClick = Listeningă  END CREATEă  CREATE AudB AS QCOOLBTNă    Flat = 1ă    Font = Arial9Taeă    Caption = "Pause"ă    Top = 92ă    Left = 285ă    Width = 45ă    Hint = "Pause or resume current file"ă    ShowHint = 1ă    OnClick = Listeningă  END CREATEă  CREATE AudL AS QCOOLBTNă    Flat = 1ă    Font = Arial9Taeă    Caption = "Loop"ă    Top = 122ă    Left = 285ă    Width = 45ă    Hint = "Play entire list continuously"ă    ShowHint = 1ă    OnClick = Listeningă  END CREATEă  CREATE AudC AS QCOOLBTNă    Flat = 1ă    Font = Arial9Ră    Caption = "Close"ă    Top = 152ă    Left = 285ă    Width = 45ă    Hint = "Close current file or playlist"ă    ShowHint = 1ă    OnClick = Listeningă  END CREATEă  CREATE FForm AS QFORMă    Height = 310ă    Width = 410ă    Color = 0ă    Centeră    FormStyle = 3ă    KeyPreview = 1ă    OnKeyDown = Deleteă    OnResize = ResizeFormă    OnClose = CloseFFormă    CREATE DirList AS QFILELISTBOXă     ShowIcons = Trueă     AddFileTypes(4)   ă     DelFileTypes(6)ă     OnDblClick = ChangeDirectories  ă     Top = 1ă     Height = 75ă     Width = 185ă     Color = &HDEFFEDă    END CREATEă    CREATE FileListA AS QFILELISTBOXă     MultiSelect = 1ă     Mask = "*.rmi;*.midi;*.mid;*.wav;*.au;*.snd;*.mpa;*.wma;*.mp2;*.mp3;_ă      *.aif;*.asf;*.asx;*.iff;*.mpm;*.m1v;*.mpeg;*.mpg;*.mpe;*.avi;*.mov;_ă      *.wmv;*.mpv;*.qt;*.dat"ă     Height = 150ă     Width = 185ă     Top = 100ă     Color = &HDEFFEDă    END CREATE  ă    CREATE FileListB AS QLISTBOXă      Height = 250ă      Width = 185ă      Left = 215ă      MultiSelect = 1ă      Color = &HDEFFEDă    END CREATEă    CREATE BLoadList AS QCOOLBTNă      Flat = 1ă      Caption = "LL"ă      Font = Arial9Taeă      Left = 55ă      Top = 255ă      Hint = "Load list"ă      ShowHint = 1ă      OnClick = PlayListă    END CREATE    ă    CREATE BSelect AS QCOOLBTNă      Flat = 1ă      Caption = ">>"ă      Font = Arial9Taeă      Left = 85ă      Top = 255ă      Hint = "Select file"ă      ShowHint = 1ă      OnClick = PlayListă    END CREATEă    CREATE BIns AS QCOOLBTNă      Flat = 1ă      Caption = "INS"ă      Font = Arial9Taeă      Left = 150ă      Top = 255ă      Hint = "Insert selected file"ă      ShowHint = 1ă      OnClick = PlayListă    END CREATE ă    CREATE BSub AS QCOOLBTNă      Flat = 1ă      Caption = "SUB"ă      Font = Arial9Taeă      Left = 225ă      Top = 255ă      Hint = "Substitute selected file"ă      ShowHint = 1ă      OnClick = PlayListă    END CREATEă    CREATE BOk AS QCOOLBTN      ă      Flat = 1ă      Caption = "CLR"ă      Font = Arial9Gă      Left = 188ă      Top = 255ă      Hint = "Clear playlist"ă      ShowHint = 1ă      OnClick = PlayListă    END CREATE    ă    CREATE BMedia AS QCOOLBTNă      Flat = 1ă      Caption = "ALL"ă      Font = Arial9Taeă      Left = 83ă      Top = 76ă      Hint = "Cycle through: All Multimedia->Sound Only->Video Only"ă      ShowHint = 1ă      OnClick = PlayListă    END CREATEă    CREATE BDelete AS QCOOLBTNă      Flat = 1ă      Caption = "<<"ă      Font = Arial9Taeă      Left = 290ă      Top = 255ă      Hint = "Delete selected file"ă      ShowHint = 1ă      OnClick = PlayListă    END CREATEă    CREATE BSaveList AS QCOOLBTNă      Flat = 1ă      Caption = "SL"ă      Font = Arial9Taeă      Left = 320ă      Top = 255ă      Hint = "Save list"ă      ShowHint = 1ă      OnClick = PlayListă    END CREATE    ă    CREATE A AS QRADIOBUTTONă      Caption = "A"ă      Font = Arial9Ră      Top = 5ă      Left = 187ă      Width = 25ă      OnClick = ChangeDriveă    END CREATEă    CREATE B AS QRADIOBUTTONă      Caption = "B"ă      Font = Arial9Ră      Top = 30ă      Left = 187ă      Width = 25ă      OnClick = ChangeDriveă    END CREATEă    CREATE C AS QRADIOBUTTONă      Caption = "C"ă      Font = Arial9Ră      Top = 55ă      Left = 187ă      Width = 25ă      OnClick = ChangeDriveă    END CREATEă    CREATE D AS QRADIOBUTTONă      Caption = "D"ă      Font = Arial9Ră      Top = 80ă      Left = 187ă      Width = 25ă      OnClick = ChangeDriveă    END CREATEă    CREATE E AS QRADIOBUTTONă      Caption = "E"ă      Font = Arial9Ră      Top = 105ă      Left = 187ă      Width = 25ă      OnClick = ChangeDriveă    END CREATEă    CREATE F AS QRADIOBUTTONă      Caption = "F"ă      Font = Arial9Ră      Top = 130ă      Left = 187ă      Width = 25ă      OnClick = ChangeDriveă    END CREATEă    CREATE G AS QRADIOBUTTONă      Caption = "G"ă      Font = Arial9Ră      Top = 155ă      Left = 187ă      Width = 25ă      OnClick = ChangeDriveă    END CREATEă    CREATE H AS QRADIOBUTTONă      Caption = "H"ă      Font = Arial9Ră      Top = 180ă      Left = 187ă      Width = 25ă      OnClick = ChangeDriveă    END CREATEă    CREATE I AS QRADIOBUTTONă      Caption = "I"ă      Font = Arial9Ră      Top = 205ă      Left = 187ă      Width = 25ă      OnClick = ChangeDriveă    END CREATEă    CREATE J AS QRADIOBUTTONă      Caption = "J"ă      Font = Arial9Ră      Top = 230ă      Left = 187ă      Width = 25ă      OnClick = ChangeDriveă    END CREATE  ă    Caption = DirList.Directoryă    Visible = 0ă  END CREATE            ăEND CREATEăăSUB Listeningă  DIM mLength AS STRING*256ă  DIM mValue As String*256ă  DIM mSlide AS STRING*256ă  SELECT CASE Sender.Captionă    CASE "Mute"ă      IF audio$ = "off" THENă        audio$ = "on"ă        AudSnd.Font = Arial9Ră      ELSEIF audio$ = "on" OR audio$ = "" THENă        audio$ = "off"ă        AudSnd.Font = Arială      END IFă    CASE "Open"  ă      OpenDialog.Filter = "Multimedia files|*.rmi;*.midi;*.mid;*.wav;*.au;*.snd;*.mpa;*.wma;_ă      *.mp2;*.mp3;*.asx;*.asf;*.aif;*.iff;*.mpm;*.m1v;*.mpeg;*.mpg;*.mpe;*.avi;*.mov;*.wmv;*.mpv;*.qt;*.dat|_ă      Audio files|*.rmi;*.midi;*.mid;*.wav;*.au;*.snd;*.wma;_ă      *.mp2;*.mp3;*.aif;*.iff|MP3|*.mp2;*.mp3|MIDI|*.midi;*.mid|WAV|*.wav|_ă      Video files|*.mpm;*.mpa;*.m1v;*.mpeg;*.mpg;*.mpe;*.asx;*.asf;*.avi;*.mov;*.wmv;*.mpv;*.qt;*.dat|_ă      MPEG video|*.mpeg;*.mpe;*.mpg|AVI video|*.avi|QuickTime|*.mov;*.qt|_ă      All files|*.*"ă      IF OpenDialog.Execute = 1 THENă        DIM lenFilename AS LONGă        filePath$ = STRING$(165,0)ă        FileListB.AddItems OpenDialog.FileNameă        lenFilename = GetShortPathName(OpenDialog.FileName,VARPTR(filePath$),164)ă        aFileName(audx) = LEFT$(filePath$,lenFilename)ă        Audio.Repaintă        aTextAgaină        Audio.Repaintă        Audio.TextOut(65,130,"CLICK PLAY or LOAD ANOTHER...",&HFFFFFF,0)ă        INC audxă      END IF      ă    CASE "Play"ă      IF FileListB.ItemCount = 0 THENă        ShowMessage "No items to play."ă        EXIT SUBă      END IFă      filePath$ = STRING$(165, 0)    ă      audx = 0 ă      DOă        lenFilename = GetShortPathName(FileListB.Item(audx),VARPTR(filePath$),164)ă        aFileName(audx) = LEFT$(filePath$,lenFilename)      ă        INC audxă      LOOP UNTIL audx = FileListB.ItemCountă      FileListB.Color = &HAAEEEEă      audx = 0ă      stopandgo = 0ă      escape = 0ă      IF AudB.Caption = "Resume" OR aFileName(audx) = "" THEN EXIT SUB ă      DOă        Audio.Repaintă        aTextAgaină        Audio.Repaintă        Audio.TextOut(105,130,"  LOADING FILE... ",&HFFFFFF,0)ă        end$ = RIGHT$(LCASE$(aFileName(audx)),3)ă        FileListB.Selected(audx-1) = 0ă        FileListB.Selected(audx) = 1ă        DO ă          DOEVENTSă          SELECT CASE end$ă            CASE "mpm","mpa","m1v",".qt","mpg","mpe","peg","avi","asx","asf","mov","wmv","mpv","dat"ă              videoison = 1ă              PlayMedia("open " + aFileName(audx) + " type MpegVideo" + " parent " + STR$(Audio.Handle) + " style child",0,0,0)ă              PlayMedia("Where " + aFileName(audx) + " destination", VARPTR(mValue), LEN(mValue) - 1, 0) ă              mStart = INSTR(1, mValue, " ")ă              mPosition = INSTR(mStart + 1, mValue, " ")ă              mStart = INSTR(mPosition + 1, mValue, " ")ă              Width$ = MID$(mValue, mPosition, mStart - mPosition) ă              Height$ = MID$(mValue, mStart + 1)ă              IF Audio.Height < (VAL(Height$) + 100) THEN  ă                Audio.Height = VAL(Height$) + 110ă              END IFă              IF Audio.Width < (VAL(Width$) + 80) THEN  ă                Audio.Width = VAL(Width$) + 80ă                AudList.Left = Audio.Width - 60ă                AudO.Left = Audio.Width - 60ă                AudA.Left = Audio.Width - 60ă                AudB.Left = Audio.Width - 60ă                AudL.Left = Audio.Width - 60              ă                AudC.Left = Audio.Width - 60ă              END IFă              Audio.Repaintă              aTextAgain ă              PlayMedia("put " + aFileName(audx) + " window at 14 60 " + Width$ + " " + Height$, 0, 0, 0)                      ă          CASE ELSEă            videoison =0           ă            PlayMedia("open " + aFileName(audx) + " type MpegVideo",0,0,0)ă          END SELECTă          IF FForm.Visible = 0 THENă            Audio.Top = (Screen.Height - Audio.Height)*.5ă          END IFă          Audio.Left = (Screen.Width - Audio.Width)*.5ă          PlayMedia("status " + aFileName(audx) + " length",VARPTR(mLength),256,0)ă          AudSlide.Max = VAL(LEFT$(mLength,7))ă          escape = 0ă          Audio.Repaintă          aTextAgaină          IF scrolled = 1 THENă            PlayMedia("play " + aFileName(audx) + " seek to " + STR$(INT(.01*AudSlide.Position*AudSlide.Max)),0,0,0)          ă            PlayMedia("play " + aFileName(audx) + " from " + STR$(INT(.01*AudSlide.Position*AudSlide.Max)),0,0,0)ă            scrolled = 0ă          ELSEă            PlayMedia("play " + aFileName(audx) + " from " + STR$(AudSlide.Position),0,0,0)          ă          END IF  ă          FileListB.Selected(audx) = 1ă          DOă            DOEVENTS            ă            PlayMedia("set " + aFileName(audx) + " audio all " + audio$, 0, 0, 0)ă            PlayMedia("status " + aFileName(audx) + " mode",VARPTR(mAudio),256,0)ă            PlayMedia("status " + aFileName(audx) + " position",VARPTR(mSlide),256,0) ă            AudSlide.Position = VAL(LEFT$(mSlide,7))ă            Audio.Caption = "VidAudio JoJo " + LEFT$(mAudio,7)ă            IF LEFT$(mAudio,6) = "paused" THENă              DOă                DOEVENTSă                PlayMedia("status " + aFileName(audx) + " mode",VARPTR(mAudio),256,0)ă              LOOP UNTIL LEFT$(mAudio,7) = "playing"ă            END IFă          LOOP UNTIL LEFT$(mAudio,7) = "stopped" OR escape = 1      ă          PlayMedia("close " + aFileName(audx),0,0,0)ă          AudSlide.Position = 0ă          Audio.Height = 205ă          Audio.Width = 340  ă          AudS.Left = 50ă          AudList.Left = 285ă          AudO.Left = 285ă          AudA.Left = 285ă          AudB.Left = 285ă          AudL.Left = 285ă          AudC.Left = 285ă        LOOP UNTIL loops = 0ă        INC audxă        IF aFileName(audx) = "" AND bigloops = 1 THEN audx = 0ă      LOOP UNTIL (aFileName(audx) = "" AND bigloops = 0) OR stopandgo = 1 ă      InitAudioă    CASE "Pause","Resume"ă      IF AudB.Caption = "Resume" THENă        AudB.Caption = "Pause"ă        PlayMedia("resume "+ aFileName(audx),0,0,0)ă      ELSEIF AudB.Caption = "Pause" THENă        AudB.Caption = "Resume"ă        PlayMedia("pause "+ aFileName(audx),0,0,0)ă      END IFă    CASE "Loop"      ă      IF bigloops = 0 THENă        bigloops = 1ă        AudL.Font = Arial9Gă      ELSEă        bigloops = 0ă        AudL.Font = Arial9Taeă      END IFă    CASE "Close"ă      escape = 1ă      audx = 0ă      DOă        aFileName(audx) = ""ă        INC audxă      LOOP UNTIL aFileName(audx) = ""ă      PlayMedia("close all",0,0,0) ă      InitAudioă      IF FForm.Visible = 0 THEN Audio.Centeră      FileListB.Clear            ă    CASE "Skip"ă      PlayMedia("close "+ aFileName(audx),0,0,0)ă      escape = 1ă    CASE "Again"ă      IF loops = 0 THENă        loops = 1ă        AudAgain.Font = Arială      ELSEă        loops = 0ă        AudAgain.Font = Arial9Ră      END IF      ă    CASE "List"ă      FForm.Visible = 1ă      FForm.Top = 40 ă      Audio.Top = 350ă      Audio.Left = (Screen.Width - Audio.Width)*.5ă      DirList.Color = &HDEFFEDă      FileListA.Color = &HDEFFEDă      FileListB.Color = &HDEFFEDă    CASE "Stop"ă      PlayMedia("stop "+ aFileName(audx),0,0,0)ă      escape = 1ă      stopandgo = 1        ă  END SELECTăEND SUBăăSUB InitAudioă  audx = 0ă  loops = 0ă  bigloops = 0ă  AudL.Font = Arial9Taeă  AudSlide.Position = 0ă  Audio.Repaintă  Audio.TextOut(65,130,"CLICK PLAY or LOAD ANOTHER...",&HFFFFFF,0)    ă  Audio.Height = 205ă  Audio.Width = 340ă  AudS.Left = 50ă  AudList.Left = 285  ă  AudO.Left = 285ă  AudA.Left = 285ă  AudB.Left = 285ă  AudL.Left = 285ă  AudC.Left = 285ă  FileListB.Color = &HDEFFED   ăEND SUBă  ăSUB CloseAudioFormă  escape = 1ă  PlayMedia("close all",0,0,0) ă  Application.TerminateăEND SUBăăSUB aTextAgaină  title$ = RIGHT$(FileListB.Item(audx),LEN(FileListB.Item(audx))-RINSTR(FileListB.Item(audx),"\"))ă  title$ = LEFT$(title$,RINSTR(title$,".")-1)ă  Audio.TextOut(10,Audio.Height - 50,"  " + title$ + "  ",&HFFFFFF,0)ăEND SUBăăSUB Checkă  IF message = &H10 THEN CloseAudioFormăEND SUBăăSUB ChangeDirectoriesă  CHDIR(DirList.Item(DirList.ItemIndex) - "[" - "]")ă  DirList.Directory = CurDir$ă  FileListA.Directory = CurDir$  ă  FForm.Caption = CurDir$ăEND SUBăăSUB ResizeFormă  IF FForm.Height > 310 THEN FForm.Height = 310ă  IF FForm.Width > 410 THEN FileListB.Width = 185 + (FForm.Width - 410) ăEND SUBăăSUB PlayListă  SELECT CASE Sender.Captionă    CASE "LL"ă      OpenListDlg.Filter = "Playlist files|*.lst|All files|*.*"ă      IF OpenListDlg.Execute THENă        FileListB.LoadFromFile(OpenListDlg.Filename)ă      END IFă    CASE ">>"ă      IF FileListA.SelCount > 1 THENă        FOR x = 0 TO (FileListA.ItemCount - 1)ă          IF FileListA.Selected(x) = 1 THENă            FileListB.AddItems CurDir$ + "\" + FileListA.Item(x)ă          END IFă        NEXTă      ELSEIF FileListA.SelCount = 1 THENă        FileListB.AddItems FileListA.Filenameă      END IFă    CASE "INS"ă      IF FileListA.SelCount > 1 THENă        FOR x = 0 TO (FileListA.ItemCount - 1)ă          IF FileListA.Selected(x) = 1 THENă            FileListB.InsertItem(FileListB.ItemIndex+1,CurDir$ + "\" + FileListA.Item(x))ă            FileListB.Selected(FileListB.ItemIndex+1) = 1ă          END IFă        NEXTă      ELSEIF FileListA.SelCount = 1 THENă        FileListB.InsertItem(FileListB.ItemIndex+1,FileListA.Filename)ă      END IF    ă    CASE "SUB"ă      FileListB.InsertItem(FileListB.ItemIndex,FileListA.Filename)    ă      FileListB.DelItems(FileListB.ItemIndex + 1)    ă    CASE "<<"ă      Delete(46)ă    CASE "SL"ă      SaveListDlg.Filter = "Playlist format|Other formats"ă      IF SaveListDlg.Execute THEN ă        FileListB.SavetoFile(SaveListDlg.Filename + ".lst")ă      END IF      ă    CASE "CLR"ă      FileListB.Cleară      FileListB.Color = &HDEFFEDă      audx = 0        ă    CASE "VID"ă      FileListA.Mask = "*.rmi;*.midi;*.mid;*.wav;*.au;*.snd;*.mpa;*.wma;_ă      *.mp2;*.mp3;*.aif;*.asx;*.asf;*.iff;*.mpm;*.m1v;*.mpeg;*.mpe;*.mpg;_ă      *.avi;*.mov;*.wmv;*.mpv;*.qt;*.dat"ă      BMedia.Caption = "ALL"ă    CASE "ALL"ă      FileListA.Mask = "*.rmi;*.midi;*.mid;*.wav;*.au;*.snd;*.wma;_ă      *.mp2;*.mp3;*.aif;*.iff"ă      BMedia.Caption = "SND"          ă    CASE "SND"ă      FileListA.Mask = "*.mpm;*.m1v;*.qt;*.mpg;*.mpe;*.mpeg;*.avi;*.mov;*.wmv;_ă      *.mpv;*.mpa;*.asx;*.asf;*.dat"    ă      BMedia.Caption = "VID"   ă  END SELECTăEND SUBăăSUB Deleteă  IF key = 46 THENă    IF FileListB.SelCount > 1 THENă      FOR x = 0 TO (FileListB.ItemCount - 1)ă        IF FileListB.Selected(x) = 1 THENă          FileListB.DelItems xă          DEC xă        END IFă      NEXTă    ELSEă      FileListB.DelItems FileListB.ItemIndexă    END IFă  END IFăEND SUBăăSUB CloseFFormă  Audio.Top = (Screen.Height - Audio.Height)*.5ă  Audio.Left = (Screen.Width - Audio.Width)*.5ă  FForm.Visible = 0  ăEND SUBăăSUB ChangeDriveă  DirList.Drive = Sender.Caption + ":\"ă  DirList.Directory = CurDir$ă  FileListA.Directory = CurDir$  ă  FForm.Caption = CurDir$ăEND SUBăăSUB Scrollă  IF LEFT$(mAudio,7) = "playing" THEN ă    PlayMedia("play " + aFileName(audx) + " from " + STR$(AudSlide.Position),0,0,0)ă    PlayMedia("pause "+ aFileName(audx),0,0,0)ă    AudB.Caption = "Resume"ă  ELSEIF LEFT$(mAudio,7) = "       " THENă    scrolled = 1ă  END IF  ăEND SUBăăSUB AlwaysTopă  IF always = 0 THEN ă    always = 1ă  ELSEă    always = 0ă  END IF    ăEND SUBăăSUB TopMostă  IF videoison = 0 THEN Fancyă  IF always = 1 THEN SetWindowPos(Audio.Handle, -1, 0, 0, 0, 0,&H2 OR &H1)ăEND SUBăăSUB Fancyă  FancyBox.FillRect(0,0,275,70,0) ă  INC y  ă  IF y > 150 THEN ă    y = 1ă    turn = INT(RND(10))ă    IF turn MOD 2 = 0 THENă      aa$ = "Achilles"ă      bb$ = "Butuyan"ă      cc$ = "Mina"ă    ELSEă      aa$ = "wasaywasay"ă      bb$ = "@edsamail"ă      cc$ = ".com.ph"ă    END IFă  ELSEIF y = 1 THENă    aa$ = "wasaywasay"ă    bb$ = "@edsamail"ă    cc$ = ".com.ph"      ă  END IF  ă  IF y < 11 THEN    ă    b$ = RIGHT$(aa$,y)ă    a$ = RIGHT$(bb$,y)ă    FancyBox.TextOut(y,y,aa$,&HDDCE,0)ă  ELSE      ă    IF y < 80 THEN ă      FancyBox.TextOut(y,80-y,cc$,&H0000FF,0)ă    ELSEă      FancyBox.TextOut(y,y-80,cc$,&H0000FF,0)ă    END IFă    IF y < 60 THEN    ă      FancyBox.TextOut(y,y,a$,&HDDCE,0)ă    ELSE  ă      FancyBox.TextOut(y,60-(y-60),a$,&HDDCE,0)  ă    END IFă  END IF  ă  FancyBox.TextOut(y*2,5,b$,&H00FF00,0)    ăEND SUB  ăă  ăApplication.HintHidePause = 5000ăApplication.HintPause = 300ăRandomize TimerăAudio.ShowModalăDanny                          RQ TextPad (1 of 2)            Danny846842@aol.com            06-16-02 (  :  )       rapidq                 2939 194187   Txtpad.bas  '>>> Page 1 of TXTPAD.ZIP begins here. TYPE:BINAA TLEN:145058ă'-------------------------------------------------------------ă'                  INSTRUCTIONS FOR DECODINGă'If there are multiple parts to this file, merge them into oneă'file using  COPY PART1.EXT+PART2.EXT FILENAME.EXT  Remove allă'message header and footer information (everything outside theă'">>> Page x of..." lines),  load the result into your versionă'of Basic (QBASIC, QuickBASIC, etc.) then RUN it. The originală'file will be decoded into the current directory on your disk.ă'-------------------------------------------------------------ăDEFINT A-Z:DIM SHARED K,S,B&:V1 'Created by PostIt! 7.4ăSUB V1:OPEN "O",1,"TXTPAD.ZIP",4^6:?STRING$(50,177);ăU"%up()%9%%%R-%AWnPQSC(uSM[m'%V.%/%1%.%%&n%sXWf%unSnRsheL<hB\]u'YăU"$RGyvD'$h,rK$,lq[OIv2-Tf,>ag8<3BFRBnIH719j(sCRp/-n]$qJDxt%.ENvLăU"G4v6YIWf+hl:64&*)e5%If5)3:RrHJA<v6C(1q;<+olI$CrWG$KQQ,>kqJ_e-ALăU"sEd.%=&k:JNbm+r+aETQx$ke9R_YazmpgAsH(rkx7#R;V/Il.(4_ZG>Hs>*\\A2ăU"kHK\Y0wv+TFo7V$H/)4L-sI)XZWsODXaVmrn[k8oElIIPMp8N/HKyY?xsfNx0^+ăU"fL?$RleGEHm+:4ql.s345%pz\:.<HJ2Fe#8hMm'=hBj^0Vfu\_'c,D#F//#)D&eăU"tQb:H4^R/2pBR(zvr$;Capkys52/ubafClU8'R2Uwb,kaEh\NO&;B8-^dm&4AJbăU"Fsz-;O+n8[G_3hXhKcGu,Tj05#*X7\A>:jo5FIu>URsJ/^Dno/A]Kh.sdMaOL\GăU"m86j/QPz;Kl(V91<ZJ*df8#gBaapDM't9CK]_Tct-f;mZkdR..O'mR%l<bQli%năU"vkJY,J-3/kZ+<r#Qm$J;hmqA6oGa&6TvwB7ARBmo.\)QEAuoP>RWKeHpA3ZG,>5ăU"4s*ijh+cHuB)NNa(O:S4PzKnzU/rmT:453EBHYTyG56F#nY*TabT5y.4T\YyOzDăU"Ab&/(mzW>B5wOUCvw:i_a65';N[MqIY/dSy3kRaoDYH2eFX.DvCI*D$w7.l4#7năU"fTQuB1QuM1E^2g5K3s^f-5sQk_6zQHB/*h6]R2C*&%Yd^M_=;6L-9$g5*=kF/(GăU"iP%x)0f&guX,>m&ZWa'+oKD]\j4V?ha[E4UC:m(:e&fs[4+nntA77UX'Nt&:5ZqăU"7jhouB_Ak.xQM_K:=w0nT1aj_-9.%v5LpUDj(0$/%dsd]McHMf((5Yz_4dUS_f%ăU"PTGN:S\8HE.hy8'$^zo^A4D&X*$>i4<[NJ+YA':mHh&b_/:,/$aRbHFJ43)nm:WăU"\YAY&d<)zq;0^P)9JgH<NUCsqaa9=/X7HF0W-nDUPQ:n\Mz2PSUD7sL/$'kI>a_ăU"wAnOdcR7wUq$ZoQE\Ex(nZTJI#O90^=f.Nm:R/pe9zZfY6V#JBaaRC>.:vUrTs^ăU"i+NC0R?Wg[v\kIkB(Zx;EAXCZgcTYNT.WroB+Bl,FrBP/5J$Ye.W7cK_SL/CTGlăU"'\i]B,jWbueR,okaDnPR4toPQd87qIFgE$nKPmRflvGEV7N+_A6HT1Z6u6d?BXJăU"_)1?B4QD0sIvLVKhs];#=/f*J'<]vv+?l^RDYLuFVH+KMSo9qP**#BdpcxUMT>3ăU"dwP=pY-F]RzG,yJEeiP\%KAOLd$E*#dj==Z.)\6IJF3Lw;(Mmm:u6bIBhodcud)ăU".M=J'^-^W-,Fhg$rfx^TDerADuK^&E7+M.fWN.W(P.cM/.cyAh9g%27czRc+zrcăU"z%>dz^.dz(d(zHdz\hdz2:DwU4dYW&2:DwU4+yg,Ofp(dt>PCveN^MoAMNuANuOăU"[7sV7v^<=#%s7qy.S&8UTfkN<fEjoZp4BWitV16qK=UqK800]s7Mu#)/dPf;toiăU"78Mu)I/drDipZpM8=M.#4ofUwW4pM=PwK7FgQK8pOPoTueJ9]u#m*whjQ4.'bc_ăU",CMf.8mVDUJ7ObH*/af/Q4#D&S=ARr/8;8ywbnS2:Pu+,=wp%:kZ*rjBK_iDd-)ăU"?&ahtz#k2u2//7cGb?OpCnG,4A&g+QO0UmA>Wm-/D(%P_.tW#L16fnmhPqZ;Og)ăU"<8o0U,\;//TRNM/+\'g>O(4fvfQ#jq(<ON9+)mEdmR0d[+-#F,R(8'p*le=z1/CăU"_U,\auc;VqG#*X-+%iCU[w3$6=;(sm&Kic(%>p1T?JYlT'r5)2IazYD-8ypP*#oăU"dAl.:(Gbr_,qrB5W+Y7ahSu^^[8^)J95FR7#aU:EjhGsDM7bo$\F-p)M8\[x783ăU"(23x\_NOH0/_8WDFpKRGB7B-%esNY'UX<;$j*%tn*n4CY*Cqt^-IY(UO?ucTZ$iăU"RvxZW9nW7p;'w&Ob-'\(3:xp5_o9r]lGpJ8GoaXRr9L$X4T)10wpkc,],*zY/%^ăU"aZGDqhkIYuI8Eo#=7YR#/CR5'may8s*8>>_1<_Vh^7-YI%oVzF.)5uVi5Wl--ZhăU"G.KPSroPm.c4<k:XBf/.JEs#YQ,pNZiU>rGKtcd_159_2TF,]3,(R]r[9d]W?s8ăU"=:B0c:r<XWB*bH,Aj$-U3<sK_L7<>R4t%pbi+V,iOvn2Q81HI[k6/82e0*:rCX2ăU"?-AJUGj(&N#Jp#Iqgq\-d-ld%WrHO&BOsHkh]cim2b'tB5W-U]^rppaL$+=5s)6ăU"#+UIQE-/IJ(X6*R&w8Gkr&NaP\#e:_)u;b]F4,]#Ss7g-TbH*K$wc6_jynhHIdjăU"ehjAbL2YzSk.*b%#d>TojrLQ_E_2rP6Sym'zr[P7Q*E%vzZRXBhc7Um[hwwYH6năU">FYUn=K;2jY9ShIypY_M-=l1^;=P31FI]L$L]a\Gv&5ih8;s1*yz%Fc-k]WZ%xTăU"2p>.sRhpkTU)##dR&dV=%uCo,u]$hppx+38?$#BrBL=As7vg/Y1n]gmF'TQMs#2ăU"hE=BuUrAa%l<tOYamua]a]ZTBV4,H+u%YOUb>jF$3l4MJa#fu;AajdAA[/<xi8EăU"J7EFroJA*F^NKFusf]7bBHC3;(I-nN\N=7W>*juuZgu0k_tMUbLP^T9Ob;]2Av]ăU"X<l</YOODqOl3lK#TU4_G^hrj&U4?a*skarEF7Rt&qO.rWJCwRnr+toXt-.2ZQhăU"M8NE590Xf*Nn+LA]Y)uC\[08_X\MlR%D3Za[X/Z/4-SCH7RFDR>LF:>dlL?&[6]ăU"O_tEAN)\O<+vuq:>A(Nkj72O_6Hj+KiN_Jp6f][Ygp.%Rqu?+#LQ<bJ6HxD=)LXăU"m/2Z4Qem*RQ2o$D(#1>&\/>f14]o3dsut<]7t.O8ayD(7=F(L.tTM]]^^r8PUp6ăU"_gA8FL^vkna*SH^qQ*$V=?k\c]wrPc97*?f-2v6Z+m%eq%G$rd\Zo+I*6Ofmk]5ăU"'N:clWR%h#hRV1f*ez+%o.J'g$CT9e4'<F%2EPBd^E68UBf5P?3/#)4(?K%T%)5ăU"jf2hy;IS:pKi^4-&#H$(-^1QZ%15:[Dftaxgsa^JL^.PlIE6\u\[etUd:BMn3lfăU"C;H[VD/n#p%KT[4mlv6;sc<'8^EVcap%DOx$bu6hW)89;N2h0];<ftt<3r20SJZăU".Qk_<-m=v'fc%k_5C<)LIunZ%gG&8*=^F6I(l2Z]0=)]<)/CXRC5L?7Xh%f4X2ZăU")EEoa$49ahXF6r9&/3?4l^L]3mu=]BlK't)vv?9Fcb#[fgq%r6kf%:2,\tES+?<ăU"jobi;a\yQ*<00K]bbSV&#9qE-*CVaIj*<xT)%]*Tjpn&=R3=Z2-1Mr3>]$:fi/=ăU"76/LkHSmUNEUK*Ek7*sJxrj9\lkiqBIkn3EI.z=wvt2N(PuZq()?DW[JcvohZrpăU"%vgL#>S**ra^cO3[e4lMqGb7(jgsm3bWp&\l7Z',-Alncd+D>aCZP;I+UDZSOBDăU"k,/M;V=.bpL#r76f_peaD6[4iQ;%-Za^>xVg,Pq()<1a/M0go-7Bu[\a[$q\cwLăU"8p>75mKS)e?UPJ8d?)38>5cV?4-'u)jF:Ad;3v7k>2p?V(Z>e\:Wl&<'?]=G&e-ăU"/p;-tW?mc3^ebu,mL2YF:Er]VhU-hhRtF6R^SCY+KlT69GgsE0qMU:I23I$%5(măU"VE$mu'dLR9av/#A22&&=nT3O$lhHWg;aGSPJ0ug<V:A'9?#zG<<e=muTK==0et3ăU"$G8X9V)'a:W*5'DGvby-e7]F?T$e\Q0pKe$?,gfE>3+gSLh'-2_F6paatVFIefMăU"+)F6F3L^vbT/NWiuG-e?2N%].k4%Hk(RmKVq5_*cLo?=[V^H,Vp>Hcc2LO>GjUUăU"2/0pCWo^l=]O6U9m$UG.l)'GiY^.[#^$UKOjDi*g$,53L/U]<02FnjDyN10h/&/ăU"r4ZExkS-u>>P_Pl0tVvn3V-,'dRGAH\=bL;(*gMWZ-QQ/'Z\Ccfm[i\h(FUEW)păU"Bj?D/s85GsppRYs\azh,$\Kg^7*.quxdQn2$-Ethf;Z]Z5t9R+<c?O2aKR5%xvrăU"qSpQR?+oCaIemEh\$,oO7vvI*aOc]&.cV]E?;&PNECqJ5Dp>1>;S9LBcsO=Oq73ăU"*6Gu$_no^(YW+R$LT/grKP8/_7^j1ORXR?3QX/O)ILiakp[iJ%r6GjLPC>I:F4EăU"^+pc]aH0,Q^+oi[Mq48id#m%\6]=VO63+>JrZV>JxS7OL*bY]^[8VH$\DN#/O/wăU",1$Lq:3IDcS8aKggR<&fJ2+*\a_N;ei5[MUnSmfUu;uDZxC3p6iImo]2A:0>iM+ăU"u?s$?LS/Fs/Zr7KY-p(:IeR/&J]#nZ[ffn6?^S?)Vf]Cp(4wpj5m[aRhMv<K*%TăU"H1G[LGd>N^:o%D'O_H'+'23TnB['&Y9WEn(>CI?vjGgK]MGdpJebFOn-W02,XsXăU"Rk3s$rtU)-)Hg%yY+s/;RMc^j/U8/_rvF(],RB,fr*^Nm=70Z]eX3jK=33dXk4păU"=$,7K[Xuu;IYHdjWhb';G3)Z2Eo45J[S01=4-E.QXVt>Mj&D78Z3KVYS+L%[:3LăU"o/3;)sUj$<8FP5D+Hi[XtZ4_JiP,FX0I*'rolTbbZh75U7a>qb6Uwdt0.U9-'G<ăU"28g=bk'o.L+*l?'&Z2/*1CuipmJh8\k5J:_W9/ThFGZDjq__'I02,aK1\^ium:ZăU"/;\;f5LI&-Q<R?o<Go0DXP1LF_fE-?/TUajm\1,N2yhA*=RDaFAPZ]^k%-s2TK>ăU":S7ppX<4zjtV+ZnBvR:guMf>oohU0gWpC\x&c_=w%'a2P1'M\Il&2Jq5v9cu.X1ăU"Ow5uHMk-Sd)CqFGQ]6;cu\9Fd<Ft'pio6,Gbp<IqP/bb3bX-GZ%meK)Ep<-aP8]ăU"J[p(pHdssI]YO>hG'*O%ktJ9DN=vACdiiADut0rY5E'-4?3wp5es4i7Zme4ij,,ăU"Fg4,^$78%bED,I2#I_9,4$2LHI_ZSF\.x9QHF4O\6PZeKI+A2k70S6W8b]NJQORăU"H,,#>(4.XOCHA>f]VzuEW8(H?u&DXbg,;,we-d/d9k4sFh*fn79d>.7E=LXAcT&ăU"0Y]S<]e.K6=M5/poMFO'm5PKgxyny+1aCv&'/Y?K,CRUR\Ib=xGCmeaLe\j)A;uăU"3.U7b89f?;UNL\%6]mU1VUea=:cDau\j=p1Ka([PX_.7TR=jyHZ?E=3R4,RrA1DăU"pk>\wqNk\Fej;T#mXZus8Ih\)ZT2OnFMe-QUrO*pH9U+ePFCC[V%+k1Y?5i18FgăU"Hi,t[L)#)155UbcrMOppg#(Eg_9V'QFR9rBiG.'VE/,;iEEvS)5BMWsuXE%<hQ-ăU"S\uk^LTV4#JlJaKniG,AWtYusk'mdVt6D^'W+o.pY<C%;GxtAMq\tt%m70K6oLsăU"Ru]:sdB^weo5arRSK;+y\gVyz3[BDvqbmjbCA[feNS54Ie];4&nV?Z9Pwu7KRZMăU"rn\U\Z(ag2pGb_Mif_k)OB)OimwWx4z.H&V2EBG?S?^8g\Ne)1VSJ+4*q<I-7$văU"/D=jzc-?d2$C^Hed*5\0/\$TV=n2?b[\6TLR,ik1.5G'SI-i[G+a5>JrLtMVQnHăU"33gnHQeu0&\0h7X%rtLi+T.0B[YFJ&+BH\T&N['#Yo5[n1rwO#a$/[\GFNqRevGăU"Kmm7?Uo'n?558B*9dR:B(,+5F(^lDQ\9YAb<eF*8*&w%6j0_Om#8VteC\9So+YIăU"]ZDin-8S9E^E2T.h5l=-08F4ut#&am3,F<1yZ[hhXmb0rOl.QFrI-T+p%KCo-P,ăU"XT2XTL3Y[XndqcHZQvcBOLPRbXFifn;j7usUIjN*6W7+E(1pU6T:e1>u)N0L>I&ăU"&PkY(r>ZFZJ([S,FI3Tb]H('SRlnD^]HD_,aJ9or+Z3,LcdY0%0Q=Tc.2V4PwBdăU"N[Z?5(QQeBFFvni6I-tWDq2>voiC6I\Ch'69Kn%40w'YO_4l89d\:DE'&D\T=-(ăU"S*dC1Il$[VmQT6-JB^-9W$5.Iq$%\383P(p0nw+<iX6x<fOX,R5AR*-rp<=fU\EăU"pugS9I3.x%E0'eTYj#:Dg/joBAROxMaBo0Qd>&IS$JNCaZBb0#yaSn.(+;rZwj5ăU")X0$Ns:&FQnp%.>6npzq>&npiM]]cWfvW=.w)COCZdAWc(xjEP[1(X0ZLyF%(KnăU"n/8O;>VBGr>>0#Mbl.PmrGE4kgC[+^FYN;=HP/>z;FfXg=sI/CL]r<i_:(tt8AuăU"3rT.85o5LR5YwPtXtnW)F9cEC'g_UJOEhF;%vTigfM;Ka&Ry.4z)<E]nUKN9]_#ăU"6iaOAU3S*#Go%B,o,+&22uk(eQV>s<BNU0Z7h9;)c;NjvkL%$U\n6VL.Z8eEinFăU"IK(j]x:30heRQULEfLw+BA03sq^Au(h+Y+?MI+$<&(oRFFPAIRkRZ-GBW/1YOBQăU"Ncf%kf-e:L+(C9a)>)Gi[Yn0)_D*Wbl*+)LC4z3PfbF,>r,^(76Snkj(r?Qd,lzăU"HIv'VB/hSf2L%T(((h[\nO>(bg\93[4<)7,j-k/ye$++W(CIz%z)CJs8t6fTgGZăU"&l&</xn)Ci^ynKQM(^K\Y-<t%?3[,^^HYL;Z+J*k)&l_..05fQ?G>VRnB5_HnPBăU"HV%C7?g^D?7wp&SuflxiP'AYv&zao\4n#czhL&LPjm(aeRFoAgZ'+uTJ/7T]_pMăU"Z/Q?,$LP>bR%r)GeVP)nmoG:bHSod26j0==Y8I[b[8R,h<>H[=zgn.RX,J,CwAQăU"W<[8A^i]Sp3OPK_;19pCY6Lk8,?g2k>qxco>k)Y?Sid8LNLLuK.Dwygr?LWF([eăU"'n?*JZ7s,CGL\io\rprpS5=*,+(.JZS8\43-Maz:[dl_;p</f0$qtJ#u897sZ%;ăU"#g?%9YbUe]Ov^dKthB];+KteM-fFAHcvWZ(boq+w(ySRj:c4s_5:Aq8MZ8KBZ6\ăU"FbxXGMduaq;,;t'.k;*[)VkqDN'P)>lkmqPaCHvUG*AUr^l[CcH#W&O:9=\A-fDăU"c'1oH*v9)0B$WmS,*dt]Jn,Sl/b-Z5gtX]tnS',tt]%_bVwMU_rjG:cyB374y^;ăU"Ky.*lo0E,o3HWZ7Xrc)g:rR\AIS99?ddK<])oZ6Tl<#ZPMsET8zY_zZLPbjK7,GăU"k998_&%,aWuVbr^ASIZ\$)(IT#dgeCVXQ5/R+;%?*NFr8RS8U:kR?rA12V7719(ăU"R,j'fhDZ-P3(dY(YNZ_duHvu*Z9f(1^*1p]UY*RPYTC.QBoWXh'fz/:BoW%xOSVăU"#7i,KB3XC(r-n>DL\FOIm5aAdM;IFs::YVb+fmb1,bOAR5:Z=Q6X.s14av_QFS0ăU"8p*WPB#Ep_4iu(1ePq\X7?.a\fkIEn[,T(_cy#2bQUar6/McjgU3Op2qvPT/h%OăU"_cReHB+$-VL<RR)N8z9V5;IQjWbpx:\ASzU1,Aisk0L3JOUiFrj;UhLF/+IH0O3ăU"m[j*ltkh/KX<l67:^sLquK<,\y5n4W]NDU_m_6Wqm-prCg35vJlI&xqN0t#P#SkăU"KZ6Q$8_b2b^6ahYFm\r?j^A;]HsU#m6)(T%DRm;Q1KQkM24QJ3.n2Peibr-cxSmăU"k.'?91>6ZrT;ggN$ZYB5M<#ieT#teRKjuc?JcHd2,Aj:h54p7/2Chl25]9dJNk0ăU"2]S818gflb7:CWAlHrfj^PD?/^BLhe$m2M,6*?_kGF[Dbw'*L_DXLSK$s]b_SCUăU"QNrtTLD?S3V#R)DI;Y[P\Y5fC71uP;D:*%MX8Bb/44w9_>;]4lgPCi9g1X:*:8băU"\\G_=q=t^+xS&hS=1B)wQLJ2rX:$KXz_k?ZlJ)izMOu2x_YjkpyZ[&i:ZVULoJYăU")ut^8ui0?iG\KSvk(&i>5vu,O>Kk]BAB*[]yU>dB4B#r%JaSY4B-Y=WXEVDn%zQăU"'GdCaS+vrX%5LoDp\_[S7[0wv#9V\A2a3*]9DQ0>Dh6P?bm+1d4:2DCQ(9didYiăU"/e[0'jN(9x)80a<:_SVu_QW'q-[c$>TfRoFsd(6d](1dLj;AFL:j)s;UZ<w/nPHăU"R^i=J7^UJUZB&8Ba#3x>N:mw:NwrqrbuERQbn:7hW:RndRp$ksu-l.;SQHfLr[.ăU"/WNbs(2[mn?%Npg:?vXF'NMy,n'+,fSkvGdZQTu)jE+*&_ZZ.f);Pt6*fB%KH.-ăU"*XxRh0kzXZ5Ou1D/1Zn+$1Oeuc/^NL_rnPEhl062^-^,Q9lBl9AEd7?S.%?7^kOăU">U3kP9DDl;l7PetheDr6p*Y>P^x&7,St(*VP%nv8K,9^,,t;ego1Bfo$eV&[XD?ăU"=ws$d-4/Vf_#-H0)2V<N4mhN6,NWn74KZ[Nk%\[i3YnVx1cWG(JE5zh\2-0'mP(ăU"]N?)UZS/:=(#4ZhGcy/S:&9y\zvS<(XgnX+'.(]u1,E3*>,d#^gSxxhuU/4dtV>ăU"TeIuv+Ix]9ZS&P3W)raKT&a3<?SRQ[HtXjTT;vGwI6m1oGCP)Y-L_YknX++NO+SăU"i)6tEYi?(,X):beIu;BdvT,DlY?U*aN,7tB.3NCwbT4Np4by_w<I>BThn%Z(QdIăU"[ojpl;yf^]aZ'&Z1cm8p<obEHH%ht//0wA=+kj[o/dYjBD9PbmX]FVl^;ZW.MX^ăU"N^uoJ4oEUz#0<PCkxuBm'Zl9xusc8v13t&?=\QWcEY1Oh/5;v^J_*D8DfgnLb7CăU"DSt<?CrLSj7).%U:bSt\Q)^5ksB2UfX(K2JgrRMJuO1%<sg=j(j=?=nJnVmG],[ăU"x2jLc1$GdS<ngqBQE9MLHRjX>t2D,aV,h[Uobr>PaZ28+dMK.*,o3J8KpMXK>gcăU"aeFClhKBnhqKGSzdsWgn:GhL]zW\iYxr7k#?7eCC7Z\06(\xR#?'0U/AVMqdwfdăU"[%sS1W,T(=Rl(B0N)\Zqh^e3I9e7O:$F&v3VbU=^>5qPYG->4[?wIXF%Of0l]x3ăU"v.pqtw_TRJGo0ViE[T)F+v5P.(Zl4m=?/i:S65B,KpUD$U4$o4:fkt_M'owCaMgăU"tjitha5HjVt^6]l:OvALK(-=7C\-uFS(PCq5f7jYz&dTL;lylYHm(GefGb&0,BlăU">3%rcP3+qK2u:RQ3$0VbLA+K]u>.\rPiAHu^NdV=jP+/oH3su<H/5^UDbFfh>ukăU"ku)P4Sk_h,:9:6Boi]7ese?t5px)2RMq:*2Niz(#7ftK7'3eITE_>O,:x:+4>RrăU"H.$IQ/_JI3&XQ]rIBz0f5+S&<C$iShmK-RDVto0j:nhWPVg3Tz]RrUUS69X3(^\ăU"w'G_6QAD9J]c&wNAC')2+C2+ob<igrp,I8dXVg*y>lcSr.bi+qsAP9(6kc+,Ys:ăU"A6lW(^MGvpF$]R\C_iRWP2%-+oAvckpkwA7Z:wY8m+ZtpzlTa2tO<o;ka[JnlDPăU"uAB'Q$k&<eE0K(ll-imkzK:0(<&Y7-jh?m\Zh-4U=XC+kXngC\OX2RDUOBJFSinăU"FAq*\Dtw$wYG7402%X]&E:#O3;h80<XPQ1bde9oA[GbUA+=I2=sMg%?(R$-t1VqăU"eB+NRaj\ZUCea4&YeG2]O9$u^h$/IR.6qfoAj6rYCOECW_8*i+(;dwj+J>ybRqOăU"6LY<j/K'a6pR$VlajKl:>1?ruj)N2U,l+PcdbTRbMEG%Hmx$nZOm#1Yt>Z9)axMăU"N&NUi7#:r]:C/tR,;HjjZ5UL4KOb?>)tbUK.y6H9ZBTJOzJXaM3&nCgnkm-P8eqăU"/I]sb6ue)pZd7T>69Dwv8]ulHnI55X-t('^<9lIej.;2((CnEy'WdZMwrOFDaFUăU"lkB>;L[gl5kq)B:/)D:nH.de8]x$bQqEd2i>3tO?OL^HFe8[X)P&(]&<ht4iPwFăU".I7[5PkcA6/<;[EK*_tbDe/(JM<jut5F]FEn(E&OPrXPcsZ-?b$UP[uQZ.L:'b(ăU"s_c)n.3?_q((b)j_jMKr51I4]S\Er%5?-#S,bUaZ+ka2(2p<Ci*tN?'NfgrR/S8ăU"M((:SF#7tpnI=W9?-=Xpr,#1F+OVQ[u?yskMc_$QB)I3._[;L\?amk4Q^,$.awQăU"?&9em?d\#H73>Q2YVo;JUUER9AR(#ld#*;1iDMx4(1qQTf.\KYa*af^\ScFjqb8ăU"lr*b%M8DF4eESpAK?Is.s^EGgYHY=bIMLWX*Hh5]&hB/7ko7,L^F5Q]VyG54jVXăU"7-VN4nw[qhq'(G3&L'N3S<qFWJhO6P4\nVbd<r:IK9=*AX3F:ndVp=nT\r9gbZXăU"lbNx%e+N?gccgUi2s91:U_AW/7$[IpD0b(7EeC;(8)$)WFviHQ;Od:Er<(sl/NhăU"SU/]*:QS^.G6xVUv5xzIR<[I#%d,ll#DGg^h_tj).<=1&zEf>DtZM.]e%V)jFe;ăU"U8gL]<MAyTz9(ZugHG-%&1YtHa1\aM?=A=soE$_7=I4=-,]R,)P\5_UxSjm+b]7ăU"0.Dkav8K;P4Y5JFy531:LpI2Xfc93j9lurU'(lKeV^%(PiD9A3p4yTokIlIUQ%OăU")T0Ap)E1mGE+ojkfLj:=Fa5UY=T=l4CUQIJ/s:Ms)%jIShpyqs5+vP6q+KQ95%3ăU"SMlTc>cO%=/g&2gk:5^m:)uuOfZ/F.P4uOX]h,Sf&-KaPQ5F>8#-#H*>><WQG8TăU"i-AQ;zy=/Hr7CE-umVsV682'qKxxwm9JnX$xsn7a#n*2CvRdtisILxQi'>Vm\fXăU"<(]zBpG3V]Vj/'1=/OQ(3pjsLNIR7W1uRl:>ihmD&IKN&d]1I+UrJ%.33a/JaaBăU"<gg3V(5$rLBVKDQ10pD,^qxii(F%45e;0tJ\S3=#0W=^eD0N(#$Me>z?awPGBZbăU"b7?O;^$fzlZka^gg,9%x*T/aJTqBL[,TBV7.'c*7O?Fn9:_+?QYi-;ZN1]:Y_/GăU"APC\H)z_22W*rVz_[YZ%-d\*VR.$X&OO5]7AhcG%EXYvr,8CCGv0t51&V$knrl=ăU"Aij%Y<rd.qM?+fOICtjAvdeIQTovE>fNQBmnYV7,UpM54BdwzYElwQPemn;.:WUăU"3b*w.]t8t6d6R8T6:BtQO3-8mMK/01s)qadSrKYF^B9tY)AW1I;hH1p[EiWhe/băU"zUk&YzyI7KV1R/rIHflktw>C*'Y\S,S&RDBeK\4=ls3sX(9>Qs#a^k&m57qD:<OăU"cn1k(Oui-CZE[Z0,6i;sdxU\=\*Y#$\gUg%Jz:h)Urvl3r,oUmi\Tk$u0ICY#R/ăU"Tv&zMsV&rwsF/U]ixV$Im0i,+1[*JiD_0E[_Ce[Vc[*V75.fI8'9W==,]Sh/FICăU"''d#O^vSKE_+wi,4769Eey,>ZcL,UfO8Z[_6[Z=ho.\>AQiItt*emf78rbXHh=;ăU"8>'^O0+5gs;^sP,>&PGh1m?SRNEipHxC>8qw]bxCw2DyM:J2gfqGtgD,e0j=)dHăU"4E,N4#?&l\u&dqXl>[VZ3k7N_RTB#%'<&+>eSMUD:&XC+npm(nTYk^%sqRXX$YRăU"%o$;$p#HgNn2:^F&;9[S.Uin8Vzw5TZ8]EIaP+zDjQ&YrWE0o7dX(EFRm5?k]/KăU"14[uN1=<cRm'jj-(=XJG;gh4tVPX3WOybPpyk/AQ\C2:E<>Yu^0I\,IBad3:-4NăU"'sl?dfo#Lk6:FekEJduj3G2?S-rY\F1ds59PJqM)xJsZt\2vG+rf>Y[9[qS[#XAăU"O<-+40\yaO=oo(?MH-<[sEkk5VeC1NU/Uabl]7O9WPF5.DWK/6Oha/SotZ<4uAVăU"Z16E/J2FDD5k^o(4oUkUf)7O'R<mQdZ#re#*]:pS?Pp=OCjCo&%csY,R^7R&OVuăU"6'0[b4'\ic)Hxl_l'W)jGD_v:#Yzm+hKS')*XOT]-#Zs#1ImQlXkQ>lL[l5UNkZăU"(rVx?N1fPh2AX6T$3G8>MUb0lU],5OknPc(o%Rnz9QLCvZg$8J+G4;+qjU&0N#căU":/inMi,;?Zt,UWK6Rd'R#>/2kh8V&D)H&B?X9OWMYbI:gqZ2Jklk3;,i]^x:0&OăU"F1*<aH5p7SAhcKZQ501_J#g]<jMkyB2Lln8>+kp-w^A8n/T^Bp&KN$04C2aY/sRăU"YOKQNQ*J\?4/>V931g)XUTUJ<T,$<F2eIJEPOhZ6K7kc?a(%Sv2#]TQ'u%$uJfLăU"+=x.B]i;iFRk1XS)Zh6Tm)<iPu7Sp%:=goqIPYU42L\%gEQ1Fzt>Q:#Y:/Kr30păU"s^#%XqE*6q6Wp-B6G$,DC\O=H/m3YgihVk0sGaQf.N3Nu(ADH\kpV,<nH2QQG6,ăU"c6#vl2C5JKsH:;M61y&T8d5$TVjm^B%uBCuEJEh+u;-iLrX9T/e=..6S_n#>i89ăU"d<[cf=)2eB4MBN<gCk1#x%6cuNPUkBcQ#Ru_'JmzDA7mZM72VY+/[[ArQ+t<X>iăU"sU#?0oTep(8G>5_<23K$k#b6F\6mev0f5m*8%)A9]sSDnTYs9nz#4N$+;*fcR\wăU"UnsG-4kL.$PHg6&CHSS6n?+X#Fz,J944'YOO=>Tlpge#WT[6eY<x.i&*ZS7T2:hăU"%U-mf.auSs$k^,EaNlnT=KVj.EzK:W81dWsH6I6p4c_a;Bv&Bh>mr6[5CYB:'X,ăU"B8sF)''YQC-^(Z5VN8%mrt-uC?Yt0R<gfTrI;QRSh,DqCl'7)5H#iwQ3Y-wLrkOăU">aiLCwEOx<)68i32X5/4YfK2=O7DMrg'PJ+/'#j.g76K;#nU/t]M;Hw8(h.5L1FăU">-Pu/*fG=AD6/Z(JNA?;\F9aqo)%s-C0mW:.n2$)<UF-T,KM4Cr4c?FL,-NLusHăEND SUBăSUB V2ăU"8L[aw4w[%)(uVNBPg^[5H7^=p+-i7N2zSX0:S^?h6B-QGniHOH14(eeo1_eF<WqăU"01t%K0npsQhPicDsOaX/nOM(keKJ7VV]90r:D>SOV[=O=Dk9EXMKH9hfO*o.vm%ăU"y7<PJG;Xh]0:lmOP]G[A08Nbmv]Bk]qVs^?pV1Vo'>_;)a-jT\<G6_(j0SI7]d#ăU"i(Ok3Y.:lJs$:nz+/\;I)S7_hA8R#P1r]?UftQg)t:3,9rG7oeBY^U.qM=bIlQUăU".q=a8STpIcvzCloAl^'c5nY#Cf'Y$=*XqhFY*0=/9G\,Y:9J>Z1soE:C&E2gD8TăU"#V>tja3M0d^8GR=$RU>FYb?lPt\P%\/,o_\I<bk_ex)baDQ:<E&Xr<cjuaEghV4ăU">'Sz7s=Rh7c&r.QM3;,R,r3c*dgRb]T3'7rNm,R,XCB4o&)N3>?u*[oiG/SZXFIăU"5du(9W=?E&vnj4Ay6E8F+olx3m*:jlRL:8hF7Bp5b/B$pOxgb55m:,bKIBimB_SăU"J9X?iNhpzD>BkFi1r&hMW_wr6=E+6/CHOVd3m/mfvfxx/#R9-74F/-1pmde4\C>ăU":zagQ^?0d6dr0/8*2$r^24s6$T]N5$imSAE-A,m3U>[9#2l]J_:u#cfIgP,8;,yăU"+Sa'W0v/RC]5Dv:$,&zeH]Ro<1#=<w<gbVX%'U0.I0%)=[_(.H/oVVL0ELd+Ts_ăU".JH'g7WVSq-''>*$RXtja>kbksWUU5D;8mJaJa+h3q&-DN6eMAxT#W-SJUFg*T&ăU"^6Vwrec46Uv:9$)KZPwLa4j3F&4#;X;qU$eJ]mE%-r0%D)=%eiXb+&aPwC[Ms9GăU",Mf?[xm_pGViw<69Fhgw&nk;E;h%2jIR%yV:;oEIF#LBnj6k#=%;c5puNlMS;EZăU"q%r,wW'L$mhKV?*NcLhDkp#r3/6KAC-0d\'l]'UD72tZ-VZ;=N;<(.=7Go:'uP<ăU"Fwj%B[78%?jJ0Qa;kxZ;C2m:$YjG%J,*Cj-$xW=uD;XD,:VVmd%\v7Tkh?,JLmiăU"'<8%Z,CecoYZ0W:\C+RJL]&hh[/k]QP5#u35EVfqNk+x7EW8VMBCKwLlf7,j,TMăU"89w&P8_a>jR+8?OUQ%r+5DQ<?V7O/78e(%4v2EmAC:R6sh[(*dow$+Z(L4Ku$i/ăU".G5Og9Cn$riM>fqkoinuQ<w2(],*T:SfO;l/kW8(%gR)LdBPDQ%#y_?xgoE36rSăU"/fa.g(G]rj;NCi+/8E;2#]MWRe.+/)9C+gj2Wo8C9TrQ.a/KXBYO5u]x.JY,*kiăU"n=Ut3af0xNKmkz-paZwvr6pTZ?uOW]rUs)oJ2+BC7wc_62nzG-TskX,VJDmz/6răU"JvWJDVz-3dt9nIaB\K$]p^tcqUt)=Qf:WM5WzXNvt+;I7S9TN6:IB8YI3c7.Bd3ăU"Ci(SH]A\6VfnTxik-PL3$;=%AvfjHu]rk6074AMVNVhOte.B+H%<XcPcbQKM/TGăU">6J.O_H4DP]^;'t.7nDNL4O[SD4(T/N9\uUkoCwSR'bn[+skW[i;VwE+(<u_CXuăU"ALzm[-n]3/#aEF;0<jUM(U]\1z=^-Sah\FPbT3D$t,tH)x_upLo;RoiWwC%4s.aăU"<J/,IWw\eGM/2\F+M^eN?ajL#nHtI:ay_vHr:4(n&.HC?*g6a7pZKXqfukS07PfăU"iBllwJF\ldu#]1Fdvn*Y&NEcddVG]bsB\mNJmJ=Q&+P*x^O-[L=YuE7I-P=nNw]ăU"Qk5Qt&g=0r#Ux2+p<ME3qYvKBWp/-<bg*,&DI?ss[x;WPbRT:l4I[cLTnu-S7maăU"g\ScOa/vr%k]4MqZKj1J78V;=<1supi)3i;>tI1a;OsPjAU<l*P*2rez*;ZH7DdăU"#YVS+v?K13B;<2\?GNWZTlV>,9nS-8:5L9M$dUG=q6+_?<t]*cqT9;FB>xZ5WV.ăU"n_g=0n>R8Nt.J;%W)77b88;,HPmF_'LlZKaD6_s5dd*KfhoZ,?2zlwu^P5U>n&săU"Qd#G22-MFOF(Kr8:JVU-$DU)Dm,,%xzY3+LlGB+;>&A%lS;=_;lrBt)H7G/Kiz%ăU"Z'^6EEbmFF4:p2JGXdV$>4Yx-+R^C&KP-bV.5Svoa7RRt\PLIlmg3&d6a<CXj/VăU"x4PQb$(2]nD^[^$n19Urn8y.[5&.VgR?pOob,FU;Ig#6%sjA$(3BSHomgyRvQD_ăU"I(&\L\P\c^GfZ_*2TMOoCvzu%MCdnJ>iXA26xwBM&Yn$9>zvKbRz>ErBavTXe^^ăU"VY&s>q+a8vYe,6)uL5AQ8j2=&U\v7WAHeVue\$?=HRG_Y?jY^&>QN\y:aD;1V4JăU"B>OO>I9BJ'3FE+keCA>v[]:75;SQIX^c7sU&e</q^8,'(YNEa*U4*>*Mu(L0/.1ăU"DsjlLnq\*:9r>m6,m4*dl89A;qO*<0YA*//nbUR0w^[q8nc?jO.W^XgrUDoT<d&ăU"d=.hTaHkwjJPnU1iZ?\\2W^8)znh\:].ZGd4Br$^8/4wji5H-QuJ;[q(2%^M_t=ăU"nX&O,#?gQHisuJBh.9'(VK+k0##E10WsD?+%Uj8)GTscjGn<?JYhEfH<>#\EFfJăU"\oFd]K#f.'XZY3+(bOvona]vKpt_(\VK<'7hmBQR$312ooF41)^8[E=?^3bc3mtăU"S=<Bwf[iPB4rty2qUD[:-E%&tF5QuS$2VfOA(_i=7;+Gjv/G_Y>E\p/fd&M'#s;ăU"szF]-v&)T)<f^ISC^PPsE?c[#>Jat2r3-)=?[BDM,aDsA#[]IeWpM.r.^9Ec*<5ăU"KHG2a.*qH4&)A'iP./LnZn=\),LFI8.mZ9^-uft2[JRybe\l8-=p5D[m(0GlvfmăU"_-?RxL-(Z(6Pa-[Hj\M8E(V)D.<*t)7>kgy0MN5YYVS^Rn;RCKnhe_kqcO?A>#zăU"--O5BIrBvpjQ>Ou;lKeLTs9^Z.RA\0J6SU$rpBEL;BP*>j-od1Oq9/9?;=p6t>%ăU"H4*+.D56A..TgTou_Lqf7dPU^%3Q&ty=d#CSZc-.N8>P/nZ>5jkeI<yYeueV.$RăU"e3;*4pOn$,'_#,<+LC7<1)vqEBB+m8>J>MtbXA0PQd(bP.).lk;\C:8\:5[&fi*ăU"]'w\j\TddL>;A%5KC*/DHl7U4i#)ngzT8BGnf[iHZmeJVBj%QD?ey-gMsT);W0#ăU"#_DAGcBa6V%ChnIlC8b=5UGYEdC?2scWF?D]PHmKTXVgo<HVgM<xY[uLr?:A*k)ăU"M&,jQ48Nh-ifqmH?kKUSY8(*>,in8Ksj6Rj5?sFZWO\nHio89rknZPY>xw;Ri9OăU"^5,Pa35VOwXdQ6%v<[\_A9^QF_/AK.wnBY5et-#?:RsINAP.&r;]g%X;-l6b744ăU"7YnYbKk7?KO#1sU0Aa5S4Pt9)FC%g;lY/dg<<*=Kuh*qKXupc2+%Wes,OGN&wU,ăU"ntbs^,YVTPYE*R2L-RXu=0PYThA\YR^cD(JtbSG<Q$1C,0nDd-Q:90w?<deV[LuăU"=cBa<mZDjoUQfp3DZW<[M4[Wih;OXBcBE\v+gc2X-CeYhXL#:_/h_8/x0,riLpSăU"BvY)F%X(/g.D;-&Mz71J1wfLyl/C\5Rj;*X0Z#2PE-K=18v<nVRu(b*.hqXlWi1ăU"ekDqe?QbXN_dqxZcem3rR3=SmR:p$-s<U&h-1t'3.C<#9&o,[>'gs.TN1V7WO*KăU":s8\:P,R$0UJ_\O$'cEd,S+lGbk\8*Sz<Md+q<jdoLGto_b0s9)sVI>7Pt9=c^SăU"QP3Bid+]Rao?9P%(W:*&YY/tQ7(tT3DHa)vyYG[GA[rnd\u9&0-A&5oxR9T/wD)ăU"olp(o^jV1M/82]NsUkXB=LcCHZS;W%c;tWQcm4Q3Z2y;zZSwq,;&(P#RmHnIG4săU"'_zy_bYbz6XP3CckbNLp>]sVwk%-=45#S%M^iC?2.p,j7]YS9VRI:.OI$6EA*UeăU"*hk#iY]igUP_b&3_HmXrafe1PAl,wf$Et&-=l1^S0\Mphbur4I\J^CmcULgkW5(ăU"R55HKtC,EuV>0:dlxw4Z[+[pibJ2FOGD$\sVHNv1sn%DZk^Eurg\dV?2S-bd2ylăU"m)*jpAUfUPU*XneAIfKEbDov,s2=#B4?+f%3o>.l.$ZiMQ5rLbD.ZuKA1o/v_=UăU"Dpb_.U?uSwycIp8Rhh93Gkqo,SdCg+;\3f)Pd*ZZXMT),H)8V27Nt<$9+FF</pbăU"mp$M*$])<54YI?:$WHwbLep<.Z2ERH+gYq(:TCiaRUoKps6=M)'W?zdsGWg)3L4ăU"kg&%t]roG[UM1B5z:*2[[0-[<sD*h?M8q6GbH#sttO;#4X))46Lu2Eu3pPT+F'KăU"os*Ea_9gq%hx_]9#wqh:xIw&=pHN<:4omH5zo2t66$[Y$wxPxTA>tw?$ee(-<#dăU"Z]^<z.gu]NccCXXooit&%[T](q=<&]cVk?R8j7grm[)8(Ga*m[L9(a:uj#>irfpăU"CJF+e\5_/O(l^X*8NvF2VuaObLKh23*d1j5jv'EO>J$]jO'r^K4QbMgxviK[4awăU".qGCj]m5>ru;<NjPh/X[eAmnlgmwmCDt>>+NJm7wb+_Ysdgq)[%r-:bK5,.zTA;ăU"%oPVp+q45lYfE1,'bBI8NX5D&?KNZ&C[<ZkgGiT-lso1<RwQRdboZbO:$c6aK>MăU"R=EVOQb$Q0$rS-&Cgig$WuakJelb7?&1$PU/2H;KOE,6_1y837EP)uU[8*(H(,AăU"hHbcmWI+V<bOdUp00#s(EVEeDSOmU<'[j.aELm7oL$4X0#4m9-,8n>f_NE<WsR5ăU"iGC$U??Yu8I\,#=XI?]WJuZ.txmySv3\SKmbyLD3*wwZfZJT$sQ9L^D#OggxaD6ăU"JHz8,O#7H6-quN:K^Rx:_#e%fT[6diG]sA)Nu#gYXm4,o2raScIk.J]L%;?,A&tăU"rn'6Zwv,7p7/Pvb.'^,0>]uCk2[amj%VuGutS?%Kbn^HLF<evM^_TYLAh,]b3A%ăU"IxLuXxUt\2A)_^9FFeBPKu[umoO50o?86'mi:<g^&eJPmY;Uc^zx1</ol&G%:M;ăU"f.6jXw'cwU(]8lt+_#+:hGpY$PjmDpNTQu5Vpir'Hd:?o'Z*18*XQX$)+kT+,baăU"_eF;jQ&<1Ij2O^k,4Tigd-h?,?YB7tY[UCRjk#A%iKQUF\s6XVca^;aGJ4]/4LnăU"4WM(0hsd_^LOUtwk9wi_GB5jq''oELk?SlcR<,]ZrXW'luL;f:1w2^Xmo(vcE)RăU"7NbV#O_iJiaJUKld][H'P5BpkHE^ON%R$I%#1S&fi:'HUeIm<tUT+Mg31:DvH>kăU"1Ia9pdn[#ogNUIoj>Y2(1w?w[:fXmfj-j<9:dn)+>Y$>[uJ-#gkp8VmoLKQZjYPăU"'B)*K-2aD%93jRAMM(pY8Wnp;RG)Y]g0\bo*_c/w:^S>'f(HkKK=YCt5NR\Zx2NăU"4$JfhpENJq#vPsU,iW?1muucK;:sj2U)9CI$Y,Ce][$([K0<K_0#,+-gf8jurIKăU"f7iI)nfY%d$(tAW.4BZTFB$/4VM,438ZX8)kUp5..q[schws-OpYQ-'Nn[=WVDlăU"x/,H.:C%Dl:3*4b/f[Z:=haZWz\/;f&I_/iu0\r=,)YqEc&c=3#vGyU1KRvcId2ăU"rnY(Dk:&k'99%DgsM3%0Vj#>_3j9KpCemig2xrHE3r?]Mpue'($diucaU1'1bKmăU"xkXIR\dQ>Od1HG=J#Rva9GLn$Oh9,?[VZU7)[v5?<RFP]dp)c.IHF[')L=/wUt)ăU"X=k><H5]LBWou7('jbux%wb0w1nfMp_D+WGnWam)A>l+QC0qcwWlfim3?GMRk39ăU"Hi2,2V?AwP8VTB=oq^B/;qM5yZ-8w*lH?+Ch6;o+#E:=tGgeUl-8)920H>7=B):ăU"wi8_h^RN1/EFD<V;b#rb>N34?_?GfFjfDi%]Wr:4l'tZjF;(f9g[-hB\0IlBDe>ăU">W3kK,n9EXG)Nz;bDc5l6J'Sd8zWWX+h(X[)AO?fQ=UFm3-mDPu9f<3YAw3lZL7ăU"c.Y$m/>PR/?82*:Tpr&SNUm*5yUR)sui<E3hWWCoS5O9B%59jUhr=J(>E<jW)N-ăU"?Q74D37JG,&XLZ$)oNEe1a6NB5t>6LQc[A27/;bh.-:Z.-ja15Yvm2XN3=SbuS7ăU"#n=]]0.=rtX1\%R1v^(RteBXV4ah/R1[Hs.sp\FZamVf9=gVmMo5bh37MJXMu/6ăU"K\[.c2SeHDc2M1J/,X4wII9k*AYtw0_,(?'^>F-Q(q>EI5Fn)&o7OQSR-pd&S;KăU"fc1y:GZ$mUV5Ac8-JNbM%yqzq^ccWsSN^+0=h91=Mb2Faa],_&bBt6oDun<_19WăU"C.+mMQ[qrlB?Y%t5;mB'DQ0NssLAy^krgK\-<N+bh?L3Glg6ds\b,sQ*/ydg'*5ăU"p\&a>xDoZ7/#<pA(plV(/xR#U<]bh(3BKNVHh+J/dw<$2*#8%Bnst[+<UM=[4&#ăU"G(KoAoUb8w&ymoG=N7Rn,Ep%\(,6[V.D;ZjB+m;z%oA8O8;Pc&)Ry/y9cGhOR]TăU"+P+AB^.WE4iMct[<b^6DVbW#Ii1LX05Z1]v7jNnCQGXauj:<qa&Pb.(B?Et<Y,tăU"T&($h/aC1o*\xE^s0b)6dRdC:lLWJaNx#U]KJD3_fLZ2gNun(Ps_X0BrLT74BgUăU"TmJrrAVl^5x?[DNu)]L\_iLOS8//V*k%R(7%6ou<>)_c,Cc.6OW.[<b5M+<e=SCăU"pV4.TSNBXq')FotFhfAbU/%#HKCLR(;C9VgTc0eaapf+=KP29CW(Qply$oMOU3+ăU"A7pTtbtNDDQ1WP&K;0pNl8m+)k^e2-an:yT_)(UBFWF\.1EOGxUGk-=,iU$dJLfăU"4UWKzDn[A\r[-Crn+QvBH$4;gE0<7Fmzknj-Kl.OcRc/OfHP>FJqJh1[\l.Au&#ăU"MSDJh6$fG6nlv]FJJga*_0KfAWVOl7EdMn=+P1&It\wmH^ThY=hD)$2Xkr&ZGvBăU"HRf=Q$p'$(-0amECgD<(?>I.ai0OZJ#t6TMAmAfn%St*rl$$Q8K\on?smpb-]^2ăU"A=/4^0O)5^qkMihH)9N<Gk<6*6fNLsZe+,fC)<o0Vd6spqDG+rD'o>)6pnA=lGnăU"doAyf^6FmmM(SUgNA,kFLSJ5I[gQz\.Wfj__VWa/a$Qre(uO48:SWUE8)R:VbVbăU"Q\eQ-oO\.0u:WET&&Cd'Fy^NtS/Q0pIc;^l'o:\aTH&]=B/JY8_0W_mCh0'/%Z=ăU"('YL%:lbtZZZWhi=Dk3#j&c>5Y_(m^dv4gAuBBM,DHuz*>^MgmtZ,-3q%>uBFs(ăU"4K0>_Z2Jymamq0%%KRzt;\U&ZF1UM7WtYEExC9f.MBbyweVO(.ooK*P=VWI7M71ăU"tZxs3/Z,*T2+/kC9$pXy=Re)8VyvEFH:k'^OQ\:Wu?:FXjqaDb?/j9\Y2TLFbikăU"m^+:kcLuYUESCW0$aGt_H/5L22:<F^R<y,e(7,,<ol-#MdrdHQ76YiK>-YFl=Y3ăU"cgmN\3^,z4g%DU\=>j)&Y4bUl3VV2C;SmUwv)UVWw_ZKu9ngxC<UUJhpSm[/s-YăU"cbU7sdQHb_C;o;_,MYc>6e\oUaM]\NoOu,&h7Af=k[ee17K/<X(NZ4p%3/6;E.WăU"3#L:^BKAo)Y?mJ?g691<<<T/nL]&Fu#dQL-cbshlwrAl'bXrwHNWs^f0i8NetcuăU"+H[e6nl=,8k,?>dFX[\#?G3I%96EI*C>7LG\uH5$..i73a1*BQZSRbmISTTc9>.ăU"FR4QR>mRc=;VPSZjP>mJOS0Z9d;q*UdP8Q/>g$q>8+l4,JkfLHImPsroW(G[1bTăU"[qsFS#>13-XyObY0L^pLrjTimd?sNmA&^%LrkFh>:']i]$Msm.*+X5_GY5:Q;*\ăU"#wtkSaI2)TYY;yh<0WerTrpP5PckJ28i_qNa%Yba[Kkr_b5yCRx3ggTC+k&TU4hăU"P__jo'phee<#/4xSF/N/R7Wk*p?Bk];bV3]MLq7WQTm%#m]&mF&sT4=)C<QtwH%ăU"Moxs,9w%pbG/omb:#-GgZxE.%qZ%7&9g53iJ:?8;,$=uOHKLI32<XlI7rT5j*N;ăU";]WJ))-jkCe]WpO1q8v)_Y9N*CMEQWffuEI;.eaFAH7lx-d$OpNw#_gen]E%HGbăU"Fq7;7+U,c4&(0c_?ILffeu;P8w-'t93T*Kg(]7=d(I?#kF<QF%9ZhJds1C_Cv8?ăU"LwQO+P7*L(+paHCg'a/2rCch&r7WW[=psPfFzeca$S(w_x,JF2)Ce%><4T3tj_WăU"Qp'[V^q<JfH9&jx,&\JMOa-Bm\/qE\eXA#M,sS6*s&5/>srjZU=Nnv:Ns[l?7^#ăU"Hxrgp;VgOC5?Y-Mo&rL$ZcQ\4FKJ?SCi#:KX.Auj.$sLX\A*b22Uo7ycU_Fj52HăU"fC,aO$&,=$Ul8CPC?374XVL1yT:^&y^qw$ieeyR/o#tQ<.Ii47Gv5c4+C(K]H$aăU"DWMd]sg\$WxS'C>7RLnI[:-tR;bV8w\A>]5onTd+Nsq%6c7AM[b6dMOw_%F^F-<ăU"?CnA(U;se\ZiddKQ(SkmD0kQ(ovJ4g-LF>1^/7[H%0KxVF_wWuUP+,N?i)01Fi%ăU"_<6/X]M-+iL0*P&p'.\lXKhaq9W;CQ)e+^cO_WHS)NK)aJt,5NmntRw?B')qy\TăU"ft=<;B3VhPC(9C?0lDKK80v7TP[dlb$<oVHdZSshnF-r:3[79OfRY%.E1dnb01văU"tl.;8#I<RHbT'e%Ff#%QlgRLn<5#9TXDT>RS5o*_-L^D7GtNK#Rv[:ONm6YChkOăU":r7+jrQHxCnU1T$lrB0lMhMpIf*#^Kqa\;$oldoJj'bk^^Tqmwlj??(Xw1?SIn,ăU"zGGueucR-YtK,Vi>_91855x[k+\0KBge1q$$i?/S;YFP8G]a#.6u[r75$=wl<6KăU"H&r=jF)#Qv5[m0w%6+/\v2dc7pS3c)A\#s7<BCYRlHV\Gf[$i^b.$m>-lBi>/BGăU"O\8/MDvSOiXy)ob66&^g#:e5+B[P7?8>.;,D&'nOV2;Qp<;83d^91MspNsAc24VăU"8s;UtE.3&?+KL&W8^)>m/*u[ib6bW4\I-1bb]RBY6EGaPDye_PJknnC8%$6%\0păU"B45rY9X[APgXUODm(gEM-c&^UIUUc[U7I:32+\uYD$&1:RK#2y7f0Ng50D;%B'păU"Y7jQd4l=IpjPBEshs^Xd(1zXPMj2aYi.Xdnnai1;uE^XO-tT^UP8OL_&MC<9szHăU"gr-ZwT0Pa=ou,]4kQlsx,9i1[auc3^WR(q-x$rZQHcn.#s:HXj0:Wj..6e[YZHjăU"1I^1*g+ENtly?G(_ZBV-q^_7__$AD_7&]I<:MbnbmNr6A]fp.dHhFdF:45]RNtiăU"(W;Tq7FDZp5iv\nuk#URf/l*hB-tn(XDmsXtT-gMT?[T.4DKMmt':n^DQcRg'NMăU"[+e#WzTIHy2hl-Yt^,-D3*8lF5^R_/kP)PNm<lboC2-vp&NOB+'WtcHZOU_+4LGăU">sIOGvBv8fc<0SYTj(e**x<9ACwDM5cu>vRqS9y+JN(_\MDwZPq>grMWZdKYLF[ăU"vq3NQTKcK7Hq[y3E4z,ef^UMAFY^/]DGI(Pfnb[7SV(nOOkywS;.Es3+Yk9pRDTăU"?7::?DT;AN(xuKOZVtc/q,.ZWts23+uO%m%>WxSJUQZ&c\#C,tN7_'L:).WAMxWăU"g#cd%IOym19B'X;E6>MRh/KV7lB?rl1MdUB&_5=bJn(kHpIH58W.te>?^-*$KbxăU"1/ncfmjLD1e3_hFyM&MDmtM.S85hny#6WQ)1#Ia)oE1>7Gu=]p=zRr7SxLBJ)W,ăU"I1gXmF;;%R%K3b(3g=BF3'7_^/&CP:3PIc<]TfE;Roo+bA$+lR[4RdZa3EA0OC'ăU"3[:O:E4X#d&*t[(_MJIeZ*7NA/.u*H)&dHEGfN;KNtRLY>U5v<J:e_,r0cf839AăU"-6>NoG8lGej-SbYe(,inK#,-=2#UWgIjj%G(&E[F?>M.S,<H2bTpH&$&UU+IWqVăU"&K'q:pavk1hUY_FamlEPpgITN$EIF;ftR,FN=_vH4p_?L_.Zz(QF[burgpUqW+>ăU"LdsFiX'FTY%YT\mY0[>g,N_MqQ%Th,xPC)KqpYc9RNpV^5XXG<,m[2(GeI$W?w+ăU"EN#Jhr7l>_wi[=7BAom]T+0*S7gj;<ULFr<vAUg2gW#d7HtQh>vV2Gs'*Nve5L-ăU"/On^,hp,(=+llfjqmbs\eQj9Kx=h#iZ8Iq+zN*\:3__u)Rc,'.0'8L6XofLaS33ăU"%fY+P?yaTfm:FI<LERPoXa/u-M_7?vJMPOTT)D_;OXo3f0kyYj1-)At5M8M/OTgăU"ZPH'P9/VL[tm>??SJmXGWlZ&g>0PADX1&ioG>cIS[[Qp-#j4.G^2D2</C#K&LX)ăU"^%^fWt1)R^jY5TPMYeBFFS;tsIDQZ]_&2aqh\8.f_dXnJQF&v0]VE8d9a$(veCRăU"cnZ3:V^?c6)s-v%/>yJUj_-7^/nZ<-vuEf:)r*#7f[70Ga$waf/IxVF_Xli$IA3ăU"<0qZ)??\Uf;e9PWL#wSI+s1RZKoJmU\Oex8i]a&bl4=WbZ#Y&$YquP/qI#_#Rr)ăU"W$S$ai;:^]c-v<q]R,Mw>XEoi]E09mCLV(3s-$JF]xVDPMuHfI\FG_1OjU/^=5uăU"Vq/%RaLC,1X0pbRVME_Z?AtXso-hQONp[H\-D#(sR5(rK_XP6cu.&.0F7_\koa<ăU"x:6i]:Q^Gk]Tf/ZV>TGKGk5J]o)na4pMY1s.2Zq7;KUZl7A2k7fyq_wm1GJ?>[găU"$5jX*SL'Pg>Kaq]bzt%frX8aMovG.GsaJsJ1S1G(V=#FkH<nZ[f>0mMv2kug*K3ăU"[(L]oi%P'lq,t:DgO*-?*irBM9V,\LYet&A'Bj5u#A?HUc#\HEl^ydk^I,A+o<2ăU"zn=dF>acF]Xsl$ZsAL74eQ?QTqH0*[?='JI3b8*:?N;T.cDy,G>8W\c1lKP?jfFăU"Q*sRXnV<R&lwIC,AxNx3O[\p\9YDYQjl]+RKcJz4UzQ-3\%H_2HYQ:8_'='mf=9ăU"3OeztfD*F1KmO904nYsdmSh=#HC67P1bS.?c\Rq$bMngisgeAdNtgEj&6+)wH;iăU"84v%+kCkd,kXRzGFG?]o4IT_N#9kcIYJnA[IiID6f0.1#uBc&4ZS*U7G%8\(D_*ăU"%%L;u#/iNQ^LpbUHRd<nPNS/=='LI?imFf++J78z)fhLeF(o_dgR35e_Uy.9nIHăU"Q1tdRmS*m7-k5%Co&qnPF_4M)qAcUCy3^a?g'BAiG'aE60e:9-Gpc47NH#5U5G5ăU"+&SEAQeJ3a<5OK4X[f_pOqc62HSH8G:x)A,C]ed'7WNPj&hR<BYt^XxmH&S$).\ăU"g;XuX-q^KVYf^Ox(RR=9TkfSaN[FW\\Wq4++rs\N2wl?\DY-W&H\61jqZi]4e71ăU"P2k,S0.i0U%NgRWhnm,U>_W>fgM)H3U7C0a>qn>X[>6Otn28.WF-7b^L$>\a0r]ăU"(e7eyCP'#p+l_Z(c%R,LeR%OXe#mm>f&Lk\:N)VtX7nC=skSLhbEU0[j9VQ/oe*ăU"je(=KW.,BQrwR>2No=cg[7*cHlL&$m0O[A#w:HkdAaH3K#EX%F(WDdMmDM8XF51ăU"Uj<M6P^,dnFeVc??OAK%)v6nD.m3ex?F5b&B$\gQkVDyO6-<0q1GU.n:aAtWtD$ăU"H(FSP8Npc-<l2UXj^\IWVL(gg<e7V-s##>.v+h=Ei<\945p=V4dhb._bN1MzsK8ăU"pD,#4nKd;9H_nikZR]/ZhP3]cFJvlI3cXbWMN9CB%;ESNJ:g;GZ80b([KMtn:bYăU"4F/E_b:U;t]9DqYR>vgAHkn#7V+(>XkqVUh7-90z;5FqZgB<XkV^AJxpElIZ^GKăU"AwK$6'iv%N($8VGn5H:Y,U)EW76[A8]:lo=VZSYpX,qc8_4GB<FrlU7<kAlT>?JăU"#qsglXzNuE(tm5%D$;u&U(yL;[jgRp?7CLh)\7#s8Uv-GR]hXo11d#be;TsBC4zăU")-o9TwSluXVpi(hi&0H:&t\*0Lw6m#<2$o&Q:k'uo#Qu)>bSF4C?o.vUu:)6hf&ăU"#PkWtLs[/YJi)A2w_Bq$clx=5?'?55_%k<ij0jM#I2HUah;'ei.qalFN=mV(m)\ăU"vZ_mPVaWX$pNY9bPe0KNYA6-a\PTBen))K>tVme:U+E&)*J6Ws\%4ILaY'QT4,qăU"EgEtoERY[F6'CiqR-$FcXu_qd3,q;xD$=,kMy^G/-N4)GJZQVWUC(7Lt<&*%b1.ăU"I>Epk3C2g1]FA=sE:/^48rh*d3Zpc-dPR5j'LMtx_1,A])=tjU&jeA^1P]Ei_0MăU"Ogno2j/?MO3[>YLM]36'[]l2i^<-,UdRo25d?(nz-XiBcYPEML32uNvLr[-vrkTăU"_r\Jnsov=VR;E9J<^x5gazS=ADADVhYsYk\T\XU2o)gGbpvrD:WjPsMlK&SGmPlăU"tQB2VWebnl-/_S)-mpA^tFGHu%PZ$9i]D3#:4:OZCPo^_V8(T[9o>JWFJv^L]kYăU"0.\XG23K'.rxKJ<5R2Ly)&D/GxW\\.3LW%1nB0;EGY4'\,LpE+a3RdxXr8;HfaVăU"[&#X'#:WSbfKKtqNliU\qZi2T>9]-zP8S&&BK2k*htt>#TVGVqky_jJK,Kzp<\ZăU"YNe40uY(13VTJ'=r^,%lv-W$2>5/k;3YQf$8?QKM$oq(<rVB2(N'c(eFqFIWs*$ăU"X?+)NYXT('a?m-gA>drhe0]JGr6Y2gJNd.Lp-(3AaXr$oF77S^ApR+\[ENkPavCăU"T[gUBC.gS+)P.p2FJZAWy-6*Ww\q\QZhsF3'Py<s>S#BD,[(+zK1GW^q;/PY:-RăU"WNAkFbZg9]vw*P4Q<AGgF.fWVcrpAwmKv/0NG5.INIi5O1aF+;#18a<8BUt%X#^ăEND SUBăSUB V3ăU"^X=(uED4=IS&?#jX95E4^5y^wQ_5fdZ[Jtj1HMc=>frt'edzmZ\r<.x<tjlfTSkăU"V/8y_Ry?Q$5XKYiZ^3WKL8UQ%D_NU[#>$1J3lYJn;l;NU(/H(VE?4d\$/ZvjSlVăU"^hDlWZYUtjN=kb^[*3QuFmO9DUN:2BCJG0NVBHaNoHM>durQeXnG?=:s90h;(\'ăU"<<k/q%gca-NJ7PsdMuyttRWkNumq/s-uWV(#\-]/u,4--_]vZarWKnedmwTKW&1ăU"Vo8E6]w&<K+ER]2-vs,/PYEYjo-bjg(^8Pq+]A^hZQE2_5OaN]\Ew+rcJJEAo?IăU"Av4$$gY(.;%1xaMh1j7+,h>jfgBr=5T2<qr6nE,S?vrFp5vLeFKRhfPQxBnIa\WăU"_mOG7'kJD\4k3Ny&qAi9uhV&[awu'.iHkNs^'[Rfvn%*WrZM,lyy)g3<K\4Jg4băU"8'r4/y=\89.8-re1m<1D3_BbQ]0bG^ITeIu&is)<]-ZVbUpXJr_oK%XG3hV\;t5ăU"J&rYKB6b/Tf-dunl.Q;v\q#a-HfI9mMS..s.3S.Lq-Rxbyr.G1K#M_>-'X$_NebăU"/qWfUY4SobT5a0Q>GjHnJw_-81Sp9mZB4VdusxYrFm$mCl&]af)[+MOFnuQG9\KăU"dM*AI#$p'<fNxJXVz9<mT#(4M+p0W]^KPs[W#-Q_;7So(.ro1X=wv/0S=SiYf^[ăU"W69VsFzfbT5Z?Z7c1YSe^hC1uT-5zAH6T/Ir<MjcZ4[LD6GRd,);E-MheS*brdZăU"XitP59X4<O>BZ>6,l0SBiKI[KOU#d=)sHC;tN?nA]9OUW:1:w(+eBfpoLIao2(QăU"*Y4._cbDGDG6L>;Fpnx%E?;9+$[f5'w/KFkV_Kl9/sFjH)$[*xD2QJ)qG9C0t-<ăU"rHkQE(i9KB;[2/i08,r;f2GV_uFd$j^(]QUM$<:Fcajp\ii(FpT[eCJImmUQ)cOăU"G60,#+L&4lr4RdHBr(]bl^Y?h4Cc,3?S-4*bQ2z4r:bE>?AF/Y<&8k,6Kp,zU*săU"Y>(v%L4#.O$%2)Zgd6o_$dlj6/f<'qT*>wpGMPr],Y/GbGT\6pT-qtfSK:P<b#PăU"<b*<fb$<bbJOC.\s0g*6MYX#1lu7leXGSnPtAz0XXe['u,_hh=dg_zpH:K-/CIDăU"Im/m>.8a:/<.kC'U-X1yO3/#=a80GDx,':ZI<;O:uW]f=IImd8'5g6y,E(*b,5YăU"adDA3msWX^,pYZdF=KgVrvjCpRB&J=.f:K+Fq==pManX>7\'JJP_mT)q54<Hvj[ăU"i9N.WmerF[,q4cz*3zS46uBHflA\)oI\VxI#Hl2F;biHH%2-KND/0_[5uSRs\v4ăU"2-\(At7>*iFtnAlpf]*N/INPs1=[C+zI-M)[#ik'$4#gEJwaN7yLp&\^Fn/9-gTăU"D%t>9O<Aa2sDUEX%ruO)U$]02g_v_sSZr(=&rR;dbVI(3r8iyun)0q26Jj:iF33ăU"i()q=rRL]w[<l'P?+&Q[jgi0r]o0y,:ONpW;C+\lnCVQW,G62xEC1[veV'BTPuxăU"rE[A:R6hD$&3J-OCUUoT*]Y5u;RaA&$SSD_lh884&ahK?o3'#WGyqQ-emQut,rIăU"Mk5Ds[Dy$dSd:UYlepyO^/?7D\y_Lj&:_q4Baurx#duP95lDhRY>U#Erfhd8<7JăU"C]g<<:eN\()kO[ip[FDe5sZVY^DiGiwpLuB(q=/*J0j*_PP%U=nDGaeQ/Cw8#IPăU"v%B1ZhK;u/69Dw<(sk4oH=,iBeV0t#b0J21;MfVFXms(Z$%Wt;TLxMZoT#^4]llăU"]YO1Kx;9R-It;4q#&>DLxjTMd7mlTK[)[Mm*+pUKtdA2+bNMM_e>SJ9dPMt7gqIăU"p'm1bI$;56mR)XDKe(QOw[i&)d^TAeVs5,3g+K)bf;mNA32zFsuct(;0ra'O/tfăU"P5TYM([nOapzdw*GZwEDrtk^TE]PKlB,5.8Jq_0=S(dsBS1Y%dLx4syWkblQ*u/ăU"b#c-;IWXE*N3ffqOul2q;8XT)DeQrlxaTJz,f8][Nfou*tCd+M\d]]P/#5)dt-'ăU"?<^?2DNYoN\wkAHeTC407puCJEQiIKP(XaUcZDB%I'bx>&\\N]=hS=)+;w&0<BvăU"%[83Vu[[4EuVZO[QCB'U*?9O*m3t2v^h(s,SaD&'qk=p5D[C-m4aCu$?^&SL#.eăU"M9=S1E-r$p,+(IXi\Ek#oW_tHVf(bu=m<C?u9Q6m5H<NPj,G-1(pI6BZO.jggl3ăU":43/n)nCw,T]:sGd1w5h\E3Y*GvIn+gM9kHi?vs%^4#_F>*pKfK,1q8mKRUf</săU"/t9_U6b*SyToh>dt?m[._4K-_ZZ%t._SFCmnX/G9j\RPjmS%LdH#,bF&*I7gHjRăU"aoWZQsk8M5cE#c)cA;<T%_3]aP=pA&K+Lt6rq,oPhmOR6nKov1>a;OUA(dr*'$:ăU"6hu3T,/X/MUe#BvW:xqCwiWdF=.\q-=+j3,TNticHC+.W7.hXdb:=1V[WWXujK$ăU"\Wb(/Ht#1y7C':41KoPE8\gasm(N#:phMK4-+f2MtP07]BuMbbFOTn0B-fS*Gs(ăU"]W4:uaL$jp10;8]ZQq0$E0SAnZd^;n:l-9Kf=v-R1n_][Jt5P/SDhwImg3A)e]\ăU".=ma#q.Md(fliP%+?\Jy4e(hLOnM0')U0u8;9S_lOy]TQu,6?xV0btH?&(:X-XIăU"iIY?WXe'>/q1Pp+=ROcW.e_#Tv5K];YZ4H&7LZP%S+]:1<%\f.OF\Gn4ecGAuj$ăU"<7%-8hY%7AnAHTnm<:)o$:^#DodEu-uY,ZCSGXdK(F4YYEXw,C)&uzHy-g:\rH8ăU"%*cA8gmi'O4w0%\RIC/v#y8%>E)gMc1ztPfNt#h-A/,Ci)]n2n\<4s/?JSSjl:6ăU"t=xrR.>R5Xq6Zr?48)aTohv7Xrda,*j5_OXBuYk.Y(??rk:q6l.d+T'2D8uZ3FpăU"^j0jL/cAH#hz'rB_2V:1*Y7q.cq^B6F6cT_MZMu[,v,>%_RPo7Nv_fV7;l&pyikăU"y'+No-N2b7URNFjn0G'G[':\]+5cTfp(nV9GsMA32;:5f2'<B6#0[jjy?(.OtiWăU"^>E*ci+O;98,$W9UIF0NC?35'pp9zg7RQiSwX*vWTe%jmsEG9Ljlp.5v_p[^R7qăU"b\fXLp&zigd4'#?[CsY-B1gd$qQ3GplM[cUAE^ghp(Gb,2n;>MoX,)C_9QI3Z&qăU"/\iy[;#P.lrpb[Q.V%9L\D+MTkr.MKRV-F_'Qt\o;>(_*FOdiFP']#ITN31%edQăU"R>rKuLr4;f8q?'7hb+uFi,Z+F_Xh6InjpoiF,3<'ZCSvMvY'CYS/P1W-KikQx4hăU"+I2v/,#=Hh#PefS65MFm;+Nl+j8tV]-Pv]X1N4+2A+RI<gYhSM7;99kBUL+iXr<ăU";G32Zl4mFl;juol_Ux_Z&hr0FjZDL)z6vH;\KnfxwD7M%%1zVdCY0g=q(etY;BsăU"Y6JV4+bG?cCFA^6wI&*T8AvJb6[7d\?)\:7Z-=Ku;yi]kg[^sxfZqpH?9L#cSz)ăU"Pj<g(_=$WR$otw73H)>K6&T2yc5TQcKOO47kw#l.sKid+\/M(+]<U9n7<2YHpn$ăU"4mfOX>e34:NcA()XfnM1b.[/a3u^tm%7QIcEb7i+1XgJA9x9<xsDYmWx:SS/N</ăU"uN1q^^b7vFhkeClYtwXLn6VC_kKz6sxZ;wBmKK#$gN+23+5[Sm+WD*e\Mf6tgk_ăU"%PjoZVlQu4qdOG/)1*lx'Yf1H0Z]ZdhHE%:)l-90mXRA&AL5.i>T[yXZ(3AsLjqăU"m(A)h,EZKixW07I%<YQK7m_jkiSxbtH7PZ-2wL+V$;'Cn,.NE'PWfTI7wShDk<\ăU"eA0>oFT'SNY0uuVnoVNf/LDV=nHX\q#^rCF6./h;hs:u>6iF7x3QPAt?oapaK\YăU"$IdL=QB2BaS-LIVaXHVmM/$F^AuORuO#FXA4DVapCxMB6b6t_4J2J^\.k+]T_2EăU".I,w&JyD6KCAaSN=x0U/2%+a<Y.kB)u*3v^3&9V^wae.FpcJDs>+)Z%Xc?)jD^GăU"RC?'woUV&+eePHm'1J*+JDrs97rEe+r2>bevPhDo)1^loMGhM%J$1v==(Ho]S[SăU"yG2^a,K\T5'^3#J9+z/$o:Lkl=lS*\bj\C*<RrVB<Xq\#gn*WV(]wG/$M?bBG1<ăU"U?ElTEB'F&K;91Gh0l/N%\hz:RdO#S?>1e6LtKZuqXw>0V:)NfQUYu#NoG_eW*xăU"NHjt1[8.I1,VMcv2q-HPXTF1V#>KfsvZe$#HdldN3[X*GXkZx56GLRmaTXowFK=ăU"69_5\If9[1_fu_Db/V*nVvYH2>?T\J%:=6kZj9coZ?8S1ZPDg'T4h2j\1(F$5HiăU"k-T/BVpyi28Z&hu#>CTuR*uWPr.K?^8Mkk(6[7%%q+mhE,pcjCrntxei<^jxVsRăU"YXOTw<U+9JPCQtrro/C_u*gRK<.tL&#wUha92#e[)xZi#?ucli=>K'iMPh^#3V\ăU"Pk)iN0#trakT$3e5p>(iK99\Z$?#BL#,SpRsjP/w>M9:1nk4mU][u8^^IiPu=qwăU"tQYMk,yb],2+5I2+Gcm>YsXA?IRV-d+8=R]5o07m$;:v-#NpS#8?7n_9t]JhBf;ăU"ayVn4QsWD:<2lQFDY1Lb<#eei&9;3':9PMCl(OpHlW/W:7k>nV)t29ad$fe?l)UăU"z:aj>tJCEs.fI-w$O5,wW&>,2UdUN&<^/;>N[Te;N)^7L.GMjmJSb;Y^1c'9)#_ăU"uMa#s#Yq#jd)cf'D9Rk*4;TU];x^Y?POmamLh.4Xo(eoZ#;I:&+B0r'=<FOOT*[ăU"DOOw?GrP)8gzfj6-C1opcR.tO<uTmpXtqXfAEDxqes8LD3B^9_7jOT2%RB[Q#JSăU"HnR<o[:D+7:Hkb9i>.lvj>hb=?ce*zz1ayw-&Jv/JOeiOcSqDuLg5%Fu:ggyv*măU"ZNNt;Fs[LB,M#Z^WHq%CGPx\bR^_^96O>\YLb?MT=o9yBbHCDszT1M<IL^RP%BTăU"Sg4l^b_)?Q..7f9R2Ql%)E4>7PSa0R8aV>n<([yhG=R_FBE;,[i>Ud>OA)TK:SNăU"coMKlgIP1z+0#eq\ww^9v,^-R-lUVE$_&6d=<27[Y/6YiT9VHm-GS-EZt2L9A7xăU";jSKX049u-=:CiWY)CIm1J8iyM7b6*7n[*9JdZKwH<O#7p'0GRn2o<U_dKm*0vqăU"elGew%5;6V-shYeTCc=h%G61(Xl5-KVF8jeCrnhpUp9hAr9M3o%*Fb9kDq#x&.&ăU".yq0E'gT;MJAnf+hp0?6eLNRA_Zk31ZIyRTO:b%GwWYJGOBTA/iD84+V2f^5kBtăU"%NirodqpOvCm'9.n)U4q\?f?psB,\UWe>B0gBeZ=1OM&V.5,quv+Celdl<OT[Q6ăU"\^lj?8c[F\\$NDMD.ek,Hl&rv#xGL/#.O0hdR^sQ\hRSA1U=5hDdAZ9WGU[-],+ăU"bf]C*fb&LcG9oRgub.qZiE:FmP#.+^cVAJoq5H2$9o5j0Si9KVcW0ej^hi9a#sHăU"Tg>R67hVY.Ns*AxdLZ/b0sR<sT^5-]qPm1>;R\11nEZ#d4*P>7=M%?p$l<Jr>akăU"AvHQ;DpfKM=BKW(xV=bPf7B^uKuaMi4sAKRIh(gh1_E^3=8d$+n/n45*-LZkCeXăU"UUEi%&8p<WSuggurhG#vYo&(s8nJw:pb_^Gm>x8Huegb;-k'FrJ0&#_(bbqNJRCăU"]jv-LGsioXF]Ye/Zn%5uL?95GWkcsc-lk,6#nC],Acg3i_fsMe6NL6snlx)s#2tăU"un<*<I9LZ/9]R_89H#<Y&o4R_We3;P/NzOftcJqOhl^vmE=WDX?MO5h8\y4]VR?ăU"*htOuNoO^\muaEfW'fi,<wrC6sYqn]H'qkLhLqiZgvV;VCs/eDks<Z\Am?$JFESăU"W9B.E&t]Zf,hk[$(mn3SPJUL65e*IH%dh&KwTb?kWo#*9Dpv(D,VGa6gx8P*fcoăU"ylcmiGN[v3N-QD0t490xh4A_.KGE?SzI:aRB0NLw3*n7bEs4b+ED:xfgM]UGw&_ăU"'I[]Xx,E[Q/&n[T=YeO4rg;3[C+gBwSxUm0.1$1_b4B[x#ommK683t]0qRE5%jQăU"T*55KR*$I0hB>BSW#3A2657x;Ql&<$]g#?dje%T1Ns276^_;[4h(;4439S>4b^AăU"g'j1e*tg0s;]uD[eTtc3H^e.3T4<ROW2,b&K,nf-^e-jQJr0-YVI2]]Lpd:5jt9ăU"/34%4'mOoVc<IE>kh\Ij8b=g7z-cUDQ%:1)+2t5.&K3NO(9iT<Ie+2(14i=lXUBăU"x?uZKu9A'khLK8R4EE$?#Ni?JXkW8v>ome4h4+Y0Z,^5#tDjNr/<99m]3-h**k&ăU"c=ibBs)gB#nzsQjl8l//OlTTrSCkWZOd$+uIC_s_(6*UrF*0Fc'6EK-rn&5(k^(ăU"*kDOlav\L$2T8uM/RyZhk\C-=8Y-N3l>CCq;K0fz:;).RtoQ/2?S/$:OmL1gmr1ăU"c5N'QX28Xoe_Mn<_RAdAy,TsdDA>Lup&GdHqT=6>DJ8qe\R=turIB>F7U^Mt(C:ăU"[yUN7oajnNg9:vl]H]\*W6eFMD9ifg+gPU)9qVHs?&$YeA^d=e:Z40S=UoQPO=6ăU"XST\DDX91Du=u-qY2TpNX9#y(m5)1nB8;/VCXo=^8&H.623Yy%\#ddI(ggNTA;TăU"L5NTl/cQ;,uWF&6c2#?u7AXkcNlBp5n$B1>f-=3==QDlbMB#EPnH;sx21=;5n0săU"C.x#jK_SlJfu]W[e&TlP;';(-?vRnMu=U%+g)6v<1318qo6l[#D97bjP,(fPU\)ăU"Ee5ZIr[(bVV\7BO]9FJ;bxuIORer[A9k$ni5i;x8dwJseyRE&)vN^:I\LuHDTWGăU"coks*jgc<R$wxttb^.,YxD-t7Lu5#u&#W=e,rrJK&l\'j<(.p[)\$-WrQ#9Xpk4ăU"2#ghO,E8I_f[AB?\rKF)G_(Hnq6k<$#t[$&6>[b^[ex[#2W>56yAW\U(P3k9w>SăU"W+<C:6DKVSS\/)pxE3L$%Wk(:_#uAZEht#ij?>;_BuT#fe]RXvl0G#(_/jlsTh>ăU"dZUYOtralKB4=sx%2a8]R<sKV#<NO.C368x_K8vr/9]\m9^P7WBgvi'bQ']PmnbăU"eGW>I.+r/miV'-Q/y:_j1gOhqC#4lZfR4aF^ouqQ8jLHU2gL37bOG1UK^#nR3/dăU"xJ+3aHc(X2%062[CFn.E^9cY>gBPy(P/8]OuNzx^_il:MchA3s&Y(q3ay,tHVrlăU"5n]ZNgTL]tq6&m*TV$.T)GH6htRwCgC,HdWpE6x56fHsYc:?de];.A\Q473+t'6ăU"n9R='x_[-[#$j[4ZQi#7'*VNn?\7X&NrP3#Gw-C)3RIqz/*m<_zRZJlX&<azh%RăU"sn[EB?iDWpEKJ:TWI*3P##R'MaK*iYS:)&=fAj\PU6Y5/-_H$oh>dcS_,*kCO2UăU":NZ=mc,ap?R\]t+ns+Y%->e%;B7OXhJdu4X$KB'1.,It<r^gal=&cU\1<d?nSWdăU"2iPi0NdCp#2bg;q\]9Vf&DHvUODTy0#B;9E)%,YWYA6Wk=6/g<&q9JspfSZ25NUăU"3eD>v<4b(x$S.igAa^nlgLZ\]HWV%GA+LR<21_xlREwolah6#iMuHeC1WK79zGUăU"uAIZL?c+Zm-,P9[>OCctgMipHN=(D\<7>NCs=_P_x0'ufL[GtjGUYdHdt80_lcOăU"MySn6NPZxop>nppK2q9&1_xD#(kTtA&#&7)7t4geaLV%ZB%ohq:k=a2T0fk_FLTăU"3gSyy]a82:&SEA-yZ%1NG:6BZYwn1Im,kRhfA4&Hu'XZxB9&vZlpJJ$Bf6dB1_dăU"CfKiWi3l_2v*Kk>Yd]cqP($uh$6YL&/hoaDaALkZoE>nr-c-qerNFC&0M>sPw-JăU"G.t/hreX7YLDEj+)S=]kL6$n.db?+ATCnA_QZ?ibpSn\e$],djIK&r3eXu9#dJ]ăU"'F7Ef^R)F/ZGWgcInTu157wlVAx9GR]0IhE-_Tb*k,s[jo)'UVPpxX2NdX99J?NăU"lJPunU]tDx1Fyc0&?hH*6Z(,MCDFlwrAQ=U3f#9A>yVY[<-Si#'s^L,5*_Uo5=2ăU"El/?rKr(t/)1A2_4LYak470A1zRT5>'G1F%;/FA/G0W$O,S:'*+HIm9K=t^$]+RăU"P(1z+5o-D8]ahmQ,gpQK6FXdMG[MBrNr^Qh:>I\f(E-k_Y+d(4vsgAfow;YlwgRăU"/5Ltee6Dq^I\dFlg'UB((bS_MGu[&-r0*\v?0x2p^^khqNp(E[HbvgAMZ=NT.LVăU"Ga3M8kX&[T'3UL^%u&.i)b7[q<W]n\<EU7^qw\7DUm+VPl\(GUnl--#;#1]o\m>ăU"SQDm/N;S.y*:$$*+C'-4/MBvw=3wgSb,i:rkdER8]#ja5R;Z1hEpjd)39'$FMgpăU"v3PbD_Ba4GF9:Nw4PggF]Y7-'E3k]XsGlVsFHktVJp,UO^_i8r'Nc<rG1T<V/>KăU"W8G-1C28DDfZE)]V5hF>*;HWXTd<2gQl;Dq/CdHt0/vsD]O(6]-pWbAS0<zWaEvăU"#:6G1'.6sgD<cllVpT$5GcKnf_M&sn0#6Lwh;VFW==$k5F_KSl-.j/sD0vsS3'iăU"0/tfcdWI_4DGP'8Hhto4>>BRvcqzf2DH\KnlNMpX-9SAMh].e4.KW3g2ab;=Bb7ăU"\vZFjaJ*n*-n)d-VN;9MY*(YVD7VOS'v'P,NE\VYK3SPXK%rwRmHrh)]>1A;CoaăU"hS+?.E5tLc&$8Zza*[5a=qA2433]QR1L+p3yQ7IEx3O#:inaEL%v>8)Fo6BK,/0ăU"xFYa]#,dQ;*ixT,luPOND3ZU[,noIYn3lj)dJH^Witm<T9n=$_sDh':SFS(ezd;ăU"+P*k/g:dCM9>s5r2uHBdP%<BZTJJqb9n6pD69735tpe=gGja_MSqmMghapm:k<,ăU"<ts^'<*6T2#rnCa]CF[E*HiV&3BlV^,iQcHEb.O$V$,.;[.*UL;VFDIHx9q9#,-ăU"pS-87.yo*tAX-#ee,Lkp:O00b4YCiH$pzkOP)WKIaKZKOL,e)J]gVsn&e9PY8&kăU"BaeWbx*r0;235eL1sb0k*a5V]3^][KhK7e7Ayts3e0-%Ea\J+*STRVp[DclLCNkăU"4+Hb/OnC:COH=J^HNkh9wCX2&14YUR6k0ZRzmo_lx5l)O9c,MAwe\iFmU)ZuN+4ăU"$l8_;M8^nfaber&'^Uy6b'(n<<Ee3HXcak,$a&%)Q['F\$YDSmF(T'5gPfeWo\GăU"0,vIduh&NM[^T)r,*Q;*&<Z15&jIP8(<A,D*/'J>cq:3u\wTMkLmpd_Snb_,)f>ăU"\nlx?Ui#jei6Z6.URhR1^svoaIR.tFL1t]Wlf-8a0.XvH$q-kI&I;Z9WrXmz2[kăU"0SYPERPut9Iqq.qU.8B.]SCwB^9u5m.=iqx?F5_:5)\gt#uUjfFBdhvx4-_W2u[ăU"Gykeeki^*D[Yo8l1&&rqg,%EL$_),iqC.1*i'z&)Xfqz-<Tj5BnrtgcsN3g$Yg&ăU"koOgh_XO>4g3XCS]J:ti6P^oCo%XIVtf44.jb,+E[rp[)Ck:Qr5BUG2he8tVL2,ăU"1V1t33j2_3D;PJh'<aMV3/C6f_y\M^%Cbr63.OU+4np5K/t8ZnSqa:z)5[RsWC+ăU"nQw^gNhM573*9:eA:#d:FnF;BeU9z)U+soHk%hC=i;ZZ0#D-F%Fz2X6;Zy]vuoEăU"JOQ559:f+/9BBPyS-&K]Ht;tf%oE;B*nNF/^jQ^RE?d\;WI.Lx%F0jiq(_y[yAHăU"TbJzD_GOFh7j(InHha)R_nY5SFMF3]W7W%>M[BqcC=m]7BF;O(Nmm=<PVKmo_b2ăU"x35%b^J7kXkcg2&8D1d1JH30#F\]G>v:P%Vm+NcL&ClaqT:P%pm1ni5)UlcEZ^PăU"%<B-rMt4/]KhIP&%1a?KMG:/]GhVP&%Ia%wYqA/]Klci%maLHMFGK1y255tz%qBăU"iqFW$+vWZ$p_CW)Jyp'/?a7-F1i6ZkYV>^5D6qgvhV)X2%j^UV:4wI.2p%1X<,OăU"b9muP)8mDWNN]4Hg#t+&7wJM=gD.,iMJsiMcD%baCO0JX/e?_<i:Iqu.wVw$](SăU"M]p-m8w%s'[nR[DD=hWHE[\R#hwl7VmN.2>XE\\?%+[N,\JklAXQz0GH6Vy+NvOăU"8\WwCFnIo8]p)yMTNBwzC'dtEnn%FQ^KnIDZ#vEneK]#%.sN1-eL[(n>,'>JD+FăU"nW:pMa>s5UN//,YCZP[uIPpp2zF]GAMR/ePK,?N%=b>:HUNQUsG3uD(LLt;z.SGăU"Oz3]'I*Mt9G'$G(N3a'ddMJJ[kq89(S]8^XhLXr<:dHY_mq1H(&4;%]*rzQw<W\ăU"DxfY14f$f.r:A.Sgw-Uu4JH9ct]X*s(PJvI2SfYN#?(Ve:8sJYbla15\5CV\-NEăU"D9t?iUympEQ>(<Rv*mkkG(gmqgk05uwU49W54N5Fp&gT,BxqA2ykVW9X#Ag&NjSăU"*TL>H4\UC2][)S*4VhQD]CQMNRR$XBvL/BeNfI7.(n?Owr>1_HF)KD6e7G'kw+PăU"5^V<h&tI9<F)2;#iAkgsct>]6fV-T-)YNZYrW2065VYE)$%-'n,086L:X-=SXUSăU"e%&2IcZWS[Bm=d&>gQ^#)6fDo,9BE7<>H?^;X9W(<:%,;3e(q,(_2&O/arLM'>RăU"*80Zr(Gt\WsLS$=3w$-]gg-K(9&<'n[YKRgltR_b2Oicq(3M9EHR':Hk>+?M9?(ăU"7x\EK[Ars;PZFydkpLWmyw'edJs3,e;dCKTu27#&q2dB;.^;NkY0_w.jN1;6M.LăU"D)py+\Kr[J[([bNIB''ucKXJ*S\zNde[HGZVIzIr>CHi_180RBe:,P:RV/'0<n,ăU"z.d8Vr/TqY\k7dfjq(sFkugknSThRH]cM]O7;<^2&:S#/5nC6R9punxLa$=PS9HăU"'VLS-Ju4Hr8\1=^iSZ(8,\2t\SjBoGo4uN2syP2-[/#BF9[gTnU+0g1d(zD*$UwăU"+6CNa2F(zzOe_ht+gE631n,u;=x^,vHRX\qK1g_QkkMA-8PX*(vxFjp2]C;2C[găU"fYHR<#JSS*IUJP109xk-;oXM]U.gV04CBkNhUnwc+bBMawGXD9hK;,;p??yrCzsăU",[v1oJ(fR9n#Q[zCR5Wf^QN[cOcT,gp\pTz%*(48(&wz(a82Htcb[s+mkpC%-g*ăU"og$szcD(KUUO&(aPej$1i3nAocmImXqN)CbQkaKd#*4ei;GL;67ais\BL&8EPa&ăU"P;GkN5xGVvusDps_RX^XBd4JFaq+Q&k-fk8Tw:t8%;LimmX&KGP^Z=ca<HI??g>ăU"_<Z$[<VbZ8[xYHtKhjJI9wdu\_+&G*.<dmU-^_cwg^5&-LZsIp6wZu^4]Wd.wZRăU"s9ik.t6K8;$#-Je\fpB6^Olkh<LdX7R5sT(n+_DdWQUKt^UbSt>w\HSrtgCgJ-qăU"RjdYJI*oPI2#Bu/jExCSZ&fo>pA+=N01>Fnb(\'qK\p<*gKukC4_4lbc5g=qaYrăU"1%ORQO\PoL$)bm*Stv.OZj2bPWIbVN=aaF)i&]idf$_fF6>NGsb[4VEb:37^(>$ăU"d*zJPI#qbJWJM(pfB3ekD<jJHjNQLEjI^^TaQFP:,BNqx?n3FweLHG*D)?ONiW5ăU"X7j:U(FpithTOQBFQMVzhs3[PjJWs-iHB.EOJ-Z?IJIs7mcts60=k_gtYLC:szDăU"h%7VkXW8O^m'$0(I=8<LhlIqlx=_kt*:#O^m(bD%IS9<IwBJYjT>_kbJ:.P^q(^ăU"X>SpW032udq>0r4TFtlw?BFZS.-r,Ttfmo?HgZ9(B\zTtjP\Yp:eqMJm9^N7:<uăU"DFa?ctus-iQZ3ZGiBfjLq-i'VZ8A4+X#)SN:UG/\Wcb-qkId7-s6khtyGhX:_r:ăU"?:ZPe=zwSPHI55k&O2Y:b>6'Jap:FQmeyjK7P567)kJ2i=T'cBKnBL$%aes6jVMăU"hJ^sQS2R9Zc8[SIW;_fQXi)H=IWNC&QV9i>'I4W+>)b^ZXUgn33X=/G<LW4cAWTăU"78UWCtFP$^vLTqU9ng)UGrszNY>K]hJX[ga,:4r[q<8b_qGR1ULn\4.GJKFeGQnăU"^J7GtKFNqUnE^:Gt8KJ1Z]dNpNrInxmqBJhh&['Cs8\h+^BZY,Y7#b]#t)4Lba?ăU"U=_f\[jQ>sr\m6'(cOc;BSSCpEJ2o9DpbC:32R^U='h856q]MC(ImT6NJ2e-K#_ăU"65aQVkNJ,g:$YdzCmA1wON'-Tu(-=StOsZ:8d7<Fio/7j]o*OlZKjC'jl)ZL)e)ăU"-?&Q&OmkluP=_xjM/uJcCLgO]+H/k-1VpXPSp9.qv*p#q/aC&6esG%-V'4%B;FKăU"?M851i6VomWfxHtF]$8WQ82Cu9GNHFjqd;IrKhxsK,aH;N9>[=de#I\^0ZG#o4-ăU",L=rgq'&*rnZaBhw'E$g5?Vp9*>tYi;#o&ltIU9=7.yA*B+lC^:SsB>h$AI+shIăU"/N?gdTwa4rIRS^9D.BRn+*PMlXvv4<J?djZ:mW.UY?en?svBm;5n=6o'BYY:>TTăU"^jH2:^-*.tgf<r[2W4YBS+a-<MGm0?lxx/wua:e;X<tZ;IPTx^<[okU2QA'^+RSăU"N5K[E((Y>s'CASmi<NP^M5Ln-a/ODf.y*bV2c:gA/NElkIoqgc:q*PL2%#mM$G5ăU"U0H76O6C&ZZw&(K#DR1uq<8wjewwt4>tkaWY]<kWo)':AIi7J6.Hq_p33Ilk-.VăU"(<$R?),cZ:=:kU5AO81=W[^AXA9]<N=8n]TmOH&zd_hl3Bc^fK8blG7FmL(B]lKăU"uWlDK$YUI].8kA3:c-<I2M;h+%y3^a/TD9cJr&/ni-'dJu;VUP5^o\vGTZ<5LxqăEND SUBăSUB V4ăU"#3N6McDEx]:yVt/bF$z8]6Q;:*1&ktbk(et9dXpPDz9U\e?+6h'9#V$0M9E'+>&ăU"MTbs8,qKNx%AklPD7uP,iJ?t5ocbHl-QiYICxd6b^lb2Op8#R^+w:e#VJ#=DYKiăU"uccn%Fs#/EQvzVI.\#u.)B)<o1fBoI]G86nj[1HOvjLS^A2'gO&_e?Pg?8*HPgYăU"QE-RFns*tx*]pZa'O?DQN,T6PJ4LtA7?T\r]4tSdU)/j#1O)ikhBan;2mXXe:NYăU"Z#5Fs-dMPxwOUc'?cpmKt4KPjtmao1c33l43w'-''KjdX7%9jZG7FH4m-xHZ#HHăU"5\'j75=F4s^8$8r3On6ie4Wq9lb)iC1g<zWB4iOX$PlIOX*%;tjbh\LLm/BKUrnăU"HDWF,(o=Od?8jD02mEr8tyN+5s:CZ^Gf[IU'H\#i3Ln])T+6A+Bq+1V4jC;FGZDăU"<K]m;2/2pJwI6=VGP=uK]U?/p(_](gu-=PES\:c\jwQ26VTy]dB8nVf)%dgqhhVăU"T'eyzj9Wxr0/%jZgUC%d'V'8FWV\/d4(CGPw(HHX35rF;B:jmTzI.qh&pC]UH:GăU"72t\+8Ha=d?Q7&+*MfTxv?e&/?Rv0rl;I?S:cLLh_H+5HpYCkjWI_n'#<*>HJqkăU"F*a(dtD,l2::;YJ[oi8q'L7q&sI<6+HU.w\V[18^rll6<D6gUg,J?_yHRwUxZ_>ăU"os'O5_UAS6v_kNhD86r'CR1Np9d-O)o7Bk8y#+RtZ>-o)?[1)p&W61#VEC3#gUNăU"5d=ylYse_H4[2yH:_TRuUT2aYiN7cCnM?1aHEmP0'K,cNH35wb'&d+EMR2+2776ăU"vurje7)UV_,rXF)ILNmJPO*>L/M\EBL]9+KhLE#%c-&UtYg5x1+)7.$B-[kwK2XăU"3[*U[Pmpgigck.ln/&<hc1F>N,o3)0cgZS$OB^#uQj1OZL\.Vs$Zbfr9>8c9GdXăU"&,Wc'gP0KG'lglnk/O[KVH%A'L.[I2Dt3L\b'\l4AplO:=fpq/TfO+3#2*pF(O^ăU"j^6i>Kx.M$VDQDHChahm%j3#j6BaNS^,lE42%bRIxpGrtrMf3t^bUxui0Ht>]lGăU"\J=X'wP])[a0Qvef+tx)0qAA^T;rY5S%Fw<\k$iow\kLl-pbEcAj;WkKW?3r??;ăU"^m_W6H2=RDh1R[lDds:L_#>ZUe=0^Q\bMY>]ZD5*,JNBp.q*UcQf'J/nIB0U4[>ăU"pt9*cJ81DZLW)c578:*iwHE5W?+,KhyL2Qp5DC2uNn(uVXaJ-?kA6_JQ+(HYrjRăU"2=/hQSG[-SjL5wSnt<k*ZT#)ij4H^=1$Tn$qZsvR1MYALEumBoKbEH0OP0,MqRfăU">YbX#psmJHw$qD[-v0&bbKhqL4$3;h:-?Gp-.0?Y<mlRcHx=NOV#Y<*X*nf)I65ăU"6YD)/cpqn6+S#hPL*mAeQ0u.G4W#PG>gI?l31b+g3mjLU&Y89Lw(bR',/]z_arVăU"2L0IL=\=,M7;DAR<<wnhTMh/DNH^dK8;eLL9Az.SlNZ<6QWZmb.s[6$4hJ==Nm)ăU"<oo$f*;hSna2?;xkCkXc]cjf$RaMhz4khl=,[e$)1&HL0)>u,XkGc48R&CQN;w8ăU"4IRw4UKW?88(#XYFiZ;EOBmjG*_qcsP?:)&#ZjK*E.d]FB2[S.HY/c4mR]scGz/ăU"/Y7XBqfBQ_1[XHVM+^YQRc$^2L)[<krQ3*KjoDagJ\U=-'bsGJX-X4&WDN1,E6căU"nu'fLGl,o<F\90Vf8D-lX;x.2wk6J&anSvgGd#Gss#GK#C9gP(b;IS7#-*d%(pnăU"rM?%lJpfPD=$cT0Ga.Nj8%eIj]3[*S#b'o=c>NK+4*Bp/W&&Ovzrqfe:LM#_;JzăU"]Np=0,Vfe$C4bmf.W69:BTYOLb^-Ph7sHB#:%Nts,84M;Ew$N87E)BM0bk4Lvx+ăU"JEAk5uS)iM\47lB<t($qYPvFmTR\S9ArOX9,DH#mF&06Z$vFehtzo>KeF<<G[;năU"sKM(TE7<=-n66<JTP]]R0b/*'X3cBjmkl9eZ=HLZ1b(Zu5n.i^bnIWTb3MghO##ăU"fJKugY8t]HP<7y[)A_MBk;z[Ja/AK:dsd(tQm)Gg0A0Q3[Kkgg[Ea8lV?jm*u:XăU"'5lF(ykWZU:AO02y$JGR\hH8G[qQlr0c>H+s(hgO$6MTm2EpxD?q5n.AMIW%m58ăU"*,%M\R28;14KSTb07::oK:/,gBVRVbl7TI*T*Q'iZS8HJ.In353JOlLc:PhoUe*ăU"X3ea#Arlv/rHoKX+eZ=vpA-'$&['-#VXPc;a2C>44EQ;:.\6t>0+\m6q5jX/WZ3ăU"ZbilqB=JZ$?UN,[G0t6aR9Olj^k]-Qq4)=Lp0\:o-ioLQFZ(naWc4gQv]#m^qb?ăU"FEJnu+:1FDMdsWS9YPZq%%))2KAk]R&YLfU/IOWRPbutLkuG&R?jE2qcrZr/^9#ăU"o^5L<$t&\MQHmK'oJh/M?%qi?i<]Ii'lSM<LjtLN#d$oj%G#h=-c%aM>csMW=W^ăU"9SU:(,SUu;InYrrkGD7lKKQ]EgX95l$\qIdT3QVE_bL&9=e*3T5k$8^9rK<?%I+ăU"5AlhOVS[pH28bi6]uOXa;fcbXBR]_HUg:E]-r-MNr4yD'+KnZ]711aEK&r/[^kbăU"vV9;,lXTRefot=GxMk]>xUooTUNkS7=,9%.D?P\gS)]'M(F+0A4WjHw9OQVV73*ăU"Uw>%XCG:Elh&OC)ABX?7Z*2zekCc+^e06oO]WCC#Jcmqbeb(EX_r2NFj.+W1HKDăU"Z:?\g9[1.<CU:6LY.[C^kHsF5jGAth&B-cpqYNfM^#kHh&kDnRI0Ph+zgnhreh)ăU"TgFpkbBF%*BzMGT(l\Y;lJ7RY>D;AgIW44P?K[BKlgd]kC,Lj4lq8E_9+QU[,drăU"Rvx$+CJQoluE)<c&IY?NA(NLY2K/+PU1H2MhXc/mYb(9;mYylr)7CXv.Zr?Ji(=ăU"0S[#P-5ko2mQ1h'1=;/KQ>:Qe:lWIpc$nkkZ'7BL);a[B2fY*1I-Wr]NO&t?mC\ăU"OD?qm:Tg48NolIbGBduqoTNP7qOq8aQU2.^car&IFC%>%.%4))ATeqeJcVh.V'1ăU"/9VtP%HIC+xAhU=+MN/?/#g$<%J4w<.q6(nZp,ajI'h#v0*H<cE2gUGS<p.]FYDăU"59BfBd_71SD6CkH'TmDDtdS^v/j?kA__vF%>&h9vGt/epET=K38(Ptz\[S9'nDbăU"9nJnb3$#=$+3x+s$Ql*AsAL,mFJXh?K9$/no8mX1lWSV31qU^MA42<oh28$Me?măU"8>%Nn'SCG?2Q?0:A30b+2>JH/(5/-9HPG?%5gLC)_ZR(2oves+R4^*5k=Bu\fcnăU"N8tsSRINLo0*Z8%5i[I,\9-/RD#S*C)p>pH_XVXNqG?]%-3Bq:KdMTFPk[Z:eN-ăU"U[#%eH$PNJb/Sw1x[2YAT9p.byl[%V7e4ij2m2oV5K>MphE?;8';pT$E#&y\[<năU"9fY-.F69'L3mW&/<BfPsfK7=#nCC=vxl(Cui.TpK=JO0<+MlF<XOxH[$Y:*0HwOăU"90:bEHFe<=n0E>+HXv;Z]R6mn'c4%lY)b7O0N\'AOPiK%(#7I>1S]1^0sQ3mVLBăU"F$H1N6i05vooKO5_>+:A5iePMHve^e61uvNW:p:UhLs%WXPV03H<ph^e_p/W'9MăU"v8G-i)/G,4f5i^B<X9Gup/nRipQw^uQxAnLV*mLdRKg-hg/.EE7RghgghT'koL#ăU"X'-/qJ>(#1ws'T7-KLVyj\/JHoaw[=Nsp1KIM/o98mb=GSu-9Y9/0):37zsA3DUăU"vNqICWymnIe,u6h?wgS)sFRWhV?waCGBH(X0JU#Iy.L2jhVVDyBEtTgS1\(>r/lăU"hAnjwEU[v<lln7_e?1+D<mJDY\'JKN-[/DQBWDyz5w'_&854BqCKwwPh=G:/L&găU"oyFY,#$ddr?\]O=5332iood);8:lOod]['YMe#03]wNs'ppct%o^j)Nh9#/HT7LăU"+#Q9^37i\t^<iY9C8aP.pejsjunp4.M&>ajfnWe0u_7/cL^YDFh9zgXT9n55N$YăU"\2mw[<uE.gi;fT?8Oy4[tj<)7#^:yVmjp_*:cUJ<m7PY2g1:v=s7yTvo$n4Yfk(ăU"]hO#bR;H,tqYgUdLVP5M)%v[B/QV<*N,iBEPy$kCP-bIv,#I,tsk'\e#*/LjJKTăU"fc9w(Yw^P&Aww*%KQ8?KMTyd8?H=>\4j$rk?c(8N#_BZqg6's#O6e25f:_++_AXăU"hD33ur#'aN_V9OhMZc*Px-WPu^'\$JOcFAf4f0*Bl^j_Qy7QEJp3$Qe0T--?mtHăU"_aWtWABH\YIQa9GtQiQRC_3/sN3))2>7+'fUwWqP*#<Kk_/m'<nhQG/3<od1:44ăU";8*(R)-1OhYer&Sw?]:p&kK,Wru?v>-Za:t:t7g%<V4BZo<8=EehnBF+pdL8'?&ăU"YJ/V\?fR2FQ;<ghz=.++:b-s-9p:guUhnk'kd%bK#fvM$)'$E8K1L/Lf%E,X(HMăU"\P288,oXu7h&f$9i8y#_]366pk%oY_kU0)*od[v*_R%Qp*,<kpI;9fv$?NY57ZJăU"h4jE0T7::SW_[Umtsh27)pN/0hIp)-3]6nqI=XkD9*CTe=GU&ZH'W3m,O;Lj]$*ăU"-?4l+-&-cE]U3jY*B(/6I8JI''I^:n0w&KIONlC_n%i&'tX%_C28_'aU:1mcHEQăU")'.M^7R0P3V](KATIUr_+eX+V%V;]Nn=/3nY9P5W()GN;e%zQ_z+XTJ:<A_*3PhăU"OHP[rZks'mgz[q$Zm>Dtnvu_eOE>O(u_::[OtHoSY)+,q9[m^#WnYnl6)sPRdJ0ăU"d9?PfIl#uL-KPwe9*<'<u9ICX+o1i:X*3f_M5_0rjO7Ef.-Uu8I^k;PU(12uq4aăU"<x=kaBZ+WV)ZQ[o=AEVf?%*&=,u*Rsjg#Ka/CE\fS%q.Gd6PQqnFOGcL\Vhp2=tăU"'%Kvi.3PYrck\b%KE6)-u;?im/GtW^Ge+shLJRXY'\vq3C#JH)(+PG.B/7UHoo;ăU"(uh3\9FKwCYWub/=d6BTIj&.y0l0kK.pV2+c(laLfCZ_KBitIo(MW9[=ct\\,F;ăU"/0jjR)=LWJvw;VR>6X#a&h-EQu%dakfFS=ufTefJ-YM7DY/4BR=6SU%v\$pY7s6ăU"%%jk0c/8#cIwu>01OVf%t<OW6Q^jex(A1'q&?t\aKaRVgg%TtC?lvgy&]V6QOd)ăU"Cb6;tr#a*3#GW6/NE4swSjRI_2h&H49(fj&9Y'SZh/dlyA,Z+Z5u<f^]1>G7^?jăU"pVDB\E>fYg088b8uj#rnA#A>'Q3<^u=XQ,rgV.?ff4m^PQ?_'5u28.%NW$C%44jăU"&28_%.[ZI2]7MGmF9jE)mhGV.TSe:E>F39cKFAphvRZypLE[76SU.Q)UAfQ?[RPăU")<*slWU-t8mw\pyT*+;%-imt?'^if6D;w?gF;mP^OCRN>:<Gatx$R5%-9I&J\+/ăU".kghMd/_Mau0aFw370X0:-Sh9'sx-Um7Va(d?%O\psOvn=gSKB'=b+-]eE5XhgWăU"0<IS?#]4&Q;3is:QDsW0BK'eT./M-hw.R1edP3$d/hY22Du2raY0=-%nVs$>MWPăU"pSqEo%sHHovtq$M72je4#J)%?K/-+W<x#9ofi/h7aGL'+M-uqDZBJx:4/JX+o*jăU"1&XAyogqjzsp4/.SXpqB9(aUaR*,w>JblXLq]h8*wa)#\XWjn8YLdF:?6EK9D4DăU"-47UhL=E,0)CU6>sMaWNm7%eXu=k\8t5]mo(tH?b'6U.L'e.ITIUaB9Jhp[Aq0năU"LXwQZiO%GSuHKca,vhn[.%Dwv.8Q5vk/t]N*KcTt'NQ$J6u[2<*+O1mmA9IeRv/ăU"9)<sD&0/DH97S4Xc%L_\CMP>l&4F.7<y0M6blYnGC.4YLmBL$b<GYP>7.$X^LK*ăU"->:*sK/F-WDb)<&6C&3OrhEeRGzYsi*ta<(;]pcIBnavF/BxdE;uoT1rV3sgvh*ăU")avenNLWELvfH?s--pj0ONcRn3#ldN&4nNeX[:6CHdF=(2[cKgRnu3AW:hT;]7<ăU"_VzJrRJJu&&-U0f5xoiTFnfOr)Ow-Xa$)$[_?l&2AY*LH]OmrKYO87*(wB/q,q.ăU"LmhDRGdJxcC3i&453As[J:zp8o)ks&h;t5StdM>dZ-<&^8qJq_doam2rbd.dq(păU"]H0Uc[:&CAcvZ96$6].NJbLl(IGjO[AP:CVtN9*])6Pr/VDV<x4uV2$v;'TifApăU"UIf_E<'m7.k/bjPI8m'H2<$-?gSTSXm8ClgDfJOLA9.SC[0SKn*QV,cXDR7k*hWăU"BrqYwsi3inbq6NgpqdAgp%:zecR5-;L%wCzh?*(i6iU&=:_k2*V(OM4mf.VkQ5^ăU"DG40_m,0k[mXr5RvhrJ#drBATlMOOIEv1n'Fq_UuYfJtf<odd%Bb(7dHXKY.2F5ăU"4u,YSPNDWk(3;3hMTOE0Wsa#3+VBR.6,SRM2+yksd<+pd7tvAoBmVI7S=K#<&hCăU"OyYc[rHU5mt#G5^zhb1kCxuAE]p&CpTuZ.L#/nzYDKG%<=QgYN<EW't'cps8.PVăU"^*ZmJl-Pm%MeUQe4C6%Jm$U1$6njJSNtYmGa;VxWozqLj5w(RXNhpsPS+M7E0oKăU"Losl+LM^V3*gb+OltWZELrk'jK_O,l.9S$*?Q?c2zH9,WXN8wOEL:RVO=eOrSaNăU",Y#4A$9t07r.a>I>%4lmL9tYy$4Ho5t,(.=+W8dK'#P5,Czb]6ij5X:-KxO#&/ZăU"W7EmOp*-sw:3/Ea3#3XdO=QUrhGepi),bVp=d3SF8U72u&qCg-#IYDGX+Y1-G3văU"$k4+/:(6c*$?i0/W[kr)9-ChE_9[xRtWbi#,Au;cIxuPSs(l.n&&l&_2:;&du>\ăU"x#rx+m%:/(WaQx*b3sYnr\d6hItaINQI]%$wKX0#DEC:al?7F\CJmm#e5rB1J?IăU"I)O%+IKiM'*WJrXsky/vwOsja=<\[>$ApSE*ty7^a^fod/9vc=4<F5.$:GVqv^.ăU"HeV$Rigj5J)g2pzQ^kuGCLjFztuckiX+5^FA$WMQS)*bmR82B[E\e:b$v:p+'?NăU"S%^4+m+dBT:kLD:I=9V+EN729YC#p;j\KL4+0gnJ*4f4v-8:I$iqXyB:?w)vCZSăU"1s&iuVg(Zs\ia'=bf/d3)2^K\&;WP0hjbt[es2bwT.+?P_I8YeQFK:h6V\sV1QlăU"$1h\.]pyO46_ho1Jy;[i-(y:?Vj9U8gpD,PsTB+i)H$p](z^lp2kD+8c&bEjC9:ăU"#I6u=u$F/$WR'crQdGczet.o%Ikueh_s5fJ(YAoedJ82X#Z07_y8;tnziBmj(./ăU"+S'^/.7m)rabPRd>RBjrZfB4[^BOV$5b0=5ZPx_kt:kktCmHtLD+$bH5rU2GnK5ăU"PulVPt7*d28U(b#jQDo^W.L;F>eb%MVFXC>Un8>j)0wo\[wHKT%[:Z(/zzZFDOEăU"8?S.RL?2DuX+FfVmRMq=5d']Lz0%%xX,)waTMM4+l]d(-z]2G[.7..(XWE%&7L\ăU"ab$>2ZaL2qmn+%9JT:C#-_K/L82LPpOEHe3O_tUcPPs-/PqJ$4i'<&7w=:2&o;lăU"_4B%#E&Bh\GUP7JsmXgCCQt>9#>s\M?RL7=$7syPrJ5jRBG\Y)I*Q$j_V3tfG?'ăU"lQG]VGmn$xb7JO2Kl+%e)7:]G3I:%gknspLwjsK<I,>.)IEL6g44dE#nelW^U]7ăU")S'/F1r?X[Q3l(N=1*H56:)%XoDYb^W+XU#lW$.PK3h^?btu.Aol9YvlGsP$TF*ăU"1k6lL[P>B6tR8CBlc$xJb)P8B;UdE\o4kp68l_]sC)*o*1N46$#Z'lA&fjo:(SZăU"lahE4Mk_Wp&f34H)OGjE*c/7:Q<P/r&h61j;js%PCH)X3[+.x2nSg#]kjpZsAftăU"wFmG\u0$kUsckfk5Jyi$NM.8*wJH'v[u]87]->TtWYDY&Cr0*dZ7cSL=HCMDzQ+ăU"qa7M>/zNEM]nhjc,aw$X:v31t])u?e\uloFmkcpyMN;Ef:v3mtjj^dlRx/UmBZ6ăU"L$syJ-/2]dtMe/2Xq+Xb=OV?dP9Z*ICay?PNUpOs>%VjkL1E1U'p.k.,8HLrD((ăU"/D;F\[yJuu>'fJVmjeBX<Spad#mBpij0LgWlsNkPPQI?=ifBfYPN?BK\PMv9COWăU"3?vLQguB6iw47-*-8:8m)kgt=^u?UPU:P&X=InQO:BbhP1Id4<S:A9Q4?op6.+(ăU"Y0f+RXHQ&w;2U?VF7QRvCj1LvJ+m+AZbGf-VKg1R[HT?)j[3HXISEkaibqZ;*TbăU",KLJEhmFmks'KV,GRpRnLh^mg2XE<ndfaLg;12T4KB4-?IgPl)$0mQa-7a?>(JcăU"&*Ug2DYcS&5rqP,r2:/$L[7L&+&I14Sas<e5&X.E1w$^N0r9C=cov+9ENRz&6w7ăU"<*=I+f0%m+HlHd43Oc/+roo3)>bVjK9Hq'E#[%8[b#b2fidc9Se3o'p#7rRL<]?ăU".7YN$TmWuP'bX=Y5qb%3PVK/*:+Z&nUC)VHln%M/(eM&63:IW5Y5Q'gc':=eC7BăU"&sEOD6[o?,/9sJBOMbPzCDV>YnUCe6-IMB2qa-gHv:/M(f[jY)<0n[B$Yq.,9sIăU"0I_V8TkqMzV+utST_7Jr8.V)_$_4t#7LEWmGA1]%FkWJK;7(i&_k6bxJ$Xg))/DăU"8Sx;=e9,zB9YaU0;;i-md0etT8yML]Fhtke?u?imRX8oPIi#og0WQ)8A:h-7k&5ăU"vceCqUbW;.PIuIIJwGSx]PD.AnJk,k:*9Rp1ueAw/%h<'XFUcc0C_Q.x2TA4#k]ăU"J?I-uIQ%A9Na&,>L*)'VlulMRG)OJ-ukg/G[oXCC)('jqv9,kJ2vha+G1o7Ws<SăU"S+_2oWl_c,gB\q02/x;QaiO[?K+>^FgTX/uUP[cS.LKV0qE2r,CS:g.0p3TrMm(ăU"fkXdNclwU%]fPjevT3r0Q#?q#pV2XtC(i((UirHO1_S'[1Wxkeb_+jUMh$lvK7hăU"T%M7wIv#fXaOeOR;tv6?4BU]kP2F3n[3.f6IJKSc.AKo[TG8:,XKjhgPH\KHIJgăU"yt9,QW3lmHtPq_*^=T$6UW5\$g#0kv>Kg6k2k/Dv$Y/=dlgPwoRcrc1AijkNUX<ăU"Orl-(:LZ7&gw7bcMxon$jiR_7hqn67LU5?]V2.>j2XWe5auwK+FcPYkCT9iH2O-ăU"x6Q],pYJ/Vdi$Ip(L#Qx)1:H#aW=*>IG:u]fF?=.j,%ME[NACHIMnjHq5Z,G#UGăU"qqCkiGoKaj=M'2TTC>uZrNPM>88b8:F02Xz3Pe0b0uiI2NrpElB3he[=rq'M3>JăU"=x3Guk1A+duG?-n#jX$ZjWWl[Ee6X\_.YAUVRB]?3jvhPIsCd#Us:X.N;QdrhjEăU"'UdLJ;^ITE.IW:>F+5Ak4vDuN9HFZ=%yW7h5DC_zfK^mF<-drn(D90'bJ6fS==WăU"b==*ku,;L:%SI[BGeLua7/Y5JH_B0=z?M:sSp#,/1-+cP*_qD6T3;caL4<Mkva?ăU"aiE.f:'im/a%g#A?Es(Lb+N*/xD??caObF(E5u0m.Ne=3ENmuTalVEA4qrKD&6PăU"#>=*be0D'^$*#9Nm0A0QMNw[U==bJel>cNR6(5VE5%*PU6#=OcVLUQVJ%;682b/ăU"&er\GEZb&=ucH)nk[0gP#J7x.hQKt'pi93V4j8>GQrEJoc>LiSP(jMet?g9vqB&ăU"qq4X[H+S(7r(F+&TJ(Ha\C'fEVaQ7Rcvo4:b6E$67N;T2hfj;FEadsI&g/Y-x\kăU"Be.PJeU2n-QwEp$x#oG%r>L<3_[xIh6?=O#],c<[q&^rQY=#)k#_iv(2td$hFkVăU")X62c?I]XLkK7XN;Qh<(kSnfGtYh;jD/V(niqSm#,iYZ3ceP.JDWNYmSVN&[KU<ăU"f4nnrWVh*Jmmagm=\)#)#CMU&^x-3=Rg9&0N[a.g?RDTY&7_rI^d?5Z3o4kS/dxăU")utbTg$p<^i7<8HiD;GEpN7^7Edkq+UEJ<rGdxxf-#rcYjaSM)+JRU^oX>#tjQmăU"R&gnvG4\o4eS5YHeH)_m<Bdm*x(a?KkYhP'<TEhdsYI?rIlcW#>oV<dbrP%h*95ăU"u5fUk?m/J,U<?;<]x2&hIB<uR',s+qMyn_b8tJFk.GYXmul&OX\-$Tl$]+o'T3(ăU"KbIxw5j(Bd'Bb*#eR8Zft9RNLP?wsu/I&rH#>R,9X;L9ao;dupQQWJ_O9pn7PUoăU"JppR\g1GPUc7oPUr#-dA8iOCk^9cWZ#S%a5Kpa.wNi?2Ym&e\[Hdfh0%]SIOcM$ăU"Vy(Lk12gyK10%yM(pBd_7]w'RUprf1(rx1,/iNwJk_AV_-ts+NmS#U,9;.MIb#3ăU"YX=JhS.ukhZ;h3kvttgW(gFX*CKK#[;%Kf00asC.]v4uLs:u]khAJ\=h^fd>m\'ăU"arBp^c8Z8;,p^jktfXkA;n37uFaqne'JJWa=4;WOc'^d''KJ^nKb9X)N&;6MuT<ăU"JMdz0._LGr0jl-t>292GPM.^;)]ukO;u.Sa_u6gKYS$yq5<N>ET6+(5>E8$XcRjăU"wr#$nyBYC(oz.0^g8c9M:jg_:=TOO&'1M0MNHOUh6O>]/:U1GCY=Xf^u(:(3<:DăU"13?L&U#$N99<o)o[*5Eo6=g9EB.4E-fMet[eJe:2a0#KnUQss2jeUQt^lpEL>6TăU"#W2v9_BJIuWgc-Tdq?%:3P=GUjF(mBWl>zq6XXASh#GE;+TLz;orhRO8&/UsBM=ăU";FVL(:>>doa>4\8)9^S-F\OfJvknT5m,]UXb^.bA)z1zP1ttnkxXrsH5-Hz7NWKăU"\8ls---m#+Q[R26QTP+lfL3'yW=+Jn+HSP+F]f]2)](0pHL&FXRV*+->E-Om.;8ăU"7l9cOP=;M_QsQjKOYV<5/.wGs])aH6Nj$[/E'C'6CY-UwMO2%=fh1RQ:Lq/nAm-ăU"l?Js3\Aav&[NrNNHoZ2Di=dyt:jmj0r0A-[%tTVTqOQ+3t2LHL&Ks0iGMHS*d5dăU"r(5F,?82IcqdAQZ-5=%J0>+)-A?3v5'-&UC>p<M%Pe_%64L3#_ua3I,j14Yf(p9ăU"UD#3lU#9a<-<Xb]UF_P]Zev1)lq<KKIv+a:-nv##iUAmsHPwN9=DZtMuQGke<5iăU"*QOtzxow4uB^yB-0tJ'G/g=LyxJOdh9dKu,BRyd<n(q4)Cgnujo$>ryx(+NW:aYăU">N(h4yFq=#aP=8h^*,V23_e'&KpN5cZUAh&\$S[lA[:A[-,-50_R(qvgbYW9:E?ăU"G?Y257S]i;#X9AG/V>W?<aIZwmLjF?HAqQDS6CJB:YxeL7Dc<.Q);m31srt*H^*ăU".U4y2bX)O^Wh0:k[VO6)_pgH[58dU);q(=j+,m>jV0\hTU2K_c0aT\0Q&Gj:?3ZăU"cm,zrZ:Y\1l;D(&l<FPW-ptX?wZfv-Sw_JhCjnANxcCc6-0/.TVtiN[WBXlFwS#ăU"g-[I[R/-f'oAH0nl1\MSS5t3T#'V&$oknq_+fUgIqKWn&f8#QPY)Cn+l)HX\*RsăU"83ST#JM715z4\c%Nm&IumQ6A\+Z7)VTG=4XdmzTUDD4oo]KC/uV*G&$7n5p-dAiăU"$;d:*H4Z-f5TN=>&w]-7KRCFi>aTKr/i89*bU\>8bK/h-?5-26i:K*?BC$-tpg/ăU"05%mO/UN[R+hTH1eJEQE\$/Tkt>i0,hwqmcShsYCKX*;E/3/Z0QvY>,qG:qnLRNăU"/.Vbd$C)cpSvoI[s$gmXKF.LM*nqN-X9/GqM:(DVUn2,09)3.lA6\4HWK;3pF($ăU"9o$%.K#U^MZ]jmF#1URhBGTu>X_#6YV-LwNNQ.[(JGQkfVHsX.V$7a^3Rp*a'/wăU"3R(FN3J<L,%3Fo:S'YLRRvj-I3+Yq;q6?d-HwX4q7Qo:.aua_fd3>G>BZk46C4DăU"_f.e>BHV'fbn)67[:BkHII[E]:2xZo0qq#[2*)^o*YBaBdEt&s=CK6rXx\34Ik'ăU"d4Ek^x)]+m<\E-2j.GYw.b9*3gRP%fEAIL/5kHCX8<R#D[v.Ypzy2iA%/nk;dfCăU"1\(xf5(cem^*VZ']8s.J#Fae[WisU#8kNw7NtDB;oSdvekw'bHITQtE:\&9s?b]ăU"m8F'nQr&m+:tenI0q[W]3(02j+OPB.yA&u%g'r,Rp/-u)US_xJ,D$7Ddf-4S1g$ăU"%,SQP(Vq=okLvm3A<6,;)NF$BU<4$FrKMj;vk_2*1iCRy1adb[l1]oT3V04Z?rNăU"E+M7Ed2A[\HdPH4iErxvTNM=YE#r#Sb*B(q1G*c#Y(QU;hFe_7f&soC4I=*XaQ+ăU"8veWvN0+ql/y''qWmX+OS^fet)m5)0.h:3(5rTA1>V(h(AE'ncva7L&HEW9M.H)ăU"Q/aG_:Y4?Y6wf/OkZcv3+<0aHa*40FWgU0Qbqf#Gp(R_70J\n8V2baQ2mtfXn%6ăU"RgZM$,e7$KAsz=jN:5n(]>nG<3^ykNFE?^XgGP$=au^.w'B0hk*o8kA7GE6LRq*ăU"P(mu5]X4oYMR7f_j%5TAk;[=[7\jcMX9F+)l&mV:V%wB]q&bh+m<(7N-TFPa2ESăU"^_c$m'+'JJKH-_U*4n^kMIO#%<-9aP&Za#Lh=W)Kb<5tCD'uIFpBr9K;&,p2Q%jăU":+l?TiqH\*ObkGxr_=$7EfVw*UX)2_Yq>)uillfW+BAcUu[XwmqW]Xn,bRHu,hDăU"rng2lY41is9Qg%:..KHO^l0.kCbc4V5/QP?:gvo+1[A3k\/82;dF#Z:NLaqZWC/ăU"snVYJW#E&2p$_^hn\Rmg<'(uzU+S0-ZbJ%2lJJ>Da,4bF^Uo5LOie:z\RSo->obăU"SJY855KWiRni;dzwXsO-JSlJYC)>PGUCkXW*n0pK3JQ-M*#tfg)1+b-KgSaLMi[ăEND SUBăSUB V5ăU"hrAbdO#fJu56=>?.uX6uNFOI'iD9IZXV/GwC.yw3t.*GO6=MtkK<<[glrMG4422ăU"oMiVEd]3xQu]3xqu]2NUu]C<9oBd]olY:&,i,2Dp0V9%57F4aYvW7$,C0Lb?>.OăU"ueHub[/q/X:2/SXu<tgY<dqwN_sKk_)QMIbLd\HZgT(eRlz?V$]^GVOFMpp*4;VăU"M5;P##l$QKs:<z]8.N,RZ)MxwOL^Kj)sORuB;Y8qhbYb;SVe>.Y,6&]zAVxdJH-ăU"_E9Mewf_'kmmM^<)s*1i];.=4oYguh<A&+RRQ3&CIW[SmutRV6dYB1jt90+<N%săU"5W+t<L*GaXgwT3/Scu_8;CGC,RgRH=JTJ<W>6)rY;qThYgjgklVK\DoqwC_piONăU"nsTjpC^5-IT-T$\kzg.4UZYKl)HASHnn(j7z1$:4t_V4aeY1bT#gnGmCfA6O%>tăU"l^7,MAo90(.>fy1rrSM1t'<0JurFL&uha>aFC9+N,<fV5]8PNgJ+JdOu_:D^+/WăU"9-PSd:TRSB*$Oy&)Tnrtyc0=v]4nCafQM.0y8rAP'H#4f]7r^,XmAh(^U-PqPbXăU"$ZI*G?1).>LRAEbe.arfCQLe9O]p$V#AYgmF\$g^Ea$?g]\,[==Hi(AVdmaoGMsăU",\;,<6Ec$9sWLWKfczJCgO5#RqU?9_4+&&H1hi6xb$,cjJznb(T.?0N\K,qA^HRăU"0NhMX<KS(1nw=b>M*e0CcE3(Lk4Q.2LM%l;_u<krh29Uqtc+nhyI]G^0fGNVqN;ăU"Pwwc=cAe;Aub><&i<bJW<*,Kq\^S]8v6t;cP%Xb2+p09=km15'm=>0lvWqk4X>căU"vCqJH/[m+5]fZv>FW-6iHTXLtqBe,R9)%<a5N,I,%0*GElCIijmb8VP%h+.q-I_ăU"kTXgJLaB,*))FMtH:G)$8Hl+,Aek&P:>pc7MI4FKk.zpWx/(B,1vul2\H_EUEATăU"mV8rEr,qQFdxNX57:,_(1Z0W]MCs3%,m8VDgiLkC\u+K><3V,Q0:=P&d&&'7RQ.ăU"rto4I(KK$yE:b:Er)2g<ih[<7.f-I_?yT<jaKeAf\J&\6_FmD]VCmfa?;AEr]s1ăU"FUU^B7B[S:;+egU$mC6MTQA=RI7sv;AC5jND?I]2p8CXtb0eO^gBgu)BgyF1n05ăU"z>,P#i%_P3D:h7S/d'w?2+dj11CkUAS9DZT-HUn?[..K\v1K#d5L2c<qLV*<[39ăU"QYA)+l#JBW7gq)5wb*k)T42ZZ6f5)ivz?_6?%#\8fWd*69;;iVXpRHdFglMHP80ăU"P2L/S9d%'XHIZFnCzA[,(a:V4ZB$jm[9xplNw#_0XQbZp^pbk'%K74w2p6_(ncuăU"cI&b#BZA.mP>o(LeoTMq;L421p5p7ESx]a/F[2VV3$syg0_CmA.U5#q<2XJ2n-GăU"d*'2nmKRgsMX.QEfJ*E(6)dcaI^edj)G]Vd+UiCqw'X9VR&9[N[oyQl5\D$H<[yăU"=Gdkf[S.M(ZH/:O%/2rk3>(k'%mc+FjAf'HYc5<%1\=>sBOyL%cnJqH1VyY1:s]ăU"^Ur*j]drPOiR^MfncM;ax?O3B]Y7K/9wyt04T,[(+jb'u;3ch2a>8JyOt>^t4.>ăU"2o(12i%-G)CedP20'[?;TUKcKl05i)F4dX7$6Eq+e3puYjnwEPE]-%d&_nZ[0ctăU"KL?\q34X2u?kIi:U2020AkQrVAyZ;Z#g9XRh5(9MX%BU?);PG7<T-Uff5k'[FafăU"&(rRhh0q9i2'*cAc]Q7;J]#\Nn7B:fXFt[Jw#U/[a+;2H/9lFDQrj$'$\]x:AVUăU"a8YQ']/yRl.ZRlEc;Zw\vN\#8Tb/n?vM_DRyf?+Yxj*3\V2Y8?A3VT:BN7gFEa%ăU"4\=AnM)zEYVWv(-B$EO.q,QhE#XRL4?WyWV8\naLS$UD/d3\K4qS*Ar=HAHvkGEăU"J$cB7<9)CDhTo3u8c:b3O]M;=)VsW<EQ(1fP9pacl9Y+X4;55A-C^J;[_Zzl=FtăU";:<6VO0kWLjVI:R+NEFGvmUoEOR>4%RbMl*Xl3nm;tRu4(UM\NmQM7r0MTs:/lbăU"=KY'--BL=Pxb3sHft:N#?CxIWT):2Syr?r/i,???Y:Nm)YNwC^y\SZYCFg,Q\K+ăU":c\bBiR=4m74[fu.qEHMITBZA#JDR,ioZ1'RgZ;k:T.[7R3Bm+4;C3g^'/LJA8AăU"ClG1pZ%(-(Mx1uR>]srW'K^YiH(vH1%/<mw(X.ZBf.)Ymja0Xa>GDp-njaDL7>[ăU"K#42AgZov-;[GucN-q,^#K\FI.o[6zhA$L*?UtFLAAp%2>2^8L_(#m-cxwn4iK=ăU"N7pHZ*wo$%0jDwbiXMAz#urSg)t[)g3*:#bd,Z<e?SrVS'f;z0jKH6]q[rXs_p:ăU"DbT#^WGhEbu]w<OU,xE[rLfVIvH+)t%MFoI9gdC38DKrVaMMU%XU#+egcj$(>'2ăU"(1nbp\d<U?hm\Kr]+nSQ3Cl\Wu*o9WwT'OY42+FBq^6-ZCNqUg[9BLn7XJE9q[tăU"I:hsU4K-/z.KCPuPF601rJnT%-0x1ksILpaV2:3Npzf+*(vma3S$bfh>=PKkF#năU"TTZ\EkEUWFo8?MhO>mc($wzXU$'J^14-0:r1#bD,UaV2$t#<M6r^E<2&\L(kXA1ăU"R$9gao7VLJUgNW-l$Y:^2IaeWF1g7&QAS8z]#r2LN'>M34*rT?tLQn)TUn,78gfăU"PrV2QJ'Mmr/k(-D:1z>eUbk2QgGp1<_i]KbFOjFc,wZ%bESaG2nZ;,iX)9rGV7HăU"kJ2=hj8T:Il+'aVM[y0mChLkF1.[Dv0E=C;]W9CU4FoVsXXRvqzpA(6\?qDfM4NăU"Za9QF<1jM$vC?nzX,V?FSp:ft5O/*4_+<e8B/in_.4kbV;Bh#X:3T<';LIqJ/bgăU"mX*dgeiMgeT7&QA9hR#HuT)wVK++p06J8+kaVmZjl1s&D#MU/Clo'mu]j+]j5S$ăU"z-?2oB_14t5M;QCpxK9UC.+\Q$JBqM?IX=kE#\KQ?fF6J:BQOcZ;>vq62(;U&zOăU"_;P3;(8(n-BLnn=S&o4C77haAOF\LLhm/xYjri#:Q,1Gj-mQp)V^8AcUMWvcij/ăU"#,/nidqKkw9r]q:xpIVax?H4mm#s&Eo%s&Q*h'ef=Rcmr'/2>GP)+lN7U4bi\<xăU"]?1D8j7\H2o\p361$8ShL9T=pSkOp&SGVfhPmt(xm77].S3qgO^qo>k+lJG>_TYăU"lQ>nqtw6)S[N=#LHte_me=ohNc4[RHqYGPZ/CQmPfmy_iF/PXIXwRrOYb\0vM2dăU"%v,y2$iX^;e#Koahhm)wH=DB')84XPl51$\>VMo;^?+;:s&Es0sEB_F,o5ouT5*ăU"Cb6mVEi<y:7b;S*-)rwF*Bp)i]5+>:d*h:jbmp8[n2*_'+rN0-21i&hQT:cY$7-ăU"C^x[9foW9H4$jV=34d$YL=_lYJf#>dT:>xdx((Q)/#Mot_FVB)a(BX[PLImlmnnăU"8ZV2'XncpX)eq;8zDguN8GIM.\PvUI:7B6#LTg8,Z:XKZsZQ&E&X:'95&w+PejTăU"-1tjT?C/=ju.##1d+eaX(OxoM8;y<:*]?_LD]l%qs:/Q6UEpGe5OkK1,jA^KH<lăU"6&/i?CIITJQrp<s#,.MLkdGL:vVCY*9=6&Q2.d=u&5$l+15:&,<E*RK6D797#,,ăU":(_%7&)ZvI4.'=LF(8%-50phtO'[fGO=ZC+ma?asIpb1OolCNcStcoMA#\#>w;LăU"896nBZgsM4/,Z$bdFDbpg+oEhwt-A,:=a<nm4XLYx)t+=R;Y.Ig]W]?BJi$=Z+WăU"29t6R]PcG4Lbvrd2mH5Z4?w1D1_&[P5M;CJ*'(-$-a:1LLf*=;GV?8:Sx)OTgegăU"CUvy#39&=X,(,4$#f'n-1wIwj;MU4vZa2]L<Em\j^DGK5)%IY6mo-'?t29h.+uxăU"afqNmYQI86*9bAZasapb&N/fbHQ;1%5H?()0eZ]rnfNvp)3S.4(-5h7s^f7/-AjăU"X\E7ALely#&dOV40u[j*;)_z3]LqR7tYb^g=ZT0\0bi5pJO/W.I'C$XjB3HSf68ăU"q**0j6%Lx9NE)&#E;hpX)a,x?slug^)C;;\i4dmeg;>U83Cr>9PGO]GH=pj?dYHăU"KA>O4HGaFeE%\1iYe;YmTpL9/tAfos#wN$&*.B;];)NtIPTwh\l<&X*>FddNC>FăU"_afe2F8$Tv9qJ*r5t;LtS:XeaB$YtE;_8?=4;HgaovNOh5DT8X_f4)D:*wYl,jBăU"[(i8/MCthp+TH:#<AIZmmWJbc8NPJRt&Pb88Ibe?lf\>b9vk>SVRcPt]Lc+<afcăU"T_DS6Z#)H#z]8e^TU[OW:7TIf^Y[vn^?vv>\E%r<cCofig8>*,zU2M%$Uk+c&6eăU"uU$AW:92viMAWT0.e=vXDS<P^=WTf[0?Ux^v6s^0G9Zm8a\+n]K%T4x.Pvr4wY6ăU",-i84:O^U/8t6=K#CY-s&mh?x.xhQWBk8GMf_Tuu$P)fUG\M98ofEZ8fWQ$[?n(ăU"8\]XKb(V5KS>3<5_E_L2(\ZV)Z9xhI;13>VqPJO)QgJ-YL-<>&<lZ1<*tvYtDQfăU"A4oVe4Sj-aWw]Mdp<N#MfU:Q65n5dLZ)(bKBA#*&S'E)E9G6<X=eP8ERu*2qr0WăU"iu^>;)K2t,Yvmd'Pa$6I4Ut_mX,x&$$.,#mp5CGnFNUW[$La#WtjoP6-,v$F]cxăU",'I=9C*3oR68\Y^9+T-aL%RlsOgAl>GjMoV1pon+,=xL#A[W.<FrTHZElm1\DM,ăU"KPC47cnNKW*rvaU?7Og\j4ST4&gu+FsZY>:14U0TjZJF^0uEJ*zO3%,$tPL-*aGăU"L<\f-#WUapJLe;Jh7moZi$1h=7$;cGkz#E$gCDvT=t_s=98-7:hd''WouLYPQ^MăU"G*%B;<qSUbl2pmsDbSI#cqJWMIS9TTB3Xwpt]HX8KY(d/UI(y1Y_Va_Jq;QsXM/ăU"W*DX&y9cwE$<<Q1qSPU#(4\K(xb<ZoN1x8Qc(+q?x)f]#d5Ge$G\]u#MaN#\ME-ăU":S/#&Pt'o4nl2xRN-x:$p51pN]$nN-t[dmc+]$pMKXT8oN<iDBV2hNjd#goVn,(ăU"?RsidfoTW/<R+j^1;NfQ(5VrwNJ%44s]BI1vGE6BZjKh5/rV4fYzk3U3J0'/VcdăU"R(u#&9ViK?>\5w4s7I6E5fq5zkwRn0[<'wLThI$Lu/UlF)O8BYng1Z(:Ue<G5lhăU"L4u*tB)&[0QJKM)0D#f+,pAZldc-]64F&Ip'WRZ3R)iAj]W)]RPvRr%$FX<hPgVăU"y.[<cY'k44&2?[rYop5Je-'N2iy+77,]X&$1D+4;OB*fgZE:3Vmfb=nfm4mWe?uăU"RIH8:W==V\D'9w2Z$aTMk/e15=az6P+)CFk62)kuHh9BS-J3K(qiSA?Q30=2M:BăU"L*iWFf;*TW1x1Kwhnv4S?h-m4nTQf<G<lIsmMYOuieODnh%A=SAS\5Dm(<>IZd6ăU"oF&SqbP0GHXrA2.hjd6STllw]hSkJ+Yh&$B>ahNE)r7r#prJAnW2DM0R,7\'*e=ăU"?jqrl_r=w5uhA*fhDs2VQE,<DVhG;11E%t4#U2rBVt[oRYY8TDdFMqFLsCFTG#.ăU"42'o(QS7.+Socvp28'A-VCUK)\cn-EhDjs3oschS7-(lQBrRD2Bs=^AiZms2S:#ăU"F*oI)YmoPA+$dIFsfw1[8,2j'h4+6\M'$D?#cwi>oJs)n\dk=3Uc3PW#HAaZf4FăU"#Fr)]:jT/LCH&0YWxsJ4snDKKcgnZ69uP%Qtfg5X,gJ,VV,Zl3r>Q&Tuhq;:r0făU":v*=o6\/9tQeJ*i#D4j$Hv-PN+<EwD?2\o44_oMvkEUI/8DlpKfq[o_NH,$Z/E&ăU"3$8LifP4(vd,L*63RdIzTPW;0&CR<+SVo7^-)FVSAP%1kE>0jj=HY;Pq5$&l$huăU"MeYGsi*&p/9e%3ouL=VacR^L5x7NIFpEn)=beL-7b_h4i:ZKct-.I8r/*<<c7FsăU"47)oQ*O/0vVWkn-G%U*6x.w:9G_q_bJ7(N8vN,LVNOvb?E1--ivP2ro6MS8z_$YăU"aYiAp&$NZ-TlYAjEQ?F;lVUJs*+T3J0oF:>.*Xc9o9$t+Tik2Xy#+ltP)x6LGB+ăU"Y6m(h0GF#E=HTlL\gU1mK&#ki1qVz9mz%rcKlYzo2EZq&.)xD1CGo7z<<.Wz8ZVăU"tgJV&>ijfxXgHF75&Ff>;O0x1&78nE$ZF/G2QUOwJms*v,#B5rX503tAM1uqk_%ăU".tRz3Oq,_/D5%^&yc;Bp)d7)+yvH4YYj:H#;8aV:Bx3B4m\upLCfrP[0n'kMaLjăU"v<^$Yo75Lg(0+hJNTY'68OI1ik5bj9WLM4ycXWvls_k6j%biMSKnnLdZN6dd-jzăU"17WEnhfs7vRA3<Go-LGt-L;b3\L;kp_L:Aw[7ka#RS[Dnx.?)fS.q3gckD]VQb9ăU"e,&T)g9y)Q8fk3>gLT*I.gTD1-G-*&1ZD*1osL.>;1ucM/1D6uR^NCtVM-DiA.RăU"uM[GIaN/co6/J6)71g*ytRRG1gII_&QBY<SxfQ6(L=p9&owluUy$qNoo<QGExlgăU"bXbElGUytm&(/RG/Y%]kb&vCLj;a?2V/.#ptavd(D)7ESs;QhleDx3NRylSlwJ9ăU".h-_)V3&]>XjJO4>[8x_PLzKzB-[u?gh9'$[KgFB+6WkK:fu^UoNpIA[nb'elh3ăU"*QPf&GFGL=zvWC)mo^Mjgfyj/XiBYgl,'EW%$rI(I=Hcp\wl>_g2>tj_goD_jS=ăU"EBLtE2GK'iUHJt*cQw_+SuO2$IRMSA0mz^*)uEQX,HAP;kjLGLE:kv.3<flO%e\ăU"zsC0<uf)B4P/5bml(.2b+N[bgAeg/^dZOK^b,uJ.FYpF,Vi]1b#\uCGsb4YO(ckăU"^eDA[ds;gilPZI1%iapuIso8g4-U,YPE#TOOCaO;lR8bBde4*1<3gp;Pz6GgW,%ăU"JO/1G<'ID<>':v32n\%bK9$).pXy-PhaJso^A,&9ThB_&EIoYRLrsJ+f8'W-f?=ăU"%0RaDf/sC:_gHJiSCwp9D]4^oQ?9<n(=WVT;hHo<Gv.Utgt+06%vi&T1lRl9<16ăU"?uS2qB^5/vH+WGy+qcBB/w2Ij^<9JB9gC\=c-L]i0$3AVcVpF.YgZ#(7bJ:IL1ZăU"zGS(ybj6j+3E(_8Dub+Bx2p*zb(T&o#&r7upiV%B0m+0+zo/#<%>QNr,Rm8?JR<ăU")h)?OoNryGDO&u#^f1toNn;nF/u,YA9bDu)(U$ir0W-D.,v+[Snr\6<Cn(mmco2ăU"8N\;2A3\.(tN5u&8'k)\^K9>u92%>0ya$jH-t*jl/6p647rE*fwW$87)CdDzd+hăU"5fjXN0'9;AWPy77NOKLnja43JD7OPPwy2Rx$xeJ;z]aFZjR[)._.I;)2>u?CT(uăU"YvjgzOG+e$TqWF3RL$4-ert>I\vl*R$'emi2;M\b'5fCc'Ucg:.Ib045.)V,u#băU"sRK6gVc_q%Fcb?u[NmdsP(9Nzp]>v_*3^$D0ilo6j+9hQ4zFS+BHk,:M%MY&vc'ăU"h$&d_y84hT>N3)mSDx4UlTt(]U>3FfL$vju<;=vF]Fzlr'q6>EPQ0.geZ9AU,N/ăU"^;XEa9l&)B.\bvhvLHU-#,dgE-.<Th6WXM'P[:olBOArJ^Tw%Ptq-mwVn539>LIăU"\jqRIguz_e5f+4PO*j[5hre[aJ0\>>BCY%3QRN)c4&n?*.c0B=hoYZZS']ca1[[ăU"KQrN_sa'8nZ?GAw$PnLM/pi7fs:j(wZKm-MM.b?O5-dFS>*83<axIvj]GlN#0o&ăU"iEi+2#O='5>,EDISI[0:V#m_[W^SV+VTDl-20_v&h8P-N50kmW(46<<qMrD]'RCăU"'C;yZa&0r3nEh1u\^Pt_<dHo.%*F]1NUlsbY(]%404K<o<SX>pKTEP[H_t0^p20ăU"i/5S\/7n_v.q*O0k=L==uNt_Sam4.On*wmSIZ.eJiQsVC%f)'LX(+>Jf\%7KUOSăU"($6+\KXiYB+[)_9RdW(G^om\kR[B)eu1yHE+2q'T*,Ep,eS$&1Ge_el*^r;kwvsăU"9;s88<Gc7^uklNfJ^GPimxmJr2s)lgQ/bmA't4/J?IXC>4Ee?+=-8D>3YDnRFwYăU"zfLY&Ny%]bS0:'s,hCDj.p+^CkpN'xNqX&fta=b_^Xl5-ai8l;4505OcNIA?9vkăU"d^^Utm,ocS'=iOc8H\l4nN7tUmrB:A]Hcn3(9Bj.mxw3)8y$B[)qCj5TbFdn$eVăU"?%;/bk&Q(A_15'vpBCV0g-<UauG/$^Jp3'Ch%-f_[(xls?H(t5Crskim6gaoHo/ăU"59j?Pv'mQhK4+4Mej=i'J*0=r[(R,,0n,Pj.6jCz+L5mkI\bl(kdjl0dt72)<bBăU"c\xZR]_nKq[0[EGr6G6SoDCcR++9oP5,H(n\_Q:BMQ4c9e2^XlCz%GhHtuiF4r#ăU"YEBb\uX2XTe'-G\JF')1TUAjtWH've0>jng:^F46.Os^E*OdBmlT\&i#;mr(B\+ăU"B+iE2(S)>SS3AY0QHQ-,9FjfDAFmqP.jgO[til(*uwgC<trqnD%mCp#Jup##,>=ăU"B0QNC;%Ge_217+xriVzfDjWrMGc2gDbFjSH?a#:#YtF8PhsBcKHk#cWp.6u7XJCăU"jV?P^sEbZfKqM'NP?,&=4Vn6=^RMV2r;r34A*-Ye3/&D'Y$)GbBH()Q)S)-^aYLăU"?gZ;Bl]Iz=JF0Z;iA8SVs6G3l.Ydo\p/whf,\Uff?TQ;^EW?83_n.fHBa:EV.t\ăU"Vt[Fg6V^D<.qH3h[2WLK3(m4bqd8\Rw32gk3yGbt38KsH;)+,mj>WN(1qrXXXXkăU";lG0Dx%d_YmD0Jdc>zM&'dcKU/VXicS241XbIuvSEbg]+yc4v^GZdrs357d>(g,ăU"iGDF.r_Lv>ZgNW&b5-kLnqWL+7$I]+S4\=vI9R-=h)+FyFJma,tr7\]2i,IqhqtăU"WhG-kYr3Xq2d<W/Y/#K7HxN49lA0Vsa+l1aw>5EoePPu78UbqIdW6fm<\Zm3PvaăU"f,)EV(lv]GPU=C$i[Q30TH/'CHouyM+Y9YiZ+jJ,Kt\aI74wg>bm\*3HrdQ[DueăU"PuSaYmT2:\z#Q<]jmXo3\\4Ft/iok#+DkmCAeFQTdu_HkXT%dNvq^A8$Gq;943^ăU"0HM(t;<[K1vY89j^%]]>h]Ah+INIlC[_yb'5E<L=m+B;'Y'n\BB(c,CE(LH'9T<ăU"m'cn3U%?E.Ma^sy8>-Q'nUW'/-JbWZAWM7_]l<AATHhaB10c\]b8mif<S[3*lJhăU"<'p.f8A/MQx-A5rI_oLE,7ii_)k(Z-#qhGCNE(t\\##fqL<5grakv=cEo.'rzMGăU"#=4<28L_NFSXMmW_Zb8flVLI4C7JFVKMfrn4o]XwPU43jl]DSU[>mmn,rrh/X<3ăU"/H\*HP)k+<)E1LE3V/(clM846ji,qL8GA$'^CPC\a#Bgj6MH$c/e'(:5f$sb[U&ăU"Qbat5E4nYt1s3TG6mT71-7PM0F0#gPOb3pGj8WH(cmgrnF4d&)C^F,K&O(.8XLFăU"olnfJ*Tkk54H%77>:>Zl6V]y3g>QUm$U*og[sow&g'L(GBdo&yS[nJmVYGCpj+;ăU"fukZNECZ=)*HbuZ&(w,J8PyED(>tHs]SX^ST3JPfct.R%>n57'yPs;3F>_-h8.făU"X%oSf'B%Vbd(3n1r_9&uKrp2FN8jqx'1r;X-DoZUCQgpeHq2DtFNp+zJcQsxHmVăU"l[[JLDG8By>%$j'P(,d(ya+>b:AO:3oct2rb02:tEP-Sjl5f]ra%G->;WXlD3,KăU"[v<S3i>N\h4An_pOlN=brH>Yhk1cWZh0c2.1oMzQX?t4Ds2^QMRVY4Ij$i64+p+ăU"MQnC$.s6i'[BCmlTuD9u0(8\aR3hymei*V7Vm6O<J,^&M=X(Y5._4/%SQZ?T*N-ăU"qVjR:?(=YdoTWr0ACL]0pXVjKD]L83CKzV;ZNPLSI8$;;lmV4z&=?Ue&BX&javSăU"Pkf8bGGRoGlS\\,rwiar;y:5oqorVXg.R=o-(Z$tY&cbo%KCb>jc,KP5MKl4r4săU"P5S&t^.P0jQ4SS8UU0+rEpuwk?<&/;s?LEH.Ait=#foD&OR$0)%52><aHYIH1NIăU"M._&JHeCuELpi=HJQ3$CuvK>e?bxN5ud>nQ-?l84PS:2TEl_Qm%8307lz:m\l3kăU"vVu=a<eG7d<m(b&$SqhGU3slqckH]S/PDU'n;^dxCe*JA[&#u3KfquEMA_HPyc1ăU"R9H6%Fl#=]$qn8*wJ3in9pl:4\]z3qIY=J11%ud;5Djgo.,LOTO]^_IA5CO6Dw2ăU"*4lx;)/qjxKCD'CcX*rP,$F#:TX6iL5+)FtWZY[VcBhNg-lIu4;,&+zY3tEy?(wăU"--nKpBLn^9[a1SoeETdmPAtCrqCB+\NaPWbC$kcUql>jP]8H[Cy5[97VX+HPvDcăU"M)\Rmv#j$X0ONei6(n7ezJdB1xIj8PPv8Y;r4pYny)slESD>6:n.D/qg=ZkWvruăU"?kd]:rfj2U6F6)l[V;_,NEG$uNHTsAGI<-U:NcCZW*x5XNN2qv:$'9%V\)SF+juăU"&V[+\bE4/ov[,W<A]m.5-;>qi<Y>t+f+W#_AAHmS)Qq/%un3EO6Dft%YSgZQPfoăU"O^AofDdoL(Ut0++QLIEX_e-KT;+N]*9g^w=RL*5bQ_pMk-[Z''/sx(piCT:*6(TăU"KxCcRl+grJ*GjY3AvXVc::QAG7XJKpbc>wpm'si.*h,xMOBG4tB=WJ4-a)B^tBVăU"[v1'(cw2O('UX,NN5c-,zFOB%Dus0'L;B3?\&uF<GfBoeJqYq#3atf7U=[A6GGTăU"&';AX<epbEn\7;uxbklt$Z_r>oF_UL8bY.ZNU^Su:<t,Bc?F.[F)xmd5S6s9v3]ăU"3kv.8ngRoj/Vv1q'*d?Xx%jmG<?[[b:Rk5[DT\-uNWGlFT9Mg(PgD[c5CTG3,rEăU"F.e5o'=BTRO,w(,GH7)wcx$8s-<cTP,cOfPl9_\i\l+0c2[\G=m&6osFhd\jI%iăU"veR/Uo+Q=>wqggQE=<:wFb'k5<HAm(&W#Sk:O.PkCW'[Fys-JF-5Sp:F<uPm_OJăU"Dik[i7CP5)/;zxpYU3+?&2h*=v>e9KLQVz*r0/S_#sxMREqHe#\'7ul\kLX67/kăU"P(%/?S=&m<X5Am#-7MqF94*bm%)P8>)-6%%/#JhP[P;#x/d/Zb9?IxK+4/vUvS/ăU"j?3fai[HLep/7s&V*#B=Bop>+:H&2_gU>C\Q+[sgN<Dp?PbS1#\om-#o(OU9ucxăU")F4jC58ePgHJ=jlGA9Y<n,#GEB-m^CJu=/i?/VA/9;79&0Hul#i32X6's1z_aETăU"hbR1z5M;4h=VI6xE/)T$<USOgLB:T?EMlIV?]#*x%1L/nIujb3$*/G<FQ^HyLP7ăU"Xqpkk/b$^:8v;X+qn9eXk%fi)EtzqNv5(-Y3N^lq2iPV<*2b&aM[ALc0^]/:DarăU":%xX9t\'%%N0-\BrFK]^uD8%[u;*2[*RK5J8fRK4[ov<mEE;:%s'OH,wIq:+cq]ăU"<:e2DPxVi)/jKY?49Cq(ea-^vgo&Wd7]G8m.L=n/U&OFD%0T[oNvnB6X(L:3C>aăU",+7t$Ser76^<y^;t]%9*EDN%SNbG7\Y<PPr[.%Uvt)'BA8nU&?/]<)HAJq<2JnUăU"lQ\eO;a[a5*W;tt4KR4i$.F'%5g/)l]CCj%zngtgA$c/R%M#x%qV[:/x'OcmQw(ăU"'Kk<:z2L[T5Nto*uQN4dOqvi8.u>*QsM1CUq#/J&4*6(\opTVAEP_uFSd_9P9D?ăU"g3GUEYsIwb8/o/zdW>O9c=ZN<pXk?so*h[>zFV9rJe7l0]LvNH'38p.M%O,*(^-ăU"lQ(mH_&9P54ilM0sL%p1CqObH,-UfhdrD]'?g1/CT#t%d&kZ6_#mp(&yZSBEN9păU"5)[%PD8Ygd/,TuN[+x^8/mKwT>g72J.Z*x[.4Ufvg)u2SmAxHnBA<8/_gmNE*-VăU"c1Hj9J/:DIF<sjP_8*L.y_W$ipZjof+t,Mr*B?cMh#\zdZ]6IPWF:LH]RFVuz]lăU"F\e#+zTYxfjMa$2qH0xG3.(D5<J?]kUDV1aV1YHiPFFf\JU?K_l?oVsu/D%X/^]ăU"YCM(ZVrIWEO:Yw$qUs?d$L=LW%r)FchoL6h)FtO6>;?.*H?W[7[Fl5zNMO]GvG(ăU"gDrbUkb+T=c[l?os$MX.r(uu[>3TrlvkCj?Ll]kj)1ToO\Z>Wh.XSjFeCX/SvJtăU"]uKQd?VlTYah6Afh0f?gG/.hfYy#+L21nSfba>jsE&.oM><V#9rlqecMTdXtPVhăU"ylV7w,HPW*pVDn_Ox>2A6F$05LV8vj:gn]X]0rC>;)o.,f^6a#(\u4OwkU]E.1\ăU"Ti9cp^w.\2L,0N%.M^iDWY7fnK=jv'b,VdJUw'4\+#O&a=?yK/TlGfiF=z(lpW%ăU"bX&S.RPv%)7WI&v('nkbJi]\mICJ&<h+QvA;<\ug(8C*XHr#uAqT>E?v0+XMdhvăU"e(,JnBD3Na2)(U)Iq<_f($\N,Ql3_8Gx7,>AuUQWoBTCeRCm;atpr*1Yl==,-u[ăU"o6tl7_e>D-o5FP_FE^2h?/e[bVKF86WOB:uj[q3mG8Yrh:o%uCl?H=\,x;bZhH&ăU"d_Kr0YMpVb#WN^$?7*iF6pUa3abPzCd#Xr:qk(PnlA?BoABm0^tdHhgY^(Y1c]>ăU"7:##Z>tDyR<D64IBv&E:7AAIcuUX(ENvK>H;%_0(^e>\<5\n[/v.g_bU0Cm2<RcăU"j,C.nn*,wTv]PamGsYw3[TBvM.5&5>D9VzWulneW),NU>n5-I=IoR-T2>q1F]/eăU"RYL4Hrq9^_1[^k&%ac*bPRj_TlnrQ-SaC0.v<F'xPJ=$pi:w%)*A[+wxM>ua:;păEND SUBăSUB V6ăU"1nO<u<Dv5)_0n;wn)>A:EB.KO3\#vjDNt?y<Lw8wd+]qs%X+irSq6aV0Q#i8'-dăU"hf9(9i2_5E7+eV-xIgRoXHSDJ\zULrhnbbxwJ$8JSf&_CZ'fooNa2oJZ^]iT67YăU"E5qm^6H#UH$1Ja#63?J?E<\Tp<S2+KuVAs[4I_]Bt)1w4XFnQZZgp[VuXYEP=(_ăU"-umMb.D#zJ<2>r.Lj0lWqg3,u&>:F]bf#XX7+gp#TS97nZ)/Qu<O.MxOKqXLVlmăU"H5;G*a^ZO7oGx\OT:qHOv^+5pUD0;+hax/1U19Kk$>/D0&zq:Tu]cp>c-7B4#cuăU"LM8HzGq9p89*x6JSa9ODtE%v8XRop:f*k4q3\E<v8JMn3iuF;U)PY0ggE;_$H(făU"IQXNqXq\bat\iV&s+*q2OY^srw\mYG/s?.-QNiXb7qWOHuLfv:%qTIpWnVpj<2kăU"I=0<rgNtH<XxxmjCFNSuMp#n9%d,<_CCkcBM7S2rg+(_:-^2rP0#)R=[Hx[ED*ZăU"Zf[8Ia;f'*0S$BrJCbpk:sc_6W1\3Ftui-]bMG2/w:]1[(Va-$D5dV>Wneh(_fLăU"vcN<dPq%ZBw]1<Oj5OL+GC9liNtIWWta)iCMtcUy'4;_i5vOm(.0di&]10lWG>QăU"^z+B(liSqaY7rlC5y'Y9OxJ.tZvoh%MtF)mCa8t8bM8oZr(N5Ng40u60N42l?^uăU"rf-tqv#tj//R<'fB/9KH(mMeTgSG-uyv[gMDX)tHo(OW[Ktsb?Df;IvvVoK>dFdăU"0nt(i6.MIjs8K7rqGs^cD>tS^YTwP\Fj.Rq=MOmFQL-?AvfsRlf03nu,Eg&YMwjăU"uQfs^NcOrG/4n*K=>5>t4L?'rE#g=4*d8QCP712V2/$mn/B[*:1&oeuT'_/J+I_ăU"zwX$g[GH\4^8QnOBSY1fMDs\bZY<?[ocA1tR.7$_K+PL;4a_F;?mMF;$.M%fgnBăU"eujldL+r.la#dlAk#*:ro=0KS,^ayv=w(vIZTrBE&iUl*U.#LZ=U+f1DaMM7KoHăU"sC5Y*te..-a:H77T8*]=-J::=;uj7n;l.5Pxk+mS=Hk(r9LRoNQe:-=W-(9DJi4ăU"G,i11gFKK\/Zy$t*Z;<tE,Vf<tB]1N^=6cAc&l$&G?8BR[f;4(3x&f89./CpqD<ăU"#LoQ6QhOK0&]*:>o#G11%.[WWPhO6)74c/_f9E5%iL_M(d%A4A=.6j4o1j4oMjXăU"2ZpY(JK&705g\3I(bzK0o,:R3krxm:*/:o4t_>/2i+,)*W;BO;>0I$Xrq327?6xăU"9/i_0Fn+$6_L.T'&zZYlsCf,Ee\DbpEG7Vi+^Gm\0%_<=LI0>p4n_7'$fUR0$buăU"uYAcB&e&=055Rn)lz4\JV0$'^m27UKOU-)_ai:/HO()L7#R;W'G]-)%pC7FjGl?ăU",YK3dLR[MmDL3FI&+AMd8b[%>(Yr;L4ba%a),U-VDf#kkkDIL]r_n.aCcsM9'Z=ăU"VnZNG;_Trl/&JoW<5lwwEI4-HOh_\j9SEATo)hn5%TJQFZJSuh%,8bL-&O[TRpCăU"rL/Mtt2CJy*efI.8/qQT%Caf+nsxq9V8c-7gW.^u[V*8,P-g,JcXfOuQ+FE<h$=ăU"&AiN^1jP=[^g0w:*)7igX5ZFC'a^gcny;A-XksEXO;\h,Y\7L.fA/;2WX=:D<v*ăU"+JV:Unlc/TIDKmS,aYT)A7a/2a%-YCWtT2'Nw(&&\)S5#Lx#:rabAzE3R#5/\9VăU"C]:uqe8dJq\>j32_0uBjr%o?/lOC[*nDm,V7VW1\GsW5>7;H$[rPNhFp=,<2?#qăU"bD:6<6QS\rQO8b+%/7RKT/[1lK/>^z]Kv?>/ibf7w_I&Q\'f/SMLP(mmqN%,u2AăU"LIojw#7K=tBk0N5MytnAPK0mttQdX<QTvULL(.H)Pdpr(.m5P=2&_jk<urD4M6-ăU"60k>nH/WIiMlNR*'B+(5=,w(y=kN$;E$nn)Sj[<YlsjrbG8'<8jXi%hP0mTs*7HăU"ZH)13G.d6'l]r?$-]K9:+*UmN8\o.TSxa#ugMd[uzFu*?3L0)adZThIp#=K*5uWăU",[mpl\R5<=yabJoHM7FQObY#mbbvrO8b+noNqnl5UXhELI2yn8&wwa*qTy#WQEMăU"kD7b)=&+fa:HBiH7sWS?r:35,irt+P6nr<c$+'<0fUg]ZOU1X:fP.ML_h>#Pj:LăU"x6^EO.37;HLZ$LXa2xLZ'gwNZMb;WnN+N3mB<eMCI%eMzcE',B],pYZ\in9eDvqăU"%$$&6oHdpP*81P11B%JduTh-H:d.m\i2M-*isCQojD;Y/lDR(#iUo.-Y*\L8bZJăU"*X7;U\cg8u9>bXe+&k^;To$w&$uWI1sH%%qT_hCvnN4H_bU81e?X<O:G+u9buu>ăU"q,/Z=LZLek:DUjaT$EL/(,vF9#nqoi)Ya(+D^\]d^*M8GCm]LCeAd8'A4m[?IGBăU"atNj^5dxt<^TxGaXOD+./L5kFL7[O.0#qd09i$gE/%e9RqG>g_mS=S5(:ytX);-ăU"znxYm&\dm;jSVa?%/j:s*h0\A2)*if$vE(]5#xoAHs)2-X%VVB)(j%;SZzAl[/OăU"<p%bS67Faz<#ZZrL=(_[>>98mrLy'-fT<<p]+P72&M2,XH)(m1BKX*V9N[v+#;OăU"ZVpOxM28YhkR&,KBAA5Fr\kIjx[2/a&c;%zQoPTS]S]raIT,SLT=rJW?^#';F;lăU"=nWP.SN/?Ldv^/Nm*a/i2,+e60q)>01=m#^*I=N>Y?2Q6Rny/(C]<uT\f&<9YVTăU"Jin9ljJHqY<93i2-,yKy/Cpxs3/Trbza?Ly/dw&3b]6-HVsZb;/Yt+)WBl:Q8a\ăU"j+bs5m^*<\TZrmpt]^t#/Wf/-_.J=HPP(fDZ=qowm?e:KUUqjTKM1bIru6:aacpăU"S)VLq0upp;-3N5,sN^h'K.:Hfh+PY8D7G_lS]+5/l-=vkRDROeY:)U8W0?MtJ1XăU"qbF5pv$?QU:AHMB)5dWbWcoJo8ar^:s/?a(B]EI>mo[VQ0SjOO%dV3vV><\fVWfăU"G_GA(RTY8VdsVLlTon*(ls>Q&wzDn_]+fG4#AT'Qk2PWa^E-=-2jL0'TZnSP%QcăU"YOE<.gIhHs*CvS='&-e8iBx]6<IqenT7;pTs%0eEihW?qP^#-)\$Q2_PB:[AblJăU"O\9H'ePv*KE>U_fI]*Xr6Ss%H-P-W5oWl_Zu1#FKb/(C.6hS^&3W*%l\oXg3/+(ăU"[;[yTYAC;w2-cEAEY4]Is=S'KJ_(gxeM2#lfE_PSS#]J<6G7SPa_mBvZ_0rg^XEăU"E1$i5?GGDX#\EMU=q>\RM/t;<4+GQ9[*#K41<EFqeF;)7UQH<j3X?Z)<[lL;Q.-ăU"7<ex;1XK<.:x3u.ue<T(iU*j'M;hJ,QN<^:4;]%YPVRC.m+pYsz-=&50KCFB;e<ăU"$I:q<&P^A__S54e\ZIknOB6E?PSj_B'M3%o'4d)UIIgcAc]lx#bIi&:8Tq%Ov18ăU"Cy/n63h4a*j<t;4p3NcUT<[^ZJRk2ETlV85#l?qJ9=TtsiPA^v,nDq1If5G+C]JăU"fRao-o5F.rZ^LqHJcOksESnS2OV-,inO.3+Ygj,st*LJ;Wiu72]dSZxBD=x^hW,ăU"BZ(,m^X1Q'/2$=#v[j1H#a7Q3#6R7BXiCu:b(ND;b1Z8F.>G#/tElSVITVyO=>VăU"wb<n>hHO\dds3R2:[0f77AmXE#pA:19pn_m38Q\I.*X2'/+fZV:p]^7z0#0DEq9ăU"\aM'7g'miNC'Y?&tFtAVt%nap7Y<-H8]3_PX;br8vNug5_G[Cn>T.Dg&?bRY,XrăU"HKGGvvE1omD-p3<fz]fLC%.,nXt?MLc<E988Yp*Lb#?u#CX'W^fvGO#P()W1rG-ăU"?2&$h4I0m:$+6#rfawe3t.]cb6cb_o)[bGoqmZcA(#xe#5PBM]SN$8**pf&Mqd]ăU")lrZu?&M;Tk'2W/3$bc>jKdH?UtLfJn<%],x5n;nC^Ra/stE;c*<ue=rv+c7t_TăU"-J;-BJQunDG(I*1dZf.NB#VcJTHJVnnaik.x6f4PGv\fnjERfjXc-;\Lf$to,UlăU"9*OmS'6>2Zu;+3n(qSNF%<Yu^kt0QOnrF>xp=dwHWLrm.Mu$7*erB\m]'0Sl8B;ăU"S/;98o]h<X0wWCz82p3od$m)djqjk_CA5OV*$Si7-HmP6D,gQW$/k+6OCJN^YlEăU"YYH^TFor5B%4ODxrL$mQiC&MfRVIdo4iY-h7:&j=Jym<>#Fk>t8('GBsrhLwnprăU"ndd*rX#&zo?6/0wOJC2qe$b0Iu4hIMMABIXCagJ\?RHRr]M<Ur\sgkx5=P>iVm<ăU"8_X,BnDlM:)knbt\3R=%py(GDUj'WE.<l-McuQ;eLT_rWgH-gB6W[OAmN6:_h<'ăU"l)K66GRkLXQNg)EfX?oNyX*acMImhCxTLq+sH(3GuPzJJifG[uwMELf52yu:%MlăU"nfu9(Y6QXQ/Fg$haHe_br*aHrEB+Bc]NwD4]sFHj\kp7'&N\N]J9I^ehWcbJCIvăU"\3?<D_V7B>3TJKf(Nr_$rn9B&.8_f'Ta/68Xr^?QVRC/G$3K)qav4+uRG6qekG=ăU"qmF*4#R'?hY8F-Y9&ba-ek]_3uMEN*%mRGnlT[zhlY/T6%ZcMSdh5'[3_>pI<PjăU"RF&BqB&]#;FdUzV3<RoMzB08B=0)*<w^&DA1)E%<o__z9#EiQV+=P(8u2\R(zIQăU"DqqT<>f=0ML'wp8#)wse3U<3>)Iw11WVa+qV)ZplS'u^h)MGK[BWb_-K%*1AXCDăU"f%7S;d(oB;sCf:6wNC.DFR,#XN;xj*I'*#/OP%d/toM2y'SAUr5Lp$hT[48go-yăU"_%_MI8\p=i(.C4$*#O?xn$6CIJZG>YAgHp)[JQg+^EoHi(AV?L^nbc%kn_87n)dăU"6xqo;Mrn1gFK:wrF<lZ=j4\-UJ_h+x,_\ZS?5O$.,Jb9xk&J:/WM/,hsK&gTOWpăU"stkb1k3.v:HlMgp9R.FAKvnV%ZhRd22>0oS6'aWj^1s*f4A/S3>.3c)s3Kjb:GMăU"I;c-/_/w^pR7<YlUNOs4xs0H0U%?FZAUE;<:75w4&:'kWhFH)QCJ/ztW[r(:*J&ăU"n-s&FNAMSQ^-GXm-rc$aR:rbgeEk+sO-^V]]YEC#IYV&C_4spZNlA'if_A0^%qvăU".3mfG^A5S\3:Smtp<fOF-ExLqaJx)ln[[*$V-/7vbne4S1B'6)2=fr*+^>WR(x0ăU"ZRC6uX5LD#AK.H(u5ktY###qWiFmG[#J&rJ>65'7t\H77W/N_B6WOu^zC>*e\qKăU"4q-Epd8.41fgW31:&f0/6]ZG]HjRJmJ^YAM1rc3^hF2D=f&HJtDC6U5E5Q(ANTGăU"MXCbvMZ6XJReFl2^OnDua$T_sM3kp=n_Zgxq+<ej(aWK7+SPyIY\5&:J*=-3L;EăU"<_k)'Rd0'l[djBM,BOm76^rKsQ3,I(vmprtE=G7+t^=\W7&:bJNFo15dlREo_h;ăU"mMc)RQb,CGdww,d&iBbEDa*SBRvl]mJGx%uC]ph>\z4Y=a^6I+&Ma5LhC7ts^10ăU"EG9]J.>RemPo(p*o;1LBy*\EybIM$Y-*6?%A)R5tYPr2ztZE=21_<g44FP,Ud3găU"8$k%KEN(CJj+,)X3LBWY\eDT]':4TXbuojC+JBghSF/kVYFiJu3NmI$)<Rr;nLsăU"RlG9Hbjd.Fss$sS4-XWVc.LZnTFli^xNqKHV0n]F[WnDlSoAQVKk(L8)/S97yNLăU"8gS^93yL]HMBb2KcMsTbmxr'm0olK3EtN2qCsDFwsTc,]mio9xqbm;6smTqc]m?ăU"QbEX;*XpCBDn_3xVjC]LB;_HFE=,G_oW=GAqIfo#1t7NYKeNjC[cFBK--(OdAWtăU"Hh(aqRP&,V/IrSwKneqeqf+NVQ/jIScKDlqeq0&M,LR/ISO0K2qeDq<L,[D/IS&ăU";w]>2_7Zni:BsC--0p\\U7?LO,K_rCxu5s.Flvq#Hm8]Csho_0O#lW&lER\(_4oăU"fbjf<UWVPIw))s$q:.\cjl3*c-O\NZCdzNp*n?N%f[+yTK3VsSk0nG,p(o7yT&?ăU"FN_0gA^R(DsPi_0/y4*(aq1gH3eMKALZKPN-^),eU:I9^&Fm;o6>t/iv;X0kQKmăU"apc\/lisi53eMuA=mmp_NH-/-6V9Q8P1>F)K*+roW7JBfGfBp'o=jkw((0zc)=măU"US3g)*8oxiV0=Z[Qo?ORSxqi4YWq+srvFcVbWCgQE);i:>hl3Lm[X<CgnWAV2(QăU"$aWML'][C1)V.,0bm>-/)%sp+]non[l_jImuT)_3NrWS[%kmH=U93jtxAI/*':OăU"WT3R13nZw*.VRrLhDIS1?B/0NX0A-FbV&6DsR6WAL/l3_6FWAb:6C&7l%;X<Ij*ăU"V-gsKdnP9pD-J/ad1ct0p<7<xGs&VpT\$9fuh44Ajz\:0+V.FQ<H=EF1t81EoiFăU"k,)ZvJt),)I\h^ILkZltVs]Z]KJUs$3h1.N<bUg]>BPm(9HeE+#%=kWENoIS.\FăU".n6*,O3+a3K<,JCAwS0)_+[Lk&*GvEFl*??[k]e*ucK=GBZE-PM8mHT)?g&GaRFăU"Kj+e&E6E9RZLIX(nR+S;8Alsh[T-VB<S*Zg#o%//w<ZMPXZt\HRaoYBd*;+<GU-ăU"j%jRnA150M8#sbxF%uhAt7L,p<W-iIW%BzBk#0MQsm[E23Oe0,u:^[sT#Q^/ppuăU"bmU6>E))h/)?H]S2jABnN6kTfieU9--#[7Sf$c0*TWB_$/S&\j+FoClQ->4g18uăU"LLAWLSaG%7B]>I39e0db4RjE*/GIQxR%ne$Z%Y4C-t;sXOOXT0+y65kE:[t9eD\ăU",h_FW\\f<a.bTDGvusmaj'jbX[Kn[i;:o2/OUJO)n:WAV^,+Hfr%5;Ko-H*F>QSăU"Kk=%SvY5^R8?d4&1xx?A(_1D6EHd%>/IN;O^*t8?J3f_FC*[Zu&AaP%O70'7]drăU"GJv]g_2XV(9D(UR;aYiUO0.vzT4(OL&$wyP?IsGu;807OBA:40oOYPM,-h0^027ăU"oVd)&e#rW<#L:eyz\MtlA3BdvanA<HZm6*dct^$$5G4laEL*bJ04nGi$tYc$C/măU"%9rcCX8H4;LLqHg<'&tQjF,o=gW/H'75,XH2tUt'#SA8^&K9faIvdjqfG?ztW/yăU"3DWrb-Wha,0-*C:WXbaAg[3kugXgSbfTCZ'Wl<q46TdYw54_Z-_YMiLTL[7owlTăU"v8&wiGWn,&4xM%H;RU[Ee7;(a0h7./W'9k(aYf-WTj*?7/)?,'+ylcrY>.7DzznăU":jnUhWu$t#TS30M4r^Z0tiibe_<D;8'L\vKnt8^<#gY^Z.%=>+zNPve2N22A;'qăU"*bQYFOjy&,[bT6XhaR_F/S<niXlF?Lgppf#[4hH84h,4EB6H(Sa(I<:p.U&bplaăU"Jtd'YD(mBu.21WnHI\BQ0-^%?GYewNTD6Zln5K4(r>IL=YV>D46+TplCEu:-IkCăU"G0$cu\u0NWq5*Hdx&lR3xsIGE8B6SAIxUL4Hxn?U$i#$lN$%s*9\(K'sB=&Dfu'ăU")1$:9SGjHHN-E6iSx?lE9]Q-RrIb]T;Ds0bj=POL;yE=GPc;-XbJ$wGrB$\'f&0ăU"7)PJuPEH<\[ACwr%%:jPX+Em+b/Y'J]GZ%5>85+N2]</h<l*v9,\VYZ<H+^.dL%ăU">:U(IY;I8_#4J&Qd#_$/plWRYy-EMtT:j+RNgjVBBc9YI>bXR/,Sy<H)B&bn+x9ăU"o[\Rfe70U-.*zL(l<wo6Hhj+jqdK5T0xsejngQpT$-Gfr>rA?PqyKWE;yjI3>axăU"RLN4q(W99xkln7>,9h]=/883)/D8HfHQ2GoSM$k\I%1bHlIE8>W%AQ(AJ9]KBORăU"v299iv*>%iq#xVStn/QZ-+4snola\*C=(Q#?(ELL[.>&]hjXE,GgQ?Zd#t^0$=/ăU"g*3npslxWNu/SgO.#^xLgBH=K[n=AC[O9^0,:\W:.;UOv.E=:vWA3x'W,<K7+XDăU"Q?nLivpyUGs/u0AH+vAUh[K6EKUzB*iqUC&K*w(2U/Ge&)??RQ-6o#6zkOfd*tDăU"S<'mxt6GMcRQ6??:3pJY':m.gI*[UU%8[EiTfk4Rd1u81JUh3hpTCc#Zmw\(9NSăU"%4B,CSLClu0FT?qaaql:C_MFC8,=wR'8J,xf3K/ZfLX19rSP=FNkWAUZaWS)LN>ăU"yEsa4&7d.5Zjb^oa0T&MLWs93bZiK.zov[&m?ElUEQi\YH_#X23AkSUS<#8U%aNăU"#Q3)+LZaISX:K7CcH)Eev8zVJ1#r&vDKGTip4pkgHVZeaUG+hOMqkW/8s7]dNlrăU"3Gis)6;j[gj9wSk*^OD:k:UPE^qQimmNFfe-F+hwgOP45g7&m_1mIL?-]hOt<x3ăU"(umwhbj\*?:iF#q>/B5a;,W+olo^e(C9PE<q)aDxNqq_uFZ&P?+Q[vmWt%6+lpbăU"ic1983->s\REm2BRL&%nmXdxlo?KP.8;oiz'_Fu=HTP[l(7r.U%]&h'jrP;#;rNăU"iEn(iZ\:M/]O7,/u[1U-4McPPdJrucio3W9cGTbF[>YM6';u9;3N6pI0;=TagKaăU"S??D(bA;9=4*eDZ9BRl/#E,htX*loUACIN#gua&dAGC?+ZVaf5=ko*LHGB%E[WmăU"WF-_aJ2mf[enTaYh7[\.(b;QK<(/.Z=s(.xDi+VQCYzapdKkR?-OP:LI9hoi3EKăU"GTw]$u+jKgQMI$]I#gaulaKqXf2XsLG]T-3T+GLhs>a\34BH_+JQ-IlOxThC+O>ăU"Uk(y4o^[l)Kwqcqr12SYxdiX8)7QO+DMqn;.Vhm5XgP3#jhppUfuS=,+RSr4PzNăU"ln/(sd4Q:.oE.<2D=&]GlXV*kD/MKPmO*'qN%OMeDScr5W(R1JF6'UV4.ZZ_laqăU"K.Xr<a6)8s834G4\#id4uX\p6_lEADlUFr2\$%CRtsl9MY$FhRk<uB.oP1_1'5IăU"PWLo3+%e-U)+\ARPks4.G)otdCk$I&ZmY8Y&;mo0Bue:>wZQ9mRP1r%NF%R5$?;ăU">P;R9(pk3=\i1,%Ij1SMmA1H8/0$fDsL$A]djdHE\iiv<f_UP6UR)E&gt5+=$Q\ăU"GqWl;LMoWZ84X+0CeEuD-OD.7p-g$cTgO=ni)GAWF_\XBj-%*5<CDQ7;LAa#4pZăU"07Wa.\4l-'Z(x$)&2DF\RQ<cr6P]/mgUE6H2o5d35&G9/BedAM')kUk]Z+[&MQ)ăU"</WJq?F/SJq8)/]7m6z2?[yQ6Pb%4i]kjV?[CocbynxhvAa3;mZ[?t6.%aO%8[jăU"sX;jc#Y]jG]b(\jA'TO;WS<+6izb7T*K+Q)g>Y<:el\\pE0/5Z,=AE6%;q>GT.HăU"tI3Foa]Q+3+ca,%Z/3Yld&%Ra72;kq(u;LY?ZUYs<*LIz(0OM1t9Kq5/2#o/NZJăU"MtBrxi6a%Za0+t*2*S/?F2d#/aD8U^O%7icq('Fk3r[N>W$+'QKGNCz?e_(<\*LăU"*)TAfeU9QXF3%OW<wSi=Gs%etu<3?:>qK/*=JG%C9*=%TIm(biPlL?]-gKP_5_4ăU")OVUmO^vW]xs3):W_mM,QhWf6Xm&[e>NBFO\?toU$99+7aon3)Z=TG5(>;q0L'WăU"&[&uAlgY:)(+8,LPx.;P/4a6)bA0B\&[l)_$&(5Wrl%(18>]#56ugtLG-2bd#%VăU"iSjEDiAV<ehv_w)u.&#D;9Ql%5RmQ79\[ZP%m4M&D+?GOA_c%H1[<v'k/&>SAUCăU"?I\d=5T^Of=Q,xbfu\jt+QYM2=\<&w/;7'/d%euB)FR)$9Eqp5YrjHTxGH_)^YEăU"a?9'NZS2D#sBcsL>2%<PGJ^alH/yQZ)on_-.]>[\s#LO^X;MH5+L2yA;1h7&-%<ăU",iddKQ%UKMB)[w%1.>78pTO^TVVd6Q?1+jT-.h?cQ\PjAK5sebOdGV:'$vjJ;LUăU"j.GJ818Ln:D\,48==gqFT?)Nuftz#a$f;.L8+eE=Sg;a8'Zp\D,Q<g1WK1O>9=>ăU"Y0H)H8YfrB'e>[v3j5bx-MOsH_6jTS8h9fubRcNofeXZ4tA6AsmtrH+<sOHJ[3^ăU"$fd[&2:uBlBrKB.Xr=/%I/T'Ql6<su8JmSO[bJX;aSN5b3jouLKpE<9\-2TCa*DăU"m:i_(5%:2dCRUO<QE<^+?]D6KlYplfOajF:A;^*.dT\_,FO+pBM6\ytaQ7x1MlYăU"rpG1dYIs>t\fvIA6-r=/u(L-=dTmrB6IVWCnB2_p=8Y6q8ELXrAWX\?P:\vdWEBăU"#\1-tW?Id&=&BJt\9%EGaP>0MQiJ(L-UdTPV+a^(>YN3(:y]&DqG;IpN\iIny62ăU"b_Nk61Ps^]#Fy14Vtd=i>v%/_<bP-HDw7:6J(^c-(XfZYZ%U]s)ra.Ab=F1S,1.ăU"GJp5Z<YW-X/J[ZVu6&q5[RN-S5xFg<I.E*pBtA^.]ZdzlYfdv]\5OKlQKmwoa<#ăU"_ynY8a,+c<mQACgr5;WjAMr2_LM7I3mtwdQ.Gn[=o'K2(zFr?8JS2qNdZ%UO%B<ăU"ikvP+G4v$fE02tFjE+tx3OZ:1]RDM+#ANH.h/).CjKpME-)+Vtv78LWy=J)C(>PăU">35(_nIh\9Q'Y(w3mnI2=O4*2_7?[UWpjH:K>GH04Z3W]QQH_a8kD]\lyqW3j.9ăU"JQ%0Pdo[RfROFA%icWEv.5Y[aS%\7y./IzKt.d3J:Ijpd\z*&nQ,bY-YwXfB1tUăU"g*a$XJTag8P)syDHkSr<=a5Z9e-6'^YO7jl-q'*Q6V6c7F::QC#CW4dTk35Wy5=ăU"re67=wH]YApZ39>1j^:LyXh?dS,W^K(i+#4-=7uUG99Jqmr0^q.f;L_Os$/F>MSăU"g?ncbW,HJmeJt[\F).x$6b,UM5V(uVXUVuVXgVuKSI-N7sAlZgYic7vFqwAA)i^ăU"2'5>3+dr$1O1nP]G1TqMkAg5WZqVc1*qlGa[hIl-G6'dlU+_JlDz3oq-eC=3fCZăU"0^yXWBf5A'$E]1qgEe2tl9FE#-Uv)OCIxi/Bj<0/uNYpx]q2%9i(-4w%]V-+Cb.ăU"Q$D;l'L:YS=U/renoDJs?uN5rOJ;(LZ&qwf,=DqfLcDge^&hP8eC*q\3JpIiQ?JăU"tE$[#',_.bH8))3JV0X4n*+ZGyGz(Rs:5y$?z2%gOM/9>PGN?mGW%w('AGEE3ypăU";28t:YcO'chNTRcEhbyFJN8yuoMN#)vp4GN)CL\;s$B_z6ISD$Y10BVBdJA?0%LăU">?Nh]xdEsJ&3JrRTCNR?/%%#DU[3Ys/Q_sLEXI/ISaAga<J_4cdiJP1KlutfCgdăU"O)aIa8HyomsLAAlhv-DAnXh92EU^?*4#[Tsb(.[:uEv5jkCV0nXW;O6(wAH-k*XăU"(B/ZEShaL\O[t+F=hguXpot5U2)gIJBPFYi:RX6K4/1=,)QMcC)01+_%/XJ9nw2ăU"[Yd'#fY3Q0kgp)5SsdZ6-dO0R)V5XOQ+9x.r.7G7SCB,*)om?msecHk4^q?hm3dăU"9]VvPF-AK22n%#&05^*c5'K=RGRa?4s*MfMn[20V%e$3LG]02QnD0X->fAFQM'YăU"5g$+gE<E\Yrg(6>vHnHj%Nb4xUj8SMh=?%v7?8;o70%bq^W#U/8*)#w(OY,34MnăU"qBlsSgG)h2([G0yROj-1E2boD3E[Py5Eg)&$4AmJ&>l0XWm:('lBDQKcdoh5#QMăU"g7Xj=NQH[SwfaU/NsGPR:NGO.QCpT<.GBX:?3fUB6dBT]#<Yb]vV;Fq\9]adE4uăU"k'<6++NA\_\gRmPV*8JW<.ra+n*YxmY2C9C0uTAUK'%+^/9q)Fz*JN^=(r_B:$măU"BG&#._OlsAh,3B;GaE.G7HF1][2nTak;&E9qQ?JEni-eBsP=0N3c4Bit](76Eu=ăU"HuAWn;py-GfJw?NdxvQPcNsm$60g;vxo2W<A1LpHx/7*LUTjTKawi\_bK]cZ8t1ăU"tS2D#=zd29&Jq3O%i\JSfpV&+W.\*/ZxfK^:xiud^me*pUg_eY<.G\%YpQrAW/(ăU":]Lq5FNrDJRKt9CJS-]9v/uQWImHe=%OTUzm/:8rB740JmK9rC0/kcUsDR2yTIkăU";t^9.59(,e/C/46XT&?r-8CDtk%$)QF*<1I5w,?;xX3xmfYhi>A)Dt'Ikv?D%skăU"4'/?l\IE]c29J3?w.?v9zOc%n[=l=?h3UzJbl)tk-B0p<u$7[lJYmHPw967mlcYăU"x$.>,8Bnt[=;q,rCw<tH5f)4[lItYH+N%QTqX3?HU'Xcm+rH2[y;<A1>e9T5x=hăU"10wU\1BIcQMMdO+8jLGJh$11JqdTJB<*x^kqEOt>p'SHM2W_je4=2+79>H68(WeăU"z3A&)%fA%[/eTARtS^]b(9Vg'?4b48ea5\IdJMVB86<#;ifJ*h,oROzmPMW9In:ăU"v3k:(Q[ehl8T^L(GHybDnvP;J'&8a0IY6=jrfbsgszKsR$OPU]uVZLMfTCvIrjrăU"u#eYnV),a6/9o^USUP?tz3Pzo_)-ppjX'afdPs'<.=*1a'T%+S=06RiYmT7snazăU"b;RR[tNDLv_;B2oMVH'.:uBIvZ&X^J^#1LF;VVCZFB8LZ3I$EECl]r(uZ167xQ$ăU"3&wmb/dUiY;8i_BZ=qr_9u8n2M6,QY7EfSSrw53TE9<D,Ke*[wS[SoMVaKf1ZFJăU"x'=BP=E2H+NpA'Vmcm]LJtp4i0:Uciwc+t6KDs:tYWIyxt'p-Gt?f/A=jJoaGl0ăU"%FzmE$XPTRYVoWo7wbBWV=3-<*Kj'ubTP<l+);t%j9f,U/x7qP4chZeIDUIKq2kăU"CTmxK*JJdP=&j8TG_8r#4?$#L4b;\nW'umww&VkE_7OYh[nHW9dtU6E6jK57F0(ăU"<]\tubn=SM)=?(WZ9<\K%>g-3nUTd%E]5W9wHv/*yaO6=0pql&R+LT45ZZZ*AOjăEND SUBăSUB V7ăU"dI<&9FI6,H[p9*q-JmDzXa.M0u%$-C;RXo:5]Gty.6x8zDl4t,4MqKzP,6d2G-VăU")yjSWI's*Q0';V;']s7>c2ajeNWn_XFZB7M9x%h)qR':R53oEy=_LRN\:r1TaBjăU"nK/:28uVBme3_PSs7d5Y)\Sk9XFbx&9,DjiKci'&FsetNU&pMoOoEo:8f9rWH.3ăU"b03m=lFb;V'i0[^v.GWV#cmbBWPppdW\+o:KQBp(#OmXR)f15*q-KP5R]MDwNR(ăU"#>WH,e[-PMf:d4/pV[jp/p35U;UEncYZitZwGJlY(FxPn5>:e=#(KhKnWrg4[MaăU"r/64VqeKfR%L5%J0%eO+mepcQ%-*jga;O9:gh_eNN8M$D.lz%&,a^8#3*]hcF[lăU"h%FzOb>9^aMO0mDn2)^dd9gsb3nOz*Raj:&%V:A*H\/%medamC*29ZedkXaHA5aăU"-GMp?Nw/HM*a(+738VP6*^?Z]GwTil2/KK?wrndb4_k)NYPlY)-=52i\IJ,u2X%ăU"/;_H.hq'-td;uS^vlxvK,OGDuEPB+w%M>rtM=28n4<4uOAW%=(FmUM8eWcRgk(*ăU")su3G1)uSp&NXrc\FE=V1XTYe0-fYrFOe&-ulNpHSKETLJtus[O=gX,'jjYdT.BăU"\Xx&K<p$u_YSxrqJAs-T?W,X'SAwhWq;qNS]Gs*B3nO4VOXPp83.-&rH2%\zFfBăU"?RNkUmydm'0m_ExGwA<pwMo1KLrHL:R#d2Hy0kPl1$*mXYc6SmlrL_W=fN[Vwo:ăU"c+(p_N,R80335?]%d&V+57KqtW\W((4jflL*M:to/6P68eES7eS:T(Yg<'tBo'YăU"[ics[%A&g4p^Tqb#Y,;CDBG:%4lId4Ad('),lnoK,bABl0$Zmhu[o5s5;H+1A=3ăU"BwJu(+(JTZmfHPCk)=Lz,Wv,+eY8&'th^V$A;xMzJcrep'II5NQCyuf[P')e,1(ăU"-<aMM;ydK_V9oLUBWFGe.k7._.=6,V*V+njD#meaaAN;2t(s0N;I4ZnM7ax,&O(ăU"#5PcFM&dd]3L+fm.-e*5>d/J,Jn2E=&#$x=*IgF<i%X<F&r:mTgQTl_SKLPFR%_ăU"1w?QWb%,I>JQ[p2tU#;2L28P:wC3RX\]iXPdBX^sCQw3/=oV1O:srH4td>S<OaeăU"99JX(jrP(2^TgBv&q.uW+D8VyOB,6;nPPZ<+L?_tP?2haNPI/)%Qhn1(ZW:31ERăU"?Zg;t$dRY+3O3=hfsam18(,7;KelV9PM22+Mx[:fH<(W*;6\?Y]R[4^U#rHf)HMăU"M.8eQe/f:xc&7PY?+suds[i;F89eL2qczngc7^$wi$yx'(R&_2<lS<&sQ6NK*;kăU"7D?FNTa\_2)8fDX1HCJ416XbS1qmSQBRbDI8SNxF,RSRFWM+oedvjM(M:$9gEZtăU"0rre%Onjc#THi$)_4+<>cu01G(Jb/.Me#i3P,/MYot+UR6mR1>W\7?W]N%in[/iăU"oF)pYGWu1ltY+vpwIN\z=8cA;zOp/9G\x(+[d1:[Z0ip*%JXSSr62bzsOf=J'G$ăU"OV^7;'$zW[l4yqxj=aThv6*AdyxTfi'Hk/'+,a\eSuUWC[Sg>R^>p0cqpQ>CX)EăU")'Aj8]PXit7Mg8RFD+=YIduIagOW2r.?sKwkSL(eU:0(FXIUj7qgW_eFMuV&KNCăU"D[Wv]w9q#q>:TDSSK'OLc&W0f$:ZElP(uq5Q6GSJbx>)%dT6O6Wu]^';%U2\S5-ăU"1V,YardT=Qh#uWMq3FP=v921F$AWC/3d3n'=Hp;<#OHicv(D1?lcD+-.s_i22z5ăU",lj=9'u0;p#]5/3(3%c'v,Mh8Ode9dN=HddmO(Y_pi.),ABlzpK1X,KDZ%Tm>uDăU"^P/L-Vhn+g[8/cb&T\\s4s;h4?\+i>yytNcsOIJ:ZxETFC()(p\<3.GNzpSDD#SăU"j]BfODRh3JVk/t;r?;Qms>04)Sv3?n)0GbN9pnrBtuCB'1c;,Pi/]B/u[OX(h\DăU"6/aP8znY0afl^:'Q'I,yZpMMIt)6/wM,?''ozAV'CLi>O^B.Sa-Y$^Kxf-&W_?6ăU"%$Q9nc\:stZDG?lAgPr+1<t$7u+j.Xb?lvXvW5%O(mx%t\S,(4Do4XQSI6KZ9o7ăU"4j^3%may,)\^%L2=b+d;dr.?v=#<_:0Tl\VwJ>S9f%_>^_D,;;_N-kf]02<RG1xăU"M0xnD/=L<mlg'33_MD.R&t&UA%Dd,Yc\SX/u$y?50)ZJ0th'#hoW0mbRiBiF%KLăU"Zw,+<SsK)&\d/0Tf9XiYjq5Ps&s-E^lNh8%:X1-?W3PmfW'R%t%4X5Xasex05x1ăU"RBqgECeS7]a8?5i>>Fjo1r;?B1#'=A(cLja9FlI(WZ?-($I<-FmacL2^5cTgDU^ăU"0(<KjHbwJ=,=0jW.-QD8u[q88tcTzcn'wcTd=;E4]Rn]+R'?h<sj:'S=0b;%Z3păU";43f.FJFjl)Ls>QyZGD_n>K0=q-uFd&V<9xK)<(;ZG?#\&UsLg1UjJ?VJj#FZj&ăU"jc[MTL1H?TwW2'*BI6G:N_WVN6NoQErE:L$i#9K0o)V&?4g$2B6f-GS&5tM<^:'ăU",+Ts#YQsmU5$Hl2L8W6>_'1x5Y?[Lj%*\WPJ:E9r;b3^ji#vNQD#N7sn?]1#5ZFăU"f(k+V&^=;-1RC]z4JLm)0#q6(e5-no;dK$MC(K#J(W2'%ScS6>oDGA1PF2%2j3hăU"JA(oV8vIncEVcoC:IdFHuA$xef,z8['Fc^Vi/$IsG2oiJOM5vgtWUJ]6$nc:hIYăU"&m8Ueq6]q:DneR<,jVqkG.A6z7lJXS,WkP?*$TGV30m1O)CL6YlnX5,)Cqow9mCăU"[D7&A_Ev-Q0l:r=TRP.E.90NS-Zym2=gr/_wC5a^>b'gAtq=>%NL=H9ACQVNP2HăU"KYq7hT9nXt_.&ECMY;X2ePrW3V57pPc5s,P_ygFHH.PQzL/^CuIY>nvd2m-U(F.ăU"S_<:PYvD2C'#',F+9YS>Fp;bZ9JN#qm>^Oq[;ldEwkg[0xngb%:,oK956G>wFVgăU"';b$/SfmR]q^7C&,SQS_IQQTZMw?&KocHL6wc1S,w'bhf%*i'9jQ51(dVnV'2/TăU"/_G1GYS>4a5h=X;xQ?l2yE;O5Pu(^<nWcyu5cl$wapW1llt&6(':n2.DG&V3$+dăU"D-ng>*/=XWHl_Cz.+iSR_n]6]GT=GF#L_V>'7[p(n&DYjvaid?j%nT6CsztNE]năU"t%xm)_DKm+18Z1dc;0$[TO]%+Qkrk6RNZ7EI;b\QIE34blB$FNI/G2U\ds^i8EHăU"X$ZDp?HO?Hhjs2qU<9p0A<tMQlW$c]aKM^]$vNIN$-6nqWWQUW%uA:AZWI2A\u5ăU"Je10k:S0*$/t'a7E9>w>F2\KkW>%FOc[-zFsCbXq/Agu47JNQ*sCM4UJ/f6#i*GăU"itq>OoG8_;*iAL6N9?vk%6V3Rtl'kHU[F^PPE^qN,lU4_WiYt8l5T>jrj4dL.P,ăU",KSW1[&7YHKb7E8MD<dt<jN]3Ykij2iP$n0+>+sncr[\:.NBCRuE<_k/.Y^d$y(ăU"Za_La9-<SQm%JX1?gZp.swt_>OYEB^i6.ttNqLQ+o<x_l;5Gp&F(AUW<$$v)4N3ăU"aeh4>GbT.=^DMn^5m,6W1mPVJ8BQ3Li7*g#Rb:o5lgiveLPqeW[6#]K0=lG7pXEăU"L>y(NJ.w7C=d-Q$wl[B2%O)L#zeKnL3NrCN.Jd.a9bUJqEjEl]F\sLW\(.-ChOCăU"M#T<yFBqo9SEXcUlt0GB'kb)UbDFrj;LMoeFG+3zO*,D\9^^3R]iNu.Q#au_g[LăU"YR'%<PJnaO7QcJofpR.*yx#aX$ytD$gbt5c;9^r:pM+$7'SBJipAs_Y2k1,8DT,ăU"0?:_E]'f:*2/tC;de>smZ%0<YE=OoFR57Lw$lzArn\NL4/1FclfAkGvMx8DlGx:ăU"9oF$A?9)-wx(h9]5tk1T/wKI5vvQv')QHpk7HKNMn-Tr<[HO?l8t+PxwuiFfdS5ăU">^r/AULaK+QXxUbmc&+SKP;?nb,_[]^,bv4[r'uon9U]G*^nW=4QP/?Vi9,Zs$[ăU"C[cBHR91.pxdsZ,l/P1^H8/.2.86s=)tEZH,XaF)KKUy/QS[.eanvT>]ADVv.7GăU"WW:4HXFFtwUG5$]Nj;QtXG0CQ6t9-FYrd_AS^;L)Gx[I#yQATY=Hmu_im]AG3THăU"j>(l/Z-uUjkXLhj*M83NQYa:R[lel=?Ab#emlIBbM>O]W>$LX'pBbZ>AcaC8$58ăU"o4>_KIvE#Qw[7LqbaJ4iCi3kp=aTKq4l+x*V,B.RW^4a(5a6CEzQ=%aA0-Kr]3oăU"b$6?5:EC[Ay-y5UU:kh6$LvTrXo+LCUW10kQ9:(6]NQNLBo5[:0NMWsmHZ=Bs;#ăU"P&2d48>maoR:K%^Ejn1/;)lUj;irS['5OIxGJyjCsc&tz]/t2HVSXS;oT<y%TuaăU"YIZ\f/A81hFEC9Tr3(Ya0#79,O*1Mkebh1Z3m8:,l=C<\[=>^ljz.:Pf1;.m,xKăU"Oxql6.dBke-GKok,J-?F>FiEB4aJk/E'Qsz8D*rt.\,z8\#<W5M'pdYF'C'D3SuăU"sl3Ah\*,V-NgL>'e)*v/ihT#ciwR+]m<j'I*t8v,Y+-4>bUCB*AOF9sx[r=KZ)IăU"t.X?r$3AC\p^>aPTC)uFIp^3#6E.z*f0KUu6W^]VU4^u0IDnd/S)<]^L>,J($u-ăU"?2luRHb6ajWD(vSsB0w9]<O91Sm'kVZ'S^MN*R,B-:aN=ydLf9OIu-XG9ogbg'NăU"xS&'n3_Ymd<=Q?S,Z-,AH?1L2z7o*4:Rx]?gwW<\z/g]an3]G<0IDVgtkalU0PuăU"0=_aA-LoZh5axL'5eT1tNV(q?b*VJrV(yg-PIPt2Ux_]n2-b+sr3#.8>*Q++j>)ăU"6fWW*CCW7(+_UekgF/x(%AH3BQEq.Rc']UY:Q.hB:4='hRikZV1rHN6PFdFth3^ăU"(a1R<+9d^D7EiLqhdD6Puobhu;4nNUSE>;+oU*9XPOd.[61Vf1Po21U)[AL?SG#ăU"48bGEI?a&.U>XrqPo3\9ZNJiqYp84p%m9jhIY=a].'N)1JYO#NZ&fH;a,O^5.^/ăU"e&;2KRoJ5P9;Y7ONM[KRwXW4u43pQu%KzdP8)+KA$0iUH*cH8i*\QQmG?bV3ZArăU"]]I3\dM.#4&30.T)5-79oW]#FJaEee0Aj2I:38bnuc#JE/aXS91vS('BoiTo/9CăU"aY.)6s<<t(a<0%K7v0,Qkis<Up<%ii.R)[&,tQ0AVS/Di966i__I04DAHQM'R__ăU"\InwI22bZHFY5gM1#L,E'o_x1JN>,lZ%BxLYA+DWJJgu1Rk>]uC[2Wm'FXP_*SMăU"8UqFNfn9uYqjn2fFaIRh%^L(BP$XZd.c6gxl,K47^Xbjuy+/YN?Vr-H9+2lY4*iăU",n8b)4b1;D+8h9GEG-ZgJ&oenrEnP,YrT/w%;e]nL#?9r7CxSSCqejY*[_uOBf7ăU"V;ed9S:=k&6pedCr-,V.?O81w[WoBbf#(ot_mN?[&v5Eh(gvaQW5qAAEu[fg?=JăU"Ed,\[E0'^N(jH^J]]ea8m7:/R:#\,nFotz\P8&q20TEuGCSR>dtoQ5A%bVVM:0săU"DVU_0,e5,DBByoH#(R+H\MdrgBooXHSIE:2Gr;S2:/uO4+Y6TY]M;<)*wm'S8DRăU"k0wy^^C06fDP^jpbMbs>kk$UnONe]S;[rT^\eXhX#p7Lw&jLTp6dasK/9KsCbBVăU"jWji^rR)DeZB3Z'<VqL>y;2q4K:hm&O9Vu*9:iIe?)^QitALq'dg39aEP6_1?[=ăU"uF0>3,Aoh<$kb_[)B.Ry*9o_1b;.jO4B=r$ow.f/0Mhp4N'TJ00BoGL3K#Av^&%ăU"nh_eC=cdb3J1MsCr<=M\wbma0G(qqs,[0d\'/_pFO>B<:fTMhfVelpYOWmNk8G[ăU"'EnF2Q[*RX*C+].rl(/BbA>[e:R/54]gmPM?%CFarq^#]QYjT=^]qZ$GW#]c*4RăU"&f,iK-le3#6-uCAdY8X\e0eSwXE/O];Zu_D,<6-4sKW/obDb-D$F<WBEYj3MNHOăU"P[G$:o?5ZOIc'd32kat)CV:%BU:Nj<.Q4btH3KVLbLkQCv\#Rc-JTR]<&NkFDc9ăU"sd:P6X9^$&<ML%XaJFq73sI4K-lN<GEe1n:9^mXSp%=0go*1K<gQBYNHS+ErdknăU"6^sy9YC?nU,N'<1WS'2*gEn^<B-$;s'W+8HIQYJN4_dlyL6rN:VwiKx?XSR5-+&ăU"jlj,?Z%PbXGKdpD^0uB-14O?N?,hK;KRS.-6V3tAA4OG*&S<T0JEnU(D.v,ObIKăU"nkqsE97)vW*06Ve8d:KCpNs9qQ1_9I,&],r_[EWYKA,R?O>xPMz]#Gm-RTm.<PzăU"U;6XnfG7k=$D4t=mOk&QG[dE&D]Hn)BsF-EO7JBr,/D<6&Zo]qP6HlR[bWJq$WvăU"kEqAQhbMl+h'=kW#_vA-W,-&yu8'CFWWtQ_nWD7DqY94C)bWDSWH*vnOhL&s73GăU"jgMgU/DbnhDMRm9/$a1nPL+0+Ao:rg6kLrN\cHQbS)NT/'m<Y#vBu%5AWIWB.tYăU"61.j__KTjK<=&4K0%>k&5j;;3R4C'Jyy+x]V'T<#an:5D>;=+-ZVwnIN/VF8ug0ăU"jYPXuxAf);,I\hKieV^ZO50C=1O*s8>9c.Y#X#IDZ:UZkXSx9##%vWnX9:ut=NxăU"S(ghde0EDR?g,U#]%,7NE#[Fr4/I>2P*hl(H5j.Y2gZL>2c.B_j]d.=uzHu);DHăU"sIaq.Gt5Il,swa<8h2)'N<1a5fZneGOj$jYGKSi>mC<fx*_6j_f4obqswcm*WKZăU"D(j]n'h%sQhe.'QAzI%=1i4++_\/G#vvfg0[HhT4I=JX^^Jf=.AXr/&)-**I[YOăU"-#6mpy,K6LJrQr;Ye^w.*aJZ(49ZjrVHw/V7_Sib&)Qj(hdg<lN0X#8Atk4H4?7ăU"A+NBWJ6EIj4D3;En=_'r'XEQTLdI+d^.SmEURh4E>3Z;U/DoHs:A=E'Tey\ZUkXăU"(z&krcaUlR?Judbtk[7]v=V4E$=4Dv=*FOp]34tDcpT'XQN>4JV<2Pow$UXOZ5)ăU"lB=_[QPLa3fR>iNesRK50'[.Fr8O.v4BM_A4L6+2qckQLW5j[2LecR,K?Oovr[văU"NCiJ(QsAG4>'5.%K*0nNm\o]hPKc<ad1Wkkmc5sIJ<1,KHMj\tqGtf4+-;39herăU"e5d#K%oc&7vxW[Hf0'Hjw*Gk1JIFFrX(kbJCVlq]:h-,R5<.)/xR.i0>*j:0pM&ăU"JoSY00=7:AF:KsJ>h6l.VT*jNI(Zs'=EI8FI>3FA(F7n?K8uD/kSU)8W]vYs,2zăU"8MW.sT_Q%.'6+:vP]na5m]C+0Cg\mY-A11m_+.8QA=L+m')feuk^*DVtq_,o;PGăU".DnjE,*cfB4dK6euo04+UA,<:gMFZh9?vXQBQ54<Pg$nX)JUFF='juGTsACc15UăU"_-IOoCk7FRS-Si/:_#:F/.%Xho/&h#u27^.wj\GvEr%JyK12qjwNPS.P03m?DzRăU"OGPT>0<go+j[QWtmFGLfe1Q]%hQ,*(jlkLSvVL0(#HMYU-z5$e^g[$%.P/<8D0AăU"t(beq'bfmn_G,kw?+v0q]7%<-[A7]=f,GDr:Z9*N4gRN7a*304hsJmwYkEM]?67ăU"/j:[^en6[kC_b)ghiJ>dXA4'f,,Yqx\>>hls./&y3$-BUSc+e(^xOD::nkC]s5HăU"H+WBipf9$BM=#6FS67MnUxG-P2G3fpR<HxwYOlK-1/r(ZB&<lUrdTjD6>*P^RC]ăU"eX&m<C:/#z]%S[?otG^+[h[8.l14namH;HLQR3Dp4jqjj.TmZtI&:wMS&sC+hgMăU"ielrJ;*0>Nh=HS*uEaya'lrt).:B)NnvdnsD'p4&Th1OYOVn(owTb*C'dUM#^CwăU"K;IBL])5gIdbFp\g<RrIDUZH;N7B;o*\(u*HY]QYVdfwjfjHtgZdii1TUl+BSsvăU"f5/:a7Mf6m]0Y2EBJKuu50Y+3[6*10,;w+w_(+_Y7IIEV1%SV*huw[xrt*OB=2YăU"Yd/6sbse,c=$YZgEP/5Oi$bP4mq:il\V&NC[Z/)Yd>,P4mu:ih[='fRYKVP*5F5ăU"(,*Mjx>'uv;$Cl/Ft[cj:aNYjjKBH\Pq+c:D]W56EUDkZP6EUkIz,h'm\CKl)vcăU"KKiZ,,c%D=2GJZk+4>]'Z+Ul9VCnkdCiXo(2mg>^]^3GkR#kUoeB5t&Am^Bh>=FăU"^\1*4L\er8n$ee?Qeyg,VCpUhzd(4&Lf1waH*9%62$OxgSrwN2,+MxiHP-5sYkOăU">5(\z&tGT(sHbJ/74H8PM2=4^oAq4(Aw.7z$a_I<kl4EZ6ijoNwLlPSaCC%:ppGăU"43GWC&zJvR0W$FDlxA_k]h+2Zur_/'A(-fBZSwN1f6k?+>KqpEktk168U.\MSv0ăU":ZaeXAwuVka+MKAv:<Bs'i/j(Dt[Jn^5HNctaYl]H=)]y<TkD#TBUzc]02%'kjUăU"K&wxtfiekj=VjFXgbMP(%QU3%0ZQy(,3W0Tw6g3FW2?.lsbCC),VUSQ\D(i+l;BăU"-J\N<08H]lW](mXg3(Qqg)$#8TI1yT[/;_-r31r:EaA'qA+ajthHxEvUIo\qV&PăU"hC7BA]OufWQFqm)r'k+G\nQ+uR6;=;$'.e,<QEg$&IR=iFK>opX?Cm%boQ<D3g4ăU"Q=,Zpm))nO4'Rlk>#=?9B?jF2HZFE_$DkNghT6b:LI[6KCMpzT3-zH=-lUDDlrQăU"4,<*Qmx-4+FOLBgdFkZvNwF,jWPDqrGkH/x\Z'6Ga2o6EEw]ldke6H0A,iRSa<9ăU"VZVq3=L^Hq9A.hY_;FY1=eo/n7Nkd$4LO5S>1OF2Jib6dFm&Tuj<7eC;8sp[e.uăU"t/<iBJswJqnlVVqvheyU.V>BxY\t=KgS'kK+'xoQ<PbP5)*eeAJ0JyAUolct))6ăU"x5X6J*N*2jwaO>/kSqlXd.:b-S&6IheMkl_5spL-,uw++=,),#Sf=3b;Wm*_HMkăU"Zm]n.a-_Q5&c-XIK)jG(mK;tB76KTQ9E0gn7_^;iL0-R/)O35qT-YlF6gj-aK;iăU"Ji:;6ZJO(52ROM6=9^mE[SXQg)P0<wmPtR9=uDluxUh0rOkHGqyTbk3UEu,s)(#ăU"[u1i_jf^J?Q+kwrko%9U996p)ot$A/[IHu]b9_5kC_4],?8w%Tv:Q+ZUOt5e*#EăU"m3Ft\U]=t.gC%-7+Y&tRIf*NTdN;IJ$>5S(hpAQeFffEm[.Q,%&Af]*(CW.C;hFăU"[K8cQ%;4NNW#[1'LiiU&ha3iBIBu6gA?-%,eY3'6N(=-WY%]*pW4'*I\H(cIvQFăU"JB+GVa&_X.+7hV-9T+WAK8\Bhn_oKR:3C\9c?8tGGBG(<jM:SrO^<o<a*E^$PQ/ăU"e?BB>'<[SEa+AS()<:S#(,;y#SHe,[j^)Tf:Qu$ujt>Fm-fr/Ig87S\d#jZ0kuQăU"rt8FRsnCRMdAJLC\,Y.mvg#]BTb5oEDeZr#CL3)o+%qQj*D)+dI4'%&URbaSw;OăU"gJUDf3W=5.>Y5NpAdRNK&Ow9Kp#7d2'>ter/1J,8I_mL5bZ0sdP]AaG'81&BYk.ăU"h?T8^:V;65Vdr$0dQ[DI7z3e.&:282$4z\T_O*E3>fHNn^hi4g&li8Nkna&]O$8ăU"ErjUwt9Nw4-SU5dmac#t9/7teY6=#^2ObAt_:ExTI9^k]jXxLMfP9A3:0vk9kegăU"%N,u^hTFfsKeV]v[+uv_q<1$,4*hCDVrTisPF%&Gmy,S'T(1iEqG)CL#Ei[XYI4ăU"4+SlO=EL%?J03PR5%QXX9A3*O6vmnK2&pJ+KB7'YUI6jeG6k'6dicW+]=FsU3#AăU"b[hA'^(5Vi^7)8byof]\v[:W]KKb]4C:qw%Z16R/w>4&Z5=q%%ZCAQne$.UhE%YăU"X%o]\eBGZh*cWlLIVp/'zOjt6=8#e9(wGMwN^D(Zo_HoxbOTkOc[wNp'V^U0t['ăU"&F8J;2r2Lr;d+bjGg,^U>Dp1m]uYp;;[R)c+LFwK]\$qE^%a8kSlrMlXnrgl3RzăU"M+Qbdu-<E^R-;oBCk-acF#pFFGQg-lw\-Ab?FhyV:%t9CRSlk.I-K/fcb'.*G4]ăU"O[C[)+<&M<#95F0wa2%,r<nTrj2pal0JuWq^yFaZ7S5HMD3E9r].^WeC;V/(s<&ăU"Qo9:fLne1J&f/c<Bh2^lhe$S\Ye]uS+(xDe;t+>fpIf;LuZG2Y'P,Uer2i<u#&yăU"v)8u:7v26UeF4SrRj&r(>]:lWov^N/5PG>rN''aZ^PfKSnELHeK>$u9MA$O&/ezăU"56M$DUk&;RsR0HaAy#A;E2Rk&^o7U8;S)gR5]#II>H9V*kHh56IBD==%oQTX[JqăU"<qR$z8\qQ9*'E8[Eg)czyVEJb=AAL;lP=-POle#9_A,#=m=7*II#'*6kfr=2EnAăU"##*ft3Ad,mX/AM-t9HHj[t,6#Cr<j3>fA,\q]QpVV,R[Do,fHLx<7eM1el4=zf>ăU"lsICWE3Eq3e?P48J8yNI63+a+*Sps$#^6XI^0?E;6clRQEqKmNBc1LhfEKB*0e)ăU"r)A6EDBmVh=*gK-->-_sy+RCydU_&yi[R&HRMn(tr%QI?[2-SZn<xenKn2-:iR/ăU"'CgT5,$TDv6A2feM5QHePCfM)o8Kn733xe0PE2(hqLkIYJACO=ky.*=8(9#7M15ăU"#>gFYdlR2kh5SzZb0Pej'VS.tX0hWxF:B;&%/,s[n_=owp=sef^pE(^6#6*15hOăU"mLzb-)YB$%[O\*7>/+vOWr)sT1Ddzj*v+K]nZhK(89t#*d:,Et3L?sQsJa0Dqx5ăU"L#N6AK.T0(blm6m/_2i+JqS]E*/MksZ7z6svkbkOSQqbk4JJAJG)LrI-t8Gxj%=ăU"R-[N3g]gE*^;s[G'9:2nV<&33xRz.H3b8;e#ClB3[06Q*$Z(ohH6D8)qbm?X>JYăU"sO=Qot$gl6)3m)YhJW^mAlIGlg[ha[Zb]n$7c(cIUpvwx1l&BD-b/aQEQb5[F6WăU"LKW6d5_em.v,9[7caAmtK;s,jjwCFMan7HmkRYn-i$''Gxi8([v.SY6H6?E+MLfăU"9%hG#LM5n0QkZ(H7+)$E?T]xkK<;/r$27N6c.8NnKHND&>nvC;S3q5jN+Q#5VvmăU"QWp]6Lqk.F_Wrxd,Ah;7SI824;KmRY.XUj6M:qFH3fA]f/GoE0q7yNB]47-g\#5ăU"8>Y.)^'^+/=U7B-5-<Pkj9K7e%la3Ec)=K#3%[>-T85Y+Pf2e[EoHc>=d_=$q5NăU"GF58J4\i#'P(ihrJZcG)OGHyz14meI95amZ)ztNSjGsMM1whN3)A[*GJJGg&'cBăU"_OUR*fgoEN'K7%p5.BA$%r;0C,;hr/1-;]=P7//Y_&=SROVSHPg7&J/GRBiRCWZăU"2dQkr4^F2?lQUwDh)&h.gR#A5Jwh]%m=8MWHXXd#%=xwg*kn;b);6?j1[TA>k>?ăU"AD1tmS1VTGVU71Em\ksii'7F%4+&]6xIIEBZfnfa;1'KmVBXQDPD8^0DaTdf6ErăU"<d)NNr.Mrv4-5&,eIwT2#fF8Zr,K&B7B>]L7#SSHf?dca:HLCxtE2A&f=x;?*=YăU"CdpSr7%U,r5mt&fH]>N7Rfc7M,LE;:o)fuRU.,rb-1WxlXMcnGY7CJLH.8zG'UxăU"\t<&[YaMU930:c^*rF0afKH;/sL\\%OmRS20%ugZucEc?AXg?Y4DJVJIy8Rv-/lăU":sZcfXU<AUdvrXRX>K1Opr(2Am_-:e8hR1QSHQ91<&\JMO&_<O2\9$NR1NjG>DJăU"qC=X'/^%I4VB_?*CXU<#u;BI.SN&8mMpx9w4rkF8764'pMNc-Zm)NQEK?0Wlq01ăU"J)53[Ovt.2%kk.f5YYf%+h_2<rZH[g3GaeiY2uK*?GheN?L_uG1?Ua(AQF2Z8MGăU"-gC=#Vq/ET/BIQ%a*Ua$gjL3B0TQ2JsTPoU2[,WW,5G\PbCQYxui7PkMP-222q)ăU"8H>8QI;bR;b=O^eVUo3Md2??3,#_G8(3.hgNgu0a&?pzna^sEA(5t#g>JtX^IXFăU"'9&''_[i%5#cJV-D-'8>p,*7]&0]qC[rT_2Vx-SNOr5.fh;.CJ&m0onqo1COqLwăU"b<\A,R,fNrz]'k\n/5tEXk_[ag'Am(n$^dhCh:dt8rQ['Duod4dY9Lksqj1GlVOăU"gUaRY/[?2in?JYiCfKJIj]Km%>V*Y\d7)W(X.s(RvN\/Jpr$.nD^>iXevTKG7_BăU"%i5sGHq)Rnt;0x<WUvBXH==>:LP'4At]tnmrVj0%tD(80JNDFU(9Ep.f[8naUQXăU".b\x?2T[-ddVi<xI-YOU[rQ(^Rdb(ZvNcFjmx82UTTr'l%5%]c0T<RaUxu(nSBnăU"9?_23#Cp+PzRq8o==QPhKO154s6+vCPMY*(]VuN<1Q%?Rj,Bge2A$dZudgH605(ăU"AuOtJoQIU-bTt??5hmg[]<u=RIln_^NUE%?tD.x40/dR%z+b+X%;PR_JX\Hh;BkăU"R[J+=Rib2BV._I.L$=/x$NJULEAV=zd8lCPAXwX[Dn0>TC3Hg#R.D5]VVNK4J*?ăU"OE]w++>l^C2.$st^&[O'pKOvjc3wcClCv00E:2&1WAAe,RGlme175?)YNj#$FCMăU"i8n+Dx[k^\f-Oi)S%pP4HU%geznT'i.Iq=T_UjS7d=^mIx(HPnb'uxqJhK0vid/ăU"zvDh<a:q's?KUObVn/w$$My05cV7zog<N3F>N9HXx&:i3.UJ0=QB9.eM,6o43_NăU"'O*_8frF1VM>CZ6S%l$G[^O;NE)-LpaBg=Pw&?1iCH?;Gq(Tue4H?*Dn^Fy<w[VăU"\Rc'3.o<7+#v=U03N)?l'T_lDq^#)&-5M%VslkAWi0pD#=Bc]RY;&KOfh<nSK;VăEND SUBăSUB V8ăU"&mipU=JxJl?,&YJ%7;cIqQ14xoJl,Btyn^aGr'cv2CNmnGW'f>gFYL$<ar'i,vmăU"30),\sFggfFm1v&pp4eE=MdlDD<#,Pl'^k]cc^oEO3QIhERN'1V=hWgUbPr'&6dăU":n6K<7AmvV&w0oRnphcSqPMT*Mc/#&0X')uVFovN8_0rej<]w#gk2'bCKQs:$TvăU"_i5_R[pT3a]A%UcQ0uYmtGblM/i?mr8;_$]*0:I1oVvr8_V#cdq'v0Dq53mBZlTăU"J.q\?'uY%:C(F%hO\e*AgwLd#hp\,yi7D(iuyC(>(L=.3>3E#wUKyLU3glIEU3săU"N*UmUdg$I]WZ2FOCFrr]ufi;\klYpd7yfhVC1Q1X.82Q4L/4]GEAWuDtIW#ghq\ăU"-J0[V+_1/=7Z_=7eH6LEqmMu.6p[Us=3&1e5<D\(Q;)jUG\D%\Ab9aG-bFqI&MQăU"o+W(.4Uf1Z9;JfJCt=#NBWxtPu,3gRc>-h.vwSLJh<zR6;mx5U2udOFRU?/,?_aăU"0OT#xf#*vWj)*,^%1q%mEC1S5#4=,wIhx1t#/m:or+7lB0K6J,.8GnY6$0f<CIuăU"nFA5/-Nd*HTt)9v<Fo*ra$9rV,P=:\9$]>0sO8Guh]0Ese8u=Q,pE-_d,V8s5pfăU"$EFB=cugfD4m'xBW-[%i+u4EOFiZk%#r+5]=Vs3f29ftXQo)c$^ub=w'KaIs&ykăU"[rHSmUp$7:kw%qf;,WFrPIm4YQ3E\^$U:<2V&K3w:3'fv6GZGN)5KrhfeO3)686ăU"j#uL>f2/5)],\RqB8jN0n:(s)KB:hn%8X/IeFZX)>(Jca/HTRhDeB7(tEP=GD[EăU":TqS0gT'dC$ZZ8ebsB&D?Skcsdi;?/ol*DQZH>eP6k(<RRTP4EU4,,>ABV2D5:/ăU"X#o>ZFbIXF[q=qSqqQXBb&MXEl**<F*ve$_j,il0s0EB#S(>Nnrg>rUNWcK#UOkăU"Pu$lH5Jm%dYTrAhrMWPj/$Xx6'oh^f,#,U%1^38Q+4<kA_$^Cx)[OIDFbw>$pr;ăU"m+)<HCV7=c-1R=c7'^xst:\$6?Jobu^Me8))q<?xL-6Qi\xK$$3cVx6CF%qjpDSăU"2A:j>_a*W_V4PF-w/]T9-y*K,i70Rf.m6K;;/sT1UffCBA]RYACOfujH<g24nm/ăU"EN10k-49b;e&x1q0JN)F#IYK%EsKYd>cG/-$QM63eEK,FK&<kr=Bq8*N[Y%4G>?ăU"[/<7Cd[0]^s57CD%Xt\s\(7hoxP'[9heqK/\?3R?irdF<#I\s;jEB]26=='GWbvăU"]vGVwnkt(SS>/1zbRp$vtvh^7%<-#qhr*iQg<3[0'Y=Zi)B_yS/[UBYkV^6J<%jăU"Gm*_f.G[d0b+=&Gvg_U^Yxh_sFKNOvaY598%'i0d7k*mMxOH*]G3(BXz\_N)G)găU"JQ:Mupq]H9ds'R1Ih]D^l0wY6f6tsFNc8O;a'&KZN'RF9+Ho)9C,^2%n%3>oeQZăU"U=7YGdj-_'aFLsIX/=H53OI's2rEKTrKNBXMF(^f:5,N&V'g;ah1J$9;KE*ySYhăU"rIG<D42k$dY&4\8TZJP)UA_:_G4BP3JVWqx9BkiJpD9)OL>Cr&$aLgEAs]BLUdcăU">3,$6ptJcbLL4*O67au>.:9:Gj.tOr&<Y_RcPTv2frw<9];riqOo'Lo&9^0TIFnăU"gaOFdzimdevvE%KEE(G$_pCSWR85J4*YbY]kx.Z_M,nj6muE<7r.Yt&9uVK,fFtăU"ZV<x=AV.)M1ARp0*g%QPwSHsSt*2v/0zGZ>V&-PF)/g?TpoUiWuDp4AH$RHn-XRăU"Ue=(M\Ej;2'Z_/)h_k&#a.6HRF=YlC<h><Ce$k/7'kifIjZI+RQ*jBX_9%0qPZ?ăU"^LkhJJ[M#d5h(lggyFM1.]=cDn;tk%cNX>7Xk?^y_hQk)rsAA#r'P<9NKi_5sX2ăU"ah6kn25C7eko/)_Vyqs,f#_+gXlD<]EEn-9Co]FFYVn7qpZFjel-9?D(zJmKm.YăU"-*%)[nX%d9K/Q<(e/VG))r'PB<15r,p&k.DVtPI0Q]3(>=;lP:18$9zL,7pC6[+ăU"3Q)XGRe$-UQZ#*ECf+u7YVg>;+7$vo;4>#Z(XYpVv;IrdpZrn'^D+1iqQhd0kb^ăU">IZwjOncQD[:qgEfK5Yxn6q&P1aE?1Fe66k,*#0]h$-geF7*z8$E,>nId$i\BjcăU"_3v-'EpKD90iXZBD_CrvEE7Z$CkK^;ah)eh=^kLV?'*T4&S'PJ:N),mGff+q.HkăU"I]^zm1qv&iKLUlb&?.q9K2*ZXtt<PlX0cC8\37UQ:ow'f_/+t+mM]B5J3CJ(+y9ăU"Q^BKz-[:NQMZ#.1>S?rR2<0#X>k((XQBO)1h&%9F.$=b?3lHbgE[;X0Y=fdIt4RăU"*3dnkWb0ZmcK4k'QWw&&,ijAUWnx2EDWZ?_e$0r7Cf2h#y&xy9'$?_4K0/RP,<2ăU"3uG16r-QOXALMC)5mgm&bV#I;kjJX'O%/Jg,dkVXW\FQ1M&dNdLMaI2(=g)[RnlăU"Yjkj'++_*$/D&2otfq;o4s)DhFWh'#VrJFoeZe$RRE*1S9$nbiI$dmYQ+A#LkCZăU"IaVw<1F58ZI(*9*Jc6w2]QPM#)o&u;h(mvRMhfTo]4Zy^B%]:1=>Y,U&$G[Y*^KăU"Eie#65EuhKEu'C+f,M3(AY-m]I3F^AWgT4ED5[eka#/'[P3Z?/qnGu$^GKg7_<6ăU"RhOQlKGZAsd4]>>(]V*t(]frVMg$Af\Wbb^w5+GgGDWIuk1X%k$5WPT%(+<B:i-ăU"01gB2=C^d]zaSCGrZLa]cI=:7]8NHR8;2u<Q6K$j9^iX&ECGNB5ob&3H[hA0R,6ăU"F-UBn]E04;rJnUIA-KW)W8R]*mDONdKiuT>NV,Ud']>'YQ02OQ+K2ltY'+r>mo:ăU"$+tgu*w8mCOsq/(Yu\mK^+8e]P7v/$LbPtbJXiiX;o8*KXt<L$(TBKtZD;HHkYlăU"lZ*gwzxR'R60PA-CV?BJKLA/IqX=P.Z'Dx;FS5=b\EMkG?LO((gg)51WajF>(K_ăU"Oin0/(p*WG,5&3eh1;4RF;4kV]F<VUu,8ZNEZ17GZZawBg)7T$oQ]/,6Ranua%qăU"dqRi)65J0rV/?Kv.(p_7Jb$mT=2/Hg)%iN:Ng>&]J04T)cSE6?Oik%KiYg/.J9BăU"bYOc]f\n/$2$&Nm?-</qr4x[:+fAIGr<%?,lbzs03[Hl3uIs%KYWJ.umcimjif)ăU"sTM(m/*Zr:/0[\7.)40Uqe>5Y2Bc2DX=7Y[Rct%n65*dfl[TDm/*0i><TDq$%0aăU"0nR7U]ZEpeT5fb>%tI4;GG46sByAuDR.0)<HUd]1$xGIGdrZ$ul.hsIrN2yKD$<ăU"sRv=Ca;;F*NAi9OfZFy\3CZVDc+Phea04r)kN=pc8WcetWox>uk^aau(8WuuJw$ăU"Vihr8.HUNrLO(2_E<T&uX,>6C6AK(T#kc4>^ccXxN?xv%B'wL1G>/t#X'wFP<HdăU"gES9rOs<.m/HIGA*fc]Cb)IUAiJZDg3LG+f&MT2.Q]zGhuG]4p)PUmf%fC25*>?ăU"77d/uq&OX.?rv4_2JN&]tDO*XjlM-Wh(w'bE(Gpm:x?-$2W\T/^s)\'l6fe?=XrăU"efFL\:dD[^h[MGBL7UC?C1urNsU'DtB=pyocQCuVkF(p$&zm'tm=?0m6>GBIU=iăU"H(L&SJm>UAYdM>QCVK:qpID(G(rTcQ/5h_U,M%,EmB$X3eneSOw0':Nx_T-3hk&ăU"/L<Wl*B-Dek%X=4n<1)NMqK%^/g)R,61FP;1Pt)O.AX4[SB?SC-Zvm7V+KDS_e;ăU"3\&QX>aSOw,A,[SQipVGIeWBZiGu[<lTjhveM[S''*$T,wHKpLgx8#k8YHNQ7A\ăU"Sf#$O$rPfjfuhqas)8gTqA%^Ft>Fa7$UdHK$s9XS6gC>zVL7qjS4GQds$-]:oRPăU"?f\0)<5\546%TX;d9NnY\SKd?1<Rj&]/q(]ChkZ^Mv+etDaXp]rb-=#[Rqt=CJtăU"D2'hUV%mdmMwa'P+OFF$^5z'nMDVOZp^0A0p$4v.c5=Rla'Ux_cZr.NrAB'?,M?ăU"n$6VeY$>my=egDqWRyC^1Z0'C,7lAf\B(slzn9*e9gv?(h/EJ8#e:O?7Q'or<cVăU"I(nDzn$e-\]>k?kHTQSHZ$YM>\ziDmE[IqUhq]qtJp^'S_lrG>2zhGfttV?>3SdăU"es\H2it%(W4X:pst&-f8]cKNhbX^dm$$/i6TsYp1HqX9CsVR$Ad4N=/=P8n%h,=ăU"NJ?V/UZ=Z1A)hza%=NZ55V%$#INlIu0hc(E;D'(f5W8.T%W^BSMx*GC$agy#<wMăU"EYxTk_P8096:JUN'yC,EPMD<<4DT3Q&O3&GegoDj5<z][OYPTOWUtE+FK06?NSVăU"Z\.Gh:6PwgCY[*lWOS]=C-rXXTmwC$5t<wB8mRrH/WoF[(nU$rwlo$n]#dH[RXlăU"bFW*F0k)=CUR]#rcXVpN4N2:kKeKdILhrL$H%KopE,FRP3B?^Zlfwj;L\hgc-;7ăU"n/D&gilAHQaf>2SQ8cu6Z^9uxlL]BPdZ6:XIRn]3?weP#=uMgv;V#Sf%sW:at*XăU"t3:vp9#$C'TUjFHuV>zR0_CCgiLtQnR_D*RVYa<FcU3f9jI9[/t1=Mww$)po(ooăU"n<dwY9A'J<IS%dk?7p:l&FM*UTjJZ%h(RP>DvajD-+JBX7epis]bvd:udF7<ODsăU"J)Q^7d8T=F'C0J*O\nKna=<=Do(\au+^v#)Gp6s=4b9n,J^yy:/hKD[1&$&R0=dăU"^MLo_BZ2P'gz>[JK.]P21W5Hw$%#%V(WAdM>BVY=>B_^=dWI1R&O%JDZ2oD*z](ăU"mWU5PF%[*nR>(<8a2Ai(f?&g9G*+wQ)=$7Q[91K]d;&q[=*boeC*qUI]H+J85$)ăU":LEn1aIR.,iZE[A+.k5ZvJPA*-.LTe.jt&(mqO>8T+*>-6wZ\>(vPbo^<'AD?]0ăU"*\r<d\2lJPUT2F\gG+*gg)1E)S^UCAB7HVgKK;Bi\eI?nG#oEr[Y3mHY2E*'+UAăU"*.G#sv071?[i[;Hr:.F4[Y\JIO(a[LaE?'VeURHg08qTYp][rz'\&kWBri9;tK\ăU"He;i+t^$*rtb#\40-;UngF6AP8ia14NA;hcT#aTj3,15Wk)iDK*/jTFEUAPm,PUăU"V0a-OO9-0mgX5'?gs-#Q89.ej+whlTYSUKl7GHw4FvspL'MwWq%:0h5p66<>_YBăU".5&15<S4yr>K:ekfQl.-ejGHBq=7GrVr].+BN2<,NJMfDLT,m_L8(u9rt=WWrltăU"1O(CORi')qa4t,bzlMj&aaGPZdd03tBYB\Q=$3c^XTm6b-j^iTF-Zrcu_n=)atBăU"B_ZHh+7[Ta.(?:+Q2AbzI+JLw.D2O)OW\[G%th/j7<WL.UU5$H>qT.6SlRa&c6UăU"bKjs.?16$i2THi(u-GV%)Xg%K1WsHLQ[b1=sbsC)Vq1lh=i)De0mat$A$WdkW<&ăU"$J-mU;$aMEW8m7UM#Z#O,nNSV.3k;xQ[/>7kp;ZMHQo2dfn0a0(uMg]%2R[T[a7ăU".V1WHrWp&HT8Un6mbQ0/5rnnO_m8.tX28:JT$ob\hn.?3:K9\&x$bX+N^ZnZ#ImăU"1gX(>c\b0>a/j6?;Y'-<8mwZIq7(Ga7^Y^kMt$pP2N&+(LMbB$dr,v:IWksG6qdăU"%VRHK<jui2e$Gr]a%yTAW#JUsA%VW;-4E$v6/H:PSQjF<D',,0[%nRi%)r9(;ffăU"2^m1GzEvWVdn0G>VegQ$VdfS.K7M0aQcJ7d/%a7cj::QoreQm?7nL/W(A5]a.YkăU"u8TXkUpaxO0]54cXz8Q?M_tQQS0vvT)+g#\c3v0Hnp,UZ=KVlj&%IYHTjTMsuGkăU"Zp+9<4zH8Iht[#bn,nxl[O_MpOVdCaZ9Kt*QyduIT:YNQJh0C+)0Q0m.[n$L0_tăU"=$re,i;tTFYrak+H=P,UIDg1]0?R/,*lEV_m+r5(MU9P%8[dGQcuW=St'(2A$bzăU"/ubn>3B(/A*rxBTR8)%Br8'yJ/h2Zg%Po6U#VkNG/BF;2IXX:/D0q'ABNaJU;^AăU"%+rJQS6hpLZqa>QlntrvO-ONsT+Oed;*JJ-AzzpM:-x'sZdnYITfie6K*+m5eE(ăU"rLjFuY89g$-kV'Ho&/<JRe,Ip<]euzm1MPRm.tvMSx7=hlDU8/Vi$^,fB8V]AJ6ăU"U(.GC5>Z%CrUV9WO/Y7/Q.(y[un2&z7HNN>i6/7l:ue=3F^5].Y:,\66'g;$I,găU"NfJt#H?BWStS;-.G9m-;trd9l8d)>fXl*XCDD:XBGQ5zlkLpUmbI^pRbXN'Vip:ăU"sZr#%QXgYOy#cph*[euZD2M8Evro)1s,f^gDcQ0bvis[Lsla'b;Ka<&&7y(tI:PăU"Jq0W9bQbIV*GzcD13;2Z$^v&w,Vj-'5-Kk,)6m[yRTpG/K],M;%:fhl&Qsqy5m8ăU"S9Wbx;\FV;pv>MO2(y3GTt+a/Cf9x96*V]?E33yjYL24(=QD7NgZzj660s%Z)%$ăU"oiZx=;fZ='jvXl)Z5b#6S>F>Gwx+ScN'u6ph)K]T'd(9b$XMz*94U%J$o6/fUc:ăU"pa^vMz^\kCK?4%+:BKw-7ML:oWKcLaaESHi6w/J-N/rCukLmqe'M_wh$ASutE%xăU"/-1:$n$P<K2,ILlCDW9&l94Xkmdy0p#FUwCTIBUh?K<&nD%p_Q+'H___%+QC+WiăU"fJZ+RHV&8-WkRREZlSkB]:l[vq->.9PMxa2*WBj*8hDNnKDnSd2a<3jd8*eDH)QăU"j#1_n(-VIwtQ_1P/IB6BkCTK04Y^t\h:HlWlUuO%_;R:V^b%PKG,/RRkaNv(U_lăU"tSa+nya>sU4O?=Ao/s*FW%q_a>aLNDQSS0r\cSbeQ:IkLUii.xvQWr5J*<)Y*9]ăU"Vx/ja2cB[/,y>f,I3AuiZ,H,(>3n3b3OiD:%_77'ovEUdhS#V$nB?xt.S78E2<AăU"(Ti8UFuIv*h]Fyr_5(/b]ZhcgYMe7j2PYMac+8hdQ_)qR7Lmsesl[qLs(xF(E.%ăU"'car,fSSFqekr^.o#vC#=9t%fMG%86HtD8Wff#8KGD5B2Hy,jjYtB4R:oMbCWzbăU"2iRg)#P,hJeF-P)j-3U(DFjU/9X,0QRPqmpAr(Dp6#rt6GZg2x?,,WZ(i?QT#fHăU"h^0sX/T&G]qcnl$i_+>8%4*YIg*s(p<(lbEljBP54O)I9*(RIE*n^-ylLl>/:jKăU"Q(wm5>Jl5')-w\gsk:X>Zh362Iz*[MQ4H7;Zppz=;9qm=Hs1_NEIR4[+1Z76I^CăU"GJeg&p%=E+zVrCcD(MDtVhVK[Ns:d>(C.]LLVw.NN_iahX(eV)uf$;=cn#G?vMMăU"yKbFB:$2/zuo#Me).lSA<D_BG6B?ZPupwNP&zfS/\Uek$Tq%j<W_2RoE#W&)8vlăU"$b+SPtUDfv3MRKdh4HD1oLd\AgZCn$]4x-I6Zw4)Fq//-&B<t()+F<CT*Js8qx_ăU"(Y\vE(gl;im[V+C^c9rP?.7'NNtCsJjo^bu?$kzJu;5)WD&BNaRedPua&Xa1D^băU"dLZ^itjuG3/_E/.]u&SgomRj3TwGcuElot/7k<P'x4yyhcrZlQJL*Z)l[j&<K0]ăU"Tb&8OMOG/,mAN,+HMIR^^<$^I5JBx;Z([.fEss;ND1[lT5soKto#?Xs.BDzwhU7ăU"/:-XU90(Zl6x2r2:&msx&D)Z&t)gGC4k4uU+Rvfv[Lql]schYM$pPPxm]kh&2Q%ăU"G1PN8</2\tBH2dd*HoqBZ_wRMS0e-+S9SK$Kwl(8'upnx158T(CAA9r,KG,]3[lăU"GqbV[Swf#Nv[T2v46r9+,4p9y0odw8*dcZbIaoJ8N-6.27k?FN3p8x,0FsVqi4_ăU"JB<B3<>uSZDPIDt%9a41sO<nFT^ZA5racZ7?oHc)$zq$r]J:vTx,?LDEj[J9S9FăU"_.\INdL,dhrdsTIqtbRkH/9j^KIJ+NxJ%.(SA/=akPCYHCu_('lqn')wB0mAMi4ăU"xm+lF_<-gTZNgtB[9J?xuX=KuD<y1JFc26'Unhb7$k$&*_0(:Tp'pr3hP>J..U[ăU"&Fbop]2\'[X<A8HRlkIX0B7K'Hu34ro,v*V;<Y5>PdN7*/djJ%qe31sSh\b,$u^ăU"9;m$w-7Hp)'D%\'bhGYK#oGgjK41;goK5]h.$DbJNrK9)U%Dgki/.'g(G184iTIăU"1C3Y6s7W(8_A3d]dW/Wpz%u.7MTGlcGU#^%MYFnb%gJlD=S.%J]xVE41;5jVXT6ăU"ej.i/)C74kXY?_kit._YJn%ejtqO-3;C>71cIDD5N:S-oQ<A.$TXjLO>&GDdfpBăU"9.\R.%D9Z4T]of3[Jm9;bh\Aj\bZ^,6p\#*[YSq((7=k7]d%VW'I==CDUKHbFGgăU"Z)=O#M^CylS=U$:--Eom^5MSC=:'KXLY^=E6r+GS3kdH;57sTsmGYYZ=+w08aUhăU"WA81??a)Fa$*cl>%_M9ffQ85X7I41Lh8pauZUL2_=cA+'NHY2:-'3^tdO0cUhs3ăU"VOKJdD:qOD3TC?m9JN2C4=2Ca.=5PsLnLShy5x$qg%i-VxeX(HnvO>d3dJ,Sa<2ăU"P/bg:m0k$L;/WF*cpTzvDG)YTi+voHPd[5Z=P=tDT(pO2>M'M_H+?Q;\R-<0FqlăU"zfCGE1q.OXC%z8iRpnap>X^B7MPdefdY3aO0=6.'q[ZZE1'l,8c+48-9kSl#\]&ăU"hkAc.t<7V.>rP%>b<,:'WBuC%er1e_[*1Z5Ov+aU#9BL1L/pL%9C[=?LPTMA3<băU"k_&DJASF7?Oz5$ZLG17eIcr7GHr3YaZ3hW_7_,h;j7<WW<V'7ajQi%9w%[$G<=măU"Li%VQ1CQzL'Esy9X]oLoa&*&>MQir7;v]+7n_nGDFaUA^ZUyA3V1r.(K:--Wt(&ăU"YH$$An^v':F,Fs=$ut=GE(rvS9QB;Sn9^.dAK4woQawLa6.Yt]N2lT$P?=RqogFăU"Kj([/a9(YDJ_?kYTKRWS%[:0]J=_5^;Swby#O,]R[R#Pws$,.(S')uqC?r5h30YăU"<77)_YtG,d0^WSztRG+)+f$OD.VAzOi$'eN[p.f,=;h_&Iv+SDJ>ekF:aT_59b6ăU"8Q$XeU'WG&tAqddD03JAlTl8d8bBeej_UmL'-2&+O9=r,HftqiuD8vb/<mFmw<6ăU"gVf8:iih+Q0MY,84W[Ki/,oOQ0r0-B/tpQHDcaR1S9<2doY:2X(#Pq,^1S-iZBdăU"^u=OL:m,\=ZQh5<B\X,nM$R],e0fY[F'd(Lu9rtr7b#i?]flvlx_Bn\O%hBHxezăU"OY;M;r,\nX4)S&_:ub;^ERS6(&12ZCT>JR(O8x%Qgq,8d'cGEZ0B1+feT0*QV=5ăU"U]4m+P&TFoa,o6QUTsD^nBuO/ERAr=QN/ja.VL&]YZk>['x;YP-#l<6(_+yKH^căU"*r5nVLgWJKCfQR70[juYLw;cRT<ez<mWjkR0M+_(^C<DEX^S$<Uup4-albI'0n)ăU"qK4BNSkrDSU;kF53Z,znrkHs+CRztEI,yYXyZi)DRTSgs+R74U5N$IqNbPfWa>$ăU"re.CyF)Mjh<SXGT[AQbayimnr8dfl%KjpSYjuEX?/\B;+0,kTSIB2vzrq<%7JMlăU"R9DT7g,xV(6.DQXry.LT==+F-hs+_FY/a=j#Bv%slPTk&)3o9^G.]&Dhmy'3u^1ăU"RJqJ[*97?Aj2XeW4utP0qd^C5&TGmSX^qb=oo$QJ%F6:TH_lUqj/X^c%Z+_kVZFăU"F=EHs.maS'eRL=AUWt(FA#Q*EaJpo\H*bjNMxS(Y&7tZ?7:V[D3ghvPRh_2KyH4ăU"cxCY99eHj?/'oh<02YK)/Z&WQnQA3r9xt?VE:Lz[0a^Z)ru-/6*N<oXxfd4P]PWăU"s(?[[zPXfe_LRV&DKcc_X$k\RdglZ<;sL6o;614KFi+Skwkc$/DH\*b1dys5e06ăU")8(O^o;d-f)3^Vz&(o3Q$%v=RjRRAjJ\Du_bVm+PqB%N*I6DHd?W5nhUT^FZQGGăU"=i=>mr<]adq;vLAb\:DwTjo/[Wo4wBhVirqSwx70s61X_MWdLSNCV[4HqkU]m&3ăU"CS?;32e+M)2Q#5c*0u5Ex2uHpr)Dogl-k_ulD\WtBdT>$APA;PYSd_zNm&i:R[EăU"=zepMph%Vg^7c;3fqJFEg]zFk^$0a,vi_5AI&_-tL%onrIs938zAVm.(Dfsqk/[ăU"s8cMkn<lnm]g4t[E>:#QQh?bO%p=W)Y.ABF,luin],%Zwg5F(KwOZFm_qOAqgBYăU"Avc#fQI^2B+9zK:yeo3L(^0.kS5dPxeXGLm]?fsHrN>Qn953i[[#9U79s/k:lnDăU"(a.B:%_U^m8ltcB8xm.K)>oBFbr_BAG2kWKFWkQb[_gmgXWMKyK3x-7L1&ky;6uăU"FZV<582B2CVFg;c8nk(^=v-__\=4A+l:>:]wBB((]+#EWcz;I8#.)+GU0bUXdSGăU"&SKh_I$i1,IhGP]L2cY=l>t/+;voXD$Ttr/1wp$Arpq,H+r[kd%cK_>/ZrzFlLrăU"%A;ekHOfKNa&[v)z>cWrJ+1eil$EKh3T4uLtA]m35Ijv+=a6ZF7[wZ([F</(+^YăU"4#ma49.TR\;U]e^sQMVX2heR7l(;3o9v37Z26;_HQMZU3wr0(+7])U8w[sh:^JUăU"YQh)DNb\&nj2sY<0en9UT;TWb'mf5y2y4HZG30GZfoqn%b47SQZg/Q);L*Yf;isăU"*DoKvg]r#SILnX:qRoUr7F5Edycl_6^V8hX80lbE[HRykBN7S\t+)lWABtin(^[ăU"$qmpKT)Yvb6[IjZu\jh7K]]^Yi5>K(OXX\/dz)%\ITcu1j-7RS7GiE9A5vp;%'-ăU"\;HH]GZbjRT67ukxC2:*j[qzEnGMP3;-+ijhhA?AqNR1msoej7jYhCAq7tUegQVăU"%Z,QPm(KgMW'e3J:.SKQ*$q7ot)OSUVp+ep.\2(UR;U;o+=,b[7\l&7<_KJmX>,ăU"<L%4B7ABk.&[W-WW\:91(KM*::mTf('I?:4<X[Hy_DP#.aIOeAmXD<LGjJ20\h(ăU"A[)x72[IcxHKP&eszq;/*(>riW2-K2\L2)Vkuaagk8P6Ki.dwl+;U9V\H*E2N;(ăU"H=qSQpTYCmw0:]\D-DUca?48.GWTx_:pHkd-,9qjlVl+C40QTS*'_g^l%N,d26*ăU"%lk+Thr&t1BH)TcEhl7A#n+;A(#wi+%YpFcfc5.smG]tJ#_q*\b1g]2ROI\Tb-=ăU"#i-_YLb66Z[3wqLM$<KgQmbE_m]X,JDGPh9s2mjH(Z$]04zrqP=0_N.7f:fb+teăU"a9ScgdId0CR,\k=XCLqzSfqg?5-\\LmG+ErFH#0]VHeJs1%mZwiXL?bY_AEQ9OLăU"D:hU*wU*5\U[U,[wd#Z*0aQJ/)(KG.sQ#u.+C1BQoJ*jY;glb]7DOoTEH&,yP7JăU"zdFT'Ng,NWQta^Hn)/S%eUi%I/7HTB,s';C[[\8Xi,F;bu/<=DZj#>+'vI=l4[CăU"$+;81AtBYvXjINfw5,NrDZ]vU3jtr5Mi5d<oflBK9=1/*;Dn$d9>bxA\]hw*>-wăU"dF=j5e:5mF9+&awZFm[<X\nhl:UHPu2=zTNCeOP98(\h]jz,2?ySe3?)SjN/Py4ăU"Z7SPv0\kDtLj=X5XSP>59>T*A8]33\uY//1\xBT:_Yi$H\nkS_E)7Ff*8\:>dJ*ăU"Lp6^bK+cqj#]co,wq3>0x&D<T\CLkQgt8JuhLf5/#<UFn7o&5DzR9+*31=E3DVXăU"27G-;8[pDGpf3QK)YF[PC[*]*Wgx<Sc]n7h&$<tJcdBv9Oxww8c5E^aC:-U\*L&ăU"n\Qj%#D);lhjgN)2%Lq0u8#R:C87q<e(/_pf:A6ml0a*OE;-+#.YfPeE15brlL'ăU"FOx,Qf_88&-D:u\Cb_5<m.zC&%'Q&)YQTLs05E&fGz<E#E&^#0f=x5Un$.U)#:căU"Uc5eq97kM2Jaj&Rs9ErxRpv,Nk9SqVb*hl)A>%Tr1pb3IY>T3oM:Tkh?U;E>,4HăU"OF[qI4&s*i)-+=?a3G<KsNU:n=qVIuB^SM[>X?3hOA]p?.i(RKCJJfiGKuYPkRaăU"YHo$XW=8#;)r3HYuf7QRD*ot5UBtT^Cq%8d>mo<%)Y=R4,\vDlwF]QMnklN<8guăU"wpx$-Bj.g.)ui[,r3C.9sj'>-[Ejhq2c6%b_V&Pq(5flC^2c5X0d0F*t:KRiJ0BăU"MNT$C8U2,U7<b*wQ3zYZc)#%dE5F9Ffpq/,z<,>:6pMB\L18:dDFonj.=UR6yg;ăU"AmuWiUOZM;RyRjosMr:eheB'W/tQ)_l7u3CZ'\*Z++.G^6:gNMXCl\(,gu_73l8ăU"HR3c68<H\j8VF.1Q;a$7y[2Pu:*RsBLC<Mr#sCBEg-X<D.K-cQ%NBT&rY-GkjN3ăU"E>8rRoDTVrgi7e7IvE*C&G%Y&aW\fEWBl]nC5CJ5*.6FG6e/G<tJu=>rSk#NHiQăU"RX':&qfB[jc3N97b-?Q^XSquX''DCMVSV(7%P]eAzjSx$,,]bQZi&95tqn#7vniăU":f471:p&aQ)n1;/Lo$V(t[+p:sr$sdl^7HFx<IA/UVs/B;Y1(Wp<Yi24IZ_mkR7ăU"SPsh16Z;'p[sunQs9Ft7C2AMsCq*R(af*?X,yvM,8,:KvRUAOC5)9Ga>)',_D*QăU"SZt0,X2)a*DKVdNFal+:DJ<_t1kEIr)[KkKRqO;:R>>G?tX#6/iiHfT/]K_7:DUăU"+R67aS[Gt+Fof?Cp8;5W(J4URR$+*lB]ioLndfDK7QE'0&Ivj-NrX/F;5iYSfW,ăU"'K25d#;ob$2L0d\tSs.k5Q5iS=5M)%j+(*v5M*YZliUs%$QV=Xu&;/r09dt*TMVăU"_0]>]i%ofB6g>WFARH;wfO;6som?8hsgE]K%3n'b9bHD)ui%Q8e$/ccaP2_2uz\ăEND SUBăSUB V9ăU"lwEflYffBb=^Jf'n+n1.k)sS]4,AG''ce_^MoR:Q.$zsI(/VB'MH\FHZ2+$_lJ2ăU"g4N:ciH2\tK-Ng#tt->UbNuqBL^Rm2+Ggek>)oExa.0^qw_81Q^PdQom_Fsn.'ZăU"<<FOLHxLl:8*D(75C=Sn2f1r$f9C_YRDBh^m$Clc'oRop&Ul9.tCGVX\e+.9_#oăU"2uOQi=rnd-=Ej6z5na<X[XNFS9SJe2+b6^0r_A)/TEK*0e$Y;7GT5.')6UDw#/NăU"[%.E%Ao)d,:[j+R4Sv>qkn]ib]WVS*]s8N)g,b[4w0.%XT2IpOwR/-tK?oZ[A<7ăU"Tc*q9$D'/.P:kf4Hn%V=>a.mt'GEh>%'a?N8a)?wJ'CF:nb.Bi_mJ8sHHD01Tl1ăU"cPV)YGk\_i=,7IlZDo5w2]-(%^c&5%NH$i;keYqUIQ$TN6v3]mrz54k.f.$0v0<ăU"X42mf\T667=R[]$RLN-E4>SX$JS7)E#.y*6mH_1C]6sC9hsrYbW1$X[eL\oaM3FăU"J4Q25,,9+3x;CIT<Tnyxx84sU-9W\;W1Le\A_vnS8^HMzA3ut<)>Ep<nQevReP*ăU"NbUpuRf>O9aMS<FqIah1:OmIK/6QVSWVdn.y'fXrF/7G&$r-$/j\Z4,>yzBKJ],ăU"<#FF0'$cP'JSKlC4IwTqcfWs$RMl8kQGCN1CjljQb>WA_Edl7dHR*g^fXclwErQăU"glQrkzIPcxBn)</NdP,W.*uk=5YBoAKkURo*x>jG;,ZOam+<D5rXRp=2M(]Pq(măU"Tm8Zm,B_kf6>qx?dK90G=uUkODwe6Og]5^DcWFXK+Bx5Ab,k?kv=4G.1XZ]%/CCăU"A$&klCn#.3-CYu8AVvE,N59dkWCEg\[^Nw9>7>mKJ<>c6rJFS4m$ApoUNwn<-7[ăU"QU$bk,%r)Mga03$=ikRQX]+%ogf*=7/$A4W+ewtUA9B\q#0o&668gedRxrIhlD6ăU"PnwU]>jxt#5)m;49-_P2#KE/&\OB<[:]awV\Bv[H9Z.&UY_&PBgRBTfR8^^E=zLăU"7x*:0#M1ykBb&tj^,Y9qC1UFr6e\]4x97(8a0FbP7'II#b&R1N/:VlR<788tW9ZăU"o_2+HbD<NNn%5ohN>Yk($Z+X_^qw;$>4GHWVO5wQwA2-I#y&1.Ij#Q*uJ$O':K&ăU"DC*i%M5d&5(%M(\kS<2L#nLduCdcuBA^gy772xHi*^oho$eAmC,%FQj.mk7p/-SăU"Dy%m,\7GZn;.Q>aEb%:3tn*=F(%ckf[d+%u7*ai]U0.IuRj4&O[/s1p^noGp#>7ăU"u\5wtamc6_%B.GT8<jtQ8:A]V$Ra#T#\dqs/6oWY+boGqd-9_ar?8T3YGS0a^6#ăU"wV?3di)V]B&ahw^i/gAS&Rs9FZ0^;5cYaiPF5Rb#=VNx1Q-ikI#pi<X:EuL4q,4ăU"l$i$n6wfWl)tWctb0Sb6-pBaVj)^QJiDBcb,]GpPBF(08)fg,&M+dX4BUvbYc2TăU"eI7oGv:faWuPxp6dT*2t^9oT\.&;G-fYJBhO7f5Elc.gC_]GtgEag>nN[JWqSPqăU"(VaEbUoSO3ApZ5zDb%oHdTCf)1b5T,>A0US$V#iw(z\[\QqH:F2QdotSb7VfBB2ăU"mFJ4MfrKVoaZT(/kn]E[c2MEl*f)xgQr3W(Ks;MJT:RGkK$aMc)lk'cF4B&AE'(ăU",U7+*%0mJ_AqnNX$JZRH8\r2ML:]:'(icXGR[-lidtWFt3_Iw?tt$\Tt-HpUnK1ăU"InI_q\we_4wk$]tDJ'0)HZB-=?Aw<Iv)7L)('bkq$fUFlU=jAc2*D^2A.m#2jDTăU"_?^4(KP(oNcoka7+0KZYYkZ15NkDdHh#qco6(WHdoTBB%F+4lf?qG$c^len6']LăU"Pbt\q^/50x-tACS$mlpb0F)Rm6(mLlHPn,djeeEwb,E[UBq*gth&PAiFBpe>[D'ăU"L^rM$Sk1Z^Q5W3gSp3M0hg_:?Dg*fiKf+kFSorR[>H5sicWT<BqfoFI8LdRG8wzăU"SteDMHl*8KV:3.Gk$f=+=lORU5w:>*v4mfM3Y2K$S%3n13^.;=gR>F9Nlpo.\(iăU"GkFp]sG>wsv7UPew+PBu,ClVG>E7z8MA_=5Yoq6IKLsn>8?pP?sA3C1),mA'eF8ăU"lFl5t=<E)&Du)pvFjo,mZ)%08LBaJdm^n%ZXXJe'F<UhEOSByo0Nj&#:'*9a16-ăU")5R?Cvo$kz=/pFtoBqm#ZD>eQQ,YIAm;%%TjmFb/oL-2=1%<#37&-1kY3g5).ZjăU"j52bip[OWp.Q^fc4sN:=.k7CQCZc<)rusMvBF#z^suX0.dk7>-f9Ya'C)Fe#ae.ăU"lkrBmb7I(6KaGiH.T)b#.*]He(s0IQ:E6Qg5+.JMme:xH)-]RgmPAc^Ts-G*P7[ăU"Y<^uKl$^J2WROVC4zCl[eR/Fqs-o#a?gBLj#(lb$mi5d]'cH[?hrTNu?a6tLmd1ăU"y..YOyOn,uB>/^K)_95-8[Oss>8>4s(2E?95PENhF1OEe,D0n%Z158Us33S4S[LăU"E0Ht,MTLPD/1DBiEXMJCCyvT064JQ,JuIN:J%ce9RzVHThGBp&U6Z=&fSTiS+x0ăU"D-ki^1NWO,F\[ZO)y+8ydo,]nr6zpDd;i%nUaym>RiCY8ZAu3$*7&gl\xkg86vpăU"5yk;j%d$i$/4#:.zU]:y[%Sm*/UUgF:Q4D7=aOg)JrGQ-<+--e.T:M;'^i9,1fOăU"_,;KLKHHkFwPLomjL?kP(Z$'>\$%%1*5.WbI,LekeR*xcgTubROouCeyOyoT-5HăU"jtL,w&]0#afQ1TaP-n_8CEr?TcoK'GE=2^I<drGbu5DQ<5_J)vd;X[hSrL;rUi8ăU"x<<m_X-4^eg+QRRH,;E%L/x06?rC]g;G5YbhW55b83#b8L_S(P4S5:1ccLQ':<%ăU"qN6bqkgC3N=jgVlqxp=qUqyTYEng'F2oYELAw4u#Ynsnj6C[V469dKP_)?A_H,OăU"P^>i0fx6.ZmxSD'q32ui/M8nU%vBEaBM<R/^76M+(9=Mqg$CL%o,$Gs_(mCV]<OăU"EerLf2gZ\Xl.B)u%>A)X8ZZF%h:Ta4+nO^UE;Dt#GU,eN2GM2J(CAdLdBUY,5/>ăU"0BhmNddg;$9F&q_>WpDR4$e_8Z9X#gzGqd+NnG=nC'c1Ndo(?^^/M06Tef*8N2TăU"e'S5YnKh(jo#QG5Y+r1tdZoPoQ&C%N:,<0>BBt<M'1g^LjqP&It*Y*eFwsK]OV;ăU"LLcdeebcD:1_Q;9VGM#j*1#?RU'5V]<HsUq:zj\IN+T4yg^YH%Axko]3=&#c4UUăU"bM$m8_6C+lcem$%d5fRz4P.<3*)]YRe=DWb&+7&^>a6=ukZt:4^>^-0:dSAN[hYăU"c8b?pp)285GkfmJMGaVe6'dkFsa^Im\OwJAa7^cO:A$QX$vSXkd[:B5JecG+1:TăU"61cbcAr#]Ki%qa.mm^McVeaRfq:;Z_4??AH.4_0Mk;kXA;.c#;g'>c,7_pn[6k7ăU"P?TO<7]-aQK.G8sIDnRvTpjH%g[WOVPa8kA<$?&X<r;l7L#UhSCCF=PXxAGD6k?ăU">*,&I,nCN,n=?3*NK[;Kku$++NRsMS*4%U;&B*YLaIe0/_uW&/94nKn.76VprBhăU"k-Ed[07M_Ev;I8F60fH(-,0]5<;a*HSRI00+U6ihuT0._bnP\KTe9hk[.C;sgx'ăU"=(,N/t:WkdNjxEeY>GaYq#g)Ed+<4cO_EgLA,A-f9nqr-.s9Spgs3#+81tms7L*ăU"JjOasvj8Py18tcic](wPuiZ,\$Tg)W*:5\g4LX9<<'1,\,oh?CWf'Vk&/TbJ\4tăU"k/C<i9fT:_=_DOzNrfu3Sh1ro^FQZ+S+9GQP)Ni\pp2K-=PEc(Jj/cS,5=huIP+ăU"QV<sJ/*=QtW_V0p?U8[q<cc^a^h%5[r?6P]YR0Wr_2ay1Z3v9a_qVa-_1ZER(6qăU"iIZq._'=+r>4UF5^m:?Wcc75$'Du_*nDqa^Yt*-Kc,9DQ5f8Dm1Cl._(vR.tBffăU"^xCrN+6)I0,90)I6&8#:gp<kQh)<jE%8dKpTzPk]<pz&Uy.A?SuS4sjxxmf\fKGăU"sW#-4?UOx<)u0-5P9CNdP2#S;yh80(oErrLw0DhrysSm^F?N=,OAhyQ2A'C9qlOăU"Mhd#5xd'S^S5qd]vA2+A0R#-:sO8e4dA7LS_h&qO=>0s08\Aa:_gT+3]LcN4pR.ăU"H(\=KW3Wg?V)Go&IK.f560Bg's18//Y8nZLF#0HZKNvk8ujXVs*&PgER^yO5eAdăU"n:1St=U2TE:XbFc^M89l'S%eiQ%c<IU#^(k^40h>G\,l3.4rv\^wG'Po>(&g&G(ăU"XqV'Q^rpqt9Hn4_E>b[gEdGR&7X6tD(UPA%,[yi+]IhdSE8<v.M^To]k,0MQ9ERăU"(#e?gXirP5>Ac602&N1Jo[ay$3loS22=.OPZQ\MuPXjHi0L])F'kTfML%;QoFLKăU"rJXIVdBs9;rJe?\uL$>yYLAn,<s*'Um0dl.TE2ZW+X-_SCWibPJLQ;&gSgDoMI%ăU"YU(l6&*ntPmCiAxX0MI<O3wQq'*I,T+U.>OZ4jtsNlF4gs&C#+7z\#V;kZ94hlxăU"[.0LC5mS3v+Q<Q<ok<k]U#<OCC(OKO1[&%g0fYO8n89XEdf+;1rcCTogYgZubt&ăU"7&#MPSRBn\_9TauC=n_5(R=L\fRRCm'8%4n1mOeT3M^)8/a=D$YxtC6#W(h\s&QăU")%,JFuS##=,VTbU/'DvxFF\>xlNN>r.>u7xPJBm>YEx5f^G9X;4cGmvDPxmLKLPăU"*=9%Kj0Amvf,Wr0zcnK-EIKf0muZb&-\_pvGDk.h3gdC?]F5jHAltr>+U#q.%VHăU"=Mfg-C&_&<Gt:=#3M3j-%YoN7X>rx(%P=YvB%^),R4=2HS'u:D)*CbgrN_G_Z&TăU":Kcn4uwA#%+XXl(>5Z<qOy1QG_\i%a/[eMq7B#]JGb>lnELT(&hy9A<b<FTs$:<ăU"Q^CK%^9.jZltA8Rl5s=^N'Fv>]Ih##Ci_o_0'I>J<M]G7=EC13^U43&.DZWeRNoăU";]FPZJGsIo6-E<umUi2:h/.i&^r7_X;/j#ybJFH#(NxF-&68x9t4z>_F8l[B#D=ăU"pzqIx/8Pl#]RMX:&dWJE'lld(Y*'2Vw4(e3DuUItRwo1Egf/2R5TP%p<Dx^Nm\NăU"b=p[I>_i?4?$l#9Aade2pvYc?JaXJ%aYT1soab^fq:mp)&^?q?L*YmZkKLHh:JgăU"'x.7^6kuIfYtA?C#r*h:9gjjWrh%*xOOuMT&B]-mxMWr]+x<+arRH]O$,hqWWscăU"cXj%7bmUGB14eed.\VWH-Foj(-,Qj[kVpAdhV)-g2Z\$?nisefK_TS\'H)2?HTPăU"Z)%S/zI3c#l]NPIaj\CfBQi'9t0EKEVEvUn/8r1v4SD3f=G;Vgp<04]sXAX4Un1ăU"^rK;ai<B/t+fn4L\Ly2C8=W:2nXnGR+zo3n24Oeun11Dc?F0CyG$CtbL[=3'AfpăU"tl$_3df+Ig:vR?2269fw5x<+uGDVnxW2I<)t<Dr_Z67TR121wgpT+UWVpTbQSe]ăU"\LO]^9XlJ'QLjq08/LgDH(_dzgFkD]dQ#;#J[n24MTbxdq20lm>9,VgMSX*^MS-ăU"cr>[-FYSjcV0JxT\S(H=P+[*b:AQSf)Xn4uLMj6$T/krZu\'T5+YMj6Vl:vD-k4ăU"Fu^o72MM&kIMMEEE&s<MfS\,*MinQ8q1Z\blP-p6u.'osUiDzf&MLEE0EG$+<+<ăU"AZ2OVpHnlqWKG;:A-6.DR%1jnIH]%*n_0%(Tfn2I0*B^)CHW#Rz9v,,Q;OMmVpnăU"AYt<hQO/TYf*Adu4^L?gGo_:1koGCsClGrOi_Dp(k2g:BGz$*V28Ka.+</Jwbe?ăU"[mtb2$^U&Y39.xTPprTyk%WFxdR>Xcq]Jck'e(Z#E>(A;9'9,BwnbIfqg1<BQW.ăU"TI3(UO/_42[+73C?_#es]jK//96zO9gO<SEtz9R-dGpCWLG:B>Onn6jE[]PL%=kăU"X]$(%-tr>>q?04j>HvJeRn_Hbfag3-Uq>Bg[Zr04zl<aj<AnCAsXCE)o)hOq#C)ăU">GS%\gcHcY$(%0T(3w3=X=J31^n2c,[N3,pE;VqB>HL7^&CeT6Rh9dx)46'\pVCăU"7>rhmQi1[OBaB)enVTKi$>C_].Iq,WB08deOvcCD>Oi5-9W/9S=I,=M>Lv3v9-LăU"_v,&Ov8WXX\Cj'&5]:&.%(/q^%x1,PzQn_XmRZY4]R)s;3ViqI?iQ99XD9YGYsMăU"J9n>M+exLR0K,CT/mU>D,+k[<K^3_^/>(1uPZ'c=4O2sPjKhv:4mt:aaBQ0_\^AăU"dPK&]Cc828B]bOkb41U\/F(xV\-6Y;a2Lg:G<BV<m8l&\Yu5#XpQ=Q0-gdu(nHbăU";(AX\6jqS'UUtCfI6g'hMub[.*u*5SEUNogURI$18-Fr)rd\Ry^LVm#>Cu;Xg(:ăU"GSY0_,Pnj9=M6Q2T;iO2K==,wEJgE388)]Fs9I3eH[InfJJH/D]RIUDNeN8_eh)ăU"Gf=$:61&u0H'^h$Wn_=czL#J5(DSQI6Da8Ieg+$J3(&C.I2Q1oQ8=7?ZG\iMydLăU"WWU_m[F<br[UY_.v]jL?*lYwfDN.Vp:,MI:EEBjGcWFObD:g9ia>O[>dis4(>)<ăU"Ms/c4(ePgVrpY2lv,/g$8q&s5imFbBJ+R^I1+CUmK'6LU]'w].HFO\6o6sZmcGsăU"5h]bjAPw.nds-g^LoG5f;:NQ9nBY3Y#A0=Ct>q,UM4ODRC7%[_S%nhrYOaHqrKRăU"cb#9:Pa#hAR;cb6:8p9e.6;g%cNHItSA,K'79evuC?eM4:2K==Tvq[g=EmY/s.(ăU"xIb5I4^LYA=v7v]h0*a#t9Oo)ycFCp3s[%zjn#%sj-[4EI*]?Awkn]1KD9%?l]căU"v-p\b[u\gLnCcEI\3%zU#%+Nq<ziSh9]JsnP1'&KaU=DOzFW#pnlTTs-t_D(<Z*ăU"^F<hfgd]4]$E,ee15_7mX:LYhAcX)U$+_w3yM*bBl/C3xReV:r3d7bCM_LzlY+jăU"hq6SkkVTC6lkiC>fo&#46OQGL3SDA+1sr6dKWs5rD[p5tD[-Di:$.kVAYUZTb.PăU"*w^[e]f(ccfl7kod*;;c(L'ufag0X>0xcTcX1jmoTn8HpZhV#h4<#Y+4[wwpR43ăU"FS?FZx;dWdLM\Df3H/hUA:-msbP<IJLc,?Hw*XRI)0MnJaO^&9#o02L15+sTU0:ăU"[D<QVwS'i+S_xlUvjtGahX2(fxUKH\d:wteoPR':*OS<QRixn\3h+XC)UmKU7TuăU"kpMeDqqy6^r$iSvepJuvu<Kfe7H-/+.6spU%6OO0--(3;bJsqDt(#M6qOhf-#YCăU"MCOOUmH0ec=o(#m\e.n]&US\)][+W.T)1Ly&pV:3<AcGPPb^jC:8MS,#J8Msh#xăU",Cn5VLP0K5UE=KF:pC9?AT8$1b\E&%+O&(MQJ=^p2'GewPNvb79g+F<<Co7LT>YăU"a5Su1c8bZ?fPJ-'mnIIqvmHEP8,uuD<\3]%nr+<x_]K?Co*+QEO4]e$RN8Pxh?\ăU"wH_^APbLuZhF(r5xZoqO2KPPP9#39#5^-x%B7PkinW'JCV>'z.zdPsX)$(Bg-GRăU"ekdZ2^oart_p(V?QVk1.]Yv6v&8#tuU;etWyRd%,J9<s1bsbr78^.=tbu7PPXJSăU"l,IR87JV,6_)0u#p^.%YxkRatVN?b:6ewP/06><9OY%GMd+=jI4L??'7m-B4-qEăU")[zTa6;?^fT[mgQi*:+hjEM<h**zX=s'+DUrve1QA+wCo#X;#_016uRFK'-iPgVăU"W25&pGUTS7imibnz4#b)QZ\7/eV]lf#C7_cACS:%OL[D-1.Q5P0AT$kYf5f:D47ăU"-H;(CvsAB5&pJUNAmZ9-ecc4d+^^U7#tRn'V,lLUT'EI.^D%3sfP3G\;\k066?;ăU"b+<n&m&2[8C,dRqmCMu<GtX$qIF#_M03E(1>\11K9Bgh/H+Yl'<0f7Hmox']OCpăU"kiyq#CL8lfACb+hoT_)oLc4-;]k$T+\?O0U&egRD0^3KV=RAU=(nQ]<=>Mg=XjsăU"E7X+2Nu\plHs719k[5p$1]S[.e\-2QXR5wr>6fV=)2;,mFTO%\%VZgN\Fu8i0?EăU"iX2n2RjF20VCs;27dB=OwB'a,I+gh7^vOmwM*B1Ks6fGiFQGi;Za8Z7w_$>dn:IăU"(&8D=U[PqfV#6Z(Lbj9&VvQ+HnAE>XveE+QN6=A%RV<3Xt_1X*;NU*6#]t6R[_#ăU"j6ogbF\rBmc\ql%R&b6AW23_'T=OThU'C5LHC8)\GO,f<%#vajRTsUF&4V=?/s9ăU"u;D+09_V,lr+fE.XqG6HMb2\dEq$)_l<IVlBN3;MoW9c2L*-9Qs;YGEv#pRg>-eăU"g]lXnC[xE#>I$F)SOfnOK,LM>TIY[cs*]E7hBbEJQBnCA#=HL9.Gx.>S'6#/iiiăU"t'm-m\&L&__Lnoj2(#1FxS<#mD3+;t-eZ\>:a[3rFm(P*kl,GvlA=bQaVD9>fG*ăU"q.Yx-(NPh%=zKO%sgqJk_ZJSni$d-]BY/<UiUgxn;/-h8DFVPFh%uTAe(u&qU/ZăU"M5Z$wy52_,TZ($U?j-Q_<OaP=sWXl$U$64(_=s]Eq6i6'HK:L^B>F_>XpLhUBQYăU"6'rok.%Kmvep[A\)BS7%-2s9*1V0m_7m.1XL?G[Em+gATC.'sykD)]6%I:7on4'ăU"0-<O9mYM:HJBh++e,/N[=NdU07c7-84jGr<&Z;H'07<M9kSY%kBoB'-TP:-L(4#ăU"vA8.CK0*>WNK,_HMTPFhoZ/lqk.*-<u7FRG26FBo4_gT==URM.<Gi_CiUZrNR'IăU"dP;OR<a9L<Gi4-;7Lt>0mGW<D)'>oTn(9o_H2QJ\Ey1I_FZ2i36:2q::Ua#dKMiăU"3:\-YsJd(KDPE'nEX+xpTE\J\m[$j;j0[S:w5[-K$eb_oI.N8(cgCd3qEhJtaI-ăU",Glm*=5di4_BV/bFV67_L)6uGeS4M,SZ'#60,GcDc'QII1=Kn>GhWi2D4th[EOOăU"(>Pft5Lx56BYVZLbQG0uB1_xIIKf,s)z:0r4EjbU65o=JWYm8_bb=P>o^41cm^.ăU"NfCz0R3p#tpN2svMV&?qwj<$T=)Db-uO%87O/7-ec/U-R=kI>y>aNR+EFT9=vq,ăU"a?e6RR;)CXn,$.LKfeRUNFqnalZA/U^e?,3R5128S9?a,Od\GqGC>k9lX=,S+=găU"7R?%XzGn-0RT+kIoMHhoD'S._.jhahG96m*a9;q7NZxo;?AnPDz/5,.=(SC3CgTăU"==5s.=(Mb+$0<Fr&qp/4N.=M=:QvS3fv:3t8f-C1dc-S[6aH.9KY6U3rEzs?4g6ăU"bA-&M.q2qke2yUNnT':;cNN(N/t9r%^whD5<I&KpJoeqfUjYiom[=:f:laRM)9yăU"Rygag6YKT)9S)z=yT(^lkuKO>J)>P<oQ_1EO(jn>F_YmtFbU<w$y#v4KsuXC-m]ăU"uZ/1bKx%),Mx5U04t3e*lUS'uAt#TBIZ.SGmXkd4E7BPF(dGkm(p'/C0R4T/B*GăU"hdG\_Oc'hjZB$5q<nh6s'(8Q)>11hlW2sh4gMNy9*1%9eeR,uBFg,?5R\Ra%&[(ăU"bn:p'?,ep&pbrXS-Pi/9C<=e3crg-0=.7Yei]J?:&=.V2r9YOx_y/LY,Oahzv^EăU"jL1G78nkgD,YI>#B'..kE5/OGOTpTPa,Ba=2F<1\.ej,C0MpO6AR%W+B9]LMm1KăU"s9J-O[0IEi-oAKnDz'hH#Pck(xk,ED>M52<,g*<gFdkdgx*K:[3B,/Ci4,'Xe'EăU"_%^gL8B6A9hKk=5,GF05ONFXsMwI7&*<v/UrbgOpN#C*<:Ae2S+)/p-3aw;D<7săU",bcn+SZ$M>(eN^4a5-kg'cV4m?X+\+NNqk*I&_u1VLXbCG$K8<s%A#9*+[YVKR3ăU"yV>V2R9t#&eqGR(z=g7tDDH'EY^n.'f?<ZsksXOLscYq05C3Z?F+p#^[m1DQ&Y[ăU"]*f/DaPM(/T)Unl-Zh'-n7X$+pRm2BD,w5;W_,fHIV&<5-WAr_o&79Efuon#OiiăU"0SBhMl<P;Z(4ngS2#:;M^l1?UxqXU/)xROs6/o7ms+2G;0z>98Id:c5gIp]%aYLăU"NJ<5rIMN\DgyCxH1sd;hNw?TrqVvkJ:veHDJ#cY?T%V\MV(&HdX_0]39ku[GQt+ăU")EU>tJJ,512#qRa&e.^T/U9Ht)QNXH:1xwed$f00fXV8l^,A,KXS1M<vYmPQ=X+ăU"T=2gPh5=JIm).#6/w=L3l.9X4J)u4W[<v-ci'T9KehNEW:e<-_4O?Ukf.PF'NzCăU"NH_-9HH:mD<wHPjrhcva5Ijkp><eMtW:=,q2vro:c4_<QRt)S72;BG-e[_9,+j/ăU"Y5Bg99eTOgL^5^8LgVB76PKYBZ,bLqf.e>[>5APDL6A?jj>^nfAt*Migc&ffJ3ZăU"H''MF9Q=m30?S[[/T*mB95U(H4/[MF/UI4-DG'cY2r.,eDHJ,km5tlUMKi'hvgBăU"bDo72eDOG(.aA_(/(=Kb6,HYU2GNPeNl>P]o2cV3yWEnmmrv,Tse;y%^8VJ6V4VăU"mGCGc]_-E9fiHA3la>.kBAeaQiK#</m>.IY&lE?^is064Mdt#YL<*.obGtfSlM#ăU"TVkZ1lGt'csTfS_bP7rt-oMHH6'L?[&.Ig_G^n<G><,J$k8hiCeL%V/Agl:pi/HăU"%Nm[PCp#rY26/]<CXMxl?<7XN&muXR$0ejp:Jh3hZ,?C4_/q+8n-SEp/>,)<X/HăU"htG?U-ClwLQ=j6SfZF:Fz(smt4g=jKPUiEg8x,ie;8Xp=LXlnWe$0=aS.rfQ*2%ăU"HKLgz=rj3Xb.xs,qAP$qxNCY4l3(w&5QmTRvF1b+LOcY:xedBChO'^V-T?eksOvăU"/5J+V7(c2X+G8=(s)np6mj2WUwGK?R_qIsoJ%*TdP6.n[r6vo%AF+pWRpMPw0aGăU"pdvG4d<$Gh=aj7^OhKCg\x8^WrZSAoa-IQ=?'7mn'7,c&Mm<Z.XH.+R.Z*UG;(ZăU"(YLM1RbgJz6M&Otmr\9DlaL=J)cPW>+f.UwZ_0rG3oKM3)8/dR_*rx;S%Q/cKsCăU"TK2rAJgqq0dTi)t#7UPsjto(d\.oZY%/R[VEDjr-Q]T^hC>JG6d5+g%(_]5Rrx5ăU"ctKHlJUWRg1Bop#[dgL]6k*OZoagKt\h9jZ7Gv5P.Q/=U0Q1Ns2j\uB6LND9TCzăU".ztjj4PUgTkis5,Jso9HfO+WmntyKFkj1m0rcYNTgwO(tIhCVt-%?$WWMd4CxL6ăU"mK3_.1fwWJ.<AuzXYI5+*O>$9=$Xl\qtTRh<I>eZEX;cKCTp.xR+of8PxNmhO+căU"DSBFl]V6V4^i2SIT*SXGVP$*xh]=tQKLe7H*w?A*ZE[./LYhQQ_iQJ%NwHmt3#]ăU"P<5%/Y%q>gr**&[V%mvGh1jW,=no)oL%>POKx$>s%j7=6>+D:2uM+5p51bgp,cVăU"fN$dz1>h.IUZm.K_NL8OekUT,O%;t[bGi\st5/j07-r_P?lrq1T)15T/FkC?3>săU"c.),xnq,r'Is(erbu<](q<7q_CZpOq2zZRRYp4[w;$I8mWja$k5sm(m9R6V?43WăU"Ci^aM[#vp=^A3X-bNVCw9RyeKV=zhHLNI'5)rE2Gk-bDR>((KureY6UX9O/FgfgăU"I,T2#>0=eBnntGh+lqo9[-j3KQ&nY+1L3;B':[(^KPEQSLgag#D[7^zb+<*($7făU"rJCXDMxoE;0961H2[/*MS/SW7^[%DWbV0039K#V+vJnb&73P9#Fc\xL(i>5OYk)ăU"+:(M#g/zfU)s\,Fd(Rwt(V&-5gKU.I1i:Ma[H'IH=8j8viDSNCHU4mh1l9cOtFgăU"?2:4*f;JcMe1&Gp,P:Ja_C9:)E5oNg+nSMauvrjc;;tC:nG2#r>\>XHO](Q7LU(ăU",ZVCN&&jSYqT,nPnXb;^K+M$GgNWOnL&ryhn:=X,j(%u_\Owz9;D*r9.OveM_3yăU"?/G]lbC)EAowbgV'nFjNio:j44JWbhRWQr%Cr)Q?FnZ8jOlL_xa^(U&#Vj<fWrIăU"b?uAi,H;f?e:4*X3=gZpYtRw(NCWRGn:\9jmF0,Jbt+u.eze\rIn4G^f,lRc5SCăU"w2r8(Pe+s_[%\j>pR=eNv=j+a^gsksG5C_$i,$S$pTH3e%>?BY2,vcOdl+F-[)&ăU"E2OJ^bwe6hY*4#9wuCg;xrlhnoV03wV6OU]3P##?s.\n/rGJ#:e/JEnYbgB>M0băU"SHcn<_Dv?ROKpqPh;#?,]gl1%WW>3fS&-N^tqSQ(%.s%)p(bA\8(E\0Yxf,^%<:ăU"YJZWPrNMAT^]U[YWyICb4l64;u#NXy>SS+m6kfnN3'DxBu)U,KY+b)pcZ',2dl(ăU"r&UYM0f601p5lt?]J\<EVT0EBJprg+rXHDp7Kq\/4i=%'WR>Rc_ZN:DS\j8<B0CăU"T]/Nz:K;d'k#<]H,Q,rpRiZMj,UIejTrMgR+2qlEZ?%.jb)2Y#ho(cbjVMbM=e]ăU"+0YWCuaT?]6]sAdr*<<,#(/'m-b<no:w[RT3qN4B6Q+HBMd':wIx%g3^HC%I1fDăU"/Lq0aX9tuLHZ?.nl8xWHt$bJeL<eyh$>?GprTl,aOKKQ*itv;X0'P+[5GvUd4jMăU"hOnlX',T5&+'0g\(2I)C#DFS'x6k$UTI3$e7u9.LoK47dYc'S9,9]8]8xb&)spNăU"DE.n*gSa1ArNYDjosmp^H\b/_Eig>Y$'k5A(<$G,uYtE\FL0ed%aD\..N=<DyazăU"c-duU4Q*&4tVy)x4>Mqd2tMdwCS>PbxhbvL*C>W7H9:B-J\U1S*2sfis=h&XfpyăU"lA\CG$j1'jpzrmVFFDo\]*]4t:zk+H-PBS3(7COg#iMC0V#M1MG<I1]2G,cZQN$ăEND SUBăSUB VAăU"ut+HEZTuif<c,;.f>>aXqjqDTAqRey.j'h\cQhkjiN-+SjGP(T?O>LC7AP]i]:4ăU"lVM'Ew_Ct+]7/tv+.\1?NqV^-Pd+riM6#[m;YH5d*Js#^[kYr'f6Ml4wIjDAx=hăU"lZKt91oHy:h0$>_Um7KazV5Ig7elph-CcW<GPxzu^T/S^\;;*,XaR>J?p/;oP.;ăU"Y\#;SQ)9wW*>8FsTD_<WK1Z].[TmAK$F4<boc([ZrbVryRuK7J4>:)0mdbR(/:(ăU"22SgeVS&^l.Qrk^AW*NHYMk,cNDA6_t1u,1RhpokjL60Df=MrkGJ9WPD*+DrYw%ăU"KYSzege'FX-TfqS,*<E:72^?<[w+p$G?EEv86z6[NYZD%ddWC'0#I_93RX9dUK8ăU")&M.g$S79\Ah'eZU;dD&eT9N:6mpV9oDCZh/4#37$zfX-PnKB^Ifl]#o#DZ9F'TăU"AInQ)j_czkf(;2Z2k-4Oc[.1;6U0-A8BA]0B&pFuu[#G$(+oLFF=4LB&P-oN.7iăU"WrvtJ&sa(Q_f\&.%qKt+(-j>lz5m,TbOo:ni5k&pY62ezTs?b%;XdCFjZI\2g\kăU"XDgPcakCF47U-Ar4]X8]Mm>=>O5IqiT8xVCQhTIu8%j^PZDWF8Ui[awBtm?jLJ=ăU"laH4G$KKUQ3<.eO-pU<gR)eC'Rb=<3Q,p2f%<DrTjQkf0G?/ss)EjOb<we,0DY8ăU"u(JjZ<,ZfO>a96UA1sCM8a-RFs(,32]qYuZ'*tnD[(q7sLd\C7kJe1S;3;^iDr2ăU"60g:$Xy6gO-wW*;h<]L2oe%bGUFRaA=ScE+wt[THlsUQMxf?0pY3tiT]Em#b3urăU"HfJ[:7pX$V%(f[VF?;GJ8m*<Ba/TAr<d[&1/K1Fxb\bCduts7+OQP?hRh\XW3;GăU"(0aj4Zfe_xx[ts;0'Ba\HDc:A[uDur(o4I2zC>I34tWp/$j>7Lz?osKZkxsvpnHăU"G<\oQr8>NwX4%2y>HG7n$?EAD>x64O2(q;s%IvHoJEa&&1S)qQ%sIwths1Jw0sxăU"F(%E%'Ii^3A4PxSL2u*JVq89Ys0J+m?:['86E7$s_++;1=V82HA8D5W'fOLUGH5ăU"7\aN=gubS1WeTOXC4LfTe8eh==[uyV&#I<6GW3z#B7a+c;d/ht^ch(jWl?h\vIFăU"G-^PRJ1rDfTdf&nJk-US,OTe4xOo#q?Fd-$nZSEr?c'Cp.=$>K-Wrx:IaJop'GxăU"<+(D0.O9r8Z,]8+:0O:xCTcDK'F*Q6ivm4p+f6pMm4]q*%3wCUz<7DQG89b1^7săU"cV2n=:;yqCS4A;Is/:\+GXpYE7nC(m5%C>gmXV*Q2u:i/O%'[cdQ9F?VYuS=K<IăU"2*)_5=r:#2UaBT<UL-]Tma:D;2(pZmmj3$E6wRMU>S+PJegRS<[ys5X[1a5\wt[ăU"s#vfEqR&J*Ed#xt*#sO%SyGj)TP(4J[&>2n0w,>:b\U3m)$B*j9&b_,3i<fj00KăU"1/q#4Zl:;zJ7O.%h$BPb&Viiin-.M52--=:C;a<-sE8QaVR*#+Z6*ueLHw;YJ3RăU"m$X>+xAyM&NdNdLUGp2*yG8'0\R/%0t-s5w[Qoup/[v[T;38)v2x5iby?1u\(VpăU"$SC+-\;stRN/:Bbjn]j10?Iy[$8wsN3_6;oh(t9ltkC<QFiRkcTknSysYs\+*^iăU"(/Pd#<g0i-JFWWw6C19SH8.l)l+jU=&\Eo_#h[TyxZg_K]Pl4.sS56J;#6^E2+AăU"024$Yb^be*bas;LL^zW2VSx3aQ3]Qp)q)+g,=6eo+63I_kpvkJgTTt8J#^1(NHCăU"^f41[V<f;ol_oQytgce7SRxxhyic\)3^qNd>$6JNbfg<TQ?cg/9nXhlCr'08A7GăU"mi*7qiH^V;QVI&VSg6S.oQ3opoFYdhwOtVHAhDKR)kL\VJO&Ls=n;97i*cLk8lMăU"e_YtRs[F+0FQ?tZ0/;e?]5eS<o]65&WAF.fg8A.#nM5U4?<Gq3:TDpwsCqBt10(ăU"((3&jX?]>%9G9$aitSe;k83<iPAt5J.F/SVXOn1jCV9q3%Q<B$HqhG7mZd';u)XăU"S+4/.p7kju5,]bARuM)d[gwO9B+*SsJ^eYg*O:(9:?a4>9O9lArbW#H9lG31haAăU"lp59R)-_LIoHkE?-P&q?W)Ye/'[>h5Q%6hQ*&BsUBO96x?p\VLA3g.Si:G=&E17ăU"idS6G7wC?*<ih]>8:8Mq$<he9eB9Bhu5ho4M>uaMpQd\]UkcnM9+Dsr_eiGq>l(ăU"drXWl1+W>t(Nlglb+=oJ?\[\\i>^Je5qpS+)=6>Kol_HFo&\esQ0pq'6GBh9sFGăU"j&;r3P--T9Bs(:+LJ>+,V[T<9*I&;yOzi:F);4,?w:0U+/NNY]8QX?%aL=*lt7NăU"_4iMq8SeS]pdN1?GC15p2XLnV=d#j4zmerTLKF12EH4$Pw?+KI$wwLcI(o,J<ihăU"L5H3Hp;mzRWP-jD0q$hvTNt*>ADLN#Cf'bY0%aPL3aSoMq0sg6zu^F6$s24p0HtăU"x8MAxXN'q),'87]4JO%rCX1+zGN_45]UJ$uZ;'?X4#'f\j=rJmi#_V+v2WEo6OFăU"&0yXHH7oLnBU$NzdzO2)*#,AI=BmNZQJ]x%OO#'7Em6woLW0:AK6G;,;nyd7a_;ăU"KVKJ6*eE#z:4D2Qlbl?2a#<dE9keeV'W_?JIJMB\rkpzjU0LT>zGhUU^s5<^DEiăU"Cy'a=wihYgHB8ud:;IP>:pvP'7OP'0iEy=-CNw(ShrF':<6rh0sQV->?XmGoVJ/ăU"\iXR9p&nFq%KPczU6/#MS\V.a>bzrQUiGh#6s'ZI8u8nsVUsJUTS9;\Ek6;1DNHăU"c_.,[M<PF,.I[HBXas\J_]p9/^pkefco$j.BSUE1NyR>C^WNtdxQ\py2vR)+X#dăU"1R\HALgC+dVg1Tmf[e?SF&49UND+?/51&hTl14[vVMH7s>_S[)Gs]j[dB&leLFDăU"/Tpmp=S%)IsYn6&?T/CzjZtKb<Kh0H]=hTy2bIHKGwIBL]l]);#k[_gdBhIfp;oăU"8g(HdWqkLF4$ZxE#,4QQk6z:%7aw%#PDU%2*O.[5^3l\qdj7T'JLfsC;a33<mMEăU"fZF%8+uY:UlBsyk4>^l5+\6Z_;)S]:g0POHzSqAN,B3VF=0)Wv$i-9tlM,\IQ41ăU"<bKu:vn9\6(FT,b[qD8T>=umIP+%leB.&TK,AoTT8qV&(-sTrt-$WXDoh_[C6v0ăU"<$nb3&<8?Rl>ag^h_J7R>*8rxLY'/VNa(kb.XNY9MWc$b)ru7Ve\5)s\Q.9s/tfăU"aGImr*efEq>,,7>ONdU..\+&2y[\s9_39x7183+]2WgOB#'Q;8-y5#l55VxQgr=ăU"p;&j:C/=D%-=FzaE(^VW_o\Q1*<2^Q[sfwK>f$m+nt7O5YLPFqTR+.p/HQTimTTăU",1Ut#SOLl%x2._Ybloh'-A\v2bAqd$aish#Ta_Cn1,)QY77uh2EDRj*07zrBq4QăU"cvD#XM'E<4(]S,g1(._B(X^/:-5GiD.9(+d::mij/A#[y;N9_brIGoWc>l'A^/kăU"-Wv#-9+2Pv&<1]%lhx:C%u<$[)g<Vs;i<Fz4_t1Zq2E?'G3v<dT4tGs,wH[O/\EăU"tuX<$LUs+TsD#0CMS[-L(h3$gw:Y=&r-BiK(7Jn\okEnIu8G\CgmMk8$rqtB)oMăU"5R6oE-e-:t(*63E6VxD+BS9+O6fGZ,]1[$)xsMu2]Y4t4;s2Zpg%hCG2qo*(zcaăU"OAS?^rWQ/A(,i>9^WlC/*,ZM?YR]T;(]]A233WjiFX#WhPNCr%;Tbv3P8;r)1+-ăU"p.;k7+wW'w-GiQR3:FaKW2&n2NsK<3n,>%)z^4cZO?nm%PTh9pTTq:fe;Rs(JSRăU"nqb(iffbqIWTaSBuuUcnJIZJ_+x2DhAD^GD#vw(e]b8:<F'PFTl&*4DYQQ;f._#ăU"5vse=86WnUcYNtw(yo1nbt1?y+M[o(/rTXwt[aoW%sdkZ\)oU2US;C2],EB/*8făU"wO)+A8diGg0Q_[&[/L-0)ly-7g^8aK+3r259qo<9xKfV'\g:xH^WRE+PDZe<mYNăU"BBWHxDAN2>+-aBYb[<nW).(Rjh##^OZUm3W:9dM[XEwL<ap(4sM4zmlQkma0>9KăU"+Gh8[*$OOg:p%A/Ej=f9p2p]iiC6r2AKKPY0#[<EG#)FQ%CeVg75Q75:CsYS;toăU"[#NiM\TwKKDWJ*ri3)/%#F/^lktY]uTP3CV5?gh?D(e_S.C/],QghG5]CThf)XwăU"f7e%G\1,V8=Nag'j5WK[ga==KlFegHXpg93JEWJCcD]XA_REIW-yC+nMh,>K]6^ăU"fRrJ03hy&[Tj./&c'9j3ni?ccX;>Wm9ZM2V:F42-;RwPehU=:CM4Y?15ypTaXASăU"O=R&G?u]*:vMcA2i8A\j+0'd4Bk%h]ejcJ/k1O<9i)^,T9BLepz5xOkE+-GGag:ăU"tuFnmj]FOkYe%8;2<Mow3ka?D/ju-WmjwGd1//h'PpibZSb),+3hSdsIjfIUR>AăU"fR4*P(&K:2$0Hu[>.VkOHx)O9GG#e&2d>DtEl[,k1BJ'NY0\n91+&26?kQKo#Z9ăU"/CLx;-^0iM#mB%Ana5AJ._?/>QV%FD5;G4X;''C8y$^<StV0/gw9'SVX.kgJpsiăU"<mN\7w+joH/QF%JiqF^.p-[sbFT>D[px/'Um#sA)7njEecp'h:nytvn,p4=&ibpăU"Me(3YsF_iC8KN+ROhhV,oSAUx[#=iM+CsR$qnsC&u'=mVkRyn]z%bWEtiummDJ1ăU"hr;H,&931,fbaIwQXz7:T+#c,)o,%.mQMIQ_,+i_)aJ8eG]r[IEIAW7y]Ai_JScăU"F;%gWB*+j9mqYT^Je.fWT)gdJCgAq[thEJ7inj142$Y;P2B)wx5M#fW1S)Y^&f*ăU"TT=E%ZJZB<$aki?Z^=9DHKVAS3En^ZxhnR$m_K-Yz:2RBYpTE+sq:geDra^#C3dăU"=[&CgL<a^&Yb9i0V;1,#ft]/Cd+/\dfpU$=_0)W9EMq+06[gs&<O:IdNzbj_lw6ăU"M?K+UVkw-gFJ5$F^d0K;K'wqMZ#BwjHQY5c_4PCsf.dzsXL+Jtg(QP;c:-V\pqWăU"_QO;$T,NcsTu0,4bNR3BexA4j9ZX3X<%=pO4?PVl]s-DvC/8jne)/'Bf_&E]K<XăU"75RFC2(]H*;0$jhgG*V^8:dZD0-drM+/iY-p+<3uQ0-cEeE>1qREg;A-+I:l/]uăU"<nSuntt*&P?S&.00b,+DgT'=J#0I]2F'S7'f=k%MlZACE3E2=%:n6/?ib$tqt(2ăU"c/:K'C9P1;FO.]8tg[RKF=xpi^%q<I;3z8XqqNWJC2N,A8j8Et$?WKa77pj07r4ăU"6uY6p)0YRd^e7nxV5kdC#?xnsf'rh>9INpjEANsVYp;=VJ4i2PtPwa.zec&\3tiăU"'OC?r;oi.DIP?cgAB<?VwWDI664>[;o]OYMY-cfS4c_%I.Zq&YQ$)D_3^?8qJ^IăU"=4L[3XGX;qN$yr/5^li)p(cmjrB+RK2A[Zx0(mb'>lO/ykoGHX>l1>N_wt<<:&PăU"r^_jigHlc[R[/XqNJl%CUMW?j[^QfPlPLdEH-:20LT21CgS=f'9vbfImS1Tko]răU"sf8:q9u*]Dbs<A9Z\>+f+:Rt8Ju[hGd'w9\=VhNNJ5S_iMbA-A(por.z[)28RqVăU"vGgLw0.nf$JOfFlZ&C77'MtjfcW&9+ojR;D5_ya53P=N2mN.ecY8yKiObXw2MmPăU";WASCQ;L,uM][^m.j&$;38.VcXve$>aQ-1vaA?_sC7n\)gsTbYtq>\iyW>S*w+xăU"\EBSc>T)-;Z)3E2t%KpZc>rPSYuhm/R9GmVs$oh47Ca.f1yc6JrQ[<ogQFzBE&WăU"Nh/A\swQ2G1dn1.T01IhZzF5_?Is,<5_;o]cBRX7g\;o&Qb7GP$Dh73FBFaSS/UăU"^Wgd3a*xqhV,FUidbN/IJJRetJpnnFyu#h2We3*8pObg:grPc9CJn2PA*EHHC\0ăU"GAk%tRhL-U4?E+fc(0h37<B2/DmNxMi4[D;>h=pSD8eSSPGuw8:JU<)Wds5/5FJăU"4m2%VDU<#5bzU#ULHyhqG[M:5T'SSqL_B%KaDs1slV<%hFM8=\:.dYmUlvD,)wAăU"G7TnE2zd_]*Ep)Lp5s&ij1OqkaS(F8jqps_ngf?DAo?*U/d$>mOJ=hkFG7yDLe2ăU"YJFT$a>KfUQ+UEETRj[l4/$-3tN0&KU%s(iF[h?mq]q.Vr%Qms_oXqZAPUwA5tqăU"6K_4^,E-+c^q=^=Q<FiBQA5'VCeGiCPFgU\zGG3dJJS+9B<H*X]1b(rYAJrkkj6ăU"RJ.UZ2i0F^pJ7/i;e8^muT^E%fEBLkDuP5Hp=SUjUhIxKLHL+[0IP]q?b=^JsulăU"v^V()q&E8qs6j5:Bh]4NT7;<>_D2%zpFP<LQ,2s3<b^GL0b8d8WDL&Z\kUjFb00ăU"/'9=032Oqv$>w3pl9EsD>8(#l>.NLV$LYOKVW_e(Wsg=NOjlqEs],XL4JQ)'\E_ăU"A4jBx9acvZg_OsP2LCzFSw&-uzfSxzGqcekR=d3x5&.ZU6Wem+bt5MI5^]-iiNUăU"KQoo3Aa4ZJCOyCVd1V(A-M8.+Qru9<*c4e#Qx.gjYBe*4J,*UFC-,ALFSecRanoăU"*^Bn-Bq_:ul#?p.tE31PmYZF7h-F[Q^26[TbAH*Ix]whpG>i%\l7#0G2P2k/=E?ăU"=DzoG*PWam^n6E3?*M.JWQPIVPwsJcnj,e-RT)cxqmP7)cvzIc1cwmC;D2+7_mNăU"bPKwLC/JG-ceJ_AohfugG&vg\[$NwdLViWl26)YJZD[_:64/[T-(,PzNj<x(>dGăU"7Rdp.t4.9z$mE_a,?tf%KIqiQ8#Z4#Vh_/]CL,bQ&nim;DEC[*_jQ_T'BG'PiN5ăU"^?GS<VF#C5GJYG#;wQGWdr&]+*?t\GL2i+Kecyq5yEJXSC/$SD'dIWMgVIu1?5BăU"Mi8QkNVJ1pk,^/O9n()Z?+UbaUr&0nSUvJUm3)3/GPpgA4;Ixifjx]r*LLYy-J7ăU"f'KK54Iq_[^[01s,7fJ&A8bK]b]zn;u2IF'(]%.;iKUf0wW$,Tnnpm]K2t/q6EuăU"t11l[Rg0-A>b(j[#rEm'aGJ9,s$5j?<w?9GT.TMoOOF'&4#eO\m$^[ZggZs[]+4ăU"T[A#viRhl'CkLVoF_%H=^T<b=DWt1MSkeq%ukFPU3'fn$I#N#-Z?rabQ?;h2#WhăU"l-a+;?p51>3a:C(J8Ss9t,lR^:c\j]&o4<oAX,A$xnf$df9474Z>Rb.wE&*md/9ăU">o&y$M,fwq9)U2ZR_'pUOk*2KdeQzU&6%lxQ44)l4.(1+Gkm.7/=G?]:%LW#=NLăU"8KpF*&nL)-2k&Ak+aK=gqOiKU3[0%jrY;;]R;kIZ:.7DP9*,8P?>>Q]*XJ'DS6KăU"<7Q4?WKqiZ+iSKi1*8+F]Xq?&KR?8j]gHm(6;]#,=)5'YQ8(2ofXC-bC1KUTP0JăU"rJf3Vi$,fiG$'o9=qm]DsLMz:ICJ^mxA>i6\j*>0?]gewG1jy=zaVSu>7mcY2)qăU"a+/R+A/K^KnM;\FM5[G(Zu?wjn5AY)V9DiUvbsr,uW90C(.H8bImgupRp,f0cCGăU"^d4wiIHHBZuM^i=rsFG[8Y3=nGF(h4U-P/Ll(qJO'NZZ'(H)]bT]qY'5E#5QeXkăU"SR<WTj)O3I^Iy$2P9,F$,l^,yhASR]a4Sk(41i;yb%I.YG>]7_A6M+IrvxPJ1LlăU"cTO:,s+f.KL(L1FET;#fP2xe9rY[J^uC0Ur%.0X*is><x>_2:ESoIDO1sUi;WihăU"8]Om?s7%6L54N3)$(8aJ1gfx+_;Uk5'?FhZd/WF/<Q;TS<:f>IT^fCmRoq6Kg4băU"^n1Wnn_G70J_K+.^\V5aKU;%HcTvk$E%$-p:Rrl%r><39SCP:L*Xk-U-K]c4g<EăU">BTG+FsA<rh0x[Ph[S(dRl8xj<'wRfxq96G^>Zud_FsCd5uJ%u\+'kk2pd>+kY^ăU"lVITvwwH48G^s9X98h+GI)0f(VePfjaeQ:mb#r67VsmhpnQD5oM3U+%jyY5I;.*ăU"OaxH6Fkj4VueC-KGxfG])%GO7M9e;ydr:K2pDO+l-ln.wEQrGx$3>=(_%#;F<K3ăU"'T^<;<-1FoP?>nk?jFqP8u(FU59D0;35h79K?=#,Vml_eC*]AGH<i:/St?w$d03ăU"WaM'$G\bmo3Cnj>g:\T[)s$,0Qb3i/D+c[G)SMRutXu42bPNh4A5>DaH;dLJfQ^ăU"6V.[Yv47qX>]ZD7A/x>X1lkW[^eA_hq)_I_IH1D45myJ1l1OK'y1:o)z9Q)M*)[ăU"x3\EaGhN?[ng=KIliUD]6)4GH_9n#lR_<O8S*N<9Z)%9Op=/#P4HerK,7RfbpW.ăU"ZcmvOk\_4#X1KnV1Aq:ITgN=,MdGkg_8JOfem>Srpvo\#H?jy7/FsYz)<p$uEbEăU"1Z;;oKZK%VOO[mn.coE1><m,%=)%-^G>?eUQt_4Q$&qqn/BgBwbT02UR9>bTrmIăU"gEow6J[qhnq1-^%1sN;XR+Dq#\+sR-49BhDLBIKW%L8<fXm.Xnf+XdYIKpBALufăU"YC:ndmL$;x4>?/wG5K<HoN7'_0-Gt8LLmbGutpsF8Jbulk*dk3_.WLvDs1,KjtGăU"]%X0dvt7-i#(p$jQ9&gGkdlWoagk0:Yg9qV(N81by?j,8_67He3\Gq*Lpg:Bzm6ăU"-&KL(S6\VQqzb\LZKkURJC9_ZTK'RR*9Kne%LDoXp+RYwOS:kmbkL_3G13;xa_TăU"MXq<hX0;Kg)z=Xmrk,oLInGx.2mdhDxdrgnGB:#;8p=/F67rJ44T/DFq1c<6oa#ăU"s.BzOq-V$u6OoGaqUF=\+>v786MB<H9kuqN=oHZkefMX2V?DH07XTj1v&0*t5,kăU"vsi-?4)SW0MP0vo/[RJ?T04Sk:UJc$>cqMW%\;-[TRMh4h=2^9B>gi.-KX_)vk*ăU"J01[Jysq<InAn9CJ%<;SD*p85Q1T$rV9Tk&*]o0xXk?+^vm]&8du%LibDSXxMd2ăU"JIpHpFD8fH3<yVQG%ZHZ*Rwi,#C>H^%LL/c1v.u+FN&EeDe%kInYmRk8p$r3f*^ăU"VxTTHC1%My7KXv3D%RT3srZ*gI:46+qPalJHsnTD;R5fK<sm>d(D5z/f$]tC$t%ăU"xEIt31Y4xF;UN=H6Z$>;'%s=_yM#;W1<+\X-%;LC0)pJGS_:S=LuA4RaUOFFS2+ăU"(NcNVDqi=IgKFi93S%q6zt04Hi8he5&)I4I*Dx2=F-M-e&tHsNRIi9ET&TIoL>SăU"Pn_Kf6uyl11Arntl:#Ri.TuF>WeRJK#T:;Nf,WN?zfNfx\v1;?Q?&dzSsdBgx\)ăU"H^ZI-2Zjvgn37H7&3u<1+R*U./.v=:ifXsPdR\Vo9\-fVclx9n'lE=y;=^Nx11\ăU"xb_Lt'u,X-jXa>>MUQ',rb(\5;k;q\Iy*Iv)Nag5$^u42Pn5QBG%[Fk\gh'uE<4ăU"go\Q*lzN3I/4H1fN7'%38[:5lHfGqf3.bV4G=ive*]]<k[RSQUrNe-Q64e$QsgoăU"i%lBNt(gO2ViT4H3MEq6<Cy/RoTx&DamaR\R$KHq2(*M>dFSr2-ny#L6ln#,o*'ăU"OaGq4S##_>*bZ.tNu>/lo[-O)^mmI^4#mHbFT]QXoIag$uGJb/XUWgoq,:_T7%XăU"FTGGt/62'GbxK+XE_02x+(hAv/>+#uIlj<AUAP$?c?%?=*FNw54v1,X_SH;&1;KăU".E2i\wK0xetV0p)Y_=zb;^ahl8HG=tl(dr,#OPrY&c(#/j\sf)M0Gn(T]*bn>1$ăU"[MSTelt3+r*O+&mG9M0nv]8Q2rOf$TDMhgI>X0tj:k9-qTw8u8tA8&K1l2N$=9HăU"SQR^?&X1'YdbeCWC(Ge60+3D]rkoqrlb__p%#m-wX'Pa/\4#g8/J6XC8#%UG)OjăU"5%jZm/G1MPl*Q'0Jflcfwd;IR;TR;Gvr3TVll7j6g%-8/ggJE-D)=VN,hU1Q'tnăU"R9ug/$]bVge6jE:2&Uq5F2,,iP]+\#'w)LeO\w)4Q']7Pe5hsJ2Ibiv\a*3gomgăU"f=\cp5n,hlD)oiDXh^DF:Qox2[$G7d)ChkM>s;UXw1/M*[wal8M=$'r,3)3ehm-ăU"Q)OE7=1q[E<2Eg0oLu0sMpaE;G3l?GJSCHcMUi([U;='fL)O3b0X#Ke,o9mXt$1ăU"s#uor'ObZAzhby%5qqrO_-MKkz%OprQoLfw#A-6$-LF?3GHuDG>az=AkoAmIX\iăU"5#4RMe99dfJU9lMVOR*dqjhLS'RI[caWR/l[5(R#A9T4\%5'#)/D[<p\1M/)Ym7ăU"8;uH,R#1dxV(1\_T:Eq9sKSLHcA:,baQek,.:ARb(SCv;S+jr?H0gk.(XvDd[]dăU"b>WBIv=r7)v]c-jcpSb+obPBmu_ld[OQLxVZZ6]K1/u'#KVS[/g)fOj2bGquY9*ăU"Ii$Pi^U.4eG\yIkQ:J?Lx>([I8[$+2GN\70_[3k-[xuaJu/#OecAZl1LE[=U:?aăU"A>kFW.e&S8-9[efk\(Cx'V255c9*U**TOK__Qcj9lr$=m.g8=9$VhP.NDA]S.,=ăU"9'cYGo=,K^<VMQU%n6^FHv>l]l>,bV[H-P$OZhI^DcvaO/%YjL$7,S+dd[4=2jdăU"hXzMb_ZVSjM(sN(NEn_^JuqF%A8;zA/\51=OJW:#1X>3JeE+2;_.[ro\'C%5L:năU"'MmdZiAa[rIU(gi;SsiI[*_yNgLG^C%7i;7nCJkHW<K;#\wPIuu'3$YqMGH7BriăU"fSp8Yn-#&9g)V'QHtNy[J(q%%kp)>i7WDBZ)6YN0I#9,%nR5#aW;(>s;wtb1e$tăU"\)y$vkCJm2s_,PTl\Yvqb1gi3V>ncq0D839*bG#'HES+;+KmuY1IvG&k&dB.4-lăU"SF/f$M-)(Dsz[YNc#X\<vU8p.U'&*o/3p#nH*(bnP*Z-+&x=dM-?s.z3K2=D9c2ăU"i14e)U-#>A$$ub'B0p=4mYBw_qh8tYX^:7b.&2J]CpbIi*^_UM:RPGW?Ux5W.A\ăU"t5&^>,j>CUsM]\G/_9Lp<JePC<KCQR,VktBj*\&o?j9>frPPWco6SN*DC\j4pTEăU">G4bNT(i7j<+q>k9<3]T72v&iBa%e2sF;v&hTIMujYxn5Yc#k_BO/T3nQ]daA3BăU"kHpIJuf'6TAD9FClV*<F#L%Dp$8HlOrKiu/T.2PI/TNwupm$IjWAT9\>FAQ1(a:ăU"FETu80xM.:/DJkMTTNWKwd,hHbE8pN=l.cOKm2+tPE[EXLR\X+wIj=mPZ?cUh4:ăU"pB[Uo[LOCL=-rRFZA(VEqFC6x9&Vs4hVon18L<J\3>MM-PEf]*5R3D-'c#DaNq\ăU"#.aA-/Tc:]5=[2v,\5]-rt^OTw2D4rr,/_]/xChr+jY)?VGdxhr3#rRH=i5xpJlăU"9d[vHSNPrY>5(p[69h5\EFI6pw=AqL#><7=)8-$R8]'ir[>50epvr6gR2>5W0pJăU"w6<]-x<e\0\OYK\CFZ1#>V>7MmYMos-;JKP9lt#R)j4TLx,yjk_;7fO.eu75R7iăU"S-=uKCWJ6.L=(lPhj+d%Wil9m+>AJe'O<oYMID_$Q+aN;?(Y6R-PHDArZ.nVKLZăU"&Vop73Wzaj_)6o[;?<RmS$cu(]QC[d<$d)F.&PaZd+Nc&m6+,$ed$P/uW)$p6g4ăU"=UNjU<%OEH9f,&Sm?W)(>%u:j836;r%,''QyW.u\7zBE.>bR#YrL<c]h+ifOk/*ăU"6nPL?JdOrtnP.HWT=v+?U%^n&j#2m&1<W<__5^_%d[UqD?rik/_hk#[Lo]Yr;QpăU";f+*o1Qs,z2Qnf./pO./xVpEdm'vT\w#N;)U,sML0M]mY/:[/:%n-C&N\*V*[DiăU"#1u$vX\cB43K&cuqPjdJzsW60au$+1s9sNP7^1P5Ea$o>[dB$41%Fgo6x$ELp,HăU"eD:jSUc'olq,9LnR'Cu9f2c*OYUl)Z\&=/oK)o6.)GOirThKpleM$OKNAKf&^]hăU"o&j_L/[R4O=1Dh]$0-wFO4M2x(?odvf(M9f/x*V?/^c'.s5sW67Pk4fy5h=tE6păU"[>oZ__5Q2um$dlUh):2jAQyN]%zU6IYtE,]43#xotpXhQ4fyB-IU1XkK]((_>Y0ăU"^tM]prD-7g^ht:D?PMYEQphjntVm7OggtgStf9#-*5<WSC0/vShUXALpg\$6(?PăU"1FFg#d)AUxLKgm3)1+fr_<UJ7_cir6>U%<dE5p]0D94Scg)lPb\K(D]SZpO=fNrăU"ey5;<ny=Q2oJnPd:Y(6udZ3M=+<onWl'8Oa^z]=^>k0U14q;+qfOvtMi^mKD&3#ăU"ThLKA;u<23/5GtH+irs-.+c>aY_nZ;>XKG;$8fE:+MIRa(G30hGqlfq%q<TJF.aăU"B3oeaa*HSNEcEMbK0Z[j4v-(\AK]B1h50UGl12$2i\;kYswI>PWM;)sX.btQLg_ăU"yBaZf;*/x><ci=B4T7$5=5WR;rsX/ZC?90%HZ;jVeM$Cc'N11YsSdG#?2oCJbo:ăU"(0(YC?7aHY:7r1]+.n/$F7chs+80o&QswBVs'bRYQ,B>WYrbDOyE\%6\<c3u-1>ăU"s>suvtuw?h7t,NG&cmCW:]ff?+^#v[pDeBQc6e\\H,2qEqNn/t2Yvr/'h&G>dT>ăU"PTGv;keGx=ppV(GC&,dhK_p,7X&$KSI'd4$Sb>Mm&Bs;p%h$P4Jk93&h,eD#=(făU"EC/b^VMZpG'4%Nf8B\0N\>4Zk.)j)5t4)=h;O.M=%-[xY\6P5]dZH*$=Jfc730iăU"_Z;swARq0._N[]iuTKOOFoGphWOD3fFC5.MT[8#Q8.Z-/+e:hp]G7Y>VYO)UKr4ăU"qSo;)sP($t%$?$p87VY*%cj-)9GhmmvR%3%Mm_hZGz&gvIv),09Wq5]aJ(e&8V&ăEND SUBăSUB VBăU"8E\F9AN8DH3BTp4u0[A)34/Y^Ss'tDVmvkq)xFd>'On(TsyJC]REO20l3gsftL<ăU"g-Gp*]3&?B0Ta16*jq:U:.8H=(Wgl]K-eSPi<d9Vl-ZD))T9#6>uGfF;VsNhm^RăU"xWpnm7e6N8kUk-A#W_*gaOeos9dKv6$HqeY&**;CMs2TVloY412$e)[EiV%C&DgăU"ItGE;d7Ez,Tm&NROjw]Gb<D8rpDBVv2]gVB%2aDuD=mG0#f%g0iIYz/p\br/gAKăU"27MdeO(]/Ea%vEAE3.7GZ;uGT'9Vc,2SB4>dae0M;5(hH7k,L?h7*/tZ1v>>OU,ăU"[CAY%+JaDa,y:PkHNIkApQ'?MHIAYujI/x37I>SF8.DcrdfQQtN2+VY)(PcU^<TăU"s6eO]6w#-$iZ9r5e5F<ED:YVqA,LJE_bG2g>xnO^Zw/[/gxTgB'ODH>2\VcOGS_ăU"zu'a>Ri)yg%l*<K<Joe*NlI&;,'Vls7I#;*d2*_dbSka_Eo8B1&6V_VdKHEkwpaăU"#0Q3DK?rofu#DOARs7Q2ej90R.;3./B'eg3$i)RL%HkY<?3h^za9o7UnMdv,Q%$ăU"Zjj(yY2^N8wSDQ]XOPKJBr,Hm&C)f#eIw-q/b[GTcVO3*FD2-#ClXihJWDbE$8<ăU"M#A0T-c4be,BSWhY[VBCOau;eT.*9l)(RT%TwU#N[:%99D?0,g+oNuPb:ib#MhrăU"f>sQIU)HNJ-\5-Doe4Xk>Oo=\:IBs.OSj]dItk%M-+_WAf-dX.y=a^:ndTDOMvkăU"PTDT0VdGn1nZ+L)SC>aea<S8gzu.rol4nH?*s$ycvlkvd8+%rMP\q=.Y'Os$4N4ăU"nu9TvT*ol9gmv&sroGDoh(OTb,5d]9*JcI&zKA/y%,hHfZ(+zed.ypM3_E-Rs+^ăU"QD?S^z)2b\BOQVxO.n7)Aok*9-yIlvxh78+jrM9.O4'toAxwLRL$2db\N?]i,8RăU"=z2E'5ft+p3GL=mHIvQ$dQz,>>)sf.,x%YH[?yUeiW^u\IP;%zRpX1?6h/^6fO+ăU"Q%EGLhyfNkD^]<qTsR1-Tr=vXd9af#<#FW;ziFwF^xgyJ$[1>5(_MZ(Y602hRb/ăU"=S^Os_Un?;3EX8](*8<&ByCX2N:7uB/$PTHh-wGO_)-lT(y*^\8+uO)$t5cuni8ăU"*q5%39/Yv-'Hrrl4t%3W6?$\l%<Lo1_O=(Lqgs-4>d&>YCg33Aa3,m<S]cC1o1RăU"NGN4'G;r%b'*q634iTJo:CG6B'IwaAKifp<6.R6e82bLY%*.ROj98#AY'rUYZjvăU"GIG=s>\,n?)\lype.O:*9G4\-oCVO(i+,=_P2,-aU>pd,,F#7#9D(#J0UZ(>:-%ăU",WLOw[r7Q402HsD%.mtNAL#rb>OAI22eE=-jO8PmQp<TM2sqtX].OUZvE9kw#gjăU"\G5n\+9uXeR65=,ce\wA(+U1\&9RYLk=2<7-7]:o&nc$.uvA3;V2]a.RFbdY4.EăU"3M3ntFIZ1wmnl2TRqAr4c7kT?k\Ny\sQDQ7+KJ-)<kFlH-HvnQ.TKJBSh2)R\RhăU"z\j>i?$zJ\TFHS=SVO8<DiXFz3uY9)w4Fp^/-?]kXDMJm^9o+3/w#bHw)pnf/WbăU"h0zCZ2K\rLA1h>J-/-tOULO(NgQGi'lP4Sd\24vw[)TBZS5PNS4Oin[u?8Q:h-?ăU"q$^rgurn&N>>6:<Nj1T[x*ALn#qnyUGSBuUnFqKBXpNT,rY.0DxKC$xhU-H>H0VăU"U^>J=/3?.;.(?0^*0#7-p?Spe]UpoSVbh9[_K-v/T6Oe[Ry*L^:)%l5U:S$\)d?ăU"7V^,jMkY'^[<iKoKAP#)+50PZ$s(EA8b4BFs&zBi%DnU7XId+_84E^s-=64xgBVăU"(fzXyJbGi+sddhY3N:IlOgq,IMouSGgQ/]_n\s7_q$;HxLdGI6qKU%tSI.3d(ldăU"o/UDVKg1pI?e)\WaT1>;ix3*3<iDe+Ab[P35JC=,[?h5CgfJ3-Cr6l>[iZvL>y\ăU"eMreh/>nv'Axh3mD?5gCxvJ8k,j<f2DfCSP9vL]:qlf]PBZW'd.=_&XD17yy,xdăU"e-=+H8a,Dpn#cRb.?zr4/_QMJh8ti$c6J933P2PQnt^6>FtnOTC,bKW0Y'xlc8TăU"$gWs\bCOIulS^_WO8s6qZXy4Jq<Q6O3fCeQCiuXMmGY#FDrnC7v>)sJyu0gYRLWăU";-G3>T&F8$j1*)cdAu,SvdV2^zvA-JuR*Qnu5IY<Z\OVvqu,Isk[.fit=KBqjV?ăU"Bu'jb75*uO_iOkEUwf);pJ%o[%JQ0PeRM-'<84BPbI\$)i;jZ2qWT'?T*EkDHRQăU"J_69,LIQX^i+Px9/:>Fd:hq3T&-MwK%CU&Zm.TX3nXpNI92+d&k&\?[A6cb)HebăU"DhPjumS\JZQh)HLzYeIP,<b#X9Ibr_FWbNX:H/8neSom?Lf_BQ<=:W2)_Cb4Ww\ăU"0XYtXkR&cf)/=u'0\p&bIJC#M\LiRAbt/Q6e4hE<v.v'j*<qO#JFat5<=BbvR5VăU"OF:#COZ0UhRHdrN/:[dXuS;nOi5Dbd6IrLWQjvA0M]unq1#2p&&f<\#W?e)%z/0ăU"VJX&[YuVfJ5/oslQiSB_Mp>p?_)ghNF$.PUJTUimCBnmBC)]a'X1q4[2wMqIP+QăU"pb\bOykM3d#\F_iA/XUji$a%oGQ5>e0iLLkVj\k_y/G#%XKa=nOCGHNpjDlr)xTăU"OD_wkRVR\t2#4Jc<gVA0f?]'%JsOu,mb80dy8yE^#2<+J3c)T+T-9Qhs3g/.g.NăU"W\:q$>_-q<JAOXj%<BF;qmsWXYSi-gU[Bzu\_4I:769;jR$08ghR0B*&(/C($BsăU"\)e/b7eu.fx)NWIKaFEV-#YTM<(V=/TJO['8]5c29=qN>pAm6B5GriAWEYp3K_^ăU"L^b#yIhQ1pDl_dnI*4Uj,IBC$)a^K]cNQ#JpFNHATrdA,3oNlM-B0T+mqb(hi+VăU"q^%hof+sq)kJttouV2A#JaOP0&n87,hwkm'<6u3$j>)q62_RKbc<pAN;E#TiId$ăU"q2dx]T^$weG3rwCJY[/1?[blY[BFO:ON\]S,9von(VIbHtwmJU0X59I#yM75xeaăU"a&-^.a.ZQ>a*\91Kj1ZX%H6ExKou1%D,0kGb7;2DA/3g5f/WT46i7mShk:1Q3aWăU"1h>i8.lxcmq>oqz4,UQ/6X'.^?Jtq0k<wje&^m0H]BChEhH$UF:6MrtY&dcObVjăU"4-$'iT_Y:uol5$R[$,Q<Br7_kHgkQmUp5/ioA4%7f32b#NAHY&kzvN?P(]SXU8<ăU"0x%n]NkAcCP>)Pwa-uWW_jb;0/0-ITbGd?o_<lUG5eRXJ9?+:j)YEUevWKPo?Z]ăU"q[pgpJ,-CG=7oXOSMV?(\^x?XMNM0li_]#<pffS;H72<C<N0+E%MMYUA4;kC(CAăU"y(J;k=Oq5MNWM>XH$<zWG^8]XDV01,CFBJ70PJ<[Bd_A\VUvj[81Y[vA]\W/$]JăU";jve5#<;;<shV0GFlf:?mpAL4d<Q'VEBme5q?,-TxT:4j.o(*n]rlPkIqe>u%1NăU"n(1-0EwO#(If\6Np>O1*SdfZn++)Sj[#VMq7p,k9MQmho8v7mQ=)p8<<'Lw<BdcăU"#6*(Z?-R3+t8P<3hw<Pa0L^d&^t1nZP&V&=D':j'7U,fobwt8ptwH&IyC0,\Q9>ăU"qs6Q*1Sq;h%)O7ig]4lV9fryRpkNv6DV16b<tvkngTD_ZTvpfsaC?JXQVGr'2.eăU"SL0=DmLNx=8K3VK'2<U?%heMfvnMK,(A0[;#r-i<r%EkgBHFvtKgv9)Z%arG]%oăU"qRIDHoPQm6$P[M[ZS4\g^4Y>b*B*W9Gb-/HhpFDwIE7j-]d?g?*u_Qg)*pn-iBUăU"cWM#wLcDv=_($u54eUbyG=Xy<CMx11>PsLnJvbaA$%m+C7()K,in4Q3BP,3Ge7eăU")%GG3=%i^bk.jz[/wE=k3\.;LVzDev=VNKUVn0hlq=Gh+sH1*J68c$,JHag,GbZăU"0h9?CY=t+c<c:1G%Z0mU0*i3HPY9H?pS;:QQ7uz-V3;r&NQFw^;#+t.+=(j>ZufăU"[;M+_2\#;<7V24BH?<x7Pgs*%%K[CfIJWp,&EM(aLqyfR6#\IrjVz3kD/*98qZQăU"O/8n0a_gM3?KpgR&]\u]]Vjob,$D<n.8]ARYnNlRxKjKOE;4AC&hF_)XSA;r<-lăU"h'Z=98alG?M#FA-'DCtk58=-RB7xVIoc9ej;lm7$-wYA[hIv1m+OJZBB6xVIk\1ăU"zh9&=6k?eN[$%PktfQ1#FE]o3;]LfrF%_[-:3MurF%_[-8gNcJ*[8-8o]Fcfy1*ăU"+27cPy[RWCy_DD=+;/d&[Gu3-Z'F#%iWLporbUrFDjGhdl06UU&P\N4'PdI\j^băU"WC0XTb#EsO^]^I-P8jbv6o]cGCIG[8NnLi6OC/?.Y(xJ:dCK%N[*%^_(FHp0755ăU"uA>'$m;^]-GTVlpRl[jOCV4SD\s9(2QT&>i&G+<=JYsN18Og.&;U*Uh'j9>R1QMăU"-)Ll=PY^'$ZcYVQfc2lvH.U6+:Z>lL5U&P4)h03?\A5YZhOj&%J+y]S70\t.2+eăU"9,ChO;bp:<DZ^>j.4_I8+v5R$xO^],'rKB^)<>e0mhNBT=i:Vu[Ml4c*[6MfuRGăU"*POR3M4gGRufd/[(GH3:R-LJ3+ig'A:J/RW#M3m,>r%o=fR/n-/*]r#[,Ux+fx]ăU"[P>0#-^\,-l3\'y1h5f07n4*N=$+zuX.mM9e+KsKGbfTMu.'+r?Rg'g*AWv[&&4ăU"Ck>r+AriSFEM;8[hP2Ou<:M#bx%%ZBJuXduBCi^ZpCM%x<NW(,A%BM2uX#5'4xZăU"<aiJe)SV2k_B%Ya.+hBEL$d>0KAUdr.u_?#Fu'.C1yp9$]7S,F*Fno&5BlvkMp\ăU"3;_>uNDM?yq+PT1PuFQ<BopMbN_bds<KD;sAy&_dg\+IhlZgty5a+JxB9dhTxNdăU"0>W3+.5kNtaM5*gwwPSpMA>?Op7R-'\J,M8SJYD3=1Jc.Ld&Z8B'e,T*:M8n91]ăU"n^pvOX3)OGbEw)J_5P5mg(htq&r%i7h_oaF&NcBfPdyVAi,xdJ2C3,&3=Lvfl+SăU"S5VcE+c_s(9Cj49u&^*ervaL*>wV)K7-t]WA7k]:#4vgfJ39PEsuWC66>P3d?2jăU"4W:QCR+ahHs\<fu+._<'(c_h/tQ+Ydf3\-#FZY$Jc<L007^U0o\bl-ckvM)d0QVăU"VtKYsuuNWMGr<sK+MHXR_zgir'iEQrv?F.NjrU1cY_AP^]3/o+V1+Q:F(.J]3E&ăU"Qhoe+u\v*H]8=O'r%Um6uLQx%(:d>BCsmL7[lY1KM-kPIJ'6o+iY1i()]FE=+$<ăU"=..(.iXEEJ*rQ-tOelUP&'s%FjC>ubFk>v#Pd.X6UnPANFCO[8bLiw]y7VyI%E\ăU")]*^krUXlxx[$klin4QTV)KsWJd-+$PSP_>zLgIn%f=4Ub0)/rCQH+&j/IGIwNQăU"(qV-)/X)E1:aK[mZ\FXi/gvN:Jts3A/>QpesQkw8Y[Xt847FenB3oD.TEAUsBjQăU"WJMDmU8t=t=U^fRUt6kFP?:W^;LdK2s.uGT9hq1I;A7D<bX#:^2M5&]ZuO+;2cXăU"iTvFmZx=MWeFW_Va-+N-fY]&U*o7#,>9#x/yp>ufXk;P[4jWHt)]_MH>2Mzc)-LăU"mJ?7BoUp4aVLerSb/7V),DUb-k/Kd2ou2-(w10Sb=j/r1:PdxipDNNlSXDd)L[tăU"CAd^\79dB#Yzjqey#Q[NFwn(VE(Zc?'J0;e2eoWZD?ipQ\U4OJ9U%gP8>8';YyuăU"r&E'ct?XH6oDUP3qFD1hHfWRI;'::X>OwVKdaNj0VUz;W(\oD?P'jMWN.]zZtD.ăU"?C;=+&H^2WY+iQh/&gi0(,;ngbntz&NQ>Q:A[Q-ShpeNAj:XWV__:x.,RC>'*2,ăU"K:m.os2a<<PIk1-c#2pGtVrU*rezQY.1cE/[))$=,4DUY$oq9nR2TqCeS3IZioOăU"=SRrqe69dHl:ehrtZJDp066KwM]<yS,5REY12:\,vDTyBqZhcEro[7nGmaB'O&hăU"L?YiIZ-Z'EPS-K(a<jX^lC_#dg8w,E_:5nTCIAthp<MJO?vl^)qSoD5M09$W'*)ăU"X_fm#\rHi1>m7^)>8e-X+'xE;2:lE?KQ41zEK8LPr5MbMR:.NlqEV[(%zCos]4hăU"NM^C4Jx;'HC3jcA9vJ2/_lWmFk^Vxun?Np+h93SmMSZR=Jqu,xiXW?It<b%O]ZPăU"l.)B?QptsT0bfI97U+wm'_ON:8uEs?pfQDV_L>QY5x8'+o_ylj7gm\%zAg>a.%HăU"lS6]ta*N)_4Za90hI$^e>$,E?/jv1J'G&.9oGie'Q9&v*9;oUs:1#Q&MgUJ9.]?ăU"C>_Aj1beg&xtwm\=3oG'dzLp*w7$]XQIl/GB<#[i6e%X+s;T?,rq25FBj/8C-qsăU",JQ*^5#=MN9[(I5Ht(bxaA\2IJ*>dl6_%,UR>tj\m'2Jt$pW.sB:[bePc'?8'+_ăU"&u<v=XMDWA<m,7)<&U*Ii5;5?f<_t9[TNm#^X\\D5A6[]#:*JJ4Kd1HFe<r,(H&ăU"3Klf3^Sba:sEbS8B[J[ss$u^(-#1&+3fA?+F]E[SkMu*uqUi*=ea#z/c,'Vn:7TăU"p[k.5hs=Q[n#fb18O(3[1#BWczFzQ][65D%+aX;]CHKNSf=sg[[LLWeE5kei^]UăU"G&uMLY&zBSs-o8q<F9.[[mZ(LR/J)uiD'SKv79f;Tr#L]pD)(j-'P6sAiZbs]KlăU"AI_'w.&:cRPNkAD?nKl\cxgEbcBYlf0jE/T1ex#b$tu4ZN5_5%SQguyFMG#Z5.OăU"=_OAnv&A&9au*[9FSdV?#_WeaF9-pqmJMey.<[P9ZEAcD1o(SoR7^nI8In'%3qqăU"M9%[LwKN>K%u-K7dXO3kfaF'i(Gu,Al.3CS)&mm((lz%_l#E%=:''cN(*[>I>&eăU"'cm3L_s<fQP:xYBNqm#qO70tl0lF$D%G5qo.HaiONu2,/2u,/r<HS_4:5jZ=RgbăU":/aW6Kw):d:Qp.6(;H0Ab64RV=s6lvkVnDZx0dAy%bz(zBUM4e>dF;mjg/n;j6[ăU"K'e39'ghWuD\=eobb^[CYebCILC7/e-gf/a.23qbWG#-Y';1stg9GE[LOoPK^2păU"EC*dX9e8TN_Nh$I'K#L/D[SAUkn[DE-edV_OB#K8FRd>LQj%yZ>9oe_iuXKjKJpăU"U#3vsT$m<]2*%dPCsbm%dBwM5pU_GGoZ+Q/d_Zw\skyw>C[pi[jwBL]b#CAPU:găU"'PUMQw]LC3vg.Z+N-j5La%X/?rg\$MLsv*iIS%BFhDQ5+%'soa5_[<elRff,\=găU"TY5>eT*\CV#hi=1<k)Qr=d7X'Pv3H9Kwg*BqmTNSt1#pd^S?an8ui+iH#uA91:2ăU"s*3db9ix>G?sAiRkFBfS#zYB-CsJbfjlq:DQjq\'2]wqbkoF-aG71$;/Yiv<W1răU"GDR#yPncwr8jGc'\'TxwMq]^kT1oHS<fB4GM=_^*b\K%F9Z?REll-TMu8q32tiYăU"S70#M3W;*'_QEzEvH[*FWHkh,Yun46RTNAaOw$^qbjE#Rv]0NhtcG<Q$NmsN8'3ăU"uXS%3#?o>oV:)fUGIb_bS8,V?al'hsci\x0M-Od]Z%#3o03hMK$li4=2+Q[?kdcăU"tl#sM#S)kstR*d(I^KTv+N0)#$RuVCVlLN\.0zH<xcsN^G(/OP1=^k,:(d5'#dRăU"[hyqPKbaAa-Vsfi9K;0:PB9r'NE4qlc*DP5YlA^FG6T-;9:nmiW=^oWHlfSh?:(ăU"ip^N3C)t\S\9HNcNPTVMU5[7S_D+U0KYm4jPfZ45gkP[aD+W2n6/(G9p<rAeJedăU"02(m1A6H)P-[C0L8M'>$,B^fedp5<3[2t$W,43*iFl?.go$xI1Fx4g,G^sK$g/yăU"'qi,?05\k<A2L\ka2)>'>Y<\9Hl\B,:\oMTu>zHq%dn_^0ErZ5pu%Fwph?dt--_ăU"\)PaSxt/tcw05ee_nM5*)h6s]I^ktr6v8oxlWpjc0\]VWMWz63xPTdD[h4$E+QTăU"H*,zJ[z9nRDk$mTqskBOCzxMYH/2H$g_aA[cvdDJ?8QeDFI^IJ6hc4d$e'%39J%ăU"3#J\kRy/Cy_cOB'kjnYsujI;rlcX\uCG?,BaJI/\xdosLT2[u8C_B-Yn\4GXxanăU"dZVEPTDf=LH3U:[#&kS8U_0T)9=uF,'UM6%,Q'(Va/dWdw=e8\'oZtHA_-.OhAEăU"(*v[_udtJ:7+/V$jX>Im:f+$%ROxsBkCI8z8cT)Bh[XL*72\<idRXNOT4vM^M52ăU"3O+DdMT9S\Nq+D9[oA_K2CF6u7_?9D0uI4uNg565#??2n&E[04J-Td:IhrpMZ]FăU"UtN:t*]$rau?r/r^d\(5nE;DaGB4W#k<FE#9c6So<pVs>4rcER[uZ:r1PArQE-SăU"BODwgft/M0iq5mc.eO9#nbb'bu(e,T[E$rK>q;eIJi9B^4BhEboFj1xOA9Z\^KWăU",iG,GzTM,$askTgK>E>kurN^i=+H'l^T]QJ54rz.ap/7]oV/,6i'<y5)[tk3DC.ăU"aHn0^BUbj.GXVQ[L2e>\]CD;7Hun+KfT-oKKcT/iuusF,Z?S3/'SF[\u6//x^6eăU"CwbS,plE6Xg<.3nw<.f4]9'FQ]u'me/ff9\dKfNG?J9uWMfj3ux)iNt3:KY6h'găU"7fdJ?Py+Md0TJXhc,F&69J)^hodUnJ5a.T]spX[-hoj54/P?3XO[Wo^V-sxL_[FăU"RqExw[ja*T[2mb9S:?t2M5=gI-iG]:8a)z_Gtmbk'YnPcoHqAll?QW?mF)F*JOmăU"2HY0J=M+o[lkaHr_z)v&U8CBm_l<k\z6Tr5/CJG)'KAbJs.KOCiJ'.E%&F(Pl(xăU"X>;Y3.?2L>br1>^HZ1MheE4c5EOL-ovobDK<;&_k_PCS*2XKbUW4\a%Vk4k%Jq)ăU"zot;,W/qMF#lPZ$S7S<h:9f[v*sFeK(87/<bCYsK5Hc/q%3xYn:#GM?sp8utse<ăU"tSeba7(aMX;ufiIU%Ov+bK]pwWASP;0BDKmO=xEnRI]xY<x#t*5-LxsB<wipa\?ăU"Rh?:s(mhXg<-?4s#nEX/wA<JjApiYK^,h;fI;.\iE,Q9E'0C2Ke<Nhqp\a8R/i4ăU"9c01S21*Ub0Zd5-mDp]i#lkA2JN=Vgj7RW>K-\*/^,_QD1<-j?;tt$BY\2,T*J\ăU"yf-fJ6]N;>;b^^&Ol9W8Mc9t^Q_D6[vs^lDedF#fwHS-/h*&/vb'%59BO\v5HhiăU"<S<<USxye=+A3DHsfJI6htk$NC(%+T\;B-1s]j4-XBKbjTLm37pvttQkHJb%7BCăU"5xgq2NAQJJ?#_U7Jamsk=fu,_8>uBPm^mmjRnumaB<tswN0ON(u?ADbcuwGFO3+ăU"6mcAVp1$Y]Y6d$yZo-Vq&4q>02uRnj>3DaP^($>MDphWzRNI_&.CDXyl9*?AVwkăU"tr$Xk$vhrWlOr0/=mynFdD=xolr/3hsrdO%V)2uqS,u/(LfD-*Y=:,C/S0DojZNăU"Y;'=K?-b8MHT1hJ^MvZw&*;gC>1r>F9gp_.Pf&$t4V((elb,3tlB7,PIhae$f,făU"/BN4t,yp_Ig=H4H3%ACYyS1JVDc:bo[j0S<C4%jYAsl.Zr]b8MD<=(UFVz+'&8HăU"[wJQ7GkR?fgn*b;:o%0AhkiC^p*]^X>GgXAkJvjlR>z(a>wH#u5*w1faT^$MSf?ăU"c*FX)dh\PHx5'Pu-(#JV,P]qohe<(q.d2*B(C4B+:2O>bZt2CCWcM7W?eW;IgjcăU"oS3U($+Zq+uB$2-j;2h6P4p'PTEJ)Z\(TO(sxpXdU<:8$bD[p%dN-L7(b\CiP5?ăU",J)]-s/7f66jxL-4>-]UMLlKp6(]C'iU=G_+:fx,F+QUconlRJ*CG0^$2a.lNl&ăU"5?.JSG&]<6m&aLPALT;#kbqI/7foso[3Fa_b7cWEYSLOhS%'Ee_sCgktfI(i6k_ăU"r<laE;V'vO;sD_i:glNQY%lA,KG:bH\qX>$?pAjg?Pps)4^Jh2-Cp/qThkNtNG1ăU"5B]lKiVEZ*lF5y]GuidpH$Jw;(lWcWOr0Hp6BI]D&=SoIPyU6bHLBd\JlUsjo9(ăU"^FRXU'435Vwoe*#)QD=fDy:#K2stZ1zW\,5,rio<bmdYgovBh<O?'x1R?[CX.FuăU"/h0ygOIR*m^s'eInE#dDx=_NgQsq9A+U9c3DPOgR/RwWRTrG_5NYKW'FKdNgS;QăU"+hPSOyfDEYS5Vszn%,=JHriRr\MhWLTGkIadA6tnP70g[&$(ERXTCY%^r:>6g9[ăU"/Uw-cYx_9T$GyaX(XfmpuL2L,3M.7bterU2OV$/&u6UdEX0^1iPZ7XNbp,T$]pMăU"UPJ_Z7)/$8wi1c1rFQ0WymLTDUE0\i:p^joX&.uloX[MEetDbQk6ClCFC]5#yuUăU"vsL(+5n%(/*tz\FE6$C..krKqRyc).nR&v3aIzuo^HdQ4j-p8_0AB._]0if_ILBăU"dM;lE[;wD=_ah$k5Qk;t2K2X&4kBhDO9WWWtK(XH-u]YX2_$I,3KK>L&cg6ra\uăU"&Luq-IV%ia7o0qTB&btTG#.ZfW&,u(HD2]On&AK:X-:j1Y)8[)5gA)'Q9lZ^:\)ăU"]8E5k>T2e9j1hadiOUeUX2&/m2Ff'\*\O=bqY%Iao_>f)WP'(D.x2wb:DdS2AkuăU"Rx4P&YbtNvBnt;NJi8Rs(]#ripuKLOAI0R(SSJ\sdWhuL=IjJ;UtoSUEV0Gm]zPăU",e8((6+m9&VrO(242;wT\dx9NM^(Td(Mi*H&;-y>Q\,IKcn#cJGtJ-[-nN-LLa5ăU"YHc4\N<P.KY8VSOX[\-Hu?5+r04O?zY=hIQPl</vCtGpns0V>9&3w:1e(AY;v=zăU"-=W?j'Xn+J3#U]F-&1Uyr4P1$p4S4N;t'%&c$eZ9K\kI+qa*1%Kt'OlwaOK>,mwăU"q#B>1NtoOrDK,1eb9J\YR#L+l.$yR)%HrzQ(Q,OE#p^%y%,NR1cjhuw8twl2I=găU"1P.r55O6sH0$8UXjz(M/q('#I7a;b9.h=0]10)?xq$f9raKhILuKeN=hJqYW$e1ăU"g8Z;ONTJL'ws.4pABgwP\Y+w6?9e/#eu21]2Gg7mu2ZLo&8I_1z2g*Y]<s&s>jCăU"dDo+OV#&&_[D?x?R:j(5yX29kfJ3;+y+k)YhJa9KLSx?:9)8j1f:ZQ9.h88jdapăU"NY]fW:+<7P^N%jr+sEJ5X)#0]6mAPK&\Fn.TW6e2NE'uv3c%+P1S+q(0JKn)Fs1ăU"),GFo2l_'[?FGcSr5#W4rsqu(-n;.h-l?f,C9c+9<uJ4E%O[.]iADQV??H?>,yCăU"soM-qk*'DJ#hMtK&AIMxi'$Oq?nBlf:4bVWuu-^GgZWYdLYuZ1/\3T=7F1qd5NgăU"KS7jLwIHun%U?,]eZRpMCHu)J#Nq\J1<f6hy4f[eS5u<>teHy9dT>XLbF0aZ\g^ăU"he9J56K3\=3?Gj9&2Jqiq>;IJRNgLqi#y90+n(-?-1(nwKd>#cl5#^G;58q+^[<ăU"MSVn6*6oLu_(sWe?1z+[B67-*Rh5*g),>Q]dy]KdHM7*iisP=jTi;[g/&LG_6djăU"Q:_tXij2)+<xyBy%3WKH5j7iq0^?2W0/By.FzwV0,b79zD$xA2W;uRm^$3_NTj8ăU"L#eP>he0sLDJA\Q\-Fh79yMMC.cQt1M\fUYyE:3Oayu.7Y1r\IZGW$=a'N76VY\ăU"Y6A_#ROqqSif-xV?usWCpZURg]/ws/YpZ8gSe$,2m+wcK_G0,c;U#;U_NP/)xeUăU"&KD3_$Ay;WQ+^vAF0oz:=5<E+Q]$-n./K6s-jpc[GiE(*+C/teoIgz^_Oh4=we?ăU"Uag2EY%nK-W+(ee8U,3N+(NVtR2CtQI*bT0;mg0_9,^INpv?S7XLlr(wl=<eE8TăU"5A>FI=_n1y?t2/DFa'dznK\L>+s#i*8l*w'#4f*\VW.%SC*ujn>DAXq$K\-HM;0ăU"'imhx$c=&&PO%c5K.=OL0U\)a?f:k]Fu2::fCOAmw7e2FG)bpmG+\v_LAm0R5<oăU"kgrfJ$4vX+Ec8<UjCAh)4A?\Hq)WQUDS1EpH6JDd2k:2uO)\O6b7LMJY;OeI?<UăU"9YHVeYgiI,Ltq,)*Y5;I%-vIJ3;f5g5Ui>.g._&3XeoNPFQd5VOl6<%Gp^Y]Q6'ăU"2=(poN76Ze:g-tfvro\L4SnOywKJiNR4&8Q%_e=$F(tK)8Cs+C/7e\*T(Xc?>1.ăU"q5QiA6vSxKEDTEU1>9$jKLB8ae+(2F8aH*q2^^'M$Fbh8RZh_$_:;y9DuV'\qPAăU"QUXb0W%a^uzaASmjpWW'r$$sZJ=+rOQ]0%V)f=_G(3dV:tjO/Q<7A;)WZELK]4RăU"fIZr[6PG?M+N+h>-]/TNbdB_ZY+IpJ5trGi]Q,4AzvaAtLAI(OtUYq[v$v-E/LdăU"'/BT_Z%$6fi.6uM\1wqYp2k=w2&9$LY\*\E.Rxf0>p(ehjGj/?Tsaw5I,;eKS6]ăU"EyA75W5a]98omu<#o#K7v$+OCMjINp1gBG6?ItHW8=9?YWUW-Ul8qF'#kV8\'ZfăU"1o2nf;/sTtFBHiR9>.v)>EBS_BETkSur[m4#x)61UlKVPDbu:YLD^g'P763Bb&,ăU"RbU_P><IiD?6oB[SLo3eZT'ZSu?GuM*MC=X;4KH.+Z0G)Rz]a68#Czn#sHGo-1&ăU"%Snq+4$d5,'NJ+5FLt*g9a8VFrt;?&?3W,[zW4tTNNE>o8es0-cpmxN*WDTBG&LăU"DaZUI$2]^<9%d<ufM_Nt1\rIrbnZm/'i^G%1'02OJmGs4HVAdVYQwXF$X(p4)iiăU"3Jx5p<<fjC39N:stg$;4\jjjLS-/Ct6M?;vQ[Bc/8p5V<kI8hMfdnY>b,qOEQfKăEND SUBăSUB VCăU"R$RLG87N;0*oxo.hp[k1VewTVl>ss_T^l#ibuJGv)2iK$f_4,^nsr$GYujaOkT*ăU"jX<SgktEVj%Cox+4VFx/rZD<%Ji9,I0b5aV$qty'8P/(>.#VY'C*f\2(llws&C&ăU"AL9%[LVz51AUU5Q%rl9P7CzV,eAy7%NTC=F66YaKASc(^SOg<04Qi%lwdGXR'B]ăU"U2LZuH$-T+GGl<zZ_b9nl01XIN%$>e1\f32pL30)ul#c7mXGGBt%aS/I=#L0*O*ăU":S/Mj&W2UEkjQia):(%BfNtmCRgEI4chPEFnbI6)The1.c0.S]:P55wC_ieZ/F=ăU"=2wX=-wtD:q39s]dh47S6oS8L:u###)z5ipWP*(e+hFGYZTx]DA*AY[s<=1=CfGăU"BjBeV8]7/Kc_)o(?bu?;J9s)dIaieTrjM/xiF/wS4x2OO.tPgU(]Dkn25tJrP(măU"Se^>gK9[jN>t\\n1'\/atT9#OW31Lrp<4v.ZasN\&.lb#auVk9Ak5tjZ.?q)eX=ăU"skDQsp8r(7-KC0-)j03P[V+63T&ywcVcC;IN]l9yEJN>8oUH>Z?LL?q51:]C$4măU"xK=.:^s.QL=(W<EjWNZ:I&*NAphVc64]<sKPIaDifPDfPl1WWVot<n]k0,RX?mmăU"<#k4\h-6Rh^F?HM:&1(B3CxakPjR*l]Mz<A2<mJP.2Rv]Gn7:PP]6>EOL)+gYb9ăU"RR=SkBx\Cqg0-6i)o/zu=U:ad;U)CJ1tjKQUG4\b_mBOfacV-y2Bl$)?jiNxjQqăU"8bOm^cZkMpdx5HJaVl7KeLH,Vw2wM=46e=K/M]SRamZ\bYTfS6>kNf?q*^2_&.-ăU"L>sA0h&jI?G:sCvLeTNh26u1?61xTjD/]/QT6w*%(\?<vu>owOq;vu5)?GZtEYHăU"3LKDwU7n;zX<=%cuzRb$_9:XPlb0<s+pE:q0VZkFRR_nJb-xI0ZGiiNw<=CkN0făU"WS/&1&u4jtN]l2+dY*,)WJRWlCSegn/*RfDavsFFqLUX*c(Nl>?^$6^\J.J]le6ăU"h5hOa4a06^N6IZu-wCMd_)T=:A.?1J]SFUno9009sF?5'lOYAYF'I=^P]_<iqa8ăU"J\DMBYgn9>;0VR)d>X?pAG1>)EK23m79TXdZms3uptDD;BDGXic\IjVOErro5LGăU"U]ZX%wo9bi#a[bNaoU(pZ2UBiU1fkZcG3%yYo&q#YZ)B2U_/N=9IK8iqnjd=HYpăU"ORYCxFS0ax:4s^(Z9*4HA-q:sY3(7-j^iYGOs%'U2qLHZY,=ez2(3[dM&D8qy/9ăU"cg[L^KF8(H795*-i'Ejr'OHVal=9-W5vwWr,Z1Y(.S\D%ZRl:yuVGBm7$lBv\6găU"m4&F9wq$6F=VYw3Gs.^K75;+6KA7O2%pujk:5'Nv&^EMb963dd\='9#Dk(b#nLHăU"6B6El^JT#p;1eCUbO#67>]3r;oR5Yc$6,Xa3XvY=iOfp*<yHXffu^aIgaAM<$e9ăU"Da:UkvrnV0nF_c0?9dZN<l[Oz%sdA&PA-lKBcq+uQ(#Qu.miu6K8.5b;u_h]^59ăU"AJ3U/bZ.*:]Y5)Q]IVaaFNocm0#42Fm:q8fa9BTB#?=CL1T:I)>u'T8<:2r,hJ4ăU"fa73#Ih:FGU:9\hUalfUC7pKwHrq.LL$^jWSKhvvj/.;^C(UM)N^2%m;L+UD**LăU"oG=A=-kU#pN(eoYJX#/3asoC8x*7<(6%K'/rLYtVPUifS$dbhez<CjNhr8<#63UăU"D:SO1Q\uDY*BpGuwATge$11eZn&FL;(v\_nFA4xpb#7)GMWNkM9gG<4vbmmk+dTăU"va4X&/t=Pp8C*c;l,#&hkSgG?5Zf0Z2fjjrk:-mv484p*z0[9Eoa9i0KPsg:da=ăU"s0TS4hXAHJ>DEuckh_enll3n)irMcnVD2,pG9su,KT\J$*67Qkv.%YpWwXmcUc(ăU"?X^Lp:jo\oPTak/8$qZNPmk[0i-FUsjBdlj?A<W>S^balQjAvGS6aVxEWhaFc2?ăU"s+MbNYN_TI?mf(5eCu8c<N0qHI'#9D=%LMoEngJlC=O=bU0g:[D<O]ebU&\nk3IăU"AHzUuW7dYX<oxNK5S8]'vt$IM;)L&JV)>]fXJnv9-c8tGqtun1BzV2Kd1y/J+=lăU"NK(2rw=DLKmN[Rgv_2lfc0-<As]F>JCBLTkXF(\2tFea^nW3S$Wi_'t?5f%MYl;ăU"-mwo*M/bd#^Dt-\C.cO,wac;&V+HKh=D,L=*'L3o(m?5?r'Bg4Vq%Dt%g6ig'$făU":sPw1fJ\Nu/1,FkYdgKss[/R?CmzIutM\H;Xdq&I(qF$H$'yGBY1m:VV<+#jK1oăU"\LGk#47na?p]J:5dy;hnBwtY8]9HNs.pP<k8W#\d>jum2A0i1I/sY?U>t9jND&KăU"W%b1#PJvTKG?dP65>ntkg5&<9FUmR5+AbyL/j+xUV<TP?P'w/&3c6p,y-mu\*)UăU"=\IOR?SC:;biDB#^IJ=m^/g'[XYTeZV;4h:GN.C4h?+R-1dufJeq>m.Lg&>)KRAăU"_Q8;dcR&AxvVZX33bD\Oyp+D59<x#3X8]1]S;)-Z\QA7=2-,RCc?tbE[DY[Op0-ăU"=v:/xjk>/lUGX.AH+LLgT3%,lp$GYKI>S)yNm2,e1ja%zN:LHTn>$'\,),VC>eMăU"pu$gIrPuB*Ech6y6K;T2&'F\s1MnS:1D0A4)?$,=?RUA:wS:s0DW(Po^>q1vpj;ăU"#&d6B;_S:61/cfYz5GEe9uWD7jn8L]8;#>HH_x)T?4bAu2aREg$5HwgW080s9S1ăU"^nJvYH,(RRVRRg=2mj2>U:-x:z>O7GE'$ZuqVEj.qP>rDld8q)P8&S+I4[bG[rwăU"g9U;8LHF:[eFDE8i0)_F8=R5.Jbgsdo;m\%uhW\0J0?c-71u*bk99/$OC/49w;[ăU"8Fbc[-p\gjd%PAh0Qr4dF_R4_94d9[0unn(e+10\uEAnM?nO,:/xu?bdi)4lTE$ăU"Ll0lJm+27oi:E^9WWK61KwHt>22gmk-L=aUmu,ad6A[*0UH,mp['jj]JFXDmO*5ăU"Dia)VT8-vXSB]=kknA^*b2-'i:YLiu$GjQ%Axk6k3>F76\MU5rsw3n7fSWN%DXvăU"?CXY'Fi3Ykn<#d,?M'+)3NT4VN9V'<F_Bp-V6KK1HXtHg,h))3HnXcr:5>v:pqZăU"MdS7[PsW8WbpR,EvS.<IRSoT'DY1sXKZTEul,Nq_Yk2%C4<*&=$X&Rq[3.<vx]-ăU"Nw);+i>HCIr$)=Bq2ed69'zNh8;<Bvrd&n3=\fwTMQCmP0W((;[zkB1[SIOc,G0ăU"iz_I4Oq%>plFu0i1RA6Z&TYn<A($9HfZJDU4?Y]ixJ6CiY_r4NOLlo3q<l'eO0jăU"_Ylp4$R)p_HX8uXb&d42m>nrGyDf7_<$GM<C]M+i'D?:M]Vk*mCldQfkmebP(aHăU"[bgnP-^iY8CH.R&>uQh^)BmcTVkSv+cu+aj;YthHh>nK<?-hBn$p5VAttlKWL=>ăU"dK.YKoK6;o63vHCt8/dSnd>>DpL#t<eP-k<N]+5[jVf*>8LQk=KQARcvQ<[s/^măU"L7AZ8MAfedSA'crR=swcndj'XPjIQs.#F)3K.LJz?Ah,,d6Q^?$03>Q:jq^>W8PăU"JEMz)qt[sv*jjfBZDR2aBno0d4t0qF\\c4MQL.=j*B:PipQpBwPb$Cll]dP86V%ăU"X^^H'qTV/3k<lxoB;7$mkTc)ahB,0h-=;lZr)fj\$.>o'ZpiiVK%[0qB0owkL6>ăU"T-.LOPlL&h9\ud[_tAj(xKkLl^BlLr?fity)CyN\fCLGyLXf<7Os=7/k&Y_i&EmăU"C0jMHpIqL;d#-Hf,/enwE&DJ6.BC7q.6y,oXO>RcH:hkv,ra&2-R6l2CmK.<^A-ăU"kPXiR[<\Snn*uHBY%2-B>$2Jpr4pqp'SUcS.g(LvDuNSYq3n+uhK1K68Md)HFmvăU"JNcr(R;YzwdOn,squYDh?piYi:^9\G5cYJpDA/84;U)L\Qh(P'kPfp<JGl&[VTJăU"CLSvitH0FQUGfljz[__'TYl$O8$VBHFiLg=GHcgMg^1vr(e8GS\b?KcNb/>eifWăU"Va0\3*r,g6c<T>rZot$h0]UX>+q?E&/T#ZcmWe,sK1Ck;h,4S:ALS[<%Q;n,hu?ăU"TxqLw5D9aIqnd,*2jM^_\bOZn(wc1kaTr\c<shDTYw$f\Tgghp#y=W'_ar'NV0IăU"oi2T[?3&uN)Tt=3#-eB[f[u?EnYcfIUGIiK^cYqd$/\gvZd8Q8r+ZDM)g$puQ<BăU"^J]+*z?aaT=(N73HD:MYVTZTkbdGPL;-<j7_Pu\FmrjSWDhcgW?qH#5H?HsdaL(ăU"oFROQVoo,9q:WF4xM3$ObWBwcB?pLe<P=q#.d&=kNtxNFjxEf_4#mD0s^KqWLI]ăU"WT4Y([^\^)I>A=$wK5ZEVZtUUAjdYPf^u_fBW+AHB65Nq8,DM*Y^61#_*LTW6PiăU"^Jm,2:S<'okW6ukE5lYhVo1l/^qtf)'6ZiL(oT'b6G<+bNk]k#8+]my6We9Y_8TăU"]F[&,30(?DsqP\Wavo\f%[)0XW=KE5ObJ<U/M[G:B9uLR\f%1nnKUwH%uT+HTx1ăU"nAX]OH?]X4lqj>gd7Mi[SJIR9c$552Nm\B_VnWli<97<W.<cwO]ApXlgjNiZG=răU"Zu-=^B;?nCUJa)ZDXp2RHqd.&Zr4(U=p(:<uJ#xuI&kIYd)3B5d)SzXu[n55WPjăU"D?EdIscM#ae#DM:oDNZ&coZ&E+E+y.Rluh-:e6#K#n$2e*rK7FfYEQ/*UI=_XXxăU"'P,qO.EuW2N0>H4:lqdvA0MYbr;3M=M.[21\BO+U^m4\SE4+Avcb]b2w*_#vCliăU"f#2*L#+zGqI3t]N*Oot>2o\]bjjrK;7m>F4pvBDJSFA/l-gK_B_z)*o#\3zHIT\ăU"=DG7((Vef,UtH&egCmkhQf[m$Gv5a;7l]&NRoYF//=udX)1k[WJaLa1lmOWr3qBăU"hP4t_Exy3YcXc<a-\FJYnL%P#v2pp<H/.p:62c,8>]UwLX5qzlI8H';^jIO#DBGăU"6DE$1Jmy'_iA-NNsamqNShJAO70YoMIJ*Aye?&7wcjf-?1mTC&ho5ieD<En.[.,ăU"r#DQKan>iT#qa+G7m5*_uMlekAH-F<n8sBj-LmH<s[#&J*OcO-f\c$qwNJ':#H,ăU"W.^IN-i=-T2g=#B8NtxPmqCLf)#f3Arb*%LP]CL,MF2r(]hcHZi/;C[;uvTQ[r>ăU"#>VU[E8\?)H&WPXh%$>/62D]=pP8apb;3=yVWd-.slo0Vv$*ev]tcKfn\9O8vt5ăU"^8N?AA,Ig(\rsw42[W8]\BaeYaq$>/JYbZ9$8UsPl%2VfLjKbe?U;tP4=waO2vDăU"?Ux],I2%cS6Swst_<o<G/Zm:ZCM=dU>anYCki?(j/UrABQHW47QG]c?A?aS#R:=ăU"lOXf_MCP1FSQlPlFUHK#\mL]HX]GXN+wTLkf>Y?(H(EQqaeaPpd.615CY-7\C<hăU"bknzJgw[aZQpVKCa,Cms&=e-.c<6??FjOj:YDoWRm5'Dp>5gFOD?S7nW\U:fJ'BăU"s0EA&H_fRY(,kk/=v?H*,eDo&<BG&F.P*i91F=\2P]g8V6ss)'4m:<ra:2S&r-uăU"Tp2%>EvI]QB,wz6_X;+rDUWl>)Y[2uL[d)?$N[3ohKqb-,a/M$URh0m;%tR2YTsăU"/$n-Y[Bw#WpFvO,cMBuH(:(a=itnE9\).C27JSuZ$$xskXe\Tqi)&$dhY8GvFflăU"-h7jWM-Ff0rA(r1cc0\EjZ[lYBr6ueQ2VmgBXwIx5/k\M1gf\]-^Y-)E%<+RK-tăU"s.I?#V%>KIhoBQj;qm#mtvnI7*Z_]]GYi,^/1MA.01h#oPSl<u1[%gT[pUGrS5hăU"\o/7L.Zu+o8hS7ylmbCNdnF.K\^)2G&=h5vRpN&P*4Q[YWJ*VqAs.M(kxdJka#RăU"3#UR-it4uFdmX?4PO/173hbXd1.&W]guSj]*q,1ZcY6[I\^lC'=:hd8&RK4_/x\ăU"p9:Okaf>d]BqN7J.t[opUc2UBN32U1q'xOP&NkwoPbbVh8r&WQ6/PULitQ5fiihăU"+JE8*B\$u61b4rNMC/82T.6Kc0A#XUZQZtrg^S^5J/eEhD8Vs?d*b_]6C;M:_/<ăU"M)?%,tjo;nBUu<+]cGhCPq<yu+tmj0Mc<:niF/;uN'dsB.pT)YEea/PB]VyhmbaăU"O1-%N&zn=gbeh4td:AKs?=))J8kMu6jPT63Uj0TM+,6G#d0QB3MxC<i)2#W70;.ăU"8Ya/?(aFy9mYM?Or7fir<OhCZ2l42?&M6v1u>jb&Yg_w4##7:*b\t+K'g8_(92măU"d$\*?OuFq/?WB-Rm5)eNTp[qAJ#Y#R=$^s9RC,sFPM]=7'2mrj?ILs,BVw_WvFQăU"X;.aO<pd7Tjr,S.&)P.+3xSdoLOd,JKOi>$aL*KF8IU$/+r$c'^^c'3S1RS?;G1ăU"6cI6+GANOY4>:B?QL<d:'=Mw,<BEB0.%B>-10h.Te>-<^Zv_rnda7.#]*eJoIOYăU">g,?SWnshQUt%+BD=-0r0;gP*W7287;\SS'i7[-\sL;R:n/t]#0vbTRc9RCi#:,ăU"7h-_<asoGcKnEoNElzn'6M,?rqs-L+Jl/bLLqwlG1(npSIxO\t\k8Tq(DQ>9H_iăU"/4'4y?Asu:?DvBeF8VEV<c./uDHgIx?/?l+e^ALvrYvV3s0QW(Rlr96+[bx_,>năU"5-[<0*j5f*dciY'.6+49J)dh#FwwTJe4^P0TbCNn^4+Lz.YA)zUOi*PJNO[WW>BăU"]i)]WLBinRK-O]48Q_]1Mv4y^502wsL##n88]SCf_'_K).#HF6Rx56a>hF%E(HKăU".T.bWdu)H=k.8UBmsk1jub;IS%_)7,fN:1\0hKNAL:pIjghM2'T&Xta&teepYJ7ăU"WM%z$3['sD:6FQL\_L5]6$aKhvn2QU,+Oe&E-a;7<N_$DQm8za]/Z.rZfbj*wmbăU"SV8NYB7b+F:<'*sJoEuM%NnV&WaF:yh'.Ye=U[Nnio*$]lUYN9:K_]e)Z</,GS&ăU"am[>-9e2317>/SdqQ(YdYOVAg5V.3?S-b6l1yBVCNSvLHUTfANqET>JJHIZ/TN-ăU"RsfV3UI-^9m_'JQUZG]s33gTPb'<TJ)2%>:k(\ixXaY&N)Z]luHxup+5=ZZ'>V1ăU"G[KRSzn/NV[z,d;L,\oc[73SSuu;,;UkMIne4E3<Urj+^b0=KPG=&4Dd#AHv#jiăU"MWn[J;,tK\[Q\g>^n*q_pxWVMt#d%E8/K>]KaR\5l]IYC2VPIOslKK9FO\e\$vwăU"9XA22g?^G(/dGL1.o3U:ChBM.KNX4QT+4XlU^Hb6);.3]NVckp87/66.o8X$'F2ăU"R5PL8U9q:+4^m%Ip8cH+IYucbB1<1tM/P'aUeK[HLcTEj+s5Ml.4q-RChtNH8\(ăU"dq)NA-1]xR,vB=+j(^+Sc/B4i(c,k<UPb/YJFaND&BpEOPZZ-mRxOsb>[guCp^măU"fQ<;/3de2x=P(ndZ(b:uV1V4gvy.=JK6U(Kg_av-dBla/B$t)GSn+m%6x)CMz0*ăU"WBGw1+odbA7oRJ2Oqi*772go20AB-2UK%-8OgEUDC>adR1-t,6rXO5UqF7a:cXPăU"u$-T7OcOU42oW]ACOh>XD+++KHq)iJ&&/MammXNJ.qQ/DmRl*8u1,EOY<Tm*-]#ăU"WqTh6V_tC2jLG^Q8>dTe8i>XrH_i\op.w\(NN-.3_-9i1kXKZXVA(jM%cQLaZ1CăU"85'wz1bPg2l-tP-BHJj-N#(-pg2;jW;6H?cg>Pq*1j(rrTBpdxrdV?rOTh77Kd<ăU"x*iHiI_FGu#c3CH^dPr1xYHV*s\XBo0Y\JH[kT-[kGgTL]#*uLb\+bQZKJf<WKsăU"<$jd:/E=7XJY7R^T<u5.[%0r?2H3I;jDKc<6Fl_8LmDST5qdS$]pPZo4OP;JWHzăU"S2<gJR#k7uz-E^y7jLj=PdRN2ug#bw9o<]-+=S-6z+b)hvLNyvpjF=HUgPP38A,ăU"L,+B&fHInC,l_ceVtmaoft(h(pp06?w'F2FWz9:+3bx6xPPq<T+/JW.*SGm#Dc-ăU"Y+#T<=nC\V_p#Z>lCm86k^x]6gxX>;6lol74o4o:8w9]rW\('8_KJQR[\RIYbL2ăU"TP_4iabVp.ph>)SRba9sjMHd-yFX3=dGahLRMHicMc^;;,OOY&Ta]wv83'wv0U>ăU":O#Aa^9o%is;,\1oL9S-d%DsH&dq5ck7qLhDm;MtStqdj_2NaalI'JoA\#w]*f0ăU"TnVWW(LPA'$Luow*8ed%PCG5Rjf6-R9QnZ^)'H)Q^<dS?8L='iWZY\%vGzR1E:JăU"mQ=5))o(-fK'ehekoe9vZx6IH3NbNNd1vI'[6BBl+c0afgW''(IY9-g_ocYX*vdăU"3$M+^pRQc/0Y+,8fJA,r8E%<Z54G;l.e5z$rSz^Uc.a:5-q*J+M,rU?9CZLzg-.ăU"RiZ6n&2ZS53_+ZIbklO>#(C\uWH_)>DO7U:d=,h&;RWGn.GDa(v%sjDKfWM?5&6ăU",8Rm$]gB-=i*#v,gBxZa]]OFr0I%'XJX.eWU/PqArY,RCe6_C&(nrpo5n+YrkEbăU"-=-[V6^:y8;_<i#W0/\SBRamR.#R$rX&EouQGN*I4Cm4xt*Vhx?&Me+p%Y1CB.oăU"47j+[P$qWYW5pb]Ytv0/XBb[#rvBQIl1zb)My^74JYVZHwtgo'DC[nG=T8,76b(ăU"t[J'3=+x5Q$M*,Wb.tU//8z6^/AT_,Qm_L&+yE[vFI2<tCQ]Z;Lg(M.95^4C452ăU"X4V\q5:+M90lqVD?NMc;V[j=NI_1oD7LO3Xf/AWUTqH9mgWbG:^euN[8WQ:x-XgăU"La?fCr6-plrx&1j4Hi+*S-.31DYVE/Zc>^2JV]VPW=kZYv$_6^adVgs><>8QCQGăU"eb0e.<hU.\N%wk4Bmw)ieSQF<>UW5Y'SF=la80[8^NglG]+JAYp8OAl])Kr&NgIăU"A:3>-DHz#P;%761+>=Q>],6^)w-p(r/SyCi;Ub:XX2cL_7GYHhiLbq=FL9:\<D1ăU"Pr:]8a($wPG2SU<bjr7$Nf_jn.2j;.:_D_R.f$+w(1)r(&83]RW\K;#QRuw/%-3ăU"y=3pk2,FB/1IrQae'+J[246&w)G-DmQ,<Hilpt=O9(7ofV)ZfAXF1iTb93MRVB=ăU"+L-[EQuVqoihlP'M.9Qu'52dovkW>UV9uzPIop/gkRLO7ZLH\[qpf;J5.tjOM_XăU"eMI=I0b3GBsFm+z'.(FA\(5+Ft\Zb$4J9*RN5d*0lt2;83t5qi4Fkgv/8))x('<ăU"ldoFS,>Mlo%*[n?HU#-eZ6ADHro:6\(NZ-[c^t+CDGT8]z4Ml\]NneiA'd=#X0(ăU"b1qr,-IghvD;\7$l.T[gRDi,EmzfiL?&j^6Low/5ZDm8^G8L6;*TV_:SFAaNr3iăU"Fbgw^jD>E4m&fk*?Q4-#V9PcgK=gRW:O/tIPS%*rh5URKeV&0??9qRrkOUM].y%ăU"L4a]Neh0yCbMu8S3^UKXf?k*LHzy259=Hv1du44[4UpBRXw^O%nukf1>Iz*JJuYăU"8HZA&0tau1XsY->*)U/G/[0O?iZu9:4eNd/k[A9lgHNRzj)y6;'uxl&RKf^P:;<ăU"\%Rg8:ES2dDQ7([EoOPJ.3BlA?3TW\p:P)bZGa2YU4SbqR/(&a3>=Jkt?[-ow-:ăU"]gJGLAYgG[7>8?;c+HFKot;0i:=&A&SJobGgzIhtj;dnqaPaa>>3MDm?Y-U8]x*ăU"D+r?$4lo2l_HkH#kI4%),MgrpD#XSai8f)zXxrBlT5:\c=^,+Kgj#4-jJfOyDLbăU"R$4F/)L]651&p^0;Z#sAVpgU&9*$fB9$nwC*sRt::TaY8T.'$0_/n'9Q?jKjTCLăU"5KTbzJYR$tgTshT,=w]p2Y5Vm*Jrt9wAU_H&>jEHgYHTp#Ja?j2ZnuO?Y0.VsfpăU"jh;Dq(cr>W1Muc]t0cRs78z.S/2D6$HCCIz+F=)MZ#XPE*)SZL9.>aAW0dsi'h,ăU"bC0Z+9uNWn#,(Yh=rH0Qha;HJ5lF3*_StD7gjO60mvIB*jQNR\r5iBt1s2/vnW,ăU"1K09Rx<s.#4\0vf140p>;f_j6HGKJO[vKZ&&0mxYM-l[r$f<EG8Q3^-bA>BKaTBăU"Q<i*1?K'k*JgD[dMrB_=Bh(va'<4R_)*>bZP#q'Mx<70Ew=SfsFh<fQ\(;X98\[ăU"(/-50^_9)oISRd^km2rSG::l\zqKw1-%/9<qKdr%w*]R[1Gc,ji3252o2PJ=i\_ăU"4(ScdTkY%S5LTHYOc_C>QZmmL#3rm>*VqG\xYyKm&CpY=H/,'[(q$e\FN8hPxfdăU"?XYS<hb(C6Bw(iJ/S)z=.c#DD,6cB/S=vb9SCc<-Jj8p:me=x'>WNS-1dV$h;zbăU"YZlb2yLIbsL$,2*2.gD*iZE'GL^<Fi%ge,dv.g&FdN.HUomXxk)qD#Ewm-OjF$DăU"nCwca-?P\9F&M&VHJOcfVn0(;A]/<OS'kMLbc3HNFA3_>VsFtB8-(A5M0kJg/O_ăU"#+(]o=[IN+bq)+1FGD6:3_Jj&kkN>'*I'<FOk,pnHaUPPPuQ[m)s)A[5o'1]q#făU"bo[rkBlHkq9n8Wbn92+whu2A>r:m#+1n0d=/xw6=,-CJzl2Br%:RhI]y^6biO?IăU"_SOi2R[EsTm%VeR&OS-mD[C[o%p'7H8k2abg&XPFm+idt8Z&q+ACre&+Wa(&MXnăU"aOaF8H)#4/=d)Vgs*IUO_x#'kJ1(N/yI'[_'UmO8J^q8/ibeq+Y)C9cy3r&u&#4ăU"Yr2xVKdG76B\&W4SbZ>^2W1d4qMB((Gr_8lnUOA,oGib#\EWu7XvH2&WUR2&w&6ăU"bMnXI=ReiH6)qm#5QJlhw\6=WJNlhw6JOvHW&I+=:MWw6OLvXWI#+=:X2w6Ov2hăU"WI+QQte]e7WW0h(ph-b45JECp.Z8UeSpX,wE+ih'nWCe;eSl;XwE+Ii=nWEC;eSăU"ihXwE.+ic^U6dROAWWLq%W#5v'_iyKC1hMB#GO8/.yCqW%&k*G.O8/y(GqW&%kjăU"GO(8/yK&qW&kbTKsDX#1#wHW[pTU/Kes5]lVBTu\SG:8(B4$^P1c/+yA((G2_<kăU"dUOA,_GjJ#\EWqnBvBp<^moJaO2&J'7iJ\OESfw]]+ithackM]-TnBRnrtaqCkMăU"-7Tn>n+rt7Z\kJ*f.py?(hqLXs8<e-TFv62W6oN9<B'h#[+_vO_Jfzl_'wTiBm[ăU"EKx;Tw<+=is855DQOm0x<q3[#5VC.0vV2YWQ]T,w<+iOKcTw'<+iKicTw<[+iKcăU")Twh=1Whw<&q7&k0^F96A/yEq%?&kJFGc6/.yIqG.&k4G/97/y1M1,jJO6x+4OmăU"Ek3=AxufU>$D/tgB8CGfpT'cKiS8f/Vr)W+S:$Cj528+O-\:FA2y_w>g]qAxIX>ăU"SA^wGp8.d/ZgN8dO<Tw%KyS/$vlx24MmFsr^qIX(^dp$4:$(zPzUn,dj<lp&qg#ăU"5Y8$6w]H+i=Et-y6R(GKL:T9,&=6Z7<PdROWk;XZ3\;ei-'hjz[mEGRp&qK#546ăU"eJv/$U3G6QpqG7&k^F.O7/y(EqG&%kJGO(7/yI&qG&k&4GO7A/yMk:H*e\VTpm3ăU"op#;std]Bg:\SlPWBbV>O-\&a=L4X5-7(ItGE8F;e.nmenMh17naaRv;Uwko<k3ăU"p#bqCPBPbV>W+O(ItPE8py$5aaR7+k^FGH+2[R/ik3I#=dW-]B[URO7Bb)</yKnăU"aLT9/wu)z=_T%[ImGTw$ECp$qtcvNnO-hP&qW#550v)yA5(GkV.ZC;UeSj:Cvh2ăU"W*iLROB,&64V-ZC;deihP&qW#5Xv_.w%q=Wv6_.wqJOvHW'C)=:DWwqOgvXWC#)ăU"=:X/wqOv;hWC)[=:/$fdI4*KT>j'&yFwJUJ0vR*-6KJlZuR-A4KJ0WuR-2mKJZtăU"5R-0KUJ0tR*-.KJlZsR-&,KJvf^,80dqoqC14AmGLa*O7UBMRCeENH4GZNaA7JQăU"JKFu:+JbM<5]M>+Ip48&eaD]7F?=.E:JK0W?ePBLAG79v]Xl8<U]G2[_xd=(<8LăU"2]wOF3G$[GB:7cl%Y5S5-r='/kzSHYNePjaW>DBg5MngV]x[6i$:,?ufhVEmIjUăU"eW.0SFQ_KT2&_7&b$;o6F:h(M*X/Z6<N\I>(S/tnG)ReI^Gnu1fT$fs_gz?BKfmăU"N(Irf>G$].Z\<TI.PPchp;l6>AzEk?5W7Ug2Aq#W6WIQx--g?O&d^Oa/w)AS2rUăU"Laec$(-'pL7eooQ6oS_64mrXar#?$^uWia[maiaoe6t9p+bO/T[osXCLuCRZRCiăU"xeOc\?Ci5La<fJA%t&%<mk#a2+)iug]j-NXv<_hNj6;Wb#Qqf-[D-u5Z3D^N)8YăU"DUN2n(QL1#CF*Yf?b;h0mp(28^#k$?^k>A^^.lkQ]i4t1lATFPKk1fu;S>u<<coăU"vr/N9p&-'j:?hf-gp<<UDBwUr]D4%djtDLC_;'v1nE#)*=3mH<kFvYs&\$8O=s)ăU"m1udov4maRC-rKZ/ERL?47v$C=yp4M^B1I(-#W^*SY77EoL]'58A9m&fchtLt>FăU"l0b&n:$FRetaFQ3%=R(htUGI7:8v4hYfD0wXCHah=%]elgoN^C^/KO,^_\WU%Y]ăU"[u2RMS5(kg0h)Jp59g[SVKs&a>*U$Cd]Ke3E++X#'\CjN>pZsRg'.b3)Mr>IB_;ăU"BbO2gW,Psutb[o(/gGf6rFADTl0L*JRRGEJ)J4E>wjl_?/YRs87*gW'k(QUjZsWăU":3FZG$dMbQmQKF0F\gfcB9QJ#PucewRqISU0,u66Kr&qa^bDlN'tb#i1,xDyv7'ăU",0\iDEY;$]^3x)%b:AjWbDwJ#ydu1ELOg1bRaLRmdW([EB2&So1ftW/?Ul6)hn_ăEND SUBăSUB VDăU"qW^#-4il8uo'a_Isu?&T_yTS:=waYJ8jju:]xct2#>tEw\,6eWVLW1;B:zZS\O7ăU"e8psKTWGR]^15u/GT/.q?\>yF$9%Xf)hl_G27Q909PMv;Rs2Ed5<9]7/b=m/%DuăU"\SAgY\$[7P;B/pfS&8h45<\Li%2#DO:Yqf]a,U[f%[uH<q<JT2U)1ftIQ>Bo)TUăU"[W6+6-Wst4,f-EN0(b8L.$KySC^V;x5XF/Nkelum(KbR[n)U(GmkvkB;gn8WD48ăU"5mSogd<dg>5M=S1i*-;9zc/,Ifi;#4YLGW.c.pp*y>tGU^nF836#LmQv6<Zs*DcăU"M)7zKnc\DIl7$PVPTY3+&vFo*d2D^nl/qap(UqK=jB%99l]bYC:Q#2--BdjzXVFăU"<p+g*]n$XjEVd9j<W<P8Bk4U;-rGw)VIoY/e:pvZNf-KkNp^w2#PojK'i8J7j_^ăU")y/48e8;(a6p3#CuvKI68iYY:uhanGWqSedvgA*A2PN6:Mzq:'pS<76V,Kp+C19ăU"k_Q]Hi):k#*DAIFTnl?33Ltw:ST8FPx+<V3>u8uxr&69&lA4L(kE<,>>2u(<Q-[ăU"c4z1fJ7#m0gtZC(+;[^haDMJ2IG:jl8#pLk7kcu=$Ts&X:ixA,ew;cAr2utHL18ăU"3e4$G7Srs=aj#L>tsb=C-PxGWaON<qX\-_Sg=9fq*6,j[l&hLRSrQd'Me8-V_YYăU",&>/v^w.x;l8\M52Mgb7*d4EcUCB%at&*rODS=oB_#AcpE/23si3huG0Pu:-T;OăU"B&hosGwiOfI=2QA_^c;[_)4,HP*/lp18D58aT3o#K1#Z^]^DYt,#_h\8w#NmFr+ăU"teuf+cMOuvF)JP\GqmH\)h)C9oX^-9P92lQxl,W1,,f8B'+n>R&N5wo.XJJZK\+ăU"^&3Qjs\c2r1nKBJvQKNTlL-UtL8Bd^Z$D*B?iLGK%iePqi:&27,oQArSAX5stbQăU"/PS+CKht,bBbV6\+B[S^3Z8&li-HC=HUTIvXgVM>(J3$U&vBT/9Nk;Tdv?zY0OKăU"5)Cb:m6eaoFfTfsL,*,ty;\Y-\(k:Th2;m2L:/kUyUFk3+k-mRAnY*Uh,B^m)kOăU"VnXmDR2nFkMifu*XQ9$*4BPXNg6dS>_n+oaj&49V&qTMsF?&to7&8vjNZ3V>6D7ăU"'K$xenUtk(()<$GO7G'ZF.I8z4R:bM'I;>.Fb^dNG-cT3q[O'(3>(d=&<$?=o<PăU"^^6HApEC^-CM1&_X_*5F4a=[GkiIQ1^Xzkx\%l+GrhJP,mpXaduT2u3;\og0O<'ăU")inkQS,S)xDn/K0:Bf.3PWc4*A<jE#F)LQ^WD6q)VS-e?ZolD<t)WIKFkkurHq:ăU"zYKAsp)D,iL(0CjS:89l<]k(pY3h/'[aeBUw+Qc$b;\[EQD.Gvz1hEtNxVF23QOăU"\ZF8p.>xw515J,_dLu3DhjL4qY-IOCu'ZRU'v]3:(>cDbE>KWX>bvLbiM:ooX3HăU"aT<p?jo]L\e$<Vp<D'3n(jy>LV+eDhf?DG7[=;>o-WN&\L9s<q#uw:P]2ma.CRvăU"+JuGyD]xF>i[\i088U>6]>PAS5Y]j='AD8-%,K=ubv*'%/d#n7f:b=nxoD-FxHAăU"EoA5ZH#)C2NYppyGp)edFb]V\>7=].>KNu<2ydT?C6L?+k6HT^<Tl2Mtnax+ZpvăU"H<6\Amdi8&Dxd(TD4GbEJ]]8IXlW/9h]I7Nj:PYMacIBt,dDYaEj.T9xFRN$G.,ăU"Ne+e['EmBYhE7Lb&HzhTFkuoEJ7YOUkrJGondRWrJgjqGiW+,c>R_&Gz$#=t)ivăU"p'shSEKKlGho52rrK':8kX,mM]^Zhcwa^YaI&o*T3U<+#^MthCSk^ccL,MKr]K&ăU",u>E386L&b22n_$u>:MLwl3a)0yh:9BUXXXSB6lA8RW^G%PN$>pCc;OTw>?tMkbăU"W;x=sQG4CoIg.GS:WCsxg9xE*FB]8R2v]/x*=X_$o_##']xv\6sDa#/bheYNtckăU"PwAN_I][#'hV1mRw3hFrSdOz/pir98#Tgx#F[ge\)u[0KbB0[;cBC*xV1Y*#w7făU"8.(;)+EcxQxo+$-K<i:^_i&H1CDsE\G^[kDUtERA^>hV6MuneIgQE/c8^xd:6a4ăU"I8+6'.XBxvQNd/^jAJ+Lf$WxNV*&%4H>iwcj0f5z$\uR'wD^kp.9QCQGn#+rJ1iăU"N:Y3aPu1TNp\d1kH-vYbaY7KK<79/V4CDM]x4]TY%[Q;)etP)e?T]He['INJ1F_ăU"rZR,6GOs39Ko2;1s%C*?\#<a-7qYEWc3n,VZWv>b?V*FfKndswTs'<L[fb>&=RPăU"d<6r<ikH&UH1+Ls0BH.74S^wsb*s9KBvVF=oZJIxhAX+ml*i%AIreR9+>nzG^4ZăU"a:QO8mg[qDD/J0dJifDg5r0,8sB&Y8Ljwe8d^'*O,t.TeE]=49s$a%h=1S7\SZCăU";JM,DoT85aOl5r]qicw#LXBDQ$f%A2hMJ\T;4;plBk.<IvWjU%y05]9&Vi6bZ\[ăU"?RwGdj_+<:sUzsLc&]<#2-s<iRFmePOi&nWVF,^)C6;.b_vY&?r3H#Y;\EF5Ky0ăU"QcZ'ZF.e#v#*VT:EtH)z5RYRlY&X7_n.mqIO'Usygw16ddI;K[TuPlv\Ed)]OVJăU"NXBkOs0g/=B$9D%c%uftcfE0CsO_E8C&c*AKWVvdeT46SZvR^amfl_2RY]X;&VZăU";845S?nH$aS>Qq^%h9]*00-5[^$bF+g+?%LwU'W?,/>R6;X;EqNAxB:)E,dEsjbăU"]=;JVqG7Nfxt*FfL,>d<O,?YWo)ycm\):Iv_/fcTeY%+<SL?c]_(jy]n,,kmYRLăU"NWM1$U6H=mJ(h^1oReJo(LtBLe]]>j*)Z?rDhxsR*04Y2Xl:pIkUKrufhGSG7FSăU"JBo6ooa&+<3KUpp7cNJHBxOT-^f%nq*Xjar0lLg/LC8'Mk+;x9Jyme_<+cMD'RnăU"gnIw=5Hjk34>k/*y&EnV76%^(COBKZICbM.<OaR6_WhL=v>VoGSrofCM(YEY,2făU"qxrBm(3lhr(sAr.(CgxM%\,8PXUgP\R0DH*xLF7b2RdZfe-k30Qo$S;WUdwj$E[ăU"+OOozY6oC_AS(DmWSbz*V[enBx#U2Q7FguK#kI<HEsX.7?MCwku:?SM74?tB]=yăU"$RA.*o_teBz_1L)e:y2swZH?d6=G0txBnG,].ak+J5nL;<ID.Q;,x.<,ky&LJjsăU"FjduH_ESf^0o9fqQqiE,7*.Z$eLf>\p09F#R'7oCV8zb_E=Y;&rov']^>zU+WYJăU"(o7=2DC7$x,.N]/\eHb=5D;k;\99l]X4TkyL*%%BcW8U.7d'<1'd>7>Bz^'jEB3ăU"l'#o29\BwL23ywJ:(z#;#23QA;kP)IceI4-Db)aewk$eb2+K?eyO[p3?iszV[XpăU"V[-r'Z#:+jy7'V)<>VA)eM+k4)177dwaFhF+a^BEN<XyKIhIfwR9'^\&AWDiQaJăU"U2%+.-Xn2$>\:^21^QuO8Hfl2Fv<S^GVHpn/H5RLNBGUc:a81mSpKESdm-p^0]<ăU"B,OYmUwsBv9HJ2t7Wq21_^#>*3j_czs3(hnL1Ek2i3yHm=uPcK(7TjqoTAq3qgJăU"GQo0YSBG8YIf)3VK$Mo4U2-#bOMivH^+a*g?4nRv<NjcRa;=-pDmC8jn:2?uEu*ăU"xN;:=Nj3Tm.tu5sH>_=3QO4'2:6n/Lx96v;v-QWJKO_zSNUc>a:k*x>ncnc#pORăU"J$Ug*3-f)7NjgL(-(Ft/qlKOjR#X2ot\$14j1HPF(5%tcJ=IXJR4=:FC2'YN'QSăU".TcHpr+W<AZ*u95+&FU)ZwRK7zgQ2F4<a&_gPC*DEHxn,iT_UeIsLgj[ie)uu%#ăU"K<2s19gLNqs:8aa2o7P=HE_ts'lK(78AaQz]Cp$f'/x[t+a]teuYe]m'mBBoH(\ăU"7]tBC8a1-1uG>XU2ib=8*v?XgLO$Rti.Ot<f*:gK;T$pjrk*>G26saR,OPW*k?NăU"_iF/pRVlBu=J%E)_FC.p2d(xo*-f*+M%xQ6vcLn5%c<0u.aQo[GvU%$an+DZNNrăU"m+:/0hsx''*mAQcr3ZdNP'a#PnL$b43A6wI;E_g:SB8vE=^<'T*JSi;)#cV1ZLSăU"?Cl&+c00(KM9$'aT(gB[pfz=b(NrMP.7[j4wr-Ss\AEbY\dB=(*rz$g,;KHuL,;ăU".PstT;=x7tL^jK)#8?nF4Zxgk8QC+kW[QFFFhZS-;$F1xSl:rI*8ys+>jf^rf<hăU";q9YWHR:,;U\Np?2NGK,%im^eg$N\C)='hVObti4Pm4Dx#BpS7.<b5IwS=q+2ELăU"[i.eAJm]\pTcE,1)nEikb>9ps.ih:(C6#bYpJKUD)9$1)j.ixocuxB%RgD(R+RkăU"eE9jTzp,'GoUNL64GXoC)+FjHN<[J+[6k%(t;-ft?I4#p[UcKJ_8yf*v\aG&(2BăU"a$\.el_m(wm=TIA:PH\zv3FVO/T&<wj+f#aIIb</PBGIN2a/iXmPN&B/2H[V-NWăU"Kgw'A/0P(9it,459w87/3=iy#L>/=71kUM/I1rG7G%UWL9TaI5#]U-)2B8GG'e-ăU"-jIf:r&sY8Ze+nve(U'IB;?B]lDf45E.1L\fI'v0=n]F%PDSK*PK-P?xwFbIE9.ăU"cu-L#:+vn=o;Bj2R2?ynGcDXFL-CL^d,s:u=J%QCkabaSqI?:hAANk'OmE%.NN\ăU"R5XDL&d$fgZ*q_,2s\9pc.u<YYr)0hk_]DJVZI(8Z[&%Kq(dGru>\wZVg6p$vMgăU"cHP648g2>Y0M86:3l=*4QaKur7fwmO,uOtWJ#B4+Knsj1\]X;J.:Bm:Is8^s\JRăU"H9704d0H;rt[SmXd2Hyx[(Y]ZAvIr:/+f%z6sEE-0A'DbB?z$(HP.^dFUd(hUJ8ăU"F,\/7og'D?$Uj7R%dNTUpEN[05Hlvln(QGWWJn_2+8cV>z+%qw]P7l>h/Ek=nyiăU"QGs#A=JDd5C\Zx?OTsd7I8nXZGqcUjXm*iZB%p?GC:b)CdOHqCIzAK=OF=,FgZ*ăU"#,\E\kPh<NF5SW>]e8$uVuI<w%bYL;>)AkGb$U$WS6En+x+ja$obu?0<_w(iso%ăU"Pl?F3Ep*n6nx'RjiWC**#U,M<^hLOf+Kjh3w8Y'?fH/?/VMBL%J&c+>LhM$GS.făU"qjQgdim&v7(ClQv7elcQF<DDz?-$8pq8ftm?,1QOYit3I0WJz]prnXI8XeI=mEEăU"cP,LkmoVxS%/:pWq&h>^o4Xe\1to16_UZ6w_HW3&>UJ%S+AW+a%wbR%Z']Mj-CGăU"MD_Sem_Jufv\qM+*qR$rJNw>n*7Sp5-5^6lUD%huXf8Y_=3=YY,0V*PrE\Q-_)(ăU"T=Or+Gn32kw3Lo8l<VSXvujm+KSgi+R'kdq#+2?-s6,<yNm;:3_$QMfDanb?<kgăU"Yy<M;SE:*4pl9U'B#E-\p#/us'MpMjuR.R[c552h73,TdP.R;g(4G)7_W;[sss)ăU"c&F>^m4k5T\t.SfKUmW\#r1V74edmyAc7N%UIz[J_ASq4b:p0=sN&V<4/x,;kohăU"w&FlFGKa3wb,VW-D]Vmjx:a?r3L_WuD888?rhlsk4lUmnx$knKFH<,3HI$g$j$făU"]6mB72IpRi:,>]D^CKqo4Tuf9]r#NHBx2[Zu/Hz=)GsFbynt(H-v8gN0NS^]gj'ăU"=7rH8^TWs?\dTe?d1'h>:8mQ2c>0u*$qyZX*qrY1I;%HC'2??2OH1\ekDz94*.IăU"95.ujPF_,m>dI>?W8I(E1cJ&l=8-Csu'Kpp8kwEZ0ID\D=e;/wu>4qt,^?.Xk*făU"JlI\Fo)iKw;0LVC\GTnnU)^//H5>xMIg:R<<2jQ^/[fKp/2bGu/48:,u8+qXCzmăU"z#[gDy:d+0+:__/?0T_$E=]E&qTBqi0<be9N-/L:vg80C4Nolu^9B?HNw429,S3ăU"1oQ8=^$'<ff%3Z=$AF\&*(a+bWxS.>?Q$6D86QkET0R'Ga'4_A\t;H>$L6N[AJ#ăU"*Lv/-\eKHk^=pG1IL8RI]70<[,5Xf:\1UI]2(>a#-7\()fO=_&fTX'XgB?8(X9lăU"2uApLxYp[+Ortb*0r=RAYM('2Ikn_yY,dOMMwM3?\nw\a.IZrAmJBP$jT+#<57hăU"Y]4iKAe*2;&RD=<M(aX#4SRi9Z)5(\8sL/)=n:\k]W=h#9GN*.VjSZ-Fi/G:,;XăU"%*9txvTX]K3_*DbT$%=3,oTX_8i7=*ufFSFgaD7m7oREk8B-f9)tF3%_<b?nuu.ăU"$xfh+&eOq:<GGU8VgQz/gcUBFHJhgh6C#cR(6g[95cJ5KtM-\$dKA32<o\dqnJGăU"Xu$o;*jUw+gd;Cjwi[Mh>p5]A'&K1mxu=jYu1S9mJQ8fX2;81sZTpP=>pONs4+<ăU"FgT?X+JZN)&k2KD3QTW^g'Nj.b($)PkNz=(7-b.$U,]7K4.v'l9;k$:KA:$[pr)ăU"7lfQ$Yudu9W/p%)bo$lotC_kY8(ZnKp,,j'WP5YraMP\&mU/=O)yX\NP?[G%)/VăU"Gu?F4Rw^yOdp=%#P/7urslJPxJ903Z)i8yT$Z(moO'*NV;#HZqc\K4y.*qsO97>ăU"C;A3/uF9'V\Gh]sd=[LqNEIcr9(pR:\Y=,m%jgG<3>7V_i55S#/wzUa>\Y+*eX'ăU"zUz1OC8\:UMA'zV5jq*:+m\xX+PjonD1DJjZ)Yz5zqD2?=k-LC?$&gyFD708BogăU"k,9'\mzZsMKk%HbM.vn5Y7[%mzZMYa_bCdIJy:)yImbucrJ=)nJ;,Vzy;Gko5)GăU")31,aH7)kF*N4af4s'Kdl-Zl?q%2G4R?h:ma49+M&h]5YRZd2EI=k&u1\Di=cqlăU"svL8^]3ZPoExlVOMJ$&lg<9r-XZg9TEJ3^QQB6h?CBVZb$/Cz:NG.Y,8jB7Ds8WăU"'6=-_C(3SoB,X7Y;2woKZ_7864/F>8,ZPzRcETyQq?<V;[LP<??i#xGi.8^*w7>ăU"1X$R9uc.C2pt&tLeqNn1GhWt)<RDqH1#&p*uA1VE;mp2('n$fY<kmMA5Pz3WZNtăU"ZF?(7,8o-+#]ro9EXf^FU('bKpxi$$$e[*u\mF*X&,nO)/80^vH(53C8O2);Q0wăU"qQ,Gli[<2NYC^-=I(LqK_KGHIHCp:m5/\MD5EO[TFEQh8m[D2G?Qn#m-f\#kXNBăU"IHo/gXBqe;l[m>.38$[*:uh-fe]Ptd^'s/[PhVMIL-Eg'#f=YJYF4vl*Tu(XvUgăU"9vlMo7U9S;Yj&CpoBhS$l>bLf6i)8$58h#sfK)Bt]Lt51myVR]3y/+uCh,][P25ăU"gUKUrDYkhQlQwmzi[,+d/F<5\097T3<'5D[;CN^olH_w/^=0mO+XD>SYAr7:+taăU"Cw+GZ,Z(30(I_KM:cgp\puSB/priLuM<boeAGNH^w/He(uls-SA&W=(VPwou2uTăU"Snu\^dXy%HW#t6#\N2.rHUD*KR9IFztf'^D85Zx^<lZ]c=^cn*lpPO=$d-CYB\FăU"CEV^rvuKTTz4U&ctH+-pput<AqPu(Ti.8V&_jcrj$uQZu]NNGCIA,45XA+AoxwOăU"b]:mR8yia8daVLHTNN(7pTWBUm,sLVg%_n>jd>Q6i#E=k-TF1H?RDjXbMQnHGu5ăU"FAV8dg3C(B*_T<denyV6)=[DjOloEF5*Ak^R2q'h*5XZ*eV/)g;QU?u6^^e>R)9ăU"db$*FN-T''8kwPdSlI.TP_'tA(HtRqTQ7RxX%n-Yw=Ku^avQ]<,B\6(HSF?M4:2ăU"&r$<AF&Z]?>5IP09/J6],>L'(/5YnA?JOkP=t_;?rNs*Ie&IAoSR&J?dQ^<7MP$ăU"4/2^85Fe6p>vSvN11\#Wm/D*4[_XekM+'x%Xhh.%lk\z#d$ftOQaEsr;X-3'pw%ăU"V<vr0v[*4$)tgT+.dN$#O47v?JCse&42umQfk(bsv,uSkd#M-ZX1]w3NP%L1oF_ăU"Tg&GO(f)7%dM>5;%+eE>t>FM#:dl2#-SM_+%Jvaopii,&Lj&30+kT4^]sO('BLuăU"R3ok%L-ULMi,Ehk6Gv5s8=.M&&LO1Q'kjiwKg'U1;Tc);^WS\8\D'eu*LD%%2moăU"-[k-N?B9:C&If0rJMKAgm&:s6S'er<2FHXK(5*/32W*P0ELQu>q&0:3\MyWGW&năU"G^#BqT2[y,d=;w39%f0ep<N)kudt)<XMLG_4kN&bD+#6\N8$wk(+uhYtSL)xb*tăU"qX?I(0G^E,)r9'%jPzy_N_q2D%gT,mcSpBi3uhn$'9Og\ToV1lQ6kVLVmCfMwq<ăU"y35Phsmg4m6-u(<2$+r^K\o4-l?%tL0Rk0_-%bgqRNg*el6iAYIWU/4f'XY<tWkăU"R,P41gn/HUuCx9:twJ3qu.YTRCYsO0w]koIy-tJQ1j7:G;AKEu,Kdt,'[V,_2q&ăU";R5+sadowC-F#HWq;yL:X6,.SeLVZc6'\*LWiuBb+Y7dw]eYZnG?x\g.(8_Nb<^ăU"4E6kdv#lEq?miatB:q<a&l1L?91$oW'gRBWFZFyUdAbGeCHml<uV*q_LMsoxarPăU"[;JHP$_j1bZcLt$;-Y:(B3s,6x\g8h\zr]LKR./&]\J#mkj$W#6WaiTFS1.5M8VăU"N)vk$xdwgI8K:BLR^7ugF]SEsF3mfv>dA#D_slbP<3vJb9^5&_eg;_?Xl/6tbqzăU">ZJVbpF<R0$aJAQR4;o6Y?(.Cs8#u#3a__(#APjWiJlKVwNX/BvcIbD83hmg_q:ăU"_533=ijXx)Ap-dw80CYh7[q/d\%Rya(E>G5p/YRGr8zsm\gmdI40L/J79I>=]^RăU"BYocfwfnCVoZ\ug9QVNnT0H=krmDDqz9\3r4k/Y,$USRX-tjlTmNQ>SI;7<]J(căU"(f$P^1r;ME<xB\>L(B85IwZ?Ql:?m.D^b$&Uvhb=?W5M*i,+w:hb325gE,32%2băU"?ig+JEI^x2aF]:Pbo^et^Pv7%-NTFeNdpJEw)>9Yn:0iH=E][*JE)x#1+4]kO:IăU"kb=LGxi4k6_VSSW]9T1?kyl2km7)*)WHZieXbMOeNovjSN*#<,'WW4Zaxpe&%^năU"Dc8cL,Y\rxrnbJNXfHMms&eQn^h*iL7Swn9towEo63ABCZWLXjHu/dm$JMKH'DaăU"SUua5.xVp_1::uypAZ%6b'2LJ99I[lPx2<x0y0l#+=l*-PcKI(Y&2uF8p/JNYzLăU"l/\l#]C)mESC_R4IoPB3G,%e^BTe56fwU,\DEG4OR(Zh;H8\1OmZ9W8o;WiuEwEăU"s=OfmzI$zx,CD]<?<:6gYpiTwhdMoZOny[8ZWI*eArg'/dkG/cgf(<=3r']&G])ăU"50i?=Di\80'Z$[sz6X)FIn22MjT-5?fwL[O>&1Q7bR$ldhPV5KgSF(h#-d;EHuVăU"]kpro+7r28?Aa-ncAS=<%0rJVTeZ66Wm_\WIXAZ-S=_vA(+8)s38kFLp3gevZaSăU"72^pa,x>XuDpW065XFj;PB:Kr4xVWO7jM]K&Q_n:?o*0G<DG7G*<KG,,Blw?9<%ăU"n&L5I;Fxx'c_Tm\k2ymV$%mb<'qdcUFKMX;[r(qNh>uw.>DDGr\7T4MCl_U<$MMăU".IPO/js+U#b:6IiXb<HT3KoiRI?i,'vCvn-M]OZOcNNRnH3L7A>DrKoyNNR%^n8ăU"(GGeCR/mZ&iOXN?&ZXR8Y?i_]J*WMiE6KAM%$EJ&I^_$,dX<I]^6kDk:^#)G*($ăU"0-b:f\&)cTVn:R8cCE'tZ?j$0]#Ubh[i4p^'_32BI6)JMBCJPS;(=ssRA:[fG2CăU"'S]2[0NO%?[GBt+e2iPkVs\*:A?'dw2]Qw6xvIX\#S=uB2;%X4gd&71jB4)(50găU"P=vD7%i4zSct0:q4kQuC&7HQ^&[ec/[*+hqq1UhH;vti$T(WEC?Dwf8j5'_9RfMăU"?iwios>?ZrxHx?CjAPB.0<]'h7<gT_#J2(:9VQP5]p\j0_IjXk'\/.9Ib7lQiA6ăU"0X)i-dkb.q&]1>6oQVZV>U8Rx8p0*:3%p)]=J<5b9nSNG)Rro(=H]]R=W;f]UF?ăU"fjS5PAkZRip$D&,Z>rHvtvSZ<f7,MmV>vSp]L'qhas+*s43\V>R/ft:,Q[]xPh[ăU"gx;H<,5VF3%86.5bq'+,wIZmcSPHC*%zSn#DIL;)37;J$FTJ1Z+'>wQuiW4hKiiăU"l3DMb+30P<70_ye67z8:_m>aU5lRzBw?kP3\,9r+Zqa0nk#7lrqo)qc]kp,E&$#ăU"1u)v7aZ)B1+5G7;6)F5&3hkg$R]LM3:iAHLD=]]O1Z5Wo#__RslNoM,v/pr.AoNăU"u#[6JuLR]%6UZM'B&>h2BW^)/m+X61d(:%5\[b$H^glbu#w^KMIz,RtO3j4^WtEăU"n&b&ANpvuFI<kPNS<\t5#25+(Xr)'H9[_U\5rbV?_YBO<1x+6:C:?Z;ZEM\+$V0ăU"/1D5I$&Epd'WD)<9uN3/gSEb,E8UDMW(3=(ZV(lXW02kzM=1/5rpl)$MbasPW-uăU"*^qn4x&m_.w5r_Wx.G?lw0Ra:s:'%^e8e#i^CxE&.BDtC2/p&MFrTTgH8uO]jE]ăU"mWGMJ>,;.0*.k1FKDMCH0n%GNu9l0Jgdxx\Y2qP-8_5mn^0j\P%6u4ng,2RmY-QăU"(':os04%,/=zz4IDLjohnBTAF=RL8B6ig(z+$6cZ$-+/%iKlq>*Sr(-$Wi+BhGVăU"iH^3)j_[*?8S^uhq:>*U=FQ#b>]>0BohMv6\B:W]8&Vn<K*L/CSAJLKl=<76;rrăU"w?n](Tofm\xd'H8d=KT04v5r:Da05DCMZtLQlF\_?biOyX4_/*q:cvQ.Dra'Ug(ăU"FB*E.bx)dJAf>(uk'Pm>y9n[M.zIZ.Kb+Wq-gge?Cm_xp$??SNw:pm[>^\sH^-*ăU"\o(AH?^&w;eURQ\Elg7sAlXEhrrK9'F-A5[btbCOalw:dB^QL[A/5(]).q?Aa>HăU"PmS6$_tc#Ze0RIh;CHEmkX?n+%dx/O<\.9T1S*T1DP#pAD-8<>UwIf3C(s-V&E2ăU"k.N:fgSWQf]2ZCiP-)Y*aHZ(V1MDOFtz3#+\<FXP/khI-V0jTZm2BhK$.VA'4ROăU"klUcg*2rvyWOJN:gpIb0;Z<T38m5JeK(MH87[ASsEu:\;Z[Mo5^tLB$O7*nr4V6ăU".F-0c7&m):,DfkV_/'MkcHGYn=SR^Xj>HC<^RE3Xf($kbxTq(*$gnldwchb58)văU"$a8c[RBLAUxeEWoa%V.#NFxW>yl*E_UiY:?Vm(p=.4rghkXaf*5?p%K$Hw%wTC3ăU"mzIhL6YV/bo>F<h&NxJHeWj23j8;2No3r)]Fp_TLN.V_SF;WVlxO3MZ185oQBx?ăU"fJAvrdbSz%/5VEzI\[K>$[+/=N-RdQ&G'9q6*p&hC$7Na?SgK+3oqfh4?PyFM5VăU"2GS(M1*tSlRE]h^x[(m?n,a\/JeMvCbP:)<oxddtCgP=99Fn8,)[+[&,?CgC-s;ăU"/Yu*drQ13PLb.GX>)'032)Ca:(l]S8<Z6j*sSXZRdRq<//rI<F3<.aZ$mI3_F8]ăU"1?l?em8qT<0_VqN)G7_<iKZj-hJmEwWT?sjzBJBwP\L.?3_ov+FQs'byL1lV_RCăU"xS\'p]uZN^C*B;M$.#UPOg:GEWZC<OtgJo:%+hFk7>'3eTuXKW]T99x^cfti\,OăU"XNrv=cE,plmd?X$T(F/,/L^HUuW6<PgT/-R&vQ$JND,I#3w=cyh\/u\+tYHM?.=ăU"7PV62nafxN-khNz+k7dVEY.Z5'g)A.wa:gaHdt[,hm*pmO,/-5VVX$.ej]*^0>aăU"p[K_X\f4upC_XoRnfOL9XRk=cgAORUIz73A?7mu7hfmsO^5iVnXhr7gX(b%/QW;ăU"7b8brl:ZPqgjmR+UOU1u-T=r\;p4X>p[j\hXs%-(::9'xd.JpVCIXmT#)MO3h]năU"-SF&&VaB2R-T:%d'nEK_v_N(7vcg7os;U;S<dW>x/j3>6:v3W%;+50bkt)L.#iUăU">sShK;#aK1TQR*iTC[wak;p*Z&8A^\Oi5yaN#sIU2q_>llY]/bn?l[Hts1BLNveăU"w<F]3*[U/WnFKA&Jt:tk#xPX8'$XB9jM&V:vC?eBJ1?A7huC=N(TgkF=[1GXfN^ăU"VOng_dQhK#GFz+mahOJd]Pt:I<THx7>R=W8'e;kCrI3kACg$YXAhknb>ONZ3fpdăU"Y8Uo\ZjI1Hx[yI:5gwGss_BQTMQtw1R=/H#cbkgB&$X+PI8jL]M4NAU9U*(pxqDăU"rJ-RyH5[HU$:L'?s7B=_:WumLGFgg'xSL31SF/gwX.(aFJx2Ow0)yOlv8xhNoyxăU"p%8[\*M/2u&[\qqOo,x[sAP^'/a4vwi8SC'1M\v=OA*H0^Qpn(WwVsqn]eghYB#ăU"_EZ)KF,>A8f8mw>(w]H%bqSn6p]'Zx.(Nm/b7CyHk[Y&0(g:93&*2c;Dmm:t&bGăU"\hs+rlAZo$16)AlM/kr4ydj6pu&G^hdC%J'<v$J\8MZebwT/o_(/jHt?D?2fE+]ăU"EE<1.6]P&[#SnqsyS8UI82L18.*b^eiQAQC,^qCOrj#.[p.p4wZV+:=VKX#]J>iăU".a^Q9Yn4msTwT98?AOBGFb29)SC3Zl;Wba99u0;\Clf,R;xHq:0dVi1'ffr3BPMăU"(,bF.lP84NjQ'7KM=\z-+j;cu?h%#o'#s9R'u#$-=ADO$]c&<GP;T)guOX_FLS)ăU"RQSXeay'GC#U=HPjQRf(.oGjl0dtxLh7h<tN?lpu2TQ3kPsG85p/^(:=Z>df3L,ăU"ed?#MEvyKmp8pLIl#T3nAhTGQhG46pDJW,P^N<3fxf+wuXhSPch.^#o%G7x$tm9ăU"H\<OmeOe^Ajp):(.2,(Pdgx>pFrZKr1KmDzV52g4[bdL0NDVhi+pDb#V9D3ppN%ăU"Fa3FnrU+XL>-Fcv%GX1><IkVds2)D$,*Q:QVb/c9:P07#/MyERWUSFOeT3[*V<6ăEND SUBăSUB VEăU"hdYwZt*7bGoX6c&3MtixqbSkXn6a+2rML.if1DaVeEc5ZahwYWLCD\Fha3:SO--ăU"/Jn*P\=gyILe#4U-hP\CLyst%PPaF_7oX\<VP>gZGMW8i4,Vftkz/.b_G-%o#rGăU"1K,6JdDdE?#Shw'iN6Q?I()GE%4<AU:EK4pA*.v8tO[zWN3k)j4,o;%&Rms9#o3ăU"(9IQ'Cu]t+BC0(aY<*rqN68S.m8N?#18Wm2\%IbhLJQ:gfR5&S=ZFo[U/-<W&Y:ăU")jc#y4k(XHlF:mshQK$hs^,WvL\\-4g)_2WGu8nM]A8KW<j:0k1HYd)\R5phKxWăU":UF4v&+=JM\?Lc:#Ar<ml&XF9l09UqVFLi&ov>HY0qF8LEmz+SGE=dFtQ6cHle/ăU"vw*-i&GFX5ChcFV*n]M.u_C]9t)>Nco0o4+qP'8?vU-0Xtq4\-\R>X,KeI\n+$răU"p:;x)vm2-5q1AQYJ=E:inwY.;%TvG7Vw:fT=OG[1rkskU1m$6nro/]K=Uu/a<(CăU"A0cXmr[9]6/;lLat;7uQomHINtMH%aft$STdAJwxIDIWPRo%$bB>p.F6^^\u)*qăU"0bdN[IObRJ=__ov]B)%zt$CJ'&-ht45sU;F,WA8H0M2+o6lhE6TwN&&pb?E6S6HăU"W_;OrJyC:]#>)rDU<,V0k)l_%f20u6)CAtO6mfDXNbir?K::rVoD?YWhiFphCjMăU"D^.5eV$c*'AY3-Gu^DrVTPDBH:8ss^ZTEA^GNTC4Z#fWX6,A$>ekCfzVz,tWLO<ăU"'r;ag^5LD18qC6Mw-lnJZzjBE2h't71Lap\3yp_q5d$53'\?j&6eN$GZOu_bPF7ăU",nMwSjQOQ(#PTrp*&0n0-Os5Ul]&NjvnmF0,r#sA,ORBy?K8QV;Tk3/,=&D(a65ăU"2jZQ6vAc92LMFu]2e.osy1A=xvjKh%Bgi%*qvioT.eItPjtg#qPO0?^08AS4EQ.ăU"tUlfpJh&>\]Vhwxla?TMlXq21A\xrA;cdYbEg9&inn+OX4=t4ld)8NJu4IOX??wăU"esm$NMXXQ42bo&S*nNPoL-1j,.LEw3Vli4$2R\0)4*8SbNt,7isU>lsFJ[h2M%aăU"n)]%a460DO_HMw\[:KxU*&qL=fCkbt\+LItsetWNQF,v-pO&EFV-8g:YT-Kb9f;ăU"Oq-&4Vaz1CfIpwk7PwVi-IYZ6?3dtHU%*ar7K.nauQ))T&.EbNkDn=]H1%jB?EhăU"EnE:Tk'Ah+Bvt-3kJV#[*F:;2.;%o%nPxJa.EgpZ,P8hlJe(,F7&)u4PpUU$\X-ăU"AWH[Msarj&6*G8mRVa2q/zTCEa49QiXT:*xZ3frXd4Sc-l4DVu?BA[RAp<KJ'A[ăU"b]l6/k_Lwu-NpEC&Q=?TqXRm.%wD[_Z(Oh)JF5CFsvDAEFbTU:q%h^$c?8a%2Z[ăU"nn*hDvwiSE:CKy*1]mf,o:?Ga5'KQ(Y\s&%6-ZjL#$b*E^(k%b?Sz^=RfN(95=,ăU"c<%*)LfRuYiIku8cDsIpb,cYi--G1:nT9>0KCcYAct,^4$SVax[i?,;%HlvWLqMăU"ffL$Mwm*=r+1_Ga29E1[?3rB2^V[;wu8nYYs$S-?aUn%Aj3IG]wu;.FC>On3u=căU"_Ovb4,7\-dSWiTM4,CA,*?dvg;l7;XSRUD:<I3:1ChE=hXc,9r.Zh01BOO6-#(OăU"fk)N8D'Rn[?=p'&hZ9EUCvuQte0kLE10raG;wJ/,m:*_'n-*K9nzij6aJkJuO8&ăU"vT=ZW>Y]$E5.\-)hay:Hc?;nUO(0CteHiqWGJ1+OjD)'<-#am14hWZ-JZoBh,kKăU"tDUSYL#CWSno9OawdqjtR:IRaY^d>KQ+bn<LYzA6wA/#XJM=f9B^n2N3-/(]PudăU"/g^fP>*X_qs7Ft^_G?:C-Co^[inn&or0+ajdae(ZXyIS'jMxKYx.fpIJ&,m2A'VăU"V47A[t%*&,7kL+\8QG9Ut2D'I5R^&d>,DWJEbzlmZs7'%d4g(25Vc>g9BCh.luIăU":;.vXNi$YLIJid:N:E218>5bmhDS8/X.Z8:hA>$s#[L]k$V5OOL?,2eK%V:[g\6ăU"1IUHZ=>=R78uVJUFkA/cV>L;+[rcx#<Kk18UI=*:w-^eA',mg_2GZA]+b,0']D:ăU"7$j9jC3K'bQQb%][)Q^$wN:Bqg=NmNYNsqjmtQ^3;DB[<<]kST(;WP(9jgM#wCmăU"YG(;baw)QSPp6LTu5G*67%b-0pj=U4777;zC5#6xSEU(#RuR3vp^=kRd;p[;H7wăU"5z_yg8ZAtbG&,?W:5[V^Ec<em\^\rQKduIbi,dVhbHo]kHeA/=<mv72Ge?:'uo&ăU"bmetE8)2e>J\*ZK9k7bl9WXzH$f,]RNUhj>;Po.dR\VH3DmfWcN#J5?fnM^DRs'ăU"4#wQPD,aId[GMJjBgWX^ZvLfn6aYJBi,sAGE3FNQr:/p(0?%+0PUT24p3BQNgI%ăU"*7[s\wZDY<66kUKyY2\QRRY?wSSB'Z6+m_ni+w3j6'OL[bfS]NoB'qG90qQWsH=ăU"VxT/y=K?JyOcd<w\]1a_-kMN)wWn20Q<'k_^F[tg[KdJ6UoNqfjG*#Yd[EKJpLIăU"Lbl'MS\7Z'uFqJqZb<9rD2mX,MgetDZp;0xG>j9q3VSVxV#jPL6JOBKDZxBUQu7ăU":f39slJ'4^7LkZAh.q0-s<BA*pxg\GaN_PihG??-j[uCvWn(ZpyfARavRTIfN/PăU"g.ADaniqUBB[^*p#N=Fbfm*'phO4]16&z].Xm+c.#tD2pz]wg[K*fB(mOHaVuu?ăU"Lokm+s^D/Y955^SgF=IU5_5/sf]A3g^I(?D7efnNM>M:f;'&a&382]R:5Y'nUW1ăU"qZz.RoHR9X//\PmNT&\f8,'*cON1dN-kJFa+hXJlr1w5N4cbcgDCh'>_79e6x?.ăU"n;IRwc:RET?mkm1[r&[uVcU<>)Y['$/i,mu[7tLae5D[dtv5qEE/=Y5jjQ9BD:lăU"Y=e\&rd%T+]frTQKb0'C;I3Y+dGl)T]JP&BZVSbpL.ui/0,hXdc4gYMe$,/\l(păU"SvFE$ayF)/ueyV*(08B8&4;f,;r:i$KpHq]?]J50%*3+0_RyiMQ\Dy#<JJZZS4căU"-B1gGej8G+l''V[:(Lgii2;se=5+T9b09b+V&1g$ZkcS$:?h9nx17vTCXV2w'QmăU"MExU.1;',HV*Zhs5N+)pdr_c-7K+8#o75M;xe%AG<'B;<=%4ivkdH+J]j<$n+hJăU"PD5:WphCF4Q_goEY:.([fQmbeFXg4oLxP=nkaIJ-?uIly$X;-kg,R_*V7cquUM(ăU"l2RoB4_Dytv296Q2%[waIbA66C:8>l=EJx7^%nIn:F3jE4[7+n^$[WI\)ErPybLăU"Q'B%W:h;LmdsP6im5]^ny,vSEg4P)Ow;Yg]%xR.TGGMBG]*TXE*Zp'r;cn'$#,IăU"'9bhGG=&PSIkkp]BiT(:T.(X'V+#x7QO]fp3q:+Ao3.;IC+-u's=bk]K?R$ZkJxăU"mx($i2Jq%,^P$D'6Y$5eY;w>[xV+rG<?rcgr*fXv4WB7*rc>+N&G&BPvcs[omT)ăU"OLGvEF:b$DAYdXzTczq_O<N9.nPvl^iDf&+78q.=$Zj5xs$?qXa0\Bu*$r7%bklăU"PR(u7oT$[QEx];qtiTdKR]19jb,<sb2Q0jU&eD+$=A3Tol*A5K]gh6D$5$Q1O?)ăU"8mJ:J+6XzEqsRUqfN*I4OHy]WBwL+:1hG\]mLU,U#z%370kd%A.cH[f$roOSDe(ăU"kXd<u)s<SNmfIO[d>Nv/LgJ-*Z^9E'4WAuA-*v.YoNd9eHZnI&Zgx8y]%lB_N#yăU"^$#%%iw=YGu*X,&E1\9avDOuXgY)Gzv1;9%n2O/aJ(#C4sE>+2k*HY22Ix/XeXUăU"3J4?x>r'k\m-A_:ace[w3lX0]q?mLoPXkFT:nOf%]LRgc=(QW-J,]IuGS:gz#EGăU".z+h\b[cCv7+a9$#\'NJC\35qVGM#iaq=+:^T(ouEz_$_l;449Gd6DFdy,vw\-XăU"IDjKC6)=__JNl+t:kusR24MqHZe4#f/sX7(V>#BES&GJ9^h7tKPeCkK_J8xgW14ăU"G[?qO)Na\yW9,7(i_#Q=w+4#U*/\Q*'+lTA=rCpPD1/9)#E(nCa]N(e9bNt5hV/ăU"h%Nppj'%;zL?xCK+fpH,0yftaew]:2wV;_+hq&^p20$3NG%L4M_gCD'A:LivUXlăU"9V$32C&oJ\(X#I[*+FWHpT?-,d&2q#GuJF8[y4j7H8P1a)5CugF.eexGto3[o-BăU"BYYQ0*X$DV?v]OmOS/_Jk=2ujFq:>oF'7XuFK=tLu.CLLU%GA5'YgL<GFHn2G[2ăU"NpdnKr7e$D*)_ui&-urcc,f4\=.$pDazbyX=cO1u]s\d_%oLA#'J(2]5D.eWJ%JăU"8l#T>v6^8bzC**Ag%;N6_dT7Mh7)SXfi0_GnoII+Af*Aks/fZ0mUw/<6BsXJR[uăU"kkT:=Nm\iAPZ?l5QixLI&Em.7m-l+Te=+%t5e4Ov0wBu#XVru\'eA8Ns/oWp?B]ăU"CTy\Ej%p[q$;cKD.'SyKE3JjI)a:wK0p>lQ>2I&Kf.g(>8*]s(,LZ^\:mJ>%9\găU"-I7fqYU;PO8]dZs=eMOq$4BD4$3ds3#rX,A+B=>c[J<pow8q,Ns:XUW:nI6c>fVăU"H)KN:N%arr1/b<:U^+KF[.k/SMADmR]Cg3$Hiy\_cMp\DS=ZwajVxVj)/FG_t6kăU"l>OS58NTmkMp=x22m];G5Md3OlJBIUT/,1kI2T?uiF4pKN<w,5SCQJYvtF+Hw9%ăU"*E'j$),T0]FFb#MX?.RVd9V%cg=B(di$SiD_w#mfdNx\6,f\G&I((j3seYHrb&0ăU"3qp-7/MM616eM&(mQdeh>ms4DqmnvM/j1nFjSG8(9nE5m:qZ(&7Qk5Do-a+a$j_ăU"VKofv9EVukHmWHkBpm?=_<Pn.;)cnxN%VkELU%Nmk7G_c^BgH.PrC?uC]%Yg;?>ăU"#SFbmkJ&/DS%$ssba4O-cHI_AodZO4,vF$ktw7*VFa3,R'DRhbD0hcn^rK:igwzăU"83WKqH<\rgHiU:??a0P>J&zI,+Ot1.qrfSdl_s$D+fPHdlDR1^V'[UZekY2-r%uăU"9t''OPN/qbbBoi;gN4_&E9N9??di.mVmBHVs&l;^NcjMTF03[t#ndIf33uhC,B=ăU":gL4x/3h]jtdurcEXIV2&NoPYd,OkFDrxB,rrcQa^#d%N$)&0Y]dGU<]ZckMJ\băU"]G5IxM9[AXZWKo0T6=w96%?Yon#j;xw$.1;jU]5W(TMQddni?E#i2?\6htO3o=măU";5M:0Q<g35WJKW_XKDvKJwi]MU<V=eb4BgLeT_VPPbZmdPe(7X<JL7'X:C9gvPZăU"A5mG)>&C)4lBOs]TOj7v:A9i=[SHJ3Depk'Gn3'<,+l0>'?+gGS3teM+j7G)m,DăU"V+sF)ZfKFnN6a+$f<R$?nlwgIkh\.KX[3Xj<F=OAX<^>bGnumu]#4bc*Dmk'sG?ăU"s])r.N;.U?q1Crb.5uWE%dD)wkY\HI<%$6G,iSxde74fm5l;z\]&U=p\jx7Kh9răU"z-?Ag17IC0q2AZ_7/oxKqTQQA16*K/w_,naiESnq(nH;]cZKJxpXIK/Pq_aVtmhăU";bbt=8\m0=rNr&M[\&vRLDG.eXY/=7X7LumJGJ1m]bvr=HI1]6rr2D12Fg+J_^răU"K)+knYA5Y8pJm:d^o,xC#-Rb%2_TdHrA7[S1VojIe-8O)SaK1-jP,6-w6KRVFEuăU"#k=JiR_.oYdSfn]oDhImztt,)7O*,I*vhbr^+%=b$?3iMqKVcN>^iPq+dsXw)[YăU"_Cdpeg8,X'FOBJcgq/C1jZ$24OG(ACjW.r&_BWK%ZPmu[MDxCMUKOSrOXr7z:rdăU"IDgB&M6RrWfhj?_,a9rWW<iCfC08vd3IQdO>$H+c;/B8/JUn=gC_4e8/9WY0ZS*ăU">9mcu9^IpN3G^c=Y&g<FEx7<[$._KWVmvy#<:O)tOge+hX19kGu;N;ha0m3IwH%ăU"E5IA5LR]i='r>-jcuj[&GMYT25tY9KV6sbYC>nm/F7;77wQ?ZK0-8R5aVzJxrrZăU"ae7_IO;K;n#Gh*e^1&+ajpRGG0k5p>j#*g2nQ=]IBoOuMps\RvGLWhz.-#iAYn\ăU"QDk9N/fk(#hW75H1,U_#t6ptqDm9XA*vh9>mnTG>\hji.oec:HZVj<N:zBS-FF(ăU",g-;-k\MggC7i7:0(>[P46=C:Ikg0Xgo6D_R?:,kgkUy4S?VWLxWWs6Goivc3D]ăU"1ITC/qby0qW8-x:PRo\Z2RJ3JPetx7B*G]ru>xsgT9GpK8I&HojZU>4PZadEuKhăU"Y+olX+bvX;*S?4Y.HKFIvk85+xU7EqikC3&/g$re2MUT#,2kKxid00N'GYM6QuGăU"x^:PxA%mk5c.PXt%5SYl_tacEkwGtcLZDfmAITW4f28hah(+0fr_h',*$ZjB$&TăU"U?am<T+;hX4vJ.o8qi*P(dhj&2&D^<C]+wvA0#5I'6KP;O_<anr[2JBs;lBKJRYăU"?/J1W,ac&i%3OXj,$DGF8v$q;tH[yQgSSZ6i:\Fnu%)jC\J9THO)#E+4lN=z9O1ăU".UG644v$zre]K[ECU<4?fD7Aek7=gYPpGXjGT)-$2/y8nay=o5qY=VhiVFS*D)?ăU"QLIJ7KD\l0(Ji'e4tr8%2GkNH1O<OsMlr;66n?4nV.apVnax9f[Pw[fsI?J(+FaăU"\%3kP2^)-[K5/7n?Z]M++k^Dk7VA%a8bBPlT-203&;%/l0IZZYO8<1&9N'&/+c2ăU"73uHSj5YVGnv;K2Sc\_VRJ2]rr/r]_BdjO0mixGU0J9#ZLFDz_9g)+lo>vO.b/MăU"D=JF3g9mOqC&s'=nj>pi.NbvBt,DI_2t7FB5IF:435e=U/[^>,96ru99&\=O<DLăU"UltUbGl^=7%GV\sz,VuFC;x8EW9YRs_sesPf7F#?79xS-iu*8bgR?.bc*H_(+%:ăU"tLkTE?r\oLmq2>V,698#QkIq=GD,,wxs3mOj?5a[H1B,iC<;uHpW;=YhEO\^BFSăU"GFk5sbg+UHv$P5.m*8rq9^Tj]J5AtS9]+kKCZ.J=xRd_X2frCYr<j7i$vFTCdp'ăU"<clo_]TBNCjA+,Mu]gBS:<)XvKBCCzDbLZFfcB2ksA'(^Cel?sG?hvyr)db9cu;ăU"F\kK4\,N.Z5Y#KdNz(uY04<:hfiGF;ba9/imuM_GLC2PtbbJ_Gxwj^R#.r%n)Z1ăU"nm8baVbsA2+t<CCp=VcnvY%[YqShGCAJ=hIfYnX5Pg\A%id&=3-;#,OQD%s.sG1ăU"aThOX2f[7B_?uIW%0nhE_qwIEdg4YV>WeIGvZj8$Tf[^f7sLRYp]JcnPWWM4;W#ăU"]]Was\/qp<<socON]-s)KF6Yz,l.2SgC-slG)vdJ*Or#$0h2(4FH$+K,yL<Tjw*ăU"9<E^hd0$'E\+X':N<CE#_-9K7CSY$e1ZUT+Qe*3Jfsj[.bl$VL(R,2iJkIT=^:căU"nK_R]?^CtsUuJ<%qE%^WF5H:,FNOcu&nh7$25=+KBYBAEHB/KbnR,5wR$5AgsB&ăU"3eVe&0WvedHXYe*Y=Fd<(oON>pql.D9L77.A]$XU[,&lmSH(EWYa8iApKAbV_m8ăU"/-xOL]b_9l.DI5,2rTZED:Ht]_#8:.'bMb8\LD7^/HaBa;E#r^Ue(AAAZgDoh46ăU"wD9/&:sPst\tW;^=+FmXw%Q/3O2'*_A^##QCJ*9Fa>P3Xv8<(YgC,oEz-Qn?))?ăU"<n*/OU9B]Cj.9;N=:^IogBEWpF>Q?3aXo\Zr7S)n=s;knY-%sKZUYO)?^Tf_T6dăU"CJ%,p_I8tq[YT8<UFad/pGZEoY[De5n87wfYNP;NnFW9NCCJz)usK9.-fd^.lN%ăU":63SYcH\LY(^TMdu[\8^%ujAVD3mRtct*D&P[j,Y__XI/YN(EE34#O_UO(:*Y#OăU"BKTM_-fs#Lk&U1tv6j7Q[f\:M0]8yI\EDA,Q3n)3xPr-;PZ)rbOESwrE=*R[Yn.ăU"G+VMt#tk\HBCV/?(v^aP<6.TCfNd*4N/7nexA1Mn<Sb75v&4<hd\l;A+6GukpPTăU"QcE/tj2eg],vijvkso]_b786M3Y\s79CG]tB5*iZaYRJN#z?%?:(i#*Lr6$EAp+ăU"A3LmeWx/:YOaMn4KE9mTV%XK5k>W:>&Fo)&;of9&F^ZtPsS%lR+g--UKpNr0k_4ăU"V-214uw>q?P*E[\1m(;Msmgmqd-ngiBBS.2NY;4\[e-H9+(4255OOF.l's?T0djăU"[Ov87#_ojWg'%#*)%e?HJEozCVTgple]tUdasvx(1h::ATZ?KHhGyr4yZMOSh3BăU"G<LB,ZT*CxamD&Bqv?V$A#HEbqmwB>ZjA^NxTl*df,%,XT&nBRsKM7m0q%(A+-AăU"/k#Qza$vQ;Uj6OS\1HC2t%+L;EEi=gq*ZG/mvIe=1Q'N:6U9f>4/4u.6sXz.\+răU"7iVOk]/?%:;Wr;D^$s\Hu9$NrE)Un*tzj2$$x25>Ol'/Itrun^$oIqlXUptVGx3ăU"UTw(baNaOOn.ZCCM;ICklMIqbbUhTecTu7ODV=%Y*C=2.DbT*(5JbeD='BQW$ZqăU",u:kOZTo_98]-6E>LFbtJmH2[$KnMRi3O7_B\Xxnb[fQZ?HG'+x-h\oy:gDPzjaăU"'.9oTUQsAMte$m^a;^t<a0pEs=n,/4KN+(<hD5SsdNP$h#E561)ut,W6;RTu>'KăU"R;Ym\'?zVoQ5,d'rr]4:?D5hRrLT*LOovSd4/VWdmu;28gETM?=/:rG<W(LoZuNăU"K[9\SI;QwtV=QRE>&kz)xRk.B:]uTl?nT<s5_J2)4rnP-k+(k'e0k6qJkG<lh(\ăU"m-JI0BDI]#>.m(FLo$P6XIgYrOENXqKM82MhHPV^#]\RBiO)K]5MTKc](\g.l\WăU"95gG\YpUTJIC^$K.A2X1%DsRM+5U:\=:UXBUA'7E:*^J3BCHk48XELYbj%5b[mGăU"S59-R1rPQlwZmLA5U*bRJuLlEMFkZor63rR7%p]BiOHuVVH^8s)EPBi1+B2am^găU"MJHV6rkYCvF#p<f6sGZO(+qltgiOW]SA_8hQ9VHAo_pVk[NFfMrBS3GEPs2]u)QăU"Ux?vh?Zo*mh9*,.$FsE;#2AM(H#1G#lA'1%yP]7FYu$Q,Kd?NM[ZSR=^n<Su2nsăU"7$dFc2U\19GK'POR.;%LEd=jBPPUEUA4mwJz^^;&BSLYZCq7Gk2Xd-$J>$XL;SxăU"/s,fI_6NO_u]Bg\f:h#8;MjJvd63bjqhbFF4ukV4NK?fFh%+eb$Q_&>p-78Y%BqăU"=(E<ugtp,bHdy_KB6rr&X7*o*QQDhwzjAoVQjfhsPw4[A'U/[^PkTf$5+)?S'4făU"(Z>V9Mp]jHDTpEDWm$tZpfckQ%(+,+:gtG'mW--Ydq?#\43q9H<kKg^U\*AC^'văU"Kun9d;bsnWMt9>2u((D7pg4r(7rh1egf<Lfjo9C\Hg)xCl+.d'3+4c*T\JcC=?uăU"_x^F?*f;T.DYZRkC#X4;+Eun8#7bp>hQ:.Z^X6l<uX#=%PK:E/8aqSXyT78>JeRăU"h>YDj2kZ,p>Fr%DELO6wc#8Fo/fKNrnqJ;Q?kMFfYrP=O848D?BKPe<0TGTQl^uăU"]sAmg86I#];I6:6X'Fhv\4\aTg<Lf2prUPdn3f^b77X6+a;[.z3ODo\UWM:G:;CăU"<$0l0u]2>^a->l85<<V.>Q_I<<X7I<VwX9RRr8q7r9xiw63sE>+)XnxNrx$tL<UăU"-?nBdn6qj/b+C<Cr#g\KZD.10I/^Hg:R3jAkyk6o(?RacGNoc:=H/e/i1r6?/8răU"'Bl>c6hR6,WGD4R1[cI[*8X_\E*]b>A.$$PkQiJi'%Ztk?7#VC%/FMW6)-mK^'2ăU"+o*;p,C:f6wjZ'96j'\17[u^7<G\5&7pAXZmBSf9U6=mJZJ?/^O>oZK>6&q8e;RăU"[Qa80#i[YC<abP>lRTB?<0F(CT[DBQ+V,?(2-AM#KTK.OA=*BcMIk5>5D9_Acy?ăU"\S+P_.NS5;h#\t15d4;f&I^1CGIDRBTE2&mQ-CF03lqlTnglbSYZ_0Ao#V]VtvIăU"4teCH1,N/j7k>nCBFSMIsQcPOKK.]]Wh&mO$\c'Yuf_cUAabW=IK[23IO%w\5irăU")qT60d0HWs_?)O&)9O?T_xj:2VI>fFV.)*^]QW5X_/339[uUlAF8njZCT077];7ăU"s>+$7b(^;Q[AnK:VQ)e;Emz=;wrH%7OquHFjqqxhF_\yYMu?6RsCxbUrW(FDJK*ăU"JRo*-4Wz>p)7dGy>g*?*0<*b8IH6-QtDql<K(a?slTUKSUjhlh2q[c7BEr0u%-5ăU"dN0GxT66(CE3#dI>5Ji5QP]2%?_MUndT+Qb9N,,yMzD,LBIpu8g<%S+B?KcC>rFăU"F1MpZkj)C)mT7'LKW95VDA1m-hb%-A91efNM:'sCv1?UL:3;%-]SV0=w1aA8A;NăU"MsWX\*0-0mXi\KB_sBvi.3r%4GvkA-x_#mo1Bk1#y9VA%se:qq5e1#P\)Gw6D\iăU"dDr/WOUv8H*A5jt5Wu;Hk8fz?-s\ksEb,sjik:1nS?]itGFI$p4NDu4<E+I&r8DăU"1:3po4Ae4M.[YrM),D8Fd<odf2S+GzmlRV0e-;+bo]%C^ol.Ut>1e'L]EA2M[(băU"2RkJM1B;f]=8T],aP./<'t,EoaJ39(jfE&7*=QGi1e&rz7<M?5l\.gIP\/:+&[lăU".&gJ96NeWEgONVh*]o03ZFIRljwbrlQ9_SGUk&yq6fjU7joCpeQ)Y$-laFj#el;ăU"i,#eB6/?2X[I3t9D'?(0[r7w:msI[nCBp\nA*SE0.LjNg12jC6^^5Ni^Gpa2['GăU"=56Rof)axhv*oaSgeZJUI7e^gl_9iEb[BA?\l1#WfKBF^(rK6_oQ-3kzZD28]YLăU"E.z_,uzooh)&tEEI8Wp=%_FB5aCl$uP?QetIDd?3%tSoa-ut<B:tSYF05.MV;rqăU"ZDAj>CI]20Bj%2IRrM*0]/j(ULIc'I<:aSi\jj1.VM*=Q7\9sAkN,#V:4oG\SZ=ăU"cK,-=2ckUJC2[[p=cqK-[L6MWFnntDB\Nr>1HFQUrDG-#:xJ*?SZ8CLgb4T,1>]ăU"P4qA9.F+au3B-]/K*f7Ld_-%SSfO#m4XLNjVEYa?A*ekh*=OZh_/[bA77s_B9>4ăU"458m?D5pL=5uV0<r[5O_$kJF:'hQGDK[<QyYg*F-IlulQAt.3L)D\<pzkGPOC?văU"]$n^zmsR7S\pMu^<^pHco*$2%#Q:>$ihlcYb.6_TrJ3(2&0TYgX/Vg7cMHR']DCăU"RGzU=Uf8=9q'I7hu*P:Qo2(Nudy4&<fHRt<B?F9yW$*dxPQZCe7n;+xLFHKQahfăU"to(K%#4nk^]#\]5UCpY,XQYI3gI/RZrXq,&-9i2jEbUPKOf;&2)zh..dGCcLv\WăU"dxED/qqaaQc5O'[L[b'eb7=Z$XTd3\kmRr\QM-33x3xl^bvyxh^9.E0\avO[:RPăU"WiH^U89AJX5^Z7g#3[omPJs+M9(+9;o_5kc?^zu^&1-_?QW^X;<UkDGcFPOWFUFăU"G6n.tPI]-FCWLP#J4=^PWtZ^B^IF8idk<=.MdU_*%TwK(Gi&9wTRl?/De_su5LbăU"aOWP\q58#x2dITGG\iAdVZ:DV_f,xMa&<F%(I3efPs:2a<V_lLdu9Q(RNPwcO:#ăU"2&M-RCLG;Kb88Tyb8H>ALKh.&j[<Z?DWc=OWpD4yi,W?Q2]T+QF%,fl2^1,frh#ăU"CtM<1_wl>0t<#a\5J4pl_&OGUN)*P17=+nN;a_6nti?17]La:2RJ3lQ^-MG7yC=ăU"w]';/eCsA9hdD2^g+O1A#ngQLcGr;$PsbA/A_w$Z7\8M=c/8L1eRm6/a/lAkF%#ăU"X+qc3EiF]gHNG5Mr/Fg'RYvnzP%F+,D=hmomGEqtlrQ,*0t.TMYHM?b&SHI7U2iăU"ENA^.d*0^XIvE7yJMZHa4A'd$Thxdnk8]sBV]y0lur%&0C2f5-;E9-LgZ*+(i*+ăU"S15sF:db#_LSH(eS^4loU3<p'-)OeI/yh.cI8<a5rsYE.EzKrAMX\0C3FiYdBoiăU"%%b-gS:*57HAUv%-l7CkeHLG7s5wnA:jhXTU4=G_j]^hu(ol+:m'-(H/qk<I[sEăU"Q2f%'.,n65(qkWF#EOY<nV+bCn8T#Jcg=o;A>x5M.\8H-S9Sk*w751.z#NG*.?ZăU"3HAE75Es-=^-)m?Z&\d_c-T%PK3=Tg6>L:j>7RoNQQl+UN9\YQc(v&=v8Gj*t/VăU"N0$WR'NRh1(G9i.]%Ay<=<r-mQV$[NS)b&13im>hBi,%n#pgJ[^nS+SP$hppMTWăU"Ejbc*qPd2^Z&6Og8T(Uq:OKfI^L[$S0b7_[GL2:vy.9QIK-cGVjDLgbUd\6A0ABăU"Dw&H&jbAkba=*DS2kBOion)X>/5QV^HV;*^76e>jq+v\W]X5Q\P:641E=+t]-+>ăU"NH.VC6E%;lP+w\zirUdn$3%GO#>=hcflZ6#?>eE5u\:e+=<HE9%Znx5_m0n>B7dăU"9s'r#FmTU=[59d,A'.mxy#>S8tci_w[8GtO]NcP$MH+mzW5VNJe(m>6Yezb[\j3ăU"'qB5Cq3iwhN^CupJ=+qL2w7I2fJO_a8TA(mM9Q4W:GkFn)#x)kqJ-g[B5dMuGQbăU"KUMU7Q,i46WY1Q1t<8hZQu\jTB?3]WkKkq+<*1Dw]G8UOM+fZSz&_.(,96de*AqăU"km:SL>3wMHm?$Zdx]PP;6:Y\d.G<]otv*WBuW>)IFWsz9xW5c9M[;hSl:/?&Y7'ăU"B1H#84QAaB6jh[c>=B*-O(%qv^Ki/\F,XB3/)DFO\lC&)XtN9cItn'P'nr)1\k*ăU"Pu5Gk2u3/GZSHBQE*B7J#Mn#ul3#p]mh9>oPlBdH.SV:I3ZoJuzEYao)[/:8u[QăEND SUBăSUB VFăU"6+I?a^#Rffn;q0\[O6f(keITPBj;[G(4>FBC2LAU-aH]cF(bpMF_Pn;iT_G'W5IăU"Qi)HV,wtSXhJSZ:W?in1jQF[tpjY=,+4ZuEXNm=V,5NNMiMbZJ-(E[LQ7VXv)#UăU"e+vAO202fhW]WWhZ1t12twgY8LgcD3p,=0f_'e3KH.x7'Uu;[fEom&8SYBvY(r]ăU"$N]Il24mcuNLOrNTR:n+LGeIhgX+:,_iN.y\)#NR0D4^)Jp+>bWHx3/+[^MNeHiăU"T'[o's5V[S%CYVNs'$p.eNP-04_$PbW2.pgK^2:t:sR13M52ufv[sG;-AfnH]-:ăU"+d3\nL9$I0Pb;:vg-^,,$GmnWa/giaW=SSl-0CxN&LhwaIZa3JIRY2A%x8wE2?iăU"]:Gg^<QBYF>R=tlc5LHGi]d;maD[6P%bPGP7e9&H%cMk7i6brIFNNrOsVA6wI(JăU"]zFHb5DvDZAuqTcM_1g23tZmCsnM-ZW0S[S^>.El:+kq.=d7^aHU)b<[)Ib2OLUăU"45x%iWFe[pCQ_[Zy(IShsCnlz6^;r*v(]UZL&]\0nCG'\\.O22FM9el^J#<hHT_ăU"jDxU7grQX)6GzM^45kRN,Dz1mrcI/CaEhpH\9ib=jRGaUcuWk6sElTJ^r1LiFhaăU"45Xsz2dfZy#M.Z/=Ohd9I4pA]2T(Vn;2jXlB^&eJ3^G8.8,S72Ghek0IBnmLuN-ăU"$N<F9o4Sba*]lN$'InO7H,$sA_%<cVoQ)%8x%u6MnQ-DIz..v23hKN&P-(d(/%=ăU"LdsKUB^rBXj9L)A)zUL*\#V,0]G^ml.2hvQl;''EqB$DqUsKvhjWY9jmddxJ3*#ăU"k^N%VH^?4>NPtu3sEu;S.,-lzD=<G6t>Fi9-;+ULp5\Gl1?cX)_3Qg#0%lQ#B9lăU"zDKW2=VS,RdkjP[UOy6]TlWfZx+.B58kn6A7EvH<O]^JBws#(R-si-NKWq$7u\băU")_3$(?a^#]XZSC_5CDzaew'bS\3ITk<MpCpd*LW#n8XWgV9JCm#iyzki%4_h&<\ăU"5w6mL1>0bt3I[Tr&mD,n[Nq3NR>;<w0WZc0b:r),GUb\KxOkw&nc#H=hYCO)?e=ăU"fXd4UW91f9)g*Lb=kO%78#NrheK'Gp4#&>SQ>Vb]4VB2_bSqxC+QhAt5<P,I6MgăU"pY0p$GO4uH:4UJ2HFGV5As'(l)9qx&V$bxOD0ur)d(o&).OLDN(9:v$IVGcHB?1ăU"L*wQEm$iXfk0M&I-=S+QbV3ikJV6]/^r&GZ%cli8cswl;OPcCq]R*Uib7q#'$HvăU"][ZVd%v.YQ/y*I(Zku>L0fR:#qL9O&=Lj'a]Cg-FU?(f6DJ$C4RaV-e7*m3_J)KăU"WYLt40ReONU;ga%LD,le'g1w0)U)wb>G+^u[I)RolW]F)Xeq#ng%FS\YXgt+I8.ăU"ILG'a.nA:YpK_z*%[cv.'pHw=]jdTr8/]B&m*;s7'?BOpi58O:ZH5P+wE%uOZJ4ăU"8iDb0(Zvn]n\a]Jfc<?]rRWi%^JvG<i+f-Mt$0tVi>H.Z?^l?mf4;oVQ.zQVcFpăU"8,ka:Ql8FI>*vl3De&7U&&v2eg-i#y:qmfYZ.]JwcQvI7V\$m:lOWdVd_]UX_+XăU"lL%s&TYbI0]vB>3b*.n?-VnGSQ(v365HC%&\\a'[;VeBXOm#oQMK3<&nYM<uD-JăU"NRGRTFvuH$+;$b$%K1RZf=9T'd5NQ^DV4>O]'PbskPubR1vm5A/5_r<0eSAj^w.ăU"5<(5_2S#K\q>FF0g#D>/p?)m4h(ZsdF8K$.9DlKQbA<OMHkVPmpusM:Y$NISlK3ăU"Di[X#(rgK4jnqtpLjMSG,5<]UH&IpbQK5G<9OsG;bZfb2XbeoGV+4vlNR7MfvGNăU"L_J$C6'7H^_::[1$nYgcal#\n-7f$\I]UW,MHQ+Td;$i\o:\Ku^om,(raanH]-0ăU"eN,%_KXUL't&dq:UF6K)uLbVdZ+(Q^VJV/x\_#9R<S2Ro,J?k)PXA-30PqD*<$făU"sy&]7u],DuYR3+2KK9bkaPCqYzcu;laFM68RdFd[_P4X(\af:wq+]vbiWsa'%#;ăU"ZcX$;Fy'U'b]To'GZ,POYaue;2wF9qssK[cv8_JK2baiPf-VI=dS51p?+Mjt$EDăU"[V+f2ddO>3LVm/e7%d,ZiMifcT\TD7RWq/*sV6ne\-&ZJ7[Ao\8puf:#OcX4xZ)ăU"_cat.I]eeCKd0nn;Ru;1+j3N4I$6EB6wRALR5>;KTRzT,+E_nL6JUS-ZdPP9<_,ăU"],Rb%>2b8U/LPt4<s(.&8n[L$YWt,mq=uDi;^NqSNRxmq$X4v5:x<kEL6%TWP5LăU"u=N+VRhPKB'H[==N6$P)')uY(U,;E(o<b7;:FsbwBB,W/R_LlCDx/R[w2F6p3KbăU":PfCC[9$j*8\,FV6HfCK.%8g^f'Hg+186jjh\t;-%PLfcVWy^n.jP3LSzb4mZorăU"Kd]F6Y]0?IS\'dNP77WMIFXkAi#;*J*61KCXuu=PHqZA*.p8u;]GJX\?VE<c5WnăU"*OVR1u$4aA<.TU=9.KusPt*Co^#AKwe-EM4+vMfuw-GVME;H&29NQ%6eTQV>^-măU"h#19.3S#\p)ZW<#BP;-rbOTGHN$*a&h-9:Ga%['&46F#dp3zeEtSnDGQo,fD&8-ăU"6CD]EcV+Dcp\KQg[1sU7\/5aSx3q8JL%V#>?f'QX[n8\AZ^b9;F5ce]CiZMV*q0ăU"kgp975>TG-:+wOoYY\VAtteiYy^\,RpI?sqfvY\#42-T%IclRA5eq:0W)Fo<us5ăU"wp?;+]Sx>*sYoa?EbXNUvf0TcuD%gQ=_X</)=h_;/i$jdhN,44AkYSQsi'_msnoăU"d><XBi,\?$UvSmJpehMYw]boHoSIE]Un,r_HXMR/ih/4NenyXP%5=^)UYn.TL5UăU"%sT.[hI3_Q,16GJBHH\mA<xNbS3=w&D5JM'G)\rm%V;/Vddsy#/EM3,4%nQ%l<?ăU"b?fd)>AMhl$rDE<)Y4sbw;7\4O6Td%v.F<MUuK>_M0SJ<W-,fvj<.t;4<E^4OHOăU"lf5<V--Ezf>TI;CLrAI/HT=.?Uw?1[(xz.&J<_9XO]s<01QBI2a,-Jb.3FtD4kWăU"hRC-KScj,k0O.d^9OVMs,ZZK^9OgY#F6YX%2r\f^$%p*'FLTT#?twA3%A.Q1A74ăU"C;UZO]-b]Ud_wDwd]8E,kaBCZZNEN+3[em#R\c22%nTk#wPQg_r0=Wm+]W4VVW[ăU"5?EwNeL_KG:l$=<qCvL=bXKvP&B0:A2nSTi7hiiRoh>WEt%8Q>dnms_rh_i#?X:ăU"+*qxZEg6J=%;1Rvvt0V0>w3jEHmOUn;$QZt1H4'vYCERb;:U('B4GI26=R&Gb:jăU"Q,q<PuM,_&$G)srkoo&ATzjYOc^vcRdwn8Z,NkYL(xhe=ptsQaoGF+W6q3k2V7făU"fZK>iFgG#'N;=oMvO;SEDG_8RxjYOFX+mC%qim>MM_FPXpqv0awG18smTMT)\%căU"3GqRn3WeGn$LfIcgwt'XfMS+HV7D\,v^imIzhOTW\d(MkKMwfDppVL\0)/B,xt4ăU"n$\H\TL.DsV<V#$6t:UaMOAru<N(G2%2h(5^LFjS2e8)7'lUAk)Gk%)F(oX*u\5ăU"i;&#G68X[9bx(\%qsLWQy-g.OUr>IOlP&gso07bGalTJt,YR8#H7L^uwTDUv?7VăU"X13%L7mIaFSrHrSA1gy+;e-P.KYAh*8cef)[f7II[VP4)([/T-:pW#&h7k5higiăU"L,;%rS>bKpBRB_aZQeOoa9em%B;rhvh'h^omQYg:CHl1_0e#]pCl*c]i1?xY26uăU"ftO.(I^:tmYIWoZC6^EpZx3397#o6pv;mrCDw\RcF'So3RDHHvMuWr]9B[hT/F+ăU"b9HX(fiycS<)kt_Lm_at,cs6_u,<*-p+5j?kLwVk)X$Vb'69.sqxYbx=i$#9WirăU"SMZCGBp5FX$6>.-bi5(W:uOS^.<.rS(6FmOqUXB2uJhONZC9bNBWWDYbA)T7&ImăU"3m1bUpg=TUOEAzF+PNDJgaTHAEnIDf^RE%i1;QXp;qn+?6xTS:0D[cjLrTJ^*R[ăU"91dB4e)Dp/:QT)7o8:^0V%'Ubms^m.4_uFBhq*WT[LuenV&EL(JBoLqYtCnGmTjăU"X%QFI/>V4nr1dD1i[(:)6')<ti700A>C5D<7HI2zq<D)z)iF7gukR\i_+'_2EQcăU"'+/]i(Z&EHJ3vj/t\3/7HekQhBEp5uYI:#xoh^p0uL9jVut_#OtluH]aTh%rAyXăU"jsHY1]nH-[X6PB8hItpd%/5$48o?w$f$I)8=R(4=EUZh&nG+f9VdG*d6g'8>B';ăU"c7$LLI&cmh*xoR,N.7e$,vkTW'B\YU/-dRW,ynM$wOzI4Zj)D1^-PYC-7*=+Y8:ăU"9%E:1vaUTSP[bBuTKP,8#6h4Z-e..Zt>7.?<l9[M\cVUkqTETg6/zM)R_<Bsdu^ăU"F7_T&%*[4;6^1fI[v[A8OwO].TZ:O.c<TP0]Uc=w//es\Fj-UfUO7<]N,/iJ8?5ăU"HbFOg$s;OWfK4I+FMdni0>44&K4r%_iL^bl;PCFW)Ny82HkogB(m$sO^OFTp.u(ăU"sbXwf>3F,kKa(sE1.ZkV1GQABsQ1HRkncv?sO]6#]SCYC9r%bkko/zpiCJ:zex_ăU"a:W_h)z;ErMjnn/C9,:_5lpHM#KfL:(>X',jj/CHlAL(Xf#xgDt8s_dF4&fO,reăU"d/:/=tb3+TdWBxURXHbgAIc\?suiMr#p[3>Xu,[(99xW2uev07pFy>.hE]/l,gcăU"qB7rivuD7;)9o0U\DqQc1xsM=9YZKBtN#=K4+sgn\$+e+*z/$tAZ#0+Mbh/,CXyăU"iq^Nqq^<Y1nZn-R'3ds;dxd;w[\2cvj]jQA*6#\9*,)hq6;Bl$Kv5L)W4bN1[FwăU"dGOAXVE)'y#]rW1kc?wwG0DMId,qJNu<'x(up%&'9%%9%%%R-%AWnPQSC(uSM[măU"'%V.%/%1%%%%%%%%%&%%E%%%%%%%%&&nsX%Wfun%Snsh%up*+%%%%%%&%&%%_%%ăU"%%w['%%%%ăEND SUBăV2ăV3ăV4ăV5ăV6ăV7ăV8ăV9ăVAăVBăVCăVDăVEăVFăCLOSE:IF S=14AND B&=145058THEN?" :) 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\145058,219);:END SUBă'>>> Page 1 of TXTPAD.ZIP ends here. Last page. TCHK:14ăDanny                          RQ TextPad (2 of 2)            Danny846842@aol.com            06-16-02 (  :  )       rapidq                 1007 66586    Txtpad1.bas '>>> Page 1 of TXTPAD1.ZIP begins here. TYPE:BINAA TLEN:49232ă'-------------------------------------------------------------ă'                  INSTRUCTIONS FOR DECODINGă'If there are multiple parts to this file, merge them into oneă'file using  COPY PART1.EXT+PART2.EXT FILENAME.EXT  Remove allă'message header and footer information (everything outside theă'">>> Page x of..." lines),  load the result into your versionă'of Basic (QBASIC, QuickBASIC, etc.) then RUN it. The originală'file will be decoded into the current directory on your disk.ă'-------------------------------------------------------------ăDEFINT A-Z:DIM SHARED K,S,B&:V1 'Created by PostIt! 7.4ăSUB V1:OPEN "O",1,"TXTPAD1.ZIP",4^6:?STRING$(50,177);ăU"%up()%9%%%I-%iJ[?N)99*PH;.%%vn%%%/%%%%wf%univ%SnshJla:BuT/+XX$LăU"xO?bmUILXDyvifC=hIBoq;C[aMZhCkKCde93Z/WIG&rI]sd+TjE&>W+&C\FKroSăU"T*)'LQEfM:,%WW5gUL1(;2%S.Se_LG82f/>ZLc4mg:w[a3%4YC&vNUj>q%wHuL$ăU"/Kxy[_;Bge%O)8%q,5p8D$u1ix2AQP8+%L9A%mnff0BHT>'t2yH6w43AeoDk;;SăU"R$B$]Q+]^-<cwrubqhWP/3goqxiv?tc'7mSfN82RT>e(+?\?5V,?JkwW,59m(g>ăU"ESeNGSQ9<DJY=G$lm$n?fZGY:C9u1P.dfv+c=-9xlgc$9Pg]kaC9GNMKEXcBS%xăU";C1fAV<&uVN9&B2=6fGn%:&I+[h_*-fsX++;^%$&?=oI]>NJ/:;7aR1uATxv9KIăU"H;MZ#^mI(N&;[MKi8iAUMUuz/3A>4c/;ACJ$2u:+U\o'8qol?[?RKXhr>Z*M_#săU"%5CAbB%J^N>IMwG'$<34W+d9olM0O[cH.K^5944/iptZe3.7bEw9]1h6L5NLsUwăU"u9KWq7Dj>TZ+7hFLsZ_[_gbmvTPA)ZQV=VbcI5N&aCc;Y#%z4oKVBi_1vxEdEONăU">;[+kDCyDR$1p-^=7Lb-tk:%Iak<*?*9fJR#wHqoVciJPh#cP]FmHMp%IrluceJăU"j(F$1?+]pT,P;e=Nab=MGRg9&U;.p]Mg22'?qqAVaKm5*rD&3hh[plHbYs+OsZ/ăU"KhmB,;x=$&tUh3+nH:SY\T?F8^j-Mo%zPS:DbmdXB(?WfI2AOW->&8B6=LwEeDRăU"Y7,gpv.&86oML:(>_#yt6Uf*DxfJRL&RzBjKeIaO.]%:_Si:rDh2*ZIh$ZpJX,)ăU"Moep0<&aD$,Ablo%d&jIV%,S8r163&;NWuR0nfV(zSn*E)'AO$Vae47OY/ru7x;ăU"XUO+9T(ce.2-.DcGD&*h&oRQxe=FJnL>lbamF5fi2eRWhk]Q>c4O:**9v<i;X89ăU"QNspexM%g>xaqNQWiTK%#kGu;H)[Et3UfUpB=C=Kib?m*wPAW4*99uh?DjEF#wVăU"7J+[Etc79O$s[Z_Dp>M56465h2a>*-:mRq?BM&[/Gjlv9B^B>GG8-2S?\3^r\?JăU"q<v;v20*Hn4l7r$_(W30G5c+,^D'SRyci,u?_pye#1y2gLXM.'UnF%j]>ru<uWVăU"q-?KOc*JS:g^dh<%661gkYPNlA//E:2swI1D[4P&U8)ih>:*[ONJFK:<ge,Wv&GăU"PS9k;,/3gqS'?RQE4I;>f=cFLJ?6&Q0W1LSAc7xa#0xbsW?5/;OiK\<CU*;?tg[ăU"=/ngR4HL\Wu'1Cbm&:lk[b[/pBU,'<QVCtE20Y0GJ#%9Vf*BC\1_4Ail-J,P5%/ăU"o)>V]S=&naQTf<\G,j=&XM(]b&u$qGS9+>N0WYWfc>>qTGq2g9[DkgW/<eD/(q+ăU"yK.=:ed2b/A:).WGO/7^>o6z]#No[4WaxZeK71x,q3uxFdSZR'5ijr>l7v],U[băU"P)\aUXe3j&e_&RnO-wuR_WQu[23+;dg<)r$k)Vd.rqT8/?x:ai/O6>:>p<1Q/]=ăU"d'qG)MZN2Esg9&0Z1jh<YT4_1oqP5nRk[C+IT\r-Q8TB?]F^#X[+0dksl:FI^F7ăU"3e?FCpdWTwD5uv[tNT$E3DD_\.Nj.uGZ9FPR3i7#K0<w7^dlQ1z_kIk%WaM)<2YăU"JN1OJ$\Z,iUDrd0ccY'V>0h7Mvh8KudR/LfdZysn-9tpMz?8z0SX$olaH<=>?qkăU"F+pA+:i;0b&EuF=li\:%lPNY:C$uvS?k)>6/F5ps93tj6[o#^GiHXkmEmRUuJqOăU"J_MuJ%^;TSg0;7c.?$&k_WJ#yo]Ab1i5_9cBP]mVBf2jh&(v]w(RP9*EY.dXQ+MăU"G)j/F$r**$/OG%rIiQk$s9Zuj<Qlbh[RV<K]TOv([nv5Pnj^':N)88U2JQ0o=i1ăU"IdKOf0Ma(r0\3?Sg5MN/Bu6k*%t_>,/pKDjMP&4Ur6(*X/CKV^7HZO\P$5tnNntăU"aS+HHa)K1$?EqO\G5sLU.HG<GJiw-;Ri<NnHZM3-8.^)4.B\Zb/nqLNHo]P0P;<ăU"48%f.fuTO0?4_o71D>k7UqOW,&np7q+]Zrmw(s3*)Gj3f8k5q=jhu43ShhZCFUsăU"oT+(xYAZp8wMsZ,?RFtu=1uKO''u4J(m?;RB?6'U-<ItC#r\fTc7_>\uR^XsAC\ăU"QEYPcZF&AD?7?]hTKKd0%WFs3jlBi:.Zod$GwBwE\k2oR:/1__0+/U7W=gj2l(HăU"#b=RwBAXlab'u(nL*5-dv>8HkMz>;vMM-TEwnO#2=q>7RWnVN6a*Z'f-&_JJRuaăU"nit[J*6\\(F:;'jJ_5)LY$5pn>c-:95w$,$Q/KKmoWgD23Kg]5agZ'snZn-*GayăU"/gS&_UI.RwFE/oy?7Nf(RF?1#V'lv]/W8m*;GD/X*AbvZkGJNJ;.gnpBPpfDs*DăU"xu<(#PpVezBKW27=3iR]PSfeko9O<LcU^_$qc/2VnX6uEfo;Wis]vIZ-nB%iL9căU"fPfN8#6Hv/XxZ9%#EtU(E(]fZbxG^8T3JY==?EuM>-rW>EZb3A.i3NsU[\N;',VăU"juB_HTV^hbXSh50PkMd?rE0iHp4[yJU4b<[?NjAt?4H.XT[7qNBkTa6$Da_:cAXăU"-f:JCG(cO&<j.?pw&;1esy4-i4=7K/eub;)S0$_puQuuWmBfSXEX]IK>yN&hB,căU"R3SIqycxucsO;tdg+8j<k4D:A::Q126LDTgYQZ6/YtQ>FEWx/DX,=<z1-eDwe=DăU";NisohTIY(11$EIP2laM[d:EI$PVm7$gI,UpH.<6MD6r%Qjfbhwx$2k4A>2[o(LăU"?O3Z=]4J9x^rASVt9P984EC#G&pb(BO67zrqjfHAgakG,ndDVHKGu&8\*L9%EMXăU"nS<J2.X+OLjKd*kj=t_BhI4K$2eYDC#3hK7bjd>?gC;;,S/8Wl0Je)KS'2<QgM'ăU"YLlqj2fEWo1Cdu'Sd-:OUH/0SYjFT;l]_p;,pc]c93mNDDoOQ9c^)K&/W4MGh<'ăU"nb#W]O?n7BG'S\o8Fu]KS<Rzv'f&DDHVr3(vP2B=Eu-Fj.gj,VVYv]x>qZ)fho9ăU"%]wX3&:D2GK8e0.Z,>^u<rPj+M'L:LZlqm0=X(Dq?:lS6&s=ArLW#NhO]b(/QjQăU";;Wn^B3U>#0cvy8Bb+[u_SX*3+U.-?&[59$qL0ke#YwtQDZp0)6qJR%/.CPH+&5ăU"_'mci;vq,+4Y[,.Yn1,I.Y)YEr*PRWaaEWsu8n:Js>G<xM0-O-;i#i?79+re[O%ăU"wQp3M,:9.j1MiVB5q^=siTl4GjBgxC%*Xcq5DJ.+K$:jB=FzcuOu-vt-meB<:K,ăU"9;*wcA3(h^/(p5f9An:Pi61=x]>;21A'<abY3_sa,gW?d6R-q>F<-q4E/Q5As?jăU"3]KZ1Z0G3,$dxct6%9jTs.8<MNg9]V..3)-I9K-OjXxh'x]Z9rgKWXh:=X%.#C6ăU"&Xdn/>_<E?)9QNo7]v0ghZ<r*TQCBr'B3dFPbUG02$ou$=V:_FPBRmo%RGLO;H-ăU"J[+wQ#&J9Y-TZ,RA*\lBOQUsl&l,W9i/A:PG7_9'OA:=**R(p5]lQpGr+<:]LZ:ăU"Q(;lOjRB05i+>fJDA8J;<e=y6NrV;.mC?xJCpijueC9uMKrrrRX'(/ZgVAb)DEMăU"HRC8EHVL<QcLItIk5FeV4MK%uXpX$7&,3$#6kppUxFwtT?lCUNw=.5mH2)IEr)#ăU"%[>8K)j3>Zu)],pTRoI]x2W.<;Jh-Ol3L]4osG)pGbh$/6DFIqGc%o[ygZ*fh1$ăU"TxW%\?N4(dbf.92:HlOsFjXn,#a']N:h#:Y6SD=5-JCyEfC45m5g;k:dud0s6oaăU"5q^V*eJ1Hsj9^V%d[c.M\?M6WBl9q7+(.^DMMki<P2AQB:$ts>AR=#;2uQ]qt41ăU"-tqT8iS18a+tJiUDM8Zb&7Twuo3rcB\QgkfQwgjPbBqU]g4B_<6zBLS_h$_-Pv4ăU"b5ZAMj?5,.*J.UIE*,.tq1I8*?a=;d9]-qx9D38&&--8&SBLT^'6D,>ImjGJ%'>ăU"ZnD1.c[q&Bg6v=HRdINomY2)4SAJ+U-5v^uS19^ZHgY2L]m5ZF)afrS0o:FU(upăU"]XI;,mT?o)61K/vIEm4,X,lcNdWJad%i^[zuwPe)#7-NT*rraVK[5d(WG-p#HjCăU"#N=cp?ubBZlp:ilr71S(CYnTy-.sftjHM*&WUb6CnP3Hb];2TbL+Wb-mVjJAMZBăU"iQKT5MZCBmN$0T,\00aM\a/,t8R]]\A'OFBoe17Q3gg&GAK_T+LQ2TeO:ZQht9iăU"b0Z2VFlsc_UKvapAqY1D=-OD2YPIE0-9/a$.:boJ)[e35_#$y2pnaM(>F1jO'ZUăU"U%QTB^0klKc$ApAkQLp>EX$^?Dpa9X?NZLMZp6eo;<X1e&1>NM\2.Ev^iuO%>l9ăU"A,lhZ\^alqq>de3+YYVn4#idh%bLt/,Kfu\'Yt+Q^Wl/Q].KA<l.eU*IKOcw4zhăU")xQnK6G5/J]aI0vyhi#iB5sP,.Un*bC9kC+Y,0eKEDGbSHDLQ_nu31/g^UPnMv<ăU"Z\+*o10h\>haSb#$<6e\+_O#JD8uLGN#ee\8N/=V4\c)UMkiagGB.-hG+Y7%Z3jăU"ZGCYg,2e0bFlNsa;GxD682&Q>jYWTVqICqc#E^xjzO)BB4,InjFkG)[N;;#KqG&ăU"S1)Q0r%/[&jAC[G0yVtm%/cQ/1W&H=Bst1YgE.&ygQ6>/&kgl36'U/ZGYv,QWmfăU"<VGp\t6f3ne?Ue1sdWg#-62Hy_fzV?)LL<M\S^CtgJEl9;MPIkQ^e.i+%1#*ljUăU"*w8M\o;Y.5aF=:.8[,bsi:#,$Xn53+F]dlWrINJ]IY'L9q5f\]&&,C[vMRaxLOFăU"&lLw2n;:F69AjUFC]tWO_?m3ABiD$a=VNDFOi7y+\8nw830;Hqi7s:OVUvy*w3WăU":0R7Ar,Lb%#G,'A?:bsBy23d+t-_bd^mUR.T;x>*/AO68<KRYx2_GLEMo+]e.;yăU"%'kGOF7(SZv::66%SrpK*2n^3D,x':3b0R&rex[Q,QjU4cCM^97WHN>EQmY?[U<ăU"u>/4?$G=;T;PQm1$])fsF;PuP7+;aw_PU+M*LqS2GwXxohz2d&g,\<<CabvZmx:ăU"HcPARz(ts_^idt/][<o8P#rLDL)HK'\Y;Swil71yC(9?NGDORG%\Q(t5\WH1+9tăU"K6x%r?vd'%pv-_\F:k)iUOdcFurZgkyH1-&_K8qQ4V]b;cvvsu#B#LRp.a([Qb.ăU"b.#m>E.FKJrF,P71ZkPmbhaB8B7>M/Pa0mnBu7/m2A%yKJLrVdw8]8ey])PJ8q:ăU"8Wf^3d]L.wB#w>WdA9PoO0]L)CSlSZg;V+?Z)R&;Bd8X0JA-pgYFdN77dWI/?=kăU"iwWQsXtAb^jSa+=HBoNttD<xYi$nMng<b/sMYlwUoVnYFW;j,B<'qFYhCr]fH?DăU">EHK'lla>H-LT3NM1s8fb[4:'(rq8G\d;k^V=<0$#nO[k9U*7THY[fg^x)VYK,aăU"+0E[(HTm;)2U[]lm$Q>Dxd.GGS,Wd;MgR;JvuN:FnP3'[]4*xt3<8AEe:bW=V:făU"kPSHDnT0ZjVX(<HVal$KR_=5]<_+&P36O%r)qu1Lca*-Kfd:jII+j(/XJKP3mI)ăU"P$8I^d3mb/cIXm\skV[er[Vf9qMUW9i])cX9y^)xHdq1MMAXow#ChrlL'T7gQa/ăU"P4]x=?I/Yr-(n6R;F1//p]m%c'h01FfEKgf9deuzd,AT\lHw(V+gSDu0;n1BV^/ăU"2+;T#qbS''Y%K#[4e=B]T$k'/w#Elt8vfDawq8KULDIj9Ioj;$\]]e>sj)H*&WhăU"g&;kG<x7:^a-'ts1Ni^*6S#p9'6p8kT19?pOh1[pEV[t3FfDyGK6KZ:%M]10Yr#ăU"qH1kCO<VDu3GWTX'AQ'KJ<MK&=a6jTpT,:*#NXDR[<V_jsP+mqUEAW70J$t=%PYăU"S9Va\,^:=EnL1SLp>ZGI_e%+c0UfjSX3W'i2?c&c/#$h+;y8=aB7_Z6Rgk6u4tLăU"G\K9MR%hx&Jqax'?MCanTO0]<#[yiyq*gZMdOGHLQhpZ7rb^:*h#eHd&:.nAtK&ăU"n/&;XJGbh?.Qs6?:tR'<[zLJ$1SAxn$%6u:qwiT,/:%T<NlruhIvjDYM+ou2=\TăU"c4tBF?:b.WGQ>6,J.*\>s[l&13?%%nwKcEpui(4<QQ&MbZ?eRID%LK]u-kJ$K1AăU"X2I0s>_VUV<#AMy#PKQTaZD(F7DfUnOu>P/J$kzj5bW9N[c(wOu%/;T1^5T2H&dăU"Ze*%cjCkmfh'1CRsdmnJZkSKAgtwe)e$.$FYw-**5UT90u_UewRL[?>W$EAe'c(ăU"f'2A16#usg$\#5#0.2D?.;*==/M(.d<oU;'jQO7ZUZBbEHFMlBgup;.?u*)-Uj7ăU"5[4'TCXo,]V7Vpb^%d^0$qHW0t#T>$l1K<$7GFP)jCftr*%H55r2[iY+0s,J=22ăU"RH]w5Z<*Sq6MeF)3rox&e*G3[eVqpu/nqj^M_;ccqY*[RHqQT6%vlaU6.;/$%YVăU"[g0aUj+0:.7I:2ZCX?%u8fqz\jJxFl12YuuFjw3UHkZi0JSdlT;cd<3k?x.AkiWăU"q(.>mR;6TE4i\stL9Vc&hru_By(nM<KZ/NtBZ,7PD1Xi&h>6ardAn;HdQ_0?OZ9ăU"4LoF(Pj+7)\C_;I%p7y]H(s/'VN9r)T79UTXX8[Wi6/#G47bZxW=qor;l4\9C<văU"$xLIuOc\ZWN]8/H85F5BbkXXeA75IX*Wp9U%x.R3gmtRYsT:F(_Z&,gQ8=vjJ<1ăU"MDYvq/gq^C5;l#<76.e_l;aO\vsn3h\(E+.wWuNtwM<mAs[GhephFd6lII6_h06ăU"+dWMSOI^tt+Gblzy63X$5E_6*FUg=;5p)=U_PI;%4KVa:4\uj,'_jX3kMtw%xWhăU"yVC<mLIe/.2Nfj9(u8ocyMrr^gfo4+^WCnL].n\N9IPb,4+SX/\0*TNxt5DBvu?ăU"47%Mb9D>Q2rImN8kq#SF>Z#J3BcL4?<S?0U[_UNBub1V;Yuj#Hmyg4*Q#-9<>0VăU"6(5k(PPMGM7s>.7.+;ypqaqfw&HBMhrI\$Q.^.yY]^Ax0WR$rUJ)ge63ePCw*DpăU"b+5wMrN:Z]CsZ8__47E8:&h$#E3fF0q&G6m5X5jh&yUR15K7$(NH?ljOh<LnEdAăU"XDT#RMRtk#t^R$pSUXs''Er*]+ESMr:%xpLLK(WjCCubC:o47Z.%r^Y/\+$g$KiăU"v;k1pL8y(])*ohm^C1Xw-\]QqHuLLuH7jZoSADl.1paiYaMs>/vO7l$0sALWIJXăU"o4B<Z-a%=spQC0t5prdN4Btj&l>J-g5=(5]q)=>Ik)m=x>RnTwG)mLf'7$Uo1^2ăU"KhJ8om^_WVD%t.s[eAbAf>SPonP>Fg(Nr+os0+>vdu%p()9%%%%-g%Pi(pQPX-&ăU"Fs)%+%V3%%%0%%#%yj'%yufi%SnshML%<>][]5wk]=N)ZIb'db'M9S?V'M4(IS;ăU"BLT<a-\FJI]#+<QkI=JucZvn$fJsJ0+;&yAX'HXXC*T24kI8YogrjdDX#vdi^^hăU"mJF>U;vJI:JyM:#cZ<B;A2]0NtR3JHO[nT;nr8]E8qLd.nFS)'M9o3CWPJ#Y7I8ăU"cd9:ALUv3.=HG/IB&fFMGz4x_%isB3IDWi%sH.JIGN(j>#H\HGB\%CmTKJP?^wAăU"b7sbMMW?'gh&f$'im&1e=^f+u4JT:TdBka='m1>RuZV+ws&::yEzTQ]$;/(J])SăU"5Y'1DAiI2=Y&^A2Y[=-9(rHItp,gOhQHkj<%-hx$IG-0:Iu1_9:[cT8fS$#J7RAăU"adRkxu8.Tp%iPz,q+CDNr,FB0&f\8k><dI/YZ&OD?Th.T%E$Ya(h:aY5Gmx0+3(ăU"^tvCdY)3YHLNgl_;;63H>2DCNCY\'u$dU*AUAsE)Kr.]>.Oq,9>-rfl8ZSdMxkaăU")QTvU,iWF^_i\4uO;.mup6\?w5oN;mk$h\t;P^;LS&BJTW#75x6;ckg01_h[*5năU"h;DL1FRi0R07gbOMM^.S1cmih1cm/5'P.8WwRF&Z&\?Ps%,1IvNm$Nw;XRK/PK-ăU"xd\_$tfASqp)Ml=O#m3i)k4,2O[9lOl],kDq/b#m?8/q-aflKBNoEXJ8Me),j/'ăU"K&,[<U/8plq^XPQ'rNq3<CGq.kFj6vOLj(bGXhLu;(HfK,Meu7)Yt/RWnMdqaFVăU"I<lTxPkv/RuM;:$rRe5I::R.&F>[p2rYBhZ5PsOiaP0;iy>h-0AVuONec6ZN\4[ăU"ka%4E6S$<6K3xad+r_u2Jo%dvZCp(O-]Ktq4uYV05Fko$=wDt^44ieS+D$S:X.WăU"_BMLjzZW3JRH+n/Re5IrdyuXaG.=rTvokz(M4l/pdOo5)e[gPZ'(to3YfHKdTtlăU"c2/PGMxo:e-6Ejg4Z'.p]j_?nqVF>)uASQLWBV)54n,Y2pH[oQ&#..JXbs<j#bzăU"Qn-9#//TyR,sjHvxpqmjHrrmCS6flHgne9H6OZHel1bMRYqft_29Iq-k'YJSIdjăU"#W5ctRQm?6R1a]OQ9R[S;Fvqr>Zj2;I616d$C^rTv_2eA)^KV+w?+YT,NZ:q9#iăU"j:oE2-IFUdABuYb9._(7nU1(m<4/ia%0+jo7oZ9'h&x;tbiW<H**2YGiBe0j$j_ăU"U/N\]qmL?mv;-Nr\#<xKtK8Bgu:8XZB.MY43mho'vUskt.mBtKp?oY$-#5xaC_uăU">=5GujUGJXRstM4]5_(^G+?;3>Tqe)S=nup9WIt[1&8'Rch9SQdKR\ciV5'3'==ăU"A7,GuUs)Xhn\+<GUp=Qdo,I74;-c;UA%lj&>RjR4IMO[qgNPIO[Dqi\IMO[qkVLăU"&vP2[qm(Rbe?DS(T.9'x(up%()9%%%%-%%<fFGMwZ.j&L%%%'o%%%%1%%%%jinyăU".htMV%SgrutBkv?.%&4e9%&='suEA9.';>%3[BK171lq='Ie(i*+p&gJPE_#-Y9ăU"&E727r4mk1xx%hM5)I.&XA7qu['%)E?MBx*iN;//qw?999''[<%VGgx&X?Hh['ZăU"Zt4Ruqxx4ec<KYM6###mT,kr3RPU9Fef'i3<];>%%up(%)9%%[%-%\%cFGbC,lEăU":[%%%o%%%%1%%%%j%inyh(zMVS#gruB?kv?%^&4e%+&='u?EA9'^;>%[)BK11alăU"q=I[e(i+Ap&gPgE_#Y'9&E2+7r4k=1xxh%M5).1&XA])?PuJc^gJg=5S6)JXSFPăU"?K^gS<g/S&(gd<eL2//VcIe53)Ol&OM,OdU%%%up%()9%%%%-%&EBLG^[E4u&\%ăU"%%'o%%%%1%%%%jiny.ufMV%SgrutBkv?.%&4e9%&='suEA9.';>%3[BK171lq='ăU"Ie(i*+p&gJPE_#-Y9&E727r4mk1xx%hM5)I.&XAC)?&P#'++N,oq<3I00NooKTEăU"F]F-c8eZ0Shoh3[x-xhw30](D^8c(ren/uG5L&wZrepAWCfD^Ou25=U29F2^e)BăU"FXU')(*0'9I1%%%up(%)9%%#%-%I+h(QWMmQ?s%%%%_%-%%-%%%%j&'nyS[gruFăU"Adf7R[E1jbIq<,F$N]<im)S3e?70b&JAY=UF6?qc]-7iZHHx#S]#IO5jd(jj[?UăU"b_,XbU<Zli\&YKw6V?E+^y5d^kfeZ*4+^%S;.o:/_196Qhn-$+qI:ZZs/e$?/JUăU"a$.il,:1tN((sRt(la;Y0R+qqSMJD4;FfZT?wMw$fLzOrx>.97di=?7Q7u;mP[păU"u_Y48H$aaQV&,$'u%p()9%%%%-j%Do(gQ?KN%zG'%%%d*%%%0%%.%j'j%hzyj%SăU"gfxAdxv>BSe1MFl[d'%vJoZ4uT\b+qShm%W:Nr9Pe.nfLC]=39xf$VCFb/W8M7SăU"6I)ux\Fm-TYnfHn-FRQ.*[VU'sTn8Gc;tVRt-8Ph\Tv5tS8)lV%N)#KKP=A\JhzăU"ir%^2l$fEoZweEPG?:Q&kYqmqZ8WjZKTIPAs$W8W9huYHZ79o(UED.>QKPUpffZăU"Gw?Bo4Fl</sWvoW$w$E1T_kp^8AKM'Sj3*VX-E\N&:AP3GgyB'1\=eT9I]y&+w_ăU"XN9oh544;4RZNGNQTrkviA4o?9H+IJ%3G*5CcBoS?p<-^iZlU.'le07GP&o':+-ăU"#lR#.*Lq\$$iJKGq7GLK)8DM5YTI^g'6KH92fS?$f9oM8G1q7iX%oQWBOC\F)$oăU"I)R0lWK2;q?-.(/d\_.PB+lnGOu-t<ombcK0oRYvbyp<F*'JFen[P#kWs9k.--(ăU"LBf-.Z3us>/'[&&4p[VcSDPTh3LJk9>.n8bN&rChaprStV$_dN)nrS_\5TbX,'AăU"k=Xh*\=-HiiMGgitv&f]h*T0KAwbH]o.?^$4qS2cO_]\+V[]8iHU=0H[bhAZ%h/ăU"i0)'z(nSiBJUywe$<DD8\IE^=q+]g%4MoQhF7uoD*P;.):J%%x.t?BeZL).Jcn]ăU">L17O*awCo9,&#Dlp=/PbBZaT_^VpzrY8^TuFxI[yB-7Ruf?0N,IE'm,up%()9%ăU"%%%-%7_h(Q3tJ;u&;&%%%K5%%%.%%%%fgtz%ySgrjuFf6(sUU9MU^&o;#1Nf]6'ăU"8O8>Ij+]1*lV&'>>B,,6)kP>:$*h/DB%,>G#ski;vAKPons#nxonWw?SA>G1259ăU"^Cb39b;b?'bq/RBxa<HN73i?:8.CUa1hoXup(CDa_W95?>PJ3C#Cpgd<:'8AyO^ăU"\IP*L/GR\]5BajZX0Ffp_-)\N0IJ>4(0G<IlWhKk(f&MY8B/4Uzk5ZWiS0X\z4<ăU"6[-9RiLYT<)\zld3-j%<_DT\5hs\G'06p&[QO'#T[MXpf,POVuL3\E;KK-8X)O\ăU"P72<*qJcGd#,yUbXn#4f%<;$5md9T*eR]Y7A0cNW8.P*>uA:D;S'wE?A?E+z*bMăU"(0WmwqTXAD[hi7Uk62[CND<9A)Ll#'<*-5:j*)H-ZxD^FT>sUH/6TE\ZWk-U-_$ăU"WN=h)--Yc<8P,Ljn869n.%XDYm1&3lg.BLLj1tfDFA<^cE6duUf>oM%(up(%)9%ăU"%#%-%uG*/Qs^M1<l%.%%g%B%%0%%%%f%iigt%tpSgRfx6(_.B#2U2Np[]8(l6&hăU"Ix\*.4Lsp$BL*53R%Q)(YI$Lr-=oh,GfJ:Sx\DsPK$g[,M&'qsD[SaC0b6dQ-QYăU"&^%-gT]TVztEhs-IH?rbt0pmLlTI=eZgegk>Et[q[;Ms?B[862n65CI<J8ps[kBăU"V7V=XGF3bM:<pWhV$Vnsbi?64Lb\2jfO=_t36is))H<WuY?t>=([I1/Z1tAJ2S]ăU"V6QrAEUlD_.?tUbefU8B<\#x'Hk_9)\-uPCz5#j2]EpRlggC'Isjg*U5UowSBWbăU"WpX<C15o:wtTkg-03gs%&d-r7I8)f,[D1>pj=9FQR/RFM:CxJOprI(et.Qxf,ZgăU"JwMh3+oE\A<]h*Ok[O2VuqH\SCq*^]/562b%v<C$NeAm*Jw6u*fcZFRbb7)=(8băU"(4k4,b*G?HH4vR>X(bYL)3avG)anvZ\nezR<$(93TO8O$4B8J)C>^Zo'eAqU+#năU"a2cri.Ak<beHi<JCuFlYbIX'hQPH<83\E7bOH\--AM4v'$D-e8Y-0WjSi^c;vf8ăU"dXHXY9lYP$iK^-]pt=hVzkxDkw&R[kHa]wA_5bMa'nUP=/xmal=#NtIH5NG1'#văU")'ra8D<gNqdj(gsK<>;S^9fs=P*CkZr*qlyY=C9sXcQ\,;kpr/)g[^m=QM%0yHkăU"_00dBa3<W##j/ng3ae)Ie*4D:7N4979cvO2NZoL[NU)W:;dAVy*sJhCEJIJ>2)RăU"MNY&k^Vn*goqjY3O3DVrW-5Yi5aY;?81j\o:P;eZ(sY;?7,i2'McbXo*u]Of(#găU"RHPl-H'Y.ZDx+I2cMlbmcAMPA/st=ev/qlpjBf\9bI%$+$(>f]1%9>X:9^oWya=ăU"F;Eeb()qCVd%=;dhF>.Iva(gA&#mN,g[90_'OFuM6p.ugII]S83aaGACo>WS=/2ăU"uA>vmt=JFLzJx)mvnz<m2o%5Mn2.qAcAhRhFLtJ8zL6L_;K,cg4T)zCsr._]WhqăU"Bs7LTb+5?5W7ya/&KTWODptH.S#QZPP:MH%r/v>u+B:BWf?XPT1OA;=BBP,tolYăU"C;fzrk^X4khR4WxCjj>Xk7\Q\Z9a)GBQUs0E?g?R8kaP=3EY/IZoD9/8u.s5td+ăU"D[F3Q.DNvr+vXM3/)rw'ttSBi?5/].a2p5huGP]7E_GVH2imWQx7'o#>a7=Bx>căU";3z_j=H6-FsM$tXr-+a<te31_Q\l,iAIJ?Q50=Xn&z2ir;SKUu(f=xW:mV=*G:JăU"B;uQ,,<h]TQs4G)'oSnLaJhe47CGtw<CqsW,si;BE8R-'7#RUxn(k6[s1qUptK>ăU"R'1PtD*6YoQK$M)phQcu?80gEVa6#=M(3>NKP'Jd:_qcF2LAhviT)+%\POPb7[căU"A+F8YZvPCL&+zp<lk'Y0-I)&:ah8e,*;[os//N6<>#L-1W%3:SA&m#y*^Z1G$geăU"\,IUgkP*NdoD9=wB>FKqd\'r*oY;iR%B3-u$\1l#RK:JgmDCN'jkKU?hOd7HktJăU"8FbwE,l(<)RES0q[..GS)z/;]dw#/^k*,#PWPSI:*F+MKirtS:_Q9N&e_VeCNGbăU"ZuI0;^*%iOl#V/=wD0C52ECBG=OT$;7>%0;Il(Z;-Hx^us6(3F_(Kaxy1J?Y]fvăU"KvS=$+BNNfqwLsrw1QOs[R2Ur_a3QD2r>aF?uUZ&28Je?_g845$-O(I,BH*b^^văEND SUBăSUB V2ăU"HOb=7(BfpbJ6tZo0oqMH(%6wzXn^EO7o-a^aqRX$Iu>BjZ[HJcAoM8m]$V?G.2GăU"\GVsP'KAHCE0..jsP:u$qpCp)0mlTDw\['I#\:gzM#a3m0(RWUDwN0j/Th$^$qKăU"N/<sj2##qQuGn\0%ZO9)v,,*+fw-J$)xn$plgl)5^SsqG+;/5>H.NTRvRrcAaksăU"PW:,c/oIb:RtKT]=d#Z-sCj',DRRr/+gziI9avQ(#tj%J<#NM[>&^sNcLLJA))tăU"beR9P3cngqAVCa_]BT8bSpzs'crh8's.\.>DU.>u]]b-7CeHc7qqT='gc&RBfoRăU"8NW).d=C'9pg%=KD%4k$TC$GMGP%_,BeV[V2qw]FW4%a\nC:%Qh_kJOf#IlF[K_ăU"PYB<92;SBQ\9imD$c($WlXSSf%gE/6qZ2L<C7,Db:*l^hmdSPJI]&qH;o7>hnO4ăU"EiKurHpY(uDJMi9Knv:2pY$P#>Q&h*$pWhu,wCc*]-%jNGo3.:30/cC0UfRu$([ăU"[AYy409gfI))j_Dk]fpcUF>QUf;TkHhId>8w#PEh<bkH=kUL?5wA$S\TUe2]<6măU"H764+i$4.w^#Nkl,k(6(i]Pu&AhrLi=t=HaWEKLn=arAW#Z14Ef2M2Dc%G$1(OFăU"[2RK3%iCZ1TEiG$frcd[o=e-q[=:kY)2+K^F;>kz^i2emUUe52JxWg:<GT\G$qJăU";#7<yokYak0%BT%0kB+_?2JT8^Rh9R[$\K9[?(kYCM=S\?c?g_*4qOp]21;C-z,ăU"TL'xQ]wTC\z==M/)kVtpeAJE9cLir,=ub&N.yQKka<)V+il.WiJ04m:2BC93K76ăU"bYTQddP[7jG(XrWWAy42ya&O8q%$MMeu',C:'PXx:07z(g.K<lwDiy_xrQf:'_xăU"uhwHSq=;t3vdNR9\i>LeH?m4N#61Wvp\I=uZCHFLc#X=SQ%O-uIMVnUA11ErQJ%ăU"az#_0mm5(#_7uz2%ejZjPQJ>QuuPnJ0jzexngSijU_$w<XCNw<;MdlinvTvDTWaăU"u>Bx#dMffi7XuNI?4MifQL9RDI?cQ\L:l7(P^D:i<1sbU(*q-Sn<)r'lW6B0&\VăU"r=tQ#Ud0(Nv]0*]]\D1j)6V0O+&EX#[Qey]CW8\):#]s/[SY;m=#3%]6fh4Vx5HăU"mtUmEa\aDngLb%;4fs_d0=7LnXE#r[8YH$-Y1;8,tgKRzV$x?0xe_0:dD^U_yPjăU"'E&4v4aB1MMs.lUSRF/b-jtLFs&p&nF[4S:\e^sh%*045d>rpd1%Lo4$(3KC+FXăU",tokm1JlSg<'OZv'+6^?IIfypiW]B6^-MGPugguq8wJa*S88%>P:ws7lR5)*,'8ăU"XC2nkFs>J$(#b21hJKGf47?xJQ8,tt1kCnd*A9s*&=J['#t?pob.sQ+/CQa0lcSăU"Crm2b0oE9Y)9J^WP)6[tXF(Lp#Fcf>n^[PO?J*9RPh(:T=L4X9.&h*KL;*/M^lpăU"vW3O'LsVs^nk0l\qYB5;LLpj?^n>s0]A0I\&tN*BpU>jtUZ&mJebK0JXmlWE,GmăU"kcyZ#%tge,\zw%\up(%)9%%%%-%A,$*QrT<Hr<[3%%N%e%%0%%%%y(j'yu%fiSgăU"Rfxf*;J>T]=7x8e'8(F9,<KMk0eIL=nf$Q+uVqcQk-D8SK>'P1H*/5(RYI38s;văU"i#4F>fIZ$ZD,-)9+j+HF1l%Xd3DpX3W5,Lt;r9jt3/4g]t]Ao]i&*0w8ITBRsF=ăU"U4GmqQgID:<+MLidCUJ)[S=*CnWwk*&2?JhBSN[ERi+&RV[=*dNkzn7zAFuCmefăU"cc1e\3\()9V8aZ3.17Y=G'3e6:$&-r8Y\4W86Pt[k=hoSD;IRlsd<^bOu1Xr&H?ăU"WBb,KJDCd[=z=:%n?f2'Za>SrXG77jH_oBX#2$:X:wV^.%vqoTD2U.DoMk31K^IăU"B-[1e^=lE#)2-l]djhK\]]Qds:8'n+L-Jb=,:Sjb\aSvD=l8nk5b,fT=5t2h)\1ăU"pz:,Q_*c;K8ZL)1%pLDw-z^$74rW\ePLZ.LQ4cH6M?eo_>/dsXa+>%,mYFm;VX%ăU"7O]<#vm<[cjZExf;N]_a0CMh1I4cq8?KE514f-AcF'*,W.u=n/tI]>T4<=h'uGsăU"MFs>XNI<MGSi=<iMR^7rZL;Qn#P_+uoD[spjBNc#RTnV0srd.+po3R*RatrX9fXăU"fHvK6rma^:rCRpiXFJ/Pr&5R:>wQ$UkkU3sQ0^0N6rM[h&oij2c_RYIB5Db;Zv;ăU":&5kh2K2Q24dV0L^,B81_\v'0o*J1#TH)g7\T89_;gqhN;(qhv/[\q0ik^Vp<ixăU"YbTU7W^9H)(DHu9>qg0[5dec$y)Pu]=sYpb\$CcIOsF0QaK/e]KK,w#Na:90W-.ăU"T<NaH7#tTuhjO,$iBr<):YWAT\>e7IMQscIET]%\&Im<S\],5n^lrVUxpu=^pc#ăU"H6/Q$zYS,&OpKzT#XHvwxn_SYnM?sn:'^#,>]eO9)\7k7CFAG%=U^\ES.#Paj$)ăU"VY998DS4Rt*fVh<pL'+zha.U..m1cQ1v-NG?Y5JZEh2n]S)g_lofBu\\r\UxPw#ăU"FpI4nt:vdYd=x;H7A#::f;4P0DgTA;^'GH5dzNW^SliG-fRO?TAOsZgAj5x*dXAăU"s,bTCLIMFaq;qT6JpAw/b\\,To;f#,5vZbk0<O81rIS0KrNVT5dY]%NDnqzcEL,ăU"/2VS*2s%<7b/VLspYcT_5?l#3HS=d9rf'VhVFP\lNV(>:NbQG_GnQ&hw>j:1BLKăU"KGG4dr,V>S-0W,<30dIiR93FL08wsYnj\RO$:bT(r]>TjpImQ?]NT#/i+Ml/H4FăU"BpZmM7Pp9h16?KM4u7P_I8?8dVsY;,2F5OJ(E_m'PDSASSYBqcK?0Q$i(>;P6PvăU"&a>?ng?-s:?CK1&D(n+CPl*^?P7Nj_C6MBf<CEnagr7TZI]m?kjF##rmdf$=VlRăU"Vi)SpSzI-s,BA]oArcuQDske?URu'9IFm_&>(O)p\1Q0[7mdQjoIH9%Ai<9gHTSăU".1j\P8F:WLCsNim5s.C[g?Uu%*nNIeP5NLiB/>A-d3u5c+-':LVcAPBc'76kdm]ăU"1J-MN'hIP/co^'N^a7GObWndW%_59+C<d%_=_I*cL[aXY0pWxt^&ZCTBP'/#Y7HăU"RD*F[M?A>=B5Vj\(l[ZY3'dO$tqIg3bZn%nE]?I2Fo\I[Lr-Np:3Nf)Zggin]S_ăU"jM/#gbX^H$?-;)t'jWh5I3SCg:0G1'^J&]\L/z,=d)YT6*4t9-Ok$#Min%n,soYăU"uG(R19p:PJ0'+=q?'Grk%[>aG(gUL(ViXo6P[q/gCr\UwHDQ_%a)q^z^R&tBHeMăU"$YjQ_>S-5Op>Q(QKuT:>UN[wceXRv,Q]Yr$wu2x'D<ctL8)#;A^VnD;i)9=h2auăU"nNim>gOooddGE5WQ,bLzupf64EIj<oCH2TGeX?'ZUbz7P<BkwQ8P5MaK#%[Z.TpăU"?5y<JoqK696U=&MI3RB6eU1c%B*-V1GN/<m89C6&oQI2vU+e#HO-)$<H7[^Y]74ăU"S::N8e9&:qp-iJ6:Y\'V(N[<jhDi)9$a-nLVI-77Nl\RxnuBE'0$N(LFF[av5hDăU"7rJQuWai<Acm4oCJIZ>/k-:vH(o0rv(^A;#S03X/0E#\8G'<-[OTFJm<32]7^\GăU",9uKa:QOAD+W5&5C,z_BCzuZ/?dC*>1'irL5^+4RB=:Co0.2/;;/-9A6>'UJ-1săU"s43LkGUbi%bZ*QE)]S=>^SC>)U&s+m8ENQ0H;B/FJHwdVvg^izIlBF#.1G]AuGkăU"J=PCDYtrYt*mr^KfY_4[oI.RWkuZ.t3q)=4PDPY;>Q:[EHfH&kKO0g#2qAIXkJaăU"iZceO7tf_6A/QHU9)Vs:*Jg&=]bwU%0&Hv]F[8:U%6,95e?pu35)8g]L8:=RVFvăU"Bx0?q89d\]z1g/pmQ=kjcnG0j%a;rGC_'IHK8mTT*SDzGsCt/*Fr2TSDKO<Uk<QăU"FUD=a5(AQAR(M9o::uCLoR;+h)?BN2/Qt>#-ss&IfR\BMT97G7;iB>=sO.gpsvaăU"O5K:fab&GJ+g$,r<;,P%0RD+v><k'4J'd9jngihKmt69f]%\o;]f>T.mnJOZ%(:ăU"ANYFbf3$[VxgkJThd8kP6OD'F>.(u7us$&<XXU&DX>vdaXC$\(rAUA-)dGj6YqnăU"ttg_2L[:LUf,Qg\msaXZU$#]XX_j89W.i\qaJ6-KmIo_ecjc#G<I7;C,U=j,c4eăU"$D:97sh2wC;/7Nu8,QH[X$]Yj>fN>'sV-ko,Te/4vJtCIfih;\2)]NJ7*Jju_yJăU"zCAnau_=d2Nh8Q]cjKqI+bR3g<h8Ok.(^Yc*Ld\2-CqEgKBmG$d&5I5>.-9pxkkăU"GNbMlqq-NIn?JGT?KvnFNrj.8SXR8h80Gz_&PVv1kMxF9AYwYI.<vpJGpo548=5ăU"xF=bLG5ms-]R(>.&:ecD8*cJ*cP?d52B43u9f.f76K/5*?TI*NV(75S6cQVP<>jăU"l?*y8.zA<#iIH_B75PoG6l*A1U>=SxdYXGYSF0GPrAcUZ0S8)TOrJ*Z1\>A+_QtăU"0j/D,VWLAP4SVrM^r=x6vJc;JU0^A]z6t0tp8rdg;>(1u:j(LD][(qhz=E%Q.A=ăU"kO+wUa'jz.D;JL9S*_5V;WY8Kib-6>ZKPyA$%Z\CZ0rvd)3UTWu/1X)Y\y6W99>ăU"wAF[XA,K,BLW<G7r_xL=co\IE$0]BtkjyS,M+b4aD&EkS_tOr0]>?j]tJFZ]H5^ăU"B)f$>qwC?xf_WdlTKJiS8dO)hUP/3hKbF/KwfrGH]A>o7k4G$YqQM?_>^xQMhClăU"=/4fhg4NP\5gXCb9f3?-tUa1NI^B[:=07&Phg>fn<xYtBsIh?;$q[n^JM&kQ=SqăU"s2rfK?0l'8W7*L,MIT]:mi:OQdF]gtL(eC%-9Y=lT-;LFHf=r]ezG?8W=8H-_*iăU"xl:o9VQxS*#Y6sM]]pR(8TD<#]^UW#-vWn3#gx]Pxhz6VLM9)88.JwSn8M%STgvăU"XUvu(7t.88vZaD=x3g[K:oU/L_ivWY7L;widaNggNA5ylaHKCP2o&UEaV<[Zs*_ăU"J+R,T^*BN?8[)3AZy_a]'y.DHFQpOO>w,+Q\szNhsz%9+/8iT\a+Y>YE,PuL44văU"IXz%y?6XDw^Z^$3IVVGo<(y65f&w&m.=bshp0IhBA/osZ=D.79L0_1vo+Nf2NDDăU".jtwSDJV&%0,A6<9>Xw7BJHb.zk>5HrKfd8uio/(xBO.J/&f]5ibO<T%3F+9hq^ăU"Y-[BsO*k6Th)LDDiK.1-Qs3k0<t1LqX_$NY1_oIOklr6Q8xJFuMTj5n,J)1=m;JăU"rZ;p=TU2Z?]ZBn[/j3QIWc^]x4adetJsC5mGU,RJ'a_C)LlrNSxMt[x_m#RFK6oăU";$WRF>_;V'F24WrPcjNvLsd.j>Y7HMwYPTTeDO'3MHM^F?Zi#,sXgDphmQP6)WvăU"90Z.Oub(v\,naeyXzeI$l$hujsJUf3.^gNHcxXFxaEI0^0\gL-$Cx$4'k=Cep^lăU"5Sp^;egZj+mzVA12xG1ELV/3cWWb)(v*uNOXZ[)KIkSl(AF[WhCC/SCsa3tD(/^ăU"W($J-'U$itJnVP[sRdgmN-*/S_7*.*oVtoW?d$SIM.HQZ9,]#%?RH?EvO0VQ5S*ăU"zF:L&nd+N7g14h,$r$-Dh+?4<uQ.dqk^1s[rpNw4;glBz&-MBc+>P&xG9er>Oe0ăU"Q3>7A=#(>kErZJ\fF7NT)e<Cvik&Y:CnY]R:i=oE1fk+R1^N:<+Fd#\Arz:c(AXăU"8=Ok1NxCC#uOnvO\vSWT'g^MFP?N#lnSZ$:1JrYm*IB9qFvfZt+IZj6*j7X?1;VăU"&kZr,'ZCPC1u5L\AO*;%WdRX7\+;,^'2>y1YH<gg^IqDpx9:EydqI,W]AXhh-w;ăU"0g]*TB1#f-3uHj_c0g;Y3^Py<Wh-OKl?eL<5fkcc%/snOUPNGP/KsM;Zw'V+nv_ăU"]BTI2#HC#*GD$8,\[%[srQ]YF;46rTh&#BoX3mlzk8PHhUoRy\e)pg[;\Je\[a2ăU"MO.Lq4&cQoSTBiJVupk_?ZJ0N>KOksjF^fiGT803TTTfhgzGpPy,Di++-gq_V;qăU"Gv1A)J,r%1VlOS1cpG/^0<qDNU4Ws>>HN.k)RzThl_Xb7Wdb,+=lNfdZtfhRYR;ăU":P+)qF,R,oOwB$>y,6\]NXLHH58EBW>z*+h\M_&mo0m.yE_Hg_V*>W0[ZU2]Nu5ăU"bEyy'J]/Z9w-4o,R:;HPB<fYk(buH6Rp1\>n7Wv7JMwzu2WTDR.[hb#-LYvrfrpăU"#Pe%kt[2vfSgl\2\,rx&u%p()9%%%%-^%ig(1Q]G.('p%%+%'+%%%/%%%%ijq%jăU"yjS[gruFGcD2R.U1Uf&y_%<%_'8Ug%F><&P._sb6A%WI.QV'GW_f-VQ.kT:]neDăU"m$8uW12:s=aMsbS?_<X<(_n$BLkyS9V?-%wfd%?[2K\1v'n]PpDrQY/t(vJn1E1ăU"_h/8CnpA#I,(;%cDh-duAbUd-j';&dltL0]SNgT+TVu;BhDdZm8xCPhH\l]Epe?ăU"b>6]Z^MYWjy?Jq2kFM(%up()%9%%%.-%sAdLGM#4EN?%.%%E'%%%1%%%%kn%qjsăU"j&MVSgRru^$.V3TEL1UN.aqQ]<d#bV4iPPdjpBZ:RZl)Ne7?(nJ?3t0d*^:nm;/ăU"-;,^zPb*E8V,[s_Yr_>PN<MBNio)LIGbBB_OBy%.GR7cK[JW>y6$T$Lx\,_L^0TăU"El&SU\Nb<1q]DUu&VXAD&7,up%()9%%%%-%'^BLG(wZ,a&L%%%'o%%%%1%%%%knăU"qj.tuMV%SgrutBkv?.%&4e9%&='suEA9.';>%3[BK171lq='Ie(i*+p&gJPE_#-ăU"Y9&E727r4mk1xx%hM5)I.&XA[M%#<L3s\PW9o5kSj>=/=T$X4=6Yw2s6YX8j&%căU"t[\5%N-lh,'=EFv#Gq8%;(GW*'g*/i6&kBq<*9<h%%%up(%)9%%[%-%?#BLGZHbăU"e=U[%%%o%%%%1%%%%k%nqju(wMVS#gruB?kv?%^&4e%+&='u?EA9'^;>%[)BK11ăU"alq=I[e(i+Ap&gPgE_#Y'9&E2+7r4k=1xxh%M5).1&XA=U%j<-/-%1<79e11ueeăU"e^u^N4D.>eCj%l^$$4y5OB5q'o%Mq[pk:D7S,5o?Q4%11Dem+&rx:fyq>==q:Y%ăU"m&m8Rm,U)%%up(%)9%%#%-%j%BLGMXJFf0[%%%o%%%%1%%%%k%nqjx(fMVS#gruăU"B?kv?%^&4e%+&='u?EA9'^;>%[)BK11alq=I[e(i+Ap&gPgE_#Y'9&E2+7r4k=1ăU"xxh%M5).1&XA=SO==-\/1ID>h*L1#E?1o/KE<%HKEqOq5OKeBe*uJ,/O'%%up()ăU"%9%%%I-%*iILGsG2CcK%7%%o%%%%1%%%%mj%quV[&MVSgdruBk-v?%&84e%&]='ăU"uE-A9';S>%[B&K11l9q=IeR(i+p.&gPEq_#Y9%&E27'r4k1-xxhM%5).&)XA]MJăU"/ltPmwSg^0eui&=OE9%qs,SDFf/g8Hok7FC5,3aC%AP+EC*aOfU7^k.7<_Q8g+BăU"'K>fuc'1%Zg%&%up%()9%%%%-%7&h(Qg?QIF&O%%%&q,%%%/%%%%xjfw%hmSgRrăU"uVd0F.OUp1T\Bo4LV9m.A942jGCG(L#YhrNR*rF6KwLWio]tODm^]$L)hItOgJVăU"9b/SuJnV.i*<f[dO:GQg][8=VG'HcPC:<Sn.Jm<m9Ew2gby,m^oLQDg7/9sC:b(ăU"Cbf]HXnKoOs6P#$7XA';>'\qQQ0=ZwhD'S&up%()9%%%%-%9?g(Qj>kO0&J%%%'ăU"c.%%%-%%%%zsit%Sgru<fdF.AOU1T6\JzL=fie)X3YV<4A9pAFEl]Te^;J)]nL:ăU"JIoCHf(YKNN_p,d$>3M;2G+<:k:v8k8WGV;I#:dK44PT8IE+$=JiL3VfP=YVw<<ăU"&QA($kh[TX#un*QMz'<e/&-sQUDL[<-;5<H]TTNvFcL,\6%u%p()9%%%%-d%0W/ăU"+Q2Vf-*D&%+%M)%%%1%%%%hts%yjsy#xSy'^y\xT*'jU58Kl[Dfo,QM:AxhY.n#ăU"yOf^I$S9P2WIb%:kouKI8(]FJe;M$QS3N(656^lEQ==<&xidy8[8a*=/UepF::IăU"H%T'.m*hFe37?OC+]yB&YG1[^Z4:LqbYPb%eBd1-u7iV>RnYP:fP'rY8m>/m6+6ăU":a8S^)<NdB-dWRw*-M:,pOt5^g67O$Kq-lpP=jq:dYCLWtE/H>L4pORoDYUfn^#ăU"5DNbdk7GCWv.<o.$7EHSucu<jItHb\UdGMD-IjqMNRJdcsbnVJce%p4He*Gc[BsăU"uCkC#CVEWTL\f:[/R)=kMBj0zR8+8a?VTKZDj?d9jXE1qsa.^oUr^Ca4%O?F.j+ăU",X4dYKClt\Ae.z$s>,X1AbK08a)rn#VNJqU'8<>sQkt+lEVk$/:48e[DvC;3C_%ăU"0]UOJPkO7.Uj6GU1kRzm4PHnCry0oCF_*-R-1.&HK/sLMmvY(mP0Y=sEBuKU2?8ăU"g0jn&AVlY+8-cuusHwV94L=;S3>'bkDbKsa'#ya993Brr99&p/dcucHTTJ2WeYrăU";Ha0M9a?2xG)_HYXf6<dBf\I,gb,NTDtS;=&vx;dhw4%up()%9%%%#-%\Pf/QOSăU";+n^%%%%-&%%%1%%%%in%xhqf&MVSy&'y0n'&Mv-[mqvA^Q%mB[QSNC%qORn.rvăU"?1G%i1%aMHQBXuAD&%MtQo9EPBq:R%AT%wmTr+QCPnC*AWBC0AWPhYPQr.J>xjWăU"^h>x1/XHNL/HxhFE7'_[uMMC[tToE0F*Af[wEF#AkA*vZ=[E3X*$ucpyTkMYs[EăU"aCy_VX_Hd/r/8/hJF_>/X288h^)hXJEhZYP'%MvMomRSAHaPGqCmnzAE%(PSt'%ăU"ym(\9qnE%rq,#+&-4M_n*1-FN*ip7]H8Y[LjF*s-]--Pqu+T#wE(7[jn+ICu-SwăU"*dC%u%p()9%%%%-d%X//aQ;Rh)E5D%%%Hl%%%1%%#%yj'#yufM%VSmq4ufJ0\GxăU"z/9xc$It8S-F7nD-;;sv^vjuaZkZ-QpZI'2<p+*>[r#x?nb__s9%#oMEWY/DDq'ăU"[uyA%ly/3EcD))*YYGgEjP3wUUe*]oG1t][zlC$c8on;spiWhuxv8xlUtLVS?sOăU"MQ&v'JuvOSt*e5yV&70gm8OU%%&pzed%/4WU_#WgG.8dtpiY&]CJDp;9IrR1_VSăU"3<j+jR;xebzfVP7,h[0Ovrv[E/gw%5M.ge#M6C_Rt?,W7EOR5s7(x3to^tPp:kgăU"+X,ANM_Ycu\8$gonNCXjr[m6hBvX.id=.^]?7J-)%nCnh00.Qe+f#+&+:G176txăU"7suBEk5<CA]>:*RANK(Qh$&tkJh(Ea4^GwZSonYP+DsplkI0OF1I(\za03NG8w\ăU"IZFDi_ed$*FO&'2,-qS'CflIeSQngN&JcR&'rhW(?$G7LN7JyAfmkd)(-O*Pt$IăU"xOym?mCmtG</im[h&08iG+2.t9kXj7qM3$gO(ckG7[8vn3[mqgv.xj1W-cEe(A0ăU"E1S,j<DGj5cWi;P')dF:m./3Dfil&W9'YjOCf-$O.uE2:S6[-BCV>/<_r2D(bFqăU"pE(:7&;Y'CFS?3g&2lmK3h[.L%hR'?qzUmlTiQlB.8>8mWb\oz.y7Zun>04\h(3ăU"vISbR6j?p&UU),U3Y#yb8Q6Q#V+)k\e<2eNfbn4U3xsDjjjQaki6j'7b*.#G^LOăU"Hgm6sl5v]LgSY_$J5VNL[9<AQ6B']-kn+B?#FI>C#zv-0&i>x_wBrS9?+_5+?%SăU"X6d-IrGZZCDk$Jy,.1VB_J\j*n9(SMna1_w.l3J)Hh4IPt>*XEE'xYaf?r$cHSxăU"Tr,YQr7X%h'NU.Y%1HNZ0_>l9(buV03IR*epW[djfLCRG62d;Mu$N&#7Dk>DMI_ăU"g2,vsP&$,WFkaGx=sqx0H1VhyY?joB<Ex$z=7-n&$/TgTaN8&[P_Bq./o\91lA)ăU"c,'SY;#B&0h\d[s2^D_UX*%q0Q?eJhRWE1OXS%wRk^/:Xh1J+%,x90>gj0rQvzDăU"h_J$;zwP>7^y=>IY[lTOh.IzQO-'6YpMA%Q(*#%.B8[1kcB%(N,'VBlnFwJU_SLăU"*$$?X1UNw/\/yr0rbA'kp,Kn=30^j*;IeP>pgiSqDEdDTwMZ_d*\_1KK1]mL5P#ăU"_/bW7f+#[j.2U1IrxnS^3,PhClx>Kk:i8Z+bEf5$VqXI#Y),\G=?<J(r+l-?+G6ăU"-n,Z+;,R.CT.96Y+;d]rBf;;([r2_'psvb)gZ)CO3vw#gPk=7iB<[?:L^Lf$]L=ăU"^Vkq)<cn_zN_Oqcn;kbW%(Fs]o[<Xo3\BQ+>F/dbPYLZIRM<3<bTn;9>^I\U%IdăU"q.y^\Aq+Lk6ry6nyVUGle3-sRJoNW:Q\?dQE+AD/bQu++Rp9oPk>Pk;eOI/3uq,ăU"I'nRASZR7+dJ]c36^uZbT=xW'_Um(Dgh,;AbI#yg547.'DEFtI]jtrc\'c?HzKXăU"H\$d>>.(ZKT%kh=#tBcIQCw&hoX7p>'<QF?<#y(/b*_ku/g-L_:\DOO%hYV$0xqăU"WkM0s2lH\_u?GB-6ag^h5%)lX7?2/=fv1YtgiJTJP(cwr.9\9kk=J7goV*s>H(?ăU"4rjZ-4wGxvb#j2,wo0)X7R.z#,CikJ),5]wmWDhDkE+1PydjR;)(cB/UZK.?j5DăU")EsEJ2/l2.WTLVjjF9%+[V.n2e$20ED6q63[pB-,4;8jfOS(=2Jsw()\Um#hbG8ăU"qj?3tiHhZP%f%maG_i[oDflLxXbpI$MFubXWnw(kGD,P1W:V3wkKR\MM8A=6ZbbăU",p?$^5;NA#pr\tlR?gSbq\QI*_:GS3FvR?OMip&S:X/N/nM;1]2LKWt+Qvrmiq0ăU"b7Lm'Y^WDouS\MKdnM<;>s-MqS\N;_7-CB1)iCpyBTbi-h5hw#Ab5\sgP<ZsNi?ăU"QJAqDLEnvhEw(ApvMN[O(I3hov>32-z$#pbsYFzs=W8?eIEJs7D%PE&<x6,aCP*ăU"Wb=IU[Z7ufjeSkFbBp0H&EVuUn2*+cN5H4O\uFCO1vqSb$%?7f2n.HKa:c-/&C#ăU"B8YmDJ(&MM_%q_qE:#b_e-wWa$c5;97RgGmbJme9V5WOP&TJTgr0Od#AWa<A&88ăU"_*/M3c+q8,[r-#Zlk>K)t8xe80_&o),AkL>Iu,BPY*#U^e>a7]AG>8Dr4R#Zp2kăU"ZoRAZnt^#IU^(OYN*7?irGy,RXgCgY/YW93IpCa=Aib8dldDv$*^=sq*\YSo(2&ăU"J<St2_Yr0g5)K^w:0Jx[P(0)G)K?=PbR2%*Z9e/4p#)_>Id=hHMna5r=v5AE+]*ăU"n'tnF>lVaH*hj?$3zpWJuOV<B&]U+*DE*A5$?mA<xHTS+qwzFWXW=p%z)G)4qGoăU"KDyI<-9%Nlm;jw<WPEtG<Pr>A.?m6.&4TB%kr'f.rW%cQ=5nV*2;lu_Aa/[Dc]AăU"_FZ.c?3r3Qs)9)/]X>0P+7]g_FzU3-OzVjRr8JnWXk>JB'9.oC_pke68g(,6VBUăU"X<rIj'mEXMZLD(]=Sxb^2-&rcFT*RoI(][h*jFR3J'3(t)s?D9-go<cXm8UJ39#ăU"oKV>X7Q>d*TKaODKRaA]D3$/;XB-[uVmD+?Z7A8^pNL]dh)jYCnXCr%T(m9HAk&ăU"K^m$&hsUtF6pIsjGBl'-iRa_5Ojh\Q,U&lr]p^iAy-*jY&kiGH+%n(3;asHoK7#ăU"R:x2/d)8f,35-w+'Z3*gzfi?]EIuKIAZWoBfTgGaOeA-&[=u=9WLryV'PQ]X$r'ăU"$.,SNUOi.7It_\g9F+UGGlpP#nPumR._'#Mxqr>T/6CJw3KW9)mkVdlpQ>TAHa(ăU"KBh*<>nmK&\*H?8f15/v2,OEo\[RY_8XGcNYX2?sZ*Ms3Ako=_,uxA1]3f]npp9ăU"$\>rlF4F)mlgQEsTPiNgyg\+/^Lk_(\K:5.RoHb_('KYRJrZq)pqS)Khx7C#ixZăU"soKHGfDIaD,Ar_+z8UBAdFW?OI/PEW;kn_N3vsTa8rCVlIU^^dp^Hk<M=(C8r,=ăU"*L%ta/2mbME2D4>4Ql5=*[;\NDb/Q8jFyU&TB:Eal]+JM_K-ypaSF,x(I68l5S-ăU"O$9;n4<]ql\Oc:9rus:-8*GXYLdvT^_ZDN8.CsJXRpM^QhEn0Zm$guUAskY]:d3ăU"m]iP5Uf3GYRP>K]9Rh6adpg4Us4hxbm8>Q3kLA&&bV1\,WAYQ9]/TQc5&X<4)cAăU"$9oBfA'PWYQ2'E&4t0-3-=Lu3+;P)1J0?;C:D%+d^Gftn8L>J:O.pVdL-5iqopnăU"xp?Md2s38U2-3'gc:WWDUA\q9LwvH*3^9[J9lpd:#T+r%+nR_gB+3La=mWfH2Y(ăU"/fW1I\Cm,IA.3k4Lf^0D$WOU)h.,8eP26PbX[i;Go7QCrkX<#s3mwGHVi$k(xfKăU"wEjeokZjCx3epZ<dcCS2q?Yq_A8(]ThA0:ke%ZX<Y*KtiE.6KwuAx,ibnS*0JJMăU"9SP;<?n)W:bI>J(bk$_77^I^43cpi\#$6fv?*AHoN^*[+MiLmJ6X__)k8at%7X*ăU"lY$k(&bUVU1_Cb*F&D^KA^fSz-/e>+MiV8Stpmj?f;)DpFhH(5bE[oTZ,Z_,NzDăU"VEaI(uMSTunTBXQ?>&fM\wxwf77YS8ps6M;J/iuqg>Yrmfb(4lH-+/caS$7lXQ]ăU"B*8nkUjJCYEO#?BcbCkd;o52(w>PxsZXK*;qpV>Ew-:CZjC3<wpT&FfxGw'3,8VăU"JK+osSE$=:p0TpW[o(+q;o6?W^F?PT$Uo*$OUGh.TlZj%tsV02F.d*pwW[-FK6AăEND SUBăSUB V3ăU"4Al<mfi(%'KZWkdQUtBGVU#GgtYt,l4>%+H6&J#+MbDNltqg.IuC:j*V62.R[5hăU"b8tQ2#X/sGkQD5QW3i'V9_Ctd*DB'#D)jfShcg\es^TY-8-*AXHlP?i2q[<in=0ăU"5qGj#jsgw0%w(6<-MMZ;n-]t&Al5dddS?althv-pfaBP2S'L\[abiY4K_$(Vf\\ăU"&2Dv6bR]XT3M)w3iJUN\pq*3SHW?sB.d.V,)[QArRNc.fL48kD-].sGCn>'3OnTăU"qhC$reVmt=wRQP%S7;23swu_99r*gsjn'XXTW%=SY'^a546M:O[mH'vuW_Yqjn3ăU"6a=ZEDHw>-Hn]98%Aa)+JoF>ytia9u\oFdhCTa>.FuuWflQbhAP&j6JhsFLInPhăU"0v6dCwJ\'6a+t+X)e\xFJBcdXDOWj%e:WLF7:=K^,mX$AP_>WvD't*7rPt1\m^PăU"UAh\[2Z_DRPhg:G%(=0^Aca0Qk'>=<Uav1$nmB]Vf$1^XGk2^I%##Pu=5\iVYZ7ăU"#(9sNmB&;Z(NFzF'Wv%a(2A7e&*'9WLusc<g^PvDXn)QE[lZX.GaX(8,#.$sCODăU"k#M7R/ee#WiQ76*>mvo9<iTm,d-Z2>^6Re9G4Y0Uu3MJEFhOo>\ab5VjPZgy7y[ăU"ucUvCb6^>CH#\J4J4nkTX^jDXqgCx_g?'rYXqxa-^6J3kInI*;-21qFdX0m0[.văU"k/r*Cv052I<()8mU8V615>_dYV;FfMc=_WLMk?fXPFL$\)/O,h2+cHFe)&n+Xs\ăU"y2f7>m&H9JlP];e:Kt*9^YSo-u>[$0%F?=lB'm3aD6(Ynq\OC$:>QAT%X:MMa;'ăU">99,*0M>6a=^i_CAle%SW0C9qQKg+8bK?u.u5NJmfmcn(+,JV<VCTiQwKgQ.p//ăU"D.VqHSQJU=JmhR[&*TU_RrCT_Z$PfMjZ,]=-lU*XV9OOZFKPH8iBJRE#eo<1+6:ăU"0:cCN.,$..q&.GOG$,+)TDfn1lxM+d((0AZpDt>F#tSAF:Oz?Y,sJ[4C*?n#Mk)ăU"R9\>e#Kokz]d:[\3&n07f7oL=jYTqO]t/5(#-A%9^rUekh?&(am5>tRfPnbqOn:ăU"EYXFgEYoGc.,-;es74t'GGw,T61&L4tfW8WZeYVcQ;,i#oLpY=P-PBSZhX<L2qnăU"Wqfzb\iM,x<;shpLVB+r3Co2j?U3/I8_<I)$g.7u'DXzkD0),mBAfh#'FB[?%$=ăU"rKx\PxJZdbZV1UC,9JZ3V/x<S_re[B=YOWK0[_,h,oY(2\bJd-[i:VW:;f6;[XsăU"?8[d9YyCnm39FAD-QDcf5Nfq#ZH(-z_w(1+\Vv$7d.vx[%uGXa+pkla8k_5<)^YăU"Phbi>VMXb5kmW1nI^B1_s<fJ#VSjK[XcMGM:%C39qhNI$&z0Hl#Np4b?7Hon7L+ăU")#ztqZ,vJ'WB<\be7GJpmn^(%y0qY97T%yiKkQDc<]k74b4^dJq[tjbfwLg7p>[ăU"mKBgiCbzfNs.7C^dH-Ekb$9Zr<+4\P#&BveET,5x=+6jJj*8j1N+#^(m15$KZZLăU"7Q+*?7(>LLb2telpU^Jr\t^>'XJFRoWgimAnPcTl&9W^AdPp*]X%+Q#^-%G6ZnNăU"_d3nE]C0fThlLT+Y<G)W[Q96r?\?gmsO+5J9Xc)f9c'I^hQ7+7XO^K%;=H'g3^)ăU"Sln)3$RIU:i/cjT?;4=O.,Io<l3k2xTI?YN'c0up=Ch)qfROS4%ue,x&YSY)+O]ăU"6p_SW0i>fW;NqGaR^$Q60wh;5LD?e[\^2opg6^A&qOZZq7[aOq_4J<4^PlhV]xJăU"qbV,PYt?Tu+At2Zu*X/u&qV3.i5'h_dMr[jp:\9drbFATI&'Y2Kk2flqVf:c05+ăU"a]Fll87YYerZAlkwZuqteXELTO2XPT8$.uWqTnRl:c9jQ3uJtFEH+i9hio>]rR?ăU"nRr(6<Gn[=RUC[N[920<%pwV\,v;O'1wAliIArelo(%\(_El(3;XRKl-KP0mW'băU"kjmmd,9+#3hmH4V3s*mUKG\=ENSplUtGG]YUfPYPWuVKSH/MWPGf,3$jCY1KA6OăU"d[bxWuVnc<(ox8CEQtO9)lDt-6V\e]hLe[QC&63;qUrs-h&cc$[X]=3>BAm%H1&ăU",ML#);[wa0p\j>oU?or6&8>J[(8J4M2rwsaT)C5E1VSPi>d/noBjH^M1e_tN]BGăU"\+W+PSA5ue.LPjdq(6Svw[f^SQsPh0Q/O'Feg5'dKi5s\E[78a]d\r;VaY:7s4.ăU"J5?&o&PU5+';e=-^(0EukjVTX$1/m56xCO-EJ,E&2EW>e=Sl%Lf$?ll_F$]2JrhăU";KZ9]h]YaXD?DDV=MPA0VG:4fZcX4Rb+;ENu0)xFKY+kmVS0d,Z39#X6.qq^)7KăU"%Xas_b:e=_j'$T^jEta>^Z:87.D1J:YTqCPjp<g4scLcDenh+P^iT4YZ=hf((0EăU"1)SPU5a+;eq&N;CFSf#BXAqfrXM6UAih<ujbl/I&:;LWm<,rA<_N_4uR1i)sABuăU"*)k6hC$Y71Na:(v;E#dqlraE:kaOVa[_AncAso]q)9>^s4(MGr;^U8Rd.=,kR*CăU"39$vhj>g-'qPL.,D\5*8)uqH+t^:p0_dj(f.6]/IYmMOYu7sc<OJozd=YdHT,wwăU"+0R<V>VSv9YJ3rxK&P=>Qdt.>0[aTjw7kTx*Chf'W^B4xCtc5N/ig'-7&QG>BykăU"*j=*:'ca<=P=k>43kU7SzB]6:\NKf?Wv55'^Id>/]O6dHxH2zdBu1._2QHVn#7wăU".E[M<cqwA7g1oF&^bzV;pXo0iJr$zgp?U#V<GlQrJmGa;==Hj'YP&7ZAjb_8nHeăU"iu>Ibh].j'Ah+'q2-Ba&ct0$EKLE4aDuXN8iHX8sp5w9:mRE'o[XDMBVhn/Uy;uăU"JCNqsOA2V6FlaUKRgd;o0WVk6&X7EX^JW7a&y5J%4'9y<:WfQP[HM5<7W^3SkTUăU"3q$E(wvRX3[VEiXNj'fJ=c<':r7<5(6BuhYX[60\4<9M<4_?q6VoN#E+Qrf&fWKăU"sZ][42&NfEZf*p^9:_o2LF=v'dNt;jioCBoXO:TU$Z;EB[wQ;?#TjX3jt<^-GRPăU"Sf[1-Ql'';TpxLJRWC6it2'aANW<D'*>'_q$sC82Nk4SCr,z(3_YvYH]1aOdSpJăU"W#VkFZolbolFp5wRY3gzv?Iu2TNeQG_z+Oz'z=fOHcYLO&p6Ym#YxhA<FhKi->HăU"c/4T]02k31<kE/tUA<nzSlnv(Wv4v[l'88[M&.XNdDi3AQqg0O<u-2jDU*eUq94ăU"Q(Y4q2&>JoWntJgsh*A_HW?uYGW$m86AW)VRS5u,qC7z/PJg]b9HmQk;X]iJA;EăU"#u9&>f+>]nf<_i->1\XnjT]$nD<\Bu%,0&FUE3qOp#+*.V;%Kj<\heL?;7:l#>?ăU".%mEdlWr-ug7h^%BJV$Ss^B1#_J5cX>0_\2FkXXd3M*DcNn4h$Z>57XFg92vlUMăU".^7T#>'FRVIeAlm[-5WD$\+rdGRnEWZgz$,hD_bM<OFOad;D^3D0BNg%6Qt:04TăU"-vR</-0TR)YGgk'e,:=.Pv?r?e.AN<0I74:2HnH'uwcbps)o<5hKGz12%PwC96RăU"QBHqX%EbXu9w+^wpur;=wg6'8ETtZ^X^Y^jL?p&mbq&m:AU^<QUuBI'MM0.pWq[ăU"b(%PZ_Q_'uI&I?ck;m$C'MH-<f?jtH[6?/bgZ=FMW\i*9jn#Y[QAa%3cYA;NY\GăU"2^<P_Zkj/\93vqB).d/ysAC.XkQX2UCLtCH#_>hpiH[Wvfj<pcxdNQ#%/TKRBk-ăU"UJd^>C0gf&,9^h<T?[GN-5-.h_g/\p:t]DNp_z4NcLU1H^E0p<b^_,a^*U0N*G2ăU"LZVgog*K?c]*9G,3VKThV7<Ti7qQCsr#fN*g?1/?n4]wZNAA5Ob,r8Hd88CK<jgăU"l:[UfvGh'g7J39KIMc5onq5,\9apIk:8;FM[O?9jujV6stZ2\QqHZ<*EtSD\3&UăU"$]3Er2Tvgeb3tTNbeIq/k:z_TK)2(qTVZj9oKH8km&mP%a)Oi;(od?]jW-[Er.&ăU"g_UM\mlk(Tj_u&=dJ=T[woX))qSwwk#n#Up2fE,/VBP&Q'hcRaA)pOR;UJ#RM/RăU"IY$ke6?VC-D:&/&'cy\/bEIZ6ML;1$Mt207BJ0U%YZZN_6G0,n_SrR$s[Z1X6saăU"]P*-OYZ#Z4,;SFRsEQJ%VIVi#&D$9sTAQ'm0Uj=pd/z]4a<B3090rKY$l1gK;qUăU"<)Q'S#s,D&+%^PXdN^x_?-T*u%_oZ7_^K/_Bkb6<tZ+xqQE/du;c5Tl+.<'?#NrăU"ucDc77333K2cFL[4./pcVgI0lIE&1bXUOUYYRx?4.'4OYFD_YZ584XV4YpKqGz;ăU"%s+cjTjOEpx'H/xb%p99h1aS.>2e>b06IFwji6PK.?fB&ue4O.+.&Y7V1du:0nwăU"w%_Otuyc<HGZ,Y?UOP6+)On9&]KF5[Q/_B-#A[ZbVh;_+eGPJQolDoeqf_[R#<iăU"W<k\ldg&7O4g$2sZi?q$lSpl;L6mGCYRq,VY1rN]dG<wM$hlvG42'+e<(X'WdQqăU"?$,<jOq+&oNqaPoOE5f110rh)?14HV0#AjatItmp5Zl2NG5R/GQM_**TrWX8dfWăU"ljqlYS;;nWrn9a60\Gl&iH.M;0p\VRlP6z^$XDTFhq.N-VJ4kNvO2?QGP]JPgu\ăU"&)y9cQ0?fjY%s(]+7PX:B;GBUWmuX;HMhBq)lY)9laS#b1Vq2&uf)0G/F_2x(;KăU"],BMn?lF)lDggqcJ-4sBm?$7jL1363WDD2B*,/a\^.pO-Z]R3'8m,(boO$adS9SăU"Q,e=kDCm=H)n\lcCHNHsTv,Aw6l/A?6rhaxUV*bbjy9s/^r7Xt(P*hIGD)=,&fyăU"J%/%;.k<=2o0ty.0$GAk^m6PEgVJr<n9$#<t9GlRLY%x7Bl4X:bOigORU_hGXg[ăU"p'<es^oqj)z0D]9oFZMYWgCZsXjN]Upgq.$;sx2ciL?7TDV,:=b8DFW5rcFE5OtăU"Rhb%[8E#TQWsX#Rhoq)q-U_JjjkJt^kZ\r,Vk^hAeDqzARIAEzr;vA?:7VKJfa$ăU"a7o<2^34+'Y69%x%J9bG_7:bLZD^FWJh:safr:$lZL1$x&]pmdu:w9()PJ'5I?PăU"t<HV1-1&\Xdbpg5q6FPV?16d#?/1fc./iJ\HO06,V86x%9&rO8b>3<TLRN7jo36ăU"m)<\JQzGPb/F[YTof/M&wO][a<\IlfHM-_$_0kXK-[Z8#pQ35Akd2MuQ\QaLF]\ăU".QOA+$diT&T^*^3QpEaDIv/REFX)*_3?dg#c/P8H(t-$TN*Za#$i9%VevEr[(oMăU"W+<SHO&hts9+-CPL?]P)0q/DGKO\CX1&vUbYK_Cd-bfL?(>kK^7]M7((9^E=z;qăU"kYT%L:YIF%*_gh]V:uG_.CS2T1O#5$P#+?:FL)Yxh6K19ReL]984b]YimJA)1<5ăU";<0].ggPQ%\n^RTQHeb<apQQT=.8tF'WDNU[mKUvL5jeP;3#EsGosGS$^FsVm^0ăU"B+thv+7Ru7hjqVgB+<w*bUWK-m'(Ij1J]t>fO=,&nVfv/0r=MAT^R&VFPMv4jhPăU"D+LSm<(v1Fx37I='6Q>hUg8ID^MV4e*C1_7*77muOEmV+N&5VJvF6tL1ML#BatEăU"c;Tc7$Du;86'$)hk%/bEaqZ$ECB%0i3^YFmbFL5Em7B1j]%&]Q1^;oqXYST#$EeăU"CEh$^Tqx*.ccmibb<4>pE(x%s(<=A^Tc(q[.H8FZWl3a,6$f;<41%okIjvDb><RăU"7^MmwhbZ>wofL8[[/:27.9JadH$7*Z&5UJqqjcv.BHzpXM'cLJpQQTa68ZB2afMăU"1gF&qXRU8pa^1)V'z]+Y8/WVFD_;,e%In&343-Wg/hKJQ'E'1/Mp&-rwh3Ze3xRăU"8*PG;bRS+MDq$,?Cl*]'-,\Zc^_OH$H2FS\D:bO/xa>vjBZaMZCljhR'I/DRyPHăU"&bj4^^3r4hr<X?XFG4#o4)A/WB\&EI/'>GJ#/gA:CK,Me::[n%ok%SzQr'(22%9ăU"On.ju/Pv?RlXVB2O_lq]%V?H]_pyUn31c101h[$x3j*;(3++F8Y3_oqLd19bKYCăU"6%k<GUIAqzh-*gPXnfcQ<(h[Q0YvGo.tVM59#?*Ba[*T\?0H<r\w1?n3YBg,d%RăU"5fDE0i%pan?$flGqkjtl&Sc*v^otT]vuFnwT_DIxah1gEtHHGJQe46m]yMI\42săU"[jr,fj,0;Uf_J#2]k,a,\>7nou>umT)/Q?ayNYl(HHFKk:wUWW/bSra#G_>X7i+ăU"ndwtIj2$#v_J0xQTZ8HCwp3<T420frB]toI:<'rqa)0*&U:254:8]p;BrZ],Ge?ăU",'b32VAE20yvOl4N(-L.]+%bJG_Njupoduupfq\Qxu1a8s43pc#VhaVnPU3,#;VăU"VMvxruw,vxuahccUg,0g-Ux(u%p()9%%%%-d%F//CQh#0'9n]%:%tv&%%1%%#%yăU"j'#yufM%VSwyOkfL(Y^\Adcg4%v=,7RXJ7\1^O-t0=N4f#.BQb2F)H[0-:U1FyDăU"fayZ:y4^9?c8X-^wcm&8si^w#HOxqWA'7BS1$uGkGm8+IMakwLYne>)5M,6LjbtăU"PcB=_hLfKnxBm3'[rdLh[B0t8nJtjp6\0,qu^GJubi=jJ.*A,63TE<8pLtbNnfEăU"zi^[S&M54=9O'a7wvQ:HnXrgD+muf]Cb8l#eNs4ACQ8\ndsl3uG(_8cjCWnz<ruăU"NF1y5,NsaCnTWI=:d3ORT/&:EIFaO_G4o-WnSg7FMeZx*%imJ=]5R=S7*h<0GUuăU"Ucu#C+q3$.mCeC[z].F8nsb6#pQTRcxBtiWRibnPGf^ePmej/.6tQu0.aB8rxBPăU"n>S-<FY]dTwHuLaSZFWH*fmGlZiQZmJ%wu2n9pCQ+M%tSWC&%]n&w/0S$DDOO(4ăU"cY6DqNfOg%f(KE?3J&Jp3bzLJXhM.4R8xaY$5c^8v0_F?,^UR,kuu$;2'pPf.6SăU"FV3W]J0+?N.T&d]d_$NpN#IoZCx&0CmEXsCK>h*8(MbLZz[C1Lr/,jWw(FhYxx>ăU"Y2T60PrvAgBO_LKjLZ)$VzS.uW^EC\2uzcP<vU-9$euj&c-.sbrG3,JM8dArBBwăU"WY8EX-Jh:8_[5l]:2k%B:6Q>=36<OyN+>b?=ypP^KVTmPf<Vt.b_$kl1.F7T>i2ăU",dYb5hImqq:lCVd1Pt/+X-_Ng(JAfj87tX_WM$PXo:f+[2ZH3[XC[6<,mMo1B&BăU"7BV>*jac3n7.wVq$QLbunf'x>3(Oq$8rNu('6LPyjV;F7(ipvDcPu%;vo8[_:5AăU"c<mNCEI:/2++Jl'^3mNiG+tS<mBEUKS?Kq&tWA'1XLYH_2O<bz$E/c,oY_K0zUDăU"_v(n3L$j;5]/Op&f>uTBk5RqI',dr;WGQB,&_P*8^b*_)\J-vSma=4H,$<z&6jTăU"mGK/3>t[bui,6;j7,ICiqX=H'(lg3&4#h>JYQj_5do7e6T:1gX%L0;sHgYqQ%HfăU"jYBrW6B>vjE>>,J3WjQ9BGudFs&N5PB.gwkK'5leJ:FK?^<=PT.Q+Xc+8Sln1V6ăU"4ITgUOS=;XuMTiR3*[BiKM:RE2oFsEV;19D(lb5#'$saqk*MLQeTkx/GLut,fK<ăU";y+7H7W:p(bpGZFLD/L+$D4:.2-<<fJ0m5vb,]SJ/0%62,(/9OGU$=:fC)Jewo:ăU"mpV&]ae[Q&IDi.D^7KjmAD0EEa+kEsG0e]1lxpXBe0]v%8l;L4XSrGH$.k:BiH9ăU"pgL;9Mn3u_tjuNNa]4\L_xQJ.WBYD$-=:m)u;'wd/k*9hr[H&'.AnSKg\4a._y,ăU"n>H,u<-Z0ip9-1Ojk&t$V9Q*IR&$wj)U8A5Z>*.o0;cafqgq(qC_(>Nt4xZJ8VBăU"d>S5Vz%:i<sJ4veBjL,,I>NGexTkSe&87j4bPCe?jJ=\Kzm=ZH(fWY;VaYh[fLGăU"V*+-CW:J1=3ke,huax<LCVOb#?eFU>2+kCr[ljB%5IN;Hi4jQ9mMlX(g]OBfQd3ăU"r,(oaJ;X:kK8uJ<*1;WZGI'/hN%gQ0]3RgB2Fh(cc1-mwbu_Ze<oqigZ_;GsEplăU"Oy%C</AH-#2t1qaK$QDk8Ih&ps(1uZWK98qhw[zQ<gCtnp*-wXhj&HvMbqBnCVQăU"c4JgTHyZu&e71Ud(7c#NhnCwB)o]B4DU;w<7vWEc5WrdEv.2wYFKNmsT#Cc1p-wăU"jnp/1sU[&?Thyy>L?M3-%2ny>jp%.hN0A=6w[UFL8p(?+u((e5LKx6D.EZ'c7u0ăU"Axmg^A__S-Te1=7XKQkD^]j$)k]hilJjWkP)2u(aQ.$Z3UjIkykwvBbDo'px]9]ăU"t&,KPbsq=7LLn.bdWI[C-AoN&E&c5<$C<Zm#w'Isi&TGY)dx&,ONd-P6]w-&lB:ăU"=J[pD-+T/c[PGfKl_bJqvK#tBg;\xHA1f/_9*%,AL<nyF50'N541i(U)itB#B,eăU"\7Q0l_GGY:qLMgZ8'.snf_[v_je_[SPScwD4NJziBt9Y2*B6a\?m2.ZaH8iFaTMăU"0V3:k[:,aKsbZ#wnEYau.3Un)g^*/]WjnU:1dfnS]m=gmoOR0Z\ee\<2;d%c%l6ăU"d52TVQ0jr^E,Uq=eTFPA4(=:T72vFO1)SPYvej^ikFCFM1>=X\<f5c1V105jZEXăU"iU=UT<F?4>e=T;1%Vk.<Ue_vU'TDI6A[8N>YcTFA34(=\lDf52TVQ0jr^E,U;=eăU"Tp)*='E8U5>,)>egKaU?eUjQ0j^YE,U=YeTFA34(=\lDf529VQ0<H/UE/D_03s:ăU"a/3FnY^=5XQr&i/=h(R5>NC#A^+A=X\Lf5c3Vq05jbEXiV=uT3FCJn0L20.sIZiăU"9BvwMW:)[C\?F3VqW0jbEOXV=ulTFC4_h=\LWf53L(Fu#+&_m'=saYc?dUfgIj%ăU"g53TVq0j$bEXVq=uTFPC4h=X\Lf5u36-b.+Nq9K)(^fFgGJpgwOjbSEXV=YuTFCăU"34h=\lLf53TVq0jZbo[uJjIc14mip#Au)uW=5\0#nu\Lf>53VqW0jbEOXV=ulTFăU"C4Dh=T>'3.k.>da98MuNOQspC=FlPf53TVq0j$bEXVq=uTFPC4h==\LfZ)g=Ap/ăU"O*Yd;%*vE>%o:R7;xd?(d[zD$SHS.kDO3D]--5k3S#=P]T_5BNw+7N6'Fb9?t,ZăU"(HROk85;lL>3Bp[Z+62d#Lb_<L3dHN[eEM*f,;1d#3Xn<B2\>NSr*=g&_KS/9B)ăU"%,imeCM^DyfA7b>)dXX_QlPe;UE3>8c,thb1)EY+kGL1QM%[jAFfsh&6Y]EhTteăU"H2,n$CJFSDR0z1s*1.LrQgV;mZqbEdLGz4#enRah(yicJix&hphHeUK<+HE=XsuăU"0idRh0x.>oHystB0,JxpZ_09QkOJu4bv%*'%r[CWa*[t=qg(<_tCeuN[FE0?D)DăU"87mRduqRC%YFn51Vn5N2[YC[FAEn;T:YlBkD$q=W^f#;20BUeZnFUzCj]Nu]^5YăU"R$<+*m1P[\IS^^:3%zpO5hbnREkb#xFRCr*ggrK$cS.LCt$O5K]'s]xjS$b2Co[ăU"cGlKtj$U5RD(mtiHF=MuTmt-2/_ACR6ZnpRe,BuvLuW)wH3KHZthMl(%jUV6ZxXăU">4S4,Q.1jut0$7E['*-t7D?tFKbYsOOA9G5'nr/w?_2HC?D<^s4%x:e&uw$.AT<ăU"tB#,LDu?gjvYr.sUD)\i^-393M<Q$;JvWe9P6n(VB$<,v[V_luSC?7W8TsCM+ATăU"$f'(_I.Mth:_C+uEV%I_9es;&N]5ODhSQp7+87bqe.;G5q1*qh5x-5/.Q6SMhG&ăU"OFngq0nbnA\1cQXp;<Ih;B'aA^0VRu[4s74WQ$NA%)g(7#MBmU29,4,MKda,i'>ăU"ha9#<9=EGyNH-X6GLJ5dWL/>n>#ggJ.&,D#l#dqH6>[bkE]eq(6GBso;W%tB6xOăU"BGqp$Z4N%b*XNcya3d&[8'^5Q&vx(AIPkCPL8vqb=JBl&Or_90OLlhiGuBIVbbXăU"qe;k/+--x2kI'5P+KNhljv_#QU>OQ]gwkK'5leJ:FK?^<=P9.Q+nK/QJ#M8_OXcăU"+8Sln1V64dTgHJgGY>L+gFf7*\:raGkqArTBQYRXE'_0l#4Ap*6*)>6g;(8.,jHăU"O&l\wz).atvs6sv<otwk]BTQRQZUr$I8vcfw'4^>$Dc)I<NbNj<[idNb4VRQubWăU"e:c&SM8d&DX#6Nthlu2H$Ko?wwv4iB^8*?AeK9TLQYk0ULnp,x&OyAhH>^>O)9măU">v1mw'#N9/%H5%oR&e-apeRi&uU=cL&%Di'B9A%kPSx_UcriDpt8q=Ne#K&#1B'ăU">5=yb0\K:.^nNA&n#llYBe0*fyj%c0wZg*Y6cKo]wP^DuXpZ(82C<2&uX_S&PZ'ăU"Ro]8<wR9Yd-n;.e.OT/GT\FDOyGp\[mgM%Q8.T]#WIvUIs7N>,v>zI8uzlkVx2LăU"mYa12T&s%PKRP&T9JOKkRD<XL%kjtXkX-#jMRdR8O?FJBQC0JCci;E&F2Fh(c-1ăU"-=w4$n/EMz]]&1(ox>*+.x,A4cK#IRhFx)Nh$XFz,FTF[N,\N;Qd/AGZE/%ZM+8ăU"nG*84u5xs4]l1XCIID)-=DwJo%S+eIK<U-L6KNv1ux5Vv\dh+*<,sxV6FVqt82$ăU".UipR]xLk2fQ6<NCDr8ZwlRebL#KCQ:sln^E_.auXB*NCQzm\:w>cF_hc4t'5-QăU"*K$x4+F/(sI[fWgfM-_upxsl9+M+YCDG3[#ginGi,6oN+V+W-,%?eqNLFZzd,j6ăU"oe_MF+Pa4pw+n5Ms3oiD^4CIwjT#28d:nZQ^WO.T_HvP4(A)>%nfTL)/ax5aQ6QăU"0\a9FyFIt*2pb40keNJkPW-9EEg[PC?ri*<xm'(ZjbJ5t/+]B-Q7d.LOhTQ+4TIăU"MGguFlBExk]kGN+q;e1-1I\;n:*d?mc/q_rH$6pb^Dbm7[S7$F1rslGVNC(YUIFăU"ZZJiJ(#Kh;HAsDc'APtt8mRy9M^MXD59aP?n4sZ/(c;MIMG5)U4Z=XnnOhLV;hcăU"gVoG)2xC'TWa2*h3^8=R;n)H.[rZof-DNpV_sR2A_LO7A)Ic*7IOrNFPUaWW2?lăU"h%WS?TJ.JHe]q%NFk1&I_FCkC/&N1UcT1iRwJraJ?MXFy'^S+CcM-e\gY5*s4M9ăU"b8iewY#J^u+Z]j+fK_myyw\?-1x_?r(MJ)h^wbFI*VQACot6-L[N/64E,78VnwzăU".MT-7ZG+>yQ^8yf]bm'_cZmVi^[(QLd?omqajouOpD?OFDe[lLJ)S/,D$M6MiVrăU"v*TdSUVD8H'M4rD)738[Y/qaz-eQ#*\u:jm14NR;(-.L+(zdm[jv4fH1hfxX*QHăU"]$j5M+m6ZsCFmHbw_uSTpD$$#lRJ,Oz8?tH_ldEjTf>De(VlHcU?'wmVRU;jP\aăU"X?xf4DTxR2j\MMl_i6Z\.rQ=9tq2t#w*m_RG<*zKIgp,1d)9Q5O(Nu4ScB_SvUOăU"H5^rP2r6t)=S[u;2cjfXSZ(qa>,rFxNhM;%HZGH*dvJ_d)RINVuw>cK]ThuwoP+ăU"1(6Z(F8(AaeRe#O=*$J5i^Cl&kSRdcMcsNNfph*Igr0jm\46Fv3]Fitp/tpenK^ăU"dLe^cHC;ezrSnLok^rVlD\=]F8oFqo5JM7m3Z<1.C>T7z,)&kC<SrHzr%*Aa,<?ăU"4k$tPb^;zdtCl'*[L1fngEaxVw;oDhwvBX4rSr$iS<$.1XmDQWYv%gs?p#7)2uVăU"*isTB,Gv=s^Vt^FzVf#F&JH^>uF['q^G9*u8lZ[c7M?#I#e8yD2ACdsB\fqD_i,ăU"x*(W,>MMS[>>EhzcEj9$RTWIWv*%i^i/tRaC&XqyuZQBCxDwhBc9tr-AOt8'Ym<ăU"t6.nir#DdZsK=nBcf2&(D6QBmE3iN*<'?fNbBDVgXuTEAH10j1AeZvL0ByyTJjqăU"NAV^NuKWZS5mk8#r]3TGFWC3SID;^j.v#dJKiZ=n3*cVFq7:.xDv<-?2PPYs;;ZăU"rk_Ne$JbX]BbZvi\vFLqFNvwi4?e%iHMluJ'I9etf/[<?5ADNgVc$P3,qX\:Ok&ăU";e2d,]u>PHJK0S=trxi4m*[5Op]BpHp>25$B;\aQcQ#(V2CXd;hXO&O3bi'1se5ăU"8M*,YxJ-t?*[#kr+kc+o:Q<qZw0n9IM+w**>lDHX]h7^I-m_h#[z50cK(_\JoykăU"oVyF+04i6D9D:O9]L4O'T1zH9ZRfN4e2b(5m2*w5qgu>^Fh2Q5)>V_c\it14qPfăU"J$8+gHZE)DldPNx#)</*#+bYBPW5r3Odq:<SIi-t)dF$Avnq6.8>rEdOoR<c9ttăU"04Y0P6_=*W0*58>ZZU_l07xS.EszxljE%car[;#oSO8gM3?vbc:?rFRt8Vkp_)>ăU"fE(t*vscI+/cX=jjbj7WQiXX.D,d:dw;j,7uovbKQUj-G?UrZ*i-fk](1k%#CO.ăU"A;hRlw6GmHpr0cDD<k>G>-1lk$=_IqYBqu)B?;,mdQ-Tw[M$$Fn+Jdl[n3%TgHJăU"f*$O&C<ZN<u6\/VIk$X(WrpNIqz<=iMh6Z3tm^L1-35.RPM$5=d-Z%^q;D%nC2căU"\414F(]$'<4xUwyjj6R%Vv>+^B8^Zjz<;IiguI.c*K2dg4nR+j_IowygQWQI^maăU"PEF<SG-TD0HRgT<K[&at0/fPVU*I]X*TmYg$9f/5+Hi[h5zS0=]iAPp=GjW_A^VăU"pG2sFJ8.7+VD21PIu^HR#']Vc=E)0x[4o8)rG]^fntdpdVjxkGm;U75pRdRctUNăU"a-ZiXe(Z2aDaarBvx\]7oy*N3Naf4c[,*$wB[,>l^vOQWvhE_DiPMV;97)ZVdc;ăEND SUBăSUB V4ăU"+;4jA]9Rm#>&_ccD>Kywn'qX4K'X;h(]*;bVS^nc11Ie;9#?=iN(S:Bjfvi1glnăU"M0M+s4mXIl7cI^p.^mUz(cIPsdzOFIz$t6V\ttY-GQi2h%\n2=bG1C;,:EL,D$$ăU"h]?B3d)i?\(#X(\/AOl$w=v31hdMp5NeMTYL,GK7\bc#m[CNu>M]h\ds](69qy0ăU"3KD>9lbs-;nj?V:KoR4R;W.COvY&--E<'-u?':Pwpob2oHqTixjrlv+lK$nKcCYăU"H1V8aQ&_?8pHg_?n[cS.84xaL?hSQVltk,f4[pgwE$'D]%t:Gmgf(b&,.dM*ftRăU"Fp^.F*%k:#A$as66,av_-DkGvpcI6_VyC>Zkl:S<<dJKFcrojWG*7%:L^$>,hV<ăU"m3^^IvNPK5tHsrNExd;TxqjP1ssb5^&pf$QJX>2BtKk\7BL[YNDB?(U)DZ,>tUqăU"j=mKfV?lPM<s2GHx7qJ%m<wLOO&UGof56fDSkAe6hD3rXOxfbDRDa9Ua^NMg_1lăU"xdR3%jR/+dFFV%k++UWrD3s+ay;y>tqQ-CY-N(zblsnk$-bww?(MsMyqEikFF8HăU"F//][x8(HTGm.ro\tF<lm$2*W5&L;=liPrUG_ttVj/&$SHUD(TIU<NRi=Mk]/I/ăU"t0UE7>#?U?c9(iM<aiPh6=xfR#H0BsLOV.<MKc=vtj2rAG\ET4rW)0[Kg2jNGl7ăU"u?Z#GO^=d0(F6SpQ[tV/Uhd#x0l3u*m)<Z:iRiu0io5p8&4]*l3a\,:).Lnp+PQăU"Dq.BOx-MsixSL);Ma7^jIOHXqsVfw8/oH$=1canUbU;F*LKcxst^S)X3(0EDNHZăU"uBt\_*Qo28JQ+%b^c.>PlOTTi>U+wQAM2WvEfU<)bV^\h5U)WOiZ00?Gku%>tT9ăU"_^:J\*Ei3-Hlco8vJr*vKcZ7j>5SqKe*cqu57A?_jMQ$?LjmKLInVBxYcRUbFhmăU"Q_jmL9wFZY>]VN^6x<;_0xpD'n;DxhZV\lx]wnb%sossdQBhwx0W<9cu.8>6tnUăU"\Prs0WGcm<qV]^zSMZ%_(djP:Ef\NztRc+qVvlOF5Nt8q2eBKl8K)])MH(vMQh=ăU"v'7a6&7gjp[n&pX;d61r6vD6glU8u35.Lc3W49;NPgG;r6nWbERCcXq>T3t1(sQăU"/dM)5^#m-lf^xjMA=:>A]dm9qA#'KMe\W8O6C%i+h2SsO]*;P*//y_[=')i7fC-ăU",*$;P1vNcc9WEghyckGDU<]#NGaU\avSM;7k%h*d?e)2dz/W<G_nL)cCagd?]wdăU"[MaViL5Pc/mfa<KTa=CW%'AH\gF;2^:_/>e1.zRiI[%QY(8V1(dyH2*B[Uy^&S7ăU"1]9=Yky&0K:.&N5>O)wt)'.-)s9PijWGn2AY=dgFp?NUUBt0'13fd?oS#%uzl=)ăU"b_*mF=Au^\eg,Z9)(Q>(??=iAo5)JL*TPY%)^5+&%$115aGA61wY?'ETO=1;OkiăU"/IuLD_R9&apYPZ5S&W/pUeqe2A#9Y)(+3-*%F8=-?TO^>cIvA;Q9Lv[-%vSI%:zăU"o_Yap0+dsXoJ#7,<<:rFkQL(rzc_>nC7B'/1Uy8DR%-&'lM7>7,832-V2P$(QC>ăU"A<8:8,BE%9r4FR>'B_5EP[tDh%)(DX%?(ee])?5n>oQpBhXlP,:3^Mq#<(8enn)ăU"1_Q$ouSd3g&ho\vlT4p5^l_j>T,Xz&).Lp%'0[)<'I4P7^l?#HhG*35PAGN8;quăU"jaUU#hF?=gQkVamute,h,Y74C:%PGth/ht_HWs.-;n6zl&IvVSUk-8hTBJK_tW3ăU"0*;BF?8^SfnAfG?^YUgTL#6jB+PF-Djh$mBu#4\HPs(TDFjmFc#T*aP[]MjT<fFăU"mf%82hHmR\#bDfSmLOqT:5pm>0HrQW3mSH^nM7pj^hAUmfj)Xyvm3?mLef>Nx]CăU"Qtqleh-5$JihHz2B4Y4z/o.v=rI&?K:[gHHB5L$VEp;wZ;,gH=+pc_Ic$nNG6QMăU"$e171fe&aLmsCA8kO1N=AkR?.YtTi5#.,J9u'C*\ik[_f&#EsBlY4xfp]0.(+nrăU"Mj[UCuluW]j-^e<M9e$Iwxkp2E<wI.k(:u_sy-JI=.<,7m;Y='Zgw-(Ia-G*CPVăU"=[WO*N';NKhA$1nw,R]s0'h15-RV25?iW1R*\dw=?W^G]cD6+#P4:$g*3:wSk4oăU"9lY0G&r6ABfu5Ddr?J:sP)9b/gBi)k:r2)fW%H&xw%(2Y<w1g0Xc_S_egh$=WX#ăU"A7]Gc[vw5d/8M,%CjlC^K%/?k;BkYE7cv=]eR^3K#PIAd.o]o5O3)tA#;N5y[ikăU"x?+]-->1AR*?2SW$'eBfdodk&R-j5A2&(1OoUmJ5I?\UbM;&V8mu\X(5\792KPmăU"LhBK#m)R2I5pww]ky0B9-[K5lf6dE4=gpe$KAm6K?ccR%AIC.*FwJw27:P<7%NEăU"Y\ff'%V_1QOUh3eGNMq2F3B'C&4>T0QffH2P$<8r?EK-(zar?'+k-gO4_c[z4,3ăU"%$s9?OIKn2#XP,3%_s$?YO_mdUq&,a*ThlBov94GGuV/HN4$[C2fbq=.cf=CfL/ăU"u<7hP5%l7r+a5yt$]1aSGv(c)u5mvMk7U^^X];Z=pqkPGSL6?%j5^;Och6PGNL2ăU"4.Ut;wOrE57643GLbXV_gqT>_ntj]dMI:lZV5b%Qs\8[_1ibr$H%Cx^lVe_3B,9ăU"]Y;xjb*X&rDMxJH5(LmM)(EJq1nv7+;CcR2IN(t65ok=?X4%Pft5C(?pIud*Mk]ăU"U$RC'ZYB%GVV9>XoZc'>pg6=79uls\^:-nXsfUkG,=8H.8DF>-l<xMekV4.[JbRăU"i_0LkUI^[]tw[Cb1NCV]VL[kE7pIjHdy4r#ms(=CY_STf3hHa=pTJWBg8chb#[=ăU"ZxO6[+>UJ2R^bZ40E./9jxKASFiAO\.><kEe]R4Ek9ex/'?h3jeFT22Fp:0/E2PăU"7Q]79aTjui#/qD'r315tj9YKLD'Q'5[teP=B_(M/gO[f*(E1'1r\US#O71fO5A(ăU"G]AZ1y'7(%[qiI8a2;=e/o$>'Ae;W;/o#H&O57v(jaVj(9c?u(qcuU%-q]U(9H0ăU"U[w%7C8_[KhVS$L+M1U0w'XwOgRRF8RLe(/qJ2Ub[706=f%y^%1&RF:&iM)0%OeăU"*7s.5UKa%g+Nh%G_FB^g-&:>W;?F_rg[^Ay<nF0^aOo[>k6-2S)W((CRGx(A]MRăU"'1I;oIGhITLEvSB%/gW(=%ZW7/qM6A+x'm\6h]<_k+CZgpRDaShJlbd<WL9^BryăU"d>u+Z/ZGi%T4-<^S#r'^,Zd2(FtEti2f6#R?yu,Ze_&iaA#J-F:.T\4fmY+RPLtăU"Hh/G=S,9TK0RF$cn4[1VmD4Zl%ViH;D._Yr+G.4FDTSuS<c)JcVf7SV6^2oklc8ăU"<CEzk2;&ml?9A[lfG&&2\]ea<nUF$>MS?>dNp3:V_VmUg86t-D1>(v9mul5aNVmăU"f)fH#hn+?SL3Gb:T,$6n-MX$SH;CUZ$>%^=ubH+j/t,?<n-S7PyL^us+oeoDoPtăU"r4zlr1b<'$h#Wmo2A%)dHtjZ)t8P$8gt(8H?v7FjZ0.okZ3bw=msXB$fv?5T->3ăU"X$]up4kq%La:3V-lBgC^)uWivN>AmzV'^ul8n*oS;T4jG]lf^4C7SD,bB&qem1băU"s9-.Ku]T#8+-<R+,?HnB-K9#(,1u*nt9fc.ERmLp+S$FR=5?UIt=,yLvsq[4wQXăU"m;V1bQ6MIGH,O0OCojoYabQE1pj7?f\/mESGEF9US*A'0e)3+.\VaJEo->?GdLCăU"#<TB<s7O8X9W63'cPW6k5S0<D\J9j0?h0&'hMrA[l5F.QIS_BeJj%%>P'-dG%$EăU"+u'J)';+mspp9D<;OJY*#Im8U&guAFnO9-\8$u9p#j]WO)1/6u8+?G.\_F::(&YăU".M^iCjOI/V:p&#g=tJt+iqX][-DA+f'P<\4e-.NFDY-k4C0C/p8$8(kONCmLev1ăU"h4-xAuh*;Xak;#ds:aU5:%x.'kGhRev=9f'29q]LJtU%V'31c.i+X>.'iGnVwRMăU")R)2l-&:P)w6ACwwhzc3Gdf:lDsR^Jb7BEC-+ZO&m'5%5NFDIO^&QuFXCb^\MSUăU"V0^^]-44uv=jBL&GZ8J#H]>mVRw0Fb(^SF$vuWrStn6pM9_7ou.kl4ND2_icM#6ăU"A^I^c)JnSOslAFt]j[dpX.kgWkE##P?/dp)Qr)*Jn,]gu5J2]smjxaKlHt]/5BPăU"ThA'SfCRa+:xSg;##72BL'sAVs?;$GWMp$fESqLwd7,i3sqGZZZDe8qZD3$z*qDăU"Z*qZ/*qZHc-dns>?H*:L>XIG*n]ll57T=jScYZ:ZlLfql:j7<cOg+JF]YnJ2SydăU"TjlNM4cuXmM%k3+xR+uD$n%U(*4Y;A.,d-Ap3h2S(/36p-_r&kMF_JI9*.dih&/ăU"Hv0Cfsi\^Ug'>1aXp9[UKQ5)Sc;F*%1%-g(T[I>\<90.sGl.GoNm([OEF;=Vb[:ăU"ncYE#JO4m\#lA>U1VOimJ0ZPe#Ui1/S)_9H<Mn$c=IPG^r^Q=CnJe2+13I>AQ^AăU"JvL.uka4=BO(53*1'/REY:Ci8eX9oqIW?A))oCw7GbI0-v)&\lO7AmoFW5c/i^răU"%qx&/$A#7_/g=[K<m:dglipQ&oy0fd2ecCUunYeIWAyV.m5O:Dtg]q2kdan\S5IăU";.5T71+F%%g';GpUIkw*Z>X$\6n&G3k59F#M+zcmb#7O.T^y8.5&UsonAxWEK'=ăU"<[q%vCsm_>QUSJ?1g18'M;F/o+9m8t*AOL%sTaIvos4rO9>91#q1\+(d%:hJ9WVăU",wQ#:MJr1.K_Wr8Zw7m4l?7M)b*?[[]Z6z&W)*xp4HV:]Gfq]-?xw$7-4rP2^fKăU"Yl:2Vaa?[\I1bEa^K22fKhm7DVb_qf-_nH=>D.7D<T?[7^2^rKAcFzPlCew:]pBăU"fF6lJ-<EJiHHi3&;k_cA.CdM0F>8==i<Hm9F73A98v*\aOok>e-C-1YzxdGPC%găU">kJIqDsPL'X3T8^?C3UlGd*6WtF]\CZ;dO:pY#5X5*lvTJe%'_t#DMLCYj[>W#uăU"S^8'*t5x)ppgkbA'N+7W_/W%4MVC:H>tlFoY#Y&fh&^=K]em%.5ejB#HnwnuPoCăU"T2K>z4G>zF3&K#H]>02i#)lof\0jGJI0Jq#K8GF$kRK?]/Tug&m).iGd0/1u+)BăU"b4j^-DO=#h%glE#_DG$[:-e1r[=#6Pxp.%2oV<EVK2K.3GS\\W%b^WeT?TOH'[băU"BZ%./aow:.\e?h(.&-H(CXsp%)Is>CG$-t.U3o;/-pYhD\kFo\2=(DArTSA'O-+ăU"22]s?QTKwGxhrSH]YkI?JVRd>eK9E<O6$-Eq9>%Bf)5uQWqc2<)%l%FE^>qO?,DăU"9sf/ti[_B%5:)gErTL*MS'*JrYc<dMC^-C/7NR^[UI/A%/;_[516lg_U')aQYfKăU")*^Vw+/B=E;&J?RUzkS_r9AH&4EMWu4M>e*e((K$/kzk.+P2&yd'=NU&]l*8YQ1ăU"L/_WW2i*UW2la+QSTf4C2tQ2Wbru&>n34+P:SrYIrwJG2DhkJ1-7s>Ht7lh=:YSăU"/TP:rBYd&T\Z92Y+h2$tJ(<-NOgmb&0b:Rs&--nG)(G9Y67D_b,\n9.[lISbQlQăU"ohB_DPW:HT8P3NbOr<-LpeZDFebiw9+KgZli:4]l5hL_lL[_v,vE-E=(o4:3/lMăU"_HEq5y\qutce-3tDF<9;hpgXSJRus:soh)5ih?cc[=3:T-<N>&\7_($-gDYMd5măU"l/h-Asc#X\Pi3svMl9x==;CIP4y07.0VB7T?LR7l:6]Hr_f2_E:[.o%$9?;CY*+ăU"KUjfoI&Z-d=:TQ\<.bjdbFm&\&-[T[O;.fsGaBc8:pd4LkF)n-PN6UTr;B<<1M>ăU"ok[oi:8.,ItRQO#Uf6>S#eUAE]$ZagXxs,0Cp1yLmutfq+yP_7w0SS3.c9->0>0ăU"'&rJU#]/ZW%7uGAM+v;pE%vasf)C2I34$CS8#F#6[bJf1>m&9oC;AS.2Vh\='#$ăU"$CH1-T[v7.)_fM1:hFFgiurTK_KSB;^T#n_Z3W?3A\7ZZ&?%7uI5VApk&g,0AHtăU"#Bxe7V4$N_g.p_nIQ+k4.egZf$qU9_%wX(MoLfq1)y?J:()Q02=Z^MEI)B%+LH8ăU"XB%yPoi.yZ%&Jox+HA\9g[F6F5ZIv3qm2oOi57m1/VpMz=W[oR%OIyl^..ih01aăU"*RaISan_c'*A]k+5N7FN:Q3mCN55TAm>C3L-?t#+EYJ+16r_98QUHF.(u)e>_)JăU"lWP:9g9ks4uCBCaITo/aOIUyiRP[cGC7:<S0CA7\rJ7dvI/Aa\lm\4SPo[ftk?5ăU"g*P?YPZfYJFXjj]hYZeAifvQC=HWg3dER:BUl5kDdXV,(Kh1A%<iLQg+C0V^],LăU"SV5f^c4Rtx)VIo\IBZD?I^tJ+sHtHg6$/VghC7+-;*pDh'ahF_9eNN*lv)Ws7)\ăU"2[bqwXK^uW[8\Z,SU7Sj-Djfp(inAi$GgmfV?'b[H22Zz^,rfHdxhHK:0I$1.q8ăU"\Y-,ffJW'9\fTLZe?FRfoZGIHwULUq;-1g0:7-$M,Y-]FSvl9Z,0GeGmlx-8SeEăU"&;$wn8[l/W_()0eP^7Xc=.YZ-]s/-mG_Ftp^Qlu_f0:Z,?,9P1pJr&RO.'A/'/SăU"R_+k1E(9EHSyQ./+g*0=+HU,#Oil+yF]iIA^9wH)I+;&g-RIRX-#vNBTbYCuy=OăU"X-KjWB3u(S6Jpe='G*WQ,kKYydjnCm:(UZ-BX7)PFkAmt8t:O'/9(CA06w$.(.săU"-M%F5qE;Vk<A&G*Fh(V['I\gECC&qfkr[b&S9mW/qjI-5Ro0,=:-^a6mQ)OV6h_ăU"pWt/&Va;wO(1V'57AlE;QVEi(e4'OL44_V\G:O9%%Nl%(/aEh2\$kGU7?>7o/]săU"M%wf%z%WAw/2y?av'E5egRv<647.IM,V(k=g(N3=jd?E]3<2$OS*dVAn?HmLcmWăU"5o>M>,^Trvs$B+vJKbq<RmMMfamJS+nn#?K,bol3nL#bdm%b2X1,rk&K*Q&O&SRăU"udTSP%If4^*,E.HLU[(L#2L*IrILe^8l9oFf4CQ'BAOLTV:-1DZ8%cyc.dF1T-băU"(PEYG2f.F$D(bohH:nfETaoY7#)gS^xg2BY;$B,3pmYCPUMt&Kgm>#XICKt'hCNăU"P)N3PVSw($;0\CYp#90GVWhIB5ag::\ln.J3WkbfdN6ON$,pi$'sT,1gD#J96S+ăU"p/+nVfeEB&KMjdExtdoUh?To:ca,UTO$BDac+qUCP'_DbmlNM5(GW.B^jS]<juDăU"j/Xi2hJt>M'$U30gBs_hWc?:2]C_d-JRSjo#gL\i$h\#tx6/W*5_DaV05qLKBzxăU"btjl7.)G#]KL=Id+Wa1;DYU78%%RZ*XyDildP%x?#'%rw+X9GhpQaj20wuQegKuăU"$9jU&LbOEDscYeCjWC)[/UWC(rZD%go>12Ep5V>liO[fg2]7m6AGB#P2aam?D&LăU"/'[s\mWC=.G='-9&<=$9FJP;[idz'<*dG/N&XpeIm>?#nw2nES:*)^</^lkL$zgăU"d?jP;Ia0>$GgJTpc')f.r[momu..QRF\v'?E%I,m.:gc+qI8t\3/[O0AAo7F242ăU"9QH+BWIxEG):9&f/U<0+FvQgfSU5)_\l+4jx*'#E<&K$]nF,2m1]BASgio.%=0băU"JR=#2FQJIuFwSj>.p2gY<AI;2Bm7wyM/_$(_O#M#8xu5'VUJ'S\B_k.9n/<=FRPăU"V\i6X-+TE.?s2Ve0S22_-Q>k[9_9hnQJ>->)1.;%UHjr^T9myx]Yk*[cPGrm%vqăU"K95Ws]^P#jNPn(S^x75<YSD]u^PsY>*89.sTpYTk:4)bBw$gfKMr;KQn\c^dH8;ăU"lR_DXHDkA<3c7Us\iT^/8i7UHql,;3Cf&BqZiqJdhL?^t=$d/#Zh0KLTox5+vfZăU".]PqIwglrs38iU)LjD-:MLaafV4G\*,3b6(8LUaA+/FPGM&:ph^G/L3]^SllilKăU"QRZ%7-/TZl)6bx[kut;T#*x\KChSL7q9ztUo24:j?NYKE=%0i)b>Do4b#CTB#NDăU"pKXCXu,74_1ILnnR#pC^Glp9=O+.\+>3AHP3>f'EI*b75r-S,(haYf[AN;guopXăU".5Tl1Dv+u1)gor]/2F'L*2e0*]d*;8gmFV(L2Yyo\ux9W4&o;YE-B^.#P2E^-9uăU"]&5.&7VHR.w-<egN:U\eRJe-V3&YjG:,X)<Ij4rRUAWj\-n21nKhTk-Y9qA8<cWăU"?=0\kipK#En2F/Y5ZE%)Q%k#yVjpMU+A6J<e^H?9Z5uJ->4xG&C&z#^:V=+g]SHăU"+Je=KIo8yTB,'NoOaP_IIq=Z;7dwQ.-f%[s#xJI4%m7\CA8D.GA6A5W)'tHa;QOăU"--a]DM\4U'Dkag=*+AS_OdYQW3OC'*hp^YiV:u)?SB7u#/WBM-BT[q.Dwnr<1mAăU"cED]pMu6ls?>Q7IE_-^+l;vj15$ex]c^jSmpR&,/+>u:k_C?%M_BYA?#2jst/D1ăU"I&OPpN.[s0rJWYm1e<HdFH&L3A.iAoc95V[=hORSRZ6?fu/,SJbbqoXRXL#O\u#ăU"7jQR\Ctt,Gex4osB(hl1.NwX:K^^EM.;5r0*1Eil_lGqJ[#7j1Rpij1TH0al\5:ăU"P;tT>]a<9\;+3#Y\F_iFc^A3H^#<)#k*nIAq]TR6O++0GNep&ulg,<0qDo4_m3,ăU"Bb<dTX,uRZN2;ZM(8Qu-=TUSiaac_KU4q,).DFAV,(o0U4VSn7ajf_;5pW?2XGfăU"eTk#?gCdK=JFPRff5=M=dm9[1r<Nwo4lr\4vkZxp0BX6>ePuHMA>X19hr)8$j+)ăU"tVnv>Rki$#pC#lRZWd_dn4P+=%Eo+E%CwJAPFZVlg5'LL)/Wb#f(M5goW9*WyJaăU"O]\/d?#'#1,eH(RTegh)UgaiEnrN_^&F--ZHN+VUATb(dV6n9v.&#J^=Rm\Z:n#ăU"59wk/W;<As#El%0O=<<?%rN6A,S,qE=x>>-C,1a^)OV0r8w2>>F2.%)a8>1-IiEăU"qT%hgN1<6d?v/V=\daL#%$SGa+g9?e;iq:x6nNUI1$JZ6jX.(CVb3aS6k#nouC,ăU"w//_gr3[S:fk[')::NxOUu*yH2l;U2FWqP+ZM5*nx)kQG)_M&WWA_HK=(w_t-QAăU"g2GVlUJSm^O#6qlFb#fFj7;-$blpSV%\pg<V'NN6I(+2+;0\mD7oG1pCDSqh1(8ăU"_np8X<;eU(kY'FeZ2DSp7<d%Kzf'TZmQ2cH?HE1UCY=G.?'#0S$<MH;E7/$)RI3ăU")d:p*(/T$>E*?=j.(]R-J[>S0.fItQJDOk[B0FEdtmlAL+p_nQL0)Y_jlE2ba2,ăU"M]NP_74%('gQ&vC>?D/*4S#Vf]XH2^IIVaf&/1.2W(>;;7KJ%mp;k_L2';Q'Q/3ăU"G;_u3K'u3djUU*)eY.f)xC-*JG178;oc?e*GpG&+Qp1j3H<Z.1/?w.'q=6wL_YrăU"SDmJ)c,]ZzU4uK8%RN3Io(&kfh6\E:(%o(.e(;/J^0jf;9U(.#V[5=zS^uw2M;)ăU"Yqe2OEeEd1>sKC]1Vf\MaWWIgM2Z0:u1M.,E49l#;8=#IKu([)2<JG<X&]LgH+9ăU"<^s#'EjG\UH>TcUdo=R\X5&&4*E9kU8a5sE1%QgxgMw%S\UtCi7WKD6=J[Hm;YGăU"$L+c4E2k^j#10J)IF32XIY.g001&47'2&kjenUx9;9R>oji92E43(=_8_6]<Y61ăU"T_r-XW'6\RHJ]W]<>?ADk1sBMyls]C#v5W;bWYo,G;E-WRL5R%j%,I#+%gW[.eEăU"*:+kryu:N$_i6p9c?b27>:(pe^mx\h#8/(O1d*yjv67p25Y)Ff*<p2cWtFh#%VBăU"OnYHIwSEq%[6p;2Kr<%OI5Zad0\XlQ?rN=3X5Q/ZT<#dT?.KLY-3w$PG9XX:V5yăU"WSin&DWi=Li$<&__ySrb<\$/if><GZA7^-=/-P,YQ-YGKVDftgcET78QMH.=K]BăU"^UGe2O<rAO5PKS-y-K\vK>LoM)M^%iN(VJ>k):#ejzunJjaBm-D%<_fJfOx_<XuăU"P,kZNjK7:Ac,jKA,x,dj1Nzc?.4kYh*yi#S*bt/&*lBEoJj]_fS&m.CD?B.SdyFăU"&)BL8Kf7Y<5:3[hHtzl,B_K),P2eH.dDwI.GuZN2($Gz:/$2iZ^oil0CWCIrd2xăU"Xo7nL<dgV++n$ccNaWsl_P)FW.J=P]?p3_MLPL-COc[X?\LH^VUORoF\5E3HpRhăU"t:PwWf2f?&)EM3BNmbH*T[/:B0CaS3gOHE(pQ\T5KS;HKhl)l(D8Z3t^(]\(q9DăU"W<X0emT.hbJHrhGmUpWFP:')W\xr7ed?1KQydsD7/U-m]sA=nH&CO0NG1GIl_GPăU"pK7lqM&r#:6+905l.<ILC^m*-_7_=Xo__YHX/<)s-C*K]c0b204FCUZ%E#(DhIsăU";UWtP7]$xm4u%G<CK5R#+s<u,CuUvSrlU7LEl7Rfkn+)<F)/,6y#1s<hZtoep5DăU"INY.Dg?bqhVO:M?zBTo708WcKD%,oop&GWN%X.Mw-V3\=VZHK)W,.N_<XFg6+*_ăU"N$)lFb6]h&kKf(rrr%$_Xa/3j]iqXKuD&G$?DuU_g==DWu6wm(YATkf[]Bb[<q>ăU"929Zntrm4tPaZ#Qv&6WGX4Bj<\j9pu9#_#sbe8^o:^WwwF_L/6Hs%kZL=G,BLDWăU")W#Q1y^j00;\MtV+=umc=7lIU>rjV]OM^id-_&G+0[1k'?FtB-[AgK5T=U.Nh)^ăU"ojX+HsVmo_bKqb,mVyV:F;+mcWcp1aNI^[^al08ZFQj_6(>-d/htDC1oXHa)d)3ăU"jQ8Dz/:/fnN)X<cN*7jT7yhb1fe.hH^nNuFrF2Es5b'[T%%i]?[CjkZ/'g54$2PăU"_k.gldQ.*PZlnJyd:stQ&NcCdt['Drdz<<-E;E2D>Y\$\bxGbXD;TrilVuVH1\4ăU"zxeCd.de/xE.N0lNB>--G\D^<wac&lrbXj\u5#QAO05&o5.3t3:o6)xKR6:g7I?ăU"d&R8iT4;G,.3B\Vbml8Vr>#r#C[qe[;SRke6[cGpXbWooLamRSM/10U$Lx#cscDăU"_DpwWadMljQ%bz>zBeCiE4D_P7%WKM%(r:n0dTI#?:G8<S[IqP&<&oUO<c_eD.1ăU"p>CK_&[/b\*DiV0m&/Y'CK70:j24,OqA,TnVqbFlS$2,s$9-*<s1Wg+$W)#=8.păU"K\A?W8WkKe%I:7sUwY%YA^3%pFa,VS(9R+86FYG)-%\y?Bf-Up.k0x6*SGe%$^căU"0A:v_Ah#EBygIO8Yu.ueXhAx7pW=9kWE.0g#+&VOh_<dxJ%gP=x.KWF>t&e/uL)ăU"?_ScGlYatLw?(UAqweX(ulVyYOq%R%Gq_B+oZk_*;Ohqbd.^'aB)mbS_'I_L/*tăU"T$Z%Uf_PbA2)?-E6gDGoA5:>C]0?(5-(:4;g)=kJfM-^lDfO0YF_G3=::;:f^?MăU"CQE7'LIEn\1j;+/(F%n-^=\;Bvj>7SH2<%fe8b=31PF&\fFBBPu7v7BzKh>O.\[ăU"Fc9)kEK+eL8-U%0RTj3[MwL^/T%,NP#lUs]?(_N-80#DCh$UdXd\EeW.D5zS&BtăU"eQB6:5:-dtse=Q6x&n[u7aKk%U8l5?r_30fGZs6-*6g)QfM>PpFPQ0feI#nBY$>ăU"X?,n^hqa((:Ui[8;dQjWOKX^ihHI[1V3#kNSKz.3HPyk[;6AKNSD_DbBb_WAmhEăU":1Hw]Zmpam3X++fmf1$y'Y\%d';7=4JSEl/*Us3cU,8Hh_L]T;.dtas.Oc,,F_3ăU"<BeT'uv$_<vbuY-dYCq*lTLKoF:eT-4:p9phn2>P%g,2,?+,b(N4sb7&$+k=&(jăU"<_L-[Zma%CIUiJmMZ;rRWZ5TM$AiXKsJ,fr9A3&0?F&t/<.ZkYr+WYU]oA+Run%ăU"-'tWSd;Jp;MM=P&D[1)iEt(A9$D9:p5+isp]'I\6]JUPKXR-Xx]R-'tpAddq6gBăU"5#-n'xdup%()9%%%%-%:Y//Q*M=R$'[<%%+'n%%%1%%%.yj'y.ufMV%SwyWNf,<ăU">oT]/wRCExPu969E$gE/6k*cKQcfdshVlE4<'o3SEA/encE&Xqy7I:##Qq8.abIăU"*IDV]c1XNLzoXG4cAau$ZZZ0<<x\sc^*w&f#dK;S2;6ZqkonmTYj,KjF5XKs85BăU"-V)2d:4DYl^M]Zrg\TG'M:u(,K#mMbU^0GRLy+7MFqB71#d3<_+W=jgak8?Y(G(ăU"G+^cq:qsQhx5=6;3Do,z;QG]ipiu9m$F*rh5W*uGnGji4(cTYZB8;QwEyh46EDsăU"[Ce7*%f&n&ZGRd9?n3Hik*Q$5$q4zex$hbhU*etTZ0q_EY?f=9udtVmq^qdY.>8ăU"\jO9gfXhYh_9;J:vsF_g,Bv'SSAIz2>SNZw%rPr)WTVVXCct:,('X;O$f2#i.CtăU"4rdq]thMuAJpaEulGC2()1><4I?C<6Z5QG:065',b_dEwQ'Y)%NO9W&,>LY'uqaăU"';E.p^jJlJbDoM7\QNt;fCavTVm*mdL\&g*9,B:?9lw)gHSdo=&$SIpqKT%&-fCăU"?RBR/xJ5vL<V7RI0mOOD;2M&p<(m0fTU+6(6QT=PUsu).L2jPQ)Vo4'H/bF^pmFăU"_kJUEo;lps'*&InCzTfIvWIcS9q6,nT7M/+gDnBf&lzHoq;7+<o,&76Y/%(t5<WăU"bp4*h%r;a;17-_ossTQsak%5SQ$)FGWfOt:b$&z?opsoSs/9R.fn:]4jPuov)i3ăU"8z,6\(\]hw1:<Uw6#*7#6)9l'eCeZvv*cq<'be^)Sk5:Ps0[6g=SkJkP3*)m2]$ăEND SUBăSUB V5ăU"\rlH7nd/.L;cegk2b<3P%yO9j%6Fn.o^fs,dtvsr_B0<OTuEF$i/j3Q\EXv3<HPăU"]G=(r&L/ZsAl\Et;FX'HHEDyv#=0,CA%gb_+]XR8n3oJngAQgBq*bog>^L2#p=MăU"GU;%H?PN1U0Sq\6)[:/TuYJK1OM&nF9kYREMVQRk8/Ok+'$pdnUU$=,VJD^0\YhăU"T]1u5.Op^nSB<q(MoE1D(khTe/6rZkKS$o9(<\-j*Kq1r:N'P^S(SpGtUq>NY^*ăU"UJw7gllTs6Civ&yNq3./k7??6.6i.9LGSlgW%h%%W96-%NKQ:5cU3caC/\2**$9ăU"SE=gljuX*tT;nE>5'ty*+1$3Zp<uh(o4Ndwe6d3301,rM-ZB:'\>u1lDcRt_f;^ăU"TRF'5Hgj<'5tP.<UlcI'rEoYAnE,-mr5XYE$.u>h.db'SBT7VN1a#X1D,n6]K&WăU"[b(5$S#?o0n'5A+viP1XuR:kP]NU*t'6L39p[(YT'[c/nvXU*uOb,Sf5TH9g8mqăU";W;(TN;p=UXf7n*g4?ZEPEvYi:S?F'ZuS3foC-s<=tLjq&O7;[Lilu#ctu2Q/;ZăU"F56glHf-9YMvi6p9v94K1=:I>k[5s=jlML422zVy:YfMDUwwWL4&pWh7a<)dFIrăU"'B/jrRz>M[ioO#8%-#+>']CM<p%]\/SU&W_^U.GE0:,gz3N=^9G^=FEbQW#A(0^ăU"8>XCN\]C*u*-DvSJG>-MKc%f92#8Kn_=Nkkqnp\YYx8(9=]JVfY=<M4jBFR,9ASăU"ci/4M9urHeio.%.(v/FDgqPcHscT]=h<%T;#Dvl\wz<1E5Yz.+N8U31NV+T*84UăU"iVqw[*eQHS2eExK\>qkNzdzX6_YG'\Ifw4igK$dhm;=Q8oieZI]]D%vo]lkSh2TăU"ZOk3MfNUK:m,Sc*''$&QRGa-P=j=b6+W[#Gu<#\_eKJ^tMwNgo5U_Kx6eGQru)KăU"(,jx'-<LJ=As4)r[)f7F.S1reKIRz\&Qq]VI=q04f^:UPoh:3.]PRkZ,0as#U4hăU"i'SG-4^oXp?:-Z3B]Xi;0USrWtW6v]mU5W8<=Y3;j0Sw18:UdH)-h1hlQRN8gWUăU"l4m8e\JrY-).s5\d.hYDw;d$?J]7U9E_*xOKeRp=WvZl8b,dJG]N.m#W&MmFKLUăU"+RGECbfPn3Rl'_g'M5=IXkjg('d\XDVtGsEf<Ws^n7X\>w5^Y,8hBjgTc=UK_R[ăU"V0Xo2rEfL6hj<]4Xt,k;0n2>H?EV>;#OK][[60bX1r=/<G=8h#jWTaiUK[uoA=FăU"h#;:_>9'Nt<UMkQNPh(m7\R2rNE<1=L8Bjg?T=UK]_[V0,X2b[_BBZ<mV1TU34(ăU"y$N'8iiR$V0XT2rE<D1=8BqjgT=9UK_[FV0l5t=3_a8]^La/>4DXM;Buj:XdlxVăU"t=#1dRtd3_lnB*T4rM<Dq=8D;jwTi9VKc[Xv0#sV=Ub8nmZLprefc'i^8]fabbzăU"0bX3rM2<q=8hDjwTaiVKcm[v0hPS3hih=He_iaJ]3L^u4g&eRO\jv0X3OrM<qJ=ăU"8DjbwTiV+Kc[vQ0#u=r3<Q/l_eH5:ynFaQDo+<Dq=8D;jwTi9VKc[jv0X3OrM<qăU"_=^sV=aD/rTVWp<hg)i&C#UXj[[qLcR[v0XT3rM<Dq=8D;jwTifVCn3i2]<R>m*ăU"$.NLnCF6_R]$MlDjw9TiVK]c[v0bX3rM2<q=8\D$*c[[XbF8C2rd9Q;xFF;2gcdăU"K69u$#'zKiGBx&94FBVd<z/NQ:2])KvGaMLRr.:]tIj8bi2l&pKt+FTt9&LGYNgăU"3<8i6ll&WIgV&Box^zV2tWN5v9unTqsu.U32g$IefV9]b9qJi9T;Z4bJkJS*dQPăU",<Fi_8qEUb93Co3)#]-?$.ta61eP0u8[i4ODRdXuA:6LCRkp^-?'_%-H/^C'KvZăU"&Q*oX%5LNw4K<kT.-*>EW?:i.4U53),ZUmKj:>\x)P8SWZt4A4X*PYDSiEET[emăU"6]6BK.xFhL1N#nqd)Vji8o6sE.K;'fFl]Jzp?.;WUF&41JH1iSXQ1F'fe&qmIW+ăU"p/EK8#+$mt)%7%L-\g2Y7>0?#&NX<3L%,UFID1YNSfD;PW%g4_)4NQ.ZA>H5;o&ăU"nCi%Fv/xDBAHuZhS2rWSgKd_Tk8bZ;cZ3GQQ\AQ7l:yW+QTmHER+9,E/LiyY9gVăU"pHc=TORGSS>LK<jLB;RUgwQ<INDabrr7KqHQ>>pgxa'=K'(?'PgY6a7sqLW^lkjăU"E$)o6Cf%O(q,WCxCF9+#r]ZErR_h3NVdoN4AQHp,0*5umBPYdj<D'1e#UOT2sg1ăU"H+5CF&]T:mS-8.Tq7i_k4;''9T]G[w5e's^hNL4/YL'jP7i+F7u6pJS[T(oL6<PăU"cHxni[O-KRaj9^O6PKU#gC&.iao:F7l];0Ci$oe28Bii+WqOVa9<a^80/u17wvVăU"97K=qq6p8UWj,Fv[/f*UJKwgpCJXuU4UPY5S/U4(+$L;&^O*GfM^1TV=+L2Oo/\ăU"?iTG;C>v<BK:jVMAQa&N73X42AfEur*g#9EYu9u[2'BA_PS1&sST6K>.mZr4p%2ăU"W3T,Uayj*U(mF1S2ff9)a)(._:-B/^XdtD\%T#%8k]9f0NxKp8eiFaxVr$U_uwHăU"w]cxgt':Sz;6;]i0Jqy/L;<o:3**o%A4sF$#E$)IF4d*M._;GX=jDkoYa:z^LM3ăU":[R#?irf$0iCBo8qa].76:o<V/r9\(EVo(Mkn8=DsTCQ7XTo'3RlC\AC2rR=uL%ăU"%MI)oX>>c#Rpdr[<9kYFfni[,=N(_#1TjP(<$j8;b2]&uHu&wJ.sg7t\lG%hu=YăU"[[x?w=Sk1+:0:V4x)yb8IkV$39>2i2xic;E?WJ=Nsv(*;HTWGF9*ef1]tV>pq.ZăU"TF;o*pv#&il+TEHYS-=<WX^^(ke&&X*SGm#5O-p'/r[91L7>rS\N8Ie';HI?0K#ăU"=h,qrHi#Z8_-)0G#Cmb9pm.[7M9\S0D?\UNHJdGv.-2<yn7e#::CfQ;3.En2EJOăU"h;KX#UdK9sz8+CLc2eLhxXgN5^Y-Q[3FvRKIgr8]Q=e7A3Mq/\Iqa;6[<e]V7tFăU"5ZR0mqANB2Z-+sRM.?K\f?[pHMSEq#EZ5R*$>W>(vP)e7i_+gVF-kLSdFbj$:KpăU"JW[WI?gS<DJE5_<Jm<B7v3Q%E2<l%2X2,pv_a^meI84-\<r:;76/8R^2R'cvUVUăU"(95p%I4n<L;=ZK=D?Nf8eEq367W92J;I0J*Y^OV3)L*szm>U?adt^*uTwO$k;/EăU"]=1Q<b+WGi'3hc8%B/<o-Ht4?wAavF[gTawK=juS,ZlP=q?rIf,8OCK;=IeTr40ăU"_660W?0G*]G:1$=S=0b=hqvBc:^-W7$l)_MBSeKMBe?MEOhDw2SE0RQ/R*kTVN'ăU"rh#JPTFG^Is4vT5s(r$s.eLRzH,)l:+YD\J5aR<g=rr(.ORwq_0Pi'P9I(IaA%3ăU"E(5;3cEN&+S8aI,NQ9&U.]F.Ne'Rfgi9B(k$ag;nRX;:-Rpe(Saw5dJQcDLhAl6ăU".&^/m)KPNE)KPM(d0vE*+--m=gMeYW/R-Tn+y%1*tw'T,AylBsDmCsyU:s$tTu%ăU".Z7*OfaaI.9n_4/sBs/D3B3>y[Ieg<u6*x0.U/(.JI%e.,VJp%Q^DSrqgdnve;măU"5n[p#1U'1#vJq3JxfYee;i4X2Z9+F.%HX6#Hp)1()Hs6U84$yd6V$>'$]'.%+5(ăU"IU>HR_6TS5N8Q7uzo;<H:%dU'IDe%RP/;10B^1aYZh:8;GU5_VSmb8rBDHJo7?RăU"kHO[/H<dPg1Lw0k6o^<'y;eFqBwd4Tc(ZU#_vBkGDX3heZB+*sdlL$KDN3aoM2văU"-2&o&/#SP7neh%ub'/v;.>e&IHFNA-KQ/T'Giw9s3+pNH.Y'nMI.62Sh]7uXaIEăU"G0Q0Ph+KhyeeK>xs_e6TU$BoFtH2at7$2tG^^&qV16Zqj<j$pN'lo]onE1*a\j9ăU"421]Yc4mv1JpA&(;1eU#'vz[#U''m%Q6E>Z;H99RFL=;(&xQrpWPK\>.$u>SGr+ăU"D0ZFnE]\mS9f?kJQpRx#)F5n7R\.ScueyAgI:bPP$0_g$FPr'EvMw*S:Rw?,:NNăU"<eM<7GP[VCjR%_-4F]KvDQhWH0IB6jv[t<h2)KnH>hi4?)Kc7lqoxKo1S3.Nbc&ăU"sg^.+CxKPq/i1^9:V%=X+s97nt&WUqtHSjBbRZogj\1e\>)?XELnnZAF+tS7*p=ăU"ni6^;<=[$(XqCmG7q:<2tq7H)?9DpC2qW]_5;KWEf2Cc3O=0[m]q[PmN=4AB_s&ăU"$1T-ppwNI'6o=''BWp8:y^,t,cbojH0TOJ>76,Ne6e*/Zs'QpKc6mD)'9N^ee3>ăU"PC#Jp#\Jo>Gu5HHccnFKV7zzfKjy2y?07N^'G-lkz3D'+,=R,k^K,.;Lo,#JEg_ăU"M<sW\JdoS,$IFt]Vflqwcb6\MIzc:Bet1X%:vUhO^7nV1BH0\sCDGlH9:29pN4TăU"<97.B*JRZ-pJ$(Q4g*&/e-/8NKpN1WZlc';VHD-Os8YxYrncm(n^<B>W(>XWi4%ăU"Lp:^GH&gqh11*D[X:]AjC%>Y^Z'0[^Y/#/6Lccj$4ZP*p=t_N3-X*4hySRqvl:EăU"2rSxhc;n<TD7+hL9^SYD:R)f3L_58YM09N76+U#HqlXd7tV8.ABoJ=>DPYij&tCăU"iPGB]P;WkwW-R#FPWUSYCI2EGb<9cEf+e':T1-HA*%JtMa8zZTMaK4z)AG?%MnqăU"._pHhCOj_-V_UVj>bE%lCkDnA-6d'-E=-?rTdi?.T9+Ya[>9Xr*e?kv*84k;'/&ăU"%3LmaThadcfC*9v/hD0guTGqb>$lT^H20&l6>c*<q_D&4/-bI*T2x]E>V40a36*ăU"-xPMEADpvkMgLTwJ'2vc;;CvD:LVvza\5ltERYUce%Bl%M5:t,tUDHW/z2<Oe8săU"1DZ?:4i\iXP4?xSVk+9D$=g:b9nIO;<mmYK)d1lTCYi.R]Gp6:Jn^s1069]A:s4ăU"Yqp\BZIsSK6hA\k]sqgtiXL;T-Q$p6<2AIk0't>ov7M^&Y1;;vxe(eSZ#t(3a3&ăU"^Q,TB7m,:EqoCS]ee4:[YQDOKk*CLe'm63&?zK4)[b67/W;7+^3a.49Xo97B(?GăU"hn]2NDJKt9fkX3YQqObnRT/?f/8_1++yaU%uL-aO4.W(\/Y.L+r;+&uQBFd;]&SăU"GRbIc/jb?XQaI=8dmY,;hDiGq*V.^p#ME&nLFst4M+_r6NF;r>6j4^VHo;*2uqqăU"tDO.?0AgSdnl2agioLKPEq3oez\'/FnZ$DhMI#F:_P1K1tf[->8hj:02yj#[w6iăU">Fw^PA:2%k6YmfC3X-j,A0evXVdvLEI+?%3CVX_$CL7-HSQUio.bB^snf?N/B-8ăU"JX%kH2RCi9^jZF+8G8XYQW6,Ax\>hIsg<IY.ndQ4VR6pBWCqWQyK0f[xkm5wH$3ăU"4B9cUcBr-\/4^9\MY/Mw.fgHSWb*(z;]:[61cL$xE%C%X_24X:_v2qZ:z2FNB-?ăU"+ln[b.#J^Zx%FAUq4Kx]]D5Fg;hJP>]VKU$aW3)ycK.GZ&a_PM-<'D^z,sGNB>aăU"<<tL5;#h\ZB:LpW$6N-bhU0TaC<HNfYx;<Az-zZ[MWCM].$JEKW6Y)Vg\jYg;9FăU">OJ':?jg)wlGo8vg?6QUM*$6ec0m2%G..5+]\NAdAY5JfB/ux)aa3uUOlfZ6X^yăU"+CSmQe2AiIred/I>C.[HyROcM#%M=60[QiepKC9>C)o0Kymy7t.\%??kU$bRcU'ăU")CUuIHP$$S_GF3vYc$0VqnQJVhl8=\tH8WRkoPld0/9Us1+*^?C3n0E3MUY[q6QăU"fsjc6XYBe)KQjTDb49(-2AmVu8=QkE>Q;PI^lZjqAYuID?\X*kbQmsqr/h\Cw7_ăU"nBa;%_F2E[S'xnmElpZs.)X7$hENFHI3VuJG=4>SWV3JTjRrpg656nrd%Z<L'\VăU"O3T^lZZcomq_XJ'Ji]\K(/_AVTPa^ghe-&Lt)'&PTBr]fHtBiOGRh7N.T^)n29jăU"?+$uQ&_0W^*EyWfQgHcBhc1I=$6Zm?t_pUkfgpYe/;XhTfE^^3=nGQ7:P]h(NobăU"#sw+V=#h43p\kMtR14J%I4;7iccT8f/l5BGtuClFRHqu.>aDf,V0dcMC:Nx6lp0ăU"r#\P('X;>3.[t*c64O63NZ?KaX2gBJ=id0_C0VInAw?B\YAD^_p:3C(;,KhKDmiăU"P9SvBOPum>?9PtoZUs4p)^R\4NX%H#<_TY_FA\PX.8:QQVxvR::ULJP;n*>_IRnăU"p]ifhsi*w)vNWm5^><Md.mcVKxk%DVf5tNZK=lmM\a.Dw1k%<CvXWSsSuXBEl&-ăU"+IDqB?[Oi5=L1G+'XLNp$36ufspOg0oI<pnFn3nzWo98eyhRcBec9.wo]d2oDzvăU"q5F6e/OrVGP*dd)0<H5lM<w7Zug-XU6N1ruBdKY;j$F&KZW75Jhi^[Aip,2/HA+ăU"IcH-$K'YUYNVOtk4<rHNtiWG&h(m#==M:Hz)_mxQ0PRkiE^e7Z54muR,D:f/]ibăU"#1ZDfkvqTX?o=kl(RoFu_M0FU^1tEfi6k_u<CT_)fPR=>MUfD.HOfF4a5I4]\RtăU".oX\V=s=Td4pty0tlwYuxgWq4YiNWUrK_rNMWO9ujTk6.QIt?d5clVkto)\0Q*XăU"iltD)(H2+i8bd4$IEHbmPd.\m]):is0fW[8$hsJYZIS+ASx35niLb+'46,>IhM[ăU"r^b,p)\aLUtWW2T0SlB(*nNn1g3h2U;O3dx*nRFbNFHsmWo8Ew'=]?C\Ht(\4[\ăU"nbuKQx(R6=YW8k5A$G2x5gWVJ<K4mq=r*i5)gZcBJVV7S:b':sHaZ&2q_NBjFfNăU"BjkK^2K^^m6_j4C6DpYp,c?rrHWu^6t=YBPl:tkmWXrGq%emW;dt<(]jVam'^-4ăU"/B?a.FAv5LF\^k%imiA-RlENYLdhkpPN$62'Y#rxk^b;hx_N'lK+l(HB>V)8B9JăU"Uk*kCXc>EUL*#*lNup%()9%%%%-%7#F'QF/[C^&]%%%'w'%%%0%%%.yj'y%ufiSăU"[nht>b$:/;IU1UNSV4)bi$ab0*6QmDc%HI4W0^\H_G^n3.2#UW=fuKI#pcMc.&,ăU"X5_IxlUa$Y)Y%Q>IT5Of\3OPvkd\3,NNAuFDtX9b30:$/'r^h&w+eRB.s;Xwj\\ăU"qBc?5:\<;;U&(]OthKEtmRreuu-hw.2dwDh24HXh2mfpbLkdr7dPqX%tup(%)9%ăU"%[%-%1b:/Qm,cAg5#*%%W%5%%0%%%%y(j'yu%fiSxIWlT&3J=r]L9L^cGNYJ>NRăU"WulD=FJs_tPYE)uS&WDl9_YD+?8z>/,?q5a8.#I-VxpqdyCphkJKgT6[InNp:68ăU"ZRw?#i$z.<E:FmB4i)#ZiJVRZlY$Rf?S72aK:Xa5I%D,_+g<'==D.(E,IH.C[3aăU"o[(G1J99;(DeTU)Hy2.ig*NlWq[PX1xXR12?W:6yf6ET8E]>0%6f]9//l:K:fTMăU"\';KMFBJF=Xv$-)ESqGea/>RV$qf]32Sp-^?B/ZdCu'Os6QZSd$z0:[\uIE':^(ăU"n('S*4$)lV[)j;Nmf$MPrEa4IdUY9+Q(BpQO*QkIV;s42<di#RPF)'VyBmFZm.jăU"*5A]tUJ8,06pSDFoJpk\SL\8iXC$(F:_60HODT5Q+9(&8<;(*AYQat5IIdT>7Y<ăU"+&/U\,;5ru'7$<Q*<6yY]n^-fN#\>Nn*$7vk7409r4:[\a8;VRW$d8IljPfoZk'ăU".K*-*p\W58&v?3'0'jd59b-<x/ih0;pu+bA%D$tdc6fZjh(SKqkSIPcF<j^_AnCăU"Ek+(O'k,tk':4&bAYy0\Teg/0.*giLI<TeCMQ]>_TK-[,U]7c)vk4-'86N9j'3TăU"EB[*i[iIrkWdqmqHhYk$-Lis7LAkCM8*;d'(5cBP^N;KAAXiEI*ki:1lu]1Oc>XăU"p]C0*93#8#D)]ZT,8.hK_pqKTpLxgtNz_:r-Lq33/\qcN<5*d)?tZQZYPQm=fE_ăU"dMnyfA6IFCdsn9ag,,nH<r_n_C?aW%'v1,0fWqS0Mn-bi.\Lg>dFo0'r2?(rdI*ăU"Gul#nCukv'^(??sqQk(g%h^TM?9FqI;v6U(#KM.*D:YZPVTXHbS\q3QSClN&;^uăU"Ewa_G[.1lB<LtBdg=s?_wH1kfwm^dBJiXbIiP$+erUVm(\[LrX4PwA&C7NbJj9PăU"Sa$6CXhkl%q$R4Z.sx5^)g/#F[&[3,dYfGEEC(Jx,W8.Fl0b$9Zb4;3%lMi<LDIăU"cIy1$E%MUnB#D5Q>h9leAMljB:LFkmf/mAMt3t[VJ-\bIE'mL0;5(;QqkN5qA%6ăU"%s/D2uCM/ha>(S-a\^j[$/&*D^s>>JI?XTcCL9PkmE1.TJX3-1c+#.ZV\ys%mdZăU"=dg0n-<pCWDYI)C/\tZ0=$3pJQG;AIh):UH,4h[QW:Oo'HM;gm#Lq:UGCQVEltgăU"Rmz;SOV[dM)W]-kKLB%S>8#l/\d=K;P&^&;:tO*1Qa;W\Bhjs#*fJ0]x-bL8)Q6ăU".]xzn-+.vSM5JdFF#-/.f^UGtA347yg\o*PKSnApIoC$NJ9=;Uv7ebJ3opL-4csăU"BPA'4pTvaj+>#V4,c3X>fXhux7phn-W3$gT]Npoip-#a&;vH]g'zNV=(pz-N8B$ăU"WD7xhll<8xAh8)T,S0H=:s199ER6q$/7D/y+UQVY[>zJxr)6dI3gw)kNtz-G5.tăU"z;R)zP.Xn:=&;Xy$2ZO8pR>2nhR%-/.0.KuCk-22)Ojw>yuOe1mE$].W3^i%>=QăU"SN<nSYqbaojM;eC8l;v[pM%8'ZL_W(jHCv'Pi#mAd;HukX(pg'Vdu_M4Ym-8+W3ăU"iUa_,m;%K]M,SO]KFBr2s#m0Eo-J'Hv.':x0Vg3Vu,4-q;Bx/Q%JM]*f0x1eD&<ăU"4s5csH#Tp2L#'Pr[*0d8cJn*sNup%()/%%%%%%:X//QnjHX3%;%%%%;%%%%1%%%ăU".yj'y.ufMV%ShsyI_g0BA4Ey4DGCu0J3m;?%Smqu%2/up%()9%%%%-%:Y//QH-ZăU"vn'P%%%%b&%%%1%%%.yj'y.ufMV%SmuoVL^:9'<U5i9h'vhG]fJS(YDnf,VQv7GăU"P%z&C0pit4=%eg<)\&wMNM4bnB3D9iE2e2\OJ*?2L?%e&8v_L9O#GILGoUrL-LNăU"<N8f#[bkbgfN>9+<G%TjaBb]h8R&n5V)0yUI[2^v-%r1rq7;NKwdu=r&'ci=7W>ăU"z#yrtxXu_3Fzft>jbSmR89R=nTty7']Dpp)gdGuCeZeXaBKITG]4cC$jKLY1qCmăU"l+$;tZ+1bkgCcelE]Jd_0OXkkaBMVJ>HXw2jFx\*2<UVl-Gw&u%p&'9%%9%%#%-ăU"%i&J?N)c9*PH#;%%v%n%%/%%%%%%%%%&%%E%%%%%%%%%wfu%nivS%nshu%p&'9%ăU"%9%%#%-%PGi(QP6X-Fs[)%%V%3%%0%%%%%%%%%&%%E%%+%p;%#%yj'%yufi%SnsăU"h%up&'%9%9%%%%-%%<fFGMwZ.j&L%%%'o%%%%1%%%%%%%%%&%E%.%%=#%%%ji%năU"yht&MVSg%ruup%&'9%%9%%%7-%\c%FGb,/lE:%7%%o%%%%1%%%%%%%%%&%%E%%%ăU"%:A%%%jiny.hzMV%Sgru%up&'%9%9%%%%-%&EBLG^[E4u&\%%%'o%%%%1%%%%%%ăU"%%%&%E%.%%yA%%%ji%nyuf&MVSg%ruup%&'9%%9%%%.-%IhB(QWm2Q?s%%%%_-%ăU"%%-%%%%%%%%%%%%E%%%&0B%%(j'ny%Sgru%up&'%9%9%%%%-%<Do(Q;?KNz%G'%ăU"%%d*%%%0%%%%%%%%%&%E%%%%PC#%%j'%jhzy%jSgf%xup&%'9%9%%%%-[%_h(OQăU"tJ;(u;&%%%K5%%%.%%%%%%%%%%%E#%%%E%E%%f%gtzy%Sgru%up&'%9%9%%%%-%ăU";u*/Q/sM1<'l.%%%gB%%%0%%%%%%%%%&%E%%%%.G%%%fi%igtt%pSgf%xup&%'9ăU"%9%%%%-d%A$*7Qr<H*r<3%+%Ne%%%0%%%%%%%%%&%E%%%%J%Q%%y(j'yu%fiSg%ăU"fxup%&'9%%9%%%.-%igK(Q]G..'p%7%%'+%%%/%%%%%%%%%%%%E%%%'4_%%%ijqăU"j%yjSg%ruup%&'9%%9%%%.-%sAdLGM#4EN?%.%%E'%%%1%%%%%%%%%%%%E%%%&SăU"$%%%knqj.sjMV%Sgru%up&'%9%9%%%%-%'^BLG(wZ,a&L%%%'o%%%%1%%%%%%%%ăU"%&%E%%%%Ca%%%kn%qjtu&MVSg%ruup%&'9%%9%%%7-%?BdLGZb0e=U%7%%o%%%%ăU"1%%%%%%%%%&%%E%%%'>a%%%knqj.uwMV%Sgru%up&'%9%9%%%%-%&jBLGmMJFf&ăU"0%%%'o%%%%1%%%%%%%%%&%E%.%%Db%%%kn%qjxf&MVSg%ruup%&'9%%9%%%I-%*ăU"iILGsG2CcK%7%%o%%%%1%%%%%%%%%&%%E%%%%%c%%%mjqu.V[MV%Sgru%up&'%9ăU"%9%%%%-%7&h(Qg?QIF&O%%%&q,%%%/%%%%%%%%%%%E%.%%uc%%%xj%fwhm%SgruăU"%up&'%9%9%%%%-%9?g(Qj>kO0&J%%%'c.%%%-%%%%%%%%%%%E%%%%sd%%%zs%ităU"Sg%ruup%&'9%%9%%%#-%0W9/Q2V=f*D&7%%M)%%%1%%%%%%%%%&%%E%%%'hd%%%ăU"htsy%jsyx.Sy'y%up&'%9%9%%%%-%:\P/QPOS+n'^%%%%-&%%%1%%%%%%%%%&%EăU"%7%%]f%%%in%xhqf&MVSy&'yup%&'9%%9%%%#-%X/9/Q;R3hE5D%%%Hl%%%1%%%ăU"%%%%%%%%%E%%%'lg%%.yj'y.ufMV%Smqu%up&'%9%9%%%%-%:F//Qeh#09%n]%%ăU",tv&%%1%%%%%%%%%&%E%I%%R1%%%yj&'yuf&MVSw%ykup%&'9%%9%%%#-%Y/T/QăU"M=7R$[<[%%'n%%%1%%%%%%%%%&%%E%%%*oi%%.yj'y.ufMV%SwyW%up&'%9%9%%ăU"%%-%7#F'QF/[C^&]%%%'w'%%%0%%%%%%%%%%%E%[%%',%%%yj&'yuf%iSnh%tupăU"&%'9%9%%%%-j%1:/jQmcA%g5*%(%W5%%%0%%%%%%%%%&%E[%%%2',%%y(j'yu%făU"iSx%Wlup%&'9%%/%%%#%%X/0/QjH-X3;%%%%;%%%%1%%%%%%%%%&%%E%%%-k1%%ăU".yj'y.ufMV%Shsy%up&'%9%9%%%%-%:Y//QH-Zvn'P%%%%b&%%%1%%%%%%%%%&%ăU"E%[%%W2%%%yj&'yuf&MVSm%uoup%*+%%%%%#%%#%,+[%%X3%%%%%ăEND SUBăV2ăV3ăV4ăV5ăCLOSE:IF S=64AND B&=49232THEN?" :) 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\49232,219);:END SUBă'>>> Page 1 of TXTPAD1.ZIP ends here. Last page. TCHK:64ăAchilles B. Mina               Copy Web Text                  wasaywasay@edsamail.com.ph     12-22-02 (  :  )       RAPIDQ                 608  19136    CpyWebTx.bas'Copy WebText v1.0ă'Uploaded 12/14/02ă'By Achilles B. Minaăă'This is a utility that automatically puts clipboard text onto a ă'text editor for reading, editing, saving and printing. Designedă'for those who can't afford to stay online too long but need toă'capture then read voluminous Website text. Also shows elapsed time ă'in seconds.ăă'You can do as you please with this code but kindly acknowledge authoră ăă$INCLUDE "RAPIDQ.INC"ăăDECLARE SUB SetWindowPos Lib "User32" ALIAS "SetWindowPos"(hWnd As Long, hWndInsertAfter As Long, X As Long, Y As Long, cx As Long, cy As Long, wFlags As Long)ăDECLARE FUNCTION SetFocus LIB "USER32" ALIAS "SetFocus" (HWnd AS LONG) AS LONGăDeclare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (hwnd As Long, nIndex As Long, dwNewLong As Long) As Long ăDECLARE SUB SplashăDECLARE SUB Process(Sender AS QMENUITEM) ăDECLARE SUB Find(Sender AS QBUTTON)ăDECLARE SUB RadioCheckăDECLARE SUB Exits(Sender AS QMENUITEM)ăDECLARE SUB CheckSave(key AS BYTE, shift AS INTEGER)ăDECLARE SUB SavingăDECLARE SUB RadioăDECLARE SUB PrintClickăDECLARE SUB CloseFindăDECLARE SUB ChangedăDECLARE SUB PasteClipboardăDECLARE SUB FormEShowăăDEFBYTE saved, alwaysăDEFSTR filename, oldtext, newtext, previousăDEFINT beginTăăDIM ESave AS QSAVEDIALOGăDIM Font AS QFONTăDIM Fonts AS QFONTDIALOGăDIM OpenDialog AS QOPENDIALOGăDIM File as QFILESTREAMăăCREATE Arial12 AS QFONTă    Name = "Arial"ă    Size = 12ăEND CREATEăăCREATE Timer1 AS QTIMERă  Interval = 500ă  OnTimer = PasteClipboardăEND CREATEăăCREATE SplashTimer AS QTIMERă  Interval = 1500ă  OnTimer = SplashăEND CREATEăăCREATE SplashForm AS QFORMă  Height = 213ă  Width = 213ă  Centeră  BorderStyle = 0ă  CREATE SplashLabel AS QLABELă    Color = &HEE00CCă    Align = 5ă    Alignment = 3ă    Layout = 1ă    LabelStyle = 1ă    Font = Arial12ă    Caption = CHR$(13) + CHR$(13) +  CHR$(13) +  CHR$(13) + _ă              "Copy WebText" + CHR$(13) + "copies and accumulates" + _ă              CHR$(13) + "clipboard text." ă  END CREATEă    CREATE FormE AS QFORMă      Caption = "Copy WebText" ă      Centeră      Width = 415 '320ă      Height = 205ă      Visible = 0ă      Color = 0 '&HABC111ă      AutoScroll = 0ă      KeyPreview = 1ă      OnShow = FormEShowă      OnKeyDown = CheckSaveă      OnClose = Exitsă      CREATE StatusBar AS QSTATUSBARă        SimplePanel = 1ă      END CREATEă      CREATE Main AS QMAINMENUă        CREATE MFile AS QMENUITEMă            Caption = "&File"ă            CREATE iNew AS QMENUITEMă                Caption = "&New"ă                OnClick = Processă            END CREATE            ă            CREATE iOpen AS QMENUITEMă                Caption = "&Open"ă                OnClick = Processă            END CREATEă            CREATE iSave AS QMENUITEMă                Caption = "&Save"ă                OnClick = Processă            END CREATEă            CREATE iSaveAs AS QMENUITEMă                Caption = "Save &As"ă                OnClick = Processă            END CREATEă            CREATE iClose AS QMENUITEMă                Caption = "&Close"ă                OnClick = Exitsă            END CREATEă            CREATE iLine1 AS QMENUITEMă                Caption = "-"ă            END CREATE                                    ă            CREATE iPrint AS QMENUITEMă                Caption = "&Print"ă                OnClick = Processă            END CREATEă            CREATE iLine2 AS QMENUITEMă                Caption = "-"ă            END CREATEă            CREATE iExit AS QMENUITEMă                Caption = "&Exit"ă                OnClick = Exitsă            END CREATE                                                    ă        END CREATEă        CREATE MEdit AS QMENUITEMă            Caption = "&Edit"ă            CREATE iSelect AS QMENUITEMă                Caption = "&Select All"ă                OnClick = Processă            END CREATEă            CREATE iLine3 AS QMENUITEMă                Caption = "-"ă            END CREATEă            CREATE iClear AS QMENUITEMă                Caption = "Cl&ear All"ă                OnClick = Processă            END CREATEă            CREATE iLine4 AS QMENUITEMă                Caption = "-"ă            END CREATE                        ă            CREATE iCopy AS QMENUITEMă                Caption = "&Copy"ă                OnClick = Processă            END CREATEă            CREATE iPaste AS QMENUITEMă                Caption = "&Paste"ă                OnClick = Processă            END CREATEă            CREATE iCut AS QMENUITEMă                Caption = "Cu&t"ă                OnClick = Processă            END CREATE                                   ă        END CREATEă        CREATE MUndo AS QMENUITEMă            Caption = "&Undo"ă            CREATE iUndo AS QMENUITEMă                Caption = "&Undo"ă                OnClick = Processă            END CREATEă            CREATE iRedo AS QMENUITEMă                Caption = "&Redo"ă                OnClick = Processă            END CREATE            ă        END CREATEă        CREATE MFormat AS QMENUITEMă            Caption = "&Format"ă            CREATE iFormat AS QMENUITEMă                Caption = "&Font"ă                OnClick = Processă            END CREATEă        END CREATE         ă        CREATE MFind AS QMENUITEMă            Caption = "&Search"ă            CREATE iFind AS QMENUITEMă                Caption = "&Find/Replace"ă                OnClick = Processă            END CREATEă            CREATE iCount AS QMENUITEMă                Caption = "&Word Count"ă                OnClick = Processă            END CREATEă        END CREATEă        CREATE MOptions AS QMENUITEMă            Caption = "&Options"ă            CREATE iTop AS QMENUITEMă                Caption = "&Topmost"ă                OnClick = Processă            END CREATEă            CREATE iCapture AS QMENUITEMă                Caption = "&Stop Capture"ă                OnClick = Processă            END CREATEă        END CREATEă        CREATE MAbout AS QMENUITEMă            Caption = "&About"ă            OnClick = Processă        END CREATE                ă    END CREATEă    CREATE Rich AS QRICHEDITă        Align = 5ă        ScrollBars = 2ă        HideSelection = 0ă        Font = Arial12ă        WantTabs = 1ă        OnChange = Changedă        'Color = &HAAEEEEă    END CREATEă    CREATE FindDlg AS QFORMă        Height = 150ă        Caption = "Find Dialog"      ă        BorderStyle = 3ă        FormStyle = 3ă        Centeră        OnClose = CloseFindă        CREATE FindText AS QEDITă            Top = 10ă            Left = 15ă            Width = 170ă            Height = 45ă            Tag = 1ă        END CREATEă        CREATE FindLabel AS QLABELă            Top = 35ă            Left = 18ă            Width = 50ă            Caption = "Find what word/s?"ă        END CREATEă        CREATE FindButt AS QBUTTONă            Top = 10ă            Left = 187ă            Height = 22ă            Width = 111            ă            Caption = "Find"ă            Default = 1ă            OnClick = Findă        END CREATEă        CREATE Panel AS QPANELă            Top = 60ă            Left = 15ă            Width = 283ă            Height = 3ă        END CREATE            ă        CREATE ReplaceText AS QEDITă            Top = 75ă            Left = 15ă            Width = 170ă            Height = 45ă        END CREATEă        CREATE ReplaceLabel AS QLABELă            Top = 100ă            Left = 18ă            Width = 50ă            Caption = "Replace with what?"ă        END CREATEă        CREATE ReplaceButt AS QBUTTONă            Top = 75ă            Left = 187ă            Height = 22ă            Width = 55ă            Caption = "This"ă            Default = 1ă            OnClick = Findă        END CREATEă        CREATE ReplaceAButt AS QBUTTONă            Top = 75ă            Left = 243ă            Height = 22ă            Width = 55ă            Caption = "All"ă            Default = 1ă            OnClick = Findă        END CREATEă        CREATE RadioW AS QRADIOBUTTONă            Caption = "Whole word"ă            Left = 140ă            Top = 35ă            Checked = 1ă            OnClick = Radioă        END CREATEă        CREATE RadioP AS QRADIOBUTTONă            Caption = "Part of word"ă            Left = 222ă            Top = 35ă            OnClick = Radio            ă        END CREATE                                                       ă    END CREATE      ă  END CREATEăEND CREATEăăSUB Process(Sender)ă    Rich.Visible = 1ă    SELECT CASE Sender.Handleă        CASE iNew.Handleă            IF saved = 0 THEN ă              ESave.Caption = "Save As"ă              Savingă            END IFă            FormE.Caption = "Copy WebText"ă            Rich.Cleară            SetFocus(Rich.Handle)ă        CASE iOpen.Handleă            CREATE Load AS QOPENDIALOGă                Caption = "Load File"ă                Filter = "Plain text|*.txt|Rich Text Format|*.rtf|Word|*.doc|All files|*.*"ă            END CREATEă            Timer1.Enabled = 0ă            IF Load.Execute THENă              Rich.Clear                 ă              Rich.LoadFromFile(Load.FileName)ă              saved = 1ă            END IFă            Timer1.Enabled = 1ă            filename = Load.FileNameă            FormE.Caption = "Copy WebText > " + filenameă        CASE iSave.Handleă            IF saved = 0 THEN            'filename = "" THEN ă              ESave.Caption = "Save As"ă              Savingă            ELSEă              Rich.SaveToFile(fileName)ă              saved = 1ă            END IFă        CASE iSaveAs.Handleă            ESave.Caption = "Save As"ă            ESave.Filename = filenameă            dotis = TALLY(filename,".")ă            IF dotis <> 0 THEN ESave.Filename = LEFT$(ESave.filename,dotis-1)ă            Saving                            ă        CASE iPrint.Handleă            PrintClickă        CASE iSelect.Handleă            Rich.SelectAllă        CASE iClear.Handleă            Rich.Clear             ă        CASE iCopy.Handleă            Rich.CopyToClipboardă        CASE iPaste.Handleă            oldtext = Rich.Textă            Rich.PasteFromClipboard                ă        CASE iCut.Handleă            oldtext = Rich.Textă            Rich.CutToClipboardă        CASE iUndo.Handleă            newtext = Rich.Textă            Rich.Text = oldtextă            'Rich.PasteFromClipboardă            Rich.SelStart = LEN(Rich.Text)ă        CASE iRedo.Handleă            Rich.Text = newtextă            Rich.SelStart = LEN(Rich.Text)ă        CASE iFormat.Handleă            oldtext = Rich.Textă            Fonts.GetFont(Arial12)ă            Timer1.Enabled = 0 ă            IF Fonts.Execute THEN Fonts.SetFont(Font)ă            Timer1.Enabled = 1ă            Rich.SelAttributes = Font                                             ă        CASE iFind.Handleă            FindDlg.Visible = 1ă        CASE iCount.Handleă            DIM wordcount AS WORD, charcount AS WORD, charcount0 AS WORDă            wordcount = 0ă            charcount = LEN(Rich.Text)ă            charcount0 = LEN(Rich.Text - CHR$(13) - CHR$(10) - " ")ă            text$ = REPLACESUBSTR$(Rich.Text,CHR$(13)+CHR$(10)," ")ă            DOă              text$ = REPLACESUBSTR$(text$,"  "," ")ă            LOOP UNTIL TALLY(text$,"  ") = 0ă            text$ = RTRIM$(LTRIM$(text$))ă            IF INSTR(text$," ") <> 0 THEN ă              wordcount = TALLY(text$," ") + 1ă            ELSEIF INSTR(text$," ") = 0 THENă              IF LEN(text$) = 0 THENă                wordcount = 0ă              ELSEă                wordcount = 1ă              END IF  ă            END IFă            IF wordcount > 1 THEN ă              words$ = "Words" ă            ELSE ă              words$ = "Word"ă            END IFă            IF charcount > 1 THEN ă              characters$ = "Characters" ă            ELSE ă              characters$ = "Character"ă            END IFă            IF charcount0 > 1 THEN ă              characters0$ = "Characters" ă            ELSE ă              characters0$ = "Character"ă            END IFă            Timer1.Enabled = 0         ă            SHOWMESSAGE words$ + ":         " + STR$(wordcount) + CHR$(13) +_ă                        characters$ + ":  " + STR$(charcount) + CHR$(13) +_ă                        characters0$ + ":  " + STR$(charcount0) + CHR$(13) +_ă                        "(no blanks)"ă            Timer1.Enabled = 1ă      CASE iTop.Handleă        IF always = 1 THEN always = 0 ELSE always = 1ă      CASE iCapture.Handleă        IF Timer1.Enabled = 1 THEN ă          Timer1.Enabled = 0ă        ELSEă          Timer1.Enabled = 1ă        END IFă      CASE mAbout.Handleă        Timer1.Enabled = 0ă        SHOWMESSAGE "This is FREEWARE" + CHR$(13) +_ă              " Copyright (c) 2002" + CHR$(13) +_ ă              "   Achilles B. Mina"ă        Timer1.Enabled = 1ă    END SELECT      ăEND SUBăăSUB Find(Sender)ă  DEFBYTE backă  SELECT CASE Sender.Handleă    CASE FindButt.Handleă      FindButt.Caption = "Next"ă      back = 0 ă      DO       ă        whereword = INSTR(starts,Rich.Text,FindText.Text)ă        wherelast = whereword + LEN(FindText.Text)ă        IF wherelast > LEN(Rich.Text) THEN DEC wherelast   ă        IF whereword > 1 THENă            IF RadioW.Checked = 1 THENă                SELECT CASE MID$(Rich.Text,whereword-1,1)ă                    CASE " ",CHR$(13),CHR$(10)ă                        SELECT CASE MID$(Rich.Text,wherelast,1)ă                            CASE " ",CHR$(13),CHR$(10),RIGHT$(FindText.Text,1)                      ă                                Rich.SelStart = whereword - 1ă                                back = 0ă                            CASE ELSEă                                starts = whereword + LEN(FindText.Text)ă                                back = 1                        ă                        END SELECTă                    CASE ELSEă                        starts = whereword + LEN(FindText.Text)ă                        back = 1ă                END SELECT        ă            ELSEă                Rich.SelStart = whereword - 1     ă            END IF    ă            Rich.SelLength = LEN(FindText.Text)  'comment this out if you want cursor onlyă            starts = whereword + LEN(FindText.Text)ă        ELSEIF whereword = 1 THENă            IF RadioW.Checked = 1 THENă                SELECT CASE MID$(Rich.Text,wherelast,1)ă                    CASE " ",CHR$(13),CHR$(10)ă                        Rich.SelStart = whereword - 1ă                        back = 0ă                END SELECT        ă            ELSEă                Rich.SelStart = whereword - 1      ă            END IF    ă            Rich.SelLength = LEN(FindText.Text)  'comment this out if you want cursor onlyă            starts = whereword + LEN(FindText.Text)         ă        ELSEă            Timer1.Enabled = 0ă            SHOWMESSAGE "No more instances of " + FindText.Textă            Timer1.Enabled = 1ă            starts = 0ă            back = 0ă        END IFă      LOOP UNTIL back = 0ă    CASE ReplaceButt.Handleă      oldtext = Rich.Textă      diff = LEN(ReplaceText.Text) - LEN(FindText.Text)ă      IF diff > 0 THENă        Rich.Text = INSERT$(SPACE$(diff),Rich.Text,whereword)ă        Rich.Text = REPLACE$(Rich.Text,ReplaceText.Text,whereword)ă      ELSEIF diff < 0 THENă        Rich.Text = REPLACE$(Rich.Text,ReplaceText.Text,whereword)ă        Rich.Text = DELETE$(Rich.Text,whereword+LEN(ReplaceText.Text),ABS(SPACE$(diff)))ă      ELSEă        Rich.Text = REPLACE$(Rich.Text,ReplaceText.Text,whereword)ă      END IFă        Rich.SelStart = whereword + LEN(ReplaceText.Text) - 1ă    CASE ReplaceAButt.Handleă      oldtext = Rich.Textă      Rich.Text = REPLACESUBSTR$(Rich.Text,FindText.Text,ReplaceText.Text)ă      Rich.SelStart = RINSTR(Rich.Text,ReplaceText.Text) + LEN(ReplaceText.Text) -1ă  END SELECTăEND SUBăăSUB CheckSave(key)ă  SELECT CASE keyă    CASE 8,46ă      'KILLMESSAGE(Rich.Handle,&h102)ă      'Rich.CopyToClipboardă    CASE ELSEă      oldtext = Rich.Textă  END SELECTăEND SUBăăSUB Radioă  SetFocus(FindText.Handle)ăEND SUBăăSUB PrintClickă  LPRINT Rich.Textă  LFLUSH ăEND SUB ăăSUB Exits(Sender)ă  IF saved = 0 THENă    ESave.Caption = "Save As"ă    ESave.Filename = filenameă    ESave.Filter = "Text files|*.txt;*.rtf;*.doc;*.wri;*.inc;*.ini|All files|*.*"                ă    IF ESave.Execute THEN ă      Rich.SaveToFile(ESave.FileName)ă      saved = 1ă      filename = ""ă      Rich.Cleară    ELSEă      IF Sender.Handle = iClose.Handle THENă        FormE.Caption = "Copy WebText"ă        filename = ""ă        Rich.Cleară      ELSE ă        Application.Terminateă      END IFă    END IFă  ELSEă    IF Sender.Handle = iClose.Handle THENă      FormE.Caption = "Copy WebText"ă      filename = ""ă      Rich.Cleară    ELSE ă      Application.Terminateă    END IF     ă  END IF              ăEND SUBăăSUB CloseFindă  FindDlg.Visible = 0ăEND SUBăăSUB Savingă  Timer1.Enabled = 0ă  ESave.Filter = "Plain text|*.txt|Rich Text Format|*.rtf|Word|*.doc|All files|*.*"               ă  IF ESave.Execute THEN ă    SELECT CASE ESave.FilterIndexă      CASE 1ă        ext$ = ".rtf"ă      CASE 2ă        ext$ = ".doc"ă      CASE 3ă        ext$ = ".txt"ă        Rich.SelectAllă        Rich.Plaintext = 1ă      CASE 4ă        ext$ = ""ă        Rich.SelectAllă        Rich.Plaintext = 1ă    END SELECTă    Rich.SaveToFile(ESave.FileName + ext$)ă    saved = 1ă    FormE.Caption = "Copy WebText > " + ESave.FileName + ext$ă    IF ESave.FilterIndex = 3 OR ESave.FilterIndex = 4 THEN ă      Rich.Plaintext = 0ă      Rich.SelLength = 0ă      Rich.SelStart = LEN(Rich.Text)ă    END IF                ă  END IFă  Timer1.Enabled = 1ăEND SUBăăSUB Changedă  saved = 0ăEND SUB ăăSUB Splashă  SplashForm.Visible = 0ă  SplashTimer.Enabled = 0ă  FormE.Visible = 1 ăEND SUBăăSUB FormEShowă  SENDMESSAGE Rich.Handle, &HC5, 1048576, 0 ă  Setwindowlong(FormE.Handle,-8,0)ă  Setwindowlong(Application.Handle,-8,FormE.Handle)ă  always = 1ă  beginT = TIMER   ăEND SUBăăSUB PasteClipboardă  DIM elapsedT AS INTEGERă  elapsedT = TIMER - beginT ă  IF LEFT$(Clipboard.Text,10) <> previous THENă    Rich.Addstrings Clipboard.Text + CHR$(10)  'copies textă    Rich.PasteFromClipboard                     'copies text & formată    Rich.Addstrings CHR$(10)ă    previous = LEFT$(Clipboard.Text,10)    ă  END IFă  IF always = 1 THENă    SetWindowPos(FormE.Handle,-1,0,0,0,0,&H1 OR &H2)ă  ELSEă    SetWindowPos(FormE.Handle,-2,0,0,0,0,&H1 OR &H2)  ă  END IFă  StatusBar.SimpleText = "Elapsed time ins seconds: " + STR$(elapsedT)ăEND SUBăăSplashForm.Showmodal ăAchilles B. Mina               Copy Web Text                  wasaywasay@edsamail.com.ph     12-22-02 (  :  )       RAPIDQ                 735  23123    CpyWebTx.bas'Copy WebText v1.01ă'Uploaded 12/22/02ă'By Achilles B. Minaăă'This is a utility that automatically puts clipboard text onto a ă'text editor for reading, editing, saving and printing. Designedă'for those who can't afford to stay online too long but need toă'capture then read voluminous Website text. Also shows elapsed time.ăă'You can do as you please with this code but kindly acknowledge authoră ăă$INCLUDE "RAPIDQ.INC"ăăDECLARE SUB SetWindowPos Lib "User32" ALIAS "SetWindowPos"(hWnd As Long, hWndInsertAfter As Long, X As Long, Y As Long, cx As Long, cy As Long, wFlags As Long)ăDECLARE FUNCTION SetFocus LIB "USER32" ALIAS "SetFocus" (HWnd AS LONG) AS LONGăDeclare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (hwnd As Long, nIndex As Long, dwNewLong As Long) As Long ăDECLARE SUB SplashăDECLARE SUB Process(Sender AS QMENUITEM) ăDECLARE SUB Find(Sender AS QBUTTON)ăDECLARE SUB RadioCheckăDECLARE SUB Exits(Sender AS QMENUITEM)ăDECLARE SUB CheckSave(key AS BYTE, shift AS INTEGER)ăDECLARE SUB SavingăDECLARE SUB RadioăDECLARE SUB PrintClickăDECLARE SUB CloseFindăDECLARE SUB ChangedăDECLARE SUB PasteClipboardăDECLARE SUB FormEShowăăDEFBYTE saved, alwaysăDEFSTR filename, oldtext, newtext, previousăDEFINT beginTăăDIM ESave AS QSAVEDIALOGăDIM Font AS QFONTăDIM Fonts AS QFONTDIALOGăDIM OpenDialog AS QOPENDIALOGăDIM File as QFILESTREAMăăCREATE Arial12 AS QFONTă    Name = "Arial"ă    Size = 12ăEND CREATEăăCREATE Timer1 AS QTIMERă  Interval = 1000ă  OnTimer = PasteClipboardăEND CREATEăăCREATE SplashTimer AS QTIMERă  Interval = 1500ă  OnTimer = SplashăEND CREATEăăCREATE SplashForm AS QFORMă  Height = 213ă  Width = 213ă  Centeră  BorderStyle = 0ă  CREATE SplashLabel AS QLABELă    Color = &HEE00CCă    Align = 5ă    Alignment = 3ă    Layout = 1ă    LabelStyle = 1ă    Font = Arial12ă    Caption = CHR$(13) + CHR$(13) +  CHR$(13) +  CHR$(13) + _ă              "Copy WebText" + CHR$(13) + "copies and accumulates" + _ă              CHR$(13) + "clipboard text." ă  END CREATEă    CREATE FormE AS QFORMă      Caption = "Copy WebText" ă      Centeră      Width = 415 '320ă      Height = 205ă      Visible = 0ă      AutoScroll = 0ă      KeyPreview = 1ă      OnShow = FormEShowă      OnKeyDown = CheckSaveă      OnClose = Exitsă      CREATE StatusBar AS QSTATUSBARă        AddPanels "","","","",""ă        Panel(0).Width = 50ă        Panel(1).Width = 70ă        Panel(2).Width = 63ă        Panel(2).Caption = DATE$ă        Panel(3).Width = 70ă      END CREATEă      CREATE Main AS QMAINMENUă        CREATE MFile AS QMENUITEMă            Caption = "&File"ă            CREATE iNew AS QMENUITEMă                Caption = "&New"ă                OnClick = Processă            END CREATE            ă            CREATE iOpen AS QMENUITEMă                Caption = "&Open"ă                OnClick = Processă            END CREATEă            CREATE iSave AS QMENUITEMă                Caption = "&Save"ă                OnClick = Processă            END CREATEă            CREATE iSaveAs AS QMENUITEMă                Caption = "Save &As"ă                OnClick = Processă            END CREATEă            CREATE iClose AS QMENUITEMă                Caption = "&Close"ă                OnClick = Exitsă            END CREATEă            CREATE iLine1 AS QMENUITEMă                Caption = "-"ă            END CREATE                                    ă            CREATE iPrint AS QMENUITEMă                Caption = "&Print"ă                OnClick = Processă            END CREATEă            CREATE iLine2 AS QMENUITEMă                Caption = "-"ă            END CREATEă            CREATE iExit AS QMENUITEMă                Caption = "&Exit"ă                OnClick = Exitsă            END CREATE                                                    ă        END CREATEă        CREATE MEdit AS QMENUITEMă            Caption = "&Edit"ă            CREATE iSelect AS QMENUITEMă                Caption = "&Select All"ă                OnClick = Processă            END CREATEă            CREATE iLine3 AS QMENUITEMă                Caption = "-"ă            END CREATEă            CREATE iClear AS QMENUITEMă                Caption = "Cl&ear All"ă                OnClick = Processă            END CREATEă            CREATE iLine4 AS QMENUITEMă                Caption = "-"ă            END CREATE                        ă            CREATE iCopy AS QMENUITEMă                Caption = "&Copy"ă                OnClick = Processă            END CREATEă            CREATE iPaste AS QMENUITEMă                Caption = "&Paste"ă                OnClick = Processă            END CREATEă            CREATE iCut AS QMENUITEMă                Caption = "Cu&t"ă                OnClick = Processă            END CREATE                                   ă        END CREATEă        CREATE MUndo AS QMENUITEMă            Caption = "&Undo"ă            CREATE iUndo AS QMENUITEMă                Caption = "&Undo"ă                OnClick = Processă            END CREATEă            CREATE iRedo AS QMENUITEMă                Caption = "&Redo"ă                OnClick = Processă            END CREATE            ă        END CREATEă        CREATE MFormat AS QMENUITEMă            Caption = "&Format"ă            CREATE iFormat AS QMENUITEMă                Caption = "&Font"ă                OnClick = Processă            END CREATEă            CREATE iRegular AS QMENUITEMă                Caption = "&Regular"ă                OnClick = Processă            END CREATEă            CREATE iItalic AS QMENUITEMă                Caption = "&Italic"ă                OnClick = Processă            END CREATEă            CREATE iBold AS QMENUITEMă                Caption = "&Bold"ă                OnClick = Processă            END CREATEă            CREATE iUnderline AS QMENUITEMă                Caption = "&Underline"ă                OnClick = Processă            END CREATEă            CREATE iUpper AS QMENUITEMă                Caption = "Upper&case"ă                OnClick = Processă            END CREATEă            CREATE iLower AS QMENUITEMă                Caption = "&Lowercase"ă                OnClick = Processă            END CREATEă            CREATE iUpLow AS QMENUITEMă                Caption = "U&pperLower"ă                OnClick = Processă            END CREATEă        END CREATE         ă        CREATE MFind AS QMENUITEMă            Caption = "&Search"ă            CREATE iFind AS QMENUITEMă                Caption = "&Find/Replace"ă                OnClick = Processă            END CREATEă            CREATE iCount AS QMENUITEMă                Caption = "&Word Count"ă                OnClick = Processă            END CREATEă        END CREATEă        CREATE MOptions AS QMENUITEMă            Caption = "&Options"ă            CREATE iTop AS QMENUITEMă                Caption = "&Topmost"ă                OnClick = Processă            END CREATEă            CREATE iCapture AS QMENUITEMă                Caption = "&Stop Capture"ă                OnClick = Processă            END CREATEă        END CREATEă        CREATE MAbout AS QMENUITEMă            Caption = "&About"ă            OnClick = Processă        END CREATE                ă    END CREATEă    CREATE Rich AS QRICHEDITă        Align = 5ă        ScrollBars = 2ă        HideSelection = 0ă        WantTabs = 1ă        OnChange = Changedă    END CREATEă    CREATE FindDlg AS QFORMă        Height = 150ă        Caption = "Find Dialog"      ă        BorderStyle = 3ă        FormStyle = 3ă        Centeră        OnClose = CloseFindă        CREATE FindText AS QEDITă            Top = 10ă            Left = 15ă            Width = 170ă            Height = 45ă            Tag = 1ă        END CREATEă        CREATE FindLabel AS QLABELă            Top = 35ă            Left = 18ă            Width = 50ă            Caption = "Find what word/s?"ă        END CREATEă        CREATE FindButt AS QBUTTONă            Top = 10ă            Left = 187ă            Height = 22ă            Width = 111            ă            Caption = "Find"ă            Default = 1ă            OnClick = Findă        END CREATEă        CREATE Panel AS QPANELă            Top = 60ă            Left = 15ă            Width = 283ă            Height = 3ă        END CREATE            ă        CREATE ReplaceText AS QEDITă            Top = 75ă            Left = 15ă            Width = 170ă            Height = 45ă        END CREATEă        CREATE ReplaceLabel AS QLABELă            Top = 100ă            Left = 18ă            Width = 50ă            Caption = "Replace with what?"ă        END CREATEă        CREATE ReplaceButt AS QBUTTONă            Top = 75ă            Left = 187ă            Height = 22ă            Width = 55ă            Caption = "This"ă            Default = 1ă            OnClick = Findă        END CREATEă        CREATE ReplaceAButt AS QBUTTONă            Top = 75ă            Left = 243ă            Height = 22ă            Width = 55ă            Caption = "All"ă            Default = 1ă            OnClick = Findă        END CREATEă        CREATE RadioW AS QRADIOBUTTONă            Caption = "Whole word"ă            Left = 140ă            Top = 35ă            Checked = 1ă            OnClick = Radioă        END CREATEă        CREATE RadioP AS QRADIOBUTTONă            Caption = "Part of word"ă            Left = 222ă            Top = 35ă            OnClick = Radio            ă        END CREATE                                                       ă    END CREATE      ă  END CREATEăEND CREATEăăSUB Process(Sender)ă    Rich.Visible = 1ă    SELECT CASE Sender.Handleă        CASE iNew.Handleă            IF saved = 0 THEN ă              ESave.Caption = "Save As"ă              Savingă            END IFă            Rich.Cleară            StatusBar.Panel(4).Caption = ""ă            SetFocus(Rich.Handle)ă        CASE iOpen.Handleă            CREATE Load AS QOPENDIALOGă                Caption = "Load File"ă                Filter = "Plain text|*.txt|Rich Text Format|*.rtf|Word|*.doc|All files|*.*"ă            END CREATEă            Timer1.Enabled = 0ă            IF Load.Execute THENă              IF Load.FilterIndex = 2 OR Load.FilterIndex = 2 THENă                Rich.Plaintext = 0ă              END IFă              Rich.Clear                 ă              Rich.LoadFromFile(Load.FileName)ă              saved = 1ă            END IFă            Timer1.Enabled = 1ă            filename = Load.FileNameă            StatusBar.Panel(4).Caption = filenameă        CASE iSave.Handleă            IF saved = 0 AND filename = "" THEN ă              ESave.Caption = "Save As"ă              Savingă            ELSEă              Rich.SaveToFile(fileName)ă            END IFă            saved = 1ă        CASE iSaveAs.Handleă            ESave.Caption = "Save As"ă            ESave.Filename = filenameă            dotis = TALLY(filename,".")ă            IF dotis <> 0 THEN ESave.Filename = LEFT$(ESave.filename,dotis-1)ă            Saving                            ă        CASE iPrint.Handleă            PrintClickă        CASE iSelect.Handleă            Rich.SelectAllă        CASE iClear.Handleă            Rich.Clear             ă        CASE iCopy.Handleă            Rich.CopyToClipboardă        CASE iPaste.Handleă            oldtext = Rich.Textă            Rich.PasteFromClipboard                ă        CASE iCut.Handleă            oldtext = Rich.Textă            Rich.CutToClipboardă        CASE iUndo.Handleă            newtext = Rich.Textă            Rich.Text = oldtextă            'Rich.PasteFromClipboardă            Rich.SelStart = LEN(Rich.Text)ă        CASE iRedo.Handleă            Rich.Text = newtextă            Rich.SelStart = LEN(Rich.Text)ă        CASE iFormat.Handleă            oldtext = Rich.Textă            Fonts.GetFont(Arial12)ă            Timer1.Enabled = 0 ă            IF Fonts.Execute THEN Fonts.SetFont(Font)ă            Timer1.Enabled = 1ă            Rich.SelAttributes = Font                                             ă        CASE iFind.Handleă            Timer1.Enabled = 0 ă            FindDlg.Visible = 1ă        CASE iCount.Handleă            DIM wordcount AS WORD, charcount AS WORD, charcount0 AS WORDă            wordcount = 0ă            charcount = LEN(Rich.Text)ă            charcount0 = LEN(Rich.Text- CHR$(9) - CHR$(13) - CHR$(10) - " ")ă            text$ = REPLACESUBSTR$(Rich.Text,CHR$(13)+CHR$(10)," ")ă            DOă              text$ = REPLACESUBSTR$(text$,"  "," ")ă            LOOP UNTIL TALLY(text$,"  ") = 0ă            text$ = RTRIM$(LTRIM$(text$))ă            IF INSTR(text$," ") <> 0 THEN ă              wordcount = TALLY(text$," ") + 1ă            ELSEIF INSTR(text$," ") = 0 THENă              IF LEN(text$) = 0 THENă                wordcount = 0ă              ELSEă                wordcount = 1ă              END IF  ă            END IFă            IF wordcount > 1 THEN ă              words$ = "Words" ă            ELSE ă              words$ = "Word"ă            END IFă            IF charcount > 1 THEN ă              characters$ = "Characters" ă            ELSE ă              characters$ = "Character"ă            END IFă            IF charcount0 > 1 THEN ă              characters0$ = "Characters" ă            ELSE ă              characters0$ = "Character"ă            END IFă            Timer1.Enabled = 0         ă            SHOWMESSAGE words$ + ":         " + STR$(wordcount) + CHR$(13) +_ă                        characters$ + ":  " + STR$(charcount) + CHR$(13) +_ă                        characters0$ + ":  " + STR$(charcount0) + CHR$(13) +_ă                        "(no blanks)"ă            Timer1.Enabled = 1ă      CASE iTop.Handleă        IF always = 1 THEN always = 0 ELSE always = 1ă      CASE iCapture.Handleă        IF iCapture.Caption = "&Stop Capture" THENă          iCapture.Caption = "&Resume Capture"ă        ELSEă          iCapture.Caption = "&Stop Capture" ă        END IFă      CASE iRegular.Handleă        Rich.SelAttributes.Italic = 0ă        Rich.SelAttributes.Bold = 0ă        Rich.SelAttributes.Underline = 0ă      CASE iItalic.Handleă        Rich.SelAttributes.Italic = 1ă      CASE iBold.Handleă        Rich.SelAttributes.Bold = 1ă      CASE iUnderline.Handleă        Rich.SelAttributes.Underline = 1ă      CASE iUpper.Handleă        Rich.Seltext  = UCASE$(Rich.Seltext)ă      CASE iLower.Handleă        Rich.Seltext  = LCASE$(Rich.Seltext)ă      CASE iUpLow.Handleă        text$ = LCASE$(Rich.Seltext)ă        FOR x = 1 TO LEN(text$)ă          char$ = MID$(text$,x,1)ă          IF char$ = " " THENă            nextchar$ = UCASE$(MID$(text$,x+1,1))      ă            text$ = REPLACE$(text$,nextchar$,x+1)ă          END IFă        NEXTă        Rich.Seltext = REPLACE$(text$,UCASE$(LEFT$(text$,1)),1)ă      CASE mAbout.Handleă        Timer1.Enabled = 0ă        SHOWMESSAGE "This is FREEWARE" + CHR$(13) +_ă              " Copyright (c) 2002" + CHR$(13) +_ ă              "   Achilles B. Mina"ă        Timer1.Enabled = 1ă    END SELECT      ăEND SUBăăSUB Find(Sender)ă  DEFBYTE backă  SELECT CASE Sender.Handleă    CASE FindButt.Handleă      FindButt.Caption = "Next"ă      back = 0 ă      DO       ă        whereword = INSTR(starts,Rich.Text,FindText.Text)ă        wherelast = whereword + LEN(FindText.Text)ă        IF wherelast > LEN(Rich.Text) THEN DEC wherelast   ă        IF whereword > 1 THENă            IF RadioW.Checked = 1 THENă                SELECT CASE MID$(Rich.Text,whereword-1,1)ă                    CASE " ",CHR$(13),CHR$(10)ă                        SELECT CASE MID$(Rich.Text,wherelast,1)ă                            CASE " ",CHR$(13),CHR$(10),RIGHT$(FindText.Text,1)                      ă                                Rich.SelStart = whereword - 1ă                                back = 0ă                            CASE ELSEă                                starts = whereword + LEN(FindText.Text)ă                                back = 1                        ă                        END SELECTă                    CASE ELSEă                        starts = whereword + LEN(FindText.Text)ă                        back = 1ă                END SELECT        ă            ELSEă                Rich.SelStart = whereword - 1     ă            END IF    ă            Rich.SelLength = LEN(FindText.Text)  'comment this out if you want cursor onlyă            starts = whereword + LEN(FindText.Text)ă        ELSEIF whereword = 1 THENă            IF RadioW.Checked = 1 THENă                SELECT CASE MID$(Rich.Text,wherelast,1)ă                    CASE " ",CHR$(13),CHR$(10)ă                        Rich.SelStart = whereword - 1ă                        back = 0ă                END SELECT        ă            ELSEă                Rich.SelStart = whereword - 1      ă            END IF    ă            Rich.SelLength = LEN(FindText.Text)  'comment this out if you want cursor onlyă            starts = whereword + LEN(FindText.Text)         ă        ELSEă            Timer1.Enabled = 0ă            SHOWMESSAGE "No more instances of " + FindText.Textă            Timer1.Enabled = 1ă            starts = 0ă            back = 0ă        END IFă      LOOP UNTIL back = 0ă    CASE ReplaceButt.Handleă      oldtext = Rich.Textă      diff = LEN(ReplaceText.Text) - LEN(FindText.Text)ă      IF diff > 0 THENă        Rich.Text = INSERT$(SPACE$(diff),Rich.Text,whereword)ă        Rich.Text = REPLACE$(Rich.Text,ReplaceText.Text,whereword)ă      ELSEIF diff < 0 THENă        Rich.Text = REPLACE$(Rich.Text,ReplaceText.Text,whereword)ă        Rich.Text = DELETE$(Rich.Text,whereword+LEN(ReplaceText.Text),ABS(SPACE$(diff)))ă      ELSEă        Rich.Text = REPLACE$(Rich.Text,ReplaceText.Text,whereword)ă      END IFă        Rich.SelStart = whereword + LEN(ReplaceText.Text) - 1ă    CASE ReplaceAButt.Handleă      oldtext = Rich.Textă      Rich.Text = REPLACESUBSTR$(Rich.Text,FindText.Text,ReplaceText.Text)ă      Rich.SelStart = RINSTR(Rich.Text,ReplaceText.Text) + LEN(ReplaceText.Text) -1ă  END SELECTăEND SUBăăSUB CheckSave(key,shift)ă  SELECT CASE shiftă    CASE 0ă      SELECT CASE keyă        CASE 8,46ă          'KILLMESSAGE(Rich.Handle,&h102)ă          'Rich.CopyToClipboardă        CASE 27ă          FormE.WindowState = 1ă        CASE ELSEă          oldtext = Rich.Textă      END SELECTă    CASE 1ă      SELECT CASE keyă        CASE 83   'saveă          IF saved = 0 AND filename = "" THEN ă            ESave.Caption = "Save As"ă            Savingă          ELSEă            Rich.SaveToFile(fileName)ă          END IFă          saved = 1ă        CASE 67  'copyă          Rich.CopyToClipboardă          oldtext = Rich.Textă        CASE 86  'pasteă          'Rich.PasteFromClipboardă        CASE 88  'cută          oldtext = Rich.Textă          Rich.CutToClipboardă      END SELECT    ă  END SELECTăEND SUBăăSUB Radioă  SetFocus(FindText.Handle)ăEND SUBăăSUB PrintClickă  LPRINT Rich.Textă  LFLUSH ăEND SUB ăăSUB Exits(Sender)ă  IF saved = 0 THENă    Timer1.Enabled = 0ă    ESave.Caption = "Save As"ă    ESave.Filename = filenameă    ESave.Filter = "Text files|*.txt;*.rtf;*.doc;*.wri;*.inc;*.ini|All files|*.*"                ă    IF ESave.Execute THEN ă      Rich.SaveToFile(ESave.FileName)ă      saved = 1ă      filename = ""ă      Rich.Cleară    ELSEă      IF Sender.Handle = iClose.Handle THENă        filename = ""ă        StatusBar.Panel(4).Caption = ""ă        Rich.Cleară        saved = 1ă      ELSE ă        Application.Terminateă      END IFă    END IFă    Timer1.Enabled = 1ă  ELSEă    IF Sender.Handle = iClose.Handle THENă      filename = ""ă      StatusBar.Panel(4).Caption = ""ă      Rich.Cleară      saved = 1ă    ELSE ă      Application.Terminateă    END IF     ă  END IF              ăEND SUBăăSUB CloseFindă  Timer1.Enabled = 1 ă  FindDlg.Visible = 0ăEND SUBăăSUB Savingă  Timer1.Enabled = 0ă  ESave.Filter = "Plain text|*.txt|Rich Text Format|*.rtf|Word|*.doc|All files|*.*"               ă  IF ESave.Execute THEN ă    SELECT CASE ESave.FilterIndexă      CASE 1ă        ext$ = ".txt"ă        Rich.SelectAllă        Rich.Plaintext = 1ă      CASE 2ă        ext$ = ".rtf"ă      CASE 3ă        ext$ = ".doc"ă      CASE 4ă        ext$ = ""ă        Rich.SelectAllă        Rich.Plaintext = 1ă    END SELECTă    Rich.SaveToFile(ESave.FileName + ext$)ă    saved = 1ă    StatusBar.Panel(4).Caption = ESave.FileName + ext$ă    IF ESave.FilterIndex = 3 OR ESave.FilterIndex = 4 THEN ă      Rich.Plaintext = 0ă      Rich.SelLength = 0ă      Rich.SelStart = LEN(Rich.Text)ă    END IF                ă  END IFă  Timer1.Enabled = 1ăEND SUBăăSUB Changedă  saved = 0ă  charcount0 = LEN(Rich.Text - CHR$(9) - CHR$(13) - CHR$(10) - " ")ă  StatusBar.Panel(1).Caption = STR$(charcount0) + " chars"ăEND SUB ăăSUB Splashă  SplashForm.Visible = 0ă  SplashTimer.Enabled = 0ă  FormE.Visible = 1 ăEND SUBăăSUB FormEShowă  SENDMESSAGE Rich.Handle, &HC5, 1048576, 0 ă  Setwindowlong(FormE.Handle,-8,0)ă  Setwindowlong(Application.Handle,-8,FormE.Handle)ă  always = 1ă  beginT = TIMER   ăEND SUBăăSUB PasteClipboardă  DIM elapsedT AS INTEGERă  DEFINT hour, mină  hour =  VAL(LEFT$(TIME$,2))ă  min = VAL(MID$(TIME$,4,2))     ă  IF hour >= 12 AND hour < 24 THENă    hour = hour - 12ă    IF hour = 0 THEN hour = 12ă    ampm$ = " PM"ă  ELSEIF hour = 0 THEN ă    hour = 12ă    ampm$ = " AM"ă  ELSEă    ampm$ = " AM"ă  END IFă  IF min < 10 THENă    StatusBar.Panel(3).Caption = STR$(hour) + ":0" + STR$(min) + RIGHT$(TIME$,3) + ampm$ă  ELSEă    StatusBar.Panel(3).Caption = STR$(hour) + ":" + STR$(min) + RIGHT$(TIME$,3) + ampm$ă  END IFă  elapsedT = TIMER - beginTă  IF elapsedT < 60 THENă    secs = elapsedT ă    mins = 0ă    hrs = 0ă  ELSEIF elapsedT >= 60 AND elapsedT <= 3600 THENă    hrs = 0ă    mins = FIX(elapsedT/60)ă    secs = elapsedT MOD 60ă  ELSEă    hrs = FIX(elapsedT/3600)ă    remainder = elapsedT MOD 3600ă    IF remainder < 60 THENă      secs = remainderă      mins = 0ă    ELSEă      mins = FIX(remainder/60)ă      secs = remainder MOD 60ă    END IFă  END IFă  StatusBar.Panel(0).Caption = STR$(hrs) + ":"  + STR$(mins) + ":" + STR$(secs)ă  IF iCapture.Caption = "&Stop Capture" THENă    IF LEFT$(Clipboard.Text,10) <> previous THENă      'Rich.Addstrings Clipboard.Text + CHR$(10)  'copies textă      Rich.PasteFromClipboard                     'copies text & formată      Rich.Addstrings CHR$(10)ă      previous = LEFT$(Clipboard.Text,10)    ă    END IFă  END IFă  IF always = 1 THENă    SetWindowPos(FormE.Handle,-1,0,0,0,0,&H1 OR &H2)ă  ELSEă    SetWindowPos(FormE.Handle,-2,0,0,0,0,&H1 OR &H2)  ă  END IFăEND SUBăăSplashForm.Showmodală