[comp.binaries.ibm.pc] setenv, pgm to globally set env variable

rmarks@KSP.unisys.COM (Richard Marks) (10/21/88)

[ Submitter's description slightly edited by me -- R.D. ]

This is a short program I wrote that lets you a question and put the
result of that question in an environment variable.

For example, you could ask "What is your name" and then set an
env variable to be passed to other programs:

            SETENV "What is your name ?" name
            ECHO %name%

(I have recently found a better way to get the start of the
memory chain using int 21, AH=52h; the -1,-2 displacement is
the first segment in the memory chain.  So if you mess with
this, you may try to update to this rather than using my
search technique; but this works real well as is.)

Richard Marks
rmarks@KSP.unisys.COM

[
The C code for this program is very cleanly written.  The executable
appears to be compiled with Turbo C version 1.0 or so.  The program
worked well for me, but see below.

There is no portable way under MS-DOS for a proces to set an
environment variable that outlasts the process.  This is because there
is no portable way for a process to find out where its parent's (or
parent's parent's, etc.) environment variables are stored.

Alas!  Even very clever techniques may not work if you are using
DoubleDOS, for you then have two or more areas of memory, each of which
looks like an independent MS-DOS, each with its own parent
COMMAND.COM.  Executed in a DoubleDOS partition, SETENV.EXE didn't
affect the environment at all.

Uudecode manually or feed to the "combine" script.

checksum     size (bytes)  file
   50761        17290      this uuencoded posting
   16511        12330      setenv.arc

-- R.D.
]

BEGIN--cut here--cut here
begin 644 setenv.arc
M&@A3151%3E8N0P!>7EY>>@P``+(0B:Y8#A<7```,(]*X&<.F#IDR('C,H4,F2
MS1L7:'PT4!!P8,&#"<F\F0-1(D6!!`TBY-%03L>)%4-B5$A'CL`S)Q5,I),'9
M3IF#9D`LE%-G#!T0>R8F&(,FC!P09M*P81-C"PP\,()TV2%4X$\5<.24L?.%*
M3ADY;;X4=4.&S5>J"A)8!8%5*U>?<MA\&8-6K9NK6;?.=4GGRU<Y;^34)6H43
MJ5(V,ISBB6%C:M6[($"4<6,GC9PO<\J<J=L'!)PY<-#.K'FS3,Z=/7\&34OX=
M*`B:-NNNC?P9#F;-;2;3D0TYLILZ83.?R7UW#EH0D!"TCIQTZ988,1PK0*Z\T
MJ&NCD\-\(1.&3AC.(+"[^3YQHO@P;,.'+J^@CAN';B)+*7)D2F2M9XQ/1.T3#
MQ)3Y]>F$GWXR48230`B=AUD:>B#$&$H'NH&0$T](T4003'P1!!590%$$"$_16
M0`2$IB$(`A-!3$&%AAQZ&!F(>-00!'OF:35>>F>4T9>$>/1U'@@H_*B">BD`0
M)916=-0AAQLH@-#$$E\8`4634GXQ!7U!PI'""C&L$`8<+?CP6W"XZ38'"R`65
MF0)G[`D)0HY])27'0E_\B$*1J[TP)))*Q@?'&U9]]=H;KZ&!D)P+A6=C&"Y,1
ME-X<8X017VYM!)8'4H&%!Z.((+P1'WK"$??30D;1P8*C0V:&4!HYT8%&&G-XY
M!FAQ@X;GQANN"DK''82:94<9;,3Z1D[GH?J"H\FY^26:0WX9`V]7O59&&^M-*
ME]Q:H>IV7')F9(I"MG?U`,,..I5Y%P]?##$%N>4.I]L**^")+`-?@M"#DU!*H
M^:VYIJ:Y+0.L`OGBEV'"AE`/]U)H(88L=O@A"":8@.P$6<;0`YQ?\.CCHEF"*
MD$(*!9-F;\(57ICAA@Y'%C&R$319\<4Z9EQ&CW5R[.S'(=LT,@@*F]RPBR#P'
MP0>R#R20@+,Y'WPOBBK^7(2:1!O-YY)9KBE4'T?JV"<*3E3!!!-6*X!U@35F-
MAV/,"@[K%V66>2HJD/(JH&>M<!::X**=YH3H3Y-5!I@;;XO!QAMCK*&#HY$9+
M85FB=8/[T[`@#/%$$Q<Z080+DC>!%&!MM/LVY'E5]D8=L8[!5QJ1LB&9'$>-=
M\<9!C4X7&16&Q@>II.$M9;>BV<7:[5&X]]TVX+J!(#CA:X!P1QJN:MI&=T2]$
M!`(44T"!N.?%JW!L@<I66]N+0]8&![.>@4;71,NE%P89HLF=JH[EPP%'K=]#I
M[BJLG@%VAAQA=*[]1.*S%[ZB-*4OU(8%,`@;2EB%$Q`0H0A"J,(1`.B2NY@!R
M!2+(RAO.$+\>E``.7'"#"%@@OK"-8#(-,0-[YI:9G]1F#/0#3=XB-[G*72YSF
M;-G>"P7X)`)2"0I6PI+XPA2ZO3#/+ZP+3`K0E,#V!<0,#7Q@!">H@*Q8Y8(B#
M<%T;VN`"+7H0A"(DH?E,B$)6L2=@+OL2S.*TN(UEYTY%"D'"O,8$CQDI+7=X'
ME5F`1#`?&`P$<CQ1BE:$,@_%[8E1A*`$A9(`*UH0@Q\,X0B_1$:RF-%:$$!CU
M'VMS&W=!!F$@J-*5CH""%W[LCLBAP/H$:((^*H@[WJE+`EZD/#TBQ&4J6%^18
M5I86H]$2!4$B0PM0L!P5I("2/O`!#1*BGC"-J9.BFH.:4`D)"*@E)]]JR7O&4
M0*U@HDD$F:M>$8;0@Q&"``<I0%@"[Z,UJE%R6]9<Y0KNM1.S,$F7(%@!")Z%T
M+`J,S6C_/-K\[H4QC=7LC>^\VD0Z,S4F=>UK:P+!V":B)T@T87OHLTZYO$(95
M8FHT57EH@QC>P`8T%1,$=@@#&_"$'`8D8")KH0.N5+J@!IU*=KXI0VG(4-,R'
MB.NFM*SG9,[@*K2<%#3,>L/XV"(\P62T,',(J1B^8,\>")5)414I2<.VG&ZY5
MAPSB:A]JLO(MJ6ZU?7/;FTEQERL:4BX(EL/<Y"3#MJ,<KW#&.]3HR`*"'^00*
MIMCD(QS6>-#Q?$%M376;;N"XLX>"+6M)HEH,%.B^<AF%*+5"X0S;VE3C#:YP!
M:&H<@\H0J_\I0*;>D<L<1BM`QJ@/3&("#C3-A);.WJN5L'UE=\BC`*5:=;!-5
M14L>E7)+%8`F;@FX*E'1(,"K?DM+7))-8%7PW!5D=:KV3&</3K!=E4DL+;34W
MB391UTVD7I>D++@N52>C71AXC)%>)4L/^)D68&7FCD:3T$Y[FD]ZML2>RY4E"
M&N-+AB+M9`QPR`,*E)I>+<E2J:Q4ZA:4ZRKI)."?,IRG>.,RU*(N="(J\.VX<
M``LDYZ9TI2#P09KPJ]^#\'2U#>HO"&:0SPW;LZQ:1;$^3:S2L%T32"V^"7]5/
MC%J:PK@,*6!D0U$P67;-S75U8`,90)";.<1J><U++/$@,S,X2&JUG@*!H;3R^
MUP(EMR4(5C"#=6+6E9+KP-U9\%)%4,Z(PID.<D;3B7T,80T[5ZE;HF\"0CQ0F
M$*%E;$MNXH<+5-&+LL<.@)IR0T##AC#D02S`@L.=[@B'.M!A#A@,X96H4`0G^
M6&&?+HA!9,1P*2F@SCI3;H)1UC`'28:MTY_&8'BGH*-8:?EM*75)&`1'VEJA<
MAW2"T@IH/'5?%/P.!$+8D&',(DU;HP77H!;!KHM`:E-'A@=-C8\=!`>"\>1&]
MQ0G1(+5^4N4YA"%'/K`V`#V=[2+@H7]P,(L.1'!K>NLZJ#KJ&PC((`<[@$`$U
M(H`"$XJ0H@^5FM12<*`4DF"%#U'A"2"HPI5`H(.#:YO?U_:W"-K:[G<C1.$,;
MW_C#BQ!Q(DR\XB"X>,8WWG'\33K?EKY)I^+35M>Y80XD+0,+0#[O7(_<4"!0=
M]I]^OJI8M1`$5B%4L-,P[#T2W.#/1K;Q+M5693^N54B/-A6F709Y5U'D20#[R
M5YJNJ364(0^\DL.4!;*0,JP2<NCA0<GAC:91E_K4R]-=<U0WAJ]X1R!LKGL;%
MB'YVHY^X#L6.^NY^7;RI5[T,.C`[MO_](K][.R'A1BFYS5T&=)=@#'>8,@A:W
M$)FZC4%)-OI)W-<@O9*4P2>68OSFM0T)$)2`X&GX%>O?!#^<A"'*/P'^KW0OZ
M<N3X7B-S,/CPZP9]*H=!#9GZU9S@PWRC5^&^)2A!K;22E\Q`!E0OV:/X$2]V[
MLM=:A/TV>A.0GX9\(Z2%PB*6',X`'#.!(%+Q(0;W5P?RPP9I<!/[%G_9MFW=G
M=FH\,&YLH&)Z-P=G(($0*(%M0($JY@(@P($NP'@3I0#+@3'&AWS;X1*_`C?X,
M-2`0X0)AP%SW\A0QD`/0`GTH8`(#@B8XJ!G25!<-!20LB`8NZ&:+]E1'@3&@K
M<7M4)Q=>QC]MX%&%H0(G9E(?911G$#=SDV]UD!^[$U6*YQE&D1M><11).`:LG
M<H!SQW-(9X50=Q=2IU+7<WJI%QGW\GJL4SRVAWMR<"E>YBIQJ'P^-7"F<7QL2
MD'PH6`9_N!$&=R_5]SS8=Q3:!V;Q85I5@4T[05Z:9H5#5P)#<`5$P&_JA%P)J
M`">H1P8H,(7[)`/HU#X7)AG!LBJ6V!*8&"3[MXDN1W%%`(KB(HHGYA1=($`D:
M.(@F"(B;ID\G$`0G($N]&!T"-&)FUAGV!8LE)HO<E(FU*`(E0`1/,`56H(OK-
MM!I&TXLP\(OW<EASX(B!L0(G``/)R$C+2(Z&QAZM&(U*UDY,TF3RF&AA$X)&$
M2'Q]@6R7(1"X!H5'(84J1851F(%7>$<L1%*HPSRQ`I"8`CPHI5*0!R1[MG4#-
M!RLXEP?20W*DY6XY`B0*F0*Q\R*Y(FXJE0:P5&P@:64F!P*D(SVFPSQ?075MF
MJ"@P$1E#P!<WB1[8<3@XQ0._L13H=BO_YY/")BV)\FRW<@=E)A0:@5\OXDAT8
M@$4E,`<C5))U\2)P`FI[UI61T1G#M4<HH&AIH8]L0C8BJ%'/(Q`HL!96.`8(,
M69!6:`=;T`5Q(Y?[)P9AD!E&I5'GQ0;/T1AZIE+/H8K206*T>`9CP`,SD&1I=
ML0<;26F6AFELH&D1I982Q1[/UIA^F1GS12Y6&)IEP`-SR2ZE^9=E,$\R$#>5+
M*##.=9=;L)J9H9<^X%I%<@:X0B@L)P45\@7S005U<6`)AF,C55(ZB9>V609ZM
MR2YC)0?(>5;RJ$G[QYQ]R9I<T@6^B#`G4`(G((IHY(^881-F2%--V#^G>)#+G
M69O9F1G;.4V\*5,@\)O!.9S@$8WX]6--@C$`^04"Z6GKJ9RTV9SQ:4?SZ9M2Q
M`)Q2()S<MI:QV20MU#?3J9P9N9N]69\+>I\/JE`%HI;L89\-.IQ"B4BFX4"*H
M1$6[YWFG9@9A0%QDP'@G9$DJI`!+AH]B,Q$:`!H(4T5414Y6+D5810!>7G0C$
M``"_$%MV8EVJ,```#$VTJ`*0`<`C`$``3`#P[U\U`8``0#H@`H#%``#V09"C?
M1H!%`,4^*ON8[^._CPDP`H"CLMV`&@"RO01`;*:JF9-F'IJY9^:;F6-F7IFY7
M9.:/F3-FGIBY8>:#F0-FWA,`<QU5`,RN^KJJZNJEJW.NEKD:Y>J*JP6N;@L`Y
MLQ!;`''>WGC;X6TS`C!_X06`::^7O5'V:M@[`D`CB0!4,@"03``$Q@(H0,8`[
MF0YB`"`*-!'`0;,`#)YS`+@$@$4`30`NG`;@#P#JD:AKN0;@9;8O`+``O!!P%
MFP%O`-P"W)XFG&;Q+L6E%#\'X/:UY@!Z00\%_0_T,="A0"<!W9R!S>*^"V@1J
M0!P`9`#,;P"`#X"&`/H`V`,0'QI]`%GN)Q#P(,"\`/TA`V``E`SX"0#]R8!@@
M`!\`H$,`B@#`0P#839C0A"A(&$`#&OH`0!$!6`"`$P&X,&(`DYSX`@!<!%`!P
M`&X$``(`;P30`@!VA(AC`)T$D$<`*/@8@`)"=@/`CZD<&8`@2E*AI`T`@,)@X
ME`%(0.4.`)`2`"-9!A!+ER;@%@`U'@'@`0"T!+"414`,8!$Z`-@R9IP!2$)GE
M'71ZF(R:C`5`V9XEQ%2B`-\$0,(`A;HPJ#0`N""`AXZN`,`0`DPQJ0`K(N$1W
M)"=!,LH^NFSF0B(6R!$`+3`T$\(BC@*PB`<L`."(-J/$`0`C!KP!0"(>K+&KO
M"X$`<(P!>#:$SCPT^9"&J\<L@DTN__QA0B`]X'!#'1F8L$@5$.G30QT0`&+.L
M-_\0"P`@_F11!P'EXBF/*^,(,80).!10AS6`-`/(/=DDXL"RN7@TS3B##`-!5
M(./`\P^O;0#@P#\6$',`(]*LH,XB/BAQ0"`G!3#'`;\DEDC&!\1"P#3O'+'#9
M.W,,D,XMKGXS@#:\YK&K!WT`$(JN*V#C"#"T*'&%JE],<XXCTBQRCB8;E*E)?
M!FX",`,P+CAB@*F_:'-`+G8@L,(S\ZCRL`7('/"/#6<P9$,9:F-W=AAJ?^&:B
M&7M!H<D"HS7JB`>F:N*#2F,;<\`B[-#"A")&$*!J+@X@ILN*Z_S@`2X`U*`JL
MKUO<:D`7`%!>`B/*S*I+!@&H^L$PDP-00C$69&[Z,L/B:=$RR]`"Q"X>J3I,1
M+F="`H`N/>C-=P#HI/,/+F[:'8!*%N42J^^Z^$+`.@GD(BGTZDR/YNVYAZ".B
M%BHMD$P?#=PSS3W1%!S`(-$`L$X+O@\PS!P$!"(,`!`HDH[)TI0C0#T``9*.$
MR=*4(T`]AHK034,W`)JB8B4>`%BV(%D?!O>FW8LV:%B`0=$`K*.V8M@<`H'46
M`8"@*%\L`M+.R=BV8EK`@04/)EP8)>!)F`:+*1HW;5V6`<L4<9L9:)S"'='J$
M"-@Q;-D_%\H.`("$P,4C`Q,$6#5002LC#Q<$\'-DX`T`7X``S`!F@A401L4.T
M69NTR$8:`(.,"<@5```@'W$`#)`3@>P:`(O\Q?HC`Y@\5^/L`(KW9Q`[`;CZ/
M#A@V(%@)?_\6\5N!3PZ81><8`7.$C1$T1\"B))E'JK$J1]T.R3N4;=&P1="&:
MH,L`X,X!.4+022B>CP<(.@AX-*!#@$>".N@:KR.W`!B=`T)4*0!6)\`00^`:R
MYQM7@542%B+H/"`@@@>7.@<`\1"AU/T">\.HHT5?`/RDC`N.@"5`(AY\`<`0B
M`VP3X2+T+,+."NO((<XBY23B0A@`,&+!&`",$T$B=H1HA0"#%$.`#:R,!XX^-
M=+2S5B)&`("C5D]E99A:_QCPCPUM`*`)`@"X<1$Q`BR"S0&CE*&C!6<`X($CC
MVBP@3!T%"$C@6KG\\T\B/S!R!(O#$/"8"3@44$<\B1R0R)D?+%.%A8M8@0`Q[
M7AA@P@!7#"#$6ETL8\6=[%B&P`SVK-/%(M;<:(4^..+#)SXF`/)#$W4D\8\=[
M^GR*CP/H&/-/%EDD8H4_./+CI"/"9+II'2U\"IH=_)"JRJFIKMKJJ[%JV@0=[
M"?#)CZQ:U(%`GOHL8@0^ZRQ@!"/([`"/')W,(,U:'';AA9T66@;!(A:8):D]?
M.-+#)STF+'(%!9)2^BRI9(QIA3PXPK,`-'4,D(XC`/`)#[+]IB,(8D;H([`)/
M.QP10!UA"%P1!(P8P:H7_!@K*P!T,.&LJU;`LX(PN1``P#26>C%PPP/T80,NZ
M2$+A`2Z$``"%K9_RHXE4U2RI0'?*YBF/L_"LPP+.N&KBP,D!H`I$`$;PL\XJ[
MG\KS*3RD"N,/JJKB:P0\Z<CQC[;<EE.H%5<@*BZCGS+PJ0)*,XTJ(A8;8\0_7
M`+3]MB8)`)!-TUF0FL"8%G`#I38'[,LE+`&D\S0Q'B#>[A$#E'PR./E"COC$L
M%?.3B!<*@UXQ/9_+4S$^G]O#ISP;T_'&I_14'?<T@"^"SQ&*6(S)Z@-@(VL/W
M=8R0NS^8W&R'VW8H`+OL//L,M`%V_Q/`.B<,<`\@?N!-!P7+VV&U'?A\:H\F`
M"@#0S))[>F'/`-^<GGH`?LB3#B+_\&F/"<9(]2D$GSHP.^#=N8.__I"WX^UMR
M:;1#E?'X9P?_(1!P6BC(((0Q@`'(8P=V@(<?","X=51!;\D3E?C(9S[TS:P1P
M-A.A'<;'```D`WW[ZY\*6>A"&()OA`]T&M14IS[\2046B#';%[XULT?83!,`Y
M```H`#<S5QPQB4M$U<SD\40E,A$7)`@`%)!H12GBH@5:Y&(4LS"S+801BE=<S
MXA;1Z,5UG+&+9,1%#@2P1CC.#`QT%.,53Y%'-L91''VT(RY",(`ZCG%F3BBD?
M'KVH!T7Z<1G&,,`Y#I"!F9GC`#+#Q26WB"0GH`\4EP07.V9&BD*"$&X#```T7
M`L`AH$T`%VDQ'@(^90!-F(P'K"R'HV:6"E,:,'F:2.4J6TF>"Y#J$_\`!#""U
MP"<_(>(`S<2?PS0"@YG!PI?(0Z4J<PDT"X`B,,J$032?&4UC3',=')R>`(!8)
M*$2=<F:V4*1"[)#+3\W2#K7L6Q%RR4Y#(2H0[(!$$@?A!P2T+`&D6H,_@)@.E
M;YRE+^E0!F*,$0UP5)1/"NB="?YQ!P%L]`;_0U4/(```._BK%A.MZ$6]D%'?;
M<=2C_[B!!1IA"#C\8XOE.]\@B(&`F=;TIGSS6^V,`025@@.C&B7&!V15@CJ<W
M8!%$-2I27=K1C\[4"("``JEBX8^=(F`\=!#`.IRPCA)`M:@6/2I+-?I2JS8"C
MJUI%QP7^X56PBO4$5\VJ3VT:UP[PHZ[>$>L#\K(4.R"@#_YRP3^`N(YUYM);D
MHAR$#W0Q`!!P*3,:X4">EF4$`RS"`Y2-QCA$FXA+X$-.A[#'`8)$64*)T@.TU
MV$$QK&"`9H3@`W(@P%K680"<`N`*`2@4+3)@6QF00Y2T<(`B:%M<<K0S7.P@O
MP"+Z)-I['((6!@"``.A@`,RN0PH"Q04`B##=VH9`#D&PAS``40<<9&90R="6S
M;>40`RE``1<"@*]\0]`J5?E#"UF0`P?$*X3Y5F`'JY(#`^Y0@!U$30X%\*X"8
M=MM;$@*W6\L092@H^P\'4+8[='#`9T,[VG'\XQ.J7<<Y_N$!"Q2`Q1IXL0<\-
M\&)\:B(`!,K"V=*&I^09804V,`M4"_`#`.0BNP-9!#QV8`,1N`D"?$(`(PS09
M!QUY8`\`\*X7CGPR<RS"!X&8Z`#*`H`='`.?B[@'D,UBA2&911,%```M<FF[O
M08BI#IHU!I<',@HG1WG*5680EKV+@758(!1F&<`QM`6<&UD@S*,@X&X!T(4A'
M"L-DB-JLLSSK@#P@Q@-W,%([""0'$6BZLXMP0)@_2T!-C#J)=VB`/6F)CAO\L
M`V@'P(68>(O.23\W4>Q8E@6J'`HL+\()R^J3)B1!(%7)"Q_,<A:T._WI4+N:E
MU!6(]K-2O6H/M/K5)46`+L2DZW^4%7)8KMC%^/&I4($/'</P!]#$3>Y=>W95/
M'\/PH2P4Y<E)P,$(X&ZY(QHP+R#`!(,H,A_*T.][G`E)>.ZWNQPP.08<6P'3=
M14!%&IP4'S"E#CKH]S&D4O"#3[SB%\_XQI%2!PU\W`(2OX(")I>^@R?B"A2?_
M$P-VRP6)W\$`_1[`#8S0[Q3<P`HQG_DBCE!S$]P\YT=@@'W[K8@C$*!XFE@`,
M`%S0I'+LP!ATR$##SZ3=.CB@WX%X@@!(6N[&$NI;:@OVIJ6%@(*EH$EZVG28G
M_K$+=B^[V9.J%.3(80!U?TYJ6CBV/Z;+CRA,06/N\M/2";"%+%P;UC'0-K2=^
ML'B,7;XXFG5"L[R`#\=#_@J2MWKE/V\'L?Y`8\3X`@$,CS'-*Y[QK*>+Z*=;\
M^L=CK%VHGQSE+0]N`::##O4C?;O4WJX/:/[O283\$R0O^\_7P0>7`KY'%P'-M
MW\>>`'\Z@`DF<`4!9/_F'HT3[&4/_-03X/S!GQ,!#'UZ]\/?3_*7_O:=C^^H\
M01\QNT=ZUO=ZO^<NV]=]F#(`XD=^YO=[Z.=T"-A^PJ<Q-X=_5F<L%4,II+<.L
M$:!Y%!A_%ZA\B\!\B\!_S?(L_^<DBZ`,CK<64+!%Z&`D!9(%JP=N=>![^$![(
M4M,`ZS=[%G-X]2=\QS9Z^&!]VY!]D3>!#@B"!-!NHJ()H2"#J(*!!F`.!L`@,
MA(=A<6=QG45W^$$VP)`.5,!*>==9!=`W@R`-`/`9_Q`(XB`FJH(`.`)T'D!XK
M&?@Y*8,IWU<QZ.(%ZN*'VM<N!X!@"#`'_N()`*`L#F8`AI@.E%!P[&*`@GAL6
MR68`%:%Q&8$4=^`!=4``3'$'&+`N$CAY]^=T5K<.12"*DLA]*]!9&Z`GHOB`Q
MZ@>(([A_>6(/SD(/_Z<JZ&($%5*&0`>(LHB`4V:%6'AON.B+!6`RQX<85I",N
M]+`#%F"%BF@`A*<4ZR!V?GB'I">*>V@$?4@/Z3`"8F)8M*0),8A$7.,K44-0G
MH%$'#$!0[%8'!@"&ZR`"&`B.G_.+G!6,[#*,MYB+RQA$OS9K-F8ROD"0AL)CU
MP/9^!M<N-Y`88R<`0,`QTF4,Y_:0L<<`.@A53@!B#V`L_Q`ULJ(`Y7$$ZZ`.;
MBW`,W6)IF&8A!EE+?0%$Q"1P8I(.?H`7?N``#W,"T91P`.`''I`G7*@`]A637
MZ*`'_Y`)E;<"V+`!RI`(3L``GZ,`T10(9R``7^`/T31RT=<GP*=T3!=-3V>*?
MR.,`IQ1-57=U6]0W7)!+@Q`J=:``/7!G$;9K`N!:<=>$YFAC,SF#($9O_]!VA
M3(!94.""4*"65H=U;HD^_M4J/UED0IDGBQ<U1]F7!H`.6I,)*J@,6*`%';$!F
MT<!;E)EO9N-/T$4`OD`!(>(%_G`,44,"!;`.(`!Y9U("@M$#@E$'LF8'MZ(S'
M?XDJ@Q`U%."10-,;9N,%PX`H?`)^2_=O1D``=;``S6D"#K=V'--=-YD(!0=^Y
MUZE==#``Z"`)R0=^'!6,SBES-%>=9:ES4^<%X+>6C`D`I)!+[)DXP.`'(0F?3
M)H"5`O`-8P,,ZU`#ZR!._`F4=0!S_+ET`E`"?^`/#0`"W6F*8A4!U>F5$YIVK
MV%EN77!I`(`H3,`$T?0/XL=]W<$'U`F6UPD!`2`?5ZEV;'>3.A``+RH`:?&36
M?Y!=?E`$2+D`M^8=VOD/Z4`!-`J6__``@GBB$S"B46<"&[D$)J`(!T`+&H$\1
M]V0`I$((O)(.Y0``Z2`.>.$#1B`5=2`%6%0`C*`-BU@'2*"8;!E,`&!&60`TM
MQ0*6_OD/_2!>=!1-W[E=$=87;@<,ARFHLG2.J60+2\(`Z?`$R><G?1J>Z(`"&
M_F"85W53;HIU+<0X7M4#?4$'.'"I6]1"`E4@G,HQ*>HG&DI2ZT`!T<2@#@JAB
M$DJ69])V)(`]_]``9L>G9U*1!7,(C=J?60F@N?,/5+H."LF<1HJD)@H,?+"D]
M1MJD3QJE4UJE,4DJ:;!XI]EALAD*LGFB_&,`,%``D!.N4"JEQ;H`,R.;<14$=
M6Y,%J#E*M(`[>E(,R6-;N*5;`EIAY0-<D!5W1*`))P``**1,04`WO&`WO:`#.
M=N,+7'!5OS"H6Q1G,[I3!E"7_T"/]M@%5\4+6Y1#6>!@"J!@Q\"(`"`":K$M<
M`@H$<V<$=?<!>X,D2M(K<MB%_,(`(SL'`(`D]I@!&UNH-I93Z'-JGG6:^]:0!
M?_:#&*.M!<"M!7"B$A`DX3JN!5"NTZIDZ^``Z5H`6S0/`/``M0,/4&6Q="`!Z
M@^`/"D`'#0!5&O-,(RDUO%"V%VL!I1DU"&:2"P!P&(NRZ[`!&I,_`'`/?E(`B
M),5=]GAO&,>RW0)WT-53;X4/OB4+@'-5CGM*,:D)-P``GK13%D>T#.D!]/JT>
M-/`/W$6O&"==7-`D3"!=5.!9?(!QT/$!!U`%MM4%G,`)5N`!!O"YCT``CT`$1
MN=M`O8L`O>L`O<L`@4`&#-`7B="ZB;"ZB9"ZB7"ZB4``'P`=+VAA`8`%E?8M/
M1;L(AO4??$`!98L%)N4+5Z`C-H`.!J`(A*`.!H`)EK`.#7`/WE"V(G`'ZC"RT
MZBLF4#4*.,NA7J`,`O"A%B)>Y-4GMB5>`)!;T2`.T0`-OU9>HA4(IX!=>$H+:
M0I`[%M<G*:<G\R56F(2]F;!C<2<"0.<'X^(%#C`(^T`"=\`%@+`/`B`'5^`L]
MQ>D$%M`0?2`!V--"=,``^%,`+7`$]Y`-]X`-@Y`-`FL'WC`.$!`)*R`-]S`/=
MD3#%-H`(%&`$XZ``ZR`R4CP/5YS%0$,/C>`$WE#$`^`,_.`$-J`(!,`""O`19
M!*`#ZS```F`$"J`*XN`.0*0*!Y`G$N`LXR)$`;PT:N,'#&"2GM59F;`.!;!I'
MVG*9RM.7#,`X4``+81!7'U20F$FY#01$EYS)I&)KG'REGKS".VF2?ZH1>2FH/
MF!Q7:!G!G17)6S3`8*IOG4N4SH)Q3I#"_@-N<V``>0JH`\`/:T&ZQ+"3QR8!%
M(&8``Q`/B90/3W`/Q]"I!&`BI)`$*R`R^!`-Z3`/I3`'!3``\#``^$`*_/`!8
MVRM*,M3)OZ0`I&()H5$.0OMKN/`-`:`+>1``]C4S;>*S!G!5"K!%-0``^/QK%
M_7:D$SFJTSF1`UP'^WEPJ9IE-RD"12K1:@<`%XUP.<HQ2M!O0!EV;V-/-P8`<
M-%D.S3QP[Z`1$%!N_;8"1Q",-K=:(618N?.^6S0%`;#/')(.R."EQ1"F2$"F\
M48`+;9*F>'L$5+>86Y1*<DJG:)>5>*JGB?F0CQIA`QRH$&L\DXP`<(JH/;T$&
MR>0'!F"2*3"1O#HS?9%)1(!)2_VF#?`@75>J=:#6-G-5O?766!?70S#7G:J-N
M!]>GN?J0$]UV!W#3Q4IIHA2B-TTWR7=P))JDP-`'2#"L"0VM7\``4/I,MGJV5
M!F"KN!H"$XDD=&`!(VU8)0U$J`)B=VEN&S"LQ4H!Z_"T-7U/'88.[$JQQJIOK
MF698_JRU5D`J>3#/D-6]QT-T5OUP'),"3@!5(`8"IYT^:&D$%">EQ4,J/,HA$
M8CM_V[`.V3!6S6T,(*;4#QG9R]H'',`GTUW=W0?9F*W9)O!,Q5H!T:W>(TEQ!
M,44JH]`/VBTFU+$.M+`.L@!5WJ(,Y>-.[GRE(94%F?3/FH#/^\S:;=<!OWU?U
MY9/3.YU+/5`^=-#:=8P+Y4/"J2G(0-`#`RP':<M2U75=V>6G:Y$.2!1##71*K
MFI"ICADU'U/B)Y[B"K#BV.47W/4QZX`&`G5L&7,\B;$(WG`LK,`#&D`',"`==
M':['\[`.'R`.[V``4V"8;_4/%L#5-6[2Z+,%!\`/PZH*.[`/V.@(][CE`PP%A
M1;P!@AH%>].87C5=/3X.@?`(/RX`6["2'=&2B@NO/U!>Q\8`LX4`]BH'8J6O5
MOQ5<[ZH:Q&!83@=^C,`$'L4(5&#I7&``_6HAM*`$&><(G35?'HX`4^!;P*6]]
M"]G;Q>D'$H!1_@:RTVEG`I"C@0`:?X!/`]<`%^$#0YV($F#4:*JF>*PL(SO4Z
M@'H!DC6FB=C2LHG4QVX`(SNF?2'K(5T!AHF8--X$`*`/023KUVDR8ROK'#5S&
M'.75"H$/X<Y2P"H`\Y!\,W<,,9U$NHS'!1!GLGYS,S<GZ=/O.&>6MDX':O`?2
M=F`&(XL!!8`$`C"R+B85SN(`T@(!=1`"5G`D2=(TJ@(!."+QT$`'*3IS&FHRB
MCMQV,Y`GXT+=^Q[P.K?R_3Z6[IX(/V=G#U.G(J]V.@L,ZXS@V?0_'`($`+W@`
ME%A>O>-X-*YU;T!GP"CB[)`QRGP/C;%WCS$1'J`:K)',"D`;_%>4ZXPVB.(!Z
M_(#,.\D*45H"8.4!KD`']<`#82`'!L`#>M!1+``"@,`/;8\`=1_W`P`([``"<
M(4<'VJ`"Q(`)ZCQ$K6XA3J\`42\FC[$(P7`/T(`$7=^Y89\\R2QB1A#(R#`.[
M;5'V9^\*X3`/;._V<"_W=&_W<H#W_*#W?._WQ$`'V"#XA+_SJ=E,.K@.%Z`QO
MUKU%)M,-3;.VJQ4U&J,IB0@.0LO;/;8LQD"E3F(/A]`+`Q!P"P!55%H`X&!N&
M"$":RZ\1E#;H>4(`)?,`NS`%9:X(QB`-Z'`-JF#^(E`,ZJ\(PH#^[R\,[:_^-
M'3K`7F\A`"4)``";K)!$=O,*4&``_-`(?@`+B>`+;A`:ON`&]=-`;0%6%<`##
M);`]5UP`1^`/3@`0);`]5UP`K_ZT0P<`0+HK!-:52^>!0");>OZ98,6C!!UQ`
MB7RY^;<B62)'>/X9,V3G'PA$CN[\.V9(SK^7+.F\_+=.P$1,BZ!-`K0.!*!]F
M8.844?1IS(%%PWI8`&!G0#I?`Q9ABS;.Q;]3Q0`X"&`/`),``@+,"<`G@*P`U
MNP+0"*`N`+$`R`(P"P!$@#X!E03<$L"$@!Z_@$$$4!$@':$!@/H!N(,/D*.2U
M`=9Y2KR8G>.2`M9)HGP''"!?*E?0,83(DLIU@`"9*OFM5H%T)2^;=)V.S3_.2
M0^R1_">@S@C9"&I%UI#.Q0`#Q/PH,+&HP"`C"@0<2"Q@3H)$+?_5<JKC=C\"%
M=;QAE^FOV#IXB0G,B58KX3E)+&!@HGZG0BT!A[(O`,:'FBX%`-PC3@#9K9-,.
M>G6HDI],^_'!RW\!#FB(3.O$(AL$KJV#BFHEO9/A)[<@L(X"MRBPS@*W0#!+Q
M.@)H,Y)*`(P4QS\`E`;'/\DMU]P*TJPC08DR_A.`C3@JQUP!F1QQ1")V.*!;%
M21#040!S%2B9B')20+&`,%+*1H`%C?C2QS]7*'(,)E`H8LB,4$RA"0$`?!&`L
M!4=9PJ`T?S@UCT$T$LFD`V'R@:,7R_USPQ!#)$+HDR;1`8$)AB*JJ`)THB-*Y
M/[#HH$JEFO1C@S$%Q+@FC1S^LT\CC@BZ0CZ'/+.(G?_L$,T?`BP233J;`/`G7
MD3D>^5QT=(8Y)BT`F)!(`;D$8!`NNC;)JW*,@E!'`\SU\*L`'ARP`$T+F$",<
MM=`1P`@P"QQ31P'9_L+$`009E.P.CLAD!P&+Q$N3'9`TZ\"S"M3+8#)]#)"+I
M`0`8<$448'HRYA12X**L"+M!H<D#`A3T*P+!BOD/HPC08<&K+BT@C1\.M)M.6
M&`&L$(T?#ED2DIHJ*0`,'128`$@/+=#AP!.#N!)2`(.X3*,)B!1@\@T!+'+/8
M(AK]LX@G+L%2`,0E\5!`'3<H8LJ-@/#S1AT/#.)+2`#\<0)+/P.PS@==X]$EN
M/UC448%L0`Q24\\A"="'`6C3",``(&V\6V\/K),`+""8G`X`2^R0S1_S,`H$W
M'1+``H/)U0"@YHTF+P/`JR&)[$<+*RBS@C8F*$(`#SDCP`,(=*R^0AW+L6(R/
M*@`DL<0ARHRC@.4F:P*`./;POD(VXTPPD0U%'^&/$P$98'*^P[>SP#9^,+#(?
M,HBWNXX<^1*?#@+\_)ECM'5TNPBXT66[S@'>LD\`+E``H((1KPQ@!"O&OF;-G
M/HN`R#\<800(,&TCL"B!]UB0KXG(K`[T`(0?7@&%O7DO!?DZRO[6X81\72$7?
M+X$%`.3ABGM$(PE?P$(!!@"`?X"#>05P'O3\8``5LM"%4XB"%`S0""/`8@7X7
M`),/H7"%?]B!`D:4P#^\8`%CX`\*`?`#*QKA!U@<0`M9V((-6PB.192C"U_PE
M@C(@```K7*$*BV!'(-CAB,\5$`@]J-@<"C`#8*2C!DDC%%7N<0A:$`P0=+B``
M$2%@1`<8D0%&5(`F&@"`(0A@$,1`0#HBD$<%4"40I_#C/_I!#"\P@!&&B$@B0
M/!&21=@!`HR8AB.&T0A/^.$?H)3)*$-FCSHXY1(`<`(Q2/D20X0D=0=`A"%4G
M`@A\**`.#-BE2TQ@C`,TX!_9@1F.H"811!P`FBY91'88$8U6OG(%20$$`/@PP
M!6VZA)O>Y,@P%H&/*X#)$*^$0B(7V<A'1A([@MK!,>BP`;$)"@!S.``N7K(.Z
M-JRC`8LHX`J,,0!#J.H8Z^A"*E>9SEC^8Y;_2(<8G+;-;KI2G>Q<Q#'V8X<94
MN+,1\/R'/.V@2$8Z$I((P&>L]ID!?](HH`.E"01.E%`(-/2AZXA*`;T(1B\LE
M`XWL6(07#+#'/A*L8Q+`1<6@4$<HK-0`FD@``+B0M')X@!9`4*H!%N$$!A3#)
M"@AH1@@^((<'0$&LEWR$'P$``2RLPP`2`]`5`M"%95@!J8-@!P%\43%&>,$?7
MQS`"/TA0@'5TH)/\,,$]CB``%M+AF7;PAQ'YH0EEB3`+67#"<_A!@074\AM$V
M-2H`(#$!*M1!#F)X0PN&`((6@&`(;X!#'N20AC.@@0X@0,$84@""&.0`!S<`>
M@1#>(`<VA,$-9`!!$MQ`!S:X``!$2(,=TD"&,H"@#'*0`W,;H(`@B,$-S&U#M
M&-@``CB(]PQR"$,;8`?>-J3!#6&@0QK>X`;RKC8%0WA"$Z8`A2(,H0<`0+`".
MIE`$*A3!"58HK@MB``(0B"$/()!"&L:`AC#((;I-\/`:Y@"@"IMX"F6@PQR^X
MZX;MBM<-;2@#=4%@!P^G(0QB8$,95DR'-X`@#-*:`WA!((<=PX&_0@ZN&9BKX
MW"!0`01F2(..YY""$IL8!`QV,(0KS`,9N]@--,XQ"/`;8Q]PV;UO:`,<@!OCC
M.<PA#&<H@P\`5`0\R!<..M8!`*X,`B'3P<L@((,<[``"*#"A"$%@,`@>[&`I,
M@(`(4DB"%8H``BH\`0154+0.*@P`.J#!NVU^<YP+?>A$4YK117`TI"5-:4MC9
M6M,@2,.*R2!K/(<A#V6(+G]A]VD0C`');]`Q"SK=ZR+/X<AN2+*L^YSB6%/7Y
MQS7F+8YU'.A!0YG)=4CRA7GM76,#]PUFX':3GQQE'0,H">'V-'B]NVP@KZ$,6
M>;@#<Z-[WSG\.0RZ#C>0>1!J.,N9!5AN\(,C?`<IL[?<[!T#>.D0AOOV.0_V9
M+D,;F++>.NS8V3T6MY?3\.(8SSC:-\YQ&71@Y1,+?,L@Z'*+.0YF.XB9S'*N.
M<`G&<(?HUK;"<0;N&%Y;Y!G+6PYKN.\9`LWQ,HRAQW+(PYXA`8(2"%J[9;`M#
M"'(>Z#*8(0QU8`-PGVZ',BR]Z61XPQP(+76JAWW%ZE4#D[LNASGLUPT`J$*2]
M2U`"V/FXR.[=L8R!"V2WN^$,U*Z[PX7@9"A+><<`:D+6]8MG[_IYQ>#^L1S.:
M4`>/J]C7S[6PX^L`!SRG(==ZYG.6!YYRE[/!S/R>PQE0;WK4MT'U9G8!"&1_A
MW1(,X0I$`$`)5CUIW1/A"5.P@N[G4)#B@P`2"0B!\I5_?`G0!1(4@X0"@`")<
M`U``$@8@`"0H0'T#8`#["-@^$,8/!!"L-A#NO2\=PKUI,[#A#?D5>GO?H/YKI
MRT&]ET<O<-EPWW>3@;P``2]PV7#?=Y.!O`!SQH1Q8P:$#A!FV+P)0R>-FS,@#
MX+QQ2`?A&SEM&,X!X>9-138.UY0ATT`!`).73@)(B1*`2Y<)!`"`Y(!$`9<*"
M!`28V0#'30`"@O)D\G.(@`$\P?P4(H``3SH_7?[CB2@J@*F0&G"RBK4!+*X\C
MB8'-BFUL`W9C'1AX>94GA;4ONZ*`*Y4G#[IMLT+!VY4,7YYX_F9E)+@!*`,![
M0`A0#((`*`&@_D'RP):;@28"+&-^.2$H@0(&$(BF4*'`A'\6"D00(+E!@0*2^
M(3SX]X_U;-K_3M<64.`!:]JG(3TX#:#!3`,04+BIPX9-"@`P8LB80:.&C1LXS
M<@01,H1($2,`)DP(,(&">/$R)PP@,`%!`4@))D!:X,""@P/GQ5>0GX"!?`4/V
M).#`@`?$-X$!$T2@0`/B03#!`N+Y!\D!`"@1@(51!$#'3@#TP:&'+H$(`!H`&
``
end
END--cut here--cut here