Path: utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!uakari.primate.wisc.edu!crdgw1!sixhub!crdgw1.crd.ge.com!ibmbin-request From: ibmbin-request@crdgw1.crd.ge.com Newsgroups: comp.binaries.ibm.pc Subject: v09i100: expr, command line expression evaluator (part 01/01) Summary: Rewrite of the UNIX command Message-ID: <2584@sixhub.UUCP> Date: 12 Dec 90 10:05:27 GMT Sender: davidsen@sixhub.UUCP Followup-To: comp.binaries.ibm.pc.d Lines: 391 Approved: davidsen@sixhub.UUCP X-Submissions-to: ibmbin@crdgw1.crd.ge.com X-Questions-to: ibmbin-request@crdgw1.crd.ge.com Checksum: 3463622377 (Verify with "brik -cv") Posting-number: Volume 09, Issue 100 Submitted-by: richard@calvin.spp.cornell.edu Archive-name: expr/part01 This is a port of the UNIX program 'expr' to MS-DOS. It assumes you have access to UNIX documentation and does not include it. It is a program which sends the results of evaluating an expression to stdout, where the expression may be numeric or string. The submitter says: This is actually a clone of "expr" from unix to minix, written by Peter Housel. It runs fine under MSDOS with no changes, and I am posting it here (source and binary) with his permission. It is useful in combination with the setenv utility I just posted. 4DOS 3+ can do most of the environment variable manipulation that expr might be used for via the variable functions, but the regular expression matching cannot easily be performed any other way. With command.com, expr provides a way to perform numeric and string manipulations on environment variables. Regular expression matching and extraction of substrings are permitted, as well as arithmetic manipulation of numeric valued variables. There is no man page, - pretty much any version of unix expr(1) should describe it. Richard Brittain, School of Elect. Eng., Upson Hall Cornell University, Ithaca, NY 14853 ARPA: richard@calvin.spp.cornell.edu UUCP: {uunet,uw-beaver,rochester,cmcl2}!cornell!calvin!richard [ Checksums obtained with the 4.3BSD "sum" or System V "sum -r" command. checksum size (bytes) file (between BEGIN--cut and END--cut lines) 24763 20981 part01 checksum size (bytes) file 13642 15210 expr.zoo -- bill ] expr part01/01 BEGIN--cut here--cut here begin 644 expr.zoo M6D]/(#(N,#`@07)C:&EV92X:``#'!R+F,````` M````"@!_STT`````````````0"DC*```7Z@`828-FS(Z0)3!`T>.BS$-%(`8 M&*8.'31OY"2$4H9.&3D@IK@`@>1-G3EEV("`<>,%#!HO<.1@P=)E2YDT6\;( M$7-F2QDP>M+$X7*&T(@3$R@%P10&41DVA+Y\(2/&BQPPD*IX$5&@5A`HVF0L M`R(CB(-SYH`(HQ;.FSD>R8"@\P;$F#=MX+AXZZ)-&C=I\+``<2?-11!SV*0Y M@X:.W8-AW-2!`T),GKEHR%:\F/'K&S>8R;)AZYA,&(\@W+R)NU;,&SME4FCE MJF#$WS%LZI`ARP,NF31O7*#Q$=&V&]RZ><.5\_>,<.*U;^?>#8+'&#IYX)1Y M'C'B0H]R0(]!$P:DBC9AV+!Y,P:%0,1I])3YXMB-98]JMZ;8T5W!\CK7@6!' M>G64T=\>$26PGAMG)"!9&P.RL8-2";SWX$=IC"$@@61ME>!?=#AHQA<1ID'& MA!4.),*%S&D888$$I9&27"62(0)!HYTQ$6T)C%=>`BHL%R&*[RW7W(:Y=4@; M4TPRU0=_"A2W6T%NE.%@'6W(4<8<=;!!!PH1PL'"@V)\E`((%'*18`(HM!EF M"BWXX,:(-8+0`P@QI#!8`FHJL)2;Z<$!IP]"IFO*Y)EA@!CKH M@Q$>B@*99J8@6Y0*V/&&B2#\5:-[`_EHWD?FO;!?1*9.5&B2I")&AQP`.O9B MAV'NN*H"(*:&Y:VQ_A?@K1/EJA^4K08YZQQAP!9KLD8RJ"N4GH*Z4$,Q!#MK MK4C"J(*QJK*`5)/7RB&#MK0.RV&Q@>HJKD3D,B3'#.AR2^RW[>KW;I,*R4M# MO>HFR2X;E.D[+I/EU@"PK>OB2["[!S-5K@T+=XMKON%&W&]#-U1\+[B[5BL7 M&>R]L:#'#:-'QWB#"8A6T4004ARQ11>'KH@EAAH2/;4;CFD91QUI:&DCE!&A]Q<*1(\Q&-%V;-IK MV3O8%?1$:#\-)8(2N6PQDC"`+5'.._=,UIUQP]"%WFO)4?2A)L0=P^#];2Q' MMB9$",.N2*5A!@I#&TY9"'Y+'W:]BE7;*A1^^2:PIE'_V]ET5'(`2AVD4?@:#E M&'7(,4<:L(&PVQQCE($U"#)K_Y$+LT4DLN/9OAF1W1\'.C=2\*\;80R$EWON MFX3?@89!9<`AW)'FBH%R/M.89H8$F/EL)`ALO\96""VM$&F0(O/2DL(,-;*'Q(D6P,YG` M!+YR8251J"D>,N5!6N*2ESAIR,E-4H<&>F0/*?0>+=%!B*$I(EP*IR.RL6&) M30Q5S=XDQ2Q2<8$YQ*(,MUB&,'01@6!LWD"8U;TYF$0.X;/+&ZBCF"JI10P6 M2,W))G'F%#'M`G$0]Q:@13^@M9I%`$)CP!"BCX M9PHHE*8.?C"$!%5*GV18KG^=,(4)==0C,_DK#K'2DZ"DE$4?JJF"RO*46$IE ME[X4IL&$*4X:5L(I/^ MR*]`\I20F2L:!7F@2$9ND&XRY*<_`5H=$#3RF`N\(EG,BLT(IM60(N!!#]JZ MDD;"E2ER_2<*JG.GNR(PF7N]G"#].D`*#O9,BRSL6SN86+IFUK%B11@L0R79 MLQ:2@IPCK`:S>%@0=':Q>P0M,O5*6@?V%:V5/:0/+HM!S;*6L_U4+`AV:]<]\5@D$0DB"$Q3KA")@ M@0HL$&A$%\J4@TIRO1TL[WE'"=&$LK>V(4@I[XC)!SYX5;\!)*I"32G,425J M:4V#*4'OJU>:WI=)-U4E20-ETD"AM*(JA0)+78IAF/9)C-;RUT7/*%6GKC$B M"JR?P*J*E(1=M'__X^I?O5K`/H;6D,@5-'>SCPSO>`&:L,&L8+HC MQ*L51ZMCW/)8!"WX\6^#+%[%%AD$+4`R")1,+NL^$KO/O#%W02P7%R]5Q6J4 M'XKIUU1BL5@B$WNQ'6,F[ZYDV,#\8GB_D@)!?__[Z0#?KY0?+?#H MR(""`S/M")N6F)=ER)36,JF!]^,PA`R5V=4J172*8;4(?F.'-&SO,Y6YC'Q< M!SL<0CBD.%UE29$$APOO6B4OV/!+G;UEX]X8LK6=K)/5>L@23+JUEC9:!^/, M41QV&L`7%;5_/7UMWA&5P,`FG:L3_$IE-LG6*^1D2U/:6U\G(-_")K:Q@0,: MRX!@V6]H-H$CG--IGU1.&`9!";3=86Y3,O';SXG$BTZD/E+>P6)M2L*E5C)CA= M?+\Q@[=G.VLMDAR:$0DCRD/,L1$SM<3Q(QA4&SCCS((USPQTPZA$X)>T',EJ M/L.:[E(@<3@WVK:/SJT(2H=9MU9QS^DN.?OD+-8F%_*#%*3\F?:XVAPK?M6E M8Z<8TA.9\,FE?.*C'DKF4'DF'1/LGX^8V.E4]@R*_N*O.M1?/UCRD]#4^3;[0C'^W5\O5_/+*L;#4%T4\ M$&\9?59:F^V,))PM<6G;@[C!ML`"0P6W*WKW?/0'&C$P?414?>-C;&N!)*"" M*7(P&'_!).LG>&LF M$5IR!L8&'FZ#-#'C1;VR/3MC=H/Q&U!(!VIA?$C!3EA8)7*Q(#KR(&9'.+B6 M=ARX:O*W?]&'/XW30"A00]06)Z_2>3WWAM`'&F=G58170W=R`BUP`H@'>BN@ M;F(UAH"A@,1`S#@06`1,Q^$92!P`C!@ MB*+'))3HA8V8BMT&B)<3`JNH%J,6,SQW`EQPBGQX@"M!.&*7<7?"B#^`96B8 M$`_B1<-'=D!X)XXX?[CDB`4X$'`X1)D154="+&]@!KD$A;`!&@Q(!R.1!-I( M/5H2A)\A3VOQ%=OG(APR&#@(&W+@&(8Q%W41!M;((.,'+6MG44FH?C#C<@K4 M*F12!V:P!3,@.%[TA%%8/3CC16*X&&1X%I]QAEABA>/#B&`(B_:G=D)E*'=F M8TTRC7?(D4.B%.^A1,T43/88?L4$;IV6C#6RB[@D`B+@0S\$5I413M/S@!)8 M3$AAAP.IC4>V/?*1C;[2!N!D!EZD`BW0`G:(BZ>HAI?SB]=65ZU7:Q&CB5BV MD=L6,1B))\W78E[6)%I)E4/2."1S,'O&E$YY**9X`J!(/&V@<7AR5&*%AB_` MC'_H>X1!9W(9/($$D?+'ED]9B/K7AV"!?/NH$L&X+,T20()"@-*$&(^YC=PC M/O>H(T]D&&KQ!G?@C>K!'J=1!G+A,V(A!Y?Q@6)WIX M>!&#<*5C$HYAE+6)FI6'%+-C(FDH/SI10$*H1**`JABH0R*H2)C.Q;1'KCH!B?@H7+0H`LQ/#(@ MF?=D.5%7!MHX7E5W=?UA',A!'3R@&'[AA=S173*J3Z[5!.*E%"A0!4.`!$SS M!4N#!2V``P/U'L252A\!&W+!%F4!!^D$@_:$3T'Z7?PT!4-@I$BJI%+`I$'@ MI%#Z0V9@%ELR!F$`!T?R!EJZ35Q*&UY*)?M$!$]`!62:I$O:I"UP`U$Z$"HS M'FOA!I=A*F%P'=6S%2`@)5^Z3_]4!$[PIV:*IDYJ`X6:I>)S)%RP6%WJ7?LT M!/XT!46`J8&:IBU0`YV*&V\!JFQCA-6OA&$)@=6#A!;.*K;7:KY;JK@-;L#*` ML"!PJ&B0J.,Q%E?J&$4@L2A``A5KK$(J!:C*!$4P!'ZZL2_AL:'J`CC+!>&9 M$N=$!PR7I2!P$J29KWDJI%`@!4]P!##K!$=`!4B0`)XH`S3@L?;M$O;M$@P.#_TA-?"GCKSM;*2$?-9K`JPMQ'9 M*W)@!CGRA:[EKP`K7D0BC65`GPS!N&?@N#CH$7C@&/;$*KDI!V4"A6XP!UO@ MB8CKL:Z)-3I(CR`0JI41NG\!&`P2M@J0+%H2=;)+NS[T'K<+'FHAFSJK$%'7 M',)KN00O--4!GY1@Z1Q&?:$3(6"Q[#[ MQXE\,+\WEEAYE]`F84.\,D4,1,:[QU"39:)<@;+71`N6R)3LH3+))1'_KM8$+->5QK[=93[0!OKQ,2!4L*!&A MD'#!D*UKO@PQG&\S!I9L%]E3O%E#SI3!J(Z:*DC1*@5A1(,Q&G#QN6>1!CW: MF=H(S]2*S\(;M/G+MW*AC^41!F)P$!/R'OCL&*9#!PF]T&5P(P/"'`I]$"U) MN0QL'G^+SK;[*;@+$K)9):E+NHX+%Y!+G\F&&IU\A*$[FND,T`PIT*D1TZSQ MT@UHDP[]!G2J3>PDA:K))8BJTR@(%XVZ!EN0`[4KKBB`LRY\)M[DL]*"U&.P M!BW9*W!@U6M@AWGCL5Q-/B(MA5I[TW!Q)&%MU.0SK*0YNPCIL9@[GVKQ%[\! MIU2M(RW\O&PM%ZOKA%J*.-''4R4SR0=TB`MW\09>H9X]%AQ]-BH%=NCUS)L0U MN$IKJ89+BC(`MTR@K%-@MFBKMHVD:L%6.L<\&B"QS(Z';(`[EW11%V;8G=\V M!X7ARK_=W6-%8';!%F1Q`BYP`CJP)@F`U/=*T8?RT2*D%,*MI:.(VGQ*!0.> M`&#&;4P!IR@QR5R@W_S=0).X&)78S:A&(:G,X0$7`EI:V6TMW.Y,BF_9!3&T M%&7U>M\M`EIBKL6;3;+)3GO]`JIAT@LY/ER0U\\K,UU3>1XN*X;]-XC,WTQ2 MX&-PX-K*K4NPX$?^T4I.XJ(+!Z.896_IY*]((YMFYELMT5>]!9.>U%2^`IJ=!F^.Y$J.M%!@ MJ9T.Y4=V)YQNY';73&'FX1^G%%O>V27^Y2D@YAY>YK3FWQE-Y&#UYFT^Y7=^ M.9=^U8+H6T$^Z(NWZ%"]X[;#P=KC/9]Q`HXQ>Z-Q'!4=Z;26YW<2[$K=E-H. M!XRSYD]NX*6.K*=:!*,N[H=RZN#.%"'^%FV=V:V(ZB.GZEC>Z@GPZBC`T0<= M-+/JV<0E!43J!('>X6:.ZP`>REIZ[DD^[F$Z!`H?Y<.]`F_>X*AN[\!7Z_)N M\&DNX/+NZ>/>Y0S!?/).\>O^<0L$X?=-`A2^YH3GV5].R0-/:69>VG)^VIN; ML1-_=R7/WQ=/YADOT6A.Y!R_[A-!ZFZI\CE/[Q5/WRA?BBJP\A1B5D/>6]2Y M[K;.)!HO]`G?\48_B$^?]-FU]&O>\S)T]4R1H1^+R6+A+%D/BC&P4T/^+@G% M%,F=95EO[4?>]G2.JU+PYGJOYD&NVUM/]"3/ZDQOWZ6X!5"O%%6RP:B1D13R M]T-/(1Y_*%)`ME.PX"T?ZX,8VC%O]I"TV_+>^*,9[SN_YHJ-[;W8V#P``IBO MW6F;^9`DV?)N/5J*V9K]AQ22EE8O[_6\2\$=\;\.ZU/^V85(QJ#4S;,+-7MT M`EUP`K7/%)\$1%.^_,.E2W00\_--]+F]`J+/_4SQT,HG_-%/$!FQV'?R^W30 M-GG>^@\-V2M`^VL^:/PM0Q^]!8N=97$;\'3K^IEZMU"##_2`^M&O!@1SP9^]$BS(QEM-\,26YWP@\@N05']C;@7UL!=^+U?4&UM>`*WP*9 M$A7!2^PWEF><]-T42E%V8;B@-OZ'ZD"?Y!M\0:[RH3:UY?"X'KJ[$^ALY.D\ MPS?V9HW/(WJ',!(2/45H%\#>JE-Q)L_DX!V)T$"Z'<^Y2HGGV/&X9=Y`4S8SAJ@3QT MCU_&S^"`8A@#AN$K@#:XU!#*@':(43$L47PN!D\V.X+\!U1#T&[Q`;9Z-Y:J&,<:[5=H@B!AHD8\OM M:\DRT4.'YE4H&V"V93"8@(^F*7A.U4,F*/$C1D13)I:PR/9K$I%(-TVV?]-! M;N)0/&\[<=W8IY](O^X73BR#[N9RS*N/Q`20'UB85W9O5OBY1Z819YGU6(EU M#,7)-TK#+VJ9'ON(RT&?F:$MX1@P6&&(7<5$`R9%S;84/THH_"!Y<>[DLAN# M"[O"0!A@N@N#O2_9=-X(@NN82PZL++B!B&!/B!=0](I:RIL-+P0F!Z"$'TP6 M#NPAFH?8Y1#G#![13691!63&/<*NB,!4!#H!YU*\KSLQP`I84%QKD8GJ";)' M(I)VW6/9C:DA,8H9URAC,F-FN7SE[C8^%I3HR#)C=$H!FDTY(A/K>"=D0"F3 M".X'<\S&1=BN9%+T,8X:28[%N9AX\\IC;'Q?S0_FV43$A!Z1@DA2CNL),LHF M#%;`AJ%X1?X5&U5CTH(=+ ME`@1D@JY`8N(,Q)-'-`;\XF#N8$]B!C>VW@0CZ%Q*E*:IM?P]F#4XW*[,;AA MCM#H]C;\BH/$@'7.2O@9&SHK?(QA0I[VS) MH7A?T6E'TD@X")9^Y"1DD0G.2!X<)`D2XJ,N:I(X$DI6R37'(QT1A0"2R(1% M8CXM27C@XR"B9/)N^K4)ZX@G4@#^@XTM<%>%P!&XI`!@^2-C8,$`(D#,\;[R MI-P2>`Z0!.(M3?'YP*1C:$P@(4J*/-@%\QN-3)6ED;_Q2!^YYEZE;`J1L_*Q?,I]LJVZE9:T0Z225\Y(7WD=OQV%B`,! M;E?V2LI0+:4DM>R."RX248;6%P?,8,`114=FC^@FXD8`BZ,!67!.$E+609T7 M)%GDK6(:6K),+C@[I!PI1"3:D,!M(H3&P=`;JT1Y(F,`<_6T'7,)2101I?25 MFP@1*@5Q*0BC2OF3DP!3^0Q,L!`OK0=0-"0F(&%.)SS#,+F=MP1*$I/!TB=U00:;,GR^#K12QN]AQ!`HZS.$W`"Q40#!`3E"!%CT;8"VM:2HY0$J`(22 MU@K8.`(,+4I7B0)Q(`)#.(0!X@`L`-62U%AUF&6`'`+@0D&@(:^'1 MJ!Z0%C#I6E.>Y0>D!FSJ@41G"0(I`"4PHHQ8NF`10%8?#&,HJL58P"BLAA)0 M0JV6XHI+`;M:,*6O!@0K$:S#R$771,L,0PL0NXB4U3"Y>!"G%0`\&64Z_^`R MP)(I(`=`%8NP,P@[""SBA0&+'#`*,04L,@P00(P"8B-&X`,%.C``D(57(`[R M`WH(X`)+`/M>D$`6^.J+3@T(9+'O,QDPG.^^/AP@,3I3//!O.5T,0ZZYZ%JQ MB!T$6('.$OZNHP,NO2`,\(\WH$.%!5EDL0`P=<`PB`$@"M#POBGXJ_)E.@-# M1P2+>./!%(UX@8\%4^2"D"906-N7!P$/7$`[TS'!,400D!'C!DS$ MN$AQ$3#1S`*W]TK88X]L-MHITSE`%NG8,0`NP<`-XC\U3U+WX/C]`8#>!0A] M,3IEC*[R'(@K?0/?9_1.QPJ,.QX7$9'W184`BQ"P@Q7Z_,$`'P7LD.\"2 MT3H"9)A)(LLG0D`Z$PQ0_./(3\0W-H)#H;(T[:,3PNL[]Y']]MT#\WWXXX(Y37O M>=%C0!VJEZ\[W`\`W/,>^`0@OG3X00#G.U[R^#:$]JFL!_%C1`&3]H<3IE!_ M*VPA$_Y'#`&R#AUIV&'B\-.'!.[M=CMPH,J2<$&EU8!O/:@B'5(00\A=SH/. M@UX=%&`]?(Q0>RC,W_Y8.+YU!*"+Z0,`WV`A0?>APT<;R\<$#'A&_*F0?^F8 M#2Z,8<2:66./L$M'$VEG.X>A(@`/A!$!!G?%VZEBDHGCH@9E^$7FA5$?(RPC M'7RHQB".SU5PG.'M.E!'E5V@CN@P`R(31\H_LC$=)@@`+I)12'0,898'3(?L M&,FW"D!292/`I._X=@%E#B^5G?P@]/@@0A+B0PZU!"(@AW$\XWE1CK=#Q"3M M*(AQHB,:$C`@]=#XPS6V,!*08D8O79'.1!**F+>32"0=,;K$V8!O@NBGTE0` M3>5Y$H34[&$9[9!-=Q)@'2\H*-_H,3H[NJ.BZ.A!/7?FAX::$G,#HP-^_,`/ MSH7,B:0SI50,H9O=1'!/B8-P4V*=>1!5Q`HY>IF&G2ZB`%?#J,99%D1%#IP`"^`2*H8\0%)1"&#@!, MZ\*$)06!@(J9,QS4@18U>0@," M?+2"8=&1C+_-`I)WPX\<'+LO4L!6:6981+X68`10%LP:9.7`Z`KZ#SOHH[CX M^`<=!/`/&FBB%1T`+?_6X09<0`4*,SOB&5`[U3.L%@Q_4\)MN+6[L2 M@3Q&>F'$[`"=REK@K\1!H'D+(((`^IC&#*VC`BHSAK_VA0\'3#6;3[[KYZZP M"#\0X!CYDEQOY>P/.?-C(H/H@^4&'(B^U(%=QDC<$P#!@Q;4809&@'-54+B" M15C!'[KEQPR2L8N6=/:S`)`"%!1!`$P4`!K_R,06LC``;$Q`&8EP@C\2X05^ M)+JW&>$T)@!CCT/<8`!;3L8@_*`/]!2`T.@A@)=1L&M\H.!$"1@"`.62@,CMN;>W`(0OH@")>'C$]>&$&4@#%RW1=''Y45Q]:&(7_B4`#,3I<9!G&@HC M+[DF8N'?C$.\MPL01AV:L>LZTX$`^R9`"U36DBPDPMW?%O%=K:!A030@"T#8 M%SDBIJ5%!)IG!<.`D-'Q`'\E6&6R>/J_C)'FD>$""P2`N0W@A0X92$!L9T\[ M+DRP]1*\O1QQASG*T)&!NU\&[7V(`"P4QK`(*#,NB*:P!T#&,S^\+"WW(!>G3,8'3W,(`K`K#G#%JN0*ZHG@&, M48#TF(>.[3G`-]?!&`_0T1@J"04R,(Z\=5R@H*&(_0IF7P"'ECW<,B"W2N&L MCHG\0AO:-H(TY`Q<%#+-"]:(QCCPQ8Y2'T,E#3&"-79M#07P(1V$]@*?!1`( M!ZP^(T9(QQV8=XP68+\'_C``?%`P*;!UY[`9>O(,F)`+!0``NR`'#.`".W`` MZ3$$0R`.]Y`.-R``+O`/9Z``)```*I`M`+`%`,`%!=<`B]``AL``OK`F#)`( M?B`-M(%-Z@*`4!H M*5`'02"&9;)KU9>$8K5U$[`9_^`$PN$%>CA^1M"'V+!DZD=[^F"(UH"(ZA)^ MGEA^V'!^&9$.9+"(/'`/@(-G@8((DF2)HF2*LF203F4H6:2,DF3P$8'"$!H#HD?>/`/5"F5!K-UO\`/ M66`$NT8F=)`!<`:0**0`BE``]G"%/Z)^1\!^`0D/Z]`!@W`,*(0!@.`'ST"+ MMOB.N;B+,YB`J.@-%WD`B&`$SZ``P:0'_2")!%.)^U(&7DE[_I!TG1-N*<-F M*&-UHT![HQ![$X="%Y`E7N`/XI<(AT![ZF*:XX":L1>(_M!S[C<.J7=_Z+$$ M<,8/V(`O_X(/?I$X.?`<62B,S6"94'8N`B!]?L`N*+,.$'`%*B,%P!EQ M_I`X/:`E4;D!B]`!@/`#_E`'Y+`.;]!IY``$)`!$(`#$*`'5P8!YP`!/P`!H``!3!`!:;D('*`#!OIG M?@$$$8,9"63#F2``"3 M*(E&TZ"4!<"4,`D8`Y"B!CHC6E`(PL!N3QJE_S`^U8"B!7J@--J:OT![ZX!L M=DJH"6JH#$JEZ2`%_Z"D@SHCA;H(J8EQRT:I=XJ@XH>IL4>?4RH`ZT`!ZD)R MRZ:B_'$$.D"!6`(,Z5`'?;%LUN,/Q<&[Y`%(5,3+O`(!C`,$>`"C.`!Q1`!_,`A:>$+ M$B$#Y&`"K``$C%`,AV`-D[`(-L`7@V`,`C`;F>$#9:$=$<`A;;$(_A`+?R`# MP!`:XV`'@!`/?X">:#0`PS``P5`"_C"I_+`"UP0&%L((P.`(V,`(T*`@49`$ M\T`*7*L*CM`-AR`/AY`-\K((T#`$?`<`\R$'0(`.$J"X^<`#(""5/-``/\<# M"5`';>>AY)`X!R`$JJ"8=1``0V`(X,"U^3`.%<`*2<`"(D`'#T``(L`#7%`' M!T!H(E`'`L"Z[#H,Z5`&+3L`RO`D.;L61S($`[`-BT`/Y;("ZR`'YB`VB>`" M13(.#I`(CS((Q2``-L`*B@D.$0H/&1)QV?(/)D"SBQ`;`!`%VPI)T)DX).`! M'G``CL`6`#`#]L`/>_L!T&D`0.(;Z)`"ST@,S(,-[B(DL94.^.`.&2(8#_$# MMR$`H6$:J$$/?ZAF/D"Q(,!E7Z9;AT>QIWD(&7L9%.ME`*!YY799[C8*'$!& MQY"$$5+9P(=T``H7##R/-M*-QFEV4$!I`"\5(#`W`/NF4`4$H` MB3"'H:`!+OQGWPG%ZY`N`;B>B:"[5E<`EL.P/KQT'NQQ)>`0@2`.$Z%IZ$`/ MP*DE\/H/G>%E&/#$"L!DS&,$!+#$4ZP`;.8%EW4#5D>? MZD(`]W`$`@`$P69UZ\"_&KT(?Z```[VJ_:D`=4"R1@!IQN`$=^,.NN4/U2QB M#SLN)*97Z!`#SI0]"\L$NZ8``2`9@\!@?K``*E,)H98"0IP!5H``@4`&`O`% M_G`,K[<(1(``3$9X=B#6"&8'!J`(C8,)^\(-`B".N7%<8]0##G%&"YL_#&O- MYY(R0*T,`B65NN`0Z+P./X!&4)`A4+!I:;TO'.;6&;=JR[;4`.`'!U=MRZ9I M*@,!H088BZ`,6*`%*S`,&Q`-ZT!MRL:K#:MT9@<`1/#167$H`"`'!!`-XA`- MTZEIN"J!27NT`.V`,=<``NX8``O`'!G`<@V'6Z)P.+F4>HM"`=?``N(`$ MSN/;""`7S;T][^H#H.#<#8`+.##=?R87VYT1D`V[A&W8=F0,L4D,"'`/6K9G M@"B522(X5RT`\_`/W[3%#`O`MHZ0R>N!`3]"T$*#)=<`.WW97@<`.?"%]1H``0-`#(H$]&9(.]M`7 M&BU^]W`(>-"`@$`'$E!<9>V_>S<.LS..HJ7DL3T.@7`*3_X/_9#$B6`(?#"I M05[F5]D(MN`'Z=P&_^`(5[D(GG#F_V#F_Z"BB&`(>_`//`#3!,!O#7"1?/X/ MXF0$C6`(;KX(UK`"T!`(^B`1?.`#B;[H_N"V5U#I_Z!W"K8'66X`96X'_V#@ M=+`!@^`+HEYP&.ZONH4`*V`(5SD`AB#JQ+,.3\#F;G[J5RE7\/8/FHZU;CN< MP&`'+I#IBK[I&D9EX@CJLS[JQT`'%W#JJ8X]@:V/02[KM'X,ZQ`O0;[3EWG- M2TZ;3MZ`"$`'$(`+EH?>&H8"?5$.S_+1F)4N[9P5I+;*>T$\FX`]$ZJ![`OVX`/F6#15F`)DE`( M2B,`]S`.D<#Q/W^O!4M_R]&''UF,`O-,/[#0`/J_;0>_PB>/.\>`$`Y`/3W`/QY`1 M/S<.$4`*2;`"\."VT9`.\U`*V#,`\#``^$`*_/#%(T/E"<9YZ(`*%.W!/[R9 M1,#;QC!*@6T&D,T'+:IE"/';7IW;ZY>&W%D'%L#5E^/?C'[+U:-S[/+58>UE M-+`(?.#./'`$*<`#;`;[_HW8G;8O--"8XTCJ$>#BR3%&(PX!![T.G`P`BC_P MZ_(/#\!Y>O+[Z!`Y8B/P)).>)W/6=GR8#D$`?;"T1N`0JL\%"J!X_^#B"%'J M>?D/"L!N[]\`SZTR,K#*;9_L)X@A(.#8$!N+BT8+M!@4/L'M"2P<0`XZ'+VQ34PACV@)6"^A74Z6@(=Q&0J MQ3S(,#K``6Q8;B-N[A"'@;K.X.%VV!QK'"SA.]VPGY,(V,WSVW[2QZP!L>81 M`-00%.MM4LP'4#$51``&@#'P:*4I$?R!](0.]H`]R`(AR@J$@D>V`PP`%*L# M4\X&/#)T@`#P01;($*,`BHV"1[8.=H!7D&3[YQX8CSH@`E3&$;B(S>R1C1&4 MJ!)9XNL3`"E1`12S>\#*&`"0@&+HX!@0Q3SF!2Y:0/0,#*!Y.$2/-H?N00'` M@A0@)\8_RN,XXD5$G(A";]NI#.;R+TK3/3@`6#`!%!=_H#)4P"]+5S\-9;`K MW65\MAC)T1+-[".R"!Z0S@J`RBB"6<":J2<"@,HBP`S4$O#)\=&"?I`-%Y8^ MZ@_>H$#Y/ZDW:?P5U*IBN8`'#H!<\"VJ@/2Y9OE`M^0V*Q`5O0#E<0(W+ADD M(7U&!]+``M@&=*`,T#TLR`'T61Y0``L'VDB;0?`,&,`"2`:WT37<@VTP"++! M[)")BR"0*(0K,`/^`?Z*!N`@&DB#:!!^KL$.Z`=R8`'DL!TP#[#)"I@'5!`( MB(-SL`7NP3`0"7S*.ET#T68>X5MN;#@^3!D@A'LP#^@>>F0>PL#CK`-VT/** M@5DC!GY``?"#OQ?X)D`RV%_QL238!"I0!^2`&'@#+6`(@(`6``*&P!N``WE` M#J2!,X`&Z``(0`%C(`6`@!B0`W``#@`!0N`-R`$V$`;<`!D``4G`#=`!-N`" M`(`3J`-L@`V``#CP!M*`C"P#<@`$A($Y,`P M))M"3I@.08$))RX`SPR23I(>5`&8@# M=2`-&$HR<,\*3AZ0D6$`#TQ).5`E9\N4,`$`@,'P`((3`@B.#_"4`&`%```J M,X*Z!!EPDFF@2*Y)$"`&\@`(T`-`\@V@"@"@`P#`F222/O(,`$I!B21E)`J8 M`T6#W=4!-R`&NF2+'`-EX$7"@3!@*&4D&B@#`O(R69.`%:$DW0"Y396R4D2"`"Z``%\`PN8"(7):*$CV\ MRVS9(EVEPF28+L!AQLLR8`?*`!N8`R=H83;,AQD&%.4<``%D8$V>``]9+%FD M&T"6[>%'RH$SZ0;29+($`6,`#3#+,#`&8F.0])=#$F16A`D@`,)$`3``""!I M4H`*4``F0(HH`!&`N3B$J4DUIV8!^!%5,VM2S>DW`IC+])N:3O,?%,T"\`"D MYC\(FUES!%!-M>DT`<`DB`!O\VU2!.4W$4"`W;R;=S,$Z$V]B3?[IM^\FP&` M7@C.P4DX@4#1/)R(-*$2!$\<0(R2)XX`1M`SYN` M#J:G3<`'UK,F((`&1!&49T7``-RS=^($%!`^C:?I+)_>DR(@`?0).]GG34`# M5Q$$"`#Y"0((`"@0`*!`:^K/_9DU*T(#``"`!;!D@P`0$`#N)E#1^(8.@T4 MY&S31B>;/"#JS"E#!H1%$&W"N$$Z)^7*EDY=TB$)(B='B&_@E)$#\XV)Q3!PX,SQAQXW=W9#,XG'-&W(GW>#M8Q"=-@=-(*"0!%\Z MJ09"?FN\B)=+PYU!5AL@`.>27E(QV)145%EDGH`$MA#4&@;T'E1%\8%KGDAIAZ MO6$<3V/9^1%N82BT$))8!#E64&Q@Z"6=AJ$;D:&&' M2:H8B8[1`9E^"J`I!EDJ_84B"J&-UF6K&B[$E+.Z,BB72'F\B0=O=Z5AG(P+ M&8ML&G\=&9]Q;:`7:4P[D4C;6?`-IU"Z])T(`J/KDO43L+61M2IN;(1IUY)L M0+@0&7\".@9AL8G)H$R%)U1%)9XEK&%)W>)?44F2XT*5[09%I9I5% M(0PH4YJ-1>EGW;DA!U)3B.6&>7*<`-BND(;V:V,Q\527`G3<:A;+9I@%+@@? M$A'I7)-A?.E'-ZW[T,N;+6WH&18A**++P+8`%<,K?2SY=QD\@$`YXEE=I)::2O(D$,0!4>&I?]IF-N*P#755]4! M6KK8&:W[-J9A'H%$.DYO('Q1DF;%V%#2<:\8&()IZ,$RJ**",.=.1?MF6-WN MB>10NC\&-5(8Z;XHII8?U>&16'+T?2%29[Q1?*4+;96;D,^#O#2#-Y&%)AUY M&!K"R)`:CZ`!<%^:2GXP\B"^I(&`+G*=2-+`NS_E12ITP-"JEK88Z8DL.PH0 M0ATP,A[8N"0,K@G,&`05DY"!L`50*$-,SC(%FB!A24MA@]@,@@8