www.digitalmars.com         C & C++   DMDScript  

DMDScript - improved testscript.d

attached you will find a better 'testscript.d'
with changes in the following areas:

	FLAG PARSING

	The -s flag will be silent about banners, can be combined with -v.

	The -c(content-type) flag takes what follows the -c ( default is
       	text/plain ) as a content-type specifier for use in cgi scripts.

           ds -ctext/html MyWebPageGenerator.ds


	The -- is a flag terminator, remaining strings become arguments.
	"echo.ds" is now:

	    for(var i = 0; i < arguments.length; ){
		    print(arguments[i]);
		    if (++i < arguments.length)
		      print(" ");
		    }
	    println();

	invoked as:   ds.exe -s echo.ds -- hello world!


	DEFAULT SCRIPT NAME

	If no script name is specified, test is used if the interpreter
       	is named "ds", otherwise a script in the current directory is selected
	based on the name of the interpreter.

	On systems where only compiled binaries may be run,
	(for example, certain web hosting companies)
	this will allow you to pair up a script and its interpreter at the
	cost of having multiple copies of the interpreter.
	Silent is implied in these contexts as the default banner only
	causes the webserver to emit a diagnostic about malformed headers.


	SHEBANG

	#! (interpreter and arguments)  allowed as first line of scripts.
	These are quietly converted to / / comments before compilation

	Scripts and includes can indicate what to use for default interpreter
        see: http://en.wikipedia.org/wiki/Shebang_(Unix)

	Includes may specify shebang lines to indicate interpreter
       	to use if invoked standalone.

This is tested and working with DMD 0.163
begin 644 testscript.d
M#0HO*B!$:6=I=&%L($UA<G, 1$U$4V-R:7!T('-O=7)C92!C;V1E+ T*("H 
M0V]P>7)I9VAT("AC*2`R,#`P+3(P,#( 8GD 0VAR;VUI=6T 0V]M;75N:6-A
M=&EO;G,-"B`J($0 =F5R<VEO;B!#;W!Y<FEG:'0 *&,I(#(P,#0M,C`P-2!B
M>2!$:6=I=&%L($UA<G,-"B`J($%L;"!2:6=H=', 4F5S97)V960-"B`J('=R
M:71T96X 8GD 5V%L=&5R($)R:6=H=`T*("H =W=W+F1I9VET86QM87)S+F-O
M;0T*("H 57-E(&%T('EO=7( ;W=N(')I<VLN(%1H97)E(&ES(&YO('=A<G)A
M;G1Y+"!E>'!R97-S(&]R(&EM<&QI960N#0H *B!,:6-E;G-E(&9O<B!R961I
M<W1R:6)U=&EO;B!I<R!B>2!T:&4 1TY5($=E;F5R86P 4'5B;&EC($QI8V5N
M<V4 :6X 9W!L+G1X="X-"B`J#0H *B!!(&)I;F%R>2P ;F]N+65X8VQU<VEV
M92!L:6-E;G-E(&9O<B!C;VUM97)C:6%L('5S92!C86X 8F4-"B`J('!U<F-H
M87-E9"!F<F]M('=W=RYD:6=I=&%L;6%R<RYC;VTO9'-C<FEP="]B=7DN:'1M
M;"X-"B`J#0H *B!$34138W)I<'0 :7, :6UP;&5M96YT960 :6X =&AE($0 
M4')O9W)A;6UI;F< 3&%N9W5A9V4L#0H *B!W=W<N9&EG:71A;&UA<G,N8V]M
M+V0O#0H * T*("H 1F]R(&$ 0RLK(&EM<&QE;65N=&%T:6]N(&]F($1-1%-C
M<FEP="P :6YC;'5D:6YG($-/32!S=7!P;W)T+`T*("H <V5E('=W=RYD:6=I
M=&%L;6%R<RYC;VTO9'-C<FEP="]C<'`N:'1M;"X-"B`J+PT*#0H-"FUO9'5L
M92!T97-T<V-R:7!T.PT*#0II;7!O<G0 <W1D+G!A=& [#0II;7!O<G0 <W1D
M+F9I;&4[#0II;7!O<G0 <W1D+G-T9&EO.PT*:6UP;W)T('-T9"YC+G-T9&QI
M8CL-" T*:6UP;W)T(&1M9'-C<FEP="YS8W)I<'0[#0II;7!O<G0 9&UD<V-R
M:7!T+G!R;V=R86T[#0II;7!O<G0 9&UD<V-R:7!T+F5R<FUS9W,[#0H-"F5N
M=6T-"GL-" E%6$E40T]$15])3DE47T524D]2(#T ,2P-" E%6$E40T]$15])
M3E9!3$E$7T%21U, /2`R+`T*"458251#3T1%7U)53E1)345?15)23U( /2`S
M+`T*?0T*#0IV97)S:6]N("A7:6YD;W=S*0T*>PT*("` ('!R86=M82AL:6(L
M(")D;61S8W)I<'0B*3L-"GT-" T*#0H-"B\J*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ* T*"55S86=E. T*#0H)
M("` (&1S#0H)"7=I;&P <G5N('1E<W0N9',-" T*"2` ("!D<R!F;V\-" D)
M=VEL;"!R=6X 9F]O+F1S#0H-" D ("` 9', 9F]O+FIS#0H)"7=I;&P <G5N
M(&9O;RYJ<PT*#0H)("` (&1S(&9O;S$ 9F]O,B!F;V\N8F%R#0H)"7=I;&P 
M<G5N(&9O;S$N9',L(&9O;S(N9',L(&9O;RYB87(-" T*#0H)1DQ!1R!005)3
M24Y'#0H-" E4:&4 +6EI;F, 9FQA9R!W:6QL('!R969I>"!T:&4 <V]U<F-E
M(&9I;&5S('=I=&  =&AE(&-O;G1E;G1S(&]F(&9I;&4 :6YC+ T*"51H97)E
M(&-A;B!B92!M=6QT:7!L92`M:2=S+B!4:&4 :6YC;'5D92!L:7-T(&ES(')E
M<V5T('1O(&5M<'1Y(&%N>2!T:6UE#0H)82!N97< +6D :7, 96YC;W5N=&5R
M960 =&AA="!I<R!N;W0 <')E8V5D960 8GD 82`M:2X-" T*"2` ("!D<R`M
M:6EN8R!F;V\-" D)=VEL;"!P<F5F:7  9F]O+F1S('=I=&  :6YC#0H-" D 
M("` 9', +6EI;F,Q("UI:6YC,B!F;V\ 8F%R#0H)"7=I;&P <')E9FEX(&9O
M;RYD<R!W:71H(&EN8S$K:6YC,BP 86YD('=I;&P <')E9FEX(&)A<BYD<PT*
M"0EW:71H(&EN8S$K:6YC, T*#0H)("` (&1S("UI:6YC,2`M:6EN8S( 9F]O
M("UI:6YC,R!B87(-" D)=VEL;"!P<F5F:7  9F]O+F1S('=I=&  :6YC,2MI
M;F,R+"!A;F0 =VEL;"!P<F5F:7  8F%R+F1S#0H)"7=I=&  :6YC,PT*#0H)
M("` (&1S("UI:6YC,2`M:6EN8S( 9F]O("UI(&)A< T*"0EW:6QL('!R969I
M>"!F;V\N9', =VET:"!I;F,Q*VEN8S(L(&%N9"!W:6QL('!R969I>"!B87(N
M9',-" D)=VET:"!N;W1H:6YG#0H-" T*"51H92`M=B!F;&%G(&=I=F5S('9E
M<F)O<V4 ;W5T<'5T+"` 861D:71I;VYA;"!D:6%G;F]S=&EC<R!A;F0-" ES
M:&]W<R!S=&%R="!O9B!R96%D+V-O;7!I;&4O97AE8W5T92!P:&%S97,-" T*
M"51H92`M<R!F;&%G('=I;&P 8F4 <VEL96YT(&%B;W5T(&)A;FYE<G,L(&-A
M;B!B92!C;VUB:6YE9"!W:71H("UV+ T*#0H)5&AE("UC*&-O;G1E;G0M='EP
M92D 9FQA9R!T86ME<R!W:&%T(&9O;&QO=W, =&AE("UC("  9&5F875L="!I
M<PT*("` ("` (`ET97AT+W!L86EN("D 87, 82!C;VYT96YT+71Y<&4 <W!E
M8VEF:65R(&9O<B!U<V4 :6X 8V=I('-C<FEP=',N#0H-"B` ("` ("` ("` 
M9', +6-T97AT+VAT;6P 37E796)086=E1V5N97)A=&]R+F1S"0T*#0H-" E4
M:&4 +2T :7, 82!F;&%G('1E<FUI;F%T;W(L(')E;6%I;FEN9R!S=')I;F=S
M(&)E8V]M92!A<F=U;65N=',N#0H)(F5C:&\N9',B(&ES(&YO=SH-" T*"2` 
M("!F;W(H=F%R(&D /2`P.R!I(#P 87)G=6UE;G1S+FQE;F=T:#L *7L-" D)
M("` ('!R:6YT*&%R9W5M96YT<UMI72D[#0H)"2` ("!I9B`H*RMI(#P 87)G
M=6UE;G1S+FQE;F=T:"D-" D)("` ("` <')I;G0H(B`B*3L-" D)("` ('T 
M#0H)("` ('!R:6YT;&XH*3L-" T*"6EN=F]K960 87,Z("` 9',N97AE("US
M(&5C:&\N9', +2T :&5L;&\ =V]R;&0A#0H-" T*"41%1D%53%0 4T-225!4
M($Y!344-" T*"4EF(&YO('-C<FEP="!N86UE(&ES('-P96-I9FEE9"P =&5S
M="!I<R!U<V5D(&EF('1H92!I;G1E<G!R971E< T*("` ("` (`EI<R!N86UE
M9"`B9',B+"!O=&AE<G=I<V4 82!S8W)I<'0 :6X =&AE(&-U<G)E;G0 9&ER
M96-T;W)Y(&ES('-E;&5C=&5D#0H)8F%S960 ;VX =&AE(&YA;64 ;V8 =&AE
M(&EN=&5R<')E=&5R+B` #0H)#0H)3VX <WES=&5M<R!W:&5R92!O;FQY(&-O
M;7!I;&5D(&)I;F%R:65S(&UA>2!B92!R=6XL(`T*"2AF;W( 97AA;7!L92P 
M8V5R=&%I;B!W96( :&]S=&EN9R!C;VUP86YI97,I(`T*"71H:7, =VEL;"!A
M;&QO=R!Y;W4 =&\ <&%I<B!U<"!A('-C<FEP="!A;F0 :71S(&EN=&5R<')E
M=&5R(&%T('1H90T*"6-O<W0 ;V8 :&%V:6YG(&UU;'1I<&QE(&-O<&EE<R!O
M9B!T:&4 :6YT97)P<F5T97(N#0H)4VEL96YT(&ES(&EM<&QI960 :6X =&AE
M<V4 8V]N=&5X=', 87, =&AE(&1E9F%U;'0 8F%N;F5R(&]N;'D #0H)8V%U
M<V5S('1H92!W96)S97)V97( =&\ 96UI="!A(&1I86=N;W-T:6, 86)O=70 
M;6%L9F]R;65D(&AE861E<G,N#0H-" T*"5-(14)!3D<-" T*"2,A("AI;G1E
M<G!R971E<B!A;F0 87)G=6UE;G1S*2` 86QL;W=E9"!A<R!F:7)S="!L:6YE
M(&]F('-C<FEP=',N#0H)5&AE<V4 87)E('%U:65T;'D 8V]N=F5R=&5D('1O
M("\ +R!C;VUM96YT<R!B969O<F4 8V]M<&EL871I;VX-" T*"5-C<FEP=', 
M86YD(&EN8VQU9&5S(&-A;B!I;F1I8V%T92!W:&%T('1O('5S92!F;W( 9&5F
M875L="!I;G1E<G!R971E< T*("` ("` ("!S964Z(&AT='`Z+R]E;BYW:6MI
M<&5D:6$N;W)G+W=I:VDO4VAE8F%N9U\H56YI>"D-" T*"4EN8VQU9&5S(&UA
M>2!S<&5C:69Y('-H96)A;F< ;&EN97, =&\ :6YD:6-A=&4 :6YT97)P<F5T
M97(-"B` ("` ("`)=&\ =7-E(&EF(&EN=F]K960 <W1A;F1A;&]N92X-"B`J
M+PT*#0II;G0 ;6%I;BAC:&%R6UU;72!A<F=S*0T*>PT*("` ('5I;G0 97)R
M;W)S(#T ,#L-"B` ("!C:&%R6UU;72!I;F-L=61E<SL-"B` ("!3<F-&:6QE
M6UT <W)C9FEL97,[#0H ("` :6YT(')E<W5L=#L-"B` ("!B;V]L('9E<F)O
M<V4[#0H ("` 8F]O;"!S:6QE;G0[#0H ("` 17)R26YF;R!E<G)I;F9O.PT*
M("` (&-H87);72!C;VYT96YT7W1Y<&4[#0H ("` 8VAA<EM=6UT <F5M86EN
M:6YG7V%R9W,[#0H ("` 8VAA<EM=6UT 97)R<U]O=70[#0H ("` 8VAA<EM=
M(&5X96YA;64[#0H-"B` ("!E>&5N86UE(#T 87)G<ULP73L-"B` ("!F;W( 
M*'-I>F5?="!I(#T ,3L :2`\(&%R9W,N;&5N9W1H.R!I*RLI#0H ("` >PEC
M:&%R6UT <"`](&%R9W-;:5T[#0H-" EI9B`H<%LP72`]/2`G+2<I#0H)>PT*
M"2` ("!S=VET8V  *'!;,5TI#0H)("` ('L-" D)8V%S92`G:2<Z#0H)"2` 
M("!I9B`H<%LR72D-" D)"6EN8VQU9&5S('X]('!;,B`N+B!L96YG=&A=.PT*
M"0D ("` 8G)E86L[#0H-" D)8V%S92`G=B<Z#0H)"2` ("!V97)B;W-E(#T 
M,3L-" D)("` (&)R96%K.PT*#0H)"6-A<V4 )W,G.B` +R\ +7, ("!S:6QE
M;G0L(&5L:60 <W1A<G1U<"!B86YN97)S#0H)"2` ("!S:6QE;G0 /2`Q.PT*
M"0D ("` 8G)E86L[#0H-" D)8V%S92`G8R<Z("\O("UC/&1T>7!E/B` =V5B
M+V-G:2P :6YJ96-T(&-O;G1E;G0M='EP93H 7&Y<;B!A:&5A9"!O9B!A;&P 
M96QS90T*"0D ("` :68 *'!;,ETI#0H)"0EC;VYT96YT7W1Y<&4 /2!P6S( 
M+BX ;&5N9W1H73L-" D)("` (&5L<V4-" D)"6-O;G1E;G1?='EP92`](")T
M97AT+W!L86EN(CL-" D)("` ('-I;&5N="`](#$[#0H ("` ("` ("` ("` 
M("` 8G)E86L[#0H-" D)8V%S92`G+2<Z("\O("TM("!N;R!M;W)E(&9I;&5S
M+"!A<F=U;65N=', 9F]L;&]W+"!E870 =&AE;0T*"0D ("` 9F]R(" K*VD[
M(&D /"!A<F=S+FQE;F=T:"`[(&DK*RD-" D)"7)E;6%I;FEN9U]A<F=S('X]
M(&%R9W-;:5T[#0H)"2` ("!B<F5A:SL-" T*#0H-" D)9&5F875L=#H-" D)
M("` (&5R<G-?;W5T('X]('`[#0H)"2` ("!E<G)O<G,K*SL-" D)("` (&)R
M96%K.PT*"2` ("!]#0H)?0T*"65L<V4-" E[#0H)("` ('-R8V9I;&5S('X]
M(&YE=R!3<F-&:6QE*'`L(&EN8VQU9&5S*3L-" D ("` :6YC;'5D97, /2!N
M=6QL.PT*"7T-"B` ("!]#0H-"B` ("!I9B`H8V]N=&5N=%]T>7!E*0T*"69W
M<FET969L;BAS=&1O=70L(")C;VYT96YT+71Y<&4Z("5S7&XB+"!C;VYT96YT
M7W1Y<&4I.PT*#0H ("` +RH 9FQA9R!P87)S:6YG(&5R<F]R<R!G;R!T;R!B
M<F]W<V5R+"!I92!A9G1E<B!C;VYT96YT+71Y<&4-"B` ("` *B!T;R!A<W-I
M<W0 <'!L('=R:71I;F< 8V=I<PT*("` ("`J+PT*("` (&EF("AE<G)S7V]U
M="YL96YG=& I#0H ("` >PT*"6EN="!I.PT*#0H)9F]R(" [(&D /"!E<G)S
M7V]U="YL96YG=&  .R!I*RLI#0H)("` (&9W<FET969L;BAS=&1O=70L(&5R
M<FUS9W1B;%M%4E)?0D%$7U-7251#2%TL(&5R<G-?;W5T6VE=*3L-" ER971U
M<FX 15A)5$-/1$5?24Y604Q)1%]!4D=3.PT*("` ('T-" T*("` (&EF("AS
M<F-F:6QE<RYL96YG=&  /3T ,"D-"B` ("![#0H ("` ("` (&EN="!I.PT*
M"6-H87( 6UU;72!S<&P[#0H)+R\ :68 97AE;F%M92!N;W0 ;F%M960 (F1S
M(B!T<GD ;&]C871I;F< +F1S(&9I;&4-"B` ("` ("` +R\ 8GD <V%M92!N
M86UE(&%S(&5X96YA;64 8G5T(&EN(&-U<G)E;G0 9&ER#0H)+R\ *&-O;G9E
M;FEE;G0 9F]R(&-G:2!P96]P;&4I#0H-"B` ("` ("` :2`]('-T9"YS=')I
M;F<N:7)F:6YD*&5X96YA;64L("(N97AE(BD[#0H ("` ("` (&EF("AI("$]
M("TQ*0D)+R\ 4F5M;W9E('-U9F9I>"X-"B` ("` ("` ("` (&5X96YA;64 
M/2!E>&5N86UE6S` +BX :5T[#0H-" D)"0DO+R!E;&ED(&%N>2!P871H(&-O
M;7!O;F5N=`T*"7-P;"`]('-T9"YS=')I;F<N<W!L:70H97AE;F%M92P *'-T
M9"YS=')I;F<N9FEN9"AE>&5N86UE+"`B+R(I(#X](#`I#0H)"0D_("(O(B`Z
M(")<7"(I.PT*"65X96YA;64 /2!S<&Q;<W!L+FQE;F=T:"`M(#%=.PT*#0H-
M" EI9B`H97AE;F%M92`]/2`B9',B*0DO+R!R971A:6X ;VQD('-E;6%N=&EC
M<PT*"2` ("!E>&5N86UE(#T (G1E<W0B.PT*"65L<V4-" D ("` <VEL96YT
M(#T ,3L-" T*("` ("` ("!I9B`H=F5R8F]S92D #0H ("` ("` ("` ("!F
M=W)I=&5F;&XH<W1D97)R+"`B9&5F875L=&EN9R!S8W)I<'0 ;F%M92!T;R`E
M<R(L(&5X96YA;64I.PT*#0H)<W)C9FEL97, ?CT ;F5W(%-R8T9I;&4H97AE
M;F%M92P ;G5L;"D[#0H ("` ?0T*#0H ("` :68 *"%S:6QE;G0I#0H ("` 
M("` (&9W<FET969L;BAS=&1E<G(L(&1M9'-C<FEP="YS8W)I<'0N8F%N;F5R
M*"DI.PT*#0H ("` :68 *'9E<F)O<V4I(`T*("` ("` ("!F=W)I=&5F;&XH
M<W1D97)R+"`B)60 <V]U<F-E(&9I;&5S(BP <W)C9FEL97,N;&5N9W1H*3L-
M" T*("` ("\O(%)E860 9FEL97,L('!A<G-E('1H96TL(&5X96-U=&4 =&AE
M;0T*("` (&9O<F5A8V  *%-R8T9I;&4 ;3L <W)C9FEL97,I#0H ("` >PT*
M"6EF("AV97)B;W-E*0T*"2` ("!W<FET969L;B B<F5A9"` ("`E<SHB+"!M
M+G-R8V9I;&4I.PT*"6TN<F5A9" I.PT*"6EF("AV97)B;W-E*0T*"2` ("!W
M<FET969L;B B8V]M<&EL92`E<SHB+"!M+G-R8V9I;&4I.PT*"6TN8V]M<&EL
M92 I.PT*"6EF("AV97)B;W-E*0T*"2` ("!W<FET969L;B B97AE8W5T92`E
M<SHB+"!M+G-R8V9I;&4I.PT*"6TN97AE8W5T92AR96UA:6YI;F=?87)G<RD[
M#0H ("` ?0T*#0H ("` :68 *&5R<F]R<RD-" ER971U<FX 15A)5$-/1$5?
M4E5.5$E-15]%4E)/4CL-" T*("` (')E='5R;B!%6$E47U-50T-%4U,[#0I]
M#0H-" T*8VQA<W, 4W)C1FEL90T*>PT*("` (&-H87);72!S<F-F:6QE.PT*
M("` (&-H87);75M=(&EN8VQU9&5S.PT*#0H ("` 4')O9W)A;2!P<F]G<F%M
M.PT*("` (&-H87);72!B=69F97([#0H-"B` ("!T:&ES*&-H87);72!S<F-F
M:6QE;F%M92P 8VAA<EM=6UT :6YC;'5D97,I#0H ("` >PT*"2\J($1-1%-C
M<FEP="!S;W5R8V4 9FEL97, 9&5F875L="!T;R!A("<N9',G(&5X=&5N<VEO
M; T*"2`J+PT*#0H)<W)C9FEL92`]('-T9"YP871H+F1E9F%U;'1%>'0H<W)C
M9FEL96YA;64L(")D<R(I.PT*"71H:7,N:6YC;'5D97, /2!I;F-L=61E<SL-
M"B` ("!]#0H-"B` ("!V;VED(')E860H*0T*("` ('L-" DO*B!296%D('1H
M92!S;W5R8V4 9FEL92P <')E<&5N9"!T:&4 :6YC;'5D92!F:6QE<RP-" D 
M*B!A;F0 <'5T(&ET(&%L;"!I;B!B=69F97);72X 06QL;V-A=&4 86X 97AT
M<F$ 8GET90T*"2`J('1O(&)U9F9E<EM=(&%N9"!T97)M:6YA=&4 :70 =VET
M:"!A(#!X,4$N#0H)("H *$EF('1H92`P>#%!(&ES;B=T(&%T('1H92!E;F0L
M('1H92!L97AE<B!W:6QL('!U=`T*"2`J(&]N92!T:&5R92P 9F]R8VEN9R!A
M;B!E>'1R82!C;W!Y('1O(&)E(&UA9&4 ;V8 =&AE#0H)("H <V]U<F-E('1E
M>'0N*0T*"2`J+PT*#0H)+R]W<FET968H(G)E860 9FEL92`G)7,G7&XB+'-R
M8V9I;&4I.PT*#0H)+R\ 4F5A9"!T:&4 :6YC;'5D97-;72!F:6QE<PT*"7-I
M>F5?="!I.PT*"79O:61;72!B=68[#0H)=6QO;F< ;&5N.PT*#0H);&5N(#T 
M<W1D+F9I;&4N9V5T4VEZ92AS<F-F:6QE*3L-" EF;W)E86-H("AC:&%R6UT 
M9FEL96YA;64[(&EN8VQU9&5S*0T*"7L-" D ("` ;&5N("L]('-T9"YF:6QE
M+F=E=%-I>F4H9FEL96YA;64I.PT*"7T-" EL96XK*SL)"0D)+R\ ;&5A=F4 
M<F]O;2!F;W( <V5N=&EN86P-" T*"6%S<V5R="AL96X /"!U:6YT+FUA>"D[
M#0H-" DO+R!0<F5F:7  =&AE(&EN8VQU9&5S6UT 9FEL97,-" T*"6EN="!S
M>B`](&-A<W0H:6YT*6QE;CL-" EB=69F97( /2!N97< =&-H87);<WI=.PT*
M#0H)9F]R96%C:"`H8VAA<EM=(&9I;&5N86UE.R!I;F-L=61E<RD-" E[#0H)
M("` (&)U9B`]('-T9"YF:6QE+G)E860H9FEL96YA;64I.PT*"2` ("!B=69F
M97);:2`N+B!I("L 8G5F+FQE;F=T:%T /2!C87-T*&-H87);72EB=69;73L-
M" T*"2` ("`O+R!P97)M:70 :6YC;'5D92!F:6QE<R!T;R!S96QF+6ED96YT
M:69Y('5N9&5R('5N:7 O;&EN=7 -" D ("` :68 *&)U9F9E<EMI72`]/2`G
M(R< )B8 8G5F9F5R6VDK,5T /3T )R$G*0T*"2` ("![#0H)"6)U9F9E<EMI
M72`]("<O)SL-" D)8G5F9F5R6VDK,5T /2`G+R<[#0H)("` ('T-" D ("` 
M:2`K/2!B=68N;&5N9W1H.PT*"7T-" T*"6)U9B`]('-T9"YF:6QE+G)E860H
M<W)C9FEL92D[#0H)8G5F9F5R6VD +BX :2`K(&)U9BYL96YG=&A=(#T 8V%S
M="AC:&%R6UTI8G5F6UT[#0H-" DO+R!P97)M:70 <V-R:7!T(&9I;&5S('1O
M('-E;&8M:61E;G1I9GD =6YD97( =6YI>"]L:6YU>`T*"6EF("AB=69F97);
M:5T /3T )R,G("8F(&)U9F9E<EMI*S%=(#T]("<A)RD-" E[#0H)("` (&)U
M9F9E<EMI72`]("<O)SL-" D ("` 8G5F9F5R6VDK,5T /2`G+R<[#0H)?0T*
M"6D *ST 8G5F+FQE;F=T:#L-" T*"6)U9F9E<EMI72`](#!X,4$["0DO+R!E
M;F1I;F< <V5N=&EN86P-" EI*RL[#0H)87-S97)T*&D /3T ;&5N*3L-"B` 
M("!]#0H-"B` ("!V;VED(&-O;7!I;&4H*0T*("` ('L-" DO*B!#<F5A=&4 
M82!$34138W)I<'0 <')O9W)A;2P 86YD(&-O;7!I;&4 ;W5R('1E>'0 8G5F
M9F5R+ T*"2`J+PT*#0H)<')O9W)A;2`](&YE=R!0<F]G<F%M*"D[#0H)<')O
M9W)A;2YC;VUP:6QE*'-R8V9I;&4L(&)U9F9E<BP ;G5L;"D[#0H ("` ?0T*
M#0H ("` =F]I9"!E>&5C=71E*&-H87);75M=(&%R9W,I#0H ("` >PT*"2\J
M($5X96-U=&4 =&AE(')E<W5L=&EN9R!P<F]G<F%M+ T*"2`J+PT*#0H)<')O
?9W)A;2YE>&5C=71E*&%R9W,I.PT*("` ('T-"GT-" ``
`
end
Jan 16 2007