www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - unicode filenames: std.stream.File and std.path.listdir

reply "Carlos Santander B." <carlos8294 msn.com> writes:
Take this:

import std.stream;
void main ()
{
    auto File f = new File("año",FileMode.In);
    stdout.writeLine( f.readLine() );
}

If saved as 8-bit or UCS-2 (whatever that is), it doesn't work. In fact, it
creates a new file named "año". But when saved as UTF-8 it works as
expected.

The really bad part is that if instead I iterate over all the files
(listdir(curdir)), it doesn't matter how I save it, it doesn't work anyway.
Which means, the output from listdir can't be safely used with
std.stream.File.

In conclusion, I believe that listdir should also return dchar [][] and
wchar [][], and std.stream.File should accept wchar [] and dchar [] for
filenames.

-----------------------
Carlos Santander Bernal
Jun 06 2004
parent reply "Walter" <newshound digitalmars.com> writes:
The bug is that std.stream needs to do the unicode conversions on the
filenames like the std.file functions do.

BTW, thanks for thrashing this stuff for us.
Jun 08 2004
next sibling parent "Carlos Santander B." <carlos8294 msn.com> writes:
"Walter" <newshound digitalmars.com> escribió en el mensaje
news:ca3t1k$9ga$1 digitaldaemon.com
| BTW, thanks for thrashing this stuff for us.

No problem, I just try to help in any way I can.

-----------------------
Carlos Santander Bernal
Jun 08 2004
prev sibling parent "Carlos Santander B." <carlos8294 msn.com> writes:
"Walter" <newshound digitalmars.com> escribió en el mensaje
news:ca3t1k$9ga$1 digitaldaemon.com
| The bug is that std.stream needs to do the unicode conversions on the
| filenames like the std.file functions do.
|
| BTW, thanks for thrashing this stuff for us.

Ok, this was easy. Attached is the fixed std.stream.
Note the lines 1330-1336: those could be removed if std.file.useWfuncs was
declared as package.

-----------------------
Carlos Santander Bernal


begin 666 stream.d
M+RH-"B J($-O<'ER:6=H=" H8RD ,C P,2P ,C P, T*("H 4&%V96P (D5V
M:6Q/;F4B($UI;F%Y978-"B J("!W:71H(&)U9F9E<FEN9R!A9&1E9"!B>2!"


M;B!T;R!U<V4L(&-O<'DL(&UO9&EF>2P 9&ES=')I8G5T92!A;F0 <V5L;"!T

M>2!P=7)P;W-E(&ES(&AE<F5B>2!G<F%N=&5D('=I=&AO=70 9F5E+ T*("H 
M<')O=FED960 =&AA="!T:&4 86)O=F4 8V]P>7)I9VAT(&YO=&EC92!A<'!E
M87( :6X 86QL(&-O<&EE<R!A;F0-"B J('1H870 8F]T:"!T:&%T(&-O<'ER
M:6=H="!N;W1I8V4 86YD('1H:7, <&5R;6ES<VEO;B!N;W1I8V4 87!P96%R


M='D ;V8 =&AI<R!S;V9T=V%R92!F;W( 86YY('!U<G!O<V4N($ET(&ES('!R






M("  ("  ("  ("  86X 3U, 9FEL92!S=')E86T-"B J("  ($)U9F9E<F5D
M4W1R96%M("!A(&)U9F9E<F5D('-T<F5A;2!W<F%P<&EN9R!A;F]T:&5R('-T
M<F5A;0T*("H ("  ("!"=69F97)E9$9I;&4 (&$ 8G5F9F5R960 1FEL90T*
M("H ("  365M;W)Y4W1R96%M("  (&$ <W1R96%M(&5N=&ER96QY('-T;W)E
M9"!I;B!M86EN(&UE;6]R>0T*("H ("  4VQI8V53=')E86T ("  (&$ <&]R

M=')E86T 97)R;W(L(&)A<V4 8VQA<W, 9F]R(&%L; T*+R\ ;W1H97( 4W1R
M96%M(&5X8V5P=&EO;G,-"F-L87-S(%-T<F5A;45R<F]R.B!%<G)O< T*>PT*




M86)L92!T;R!W<FET92!D871A('1O(%-T<F5A;0T*8VQA<W, 5W)I=&5%<G)O
M<CH 4W1R96%M17)R;W(-"GL-"B  =&AI<RAC:&%R6UT ;7-G*2![('-U<&5R
M*&US9RD[('T-"GT-" T*+R\ =&AR;W=N('=H96X =6YA8FQE('1O(&UO=F4 
M4W1R96%M('!O:6YT97(-"F-L87-S(%-E96M%<G)O<CH 4W1R96%M17)R;W(-
M"GL-"B  =&AI<RAC:&%R6UT ;7-G*2![('-U<&5R*&US9RD[('T-"GT-" T*





M17)R;W( ;VX 97)R;W(-"B  =F]I9"!R96%D17AA8W0H=F]I9"H 8G5F9F5R

M(&5N;W5G:"!T;R!F:6QL('1H92!G:79E; T*(" O+R!A<G)A>2P <F5T=7)N
M<R!A8W1U86P ;G5M8F5R(&]F(&)Y=&5S(')E860-"B  =6EN="!R96%D*'5B
M>71E6UT 8G5F9F5R*3L-" T*(" O+R!R96%D(&$ <VEN9VQE('9A;'5E(&]F
M(&1E<VER960 ='EP92P-"B  +R\ =&AR;W< 4F5A9$5R<F]R(&]N(&5R<F]R

M=6)Y=&4 >"D[( T*("!V;VED(')E860H;W5T('-H;W)T(' I.R -"B  =F]I

M.R -"B  =F]I9"!R96%D*&]U="!U:6YT(' I.R -"B  =F]I9"!R96%D*&]U

M:60 <F5A9"AO=70 9FQO870 >"D[( T*("!V;VED(')E860H;W5T(&1O=6)L
M92!X*3L-"B  =F]I9"!R96%D*&]U="!R96%L(' I.R -"B  =F]I9"!R96%D
M*&]U="!I<F5A;"!X*3L-"B  =F]I9"!R96%D*&]U="!C<F5A;"!X*3L-"B  
M=F]I9"!R96%D*&]U="!C:&%R(' I.R -"B  =F]I9"!R96%D*&]U="!W8VAA

M97( 8GD =W)I=&4H*0T*("!V;VED(')E860H;W5T(&-H87);72!S*3L-" D-
M"B  +R\ <F5A9', 82!5;FEC;V1E('-T<FEN9RP =W)I='1E;B!E87)L:65R
M(&)Y('=R:71E*"D-"B  =F]I9"!R96%D*&]U="!W8VAA<EM=(',I.PT*"0T*
M(" O+R!R96%D<R!A(&QI;F4L('1E<FUI;F%T960 8GD 96ET:&5R($-2+"!,
M1BP 0U(O3$8L(&]R($5/1 T*("!C:&%R6UT <F5A9$QI;F4H*3L-" T*(" O
M+R!R96%D<R!A(&QI;F4L('1E<FUI;F%T960 8GD 96ET:&5R($-2+"!,1BP 
M0U(O3$8L(&]R($5/1 T*(" O+R!R975S:6YG('1H92!M96UO<GD :6X <F5S

M3&EN92AC:&%R6UT <F5S=6QT*3L-" D-"B  +R\ <F5A9', 82!5;FEC;V1E

M("\O(&]R($5/1CL <')E='1Y(&UU8V  =&AE('-A;64 87, =&AE(&%B;W9E
M+"!W;W)K:6YG('=I=& -"B  +R\ =V-H87)S(')A=&AE<B!T:&%N(&-H87)S

M;V1E(&QI;F4L('1E<FUI;F%T960 8GD 96ET:&5R($-2+"!,1BP 0U(O3$8L

M;W9E+"!W;W)K:6YG('=I=& -"B  +R\ =V-H87)S(')A=&AE<B!T:&%N(&-H

M(" O+R!R96%D<R!A('-T<FEN9R!O9B!G:79E;B!L96YG=& L('1H<F]W<PT*
M(" O+R!296%D17)R;W( ;VX 97)R;W(-"B  8VAA<EM=(')E8613=')I;F<H

M;V8 9VEV96X ;&5N9W1H+"!T:')O=W,-"B  +R\ 4F5A9$5R<F]R(&]N(&5R

M(" O+R!R96%D<R!A;F0 <F5T=7)N<R!N97AT(&-H87)A8W1E<B!F<F]M('1H

M:R!B>2!U;F=E=&,H*0T*("!C:&%R(&=E=&,H*3L-" D-"B  +R\ <F5A9', 
M86YD(')E='5R;G, ;F5X="!5;FEC;V1E(&-H87)A8W1E<B!F<F]M('1H90T*
M(" O+R!S=')E86TL(&AA;F1L97, 8VAA<F%C=&5R<R!P=7-H960 8F%C:R!B
M>2!U;F=E=&,H*0T*("!W8VAA<B!G971C=R I.PT*"0T*(" O+R!P=7-H97, 

M("\O(&5F9F5C="!O;B!F=7)T:&5R(&-A;&QS('1O(&=E=&,H*2!A;F0 9V5T

M86-K(%5N:6-O9&4 8VAA<F%C=&5R(&, :6YT;R!T:&4 <W1R96%M.R!O;FQY

M86YD(&=E=&-W*"D-"B  =V-H87( =6YG971C=RAW8VAA<B!C*3L-" T*("!I


M92!F;W( =W)I=&%B;&4 <W1R96%M<PT*:6YT97)F86-E($]U='!U=%-T<F5A
M;2 -"GL-"B  +R\ =W)I=&5S(&)L;V-K(&]F(&1A=&$ ;V8 <W!E8VEF:65D


M+R\ =W)I=&5S('1H92!G:79E;B!A<G)A>2!O9B!B>71E<RP <F5T=7)N<PT*
M(" O+R!A8W1U86P ;G5M8F5R(&]F(&)Y=&5S('=R:71T96X-"B  =6EN="!W

M('9A;'5E(&]F(&1E<VER960 ='EP92P-"B  +R\ =&AR;W< 5W)I=&5%<G)O
M<B!O;B!E<G)O< T*("!V;VED('=R:71E*&)Y=&4 >"D[( T*("!V;VED('=R
M:71E*'5B>71E(' I.PT*("!V;VED('=R:71E*'-H;W)T(' I.PT*("!V;VED




M>"D[( T*("!V;VED('=R:71E*&ER96%L(' I.PT*("!V;VED('=R:71E*&-R
M96%L(' I.PT*("!V;VED('=R:71E*&-H87( >"D[( T*("!V;VED('=R:71E
M*'=C:&%R(' I.PT*"0T*(" O+R!W<FET97, 82!S=')I;F<L('1O9V5T:&5R
M('=I=&  :71S(&QE;F=T: T*("!V;VED('=R:71E*&-H87);72!S*3L-" D-
M"B  +R\ =W)I=&5S(&$ 56YI8V]D92!S=')I;F<L('1O9V5T:&5R('=I=&  

M=W)I=&5S(&$ ;&EN92P =&AR;W=S(%=R:71E17)R;W( ;VX 97)R;W(-"B  

M24-/1$4 ;&EN92P =&AR;W=S(%=R:71E17)R;W( ;VX 97)R;W(-"B  =F]I

M:6YG+"!T:')O=W, 5W)I=&5%<G)O<B!O;B!E<G)O< T*("!V;VED('=R:71E

M<FEN9RP =&AR;W=S(%=R:71E17)R;W( ;VX 97)R;W(-"B  =F]I9"!W<FET
M95-T<FEN9U<H=V-H87);72!S*3L-" T*(" O+R!W<FET97, 9&%T82!T;R!S
M=')E86T =7-I;F< =G!R:6YT9B I('-Y;G1A>"P-"B  +R\ <F5T=7)N<R!N
M=6UB97( ;V8 8GET97, =W)I='1E; T*("!U:6YT('9P<FEN=&8H8VAA<EM=
M(&9O<FUA="P =F%?;&ES="!A<F=S*3L-" T*(" O+R!W<FET97, 9&%T82!T
M;R!S=')E86T =7-I;F< <')I;G1F*"D <WEN=&%X+ T*(" O+R!R971U<FYS


M=')E86US.R!N;W0 <F5A;&QY(&%B<W1R86-T+ T*+R\ 8G5T(&ET<R!I;G-T
M86YC97, =VEL;"!D;R!N;W1H:6YG('5S969U; T*8VQA<W, 4W1R96%M(#H 
M26YP=713=')E86TL($]U='!U=%-T<F5A;0T*>PT*("!P<FEV871E(&EM<&]R
M="!S=&0N<W1R:6YG+"!C<F,S,BP <W1D+F,N<W1D;&EB+"!S=&0N8RYS=&1I

M(&9A;'-E.PT*("!B:70 =W)I=&5A8FQE(#T



M<F5A9$)L;V-K*'9O:60J(&)U9F9E<BP =6EN="!S:7IE*3L-" T*(" O+R!R
M96%D<R!B;&]C:R!O9B!D871A(&]F('-P96-I9FEE9"!S:7IE+ T*(" O+R!T


M92 ](')E861";&]C:RAB=69F97(L('-I>F4I.PT*("  (&EF("AR96%D<VEZ
M92 A/2!S:7IE*0T*("  ("  =&AR;W< ;F5W(%)E861%<G)O<B B;F]T(&5N


M(&%R<F%Y+"!R971U<FYS(&%C='5A;"!N=6UB97( ;V8 8GET97, <F5A9 T*


M+R!R96%D(&$ <VEN9VQE('9A;'5E(&]F(&1E<VER960 ='EP92P-"B  +R\ 

M92!X*2![(')E861%>&%C=" F>"P >"YS:7IE*3L ?0T*("!V;VED(')E860H

M:60 <F5A9"AO=70 <VAO<G0 >"D >R!R96%D17AA8W0H)G L(' N<VEZ92D[
M('T-"B  =F]I9"!R96%D*&]U="!U<VAO<G0 >"D >R!R96%D17AA8W0H)G L
M(' N<VEZ92D[('T-"B  =F]I9"!R96%D*&]U="!I;G0 >"D >R!R96%D17AA
M8W0H)G L(' N<VEZ92D[('T-"B  =F]I9"!R96%D*&]U="!U:6YT(' I('L 

M9R!X*2![(')E861%>&%C=" F>"P >"YS:7IE*3L ?0T*("!V;VED(')E860H

M:60 <F5A9"AO=70 9FQO870 >"D >R!R96%D17AA8W0H)G L(' N<VEZ92D[
M('T-"B  =F]I9"!R96%D*&]U="!D;W5B;&4 >"D >R!R96%D17AA8W0H)G L
M(' N<VEZ92D[('T-"B  =F]I9"!R96%D*&]U="!R96%L(' I('L <F5A9$5X

M>R!R96%D17AA8W0H)G L(' N<VEZ92D[('T-"B  =F]I9"!R96%D*&]U="!C
M<F5A;"!X*2![(')E861%>&%C=" F>"P >"YS:7IE*3L ?0T*("!V;VED(')E
M860H;W5T(&-H87( >"D >R!R96%D17AA8W0H)G L(' N<VEZ92D[('T-"B  
M=F]I9"!R96%D*&]U="!W8VAA<B!X*2![(')E861%>&%C=" F>"P >"YS:7IE
M*3L ?0T*"0T*(" O+R!R96%D<R!A('-T<FEN9RP =W)I='1E;B!E87)L:65R
M(&)Y('=R:71E*"D-"B  =F]I9"!R96%D*&]U="!C:&%R6UT <RD-"B  >PT*


M9RP =W)I='1E;B!E87)L:65R(&)Y('=R:71E*"D-"B  =F]I9"!R96%D*&]U

M*3L-"B  ("!S(#T <F5A9%-T<FEN9U<H;&5N*3L-"B  ?0T*"0T*(" O+R!R
M96%D<R!A(&QI;F4L('1E<FUI;F%T960 8GD 96ET:&5R($-2+"!,1BP 0U(O



M"B  +R\ <F5U<VEN9R!T:&4 ;65M;W)Y(&EN(&)U9F9E<B!I9B!R97-U;'0 
M=VEL;"!F:70 86YD(&]T:&5R=VES90T*(" O+R!A;&QO8V%T97, 82!N97< 




M"6-H(#T 9V5T8R I.PT*"0EI9B H8V  (3T )UQN)RD-" D)("!U;F=E=&,H

M("  <F5S=6QT+FQE;F=T:" ]('-T<FQE;CL-" D ("  ("!R971U<FX <F5S

M<W5L="YL96YG=& I('L-" D)<F5S=6QT6W-T<FQE;ET /2!C:#L-" D ("  




M;VMA>2P-" DO+R!O<B!S;VUE=&AI;F< 8F%D(&]C8W5R960 =VAI;&4 <F5A


M"B  ?0T*"0T*(" O+R!R96%D<R!A(%5N:6-O9&4 ;&EN92P =&5R;6EN871E

M='D ;75C:"!T:&4 <V%M92!A<R!T:&4 86)O=F4L('=O<FMI;F< =VET: T*
M(" O+R!W8VAA<G, <F%T:&5R('1H86X 8VAA<G,-"B  =V-H87);72!R96%D



M:6QL<R!S=7!P;&EE9"!B=69F97( :68 ;&EN92!F:71S(&%N9"!O=&AE<G=I
M<V4 86QL;V-A=&5S(&$ ;F5W('-T<FEN9RX-"B  =V-H87);72!R96%D3&EN








M" D)<F5S=6QT6W-T<FQE;ET /2!C.PT*"2  ("  ('T-" D ("  ("!E;'-E


M8V%T8V  *%)E861%<G)O<B!E*0T*("  ("  >PT*"2\O(&5I=&AE<B!T:&ES

M971H:6YG(&)A9"!O8V-U<F5D('=H:6QE(')E861I;F<-" EI9B H(65O9B I
M*0T*"2  =&AR;W< 93L-"B  ("  ('T-"B  ("!R97-U;'0N;&5N9W1H(#T 

M<R!A('-T<FEN9R!O9B!G:79E;B!L96YG=& L('1H<F]W<PT*(" O+R!296%D
M17)R;W( ;VX 97)R;W(-"B  8VAA<EM=(')E8613=')I;F<H=6EN="!L96YG

M73L-"B  ("!R96%D17AA8W0H<F5S=6QT+"!L96YG=& I.PT*("  (')E='5R


M<G)O< T*("!W8VAA<EM=(')E8613=')I;F=7*'5I;G0 ;&5N9W1H*0T*("![

M("!R96%D17AA8W0H<F5S=6QT+"!R97-U;'0N;&5N9W1H("H =V-H87(N<VEZ

M=69F97(-"B  <')I=F%T92!W8VAA<EM=('5N9V5T.PT*"0T*(" O+R!R96%D
M<R!A;F0 <F5T=7)N<R!N97AT(&-H87)A8W1E<B!F<F]M('1H92!S=')E86TL


M("AU;F=E="YL96YG=&  /B Q*0T*("  ("  >PT*"6, /2!U;F=E=%MU;F=E
M="YL96YG=&  +2 Q73L-" EU;F=E="YL96YG=&  /2!U;F=E="YL96YG=&  


M="!5;FEC;V1E(&-H87)A8W1E<B!F<F]M('1H90T*(" O+R!S=')E86TL(&AA
M;F1L97, 8VAA<F%C=&5R<R!P=7-H960 8F%C:R!B>2!U;F=E=&,H*0T*("!W

M="YL96YG=&  /B Q*0T*("  ("  >PT*"6, /2!U;F=E=%MU;F=E="YL96YG
M=&  +2 Q73L-" EU;F=E="YL96YG=&  /2!U;F=E="YL96YG=&  +2 Q.PT*


M;R!T:&4 <W1R96%M.R!O;FQY(&AA<PT*(" O+R!E9F9E8W0 ;VX 9G5R=&AE
M<B!C86QL<R!T;R!G971C*"D 86YD(&=E=&-W*"D-"B  8VAA<B!U;F=E=&,H


M+FQE;F=T:" ]/2 P*0T*("  ("  =6YG970N;&5N9W1H(#T ,3L-" T*("  

M:&5S(&)A8VL 56YI8V]D92!C:&%R86-T97( 8R!I;G1O('1H92!S=')E86T[
M(&]N;'D-"B  +R\ :&%S(&5F9F5C="!O;B!F=7)T:&5R(&-A;&QS('1O(&=E

M('L-"B  (" O+R!F:7)S="!B>71E(&ES(&$ 9'5M;7D <V\ =&AA="!W92!N


M8SL-"B  ("!R971U<FX 8SL-"B  ?0T*"0T*("!I;G0 =G-C86YF*&-H87);
M72!F;70L('9A7VQI<W0 87)G<RD-"B  >PT*("  ('9O:60J*B!A<F< /2!C
M87-T*'9O:60J*BD 87)G<SL-"B  ("!I;G0 8V]U;G0 /2 P+"!I(#T ,#L-

M9W1H*0T*("  ("  >PT*"6EF("AF;71;:5T /3T )R4G*0DO+R!A(&9I96QD




M9'1H(#T ,#L-" D ("  =VAI;&4 *&ES9&EG:70H9FUT6VE=*2D-" D ("  


M("!W:61T:" ]("TQ.PT*"2  (" O+R!$('-T<FEN9S\-" D ("  8FET(&1S





M97( /3T )VPG('Q\(&UO9&EF:65R(#T


M:" H9FUT6VE=*0T*"2  ("  ('L-" D ("  ("!C87-E("=D)SH)+R\ 9&5C





M("  ('L-" D)("  ("  8R ](&=E=&,H*3L-" D)("  ("  8V]U;G0K*SL-
M" D)("  ('T-" D)("!B:70 ;F5G(#T
M)RTG*0T*"0D ("  >PT*"0D ("  ("!N96< /2!T<G5E.PT*"0D ("  ("!C
M(#T 9V5T8R I.PT*"0D ("  ("!C;W5N="LK.PT*"0D ("  ?0T*"0D (&5L
M<V4 :68 *&, /3T )RLG*0T*"0D ("  >PT*"0D ("  ("!C(#T 9V5T8R I
M.PT*"0D ("  ("!C;W5N="LK.PT*"0D ("  ?0T*"0D (&-H87( :69M=" ]

M=&5R;6EN960 8F%S90T*"0D ("  >PT*"0D ("  ("!I9B H8R ]/2 G,"<I
M"2\O(&]C=&%L(&]R(&AE> T*"0D)>PT*"0D)("!C(#T 9V5T8R I.PT*"0D)
M("!C;W5N="LK.PT*"0D)("!I9B H8R ]/2 G>"< ?'P 8R ]/2 G6"<I"2\O

M("!C(#T
M"0D (&5L<V4)+R\ ;V-T86P-" D)"2  ("!I9FUT(#T )V\G.PT*"0D)?0T*






M;G0K*SL-" D)"2  ?0T*"0D ("  ("!](&)R96%K.PT*"0D)"0D)"0T*"0D 



M(#T
M?2!B<F5A:SL-" D)"0D)"0D-" D)("  (&-A<V4 )W G. DO+R!H97AA9&5C

M:61T:"D-" D)"2  >PT*"0D)("  (&X *CT ,' Q,#L-" D)"2  ("!I9B H
M:7-D:6=I="AC*2D-" D)"2  ("  (&X *ST 8R M("<P)SL-" D)"2  ("!E

M"0D ("  =VED=& M+3L-" D)"2  ("!C(#T 9V5T8R I.PT*"0D)("  (&-O

M("!I9B H;F5G*0T*"0D ("  ;B ]("UN.PT*"0D ("\O(&-H96-K('1H92!M
M;V1I9FEE<B!A;F0 8V%S="!T:&4 <&]I;G1E< T*"0D ("\O('1O(&%P<')O
M<')I871E('1Y<&4-" D)("!S=VET8V  *&UO9&EF:65R*0T*"0D ("  >PT*

M*'-H;W)T*BDJ87)G(#T ;CL-" D)("  ("  ?2!B<F5A:SL-" D)"0D)"0D-


M969A=6QT. DO+R!I;G0-" D)("  ("  *F-A<W0H:6YT*BDJ87)G(#T ;CL-

M(&-A<V4 )V8G. DO+R!F;&]A= T*"2  ("  (&-A<V4 )T8G. T*"2  ("  
M(&-A<V4 )V4G. T*"2  ("  (&-A<V4 )T4G. T*"2  ("  (&-A<V4 )V<G



M("AC(#T]("<M)RD-" D)("  ('L-" D)("  ("  ;F5G(#T =')U93L-" D)
M("  ("  8R ](&=E=&,H*3L-" D)("  ("  8V]U;G0K*SL-" D)("  ('T-
M" D)("!E;'-E(&EF("AC(#T]("<K)RD-" D)("  ('L-" D)("  ("  8R ]
M(&=E=&,H*3L-" D)("  ("  8V]U;G0K*SL-" D)("  ('T-" D)("!R96%L
M(&X /2 P.PT*"0D ('=H:6QE("AI<V1I9VET*&,I("8F('=I9'1H*0T*"0D 
M("  >PT*"0D ("  ("!N(#T
M("!W:61T:"TM.PT*"0D ("  ("!C(#T 9V5T8R I.PT*"0D ("  ("!C;W5N
M="LK.PT*"0D ("  ?0T*"0D (&EF("AW:61T:" F)B!C(#T]("<N)RD-" D)
M("  ('L-" D)("  ("  =VED=& M+3L-" D)("  ("  8R ](&=E=&,H*3L-
M" D)("  ("  8V]U;G0K*SL-" D)("  ("  9&]U8FQE(&9R86, /2 Q.PT*
M"0D ("  ("!W:&EL92 H:7-D:6=I="AC*2 F)B!W:61T:"D-" D)"7L-" D)
M"2  ;B ](&X *B Q," K("AC("T )S G*3L-" D)"2  9G)A8R J/2 Q,#L-
M" D)"2  =VED=& M+3L-" D)"2  8R ](&=E=&,H*3L-" D)"2  8V]U;G0K
M*SL-" D)"7T-" D)("  ("  ;B O/2!F<F%C.PT*"0D ("  ?0T*"0D (&EF
M("AW:61T:" F)B H8R ]/2 G92< ?'P 8R ]/2 G12<I*0T*"0D ("  >PT*
M"0D ("  ("!W:61T:"TM.PT*"0D ("  ("!C(#T 9V5T8R I.PT*"0D ("  

M="!E>'!N96< /2!F86QS93L-" D)"2  :68 *&, /3T )RTG*0T*"0D)("  


M"0D ("  ?0T*"0D)("!E;'-E(&EF("AC(#T
M"0D ("  ("!W:61T:"TM.PT*"0D)("  ("  8R ](&=E=&,H*3L-" D)"2  

M"0D ('=H:6QE("AI<V1I9VET*&,I("8F('=I9'1H*0T*"0D)("  ('L-" D)






M('T-" D)("!I9B H;F5G*0T*"0D ("  ;B ]("UN.PT*"0D ("\O(&-H96-K
M('1H92!M;V1I9FEE<B!A;F0 8V%S="!T:&4 <&]I;G1E< T*"0D ("\O('1O
M(&%P<')O<')I871E('1Y<&4-" D)("!S=VET8V  *&UO9&EF:65R*0T*"0D 

M"0DJ8V%S="AD;W5B;&4J*2IA<F< /2!N.PT*"0D ("  ("!](&)R96%K.PT*
M"0D)"0D)"0T*"0D ("  8V%S92 G3"<Z"2\O(')E86P-" D)("  ("  >PT*


M*BDJ87)G(#T







M"2\O($, <W1R:6YG("AC:&%R*BD-" D)("  ('L-" D)("  ("  <R!^/2 P
M.PT*"0D ("  (" H8V%S="AC:&%R*BDJ87)G*5LP("XN(',N;&5N9W1H72 ]

M"2  ("  (&-A<V4 )V,G. DO+R!C:&%R86-T97(H<RD-" D)>PT*"0D (&-H

M" D)("  ('=I9'1H(#T
M:&ET92AC*2D-" D)("  ("  >PT*"0D)8R ](&=E=&,H*3L-" D)"6-O=6YT

M" D)("  ("  *BAS*RLI(#T 8SL-" D)("  ("  8R ](&=E=&,H*3L-" D)


M<F5A9"!S;R!F87(-" D)>PT*"0D ("IC87-T*&EN="HI*F%R9R ](&-O=6YT

M=#H
M("  ?0T*"2  ("!A<F<K*SL-" D ('T-" EE;'-E(&EF("AI<W=H:71E*&9M
M=%MI72DI"2\O('-K:7  =VAI=&5S<&%C90T*"2  >PT*"2  ("!W:&EL92 H
M:7-W:&ET92AC*2D-" D ("  ("!C(#T





M:7-T(&%P.PT*("  (&%P(#T 8V%S="AV85]L:7-T*2 F9F]R;6%T.PT*("  
M(&%P("L](&9O<FUA="YS:7IE.PT*("  (')E='5R;B!V<V-A;F8H9F]R;6%T

M<&5C:69I960 <VEZ92P-"B  +R\ <F5T=7)N<R!A8W1U86P ;G5M8F5R(&]F
M(&)Y=&5S('=R:71T96X-"B  86)S=')A8W0 =6EN="!W<FET94)L;V-K*'9O
M:60J(&)U9F9E<BP =6EN="!S:7IE*3L-" T*(" O+R!W<FET97, 8FQO8VL 
M;V8 9&%T82!O9B!S<&5C:69I960 <VEZ92P-"B  +R\ =&AR;W=S(%=R:71E
M17)R;W( ;VX 97)R;W(-"B  =F]I9"!W<FET945X86-T*'9O:60J(&)U9F9E

M+"!S:7IE*2 A/2!S:7IE*0T*("  ("  =&AR;W< ;F5W(%=R:71E17)R;W(H

M:71E<R!T:&4 9VEV96X 87)R87D ;V8 8GET97,L(')E='5R;G,-"B  +R\ 



M<VEN9VQE('9A;'5E(&]F(&1E<VER960 ='EP92P-"B  +R\ =&AR;W< 5W)I
M=&5%<G)O<B!O;B!E<G)O< T*("!V;VED('=R:71E*&)Y=&4 >"D >R!W<FET



M=&4H=7-H;W)T(' I('L =W)I=&5%>&%C=" F>"P >"YS:7IE*3L ?0T*("!V
M;VED('=R:71E*&EN="!X*2![('=R:71E17AA8W0H)G L(' N<VEZ92D[('T-
M"B  =F]I9"!W<FET92AU:6YT(' I('L =W)I=&5%>&%C=" F>"P >"YS:7IE
M*3L ?0T*("!V;VED('=R:71E*&QO;F< >"D >R!W<FET945X86-T*"9X+"!X



M('L =W)I=&5%>&%C=" F>"P >"YS:7IE*3L ?0T*("!V;VED('=R:71E*')E


M:60 =W)I=&4H8W)E86P >"D >R!W<FET945X86-T*"9X+"!X+G-I>F4I.R!]

M92D[('T-"B  =F]I9"!W<FET92AW8VAA<B!X*2![('=R:71E17AA8W0H)G L
M(' N<VEZ92D[('T-" D-"B  +R\ =W)I=&5S(&$ <W1R:6YG+"!T;V=E=&AE
M<B!W:71H(&ET<R!L96YG=& -"B  =F]I9"!W<FET92AC:&%R6UT <RD-"B  
M>PT*("  ('=R:71E*',N;&5N9W1H*3L-"B  ("!W<FET95-T<FEN9RAS*3L-
M"B  ?0T*"0T*(" O+R!W<FET97, 82!5;FEC;V1E('-T<FEN9RP =&]G971H





M("  ("!W<FET95-T<FEN9R B7')<;B(I.PT*("  (&5L<V4 =F5R<VEO;B H





M9U<H(EQR7&XB*3L-"B  ("!E;'-E('9E<G-I;VX *$UA8RD-"B  ("  ('=R





M=&5%<G)O<B!O;B!E<G)O< T*("!V;VED('=R:71E4W1R:6YG5RAW8VAA<EM=


M;F< =G!R:6YT9B I('-Y;G1A>"P-"B  +R\ <F5T=7)N<R!N=6UB97( ;V8 
M8GET97, =W)I='1E; T*("!U:6YT('9P<FEN=&8H8VAA<EM=(&9O<FUA="P 

M(&9R;VT 3W5T0G5F9F5R+ T*("  ("\O(&)Y(%=A;'1E<B=S('!E<FUI<W-I
M;VX-"B  ("!C:&%R6S$P,C1=(&)U9F9E<CL-"B  ("!C:&%R*B!P(#T 8G5F
M9F5R.PT*("  (&-H87(J(&8 /2!T;U-T<FEN9WHH9F]R;6%T*3L-"B  ("!U
M:6YT('!S:7IE(#T 8G5F9F5R+FQE;F=T:#L-



M("  <'-I>F4 *CT ,CL-" D ("  <" ](&-A<W0H8VAA<BHI(&%L;&]C82AP

M("  8V]U;G0 /2!V<VYP<FEN=&8H<"P <'-I>F4L(&8L(&%R9W,I.PT*"2  




M;W< ;F5W($5R<F]R*")U;G-U<'!O<G1E9"!P;&%T9F]R;2(I.PT*("  ("  
M?0T*("  ('=R:71E4W1R:6YG*'!;," N+B!C;W5N=%TI.PT*("  (')E='5R
M;B!C;W5N=#L
M=7-I;F< <')I;G1F*"D <WEN=&%X+ T*(" O+R!R971U<FYS(&YU;6)E<B!O




M97, 86QL(&1A=&$ 9G)O;2!G:79E;B!S=')E86T :6YT;R!T:&ES(&]N92P-
M"B  +R\ ;6%Y('1H<F]W(%)E861%<G)O<B!O<B!7<FET945R<F]R(&]N(&9A
M:6QU<F4-"B  =F]I9"!C;W!Y1G)O;2A3=')E86T <RD-"B  >PT*("  ('5I
M;G0 <&]S(#T
M(&-O<'E&<F]M*',L(',N<VEZ92 I*3L-"B  ("!S+G!O<VET:6]N*'!O<RD[

M97, 9G)O;2!G:79E;B!S=')E86T :6YT;PT*(" O+R!T:&ES(&]N92P ;6%Y
M('1H<F]W(%)E861%<G)O<B!O<B!7<FET945R<F]R(&]N(&9A:6QU<F4-"B  
M=F]I9"!C;W!Y1G)O;2A3=')E86T <RP =6EN="!C;W5N="D-"B  >PT*("  
M('5B>71E6UT 8G5F.PT*("  (&)U9BYL96YG=&  /2!S+G-I>F4H*3L-"B  
M("!S+G)E861%>&%C="AB=68L(&)U9BYL96YG=& I.PT*("  ('=R:71E17AA
M8W0H8G5F+"!B=68N;&5N9W1H*3L-"B  ?0T*"0T*(" O+R!M;W9E<R!P;VEN
M=&5R('1O(&=I=F5N('!O<VET:6]N+"!R96QA=&EV92!T;R!B96=I;FYI;F< 
M;V8 <W1R96%M+ T*(" O+R!E;F0 ;V8 <W1R96%M+"!O<B!C=7)R96YT('!O
M<VET:6]N+"!R971U<FYS(&YE=R!P;W-I=&EO; T*("!A8G-T<F%C="!U;&]N

M<V5E:R!F<F]M('1H92!B96=I;FYI;F< ;V8 =&AE('-T<F5A;2X-"B  =6QO
M;F< <V5E:U-E="AL;VYG(&]F9G-E="D >R!R971U<FX <V5E:R H;V9F<V5T
M+"!3965K4&]S+E-E="D[('T-" T*(" O+R!S965K(&9R;VT =&AE(&-U<G)E
M;G0 <&]I;G0 :6X =&AE('-T<F5A;2X-"B  =6QO;F< <V5E:T-U<BAL;VYG
M(&]F9G-E="D >R!R971U<FX <V5E:R H;V9F<V5T+"!3965K4&]S+D-U<G)E

M;2X-"B  =6QO;F< <V5E:T5N9"AL;VYG(&]F9G-E="D >R!R971U<FX <V5E
M:R H;V9F<V5T+"!3965K4&]S+D5N9"D[('T-" D-"B  +R\ <V5T<R!P;W-I
M=&EO; T*("!V;VED('!O<VET:6]N*'5L;VYG('!O<RD >R!S965K*'!O<RP 

M=&EO; T*("!U;&]N9R!P;W-I=&EO;B I('L <F5T=7)N('-E96LH,"P 4V5E




M+R!R971U<FYS('1R=64 :68 96YD(&]F('-T<F5A;2!I<R!R96%C:&5D+"!F
M86QS92!O=&AE<G=I<V4-"B  8FET(&5O9B I('L <F5T=7)N('!O<VET:6]N

M<FET96%B;&4-"B  =F]I9"!F;'5S:" I( T*("![( T*("  (&EF("AU;F=E
M="YL96YG=&  /B Q*0T*("  ("  =6YG970N;&5N9W1H(#T ,3L +R\ :V5E

M("\O(&-L;W-E('1H92!S=')E86T <V]M96AO=SL =&AE(&1E9F%U;'0 :G5S


M96UO<GD 8V]N=&%I;FEN9R!C;W!Y(&]F('-T<F5A;2!D871A"0T*("!O=F5R


M;F=T:" ]('-I>F4H*3L-"B  ("!P;W-I=&EO;B P*3L-"B  ("!R96%D0FQO
M8VLH<F5S=6QT+"!R97-U;'0N;&5N9W1H*3L-"B  ("!P;W-I=&EO;BAP;W,I








M<F%P<R!A('-O=7)C92!S=')E86T :6X 82!B=69F97(-"F-L87-S($)U9F9E
M<F5D4W1R96%M(#H

M(" O+R!B=69F97(L(&EF(&%N>0T*("!U:6YT(&)U9F9E<D-U<E!O<SL ("  
M+R\ 8W5R<F5N="!P;W-I=&EO;B!I;B!B=69F97(-"B  =6EN="!B=69F97),
M96X[("  ("  ("\O(&%M;W5N="!O9B!D871A(&EN(&)U9F9E< T*("!B:70 
M8G5F9F5R1&ER='D /2!F86QS93L-"B  =6EN="!B=69F97)3;W5R8V50;W,[
M("\O('!O<VET:6]N(&EN(&)U9F9E<B!O9B!S;W5R8V4 <W1R96%M('!O<VET


M871I;VYS:&EP(&)E='=E96X 9FEE;&1S. T*("  * T*("  *B  <R  ("  

M8G5F9F5R("  ("  ("  ("  ("  ('PM+2  ("  ("  ("  ("  ("  ("  
M("TM? T*("  *B  8G5F9F5R0W5R4&]S("  ("  ("  ("  ("  ("  ("  



M("  87-S97)T*&)U9F9E<E-O=7)C95!O<R \/2!B=69F97),96XI.PT*("  

M<G0H8G5F9F5R3&5N(#P


M97( /2!N97< =6)Y=&5;1&5F875L=$)U9F9E<E-I>F5=.PT*("  (', /2!S


M97(H*3L-"B  ("!I9B H8G5F9F5R4VEZ92D-"B  ("  (&)U9F9E<B ](&YE
M=R!U8GET95MB=69F97)3:7IE73L-"B  ("!S(#T <V]U<F-E.PT*("  ('5P


M8FQE(#T

M4V]U<F-E4&]S(#T 8G5F9F5R0W5R4&]S(#T ,#L-"B  ("!B=69F97)$:7)T

M86T-"B  ;W9E<G)I9&4 =F]I9"!C;&]S92 I( T*("![( T*("  ('-U<&5R


M:65D('-I>F4 =7-I;F< 86YY(&)U9F9E<F5D(&1A=&$-"B  +R\ <F5T=7)N
M<R!A8W1U86P ;G5M8F5R(&]F(&)Y=&5S(')E860-"B  ;W9E<G)I9&4 =6EN

M("  =6)Y=&4J(&)U9B ](&-A<W0H=6)Y=&4J*7)E<W5L=#L-"B  ("!U:6YT
M(')E861S:7IE(#T ,#L-"B  (" -"B  ("!I9B H8G5F9F5R0W5R4&]S("L 
M<VEZ92 \/2!B=69F97),96XI( T*("  ("  >R O+R!B=69F97( :&%S(&%L

M97);8G5F9F5R0W5R4&]S("XN(&)U9F9E<D-U<E!O<RMS:7IE73L-" EB=69F

M>&ET4F5A9#L-
M;B M(&)U9F9E<D-U<E!O<SL-"B  ("!I9B H<F5A9'-I>F4 /B P*2 -"B  
M("  ('L +R\ 8G5F9F5R(&AA<R!S;VUE(&1A=&$ <V\ 8V]P>2!W:&%T(&ES
M(&QE9G0-" EB=69;," N+B!R96%D<VEZ95T /2!B=69F97);8G5F9F5R0W5R

M<D-U<E!O<R K/2!R96%D<VEZ93L-" ES:7IE("T](')E861S:7IE.PT*("  

M<BYL96YG=& I( T*("  ("  >R O+R!B=69F97( 8V%N)W0 :&]L9"!T:&4 
M9&%T82!S;R!F:6QL(&]U='!U="!B=69F97( 9&ER96-T;'D-" EU:6YT('-I



M3&5N(#T <RYR96%D0FQO8VLH8G5F9F5R+"!B=69F97(N;&5N9W1H*3L-" EI
M9B H8G5F9F5R3&5N(#P <VEZ92D <VEZ92 ](&)U9F9E<DQE;CL-" EB=69;
M," N+B!S:7IE72 ](&)U9F9E<ELP("XN('-I>F5=.PT*"6)U9F9E<E-O=7)C
M95!O<R ](&)U9F9E<DQE;CL-" ES=')E86U0;W, *ST 8G5F9F5R3&5N.PT*

M("  ('T-" T*("!%>&ET4F5A9#H-
M('T-" T*(" O+R!W<FET92!B;&]C:R!O9B!D871A(&]F('-P96-I9FEE9"!S


M('5I;G0 <VEZ92D-"B  >PT*("  ('5B>71E*B!B=68 /2!C87-T*'5B>71E

M*&)U9F9E<DQE;B ]/2 P*0T*("  ("  >R O+R!B=69F97( :7, 96UP='D 
M<V\ 9FEL;"!I="!I9B!P;W-S:6)L90T*"6EF(" H<VEZ92 \(&)U9F9E<BYL

M9B!T:&4 8G5F9F5R(&ES(&-U<G)E;G1L>2!E;7!T>0T*"2  ("!B=69F97),

M(&)U9F9E<E-O=7)C95!O<R ](&)U9F9E<DQE;CL-" D ("  <W1R96%M4&]S
M("L](&)U9F9E<DQE;CL-" D ('T-" EE;'-E(&EF("AS:7IE(#X](&)U9F9E












M(#T 8G5F9F5R+FQE;F=T:" M(&)U9F9E<D-U<E!O<SL-"B  ("!I9B H=W)I
M=&5S:7IE(#X
M(&1A=&$-" EB=69F97);8G5F9F5R0W5R4&]S("XN(&)U9F9E<BYL96YG=&A=
M(#T



M9W1H*3L-"B  ("!A<W-E<G0H8G5F9F5R3&5N(#T](&)U9F9E<BYL96YG=& I








M;'5S:" I.PT*"7-T<F5A;5!O<R ](',N<V5E:RAO9F9S970L=VAE;F-E*3L-

M(&]F9G-E=#L-"B  ("  ('T-"B  ("!R971U<FX <W1R96%M4&]S+6)U9F9E


M4&]S(#T

M('L-"B  ("!S=7!E<BYF;'5S:" I.PT*("  (&EF("AW<FET96%B;&4 )B8 
M8G5F9F5R1&ER='DI( T*("  ("  >PT*"6EF("AB=69F97)3;W5R8V50;W, 

M<B!T;R!F<F]N="!O9B!B=69F97(-" D ("  <W1R96%M4&]S(#T <RYS965K

M+R\ =W)I=&4 8G5F9F5R(&]U= T*"6)U9F9E<E-O=7)C95!O<R ](',N=W)I
M=&5";&]C:RAB=69F97(L8G5F9F5R3&5N*3L-" EI9B H8G5F9F5R4V]U<F-E



M=7)C95!O<SL-"B  ("!I9B H9&EF9B A/2 P*2 -"B  ("  ('L-" DO+R!M
M;W9E(&%C='5A;"!F:6QE('!O:6YT97( =&\ 8W5R<F5N="!P;W-I=&EO; T*
M"7-T<F5A;5!O<R ](',N<V5E:RAD:69F+"!3965K4&]S+D-U<G)E;G0I.PT*
M("  ("  ?0T*("  ("\O(')E<V5T(&)U9F9E<B!D871A('1O(&)E(&5M<'1Y

M3&5N(#T ,#L-
M+R\ <F5T=7)N<R!T<G5E(&EF(&5N9"!O9B!S=')E86T :7, <F5A8VAE9"P 

M"B  ("!I9B H*&)U9F9E<BYL96YG=&  /3T ,"D ?'P (7)E861A8FQE*0T*
M("  ("  >PT*"7)E='5R;B!S=7!E<BYE;V8H*3L-"B  ("  ('T-"B  ("!I
M9B H8G5F9F5R0W5R4&]S(#T](&)U9F9E<DQE;BD-"B  ("  ('L-" EI9B H
M*&)U9F9E<DQE;B A/2!B=69F97(N;&5N9W1H*2 F) T*"2  (" H8G5F9F5R



M("  8G5F9F5R4V]U<F-E4&]S(#T 8G5F9F5R3&5N(#T <F5S.PT*("  ('-T

M971U<FX <F5S(#T


M;&4 97)R;W(L(&)A<V4 8VQA<W, 9F]R(&%L; T*+R\ ;W1H97( 1FEL92!E


M"B\O('1H<F]W;B!W:&5N('5N86)L92!T;R!O<&5N(&9I;&4-"F-L87-S($]P


M92!T;R!C<F5A=&4 9FEL90T*8VQA<W, 0W)E871E17)R;W(Z(%-T<F5A;49I
M;&5%<G)O< T*>PT*("!T:&ES*&-H87);72!M<V<I('L <W5P97(H;7-G*3L 



M+G=I;F1O=W,N=VEN9&]W<SL-"B  +R\ 0E9(.B!S:&]U;&0 8F4 <&%R="!O
M9B!W:6YD;W=S+F0-"B  97AT97)N("A7:6YD;W=S*2!V;VED($9L=7-H1FEL
M94)U9F9E<G,H2$%.1$Q%(&A&:6QE*3L-"GT-"G9E<G-I;VX *&QI;G5X*0T*
M>PT*("!P<FEV871E(&EM<&]R="!S=&0N8RYL:6YU>"YL:6YU>#L-"B  86QI
M87, :6YT($A!3D1,13L-"GT-" T*+R\ :G5S="!A(&9I;&4 ;VX 9&ES:R!W


M5V9U;F-S(#T
M.34L(#DX+"!-12!D;R!N;W0 :6UP;&5M96YT('1H92!7(&9U;F-T:6]N<PT*
M"0EU<V579G5N8W, /2 H1V5T5F5R<VEO;B I(#P



M<G-I;VX *%=I;C,R*0T*("  ("  >PT*"6A&:6QE(#T ;G5L;#L-"B  ("  
M('T-"B  ("!V97)S:6]N("AL:6YU>"D-"B  ("  ('L-" EH1FEL92 ]("TQ

M93L =7-E('=I=&  8V%R92$-"B  =&AI<RA(04Y$3$4 :$9I;&4L($9I;&5-

M/2!H1FEL93L-"B  ("!R96%D86)L92 ](&-A<W0H8FET*2AM;V1E("8 1FEL
M94UO9&4N26XI.PT*("  ('=R:71E86)L92 ](&-A<W0H8FET*2AM;V1E("8 
M1FEL94UO9&4N3W5T*3L-"B  ?0T*"0T*(" O+R!O<&5N<R!F:6QE(&9O<B!R
M96%D:6YG"0T*("!T:&ES*&-H87);72!F:6QE;F%M92D >R!T:&ES*"D[(&]P

M=&5D(&UO9&4-"B  =&AI<RAC:&%R6UT 9FEL96YA;64L($9I;&5-;V1E(&UO
M9&4I('L =&AI<R I.R!O<&5N*&9I;&5N86UE+"!M;V1E*3L ?0T*"0T*"0T*
M(" O+R!O<&5N<R!F:6QE(&9O<B!R96%D:6YG"0T*("!V;VED(&]P96XH8VAA
M<EM=(&9I;&5N86UE*2![(&]P96XH9FEL96YA;64L($9I;&5-;V1E+DEN*3L 




M:6QE36]D92Y);BD-" D ('L-" D ("  <F5A9&%B;&4 /2!T<G5E.PT*"2  
M("!A8V-E<W, ?#T 1T5.15))0U]214%$.PT*"2  ("!S:&%R92!\/2!&24Q%



M("!I9B H=7-E5V9U;F-S*0T*("  ('L-" EW8VAA<BH ;F%M97H /2!S=&0N
M=71F+G1O551&,39Z*&9I;&5N86UE*3L-" EH1FEL92 ]($-R96%T949I;&57
M*&YA;65Z+&%C8V5S<RQS:&%R92QN=6QL+$]014Y?04Q705E3+ T*"2  (" P

M(#T =&]-0E-Z*&9I;&5N86UE*3L-" EH1FEL92 ]($-R96%T949I;&5!*&YA
M;65Z+&%C8V5S<RQS:&%R92QN=6QL+$]014Y?04Q705E3+ T*"2  (" P+&YU
M;&PI.PT*("  ('T-" T*"6EF("AH1FEL92 ]/2!)3E9!3$E$7TA!3D1,15]6
M04Q512D-" D ('1H<F]W(&YE=R!/<&5N17)R;W(H(F9I;&4 )R( ?B!F:6QE
M;F%M92!^("(G(&YO="!F;W5N9"(I.PT*("  ("  ?0T*("  ('9E<G-I;VX 



M($9I;&5-;V1E+D]U="D-" D ('L-" D ("  =W)I=&5A8FQE(#T =')U93L-
M" D ("  86-C97-S(#T

M<W1D+F,N;&EN=7 N;&EN=7 N;W!E;BAT;U-T<FEN9WHH9FEL96YA;64I+"!A

M97< 3W!E;D5R<F]R*")F:6QE("<B('X 9FEL96YA;64 ?B B)R!N;W0 9F]U

M=W)I=&EN9PT*("!V;VED(&-R96%T92AC:&%R6UT 9FEL96YA;64I('L 8W)E


M72!F:6QE;F%M92P 1FEL94UO9&4 ;6]D92D-"B  >PT*("  (&-L;W-E*"D[

M("A7:6XS,BD-"B  ("  ('L-" EI9B H;6]D92 F($9I;&5-;V1E+DEN*0T*
M"2  >PT*"2  ("!A8V-E<W, ?#T 1T5.15))0U]214%$.PT*"2  ("!S:&%R



M86UE>B ]('-T9"YU=&8N=&]55$8Q-GHH9FEL96YA;64I.PT*"6A&:6QE(#T 
M0W)E871E1FEL95<H;F%M97HL86-C97-S+'-H87)E+&YU;&PL0U)%051%7T%,



M05E3+ T*"2  (" P+&YU;&PI.PT*("  ('T-" ES965K86)L92 ]('1R=64[

M" EW<FET96%B;&4 /2!C87-T*&)I="DH;6]D92 F($9I;&5-;V1E+D]U="D[

M;W< ;F5W($-R96%T945R<F]R*")U;F%B;&4 =&\ 8W)E871E(&9I;&4 )R( 


M" D ("  <F5A9&%B;&4 /2!T<G5E.PT*"2  ("!A8V-E<W, /2!/7U)$3TY,
M63L-" D ("  <VAA<F4 /2 P-C8P.PT*"2  ?0T*"6EF("AM;V1E("8 1FEL
M94UO9&4N3W5T*0T*"2  >PT*"2  ("!W<FET96%B;&4 /2!T<G5E.PT*"2  


M:6QE(#T <W1D+F,N;&EN=7 N;&EN=7 N;W!E;BAT;U-T<FEN9WHH9FEL96YA

M:')O=R!N97< 3W!E;D5R<F]R*")F:6QE("<B('X 9FEL96YA;64 ?B B)R!N




M;W!E;CL ;W1H97)W:7-E+"!D;V5S(&YO=&AI;F<-"B  ;W9E<G)I9&4 =F]I


M" D ("  :$9I;&4 /2!N=6QL.PT*"2  ?0T*"79E<G-I;VX *&QI;G5X*0T*

M("  (&A&:6QE(#T







M(')E861";&]C:RAV;VED*B!B=69F97(L('5I;G0 <VEZ92D-"B  +R\ <VEN
M8V4 :6XM8FQO8VMS(&%R92!N;W0 :6YH97)I=&5D+"!R961E9FEN92!T:&5M

M9'D-"B  >PT*("  ('9E<G-I;VX *%=I;C,R*0T*("  ("  >PT*"5)E861&
M:6QE*&A&:6QE+"!B=69F97(L('-I>F4L("9S:7IE+"!N=6QL*3L-"B  ("  
M('T-"B  ("!V97)S:6]N("AL:6YU>"D-"B  ("  ('L-" ES:7IE(#T <W1D
M+F,N;&EN=7 N;&EN=7 N<F5A9"AH1FEL92P 8G5F9F5R+"!S:7IE*3L-" EI
M9B H<VEZ92 ]/2 M,2D-" D ('-I>F4 /2 P.PT*("  ("  ?0T*("  (')E

M*'9O:60J(&)U9F9E<BP =6EN="!S:7IE*0T*("  ("\O('-I;F-E(&EN+6)L
M;V-K<R!A<F4 ;F]T(&EN:&5R:71E9"P <F5D969I;F4 =&AE;0T*("  (&EN

M('L-"B  ("!V97)S:6]N("A7:6XS,BD-"B  ("  ('L-" E7<FET949I;&4H
M:$9I;&4L(&)U9F9E<BP <VEZ92P )G-I>F4L(&YU;&PI.PT*("  ("  ?0T*
M("  ('9E<G-I;VX *&QI;G5X*0T*("  ("  >PT*"7-I>F4 /2!S=&0N8RYL
M:6YU>"YL:6YU>"YW<FET92AH1FEL92P 8G5F9F5R+"!S:7IE*3L-"B  ("  
M('T-"B  ("!R971U<FX <VEZ93L-"B  ?0T*"0T*("!O=F5R<FED92!U;&]N
M9R!S965K*&QO;F< ;V9F<V5T+"!3965K4&]S(')E;"D-"B  (" O+R!S:6YC
M92!I;BUB;&]C:W, 87)E(&YO="!I;FAE<FET960L(')E9&5F:6YE('1H96T-


M(')E<W5L=" ](%-E=$9I;&50;VEN=&5R*&A&:6QE+"!O9F9S970L(&YU;&PL

M;F5W(%-E96M%<G)O<B B=6YA8FQE('1O(&UO=F4 9FEL92!P;VEN=&5R(BD[

M;F< <F5S=6QT(#T ;'-E96LH:$9I;&4L(&]F9G-E="P <F5L*3L-" EI9B H
M<F5S=6QT(#T
M*")U;F%B;&4 =&\ ;6]V92!F:6QE('!O:6YT97(B*3L-"B  ("  ('T-"B  

M<&5R='DL(&IU<W0 :6X 8V%S92!S;VUE8F]D>2!W86YT<PT*(" O+R!T;R!M
M97-S('=I=&  =6YD97)L>6EN9R!!4$D-"B  2$%.1$Q%(&AA;F1L92 I('L 



M("  ("\O('-H;W5L9"!B92!O:R!T;R!W<FET90T*("  (&%S<V5R="AF:6QE



M=')I;F<C,B K(&EN="!S:&]U;&0 9VEV92!E>&%C;'D =&AA= T*("  ('9E
M<G-I;VX *%=I;C,R*0T*("  ("  87-S97)T*&9I;&4N<&]S:71I;VXH*2 ]

M<W-E<G0H9FEL92YP;W-I=&EO;B I(#T
M+R!W92!M=7-T(&)E(&%T('1H92!E;F0 ;V8 9FEL90T*("  (&%S<V5R="AF


M87-S97)T*"%F:6QE+G)E861A8FQE("8F("%F:6QE+G=R:71E86)L92 F)B A




M("  87-S97)T*&QI;F5;,%T /3T )U0G*3L-"B  ("!A<W-E<G0H;&EN92YL

M+F-M<"AL:6YE+" B5&5S=&EN9R!S=')E86TN9#HB
M<"!O=F5R(")(96QL;RP ( T*("  (&9I;&4N<V5E:R W+"!3965K4&]S+D-U
M<G)E;G0I.PT*("  ('9E<G-I;VX *%=I;C,R*0T*("  ("  87-S97)T*&9I




M87-S97)T*&D /3T -C8V*3L-"B  (" O+R!S=')I;F<C,2 K('-T<FEN9R,R


M,3, *R T*3L-"B  ("!V97)S:6]N("AL:6YU>"D-"B  ("  (&%S<V5R="AF


M*"DI.PT*("  (&9I;&4N8VQO<V4H*3L-"B  ("!R96UO=F4H(G-T<F5A;2XD






M96YS(&9I;&4 :6X <F5Q=65S=&5D(&UO9&4-"B  =&AI<RAC:&%R6UT 9FEL


M;B!R97%U97-T960 ;6]D92!A;F0 8G5F9F5R('-I>F4-"B  =&AI<RAC:&%R
M6UT 9FEL96YA;64L($9I;&5-;V1E(&UO9&4L('5I;G0 8G5F9F5R4VEZ92D 




M<W1E9"!B=69F97( <VEZ90T*("!T:&ES*$9I;&4 9FEL92P =6EN="!B=69F

M('T-" T*(" O+R!O<&5N<R!E>&ES=&EN9R!H86YD;&4[('5S92!W:71H(&-A





M92!I;B!R97%U97-T960 ;6]D90T*("!V;VED(&]P96XH8VAA<EM=(&9I;&5N





M>R!C<F5A=&4H9FEL96YA;64L($9I;&5-;V1E+D]U="D[('T-" T*(" O+R!C
M<F5A=&5S(&9I;&4 :6X <F5Q=65S=&5D(&UO9&4-"B  =F]I9"!C<F5A=&4H

M92!S9B ](&-A<W0H1FEL92ES.PT*("  ('-F+F-R96%T92AF:6QE;F%M92QM




M"B  (" O+R!S:&]U;&0 8F4 ;VL =&\ =W)I=&4-"B  ("!A<W-E<G0H9FEL
M92YW<FET96%B;&4I.PT*("  (&9I;&4N=W)I=&5,:6YE*")497-T:6YG('-T
M<F5A;2YD.B(I.PT*("  (&9I;&4N=W)I=&53=')I;F<H(DAE;&QO+"!W;W)L
M9"$B*3L-"B  ("!F:6QE+G=R:71E*&DI.PT*("  ("\O('-T<FEN9R,Q("L 
M<W1R:6YG(S( *R!I;G0 <VAO=6QD(&=I=F4 97AA8VQY('1H870-"B  ("!V
M97)S:6]N("A7:6XS,BD-"B  ("  (&%S<V5R="AF:6QE+G!O<VET:6]N*"D 


M+R\ =V4 ;75S="!B92!A="!T:&4 96YD(&]F(&9I;&4-"B  ("!A<W-E<G0H

M97)A=&EO;G, 87)E(&%L;&]W960 =VAE;B!F:6QE(&ES(&-L;W-E9 T*("  
M(&%S<V5R=" A9FEL92YR96%D86)L92 F)B A9FEL92YW<FET96%B;&4 )B8 
M(69I;&4N<V5E:V%B;&4I.PT*("  (&9I;&4N;W!E;B B<W1R96%M+B0D)"(I

M;&4N<F5A9&%B;&4I.PT*("  (&%S<V5R=" A<W1D+G-T<FEN9RYC;7 H9FEL
M92YR96%D3&EN92 I+" B5&5S=&EN9R!S=')E86TN9#HB
M:G5M<"!O=F5R(")(96QL;RP ( T*("  (&9I;&4N<V5E:R W+"!3965K4&]S
M+D-U<G)E;G0I.PT*("  ('9E<G-I;VX *%=I;C,R*0T*("  ("  87-S97)T


M.PT*("  (&%S<V5R=" A<W1D+G-T<FEN9RYC;7 H9FEL92YR96%D4W1R:6YG

M("  87-S97)T*&D /3T -C8V*3L-"B  (" O+R!S=')I;F<C,2 K('-T<FEN


M("L ,3, *R T*3L-"B  ("!V97)S:6]N("AL:6YU>"D-"B  ("  (&%S<V5R


M96]F*"DI.PT*("  (&9I;&4N8VQO<V4H*3L-"B  ("!R96UO=F4H(G-T<F5A

M:6YG(&EN(&UE;6]R>0T*8VQA<W, 365M;W)Y4W1R96%M.B!3=')E86T-"GL-
M"B  =6)Y=&5;72!B=68[("\O(&-U<G)E;G0 9&%T80T*("!U:6YT(&QE;CL 
M+R\ 8W5R<F5N="!D871A(&QE;F=T: T*("!U:6YT(&-U<CL +R\ 8W5R<F5N

M9F5R+ T*("!T:&ES*"D >R!T:&ES*&-A<W0H=6)Y=&5;72D ;G5L;"D[('T-
M" T*(" O+R!U<V4 =&AI<R!B=69F97(L(&YO;BUC;W!Y:6YG+ T*("!T:&ES


M861A8FQE(#T =W)I=&5A8FQE(#T
M"B  +R\ =7-E('1H:7, 8G5F9F5R+"!N;VXM8V]P>6EN9RX-"B  =&AI<RAB

M+R\ =7-E('1H:7, 8G5F9F5R+"!N;VXM8V]P>6EN9RX-"B  =&AI<RAC:&%R

M96YS=7)E('1H92!S=')E86T 8V%N(&AO;&0 =&AI<R!M86YY(&)Y=&5S+ T*
M("!V;VED(')E<V5R=F4H=6EN="!C;W5N="D-"B  >PT*("  (&EF("AC=7( 




M*'9O:60J(&)U9F9E<BP =6EN="!S:7IE*0T*(" O+R!S:6YC92!I;BUB;&]C
M:W, 87)E(&YO="!I;FAE<FET960L(')E9&5F:6YE('1H96T-"B  :6X-"B  

M("  =6)Y=&4J(&-B=68 /2!C87-T*'5B>71E*BD 8G5F9F5R.PT*("  (&EF
M("AL96X +2!C=7( /"!S:7IE*0T*("  ("  <VEZ92 ](&QE;B M(&-U<CL-
M"B  ("!C8G5F6S  +BX <VEZ95T /2!B=69;8W5R("XN(&-U<B K('-I>F5=


M;G0 <VEZ92D-"B  +R\ <VEN8V4 :6XM8FQO8VMS(&%R92!N;W0 :6YH97)I



M"B  ("!B=69;8W5R("XN(&-U<B K('-I>F5=(#T 8V)U9ELP("XN('-I>F5=


M<FED92!U;&]N9R!S965K*&QO;F< ;V9F<V5T+"!3965K4&]S(')E;"D-"B  
M+R\ <VEN8V4 :6XM8FQO8VMS(&%R92!N;W0 :6YH97)I=&5D+"!R961E9FEN



M("  >PT*("  ("  8V%S92!3965K4&]S+E-E=#H <V-U<B ](&]F9G-E=#L 

M<B K(&]F9G-E=#L
M8W5R(#T ;&5N("L ;V9F<V5T.R!B<F5A:SL-"B  ("  ('T-" T*("  (&EF
M("AS8W5R(#P





M;3L-" T*("  (&T /2!N97< 365M;W)Y4W1R96%M(" I.PT*("  (&TN=W)I
M=&53=')I;F< *")(96QL;RP =V]R;&0B*3L-"B  ("!A<W-E<G0 *&TN<&]S
M:71I;VX *"D /3T ,3(I.PT*("  (&%S<V5R=" H;2YS965K4V5T(" P*2 ]

M87-S97)T("AM+G-E96M%;F0 *"TX*2 ]/2 T*3L-"B  ("!A<W-E<G0 *&TN

M(#T
M87-S97)T("AC87-T*&-H87);72D ;2YD871A(" I(#T](")(96QL;RP =VEE

M*")&;V\B*3L-"B  ("!A<W-E<G0 *&TN<&]S:71I;VX *"D /3T ,34I.PT*
M("  (&TN=W)I=&53=')I;F< *")&;V\ 9F]O(&9O;R!F;V\ 9F]O(&9O;R!F


M96%M+"!M86MI;F< <V5E:VEN9PT*+R\ <F5L871I=F4 =&\ =&AE(&)O=6YD
M87)I97, ;V8 =&AE('-L:6-E+ T*8VQA<W, 4VQI8V53=')E86T .B!3=')E
M86T-"GL-"B  4W1R96%M(&)A<V4[("\O('-T<F5A;2!T;R!B87-E('1H:7, 
M;V9F(&]F+ T*("!U;&]N9R!L;W<[("\O(&QO=R!S=')E86T ;V9F<V5T+ T*


M0VQO<V4[("\O(&EF('-E="P 8VQO<V4 8F%S92!W:&5N(&-L;W-I;F< =&AI

M(&QO=R!O9F9S970 8G5T(&QE879E('1H92!H:6=H('5N8F]U;F1E9"X-"B  
M=&AI<R H4W1R96%M(&)A<V4L('5L;VYG(&QO=RD-"B  :6X-"B  >PT*("  


M*3L-"B  ("!T:&ES+F)A<V4 /2!B87-E.PT*("  ('1H:7,N;&]W(#T ;&]W


M86)L92 ](&)A<V4N=W)I=&5A8FQE.PT*("  ('-E96MA8FQE(#T 8F%S92YS

M92!L;W< ;V9F<V5T+"!A;F0 =&AE(&AI9V  ;V9F<V5T+ T*("!T:&ES("A3
M=')E86T 8F%S92P =6QO;F< ;&]W+"!U;&]N9R!H:6=H*0T*("!I; T*("![

M=R \/2!H:6=H*3L-"B  ("!A<W-E<G0 *&AI9V  /#T 8F%S92YS:7IE(" I

M+F)A<V4 /2!B87-E.PT*("  ('1H:7,N;&]W(#T ;&]W.PT*("  ('1H:7,N






M("!B87-E(#T ;G5L;#L-
M;V-K("AV;VED("IB=69F97(L('5I;G0 <VEZ92D-"B  :6X-"B  >PT*("  

M("AB;W5N9&5D*0T*("  ("  >PT*"75L;VYG('!O<R ](&)A<V4N<&]S:71I

M("AS:7IE(#X :&EG:" M('!O<RD-" D ('-I>F4 /2!H:6=H("T <&]S.PT*


M;VED("IB=69F97(L('5I;G0 <VEZ92D-"B  :6X-"B  >PT*("  (&%S<V5R

M;F1E9"D-"B  ("  ('L-" EU;&]N9R!P;W, /2!B87-E+G!O<VET:6]N(" I


M('T-" T*("  (')E='5R;B!B87-E+G=R:71E0FQO8VL *&)U9F9E<BP <VEZ

M+"!3965K4&]S(')E;"D-"B  :6X-"B  >PT*("  (&%S<V5R=" H<V5E:V%B


M4V5T. T*"6]U='!U=" ](&QO=R K(&]F9G-E=#L-" EB<F5A:SL-" T*("  

M=&EO;B H*2 K(&]F9G-E=#L-" EB<F5A:SL-" T*("  ("  8V%S92!3965K
M4&]S+D5N9#H-" EI9B H8F]U;F1E9"D-" D (&]U='!U=" ](&AI9V  *R!O

M*&]F9G-E="P 4V5E:U!O<RY%;F0I.PT*"2  ("!A<W-E<G0 *&]U='!U=" ^
M/2!L;W<I.PT*"2  ("!R971U<FX ;W5T<'5T("T ;&]W.PT*"2  ?0T*("  

M(&QO=SL-"B  ("!E;'-E(&EF("AB;W5N9&5D("8F(&]U='!U=" ^(&AI9V I

M965K("AO=71P=70L(%-E96M0;W,N4V5T*3L-"B  ("!A<W-E<G0 *&]U='!U

M(" O*B!497-T('1H92!W:&]L92!C;&%S<RX *B\-"B  =6YI='1E<W0-"B  

M"B  ("!M(#T ;F5W($UE;6]R>5-T<F5A;2 H*&-A<W0H8VAA<EM=*2)(96QL
M;RP =V]R;&0B*2YD=7 I.PT*("  (', /2!N97< 4VQI8V53=')E86T *&TL

M<V5R=" H<RYW<FET94)L;V-K("AC87-T*&-H87( *BD (E9R;V]M(BP -2D 




M<V5R=" H<RYT;U-T<FEN9R H*2 ]/2 B5G)O;V]R;&0B*3L-"B  ("!S+G-E





M/3T )R G('Q\(&, /3T )UQT)R!\?"!C(#T]("=<<B< ?'P 8R ]/2 G7&XG

M=7)N(&, /CT )S G("8F(&, /#T
M<V]C=&1I9VET*&-H87( 8RD-"GL-"B  <F5T=7)N(&, /CT )S G("8F(&, 
M/#T
M"GL-"B  <F5T=7)N(&ES9&EG:70H8RD ?'P *&, /CT )T$G("8F(&, /#T 




M;7!O<G0 <W1D+F,N=VEN9&]W<RYW:6YD;W=S.PT*("  ("  2$%.1$Q%($=E


M("  ("!S=&1I;B ](&YE=R!&:6QE*$=E=%-T9$AA;F1L92 M,3 I+"!&:6QE

M;&4H+3$Q*2P 1FEL94UO9&4N3W5T*3L-"B  ("  ('-T9&5R<B ](&YE=R!&
M:6QE*$=E=%-T9$AA;F1L92 M,3(I+"!&:6QE36]D92Y/=70I.PT*("  ('T-




M<G( /2!N97< 1FEL92 R+"!&:6QE36]D92Y/=70I.PT*("  ('T-"GT-" T*

`
end
Jun 08 2004