bamcpherson@math.waterloo.edu (Brent McPherson) (12/17/88)
Posting-number: Volume 01 Issue 061 Originally-from: trillium!bamcpherson@math.waterloo.edu (Brent McPherson) Submitted-by: trillium!bamcpherson@math.waterloo.edu (Brent McPherson) Archive-name: commando/commando.uue Here it is! Commando, my ultimate command line editor. Not being able to find a command line editor with all the features I wanted, I wrote my own. Commando is a TSR written in C. It uses BIOS and DOS level interrupts and should work on most MSDOS machines. (DOS 2.x or greater I think.) This program may be distributed free of charge. It has a lot of neat features and many more are planned. Any new ideas or suggestions are welcome. Enjoy! [ Features include command line editing, recall of previous commands, filename completion and wildcard expansion on the command line, multiple commands on a line, function key binding, aliases with optional parameter substitution, ability to not save commands shorter than a user-specified number of characters, and a few other minor configuration options. Commando seems to have most of the features of both CED and Anarkey (which was posted in this newsgroup recently) but not all of them and not in the same way. Its ability to expand wildcards to a list of names might be useful when running C programs ported from UNIX, since these usually accept a list of filenames but don't do any wildcard expansion. Commando has aliases, which CED does but Anarkey doesn't. (But Anarkey lets you edit paths and environment variables, and Commando doesn't.) Neither Anarkey nor Commando has CED's "pcall" variables, i.e., commands that, once typed with arguments, will have their arguments filled in the next time you just type the command without any arguments. Only Commando lets you define function keys. CED allows comments and empty lines in its alias initialization file while Commando doesn't. Commando was also not able to detect a second attempt to load it if something else had been made resident in between. Under the same conditions both CED and Anarkey refused to load themselves twice. Any nitpicking is being done solely as part of my job as moderator, and not because I see any glaring faults. It's a well-done program. The copyright statement doesn't mention any distribution policy. Since the author sent it here Usenet distribution is assumed OK, and no money is requested, so it's a "free" program. checksum size (bytes) file 13909 19055 this uuencoded posting 17064 13808 commando.arc -- R.D. ] BEGIN--cut here--cut here begin 644 commando.arc M&@AC;VUM86YD;RYD;V,`W`X``&\1(6TC&L0@```,#10$!`&)PY`W;=J$<4/F M#0@[9>3,2?/@8+F`,+-@#$H6`&R4<A)-'3IHS:.B`0#$F!0@A<LJX4=ED M#!0T$>=4O)@#!PX6/''D`"E0P<&$"QN"2#,'1!@04]"$B7EG:AD05*9(`5&' M3AHV:>CD`4%'JLHR>.C()-.T[%4B3Z:`&(-0(4,08-U<+4,F;!HW9P+*M)-& M3L4V,NFX`)%$)5,09,I,/*.7#%F'8J[&9!/&*T0V8^<H9,,&*)PW=R*:J5,Z M8%*N<R+.K6CF9!TY8<2P*;/XJ%VE59O",7P&=T*^2RU>"4)ER),F((:L%!V& M-(@V;R*S2>&"*!6<L9W&)(OS>IB_(,R4Z7Q;,H@W9J+73?I&!U&""#""`!%$ MS->P8]'A4$QC5,>&4W?Q%18(PY5!V!MU-$474@S-T9T"^,FP&%1EP#%59U>) M48<9ZDF4WAMR@`"77*^]X5:*8<`!!U@%>E514W/4,08:3C5%1!%"5''$A?C- ML*$17\D4!F*SM3%C&39:]-H=7Y%1H!R6H>6A&Q/MM)-;3?Z&UU^\;80`#1LR MP91*"M&QXU]GI)>D&TM*1B0D"-2PX13KR;%C>F&,\9]8)Z9(H(%P,AC3@Q&& MF92%9MJP81.L>?6DHQ4R*-N$8N9U582)/A6;A[@)*,>="-QP9!UNC!$E"&N4 M,99_#,&)*@X;!@%6&+$U1659[\$1974,?HB86BGF*,8<7M'1%452WM5&I6E< MRNFC&S$`AVS5I<$KJC'`L%A_@P;H4&2UZ06"7G<XM6NO3IF!+`C,3N4L'.#J M9P1KH,WF1FUGW);;;NY6%.>O/-HUEHLXI:@>>S%!6E05<X1Q1AGV*="1`43Y M1A\(6[PA++1S=`%RM[Q^4=MN71`EUK8@B.`Q0P[](,)E])9Q%9@B1]G4:^B& M46G.='@%F,2"X;&AS//1#,(+3;W0QM-T]###TV+T(,,:[GIK(;HBF`F%863H MZ!Z89KQ!&FJ)TO6O;:5"FS%!";00;$0@TCLG':!M5/=L)(%P*&G(79NI@""L M]5Y\(I(8D=]V-S03O6%`A"E;B^,ETQG`7KWCAZ[F]%Z*N\TQ!^2P7?64#$NH M&!<(C9>(>DQA6(9R4^C^Y=>-Z1DV]<JJO^L"ND0%],3(-V;<$0)$34%%$%)0 MP9@3TT]11/1/IV'FS,!]=6!U5>6!(QWV)I=<;'*PF1UO6)47]-!,F?D&1'+< M89):UZU_84!3),%$$4Z0'M3,1(7;6`0^\:F*'-R0J,R09G]&>4X3@N`$(H#@ M"E((`A2>=@<"HN$Q!8K0V<IC.,L,[D"QDPWB`J42L,3*3$\1E)]8,Y4Q,6LQ MW[G*^]C@F)^-22\U!,L-._8$*&0!!$P(@O.B(T$*6E!J9@J"&\920O)T9BE- M.2%R7H.6,HRA*\BADG4R,Z&=X<1,G&'6Y<P'IA/";D0E6DD:XK.@Q[C!1>ZB M'1D"U+`R<,>#.BR#&83&0RRN"X^(FU&@-%.&%G3QBVJQ3`E_IA(P*0X^9@)3 M"D_E'21(X0G+6<X17U`U'KBA#FW(C!Q\L+VF=<\Z=U1)Q2PW21#PH`?D,4Q5 MPJ<YP)0%54-8B*(<E!AZC>9`M<S1GW@5L[[(X69F\-U<V-`59,$IDR1TI>"\ M:*`W.HZ310F2$8QP/:@D00M%P%H/3(E*5?I@"VLPV4IVJ))PR8`&L,N#6N:0 M`C-1##F(<QO`VD.>JTQ$#U>!3T'7Z,9-0C`(3)">.,FYE?ZA\VEA6.<I4QF1 M=\9S/RB@)PAD4`,;Y'.?_<00GOYIF8#2!FYF-&@:$)HY,,5H1FFH$;2V6:`Q MPC$B$"P"%JB001`TH0A->((41ED&C;:SH_"49T@%2<AZR@`')Y5,2O$SA6T) MJC8C5!UV6*42A2(&.W(8"_<&))F(0*0I:8,1&?H"&#.QJVN\<@_"%BJ"+]SN M9L[THF?*5!3G-&&"%81*$:``/>8H]6EC6.?G<!.Z51)D`%,=Y-!.$((3;!5/ M7?7B'-,0UKE(A;+S0MRH/H2_:?&P6@2KY9?*HR"C!4:E"/`4#MU'5?@UA;,G M6(P37&3&*X)IM:5"D6E!-Z\"620S9KJ87DJ%'#$$*`]P2!0=[N`0]#Q%EXM! M`5H6(X(0A.!FTL7;/IVB-\`0#+@I#8@4BI`$)S@/HDQXFARV)S1XK15GF3D? M^0A'!J`0TR)S9"_]NH3@G[%!CV.)6!HB,Q,($J4(?;'MY>:@/$A$H&-5D,(4 ME/J%_QE!>I!H@-VP8[G=R"L@0PCQB*7P!2DDX0A(0#$#5CP_S9PD)3`F:GYC M+&(2FQC%".!QBP593Q!P%TM!EL*094QB&^,8Q0=0LH]1TN0GDR$@2'A..CVB M99S5*WV9\U1``&A!2%2@S(B[9'S4K(#ZRL7-=A/0&<Y0.MA!*34R.5]$5-(B M^MDO+%?!3F0"\J/\XADR9=@-_B;+PL<I0`A!&,(2IL#8(8SY`9&+-)2N0NG* MXLS%98W/%R6"HC5/03J/ULZH?UB&*.>7S02!0*@EO3.'R)G6`3'"U90[!"$C MD2`[AC2OG8PBRZ`ZV/@DMK&W`HEDRQI_7A;<C^D0D.<)@2!O3AP>MF09X-$) M,18"@14B,A81KH8-(=B(!OXKQN\5K0Q.JJ1#)O0D_(')0\!ZC;GK)&^%@BG; M:3A.7T#4K\S$-:9SN8U.P$D0#20A/B]2W7C$:*6I8`X%)U#!"48'@A/\P+-L M/*-*-9!MAZ,(XJN>>$&E9)TVO0DP<MK-N24C[WK[F4&<&0-R9DMJ;>J6?TA( MPHFQ$H1O2UO**B)(`>RF)C7:_(,X'SBZ%W-Q$.0!0N+9&79#=3EYOT8JEGO9 M%HN5/F\=".!HV+FXO?@LG)<E?BM?3:M>Y7,A$KKFG;EYG(#WL[OT90Z*'$L8 MY'W7*@X'(<**5VK+X_<+A8`@%[!;%9';&10M9MUI3=V[X[WR8#[W4[%IJ4/4 M?AUJ6<N53=E)#%TI;]VN9+PQ&\,8S/,7%^S^\LX$@0I<$)%G?E8#PU6+#MKW M&(7,BM12`0QR4!";J[Q@]SV#5DK]^BZ"2,!N(E0]I-,5/*^Y)PSRDLU_'_.7 M>A'X3AJH?LY<M5,'HN8]4IIKJ-YE)Z*@(/D8`P+_Y"YTT`*Q@EVUDS-Q4`<R M(71MX1#I15WBIA8,43BG56D2$5]%(07<Y%/?M&$==@$@5F0T5@4;!`F@MDUT M8!+$-$R,(B&T9Q141F-P<074DV)V$Q,K2%J6HQ=I478*P%A'4`1?8(($$0$Y M""4L:#FU(1$J44(!(81$6(,WF((ZN(17D49/&(-&$`,D5VQ09P3(9C>Q,15_ M$E=XP2ML$GA8%R<E]'GL)H"Q,7KRQB=F"!Z%LE!:N$9E<45G1@>^$A8\XA;R M5FKS$AL+V(`A(D@OMU`QYWG1(4S0M7+A9V9C8!C641:&40<H81YNTH8;!G_B MI30QDQMCP`-=Z`,WXW-N!"9["(4JM0&9<09_P4`XMU<B8(HBD%)&(`-?:&Q! M,(9.(08HLH440@:[]1BS5%I5]!>(0X@KUU`_E2((`R%G@0=TIV%A(8K_]&YY M.!'.TADDXV0X81%?5P<GD';8M79L8#`;L0%5)"(J@7:]AD4YHCJQU#!KU(1# M%(M9`'83X23]DAO%Z(C:]!INM""<@2PNH(%$H2M>,WZZ\RK`TV$6\)`T%Y'` M8TA/L9$*E3L,Y#.I8QG6)1_'N'J8\1?EQBKTMQ,'>#H*H%PA%!YJ\8/*PBQA M\2R\@SAOH'NW86$*4#$"67[,5)$!T0*0(`%$@90+$''S&!%7@90,,!`J`0D' MH'8#P0:[!PD&X$P#P0-F4`,^0!`$H!-,4I/Z)FCI\Y5F8`-C"0D$$`)>B2$. M895C8!DNX`)<4`(Q,!!U0!`'<)<@D)<#07B7%7S#]WN041C"YP)HD)66P96" MR9<@`'R,60(R,!`?1!`&X$5HX!`XL3;F-1"ZQYEW4)I\Z7L<=#4O\`9X``*8 M"9LS<)35YI0@T$<@P)3>41ZWDW-%-Q/GP242&9+C:'#ED39K0R59AR)MD#$! MH1_91B\[B'.0\#=W4(XQXV4W<U-]\C-M<9R%H4;91G2U1R9`L2`^%V`WV2Q@ M9!FXR"PF`1AALW(N-QZ9D2@>8CH`=2YO@#0*H"',AB7[`9]M4Q'DHSLX5Q$) ME2)HE5`^*0<QT2KNH5`E8!$HX`8]("XND`.?A0%Y]D%-\1C'E7!?44.(TQ#" M82RCEBQUL"SL&27P5P2!PB,]N6H1*G29(P(5>C/H(0($*I_R]A@QH4A"YYZ" MN!2`.!L0*AFG42NWV&P%9Q%@\A=PT!6T)HJX!RIV1UMXL"27LI$$"1%`(0*K M)QETL(H0P@9?%HLS"7/:))AYR07[E)8!EI^IAS,H>GP`N'PB%#,E4`(W@S@1 MF#=/<0(E,'*&:&D!822V=(!C^:-Q4IUV<YV!Q@..:D@?1`=`\5^908_>N13Q MX:/3>0;S67&I,1YJAXR-*BMCZ7P_MQ`+@W''J3;MJ)QG,#>0H`%ZUY(6\9)T M@XHQ,)8X8TM="`.LM'+5H1*[^BJ^"@D%P`-!D(K#"JW%>JP5YRIR<"#+NE/- M2@`\,`32BCBV!*[A8JVY.@<?)"_IP9+,*BM-`0D#P`-3$*X.84OS6JY$P:B6 MRJJ5":GX83?,U"`O"!3RR%X\,%]4$&).,):/,:B1)&_(6:N)(JKQ2:K%HP!! MH'\X=SL\IS&0X``=XTH.41TZ02]U("/%B#N"-)$[I5!WQ;$_DWXITGX#MI#0 M<B'?P7X_HWN0)T0X81E:&B=@TE=_M9@$,EB[)580,CF8I``P:T5K^'S#"5`@ MZF1A,!:/`19M@&CB9U-CQ;3Q@18KN'@*<%8H$F%M)0<083NR1#[I<[+A)7\O MD%#(XP8IE4-X!5?,>46/@18LU"_'52<]LE`;&5=M`FES<(EID!FV0XP0$51= M.I0<MA+,E*I.88QB\GCYIH&Y1K3=AXIB69F"R04B)`=<\&1KP`5G4"=S4*J0 M``&>&Y$LMA]T$3B4&08ZP`5B$"AK<+)[&0/S211[2A9CAW.QRRNKZ#TV]'<' M`B8V6DPP&Q`:"&-O;6UA;F1O+F5X90#8)@``;A%%=:8W9"D```Q-M)`)4`%` M`@`$`+@`\.\?+@&``$`:`&T#```<)`X8``!7@`(`;@5``*!6@`,`M`7@B"W` M`P#5`B2,%D``@&0!&@#H("`;@'T!Y`&H$<!,4``.!`BE%N#/4:$H!``)D!1H M5!$"0@4H%"!2`!(!?GT-`$0`V%8!%@6X%,"%`',!ID2Q8N!*E43EH$!)9&R0 M#S$&`-0AD,@&X!V&#=0IX!'`.@$Q@*$#9R#1M$1V_#DR9D+1`1CDD(SR8\`O MEL!T'/!-A(V1L$3ST%EJD`Z``'3Y"HSB4MH',@+_Z%!`IV9`J-_H:MWV1^"8 M@=\-U[EP3I=*@44^Z"YR0#H(#&!7/!Q`1"Q:.GFK(B23I^H+.C8%T$TR$$K+ M@5%Z#*!#5J"1$7[H;%-`(L*@TT`$/>AT1P)\16.."_^0<M$@Z$A`QPX4)D#' M&8&@0P\`=)!!(0L]<+1@@P]&F!&%#/3````G&N,@A*20`,"(=-"!!!US[(A' M.CT$D$X['8D``#IB9&",`=8!$!DZ7#"F$SI^$`"(#TW2,0`Z2QBP'6FL+6*% M/XDLDTX(_Z3S"0"A@*$?-0F,\ML0CACACPG&H#0$G@?0MD``Z!R"0#I4_(,. M.@6DXX2A\B2*A*&YI2.$H?PDRL,_ZU"P#@;H@"%`.C(8>LD`Z;!@J!Z?FF#H M-$*"8"@"GVK@D'4[&$!7':0ZX%``1\8@9`&S%E#KK:3FXT]CZ'"0E@UT`<*# M8*2><RROZ'SQJ3?^7)GEEIO$Y\]M6"2ZC#_HN#/`(A;0A<XCE:6K7SNDWD)N M+I_&0NXIGZ[BCU_Y"69`8^E@XD]DZ4SBSR+,&N"L8`7H`H)C(>!B';ITI?`: M-$#42AH="2#[#@#IP$'N%*2JL:\^(/!1P"#Z^.%'`H/XP0^(I%Y!)C3HO)C. M$V2RT\47!WB1Q1;#3"$%@?RB5@*R[6P%#!T6(`+-(A[0A<@%H/UCJWX0;)F, M`)FB\^TZ#U!M]6?D:*WN/0)(?)V[%B>"L<8&O(PL!D=*(X`61$^1R#"`_`"B M/9Z!-H1\F,8CEQ16W)47@2ELC<X<`R1B)V@I0)-(,)E0384!]^Q3B#1]5&9- M`-X\EH@U;1J0`C*9A*Z(%?_`8(_%B%@#@S2!F/,/`(G`DP#.P`#OLQ=:#%UT M%(S_'8#D)%0>#&@!8,-7YQY\'CHBZM@>`#2(%!-\[/O8+C<B[*!CB&/'&-V8 M+K2Z2X<*9KL^S&-+``%_`3E,PW'@(*"#//"G/^OTCPX*^\,_0%"'>*`C"/_@ M6]$B4[_'#`$(@0-1`@!8!WI8$(."HT,!`$@'>J!C#<&J7PJ&P9J,U>V%R&(( MT:C#I`*$@C=2<`X9`B,`='FA768PP"C48`!=[!`7$#C2*3J@A0D"HX("N&`& MZY`/=&`@A56S7POI1AIDM<(??6M>@4"1EBRNPP"@J58`AI`(;P3`&HH@`"(. M\*PZN&,="L#%P]"AA#7F"7C04$(A@/&'=Z##*<CK&_.LL!VZE&D=:YRB/O8W M``N0QF+]LP,!(K.."P1@&']<!P+:F`)C*(("5UM"#I9QAWDT)A$.H$LZ_'`L M6FV-#K5`A[ZF0$$S1A&$&N2@!W^901&2T(13^(<BZW)#_?3#'[NPSCH.H,<C MN0(`0YBB"<'ACU],C#L&\`YXQ$,>\Z!'/>SY`M"4)Y>ZH.,6`*@@-?=8!VQJ M,YK7B:7KLE&F+^TS"-BARW?",Y[RG"<]ZVD/.A+AF%M,`1UVB*<9$5`X<J!C M!O847!UBTP8`]`T=6F`3;Y`$36E2%&T5RJA@YK&.;OB%"BBI@S9P@1*C$0@= MM@`>*`U0!@,X`!$6V.&2@GB`4/Q0%&<HXA&3.)D-H(,2`,@!-N9@@$"X@#<` M"(`$T4$(`(Q""_3AS2CP8(!A2"$49*T5;Q93'P.L(P.($(?M0-$%-)(C;N`C MQG?0!5:\HL,:_6BBT708F`?L8JG`TP8Z!K&!4`1Q%#\$14]!,XK/$18``Q"- MFY"86'2,H;%H$"(?*C,,&)R#-=%`!WF^4[U1`,(`$LRA`7:(6:,*,8A&_!=3 M9]!8(C91MK1UF@A#\=IU&&>THPAM.LK0#YL.X[(`R"TN+'`D`6P`%#L$S2`7 M(UD#T"(`BK#`9.V1B`O$%EWZ(`"R-`"`0=)!`NCBQR8EHQ/W,H97CXF,8*^` MCAH`$AW1N`!V-%&9(B"@!PT9#"<SD(@B$*8(!19`(@KP/20T6`&+Z,`?7^D# M`G\AC.Z=KW$;LXL7W6,=?VO$(00A1`)+<`I4(_`BCD"8(QB@;S'VDHW1@179 M!`#''I#QCFFR#G?`.,A>.L`ZRG%D(8-M&XNCRQ5RO(@O&,`7)F4-.MSR-R,4 M,P,+$TY%T:&"#1`HCFD,P09R(`PZ:&.*&UA8'2S@%RO$E%2TD*B0#;"#(PB` M#O'`9R*^P0AL.`(8N6A(9.3ABGM$(PF)4,8.'""%`]C!&@B3,0WD7#8;R)@` MZ/#%L@B<"`)DVDM$`+4K1EV95)\Z$420<"#=JX13+X(.!/`,(DSM:503X'"# M8#6L>?UI='!E!ZFN@S-L#6INQ+/7I68V.M`0`+X8(R'K>`65OT"`/P(->>Q< MY)21/&/]G`-XP5C'7DI:`%$&#QT?J+8QLODL.FA@!UF<`P70;%$-:.#,*(V` M!MA,AVS@^U8'2`0^T!$"QW#`+TY`"<<4C@Y.1#48=&``Q2<!O&,`H@>"2<47 MUN$(HUGA;Z\F@G[&L0]=X#<#"*.+K@F0-<E!`@#\$(*63:'38O+9DG7CQ@Z` MWD5JJ2(?B2S:R8=AZTW7NP6GW@$7"$`'$DA=`'6H`,0E;FH.9&H14R<;.K+0 M<XW:`QU/T"EKO-"WI3<]S.R0MA"B.@PZ?"/J'*C#!+8.HNMP`6S+6`2H2^"8 MUV`#'1XXDD7X(F=[K,,53>;S$12PF!DC`))``#*!^XR`RD\>DDA0)./JXKA! ML`,+;AN68DA5@3+2I1%60$<C[("*=\-J<[!7Q[MC,`#W8L$>P?CSR;&Q`LDM M0!^`\,,\7$"'$#3""_/P#RK$="@_","]&ZA?GERUM6JBPPK[\(\ZT$&&W@.C M#L^H'R`4R$`&(*L.^$`6,?(1,)!I`@"SG\<B_(".0A_Z"JU`"$\#`:M`".20 M<0'X-`90@.10!^R`"NUA#T:@#A`P/[Y@`_'$?U?@?XBF:,#`:$^0@'1`@`:( M@`*(0`SH@!#X!>*'#NQP?4]3`HM@![*G?(]Q!%Y6;P801SI0`'0P#]>&?Q.( M#LH`@W7@#>A0"OK`&L6G+C20#])'?9:!#JN&#G"@#\:U4$OH,]^6/*(G9:7' M#ERP.?63"%Y`#FXC50BT?@M4!S)H`\I``(W@!Z3`@0!X@B1X@`P@@@MH@"K8 M'NN0`+!G#OY!"NB`"DYB#[OP$HD`.Z%C.<>"`T>B#PX`>[)G!(8H%CD`#W0@ M!?X1#T:`#@OP`!*(#A7(&%S@&`/@?0&PA/#0.5[@#Z$S.G6``+@@B>@P#`ZP M#B@PA_'`@8GV#XO6:(^VB`"0`LNP!(F0#4M0",E`!WFT1\F0#^L0#^NP`?YQ M**RR7:(P/HL0B[,H#72P`+>HBKA@`D>"!P[PC>20"%GD-HF@#7B5#O[@#W(! MAGBQ%]80`]+02)7Q#)R$`(#0!PO$,4\`!/B4`]_00.@0"O:P"'92:HEP#!64 M`[I6`"R@`D<P!#C`B2K``@30D73P`?Z`#"(I`2RP`"+)`"Q0`"?)`AW0D77P M`(G``X`@#OX@2H"@#`%@7#LI`*M4!\.`"#5@&=$P#HMP"W%HAR*8AR:H@"GX M@.TA-XG`A4&C/'-!>OFX&M>0`L>0"+0T:,#H@8SF:$D`D?X0`,C0?_>P70>` M#K.`#YPT!3E@#<(14#LH1P50<W01BJ.`#^N`#E]648<3".N8,+O&E_I1"(`I M#FY#,:YS,2Y$&GY@B]1""O6P#JSP2E8I-,LC9:L1#<X!"H'Q`KM`FKC0</'( M1Q2`';#@)18@"@8PFH'A!(S@`:Y0&39@"K-I`*1@`$F4"#[@":4A#!60"!;` M"?^BFHJU`100&<1@`\I9)I\4`)QQ2E<#!#U`77RP#GY!FOX",/5(,,82976Q M.;0)`$^@"ZC9<`$R`3%@#\3@`].Y#`$P#P%P#YU1`'-D!(/@#Q;0G=\9&'7P M+[QR)OU`,!S0#UEI%WAA>DK`E69H"T90&,+0+L1@`!5J`[K0+KR@FTN"G,A@ M`)$!B9:C#XW@!+C0B/RX"T!P)*@@8:]A!?Q@&J@A`J&`"P:`?3&P#>YX&NZH MHRX*`'+Q?`?C!+:`#I4`,GC@),`P"J<Q"CI*-;;@5C`0CX,@#'*HHHV8BQ.P M71UP#$:@#[R""R\*!5&0H@?C9V+"#_V$I.B`!8[A)1]0"-M0!\P0,_H@&##P M?+C`"-D@)K:P`F,"D0#R!,)%DS80HKXQFW9R$>O@?A-C!4G*!M5F)\3@`4O" M)PV0J1>J"'9B`G-4E3]SE<.`CWDQ$4?C#8G@!/RP"$Z@`&+J#Q>1#A87."50 M!X\RIM^(?#]0`G30`[/**XJ`-?8P"-W3B-_(`.B@"M6V#.L``?.Y),4JJA7P M#\!A`$N232%T`(O``SL@,WQ`#HO``3O@!?S0!URP#DQ0KN>:KC#F!?I0K+8S M=,Q1!ROP#[PJK\5JKU07I@9P&KP2I`:0J9N:)PT01YYJ`**J9&<PK0R+"->: MK4NBK_K0J\5$*EGP#P;+L'_4IBO0FA[0H=OQH1"Y<#K07D]#`:%`LA;PH:,0 MHA8PHL>0$(Z1`3%#JW2``">+#JG@&`L`LJUI!`LW=Z3Z;5H*`(WSH.R@<\;@ M'[Z`#G00`+L@#03P5HMP`5"+#AH@`=NE`,'S#U?0-OBE`(,P#`0P"!HE#B5Z M/)]9%]O!'%S)23J@"!P``_\0E!]@!':[2G2``<XAL`"`3X]A!$.`G1<`"'M: M!YF)`3F`#WU``1U[2J)Z`4"@-4N2@X(1#+#$'-_&3HR#+G(+."&4`A65`]!0 M!QYPN`>`NG1P`8%K`+R"9>T617P['B$)#G7@>`,P!.L@#<C)'$DW%PZ:%W%+ M&,:0"-?`&OA43`+Y`PS4N^LP#V#I#T^0LP#@!SM03"E`0B10K(@P)L9@!+\C M)OZ0`]%0!Q&@"%<0`.'K#^-;OF."OKCBN])03*3+0+[@N_-03#9`0C$`ON)+ MOO$TO\I0!Q+`ONX[P/)[O@<,`6PD#$@P.I4)OA1@N.M0#$'(&IU+&%SHF8YD M#(X0#"903`E0PM!;O]6(PB!B`2@<0!`@-X($#"_3&;B+P>2PP:TA#$%3-$<C M#%0##&X5`CLPMG6@`?QXME;R`R%0!PG`K2&@);J@$UJ&#?!P1HM0IW?JH]#P M8N+F.('`#CSG%U`@<6&`#H)``.[%!:(&`+^`#Q:0HMS0B`X#//N`#B<@7"S0 M"(:@!?\`B;H0$8EPQUD@7!FP"T"EK&."#FJQ71N`"R)0;<H`&^@`"@/@%[1` MH`WP$`'`CY3\"`-@!)KY0%>+8190QKC`#D?B""OC`P``$N\5"J^,#C3``%!Z M``CV#PH&#",VL!_LA<O#.,4;QJS@54QP`+^0!W%\:<%3QX.,#C>GLG10`HW@ M"(5"QX)\Q\,@S0ZP"Y-@`<$3:>A@#RI;![2`#J\P0*^`"\YP)(5`3;)P)']` M399P)'G@K1X@Q.L@`H/P!S9A;["'#S-V&X%P&X9`39)P)("0<-@P",``:E/@ MK5HL4U3J5ARP?@DA'*SAT*#F!0A])%C@K7Z&#BT@T79:!^"0#H\R%WSQ#Y<1 M##WP,'1P#SUP$`+D7BH@PX/D!R.`"`Q`OB\=T]E;`#W@!]F[6/D00"N3#PE0 MBT'8&/D%#)[)TL;@TILCU#-=TR`B#^YE`CI-PQ_@TT"].?:5((*1#H.0#PU0 M!P+@TD^-7Y`AU5DP#`WJ.'MA#,["`W4P!LH[EL+X@<0(:<C@T,!R&<-@IW3` M1O!@1=7F9]M5``23#4OX#8-0LZO#E'C(@$^)@GXHE5\PT.BP)J$@Q(F0</EL M`.G0",!S#WX]C&;9JF1R#:T-V&:)EFKIT`9@U8?]-%JPC(,0#(3Q#)@]@)J] MAR?8APWHV0H7ROX`!(G@9Q-YV88&'DU9W'P8E2O8I2K`)E5:VNY8I0`3`?IP M9/KL`'V&=0=P#'X&J71ZTNX@>F3H`57:25BJI5U:`PW@EL9`8R!S"/V0Q2== M#K/47(OT-ZR;1I_0`)LS".D0!N.8!$F0<0Q>@0Q`-KY`;>O@`+[@!3V9`%C6 MDP3@"SL0`$MPX!8E!PW0`V;0=P2#`PG*RPZ@"`\``^V@"PH``/>@#@P.`VK) MK3`@!R/T`SE@!^<0.#Y0!]G0`S?^!TP!#TB0#@M`X*#)N=9P;3Q@&4/0`U00 M`'W`&".^#B,0"$C'Y;:XY7DR!YDBYM36![;(X7DR!F>$"]26)V$P!'EB!D.0 M`IR+#,ZM6"]`&(0VW<'HVH\6`,N0)SY@YR@1/.G@"?HP%W:]%U3>K!W15?U' M`*%0QE:H7GR@T')(HUJ6#ELR&+C0I.CP!H2QEFJ@QO8PCKA`!T<"!H2QV`Z& M"U/"!>^`"S?^?;E^H-2``$=VS!6E-<=,-.BP!0>68'%M5DCC`R$-(D7URIG3 M!YO\HN@P#ULB`>_`20HP"J\<"B$=`!80TH+E',>L#%[B`<<<&7,T"IF<Z6^Y M!U[E"S<V#*%`[U(0AA1@.>X@IJKL`[#'#JEY)-J@`.D0$2:',,<<9@?`;Z+L M`[Z`[HD@#_=N`+L@R#9PS)WR;,?L7AP`&Y_T1[N`[F<4.!J`0-PJ&/402L_E M7;+KI(5QS.D0"_F0[TQ+`8P@KY8C#_X.`#T0\`-/?@H@@6F):YQT+D;`#J3: M1/K.[V8(#SF_A%;`\TD/`#\`].XI`T-O)P%@]+R,]$KO,]L,"1+`"8#`#PJ` M0)T`(2[`"Q?@`K=)"V^/G+9P`5"0[U80'@8`]Q8`"W-O`K+P]MB!"Q?@"-^@ M#XYP#2ZP"":@"Q>P#RX0"G*_^!90]^BP`^B@#R[@"'TO^(#_^`?P`5_@!5V@ M!5C0"<_@'!Y`84?R!D<R"S"(0&/W*16PBM3&CWXS#+@@!(!B"!)V>`4].J[N M`X!R![(&)6TS)7/0#KI^)&W`_`=Z1@*0`120`2:0`6R0`4*`_=R?_530_=S/ M!>"?_=E/!AF0"1D0"N`?"QEPC\6[%U^):7\7.#]0!R`0`\D0J65RE(MP"-Q` M`$&`#NGPK$<Y"+_P_V=-,(E@`+EPH*\`/,@0#>``\DSW`6:8+3_P`L;T`RU0 M!W&@KP<3B\-N)^A``&`[#(.P#F$P"/M@`7<0!T<)(:<@!AC@'_Z@"UFU"P"` M`KKD5?*5#F0@A/Z@"UFU"P"``NB0"5Z57ND@!?$4BX'3`[BBKP<3B\7T`Q4U M"LRQ#C;@'P,C#;L``!#P'E[URNM@`NO``LYA'_C%`=1Q`/A%`<XA`"#A&`SP M#TYP+%B0%HN\"_X0!#F0#WU`*DJ0M_E`[8T8#>``\DQW'V5\M$(S0TQR`/AU M#?XQ,-*P"[NN$Z-0:>MP#,X1<?CU"\1KUQ(:B^4:.#W`UM@J>!./#BL`/$!, M`_R&#A.0`#VP!H)!`+&@`-,@#CF@#WR@`#LP)GYP+F.BO`IWM)YYCW^S.APD MO7+)RP\@XS1NXSBNX^G`X\C@XT`>.$-^6AR0#F+P#^YOU]$])OB_.KMPX^23 MI3"`"/N.#^0SD4%@!(6@RZK%`S-()L\0#?\0!&2C"#0`X2"_#!:,"#=0H?KP M!+2H#FB9#@WP#U*`#E[`#N[UEI;0EN=GBWW$C^B`"8$U##S6$5,R`NO0_.G0 M`>OPP[AP`D>B*7*##B2!"R=P)`FP#H+U-U-$*LK@#X3I(>I09"9G`&'(`?X> M`C6`]4="&?YA43]``+O@]G5B#C/XJD;@#EY]`%YM_!"I#BM@!.80RORP"P0P M(-YP:'XA`+"<`86;\G30\`=@`CI`=?(P12*VBK[<!4'CQ5)@`&'(`?X>`DL# M#+`[IA>Q\\\G\,R)#DD5"MH`:B_P#_YA4<"PBA=Q:!")#B8@I1>0"."@"Q?A M",)@`J/@^-2W`A8@`9`M&4\P`+%``-.`#M_CW$9`]:H<`P._FB%0&3YS`,#< M`V$``'QP8'H``']PR>@``ML,`&G@!G-0!G)`!U\P!F@0!NG0"P!P!4%`!4/P M!$T``D,``E)0!V[0`E20!FU0!B`P!WDP!W10!FT``F/P!F10!B"0!G,``G`@ M!V]@!VE`!F5`!B#P!FX``F'@!B`@`F$P!R"0!G,@`B`@!F$P!VDP!R`0!FY` M!B"0!G,``B@P!BD``D/P!G"0!W*0!F>`!G0``F*0!R!P!4%`!4/P!$T``E.0 M!W-`!V70!G,``DG@!F/@`O>?`SB``RX``D'`!FP``G*0!F>`!CP"`G)0!G-0 M!G)@!V5`!B[0``J@`A,!`DY0!4S`!"`0!G,P!VEP!F[0!F7@!G0``F10!G10 M!F-`!V5`!@UPXT[P!G0``F7@!F]0!V>`!B#0!F70!F\@!WG0`#<^!F_@!C^! M"ST@`+L`"P=P:"9PFQ)0`"80"B9`U+9!.;A@&P/0T,/P`($P#O#P#XLP#=&@ M#M&@#M&@#M&@#MMA$XP`#"N`##L0#7*P`+M0IGC``8R@#.G`#`#`",#@"%,S M#E[M`1AP'=IPE$=YE$>)*[O@#__@U1X``=>A#0.`#280"A)0`(>V`MA`"TK0 M#"'P"X$``(K0!/]0"S@'"R`P#Z[0"'7P#[K0`P+@",+P"[!P`%H2!/-`"BH` M#*H`"P"@"D]`"S#0#"%@`J)``04@JB90`=?Q##PP`'*@`8[@`2P``"M@#PO# M"G6`?'54#ZQ@!)I+"G5PL?%@`J$@`05P:(O`#;K0`P+@"-K@"*_A`Q8P(![@ M``60"ZJ`S-:Q`L\`"P`P#ZJ`"[#@K=:0^0$`!;K0`P+@"-K`#XW@R@#@",*0 M"TGD$??Y"EA`!S"P"-B`"U?``8R@#+P``\!^][IP$8Z@#;K`"!S@$3W0#"&P M"-CP`5JP"/+`#ZQ01_NP",ZP`LJ0!+0`!,T0`EA`"TS0#"$`!1ZP#>.0#3Z@ M`04`"AM0`#PP`+`@&`X`"_^P"=G@#IN0#>ZP"=G@#IN0#>X@"AM0`!^`!<&< M]P3B7F&0I0-PDR=C`)33H4Z2#%1#`NTF`UKF!`"P`Q=P!R:P"`>0.3T0&'8P M2@?P2>45J8MP!Z;FSXDP&(G`!Q#Q`-6``!.O@`56F7B#`/\-0!\?@C'6@ M&CCC7_:5"_CU"I$Q^L`\!7F_&MC.`?9P``&`P(OP`P'``XOP!Z9F+8GP!X31 M!6!3#J,?1B<G#$(@!$.W^G-@:A:P^I8Q`!X``<+B`1!0`)2S"_[PQX>W`\"3 MO/(H#$J@!#V`#_^@29PD`FIU`&SM!$X@-PQ0;;,.!$#P'@/P1C7;$.[(!=3$ M*TDW`,!9`(M#(+6"`04P!PO@'*9P`""!"]%QI=-PM@\0"P0P#>MPT@.P"P`` M`8P`#<4G`11F[Q)0``9P:+2@!,V@9L!P`-O%#*$``0-B`1!0`,"<^XR`#,\M M`(7VW`;`",!0VHR@.31&-"P4#.CB">EM`)YP``\C_`T0H=/`_X?@T?\`#>OP M#O]@`2@P(,A`(/]@`2HP(#AC`/:XM(\S#:K/^K!'+E0`/$"<&8G``>CP`H`" M*^A`>+B@I>A0%NYU`$NR`2"1A1K@#ZH/$B`@-^:+#E>`#^F0"/]@-)Z,,]@0 M^PPR#4<)"(_0`@4``D+`,@7`!R"E2'EOUYN3"&/"CUL&/..;"(YV6O@`!$"` M#N_0#W\3CT*@<VM9$`'P#<<`$AE()AT0SA\<;GEOUW^3"&,2&1PDO?A03-P0 M.")0!R_`1MK01H$C`G30!,6$!('#!770`.L7`"*PAD[!!76P1M@K0C(NUKYK M#?'81L7T`22D`8'#!75P`.L7`")0!VN$O2(DXV+MN]R`O71@9L<0#><P`&%9 M`<!4H$&X7/\0A.FP!_\`3%J2#G*0)LEDGE?@"`8@`9"]#;/``B:P"`EW#/C/ MCS"P#8?&PG30`"RL);Y[#T,@!.O0#JSQ.NA0#V[*0M[@MT<@-]$`#D``!.A` M#OPP"J#0NLA`!S+@R<N@O-%P#ML!"@<0`,^0"#5@P[MFN'54#T+`PG4@#G(3 M#>!`-:!P`)]T#"CA&`-R>/4``%T8;DN;%U!`"RS0#"'0B'^3"#2*".``&KKP M+#F.M]63"8K@!?V`"+&("'X@C(KX+/B/#CF`6782`?)P6$Z2#.C``@"@"*Y* MXVH9`?)`JD)#-%*@2_\P"J*0<!9`"@?01*']#\4G"@>P`19`"@<P#%K``P$P M"5!P#^(0"?<P#@.`#%AP#^,P`-'PME?P-W+#"-IP?TXB`)_[A5IIO#8`"@=0 M"*WN`^ZE`Q,YVV7Y:(GP#.L``M2Y#X'3`UFGR&1RQVOBE@HW%<B`1T9@!(O` M`,XH4VU;JN#6=N[U`7^S!$M@#P?0]18`""=P,#9``@/R=^Y(`@6@W@(``@-R M!P3`=DJW&M,01SP0!')@`#R@!<9/`""@""=P]D$@!P+)#UIP!P,`",0``CB@ MNPA0;[\FRMF`"*7U#X@`#IC#0MC`=L'\-[@``$30#"&0`<E@#\(`""($U7$- MS'D?W=9PTB(V`HJPEQ;U`<`C#/R&#M1%<)$I-X$H_-ZP!$9P!.M0#:,_##T0 M!`#`!P<64G]PR<```L/`!%]@!!A%`%F`#%M`!%H0!@%0!1[`",G@"-D0*D=Y ME"N0#"-L`L3P`>[(<XQ@`(CH"$#<&@90S.ZH"@!@`@,]"M=D`C,&`:,`"P#@ M"`90S":P"`=@`HOP!`1@`HMP!0R["'>@`":P"'_``":P"&^``";@"%_@`)MO M`+"@$%1S39P`(1[`<YS@`NYX37!O`+"@$)FJ"@!@`H]P!!+@U0?@U4]``%Y] M!0R;"'>@`%[]!PS@U6^``";`"%_@`)%_35[M9Y$/"P#@U4<``1_0!<L@$0P0 M!$Q`!5]@!/X%`,20!8K`!42@!0$`"0\#`%XP!`#P!4[P!B!@!FG`!F4P!R!@ M!F]0!VY`!@V7BA.QW2K@`MO=``KP!'5`!R#P!F8``F20!VX0!FV0!F,``F'` M!FD0!G,``FU0!FWP!G*0!R$``BA0!W-0!B#P`F400&\``FG@!F,@!V40!G-0 M!BD``"#0`@_#`@\#`"#`!FG@!F7P,`!0!'(@!V\@!SH``F:0!FQ0!@\#`"#P M,```#,0`"1C@$P`P"R`P!G4@!W)0!FY`!R`0!FR0!F$P!R`P!V60(VG@!F<P M!R`P"Q?1``J@#<0`"1CP"Q<Q!F'@!B=`!R#P!G!0!FX``F'`!FD0!G,``F:0 M!FQ0!@"0!FY@!V'`!FE`!B!0!FY`!W*0!R#P!G(``F7@!G0@!WD00&_P!B#` M!F_@!F<@&&X@!V4P!F]P!FZ0!GI0!F0``FM0!GD``"#P!6'`!FD0!G.051<! M`BWP,$4@!W+P!G*@`P_S!G5`!R#P!F8``FU0!FWP!G*0!P"0!FY@!V'`!FE` M!B#P!G!`!VGP!FY@&T/P!FW0!F'@!F3P!B`0!FP@!V40!F20!R"0!FXP!W00 M!FS`!F5`!BS`0'-0!B#P`G(00&\``F]@!V4@!W*0!F10!@``#R```B\@!R`` M"0X@!V70`FG@!G-`!V'`!FS``B#P!G90!G(@!VE`!F4P!R"0!FXP!W00!FS` M!@Z>!F_@!B`P!FA0!F.P!A<!`B#P`F/0`SPP!F@0!G(0!F-`!V4@!SX``B`P M!F_0!FT0!FY`!B`P!V4`!V$@!P[^!G+``@PT!V5`!B!@!F\@!R#0!G7`!G20 M!G#`!F4``F/P!FW0!F'@!F0P!R"``B&0`@```B#P`F70`SS@!G70!F)0!G+@ M`UNP!ET``B!0!GA`!W(0!B#0!F70!F\@!WD``F;P!G(``F'`!FD0!G-0!G,` M`B@0`S*``RD``&\``B#P`F'0`SS@!G70!F)0!G+@`UNP!ET``B`P!VF@!V4` M`F]@!B`0!FQ`!V4@!V[@X&4``F/P!FW0!F'@!F0``G)0!F,0!FS`!B`@!G5@ M!F90!G(``B@@`S5@`RD``"```B\@!CW``VY0!VT@!F4@!SZP!6O0!2```G.0 M!GI0!B#P!F8``F/P!FW0!F'@!F0``G)0!F,0!FS`!B`@!G5@!F90!G(``B@0 M`S`@`S20`@#`!B```B\0K#S@!G70!F)0!G+@`R``"05`!F_@!B=`!R`P!W3P M!G)0!B`P!F_0!FT0!FY`!G,``F]@!B#`!F7@!F=`!V@``CP0TVY0!VT@!F4@ M!R```B@``RD``"```B_0!B``"0XP!F\`!WD``G)0!F,0!FS`!F5`!B`P!F_0 M!FT0!FY`!G,00&\``F7@!F0``F]@!B`@!G5@!F90!G(``BC@!F\P!F\`!WF0 M`L<(`B#P`G<``I#@`&/P!FW0!F'@!F0``F)0!V9@!F4@!R`0!F/`(R#`!FFP M!F4``F$``F.0!G(P!G7`!F$@!R#`!FDP!W0``BC`!FG@!F40!G(``FR0!G-` M!RD``"`P$2\P!R``"0XP!VG`!F7@!G0``FWP!F10!B"``F)0!FS`!BD``&T` M`B#P`FD``I#@`'-`!V$@!W0``FG@!B"0!FXP!V4@!W0``FWP!F10!B"``F]@ M!V4@!W<@!VE`!V4``FWP!F10!BD``"```D\`!W20!F_@!G.@`R"``B?P`B<` M`F\@!R!P`BUP`B#0!F&0!R`@!F7`0'-0!F3``B!`!F5@!F%0!VQ`!R!@!V'` M!G50!B`P!VCP!G?@!B"0!FX``F(@!V$P!FM0!CR2`@`P!B```E4P!V%P!F6@ M`R`P!F_0!FT0!FY`!F\``EOP!G!`!VGP!FXP!UT``EL0!FR0!F$P!U]@!FG` M!F70!0```A,Q!&\`!WD@!VEP!FA`!R"``F.0`B`@!')0!FY`!R#0!&,`!6A0 M!G(P!V_@!O>?`SB``RQP_SF``SD`(D/P!FW0!F'@!F3P!B!@!V4@!W.0!F_@ M!O?O`C``(T/P!FW0!F'@!F3P!B!@!S'@`C```F*0!R`@!')0!FY`!R#0!&,` M!6A0!G(P!V_@!@!P!D[P!#AP`PPQ$<^2LI(HB300`,H@`1)!`*"0:P3@!01` M`P1@+K8P`#<7R@,@``,@#`*@"`*@!`*``0+`%)C`*Q.1$`'0<!'!*T/P!FW0 F!F'@!F3@^I`P`0\#`"!0`"``$@C`!!_`!/%F&[:!6;8A$1\`&@#! ` end END--cut here--cut here