Ordania-DM@cup.portal.com (Charles K Hughes) (11/16/90)
I just finished this program tonight and the net is the first public forum to receive it (aint you a lucky bunch of guinea pigs :) The program is called DIRT and it is better (in some ways) than the standard DIR command. This program is only useful to SpartaDOS users. ---------cut---------- begin 666 DIRT.ARC M&@A$25)4+D-/30 /@4 &\51[8QW_L% ,__X!@+(/"A-346! 0@!@y M(8B&"52L -#"!0 8,63,H%'#Q@T<.70 X ' QP\ 080,(5+$R!$D290L8=+$y MR1,H4:1,H5+%RA4L6;0 X-*00,J5+5_&G%GS9LZ=/7\&;5A@TR8B2:10 6&Ey MC)PY:=ZX 1'#!8Q-0][ R2,GS1DT=,CFR $#Q! T8>2P*3,'Q!(7()#4><O7y MJI4W;.JT*:,#!"0&5]/(*3.&SALY>1I#2F 5! @CD\N F$+9\M?&"JLZ1@ 8y M$@$7D HX'L /BHDHCA.T\+P;Q*:&!APO !X @ 9Z*XB0* "!$=*ERHV#0Iy MBB,I/R -=[BK2JD%A:*54H A37;CYJ(5@@8* */;L: EVP3-@+OD3.Q,208"y M'@)DP !S3J@^ .&.YY$@4Q\\\#(A0'- *@$T\DD4$+C#'RP#@-(/&/%!y MT"$_8*C2RSQ/0#,B&*[<ULD)4;AS&W_P3 A (PG",XPK"4)3 ()10).+,[=!y M0 LH\+#H(HSUW1=%?E.TEPH KL (S@KP$ !."] 0X8@H"OIB)130")!$ . @y M4682 H 3Q)I:3K$F". 0L280X/1G #B;P", --0D\X^*H.P#1B.A1,%GD_CIy MATPN*$21C [P2/"(%(I,D4L*DNH #0B01M%(&@I",@ T&+02P ') )$E,LA y MHT N,(ZJ8*P#.$FKI/0- "4C$4#!RFV([)J,#_!,D P/\#R0#!?P+,!,L -By MP$JPD " C*,2"!LL*( L&LG:RB(#C/>0C-/*BJ0&T4G;421B@N=L"'O)ITLy M%ZZQ*D#S #+,W ;/!L:Z ^7\21C\ ;@(,!A)]6A _!MT&"3"@B-;"(J)Z)Vy M$N0,#?MW,<11H ,-/>%.' 4\W_ +#P:=:(P.. / X'* XXL,\W0V)/*"XW(y M,D JHM8R-!H8M)%<([0,D.T BTQA"!7N&)T* XW@,K2HN0Q]HRX#-+++ *+ y MP14Y$ 0 !B@'Y")!%)G, @4B$-S3"@2BCA)%*Q&(2HJ\11^==')/5QUVTZE0y MT C8J80M=-EGIPW&E$R';70CM@Q=0M!DFVT%.2 <4 7;;L-]S-QUI[) (T(,y M/4<C1 P-12-%#.U%(TAXW4@29 -P-C" $ H(&""D4(6(3 Q2!0@Z4,$$"U2 y MHH H"Y3>R3E0*-,P- $H0W<\HKC0"@-1**! M@*(0H8C^$ 1_OG&B3*'(_>Xy M[\+Y3L<?AB/VV ]_^FAP1#W\A[ZR.8(>4 "% Y!!4%4(1</@-L"4'</.HVNy M;0. 0B;T04%1", 1#(!"*A*P'J*%AQ4A],4(HM"+#HAJ@B! QN@"D(L$0"$2y MT* ;/DH!#1RD8P#K@84 C!$-9X00 M=HQ0 D!0,?7:P12U0=ZX9V#MC)CG::y MPYWN>!>NWP6/ &A RB&EXH+9$UW7;M:Y8C6"*L=@'.0^QPK9C$ ,)0B BH*y M(_%$)[GQK<P=*<@6--31"C#!(P.%E!26%.#'%B0*&M;P3R,3!0]F2(]RH(A"y M+JJ3C!_ 0P'9>!L\"D"A1F22;NQHQ86:D4EHI()"8%">#:R@P%SH+1,3I%L%y MP7'!KFG0&W,#1@"@40\IMBX5T;!B*F97NU180(N4XYTJSJ;&QWF.'*!0FRC^y MT8H)HL.'"H"%/M*@@T8H J** \,&F'#R;T1 B*\D0-F]P#W8< %$W1!"%W0y M "BX8)XX:,4\TP&_L,U3&= P!S[]N<]^N@*>J9IG&F#0B0PZ YX0$$:X>I'!y M9#11 2/+X,P. (UW@ $< @B' ! "&@A$25)4+D1/0P 1 P &\5B+E-y M#, 5 ,(" M())$"A405LK(F9/FC1L0,5S V!20P) W</+(27,V(.7+ y M #$$31@Y;,K, ;'$!0@D=3JJW 1I @05-"D6;D3!!TT94#84<C0(42)(.24y M21EF3M W9D 0- BB!8@P(-R4N0."3!JE8^B\D9,'!)N==!2",#-VTQ0X)^F$y M(?)DBDN<:-[$1 .B39DP;C[.@5-F3!HS:<:$8<.F+%LY(&A(7 $BS<<[:1B#y MN#-VS6;+? 'GV31T8<.'4$&\C3NW+H@R>,:4@?/Q\=&(FRA*+7@0L^8S:89>y M-8LVC9LS(%(C3KF289O,)WV^\0D4Q!RY;LB<)+-;"H@Q;]JT <S=N%NX<N32y MG<("1-X[94JW-W[]+_?4P.T81_XS*)TT?@VW7%!W-/6=4F&D1<9\'^4W$U9Gy M7;=?<E'U=Q4==&PD1AUIK63;3PFNE5D9+N1VTQ5HE%6'4]U1\<.)2['!8&4>y M-I66'.W-\=Y*%B:881H;=M@>>32"($89&"JT"8@/67@=>=MU]UUXXV5769.<y M;19&'G/<E5-0B"UTV99%8O934F6<L=V2TY56%ALGG0'FB"M9-55OF;%AW7O4y M@5F'9C@8F4>'%(J8DG5IZ!$4"@/.L8EB#QT)0AUP2 >1#2S 4%.F-0E**!L.y MG9'"9D IU6=68XVGYU13BD>D0XWM^<8=CEH(*GR0V>"I2H4.B*BB(* @FJ%!y MG8'@C=0!!D(.FS)KDQB#\NH;&YN8))R%E!(&F5? T<&C''6XH9B"*7A9G5/@y M67FD5HA]U!.(']WYG;)'LLD&=V*!X,03!WDU&)QER99>&,81.T=[2JDI!QG,y MK91:?U]=^&.0*I4("0$W?6D==MHMO%:JA5H(GJM6[J2#B2V"L,4*?+0 ATESy MD-&%RB',O 4/9&PTE \\P/43SP.Z$4: X\VQA@]=T&037D_1=MI*)P6U8AG<y M&<@68[/.<;)N*[?\<E,R!S1 3CUA])]1/4V-[W2#%79863UBJ"&'O#Y<7:,4y M05) 'GI]IJ.E3I%X4Q)1\5W'QG&=:O9IGYV)U0DKG-#G0T\XP406U+WA5-X%y M-)KL1^/1,09?%@8]=%!%>T:DM?Y5Y^/<::$PQZAM&X88U9Q/:V10$2IX%^$@y M&(YX>HH[;929H8%P0@N2]_=0$$PP<2K> 14 ;U\)CC[]B$(3W91G16 Q1!%0y M'/23Y@2"=FKMAZ6!>_6O TFW[+0C^9EFDO9.M;EE&_]0&ROZ2!C@0)CH'.DQy MK2L#YWP6&BN9SB_FXAV2;K02I9A!+?DJW1NPAIGC2 QV*CE90!A0*:O 00YOy M2$M8J-8>,5@&!".Q6U">1(<5[:I$(^2+571"!C*4P0TM?&$,"D5#&T(K+3B$y M! .P8I63C"XX+#32"V40LG/)I88K.2*)\L: .EFG#F+P"EC$0I8@?J0&59SAy M%8T8K20R@#M6\:$9Y!"&,_@E,%%TX4=T)4/$8?&&P0H<JM)RH==D)P5*N\D6y M:I8QG?"$1]79UT$69Q0BO3 MC%F)O/*EHUDEQPVQ.A^+J*>WZ]%%7_S"GNA(y M=S?NG0Y[1N.?P_PWKT@%!0YPD@T9.">:.Y3J*4VJSLBJQ)VS:*4]\?GAE1CBy M0\7U!S*4=$.7$JDR(N!!!S,;2S6QV<C^G>TA3DE)6" 9E)Q!\7<5JHXU=? Qy M.82.1IQ36WOP4"0+F5,XH'K#&JAV(72>B@CL?,P[T^84? $EF JLGAS#\*>/y MW#,H/<GG/JM&A_:$;WSEFU1VU#(%(F"A1%P+0@N2P$UM;B$&+<A!22&S!2*$y M@9MDF^4WBV2'Q:3A/J!4T48ATU$L7*5DCJJ>VI:9EC#<)YWEU%G3O@DU,;QAy M*""MGA32M)V&I3$Y_FN//94:K,. P$%N&!4 KV-([B!O.. !E1LXITT+*64.y M#5V)[B05KA-2+3$)"H,84N)/-TSGH=8AC.W<!YF>@)5SSCO50AO:%:X2='_4y MW (#NU>&F3$-!)-]Y5C=)9Z[)F@ICMG@K13+511X533EXIS&,DNT .YN.#4]y M"W=8&Q0B_="LZL,*%]K#@^1 Q@=]?<,"$X0&RA8)K),[U1CJ( >E! :SQ"U2y M4^#J%S+<10I%:$)VA5 $*;"S"COE7$]!P(/>$LD'/KB*J?SZD=C>]$K#H:W%y MEK:%!Z+N>Y;5F'UAZ9G-5J:S7OELK*XV6@O1EJV0V2H4 ^NVVQ4V*F4 C5H,y M"T4W1)"_M7RM:#@W,A<*;::I\0T9%+,PJ%G)O=S9[^A.$H85+B2XG-MOZHY;y M8:T>% 0J<($*I#L'ZD*V4ZBD0A'8^253^5=26!E,BX-R)#K 1YDGN)/DB#2Ly M:/($-0M3RV/.PYKU6 HL;SB#&Q*5P)0-DSQW84(:]HD9I]A8(:AS+9(#N^1-y M-/G)"/V@_ @9S9\:-*E0? %M7S#C:$9P$[ 9 YQ"Q[@^0^JUN%QRU=R0!U_"y MV<]=>0.OV)N5,O S7Y)RRD>@8@8[ET7)LIFF;O3KR@"]RG\K>;2D"I8MA;3Gy M5K;V;5_2@ =^*L;-+=H$&30]!S><X",D9G)A&,JB%XYGG^1LPU4T4VO(_%K9y M"$2342?4GS:42%Z+F<-T..+7M[X&#QE*,EQ2O3LG>QHUL ;!1<EGOE]F6%)^y MW02J>56&-ARIA_PLF#;O_&[20K$]#!R2 UN]12!K3-S,E<V4FMD3XRBZ#C[$y M[9E^TI,!_<Y=5P9!$X(P!!N@4: A(L\FX*.98?Y00<$ZWUX&V:H[PISE>M(!y M[:9SP:6L12G^F8Y$J8/"O6S",G<) J4=0J"\^ TH/)I.&][@%3.4Y84=![JEy MAFV=Z02I,H7K6YM))UQ_38QNIYIZU=W'G=(4Y2'">S2LRL)U<6O4APF&>E#2y MY16FBE!O,1A5%OKF7[.#,.U4;Q\_(2X'B8.GF6>UT!O$H(;"()OJ6ZR># 1/y M>-<Z"+,HU-:![OH1%.3+U5:RJW[T C4.Y64A8/]I'E);O1EP_G"0XG0X]61@y M%!IK:)F;>9)5I:>>!\NJ3 (!"6H@UBW9>>\FD8.<4JQ-\&1D0B;H"EI@=QJ7y M;$'I?-,*J:8S=EYQ,D9]VL0)PTQ':8\G8 Z12UCZ$A3]8*5'/7QK%I<R*Q<Dy MK7HT<'M]X5H6QP88USH],0>O)&J%PG>6\33P93C;LGU[UGTT@3$@$ 1$8 5!y MX 3C0P0@4 53T%U3$&1#EC=C4QUR1$=V]'()PCAZE&DJ86RC9@:(81B+$2NPy M@19&PB%2M$=7542.HD5%$BY#!2VJ@1[JX1IVEP1=X389]SE:0DZ[0U8% C?3y ML4^SL21T- :>D1I8X2O7TQ.<-D=U9'/[TTV/5"A^!5WID1A_$AVQ50<*E"]Wy MTD(^V!-N\E]P,!;8\1$9I()E8(8M&!@O:!3K]WO2=CU..#0KUQD3XA"R](-%y M,G="85-5LQ)JA1P&4CHC4B2<IG:*MTMA8 ;(<B03LH)G^')I" ))\!!&U7>Gy MT1ZK,3!>]GX@H"@H1!T=!R?($21'MQ+A<A;[%$IL8S](=X&#$W:'TW.\YTB3y M\A]G00=7UQSA@20ZX4%QIQ?WTFFE01S"@3QZ45&;L#IA(!Q8L2%R,&8>Y$,,y M82KY<A8=D19PIQ>0 2I&A6D_M!':TR.N-Q8LH'Y,,4J>5GQ:=WY6(FX!8C<Ay M8BP%=QUU8(,]N(X3@A5Y<2@%(X'J]P9>:#^298!B,69U(&T]H2T7%!:QTF*Ry M01MZ=2@Z!P)=,%_+&#Q]PSJR!P)Q0(<2XA .8VU4\G(KX82R%A0(,CK\E"!;y M(P1/( 0@ 558 1&4(*08 !"( 0EB (W$ ,V,"HR0 ,WT (X, ,U4 .;, 1,y M4!?=A1-/\!)/H%T@4)5720,QD .C,@,V@ ,M0 -R.0.;$ 14$ 12X(1"$ 0Cy M6#UP&2PT ,X,"HW0 ,UT (U, ,P8 .;,)A!4 5'$! *<)@HD)B+N2PX8 ,My M ,R$ -D"05/8!#0$Q )4)4D@)B*R9@R\)@P4 ,V$ .;4 5.H15TP$Y/L#" y MD09AT )$T 1 L%QPX )].#!LX (C@X+:5!,E<1+,\04P(1-S<)R4HIQ^N!C.y M&1ZY\9LA. 5"DQDB-)THP2O7"74440.=4@0N<05-D8UG$)(9"%4@, *2B9NJy M$2Z4%EMET!Y#$ 3+XIF421%0D!=:P4Z=&9L@< ,S( ,M< .-F0.; !H(1$E2y M5"Y--C4 )\J !O%42V)Y<7. #/[\3<"!;H"!!T62R#.(90<(?@,Ly M-"221 H5$%.>5)$RI B((4^(>#1 P$!#$!!*GM1 P(,A*%*>4!E"Q8.! #L<y M0I'SADZ9,3[)@!"3A@X($@0V&$*2A(A()S8%Y 2!) T9,F7<#"T*P@6!#H:"y M<&1JQ2:!J4'DC$&3QDX9H42-XB 0PM"4*D(H2K$)8NJ4.F+(I)'SD\X;.7FVy M&A5"UY!((U*"'+$)9"J1,F;DA#G3)FM0Q2"8$" QJ,@3)C8W39U3QFA6H6_,y M@&"3QDT9$&W"R%E31@X(*P1>& +9A$H0(3853+V#IO=MP[/?O%D#PLQAC'!Ty MTPD#8@Z=.F9D@R&@@="0)$_*%K!";NKY)[\+7U=#@$&A)$Y$8K$)C0X!%X8(y M(<422Q21A4T13"4$86%0QUMB;+PQ1AATI/&&&RR $,/<! V!VM"^:&20X@0y MP$('!0 Q51GM 8"5W7 0*#;(# UAEH=/?&BT:1\489<[AQ@E&2$'!""(5,y M89Q%4[WHAD]RF.$<"'<4E6,8;N1!!UMNG.$"")R,"((I!%A@B!-5-"%$%48Ly M$ 0B,$""0!"PB*D+ 1(40H051>2W ( ] "HH 04U("@#I#@ *#$,$$%'\"y M@(V8XM17"!1/X$=%I.P0T,!+F3I!A0R1VB,F 68Y) "!8Q0B!5!,-&4FX& y M$$0/!@2:*ZZZ]LHKKQ04L,$"N^X:A" JK'"KL8*TX,*R 'C0JIN+P!"###/0y M4(,--^"0@P[0]A!$(#R$>ZP//P2!0@$9$!MH$(\<-\1C1S"EQ!),-.'$$T'(y M,&T0BT 1A11*5F'%%5ADH86Y@7 1;K$ \,"NN^+&*\2\11A1;Q+WYKMO$$84y M$ *U A-,A<$(*_RPKQ!#D>I)6A2@P%)%!"&2%&048,("I9W60\],B L) 'I=y M9$5O<UBH50PNP' KT&X4$(.;H SQ!AQYR)$&CD;%D$,.,'R$AFYL G"$E\By M40>.0#YM6M! XU& !-1:\08;=72F PB0$'"LS(98<=J:1C!2 5N(L+WG#^_y M;<G<U!(QF'R([1T$*(#K1;@J$[^YN-L^ TT+NX3 9,04;C8" @A&$';;%)0'y MX8NPAD!6Q!0T)3['WG$6 #H3R+SLD#0%6$ ($DSTZ4'I4IP^ <TV%R$%-\*#y M8$X!&A1BA!-!-%%$ZHM_V7<0\!0P@?9!4$&%%&X:X@(D!=BJ3P$5$&)$\DZXy MF0C?"011D@.#,$(3FN"F0:RN!4%P@ $ : 2G%/" 0<" 200P"QDP4V"6-WOy M1& 58& !09(0"'ZM+XLV, $2"$DM(7*4(1"@@&@, @\-?"00%*"0:X "&Xy MYSUJ\<U-5#! >8B0ON_9,%!'="&@O(!"0A"A"4G PI\"H$0!H*&#)Y&# 5P%y MDBJ(*E)3@<,;DE:A"SD).FP0 WADPP<#N* 03""<$21@@,HX9 QO:$-NW" 4y MVMAF*&OL#0A08 ,:#$5+0$H!" QA /L0X7Z2B=30#+!(D5@A"1TIH%/ -16Ly MV"$-8[B-&\+0&1!HP@ 4*%WZD%! %;A !;\CQ00E@ 2A)%":!AE*5V!18?@y MP@ 8T%X3@C"%)5#K!Y!PDS!Z"0)FN#%)D#P"&'5"F$^^H0YS ,%:=$.E,&23y M.W/(3BBKPX;-@, :P"R$$Z(Y31#LZR)F*.<90 . Y3@/NP$U%22X 8[A($Vy M0C%#&LJFR]O$TYSJ,, )PJ(^*21!".T, AWHH#4U^D2;><P.80YY47H8P 2%y M2%\6H&!$ $R%#GF PVUB P(*430-%KU-;N9 '7\8@ ;:FT(1<I=$?3K$#7D3y M@R!9FIDRW(8U0#E,-LTH&)J" $'\* $#G"!DTQA.W(P"DL[](8S:*8-(.! y M5$]B@@.HX"1#B!!K0(">(0@!!".XP2"?(!L\UD$.:TV"-IM#H1" 0 <I@,%8y M':*# XAPA18AP@$6L,@A,.$).KV!$P8+ BP<P 5HO5IB\*A'+/6Q-K=18W@$y M"9VB 7*TOA$#9=EP !I$83A/*,YQ:(D3AQS!1;7!"AY )TMO4ZCVR$"9#':y M63Z"P X'X 4[I.?(F"!ME/Q8V@#Z1M +/:UQ#&.$!1Q !-1X@ '>((/$/ #y M3QP 408Q!.<4 14'* !KL*/?F@K"_"JE[V\.( "EBM?YQJ#LM"@ZDF(L"/?y M8A1K+>7CWK1Q !V<!'XT38.,#"S0LH&@H"!@J8$YNT>AF* Z@_%.=\1Y&W(<y M 4/+D!N>--2-M0H0G?HS8366AOHQ$BEOG'' 7"08M88Y9WD-&<:9(,E$)0!y M#V,H9V[*J!4QUOA%V;1.'8R+CP.((,58*=M%_UFC(U,4G"3.I@ 0X$$&(, %y M)1BO21UR5>VTU"A"/4-MW%";>;)T"L#ECFBEY!L+(* &)RA$%T4U%<^^F;?-y M&4H9Y.P&.G<IP[(QL&GW+,BG'F 05+C"$U2 9$ 0C,U<\-:(" $$C!!T"+y MKG2H8QW?O ;2LP$M",9[ "0(@@HQ0 ("%."J1S)!,E) 0 -"@ CB?,&Y2: "y M%\A\ZQB8 0$?.#4E53V=ZEQ'H'@U2CC#,$XX( !1A@$%*@P ST@@ S( 0"y M8I "']1Q*FOY":NO\VJ64EH.&>H-3WPS9!#D 4A?<L2WD8!I36,"JFE&@#]$y M<6X=L(+,)[$%Q!T"C(F#0!E0%3>YJ;%K5TTAFMY @ BI@ 0I%*$(Z$# "68Py ME=J,@3"=>1)O"YQHV^#!*-O4#% $*8].?SK4SKT!/VIYZE0[I-\4,K)Q62K=y M?..!*R%,@!$(@6PJ0" !(CBU D) [7G[QL! OAJ30:"!!"0 "?9+ I](D( #y M1&&\ 7!! CZPW'7^^@BK<9&!W7#0>?8 !'[%00)6D(1"D-SD12@T&^X0ACQDy M4PUYF_".;([SL>D<2B 0 J+2SB<F)$ "TN[+T67# Q+((&Q62( %BB ((\2@y M2;[5BO1B(@40@*'M">^'&A) !W0(0$&:'T,_) #/R\OUBX0<MEXX,>D 'y M84.$ZI/0>AG OCFREP+M02 )W(^7'YS@O0Y, ?SJPR(!+/#!5,K AK5B\S8Yy MYS;FO>DDW9Z1YK?110)&$(57Q:HI$T!).7!2FN$&<U!.8[<=8F!AQ) +6!Ky M1L!RHX=H\&=Y\B=(/@(D0F(47V: "'@;SI %9!P_'!2V <"L_<$M8<-XB<.y MY1>![) )T "@J81A.80+<*!B39IU(514V84]I (;!<<<0F1C" #C$'8> 6y M%+A7NG&!O@$ 6\=%-D@%+><&+U<&,:>#\'=-,J< "J "H0=OS3$&U $=K'$;y M_;8E:9!-;=A2(\9MMT$!"@!N@S %4>0!"@ ";Y<K4^$&/0&'VQ9*&3('.^(Ay M+H(""J!<T'1W)GA4)!9D\R0#"O !1F!X)7=RA69<_\1XCC<4!;@6(, #"G!Iy M>(@%1J +T"#'^>(=U2&9[@C:?@BLM$A96!-V.2$OL%XV00%"G "2) D1< Gy M3E!H<4B(H(@EHMAO7,&+(* %"G !'A=->:=M?0<"9* &Q",AZ>)#M&)C9=-y M8A"*.>(&"G!8P]@G>+!U(E"#7F2%#I%EK7%4/W$A0C&(MR$("@ #A=>-B?>-y MBQ>.R8B%:) A_697,O=WMG$&%-(6M\$("I ""0</CZ@57/&&1:9OUX$E>>")y M7P)8(& )"M![H* 'J0*"I !)Q$:JV9MOC$'54('\99-M&"2)^$+=4AU6)!Ly MR "&-#AH5" -"K 1"A'.< -I6AK3@ #Y@"&O19-\* PU9LL75L.TD%^F"2y M@K"4!+ !Y!FN>( 7MF' ( !"Z -%B$1F $(N"5*. #"K "+'"6EY@0]4(%y M-N"6<-D"0+ 9[=#^%$$2N"7(Y0$=[DI"@!2(D527N"5@U!$:+ Z"8'"[ y M:2E'., '>KE?AN"52AD#0[, (> $/O 2,3$3\)AY7!$V?\=5/K%S0J$)Q+*5y M,4 *FXD$KN"96RD#N+ 'D":2]$43Z$@7!$#(/!W57$560$"PC";3B #S+"9y M06 -NND$,P .C 6<8C$$9$&<1B$#QVDK:L$6;B$4ZN"<,T /FSD%_E"=I,8 y MOUF:=Y$7%>&=(% #X?D7@3$8(" !#!!\3D #', )P:71& "!*J4-0 ##$ "y MP/D8D8%W#B$$7&$#X7D9F;$96_@6?_6?6UD#1, '?"6TW9'&:4;S[$C8":'y M[L0 EF@(19 \Q'B%&28'6/%U.W)D7($%#+ !;VETQ*51*8J"IS$4/6H$,"JCy M?:)XACAS1O9T1L$&#% "!%=$BN>)V92#%^9EN@B%Q_6?)P$(## S,9J.3J (y M#&!J[O8/RT>!&Q5C&P6(DIA-E, %6!K1?!Z#A%[**A]*@@"GD"@";</J, y MO2<+'IJGO, 1,E0Z_-0QL ,O"C;].F]28;34>!6O%^V(@985 ';& 4,T4=y MT,"H2& (F1:C?*(-8_J4=T<.##"5QE9U[C"FJ'H%JEH$^, %B"!W;$&$M:$y M^ @" M 9=8 -["22# E%\(&B;&&S;%1;VB(I62(605KHUJC() =6P("%F"Ly M*]D " "8[*4"X.H0-- '8!6L.B2G?I)XX1M(N8#YTH5#> _:>6<X0 8 #y M4M !Z!U.L %#< 1G (EO0%ZU4$9G"O^2I'M"0 . ' "NP>M "W"J^_(%y MED0(#@M'$,NO.. (]PH%CC&,F%0$M(4)#8!NHM"R,\ *,&L+#6 !MD8$>MIBy M6 H"D-<&,@(,&(NPPZBP[*4, !L%!1 !T -#= "TF9'8B-O3CJ+_89GVL$=y M;H%72@,"-. "N^4- &L$@F %-( .,"L/,,L/#: !&OL$'#N,5RJ0/2LC"Q1\y M9 L!8OFP1H@#&N #F"REI2RM$4"#H!N+E"X,X ##F"S@H"S<?N)<YMY#C Sy M&VM)3. &>"JDN$7+D($>W.-5J! C1L#8)"W(+NW:N "5!T;T,'#E!K@@ %y MP^< LEJ558<("G02DH"Y*PD[NB&*K0:'W)HCG)"[#F$*HBN[L. *A!HF*(Iy MJ[&$\'=7A"%S3B9SM7%:? 8"NN *'!/0,DB+D)09]"M+%4;<% '<-:#Q""Zy M4Q #SE"X,8 -IJNO." .KZMU/L .KRNV4S #]I"_<,D# / !^"_,Z !JQUy M7$ !!HS 'O $7DIH4(%*&# MO:^,O )L(#$GQ/SRLJ1O '$ $@C %UN<0y MXZB,.=)O<CJ\( %#Q!\_ZL%#] "ONIR_J8C/+*M;U!CV00=.==29H!Y,$P&y M#U !"Q7"HQ*]3)@8;O#!%*PI>&# ).!N " (,WS"-, (#[ >KN6.& )$@P%y MJD1R.0 *'#P#JL#!,D +#_ "*0 JFI+"-D)_GC$YVXI+=RR.1J45> 0':? 6y M/P "OH#!7(P,#W ";Q>&:'$5(.!**L #;^,#3GJI>[PE7R(-97S&2'"4#] y M9@P%JQ2Q.6 .!MS(+@ /H3S*I<RO.: /#Y ;P<T! !HNS)M#0 .> $.!!y M& !&Y!9"&9H1Y8=QI6M(O#+)\$"$( !)R&O/;(C%985I'0;-L#,#@$$OWS"y M,J $$' 5YPK5G=I0><%$ #&IRO&:!#.6J<"<@ !"$!PSB4#?*#-BP0!(W 2y M1N"%0L$=5<(&9# A-EJ(L@BLDL<W !*["27I8526-&8I 8K/&[7#)/P<L=y M.&8AL8G/I!#.I8$%,. **3$#N !$PR4P@ !'8"D&^M<J<E^:Y5D;R &0L5Oy M=, ,Z1S&1H #UO#,6N<";1IC(&9<7 $.$* !X>9<-%"13XK,0L$5ZB#/]"S2y M](#/_@#2]8P $1"P<.D"$A !"X"DPF655, !$< !;_EM0WT;6FH8.[)'>6 "y M$; !11#2OLJG6P.(&^5;;0 #$= "RR5 Q+0$2-@=TMN$\;=S_*85!I:M.M#5y M>$T$$4 ,N $E3T#6! !*5V%8A !P!C2RF>B3U(;=7 ;/SA02@<;LG%O;! !y M'F0'$< "*^G".7IS$*TT&<*G1-T&V&04WC0'>7,;@##;*[DE20>(?_2&C/<Dy M;_$E&/$&&4+4-&W3@J0($2 1#M&$#VV 2O,EE #;)^$)G'TF;@O3J! !%]"'y MH@<"7A4&8B"(D2@+:3W8PU1,M(0 FR@4U7W3(, +$> !]EW8M)0 C_BD/N'=y M9F0,$2#*PD3@NP8-:8T$5-D$5IELCYM-.FH4VB#>#D$.Y5W6,.T.7;W6"( /y M$6"'3"T $K ![ UO$6+=7Y=H'F(4#" ! O[@Q738&I9HU8QA%B !EMV?&>L8y MYXT%5* "4Q72-$ #4S7. . #$G !OAIA,I(=(F9@:=/B*>".-TB+AV9@KR8%y M..[21YZ:?-K?@L057+#DSE4#9D W/#VQ$M ![TR&4AN\ 3W0NB$4>B !#6 $y M%7[A5$ ($O"W.KX$^9T#CB#D,H )4[76 R *@"[HLWJ5K"#D,V +$M#9[P@,y MM%35-: ,;HX%-D -4\7>WG#H X[?WY8#Z.#H\A#IXS4 _!#J(7U" 7@2$# !y M,' 2@I,$O^97($ %B<9AAB9=?:QHRZE1()(A&C !^^P0O+B!B)9T7E4&26<&y M4^9765 %0[ $?D4"N^X0+C !#>T03O &=Y A6I9-/D(E8V,41 VG*2K03AKOy M.# !Z_J-QN4=5]--WE%GO)4&G?$E0E#NH3$!###H56<%"@\&$Z#9\;@CM,%By M?)T;-:(7"2841_83ZGL;W+$6:T &3C4A+L:S"D\'$Z !;X< +^ >:%#R3L7My M6#AV?C !&> RLC ^S0$Q)$A;?56<04"B##Q;U<#)WM)'3$55,!^-?(>\CXEy MT"%0QD5A V7-G2$)$W +E,+ \ )$] ;T<#2Y^RIC !)@(+$Z 3Z GT:0+y M7>\RM# Q# !"4 $*K0$,.$,73\"!0#VV# !XUI,,"$.$Q #93]"HB(%6>#Ty M4/\1Z#'U?;TCZ5MY-$\=M6$=(, .<U\ N# ]L#P2<_X)00 %.#U!9 + Z y MJ4^6%)#Z+J,+ ^ !LE\ NS *$ !%C#.<# 559!73^!6<"57,D !"0 "YH$>y M5L #%+ !23 ('6''0]"NP:N1OF$$%* !.C 510"E5&(E"69D<K!O,9SZTE\$y M,J %%* "8'D [J%9OW$WPWUAU^RD=G WHM52#(*-Z-\1,^ &%("OIN_XM&0 y M.( '%, )BLX:HD#@D !!! #C$ !"!#]'3$#ED !,-!_).3XM'06;);8>Q=4y M0R4;146/2857( *=#C8.D43JD !9&_ZCD]+!4 +%.#@I[-35$!;OD !'H0,y M%/ #)_$$*N78B18&<,!5'9(&%'(;@D$82848/(S<] Y_1<8@46T4V2L-%% #y M)V%@FG$'+KEDT&WL;XB18F"(>.,3SKJEH?0ANI$'7\(-%.!!YD !BN\#2A^Xy M3:\3/RQST'%-ON%)H"3RQC6\& 8/MP_V^D !9.\#9A^X'4$ %6 B#E !;@_Wy M=X<!%8!>Z4\#(E !!P#X8,\"%7!I'4$#-E !JE_W0% !,/#R%+!/? 1*%'(;y M#"(46T #73 C87 '(+ %*Q #-M %V#@Y2848(* $%:#ZM$\%%9 "+^_S#L%/y M@C$A%W4UR[E-C<9^U3%E0+&U7E !JM_S:% !O>]NO^\0G#KTQ3\C%9#\RY\>y M?% !T)_^-8#G9NBNV+](%7 !W>\0&Q[^W8K]"ET!E]81-: )%>!V6$P*%:#Zy M=>\*%:#Z8(\+%:#ZMC PE !QN=N)3 54/##,H?LQL4,%:#Z/6\-%2#.[@8'y MX% !R;_\Z:$.%? EB7 $14 %Q];XCX^#+B+-2D=1SZH5@D$82848($ /%>!!y M_E !/' 25W ;/F+M\6:&[HK]?CPAG.I;&S4AUBY4"98'7X( %B!5%O"][@;_y M#F$U""88A)%4B&'_I00=@B$'^\\!%G!I'6$#)F !"A %.]0]10!]%L @%L1y MA(,#.F !!! #1.!GT=\1-N $%N!!6& !'' 2._%D!L97-YIAZOLE8F !'L0&y M%N #O>MRMT'48\.$!I;_>%-*!94AAF9@@D$82848]M\9&6('%K #)T'=1=8Ay M3^;7&::^,[(U:& 4@-CN'7]A@7@'AX$8+24&UV04@& !$' 27/&!<O EBF !y M'D0)%N#BX[4 4[$33V9@?'6C@&H!JB\$ X *%J "90\]-W-2D5\$>V-@WN%Fy M87 5'I)-LF !JD\$ \ +WYKTT',SQF !JE\$ P -%L"'/G \^,,B#MG#!D:^y MW:H-%J#Z2# Y& !;J=F[F !JI\$ X /%M#[6 S\PD_\(Q V G !R;_\Z<$ y M%^!!%G !/;"224!D6H']&38&8W!7V12M93#=M^$CUBYG3,@=9$!*6B%4$\*Iy M(' !,G 2S7A-^-X9169@[^<;8R..6],BOL%5"ZB%<_ E*G !'D0#TMAN!@ (y M"J*^>Y7G&PF*VNX@99 '/G !'H!V0" $2Y"S'.F)!GWM]%X&2' !&P"6@ !Oy M&0G^<] &TK$ESBH%%]![7' !XPH$0K $SG8!/="[TFTC4_*&CQT&V1LA 1^\y M#"(8CY:]AM8A-4;P<' !)7 2!B88A)%4B '=4X &AT$'&8(&=8 &A0R2>G !y M'D0(%W!I5/ $4. (%^ () (1U $5/ %L"(K1( )%\"/@Z O.9N1Y7\=T2I3y MVFZ JPUK@D$82848(" *%Y"F"%L1QY8?K' !EZ8O,6 +%P !(! P#B4JQ];Xy M60 ,%U!JF/8$4* ,%^!!U' !/.80'5)C7^ 9B %E1N9-@XQO/)P$)Y#R\8[<y M6O5'TOPEWG !'H0.%_ >-0HG)LC9\%\G !'L0/%X!B)HI@/W[_QHS;"JX5y MT@P"P.1!S_R5XZ4 &H !XCQ>EHD!ET923(,!"A %.]0]18 #.&"6@\U#19 #y M0H !! #3( !!?IM5H !\RQNZ@\&&$ ,* &&'!I)"4#=( !!#!\&( T4]2y M,8 ($J2[&* !)^%C;_92,95-M"%BG"!!)V$*&"#.7PT+&$#+*F0<5* +&# !y M5/ #JX'0H"%7Q( !%$ %/X#G9@@:%NH,&(!>=Q@$\XL!%7#%"D &G809FC%/y M<0$"XH !IA@$,< .&+ !(&4$Z;,^M'06#G&-7 &2]H !XOS5 ) !%$ %/X#Gy M9@@:^)F2Z'6'_4(!&5 !5ZP <[ :@"$8J<45'I !IM@O*) !#0!21I ^Z[/+y M,I !XOS5/) !$T %/[ :" T:AF0$&3 !5/ #JX'0H#$#,9P!%$ %/X#G9@@:y MX*D%&8!>=Q@$,T &&=#[<!D&A3:>#@D:;I !IA@$,X '&= (&4$Z;,^$2L(y M&2#.7\T(&4 !5/ #>&Z&H&&<EI !Z'6'04 #H) !%7#%"H &4\$6RJD5<0$"y MJI !IA@$-$ +&= (&4$Z;,^M.4+&2#.7XT,&4 !5/ #>&Z&H!$VTI !Z"5Ny M15 #W) !&'#%"O#[#N&:A<&A<6$]&7!I)%4#\) !B8D^#:4/&>!!Y(%BVVWLy M25?M0\+#ED<&&0*(=R#P/%+(#J !P*P!'B0"&M "*_D$:]!X&0*(=T E;JUWy M^'?'-KK'634'[S, 'Z0!R;K=>F4;'-I;=^78/I[ULY$5Y=O"3Z*B//)-<S &y M:9 &(& #&D #)U$&<5 ';?%/GM'QV(A_B%U*P6M@,[#'6;54L@$$&I"L>YIHy M9$ A90#=5B,8C\:&V=0&CL=^LG$'UX3O0B6\89"]V:L$&D#;;)9GPC4%,W)-y M%?)'D"=B=W!- FWM=W 8:_ E5* !'N0%&J !)\%X,IDC!(T9H.JL'ZE(:* !y M'B0'&N!!?* !'["2ZWX'&-5/O<&%LY$5Y8L&7V((&N!!0Z,!7SE> J )&G!Iy M0R %,D *91<%,]0G.. *&D"4>D*,1( #N, 2,2 ,&H T3\$4@"=&F !(% (y M0B #Q#0$\'8A64L'?F4-&K "[P]O\D],YZ%70-4&_@T=UT0'EQ]K?P0.&G!Iy M0R %-* .&N!I9Y(FA(,#]* !^V4_^(,#_L 2,8 &X T3\$4N#D&^!!'+ !y M/+"20F"8[B0316 YWS04%X)-T^W6>B>+1M6$W)[R.,!19F,"&_ #)T%463\;y M65&^: #=QBY*AZ'Q(,#QR&Y<&1@D0X*--->&7P(#&^!!.K !'+"2ZWX'&-5/y MO<&%V$@A9> "1+ !'N0$&R#.XR4 6+ !#0!2>](G1$!;8K !"E#V%90%;+ !y M^P5T6& '&Z 25]!60 (&^#@R$=;BK !ES8$5@ #E+ !#7!/>](G1$!;GK !y M:.E$4(0%.( *&U !4>!$1738M]4C%%(&LK !^Z4GQ$@$O# LBS0%0B #Q#0$y MQK !7^EN 0 -&W!I0V %,: -&_ KX4F:L(FM&0 .$ .&\ 4 !JR'<#[K !y M!! #^+ !"!#]0V %,2 '* _8=\#, !9V$!8C4%M1Y6^P5T6* "'( =ST$y M5B # MH [8A\M.4#8B7]5B #2, !#=".>](G1$!;4L !"!#]0V %,, %'( y M41! V0&8B5M, ''##/TF\%Y296[$T('( 4!! ^0(8B7]5C #F, !'B0*y M')"LVWT%4+_;\WX"09QHEB<4P)4A@'@'5'(;D"=BML&AT,$*' !)]$A3U84y M7V(+'.!!P, !(?#R"Y!W90,4VZJ^IT5<'79Q8N4R0C U, !,[#XV],]_^C>y M#HF">^,=;A8&5^$A2Q5IB<97-PH"WB!6+D,$ X . UKZV],]12 /8N4R16#Ky M'- !+U\"+.*0/6Q@Y-NM!M !JH\$ \#2;J=F&M !JI\$ T "'=#[6 S\PD_\y M(Q V+M !R;_\Z8$#'>!!0M !/;"224!D6H']&38&8W!7V12M93#=M^$CUBYGy M3,@=9$!*6B%4$\*I3- !,G 2S7A-^-X9169@[^<;8R..6],BOL%5"ZB%<_ Ey M5M !'@0&'< ![68 @# 52,#NM]@;&1)O9NB2:M !VT@(0" $2V#'XZCM#E(&y MB8']=- !&##:'?^D%RD;4L9'?M !!' #B- !7^EN@" )'3"N0" $2R #G- !y M?[5^X-\A-?8%GH$8,W)-%?)'IM !'@0+'>!!NM !'W 2Z][N@FCP<&!A/*&^y MH/4^ P "Q- !'N0,'< #*VGL;MT:7^ 9B#$CVF[R3B*(=69AV,)1M^$9B.$Dy M38@-'= #)R$8A)%4B '=2> :4)I-,9DC6= #,3 #%HH";6#:V>1CB@2MM_%Jy MXM !'W 2+"48A)%4B %E,Z+M\48&7\(.'>!!]M !#9 (1U $5'!LC9\%T1("y M+W\!?QA40]7:B#0%3JJE"N !JA_Z%. !;J=F'N !JL_Z*. !GN8#.$5"CB\#y M'J#Z=<\#'N!I/E #IN_X1N !J@_V4. !;D=K6N !JM_S9. !XNQN<. &'I#\y MRY\>>. !7UD LS @N !O<<(-G$2EF 3)P$*'M #*[GN=T!<9F-@EB<4P)4Ay M_@10#?EH&?DDB!'^W6I@JN !%7 28J<T6>J0;O EM& 3-^D!F+7=QOZ&/*&^y MLC8V0;PC\<X:6?M/B%9GNP,"R. !T\XW \!N,Z+M4:T5W($M''4;GH$8(" -y M'A ##S8 ,J!($'U7SS'O3>A2%17RW[11>%3^A<$-'D#;#@$) S #B@31=_4<y M/I[U&"90=!#$B3:JYF 3)P$/'M B7 $14 %7P KLD($^N !*O!: D(@!B+Sy M>7X=XZCM#E(&B6&+'_+<!/ !?PD$0K $,^ 'T -X !'T -R "']![+/ !y MXPH$0K $,V #'^ () (1U $5'!LC9\%0/ !"!#]1V %,: $'_!7ZP?^_8;)y M@D$82848Q?X!EW8$5A #7O !&G 2\6:&;_928A!E(684:/ !M*Q"QD$%<O !y M-& $B7 $14 %7P KLD($JX$&UX3OMI&U=PP'*J45*+ AF"P8<J!(?/ !,] $y M[C8T4Y&MUP3<*7]DH00'/<)^\^AA5*(U%W4URVD('_" B7 $14 %7P KLD($y MJX'02D=1SRH;96 E:YY-/J;0'Z _;>81: )'S#6PX$$2] $Q40*'Z _;>8y M1> *'^#5<8D+'R!UI<,$53 %PO !'L0,'R #)]$&IIU-G"6D&<*1H&%&A*$&y MA1'$B>89B'%.'^!!X/ !M*Q"QD$%ZO !"] $CNI00D /'^ 2) (1U $5/ %y ML"(K1. /'S#6PX$$2] $Q80 ("!5(! #)P$'>)--G"6D&<*1H&%&W!9*<$ 'y M09QHGH$8804"'O1AXPH%3% %4Q VM*Q"QD$%>[, 3>"H#I47(. 1I (1U $y M5/ %L"(K1. $(.!!6 "%7 2\6:&39BM\>U!-3(SW+D$35!,=@ "7SE>"@ (y M(.!V:J8((+!?^'1WE "EQ;N,> )(*#.A%U,.( *(.#5"O #LO!4X38$32 #y MO ""B %.]0]18 #QO!4X38$32 #T ";@=WV@ "^X5/KPH"ES8$32 #[@ "y M!! #^/!4T1_N,2 (5!F(9 #*_G]I"1K8"<3D@C=21!I/I[U&(:1Q_5/5N&My M(4#Q&?9'<N86CIUHH[K;)Y@$T13^*5\&<5 '_Z0AT!T"R>H0QGX;0':-91 'y M=?!/V10VS+&<%YE-@ AG94#P[T<&7Z("(= ")Y$$D99H0':-AI8$T<3_SY%Hy M2M@9+$ #(4 ")\&G8OXDB %E<'@&T@$;MO$E/A "'H0$(>#RZD2-MN4B0':-y M4A "+" %^.2*46N&[FH&&+9D:_$"<KIDHL@%(9!KB7 $14 %7P KLD($^R0;y M@.@:<5 '_Z2I3N)/ *5T%)489A "'@0'(> !*RD$;Y 'TTU_R&T4ED<&?@62y M>A "'D0((>!V[A8 CA "']#]#K'AX=^M9R = 25/W>$BF! "'B0*(4 #)W$%y M\Y[O*LJ%JPUK!B88A)%4B%'(Q<X6V<0*(:"21Y=-S)%T>7!-V/@&[T, (& +y M(>!!P# R"%L1QY8?RA "'D0-(6 "*VDU_=0;7%@=KM,=E..#3_(EWA "'H0.y M(?"5[B8 \A "EY8$1B #_# R_7<Z.T4%.& ;;E<>](G1( #$" "!! #&B "y M"!#]26 $,D "(K"'A2 $,D!,0^ "(O"5[K9C(F#.."L$(N!I9Y(FA(,#3" "y M#&"RMH,[5( #5B "!$"Z(G [<:O:B "\UP:.$L'''02?B ")G 2._%DU\2%y MU>$ZW4$Y/BASB,!!NBL";C=>"\ )(J#Z0C IM"69<\\IP,+(J#Z1# NM"6y M2<\\IT,,(J#Z13 SB ";C=>%H -(J#Z2# XB ";J=F[" "JI\$HB\"!. #y M # "R;_\Z<%K'D0!(U !*YE68W0;0U_\(. !(^!!*# ",^-8D%4$-R #(^!Vy MX\4 /# "JM_S1C "XNQN< %(Y#\RY\>6C "( "6M<56? 1*%"+R[BT=_*U6y M9> "9# "?X46*>\CMI$AA/$=<N#8.R)<4_ E;@#X#8$'(Y#N&"$$,D!,0P "y M+? 1%Y*U=/!-'#6DX"D8<D8'<^ "@@#X#<$((S S4R $,D!,0V )(R#.:PH*y M(Z _;<G?4($JC "IB@$,$ +(V#9OC "9X$,(W 4S!>"B -(X =ST%0@ #y MW# "X>5N.F .(_"W9Y(FA$-+!P /(^ W^C ")C(:X>5N,. A&NR:*(F;$)+y MP(04.B ").!!+$ "R;K=QOZ&/*&^LH9'_=0;=/!-(# #'"5*045:*CH'8Y &y M:? E-D "'@0$;%<(0B #Q#0$2D "*/#R\+_=L!.ETB$C"(EY38K<P)WR5$ "y M*@ %C?(H4X$#/OPA,&5A@B%G=/!-&R509W!7SPT"7D "'H0&Y'X2@O%)6'%(y M(! #82,').!!?$ "XUH%%&$%AD ";J=F0T,"#KXG?4($NZP)).#@>](G1$!+y M!$ *)# S3[ $54 15N *)"#.XX4!N,!V>J)VCR(,)* 5: GQ$@$S$ "#5 %y M>D*,1$!;UD "#5 %>D*,1!"QX$ "#5 %>D*,1+#+ZL!V@H8$^$(%]( 4.^ /y M)$#V>D*,1+#+"% "!S %XZ4 $E ""T $)POTHL(!)>#@>](G1+#+)E ",R,2y M0"\J,% "! #.E ""A",%&$%CT($): 5: GQ$@$3E "#5 %>D*,1$!;6% "y M#5 %>D*,1!"Q8E "'L0&)5!+C?(H=E ")@(()4#V>D*,1+#+BE "X>5N,$ )y M)< )HLF:L(F.> ))8 (M HCX(*)9 24 (54 15B +)>!!O% "XJQFQE "y MER8$03 #T% "GG8F:4(X.: -)>#5^T@.)3#/@R $04 #[E ";N=N(( /)< y M)HLF:L(F.2 )F#9#%!6:WT %F "\SP(0A $,P "934(0A $-* ")M![-& "y M'N0#)J"2;*9W-#YE+745'C('2& "'B0%984BX" 7& "YY@D2T(%9F "!. y M&@A$25)462Y43$L > , &\5;K@]:P\% ,($!005,&Q)PW=>2,*3CFy M#9F"9M[( 4$DB10J(-"$F0/"S1LZ(,24*>,&Q!DY9<+089,'Q!LX=-*T2:.Gy M#!D6(!;*H1,F34DZ:'R>F;,I#$H0*,G4<4,FC!LZ..>P>7,'IU,R(."4D:,1y M#L<R=DB&#$.&)8B'<]*<<6/31< I/A>"2'(V#5:@93:1C'D4CIPW:LJ, 6GFy M;QN#/'>"H/,&A!F?:>:@ >'3)5L0=T:N 9$'X0DV;#*&";NX<1D\8^K,*8AWy MD\\R;,J<<0JRX4,7FS8%3&(&A-/.ES5R#!.R#!TZ6T&T,8[&H<O>#=V$W2G4y M-P@9-$*F 2G&I]&6;NJT$3G1)^.B)7&$S(,<1) I0Y+0#3]^*\XD)PZ' 0TBy MI9PY;H$PA58V55<''(MI5-L;TFV5%H.^3<76)G>DP5\;8:S!&D%9_752&(>9y ML1%R<N 6D!.--=3&<D\-)P9"('D$DFK5X377$T,(T1&(90S'5((%N<$C1V_Ty M]A%!<FPRU1@JI<'@'#C!$=M&901(UQT;4582<6@D)$=+5]5%AALG$#92:&RDy MH6%6=8!6'8SH]1=''2I!9&&5N@G$H5]O?'B8<,6)]5),,]6$%7%I'A=;5(UUy M5L=GH:U6$'%FE'$'9F6D(0<9FP E%$=I:JB#;I 8P 89+9$1%E.DFDH&'F?-y MA <+>;1Z*G%-(<<"'KD-@="I9')7$$%L:'43D#DYQ%IC&*X)E$K*25304@_]y MQQ-388@1&V999@OG##" D"9;H#)XAE4_TN57&95.-(.XKW'$& C@XI8GBLFNy MN)>+,"K7DHHLTL$1"A*)&\88F^&%4I$I]+<=DB"T$.T<(!4)Y":V%119A\;1y MT1+%<O1T!AITM!"1'%ANRBAG".7DE$%UF-%N@G_5,3*R1VZ%,8-VO,%&'<AAy MM=P<JW&41F^.<OM4:2"LX=&EIQV\4DO-7>HI1WSZB9E$:P"86T!!L'$03E=Sy M*R^'CUF[F$P%X4?:'7)LA]R6'?89\F'/@G3P0C#9M,F@3KK!46%OX,TAP&&.y M6\;*1U,&TE1O=+W85G%KN[AOCZ=$,<MU;.(T59BAD8>] 0WA5)D)^K29Q;]Yy MZL89_8D]*4@VME'X7B$!/5=^,!]UT'(OHHJ9A6QT&I0;J_?V.W/5G:Q<E2#Hy MD,(FD PPA$9RQ,81$C831!0:"%)%041-12Y.3U< #] ;Q6BMC%3.0$ y M P@0!!)(H6*BR!2AH"8@^9-'39D0(QYXX9.F#1N0-!!4P:$F3=LV+RY@_&,y MQS1LRLS1L0D$I $#"[H@\D1A"Q!4RH2< R*/0Q -[VA\ Z+.G(XQ#0YYT@1$y M&#<1R]@ID['-&SEE0H#0D:+ERZ0NEC:]286CTS%TZH1A P*.G#=GY(1IX\(Ky M3((&F]BH 8*LV29AQNQ=Z%#.F(X3R72D0Q2LV+HN[Q;,XH(*DR5]000!02;-y MG#%L+K8I(\?%2[M2B@0ATJ2("R=/KF0NZ_EDRKHO(Y<-0^<$3ZH.SZ!A >(,y ?4:QA(F[L2.;-&-L=W8S$/6 (FC!R4O)$4D>XRDT: y end
Ordania-DM@cup.portal.com (Charles K Hughes) (11/18/90)
Okay all you masterminds out there...I need a FAST, SMALL routine that converts a 3 byte binary number, into its 8byte ASCII equivalent. I have a routine in DIRT.M65 that does this, but it is pretty slow (and pretty fast too compared to some of the ones I've seen). Feel free to take a look at it. Anyway, the routine has to convert a 3 byte binary number to its 8 byte ATASCII equivalent. That is it. No other requirements. You don't have to remove leading zeroes, you don't have to right or left justify the number. Just give me a routine that goes from 3 bytes binary to 8 bytes ATASCII. Think you can do it? I checked about 8 different books, including a few non-6502 ones and they *ALL* did it in the exact same way unless the CPU had a built in divide instruction. So, everyone, show me what a quack programmer I am and write me a faster routine. I'll even give you a whole 256 bytes to write it in (generous, aren't I? :). No cheating now...supercomputers are not allowed to compete. What will you win for your super-duper amazing binary->ascii converter? Hey, honorable mention in the documentation of DIRT. Thanks in advance Charles Hughes send mail to: Charles_K_Hughes@cup.portal.com
Ordania-DM@cup.portal.com (Charles K Hughes) (11/18/90)
Here is a minor update for the DIRT.ARC file. I realized I had left a bit of text out of the DOC file. Please substitute the following DIRT.DOC file in DIRT.ARC if you distribute it. -Thanks Chuck. -------------------cut here-------------------------------------------------- DIRT Version 1.0 Copyright 1990 Charles K. Hughes* This is the version 1.0 release of DIRT - a new directory lister for SpartaDOS. Though meant specifically for 4.0+ it will work with any version of SpartaDOS except for 1.1. DIRT will give a listing of files similar to the standard DIR command in SpartaDOS, however, instead of giving the time a file was created, it gives a listing of the attributes for that file. Why use DIRT? Well, it is faster, shows the attributes, and is better than the standard DIR command in two ways. The first way is with regard to very large files - DIRT will show the full 8 bytes of file size (files can be up to 16,000,000 bytes long) where the normal DIR command only shows the lower 6 bytes of file size (any file greater than 999,999 bytes will have the upper digits truncated). The second benefit is that DIRT can be told to NOT display certain files, regardless of their attributes. The standard form of the command is: DIRT [+|-phasd] [!] [<drive><path><filename mask>] The options are used as follows: [+|-phasd] This option is used to specify the attributes of the files you wish to see. If you start the option with a '+' then ONLY those files that match the filename mask and have the attribute(s) specified will be listed. If you start the option with a '-' then ALL the files that match the filename mask EXCEPT those with the specified attribute(s) set will be listed. This option must appear before the path and filename. The letters refer to the following attributes: p - protected, bit 0 of the status byte. h - hidden, bit 1 of status byte. a - archived, bit 2 of the status byte. s - subdirectory, bit 5 of the status byte. d - defragmented, bit 6 of the status byte. (see note at end) [!] This is the NOT option and it tells DIRT to show only those files that DO NOT match the filename mask. This option can be placed anywhere on the command line, even inside the other options. [Dx:] or [D:] This option selects the drive. If the Dx: format is used, x is the drive looked at. If the D: format is used then the default drive is looked at, EXCEPT under SDX. [A-I:] or [1-9:] or [Da:] This option is valid only under SDX and is used instead of the drive options above. Regardless of the option, the drive (if given) must end with a colon or the results will be unpredicatable. If no drive specifier is given then the default drive is used. [pathname] The pathname must immediately follow the drive (if any). The pathname must be a valid pathname and end with a \, < or >. If no pathname is given then the current path is assumed. REMEMBER: Under SDX << and >> are not valid in a pathname. [filename mask] The filename mask must immediately follow the pathname or the drive specifier if either is given. The mask can be any combination of wildcards and valid filename characters. If no filename mask is given, then *.* is assumed. NOTE: There must be a space between 'DIRT' and any options in order for SpartaDOS to recognize the DIRT command. Likewise, there must be a space between the attribute option and the drive/pathname/mask option. The exclamation option can be placed anywhere and does not need to be set off by spaces. The filename and options can be in upper, lower, or mixed case, DIRT doesn't care because it makes them all upper case before reading them. DIRT also ignores extra spaces between options EXCEPT there can be no spaces embedded in or between the drive, path, and filename. The source code is included with this file. It is in MAC65 format and well commented (though not commented well :) so feel free to look through it. Anyone who wishes to modify it is free to do so but if you wish to distribute the modified version you can only do so under these conditions: 1) You must distribute the modified source code with the object code. 2) You must give proper credit (to me and previous authors if any). 3) You cannot sell the program though a small fee (less than $5) may be charged for copying & distribution. [Anyone who wishes to sell the program may contact me via the address below.] 4) You must include this same set of conditions in your distribution. ADVANCED USERS NOTE: The defragmentation bit doesn't officially exist but bit 6 of the status byte is unused by SpartaDOS so I decided that was the best way to keep track of a file that is not fragmented. This is of no particular value to DIRT, but is very important to the defragmentation program that I am working on. This bit is only valid as long as the file is not modified after being defragmented. In addition, SpartaDOS may zero this flag but is unlikely to set it. If you feel this utility is something you could never live without, and have a burning desire to lighten your load and enrich the author, please feel free to send some of that green stuff burning a hole in your pocket [plutonium is perfectly acceptable :) ]. If you have any questions or comments I can be reached at: BOB PUFFS BBS (716) 247-8355 CLOSER TO HOME BBS (419) 368-4413 ATARI BASE BBS (408) 745-5306 BAAUG BBS (408) 986-0215 PORTAL BB$ (408) 725-0561 Usenet: Ordania-DM@cup.portal.com or Charles_Hughes@cup.portal.com Or USnail: Charles Hughes 555 E. Washington Ave. #301 Sunnyvale, CA 94086 Phone: (408) 732-7749 * All rights reserved. This text may be freely distributed under the following conditions - the text is not modified, no charge other than a nominal copying fee is imposed, and if used in a printed or online publication a copy of said publication be sent to the author's address given above. Commercial non-Atari-user-group publications must get specific written permission from the author in order to use this material. In other words, if your publication isn't directly affiliated with an Atari User Group, I reserve the right to charge you for printing my material. Atari specific online publications are exempt from this requirement (Zmag, STReport, etc). ------------------------cut here---------------------------------------------
Ordania-DM@cup.portal.com (Charles K Hughes) (11/22/90)
Well, I've got some good news and some bad news... First the bad news...there is one confirmed bug in DIRT.COM, located by yours truly. It isn't painful or nasty, so don't worry about it. Apparently DIRT.COM skips the very first directory entry - not a major bug but I should have a fix for it this weekend. Anybody else find any bugs? Ok, now the good news...I've figured out a way to convert a 3 byte binary number to an 8 byte ASCII decimal number. Not very impressive eh? Well, my way is fast and doesn't use any division. It does, unfortunately, require a 1200 byte table. I'm working on this method right now, so if it shows a significant improvement, I'll actually use it in DIRT 2.0. Also in DIRT 2.0, I will include the /M and /C switches (paged output and count files respectively), and perhaps even support for the erased, in use, and open for write bits. Is anybody interested in a directory compactor? It would remove all the deleted & open for write files from a directory, and then deallocate any extra sectors the directory is using. Interested? Charles_K_Hughes@cup.portal.com
aa384@cleveland.Freenet.Edu (Doug Wokoun) (11/23/90)
> Ok, now the good news...I've figured out a way to convert a 3 byte binary >number to an 8 byte ASCII decimal number. Not very impressive eh? Well, >my way is fast and doesn't use any division. It does, unfortunately, >require a 1200 byte table. I'm working on this method right now, so if >it shows a significant improvement, I'll actually use it in DIRT 2.0. > Also in DIRT 2.0, I will include the /M and /C switches (paged output >and count files respectively), and perhaps even support for the erased, >in use, and open for write bits. Suggestion: instead of /M, use /P, so that it is the same as the rest of SDX (I don't know how 3.2d works with respect to this) > Is anybody interested in a directory compactor? It would remove all the >deleted & open for write files from a directory, and then deallocate >any extra sectors the directory is using. Interested? That's a nice idea! Another idea that I wish someone would implement is a 'MOVE' command on the CLI (not an interactive type thing, but something on the command line) to move files from one directory to another by moving only the directory entry. (Like COPY/DELETE, but much faster) -- Doug Wokoun - (aa384) - - - - - ||| / | \
Ordania-DM@cup.portal.com (Charles K Hughes) (11/23/90)
Doug Wokoun writes: > > >> Ok, now the good news...I've figured out a way to convert a 3 byte binary >>number to an 8 byte ASCII decimal number. Not very impressive eh? Well, >>my way is fast and doesn't use any division. It does, unfortunately, >>require a 1200 byte table. I'm working on this method right now, so if >>it shows a significant improvement, I'll actually use it in DIRT 2.0. >> Also in DIRT 2.0, I will include the /M and /C switches (paged output >>and count files respectively), and perhaps even support for the erased, >>in use, and open for write bits. > > Suggestion: instead of /M, use /P, so that it is the same as >the rest of SDX (I don't know how 3.2d works with respect to this) Oops. :) I didn't look in the SDX manual before typing, I would have caught the mistake when I did the update. Any programs I create for SpartaDOS will generally follow the SDX formats. Off on a tangent... :) I wrote up the new routine for 3 byte binary to 8 byte ascii decimal and calculated the difference between the new routine and the old. The new routine should be about 5 times as fast as the old one take up about 3 times as much memory (100 bytes total - max :) but will require a 650 byte table - this table will be generated dynamically rather than being included in the code. This makes the DIRT command slower if it doesn't find any files to display, but much faster if it displays even 1 file. > >> Is anybody interested in a directory compactor? It would remove all the >>deleted & open for write files from a directory, and then deallocate >>any extra sectors the directory is using. Interested? > > That's a nice idea! > > Another idea that I wish someone would implement is a 'MOVE' command >on the CLI (not an interactive type thing, but something on the command line) >to move files from one directory to another by moving only the directory >entry. (Like COPY/DELETE, but much faster) Me too...of course, that also happens to be another utility that I need for the disk compactor, so you'll see it eventually. > >-- >Doug Wokoun - (aa384) Charles_K_Hughes@cup.portal.com
aa384@cleveland.Freenet.Edu (Doug Wokoun) (11/23/90)
> Well, I've got some good news and some bad news... > > First the bad news...there is one confirmed bug in DIRT.COM, located by >yours truly. It isn't painful or nasty, so don't worry about it. >Apparently DIRT.COM skips the very first directory entry - not a major bug >but I should have a fix for it this weekend. > Anybody else find any bugs? I think I've found something: I have a directory 'MAC_65' which does not work with DIRT. The '_' is legal with SDX, but the program thinks it's bad input or something. I haven't noticed DIRT skipping the first directory entry. Maybe I had an erased file in the first position, if that's what it was. > Me too...of course, that also happens to be another utility that I need for >the disk compactor, so you'll see it eventually. Sounds good. Good luck... -- Doug Wokoun - (aa384) - - - - - ||| / | \
Ordania-DM@cup.portal.com (Charles K Hughes) (11/25/90)
ARGGGH! Doug writes: > > >> Well, I've got some good news and some bad news... >> >> First the bad news...there is one confirmed bug in DIRT.COM, located by >>yours truly. It isn't painful or nasty, so don't worry about it. >>Apparently DIRT.COM skips the very first directory entry - not a major bug >>but I should have a fix for it this weekend. >> Anybody else find any bugs? > > I think I've found something: I have a directory 'MAC_65' which does >not work with DIRT. The '_' is legal with SDX, but the program thinks it's >bad input or something. Grumble, grumble, grumble. I checked this one out real quick the other day and sure enough it is there. This is a simple bug to fix, but I really wish I hadn't made such a stupid mistake in the first place. :( >I haven't noticed DIRT skipping the first directory >entry. Maybe I had an erased file in the first position, if that's what >it was. Guess what, upon further testing, DIRT is not repeating the skipping behavior. :) > >> Me too...of course, that also happens to be another utility that I need for >>the disk compactor, so you'll see it eventually. > > Sounds good. Good luck... > >-- >Doug Wokoun - (aa384) Charles_K_Hughes@cup.portal.com
tim@uxa.cso.uiuc.edu (/// Nigel \)) (11/26/90)
Charles K Hughes writes: > Is anybody interested in a directory compactor? It would remove all the >deleted & open for write files from a directory, and then deallocate >any extra sectors the directory is using. Interested? Couldn't this just be accomplished by copying all the files from one disk to another? Hmmm.... -- | |~~ /\ |~~~~~~~ | /~~/ / Tim Elliott Tag@uiuc.edu _|_____| | / \ | |~~~~~ |/ / / A Knife and A Fork/A Bottle and A Cork | | | / \ | |_____ |\ \ \ That's the Way to Spell New York | |__ /____ \ |_______ | \ \__\ -Information Society
Ordania-DM@cup.portal.com (Charles K Hughes) (11/26/90)
Tim Elliot asks: >Charles K Hughes writes: > >> Is anybody interested in a directory compactor? It would remove all the >>deleted & open for write files from a directory, and then deallocate >>any extra sectors the directory is using. Interested? > >Couldn't this just be accomplished by copying all the files from one disk to >another? Hmmm.... Yep, but most people don't have removable harddrives, or a drive that they can use just for this purpose. In addition, you can't just say "copy D1:*.* D2:*.*" if D1 has any subdirectories; you need to use a program for backing up the harddrive. Invariably, these programs require that you put in a floppy disk, pull it out, put in another, ad infinitum. If you don't want to make a backup, reformat the drive, and then restore the drive (taking several hours of attended operation) you can use a compaction program instead to clean up the harddrive. >-- >Tim Elliott Tag@uiuc.edu Charles_K_Hughes@cup.portal.com
cummins@d.cs.okstate.edu (John Cummins) (11/28/90)
In article <1990Nov26.012220.2181@ux1.cso.uiuc.edu> you write: > >Couldn't this just be accomplished by copying all the files from one disk to >another? Hmmm.... >-- > > | |~~ /\ |~~~~~~~ | /~~/ / Tim Elliott Tag@uiuc.edu Yes... but think of the advantage of loading 1 or 2k of directory, swaping around a few lines of information and writing it back out to disk. Beats the heck out of copying not only the directory entries, but all the associated data to another partition and back. (in terms of speed) If you do it one directory ar a tine, the head won't even have to move more than one track on an optimized disk. John Cummins cummins@d.cs.okstate.edu