digitalmars.D.dwt - Java to D No2 // Java to XML , XML to D
- BLS (9/9) Feb 23 2006 Well, after working a while with ANTLR, i figured out that is is possib...
Well, after working a while with ANTLR, i figured out that is is possible to create a XML representation of Java 5 code using ANTLR. Unfortunately, we have have a bad case of programmer-confusion. Is this really a win. (in other words, can this be helpfull in translation Java 2 D) ?? Let me know what you think. IMO seems to be easier than walking the AST. I am not able to spend more time on this issue because the Client|/Server IDE (see announcements) takes most of it. If someone is looking for a sample translation let me know. Bjoern Lietz-Spendig
Feb 23 2006
BLS wrote: If someone is looking for a sampletranslation let me know. Bjoern Lietz-SpendigIt would be nice if you could post one here...
Feb 23 2006
hi bobef. have to split the message. here attached the xml file begin 666 output.xml M/"$M+2!'96YE<F%T960 8GD 2F%V83)834P :'1T<#HO+VIA=F$R>&UL+F1E M:F%V82UC;&%S<RUF:6QE(&YA;64](F,Z7&IA=F$R>&UL7&AA<G-H7&IA=F%T M;WAM;%QJ879A,GAM;"YJ879A(CX-"B (" (" /'!A8VMA9V4M9&5C;"!N M86UE/2)H87)S:"YJ879A=&]X;6PB+SX-"B (" (" /&EM<&]R="!M;V1U M;&4](FAA<G-H+FIA=F%T;WAM;"Y%>&-E<'1I;VYS+DI834Q%>&-E<'1I;VXB M+SX-"B (" (" /&EM<&]R="!M;V1U;&4](FAA<G-H+FIA=F%T;WAM;"YD M;7!O<G0 ;6]D=6QE/2)H87)S:"YJ879A=&]X;6PN9W)A;6UA<BY*879A4&%R M;W1&;W5N9$5X8V5P=&EO;B(O/ T*(" (" (" \:6UP;W)T(&UO9'5L93TB M;6]D=6QE/2)J879A+FEO+D9I;&5296%D97(B+SX-"B (" (" /&EM<&]R M="!M;V1U;&4](FIA=F$N:6\N24]%>&-E<'1I;VXB+SX-"B (" (" /&EM M<&]R="!M;V1U;&4](FIA=F$N:6\N4')I;G13=')E86TB+SX-"B (" (" M;7!O<G0 ;6]D=6QE/2)J879A+FEO+E-T<FEN9U)E861E<B(O/ T*(" (" M(" \:6UP;W)T(&UO9'5L93TB:F%V82YI;RY3=')I;F=7<FET97(B+SX-"B M(" (" /&-L87-S(&YA;64](DIA=F$R6$U,(B!V:7-I8FEL:71Y/2)P=6)L M:6,B/ T*(" (" (" (" /&UE=&AO9"!N86UE/2)M86EN(B!V:7-I8FEL M(" (#QF M(" (" (" (" (" \='EP92!N86UE/2)3=')I;F<B(&1I;65N<VEO;G,] M(C$B+SX-"B (" (" (" (" (" (" /"]F;W)M86PM87)G=6UE;G0^ M(" (" (" (#QB;&]C:SX-"B (" (" (" (" (" (" /&EF/ T* M(" (" (" (" (" /&)I;F%R>2UE>'!R(&]P/2(\(CX-"B (" (" M(" (" (" (" (" (" (" (" /&9I96QD+6%C8V5S<R!F:65L9#TB M;&5N9W1H(CX-"B (" (" (" (" (" (" (" (" (" (" (" M(#QV87(M<F5F(&YA;64](F%R9W,B+SX-"B (" (" (" (" (" (" M(" (" (" (" (" (#QL:71E<F%L+6YU;6)E<B!K:6YD/2)I;G1E<F=E M<B( =F%L=64](C$B+SX-"B (" (" (" (" (" (" (" (" (" \ M+V)I;F%R>2UE>'!R/ T*(" (" (" (" (" (" (" (" /"]T97-T M/ T*(" (" (" (" (" (" (" (" /'1R=64M8V%S93X-"B (" M(" (" (" (" (" (" (#QS96YD(&UE<W-A9V4](G!R:6YT;&XB/ T* M(" (" (" (" (" (" (" (" (" (" (" (" /'1A<F=E=#X- M"B (" (" (" (" (" (" (" (" (" (" (" (" (" \9FEE M;&0M86-C97-S(&9I96QD/2)O=70B/ T*(" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" \=F%R+7)E9B!N86UE/2)3>7-T96TB M+SX-"B (" (" (" (" (" (" (" (" (" (" (" (" (" \ M+V9I96QD+6%C8V5S<SX-"B (" (" (" (" (" (" (" (" (" M(" (" (#PO=&%R9V5T/ T*(" (" (" (" (" (" (" (" (" M(" (" (" /&%R9W5M96YT<SX-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" \;&ET97)A;"US=')I;F< =F%L=64](B)5<V%G M93H :F%V82 M:F%R(&IA=F$R>&UL+FIA<B!F:6QE,2YJ879A(&9I;&4R+FIA M=F$ 9FEL93,N:F%V82 N+BXN+B(B+SX-"B (" (" (" (" (" (" M(" (" (" (" (" (#PO87)G=6UE;G1S/ T*(" (" (" (" (" M(" (" (" /"]B;&]C:SX-"B (" (" (" (" (" (" (" (#PO M=')U92UC87-E/ T*(" (" (" (" (" (" (" (" /&9A;'-E+6-A M(" (" (" (" (" (" (" (" (" (" \=')Y/ T*(" (" (" M(" (" (" (" (" (" (" (" (" /&)L;V-K/ T*(" (" (" M(" (" (" (" (" (" (" (" (" (" (#QL;V-A;"UV87)I86)L M92!N86UE/2)R96%D97)S(CX-"B (" (" (" (" (" (" (" (" M(" (" (" (" (" (" /'1Y<&4 ;F%M93TB1FEL95)E861E<B( 9&EM M96YS:6]N<STB,2(O/ T*(" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" \;F5W+6%R<F%Y(&1I;65N<VEO;G,](C$B/ T*(" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M/'1Y<&4 ;F%M93TB1FEL95)E861E<B(O/ T*(" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" /&1I;2UE>'!R/ T*(" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (#QF M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(#QV87(M<F5F(&YA;64](F%R9W,B+SX-"B (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" \+V9I96QD+6%C8V5S M<SX-"B (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (#PO9 M(" (" (" (" (" (" (#PO;F5W+6%R<F%Y/ T*(" (" (" (" M(" (" (" (" (" (" (" (" (" (#PO;&]C86PM=F%R:6%B;&4^ M;W :VEN9#TB9F]R(CX-"B (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" \;&]C86PM=F%R:6%B;&4 ;F%M M(" (" (" (" (" /'1Y<&4 <')I;6ET:79E/2)T<G5E(B!N86UE/2)I M;G0B+SX-"B (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" \;&ET97)A;"UN=6UB97( :VEN9#TB:6YT97)G97(B M(" (" (" (" (" (" \+VQO8V%L+79A<FEA8FQE/ T*(" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (#QT M97-T/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" /&)I;F%R>2UE>'!R(&]P/2(\(CX-"B (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" \=F%R+7)E M(" (" (" (" (" (" (" /&9I96QD+6%C8V5S<R!F:65L9#TB;&5N M9W1H(CX-"B (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" /'9A<BUR968 ;F%M93TB<F5A9&5R<R(O/ T* M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (#PO9FEE;&0M86-C97-S/ T*(" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" /"]B:6YA<GDM97AP<CX-"B M(" (" (" (" (" (" (" (" (" (" (" (" (" (" /"]T M97-T/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" \=7!D871E/ T*(" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" /'5N87)Y+65X<'( ;W ](BLK(B!P;W-T/2)T M<G5E(CX-"B (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" \+W5N87)Y M(" (" (#PO=7!D871E/ T*(" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" \87-S:6=N;65N="UE>'!R M(&]P/2(](CX-"B (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" \;'9A;'5E/ T*(" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" \87)R87DM M<F5F/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" /'9A<BUR968 ;F%M93TB<F5A9&5R<R(O/ T*(" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M/"]B87-E/ T*(" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" /&]F9G-E=#X-"B (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" \ M+V]F9G-E=#X-"B (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" /"]L M(" (" (" (" (" /&YE=SX-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" /'1Y<&4 ;F%M93TB M1FEL95)E861E<B(O/ T*(" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" \87)G=6UE;G1S/ T*(" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" /&%R<F%Y+7)E9CX-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" \8F%S M93X-"B (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" /'9A<BUR968 ;F%M93TB87)G M<R(O/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (#PO8F%S93X-"B (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" \;V9F<V5T/ T*(" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" \=F%R M(" (" (" (" (" (" (" (" (" (" (" (" /"]O9F9S970^ M(" (" (" (" (" (" \+V%R<F%Y+7)E9CX-"B (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" /"]A M(" (" (" (" (" (" (" (" (" (" \+V%S<VEG;FUE;G0M97AP M<CX-"B (" (" (" (" (" (" (" (" (" (" (" (" (" M(" /"]B;&]C:SX-"B (" (" (" (" (" (" (" (" (" (" M(" (" (" (" /&QO8V%L+79A<FEA8FQE(&YA;64](F5L96UE;G0B/ T* M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" \ M='EP92!N86UE/2))6$U,16QE;65N="(O/ T*(" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" \<V5N9"!M97-S86=E/2)C;VYV M97)T5&]834PB/ T*(" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" /&%R9W5M96YT<SX-"B (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" \=F%R+7)E9B!N M(" (" (" (" (" (" (" (" /'9A<BUR968 ;F%M93TB87)G<R(O M/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (#PO<V5N9#X-"B (" (" (" (" (" M(" (" (" (" (" (" (" (" \+VQO8V%L+79A<FEA8FQE/ T*(" M(" (" (" (" (" (" (" (" (" (" (" (" (#QL;V-A;"UV M87)I86)L92!N86UE/2)F;W5T(CX-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" (" /'1Y<&4 ;F%M93TB1FEL94]U='!U=%-T M<F5A;2(O/ T*(" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" \;F5W/ T*(" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" /'1Y<&4 ;F%M93TB1FEL94]U='!U=%-T<F5A M;2(O/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" /&%R9W5M96YT<SX-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" \;&ET97)A;"US=')I;F< M=F%L=64](B)O=71P=70N>&UL(B(O/ T*(" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (#PO;F5W M/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" (#PO M(" (" (" (" /&QO8V%L+79A<FEA8FQE(&YA;64](G!O=70B/ T*(" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" \='EP M92!N86UE/2)0<FEN=%-T<F5A;2(O/ T*(" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" \;F5W/ T*(" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" /'1Y<&4 ;F%M93TB M4')I;G13=')E86TB+SX-"B (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (#QA M(" (" (" (" (" (" (" (" (" (" (" (" (" /'9A<BUR M968 ;F%M93TB9F]U="(O/ T*(" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (#PO;F5W/ T*(" M(" (" (" (" (" (" (" (" (" (" (" (" (#PO;&]C86PM M(" (" (" (" (" (" (" (" (" (" (#QT87 M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" \ M9FEE;&0M86-C97-S(&9I96QD/2)O=70B/ T*(" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (#QV87(M<F5F(&YA M;64](E-Y<W1E;2(O/ T*(" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (#PO=&%R9V5T/ T* M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" \ M87)G=6UE;G1S/ T*(" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" /&QI=&5R86PM<W1R:6YG('9A;'5E/2(B4W1A<G1I M;F< <&%R<VEN9R(B+SX-"B (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" /"]S96YD/ T*(" (" (" (" M(" (" (" (" (" (" (" (" (" (#QS96YD(&UE<W-A9V4](F1U M;7!834Q%;&5M96YT(CX-"B (" (" (" (" (" (" (" (" (" M(" (" (" (" (" /'1A<F=E=#X-"B (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (#QV87(M<F5F(&YA;64](EA- M3$AE;'!E<B(O/ T*(" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" \+W1A<F=E=#X-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" (" /&%R9W5M96YT<SX-"B (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (#QV87(M<F5F M(&YA;64](F5L96UE;G0B+SX-"B (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (#QV87(M<F5F(&YA;64](G!O=70B+SX- M"B (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" /"]S96YD/ T*(" (" (" (" (" (" (" (" (" M(" (" (" (" (#QS96YD(&UE<W-A9V4](G!R:6YT;&XB/ T*(" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" \=&%R9V5T M/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" /&9I96QD+6%C8V5S<R!F:65L9#TB;W5T(CX-"B (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" \=F%R M+7)E9B!N86UE/2)3>7-T96TB+SX-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (#PO9FEE;&0M86-C97-S/ T*(" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" \+W1A M<F=E=#X-"B (" (" (" (" (" (" (" (" (" (" (" (" M(" (" /&%R9W5M96YT<SX-"B (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (#QL:71E<F%L+7-T<FEN9R!V86QU93TB M(" (" (" (" (" (" (" (" (" (" (" (#PO87)G=6UE;G1S M/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" (#PO M<V5N9#X-"B (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (#QT87 M(" (" (" (" (" (" (" (" (" (" (" (" (" \=F%R+7)E M(" (" (" (" (" (#PO=&%R9V5T/ T*(" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" \87)G=6UE;G1S+SX-"B (" M(" (" (" (" (" (" (" (" (" (" (" (" (" /'-E;F0 M;65S<V%G93TB9FQU<V B/ T*(" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" \=&%R9V5T/ T*(" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" /'9A<BUR968 ;F%M93TB M9F]U="(O/ T*(" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" \+W1A<F=E=#X-"B (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" /"]S96YD/ T*(" (" (" M(" (" (" (" (" (" (" (" (" (" (#QS96YD(&UE<W-A9V4] M(F-L;W-E(CX-"B (" (" (" (" (" (" (" (" (" (" (" M(" (" (" /'1A<F=E=#X-"B (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (#QV87(M<F5F(&YA;64](G!O=70B+SX- M"B (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (#QA<F=U;65N=',O/ T*(" (" (" (" (" (" (" M(" (" (" (" (" (" (#PO<V5N9#X-"B (" (" (" (" (" M(" (" (" (" (" (" (" (" \<V5N9"!M97-S86=E/2)C;&]S92(^ M(#QT87 M(" (" (" (" (" (" (" (" (" (" (" (" (#PO=&%R9V5T M/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" \87)G=6UE;G1S+SX-"B (" (" (" (" (" (" (" (" (" M(" (" (" (" \+V)L;V-K/ T*(" (" (" (" (" (" (" (" M(" (" (" (" /&-A=&-H/ T*(" (" (" (" (" (" (" (" M(" (" (" (" (" (#QF M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (#QT M>7!E(&YA;64](DI834Q%>&-E<'1I;VXB+SX-"B (" (" (" (" (" M(" (" (" (" (" (" (" (" \+V9O<FUA;"UA<F=U;65N=#X-"B M(" (" (" (" (" (" (" (" (" (" (" (" (" \8FQO8VL^ M(#QS96YD(&UE<W-A9V4](G!R:6YT;&XB/ T*(" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" /'1A<F=E=#X-"B (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" \9FEE;&0M86-C97-S(&9I96QD/2)O=70B/ T*(" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" \=F%R M+7)E9B!N86UE/2)3>7-T96TB+SX-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" \+V9I96QD+6%C8V5S<SX- M"B (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (#PO=&%R9V5T/ T*(" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" /&%R9W5M96YT<SX-"B (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" \<V5N9"!M M97-S86=E/2)G971-97-S86=E(CX-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" /'1A<F=E=#X-"B M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (#QV87(M<F5F(&YA;64](F4B+SX-"B (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (#QA<F=U;65N=',O/ T*(" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (#PO M<V5N9#X-"B (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (#PO87)G=6UE;G1S/ T*(" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (#QS96YD(&UE<W-A9V4] M(F5X:70B/ T*(" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" /'1A<F=E=#X-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" \=F%R+7)E9B!N86UE/2)3 M>7-T96TB+SX-"B (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (#PO=&%R9V5T/ T*(" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" /&%R9W5M96YT<SX-"B (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" \;&ET97)A;"UN=6UB97( :VEN9#TB:6YT97)G97(B('9A;'5E/2(Q(B\^ M(" (" \+V%R9W5M96YT<SX-"B (" (" (" (" (" (" (" (" M(" (" (" (" (" (" /"]S96YD/ T*(" (" (" (" (" (" M(" (" (" (" (" (" (" (#PO8FQO8VL M(" (" (" (" (" (" (" (" \+V-A=&-H/ T*(" (" (" (" M(" (" (" (" (" (" (" (" /&-A=&-H/ T*(" (" (" (" M(" (" (" (" (" (" (" (" (" (#QF;W)M86PM87)G=6UE;G0 M(" (" (" (#QT>7!E(&YA;64](D9I;&5.;W1&;W5N9$5X8V5P=&EO;B(O M/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" (#PO M9F]R;6%L+6%R9W5M96YT/ T*(" (" (" (" (" (" (" (" (" M(" (" (" (" (#QB;&]C:SX-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" (" /'-E;F0 ;65S<V%G93TB<')I;G1L;B(^ M(" (" \=&%R9V5T/ T*(" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (#QF:65L9"UA8V-E<W, 9FEE;&0](F]U M(" (" (" (" (" (#QV87(M<F5F(&YA;64](E-Y<W1E;2(O/ T*(" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (#PO9FEE;&0M86-C97-S/ T*(" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" \87)G=6UE M;G1S/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (#QS96YD(&UE<W-A9V4](F=E=$UE<W-A9V4B/ T*(" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" \=&%R9V5T/ T*(" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" /'9A<BUR968 ;F%M M93TB92(O/ T*(" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" \+W1A<F=E=#X-"B (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" /&%R M(" (" (" (" (" (" /"]S96YD/ T*(" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (#PO M<V5N9#X-"B (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" \=&%R9V5T/ T*(" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (#QV87(M<F5F(&YA;64](E-Y<W1E;2(O/ T*(" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" \87)G=6UE;G1S/ T*(" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (#QL:71E<F%L+6YU;6)E<B!K:6YD/2)I M;G1E<F=E<B( =F%L=64](C$B+SX-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (#PO87)G=6UE;G1S/ T*(" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" \+W-E;F0^ M;&]C:SX-"B (" (" (" (" (" (" (" (" (" (" (" (#PO M(" /&9O<FUA;"UA<F=U;65N="!N86UE/2)E(CX-"B (" (" (" (" M(" (" (" (" (" (" (" (" (" (" /'1Y<&4 ;F%M93TB24]% M>&-E<'1I;VXB+SX-"B (" (" (" (" (" (" (" (" (" (" M(" (" (" \+V9O<FUA;"UA<F=U;65N=#X-"B (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (#QS96YD(&UE<W-A9V4] M(G!R:6YT;&XB/ T*(" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" /'1A<F=E=#X-"B (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" \9FEE;&0M86-C97-S M(&9I96QD/2)O=70B/ T*(" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" \=F%R+7)E9B!N86UE/2)3>7-T M96TB+SX-"B (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" \+V9I96QD+6%C8V5S<SX-"B (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (#PO=&%R9V5T/ T* M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" /&%R9W5M96YT<SX-"B (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" \<V5N9"!M97-S86=E/2)G971-97-S M86=E(CX-"B (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" /'1A<F=E=#X-"B (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (#QV M87(M<F5F(&YA;64](F4B+SX-"B (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (#QA<F=U;65N=',O/ T*(" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (#PO<V5N9#X-"B (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (#PO87)G M=6UE;G1S/ T*(" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (#QS96YD(&UE<W-A9V4](F5X:70B/ T*(" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" /'1A M<F=E=#X-"B (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" \=F%R+7)E9B!N86UE/2)3>7-T96TB+SX-"B (" M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (#PO M=&%R9V5T/ T*(" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" /&%R9W5M96YT<SX-"B (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" \;&ET97)A;"UN=6UB M97( :VEN9#TB M(" (" (" (" (" (" (" (" (" (" (" (" \+V%R9W5M96YT M<SX-"B (" (" (" (" (" (" (" (" (" (" (" (" (" M(" /"]S96YD/ T*(" (" (" (" (" (" (" (" (" (" (" M(" (" (#PO8FQO8VL M(" (" (" \+V-A=&-H/ T*(" (" (" (" (" (" (" (" (" M(" (" \+W1R>3X-"B (" (" (" (" (" (" (" (" (" \+V)L M;V-K/ T*(" (" (" (" (" (" (" (" /"]F86QS92UC87-E/ T* M(" (" (" (" (" (" (" \+VEF/ T*(" (" (" (" (" (#PO M971H;V0 ;F%M93TB:F%V83)834PB('9I<VEB:6QI='D](G!U8FQI8R( <W1A M=&EC/2)T<G5E(CX-"B (" (" (" (" (" \='EP92!N86UE/2)3=')I M;F<B+SX-"B (" (" (" (" (" \9F]R;6%L+6%R9W5M96YT<SX-"B M(" (" (" (" (" (" /&9O<FUA;"UA<F=U;65N="!N86UE/2)J879A M=')I;F<B(&1I;65N<VEO;G,](C$B+SX-"B (" (" (" (" (" (" M(" (" (" (" \='EP92!N86UE/2)3=')I;F<B(&1I;65N<VEO;G,](C$B M(" (" (" (" (" /"]F;W)M86PM87)G=6UE;G1S/ T*(" (" (" M(" (" (#QT M(" (" (" (" (" /&)L;V-K/ T*(" (" (" (" (" (" (" \ M(" (" (" (" (" (" (" \8FEN87)Y+65X<'( ;W ](B$](CX-"B M(" (" (" (" (" (" (" (" (" (" /&9I96QD+6%C8V5S<R!F M:65L9#TB;&5N9W1H(CX-"B (" (" (" (" (" (" (" (" (" M(" (" (#QV87 M(" (" (" (" (" (" (" (#PO9FEE;&0M86-C97-S/ T*(" (" M(" (" (" (" (" (" (" (" (" \9FEE;&0M86-C97-S(&9I96QD M/2)L96YG=& B/ T*(" (" (" (" (" (" (" (" (" (" (" M(" /'9A<BUR968 ;F%M93TB8VQA<W-.86UE<R(O/ T*(" (" (" (" M(" (" (" (" (" (" (" \+V9I96QD+6%C8V5S<SX-"B (" (" M(" (" (" (" (" (" (" \+V)I;F%R>2UE>'!R/ T*(" (" (" M(" (" (" (" (" /"]T97-T/ T*(" (" (" (" (" (" (" M(" /'1R=64M8V%S93X-"B (" (" (" (" (" (" (" (" (" \ M(" (" (" (" (" \87)G=6UE;G1S/ T*(" (" (" (" (" (" M(" (" (" (" (" (" (" (#QL:71E<F%L+7-T<FEN9R!V86QU93TB M(D%R9W5M96YT<R!S:&]U;&0 8F4 ;V8 97%U86P ;&5N9W1H(B(O/ T*(" M(" (" (" (" (" (" (" (" (" (" (" /"]A<F=U;65N=',^ M(" (" (" (" (" (" (" (" (#PO M(" (" (" (" (" \+W1R=64M8V%S93X-"B (" (" (" (" (" M(" /"]I9CX-"B (" (" (" (" (" (" /&QO8V%L+79A<FEA8FQE M(&YA;64](G)E861E<G,B/ T*(" (" (" (" (" (" (" (" /'1Y M(" (" (" (" (" \;F5W+6%R<F%Y(&1I;65N<VEO;G,](C$B/ T*(" M(" (" (" (" (" (" (" (" (#QT>7!E(&YA;64](E)E861E<B(O M/ T*(" (" (" (" (" (" (" (" (" (#QD:6TM97AP<CX-"B M(" (" (" (" (" (" (" (" (" (" /&9I96QD+6%C8V5S<R!F M:65L9#TB;&5N9W1H(CX-"B (" (" (" (" (" (" (" (" (" M(" (" (#QV87 M(" (" (" (" (" (" (" (#PO9FEE;&0M86-C97-S/ T*(" (" M(" (" (" (" (" (" (" (#PO9 M(" (" (" (" (" \+VYE=RUA<G)A>3X-"B (" (" (" (" (" M(" /"]L;V-A;"UV87)I86)L93X-"B (" (" (" (" (" (" /&QO M;W :VEN9#TB9F]R(CX-"B (" (" (" (" (" (" (" (#QI;FET M/ T*(" (" (" (" (" (" (" (" (" (#QL;V-A;"UV87)I86)L M92!N86UE/2)I(CX-"B (" (" (" (" (" (" (" (" (" (" M/'1Y<&4 <')I;6ET:79E/2)T<G5E(B!N86UE/2)I;G0B+SX-"B (" (" M(" (" (" (" (" (" (" (" /&QI=&5R86PM;G5M8F5R(&MI;F0] M(FEN=&5R9V5R(B!V86QU93TB,"(O/ T*(" (" (" (" (" (" (" M(" (" (#PO M"B (" (" (" (" (" (" (" (" (" \8FEN87)Y+65X<'( ;W ] M(CPB/ T*(" (" (" (" (" (" (" (" (" (" (" \=F%R+7)E M(#QF M(" (" (" (" (" (" (" (" \=F%R+7)E9B!N86UE/2)J879A0V]D M92(O/ T*(" (" (" (" (" (" (" (" (" (" (" \+V9I96QD M+6%C8V5S<SX-"B (" (" (" (" (" (" (" (" (" \+V)I;F%R M>2UE>'!R/ T*(" (" (" (" (" (" (" (" /"]T97-T/ T*(" M(" (" (" (" (" (" (" /'5P9&%T93X-"B (" (" (" (" M(" (" (" (" (" \=6YA<GDM97AP<B!O<#TB*RLB('!O<W0](G1R=64B M/ T*(" (" (" (" (" (" (" (" (" (" (" \=F%R+7)E9B!N M(" (" (" (" (" /&%S<VEG;FUE;G0M97AP<B!O<#TB M(" (" (" (" (" (" (" (" (" (#QL M(" (" (" (" (" (" (" (" (" (" \87)R87DM<F5F/ T*(" M(" (" (" (" (" (" (" (" (" (" (" (" (#QB87-E/ T* M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" \ M(" (" (" (" (" (" (" /"]B87-E/ T*(" (" (" (" (" M(" (" (" (" (" (" (" (" (#QO9F9S970 M(" (" (" (" (" (" (" (" (" (" (" (#QV87(M<F5F(&YA M;64](FDB+SX-"B (" (" (" (" (" (" (" (" (" (" (" M(" (" \+V]F9G-E=#X-"B (" (" (" (" (" (" (" (" (" M(" (" (#PO87)R87DM<F5F/ T*(" (" (" (" (" (" (" (" M(" (" (" \+VQV86QU93X-"B (" (" (" (" (" (" (" (" M(" (" /&YE=SX-"B (" (" (" (" (" (" (" (" (" (" M(" (#QT>7!E(&YA;64](E-T<FEN9U)E861E<B(O/ T*(" (" (" (" M(" (" (" (" (" (" (" (" /&%R9W5M96YT<SX-"B (" (" M(" (" (" (" (" (" (" (" (" (" (" \87)R87DM<F5F/ T* M(" (" (" (" (" (" (" (" (" (" (" (" (" (" (" \ M8F%S93X-"B (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (#QV87 M(" (" (" (" (" (" (" (" (" (" (" (" (#PO8F%S93X- M"B (" (" (" (" (" (" (" (" (" (" (" (" (" (" M/&]F9G-E=#X-"B (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (#QV87(M<F5F(&YA;64](FDB+SX-"B (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (" /"]A<G)A M+V%R9W5M96YT<SX-"B (" (" (" (" (" (" (" (" (" (" M(" (#QL;V-A;"UV87)I86)L92!N86UE/2)X;6PB/ T*(" (" (" (" M(" (" (" (" /'1Y<&4 ;F%M93TB25A-3$5L96UE;G0B+SX-"B (" M(" (" (" (" (" (" (#QS96YD(&UE<W-A9V4](F-O;G9E<G14;UA- M"B (" (" (" (" (" (" (" (" (" (" /'9A<BUR968 ;F%M M93TB<F5A9&5R<R(O/ T*(" (" (" (" (" (" (" (" (" (" M92!N86UE/2)W<FET97(B/ T*(" (" (" (" (" (" (" (" /'1Y M(" (" \;F5W/ T*(" (" (" (" (" (" (" (" (" (#QT>7!E M(&YA;64](E-T<FEN9U=R:71E<B(O/ T*(" (" (" (" (" (" (" M(" (" (#QA<F=U;65N=',O/ T*(" (" (" (" (" (" (" (" M;&5M96YT(CX-"B (" (" (" (" (" (" (" (#QT87 M(" (" (" (" (" (" (" (" (" /'9A<BUR968 ;F%M93TB6$U, M"B (" (" (" (" (" (" (" (#QA M(" (" (" (" (" (" (" (" (" /'9A<BUR968 ;F%M93TB=W)I M"B (" (" (" (" (" (" /"]S96YD/ T*(" (" (" (" (" M(" (" \<F5T=7)N/ T*(" (" (" (" (" (" (" (" /'-E;F0 M;65S<V%G93TB=&]3=')I;F<B/ T*(" (" (" (" (" (" (" (" M(" (#QT87 M(#QV87(M<F5F(&YA;64](G=R:71E<B(O/ T*(" (" (" (" (" (" M(" (" (" (#PO=&%R9V5T/ T*(" (" (" (" (" (" (" (" M(" (#QA<F=U;65N=',O/ T*(" (" (" (" (" (" (" (" /"]S M96YD/ T*(" (" (" (" (" (" (" \+W)E='5R;CX-"B (" (" M(" (" (" \;65T:&]D(&YA;64](FIA=F$R6$U,(B!V:7-I8FEL:71Y/2)P M;F%M93TB:F%V84-O9&4B/ T*(" (" (" (" (" (" (" (" /'1Y M;6%L+6%R9W5M96YT/ T*(" (" (" (" (" (" (" \9F]R;6%L+6%R M(" (" \='EP92!N86UE/2)3=')I;F<B+SX-"B (" (" (" (" (" M86PM87)G=6UE;G1S/ T*(" (" (" (" (" (#QT:')O=W, 97AC97!T M/ T*(" (" (" (" (" (" (" \;&]C86PM=F%R:6%B;&4 ;F%M93TB M<F5A9&5R(CX-"B (" (" (" (" (" (" (" (#QT>7!E(&YA;64] M(E-T<FEN9U)E861E<B(O/ T*(" (" (" (" (" (" (" (" /&YE M=SX-"B (" (" (" (" (" (" (" (" (" \='EP92!N86UE/2)3 M=')I;F=296%D97(B+SX-"B (" (" (" (" (" (" (" (" (" \ M87)G=6UE;G1S/ T*(" (" (" (" (" (" (" (" (" (" (" \ M=F%R+7)E9B!N86UE/2)J879A0V]D92(O/ T*(" (" (" (" (" (" M(" (" (" (#PO87)G=6UE;G1S/ T*(" (" (" (" (" (" (" M/2)X;6PB/ T*(" (" (" (" (" (" (" (" /'1Y<&4 ;F%M93TB M25A-3$5L96UE;G0B+SX-"B (" (" (" (" (" (" (" (#QS96YD M(" (" (" /&%R9W5M96YT<SX-"B (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (#QV87(M<F5F(&YA;64](F-L87-S3F%M M92(O/ T*(" (" (" (" (" (" (" (" (" (#PO87)G=6UE;G1S M/ T*(" (" (" (" (" (" (" (" /"]S96YD/ T*(" (" (" M(" (" (" (" \+VQO8V%L+79A<FEA8FQE/ T*(" (" (" (" (" M(" (" \;&]C86PM=F%R:6%B;&4 ;F%M93TB=W)I=&5R(CX-"B (" (" M(" (" (" (" (" (#QT>7!E(&YA;64](E-T<FEN9U=R:71E<B(O/ T* M(" (" (" (" (" (" (" (" /&YE=SX-"B (" (" (" (" M(" (" (" (" (" \='EP92!N86UE/2)3=')I;F=7<FET97(B+SX-"B M(" (" (" (" (" (" (" (" (" \87)G=6UE;G1S+SX-"B (" M(" (" (" (" (" (" (#PO;F5W/ T*(" (" (" (" (" (" M(" \+VQO8V%L+79A<FEA8FQE/ T*(" (" (" (" (" (" (" \<V5N M(" (" (" \=&%R9V5T/ T*(" (" (" (" (" (" (" (" (" M(#QV87(M<F5F(&YA;64](EA-3$AE;'!E<B(O/ T*(" (" (" (" (" M87)G=6UE;G1S/ T*(" (" (" (" (" (" (" (" (" (#QV87(M M<F5F(&YA;64](GAM;"(O/ T*(" (" (" (" (" (" (" (" (" M(#QV87(M<F5F(&YA;64](G=R:71E<B(O/ T*(" (" (" (" (" (" M9#X-"B (" (" (" (" (" (" /')E='5R;CX-"B (" (" (" M(" (" (" (" (#QS96YD(&UE<W-A9V4](G1O4W1R:6YG(CX-"B (" M(" (" (" (" (" (" (" (" \=&%R9V5T/ T*(" (" (" (" M(" (" (" (" (" (" (" \=F%R+7)E9B!N86UE/2)W<FET97(B+SX- M"B (" (" (" (" (" (" (" (" (" \+W1A<F=E=#X-"B (" M(" (" (" (" (" (" (" (" \87)G=6UE;G1S+SX-"B (" (" M(" (" (" (" (" (#PO<V5N9#X-"B (" (" (" (" (" (" M(" (#PO;65T:&]D/ T*(" (" (" (" /&UE=&AO9"!N86UE/2)C;VYV M97)T5&]834PB('9I<VEB:6QI='D](G!U8FQI8R( <W1A=&EC/2)T<G5E(CX- M"B (" (" (" (" (" \='EP92!N86UE/2))6$U,16QE;65N="(O/ T* M(" (" (" (" (" (#QF;W)M86PM87)G=6UE;G1S/ T*(" (" (" M"B (" (" (" (" (" (" (" (#QT>7!E(&YA;64](E)E861E<B( M9&EM96YS:6]N<STB,2(O/ T*(" (" (" (" (" (" (" \+V9O<FUA M;"UA<F=U;65N=#X-"B (" (" (" (" (" (" /&9O<FUA;"UA<F=U M;65N="!N86UE/2)C;&%S<TYA;65S(CX-"B (" (" (" (" (" (" M(" (#QT>7!E(&YA;64](E-T<FEN9R( 9&EM96YS:6]N<STB,2(O/ T*(" M(" (" (" (" (" (" \+V9O<FUA;"UA<F=U;65N=#X-"B (" (" M/'1H<F]W<R!E>&-E<'1I;VX](DI834Q%>&-E<'1I;VXB+SX-"B (" (" M(" (" (" (" (" (" (" (#QT97-T/ T*(" (" (" (" (" M(" (" (" (" (#QB:6YA<GDM97AP<B!O<#TB?'PB/ T*(" (" (" M(" (" (" (" (" (" (" (" \8FEN87)Y+65X<'( ;W ](GQ\(CX- M"B (" (" (" (" (" (" (" (" (" (" (" (#QB:6YA<GDM M97AP<B!O<#TB/3TB/ T*(" (" (" (" (" (" (" (" (" (" M(" (" (" (#QV87 M(" (" (" (" (" (" (" (" (" (" (" /&QI=&5R86PM;G5L M;F%R>2UE>'!R/ T*(" (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" /'9A<BUR968 ;F%M93TB8VQA<W-.86UE M<R(O/ T*(" (" (" (" (" (" (" (" (" (" (" (" (" M(#QL:71E<F%L+6YU;&PO/ T*(" (" (" (" (" (" (" (" (" M(" (" (" /"]B:6YA<GDM97AP<CX-"B (" (" (" (" (" (" M(" (" (" (" /"]B:6YA<GDM97AP<CX-"B (" (" (" (" (" M(" (" (" (" (" (" (" (" (" (" \9FEE;&0M86-C97-S(&9I M96QD/2)L96YG=& B/ T*(" (" (" (" (" (" (" (" (" (" M(" (" (" (#QV87 M(" (" (" (" (" (" (" (" (" (" \+V9I96QD+6%C8V5S<SX- M"B (" (" (" (" (" (" (" (" (" (" (" (#QF:65L9"UA M(" (" (" (" (" (" /'9A<BUR968 ;F%M93TB8VQA<W-.86UE<R(O M/ T*(" (" (" (" (" (" (" (" (" (" (" (" /"]F:65L M:6YA<GDM97AP<CX-"B (" (" (" (" (" (" (" (#PO=&5S=#X- M"B (" (" (" (" (" (" (" (#QT M(" (" (" (" (" (" (" /'1H<F]W/ T*(" (" (" (" (" M(" (" (" (" (" (" \;F5W/ T*(" (" (" (" (" (" (" M(" (" (" (" (" /'1Y<&4 ;F%M93TB2EA-3$5X8V5P=&EO;B(O/ T* M(" (" (" (" (" (" (" (" (" (" (" (" /&%R9W5M96YT M<SX-"B (" (" (" (" (" (" (" (" (" (" (" (" (" \ M;&ET97)A;"US=')I;F< =F%L=64](B));&QE9V%L($%R9W5M96YT<R!P87-S M+V%R9W5M96YT<SX-"B (" (" (" (" (" (" (" (" (" (" M"B (" (" (" (" (" (" (" (#PO=')U92UC87-E/ T*(" (" M(" (" (" (" (" \+VEF/ T*(" (" (" (" (" (" (" \;&]C M(" (" (" \='EP92!N86UE/2))6$U,16QE;65N="(O/ T*(" (" (" M(" (" (" (" (" /&YE=SX-"B (" (" (" (" (" (" (" M(" (" (" \+VYE=SX-"B (" (" (" (" (" (" /"]L;V-A;"UV M87)I86)L93X-"B (" (" (" (" (" (" /'-E;F0 ;65S<V%G93TB M(" (" (" (" (" (" (" (" (" (#QV87(M<F5F(&YA;64](F5L M96UE;G0B+SX-"B (" (" (" (" (" (" (" (#PO=&%R9V5T/ T* M(" (" (" (" (" (" (" (" /&%R9W5M96YT<SX-"B (" (" M(" (" (" (" (" (" (" \;&ET97)A;"US=')I;F< =F%L=64](B)J M879A+7-O=7)C92UP<F]G<F%M(B(O/ T*(" (" (" (" (" (" (" M"B (" (" (" (" (" (" /&QO;W :VEN9#TB9F]R(CX-"B (" M(" (" (" (" (" (" (#QI;FET/ T*(" (" (" (" (" (" M(" (" (" (#QL;V-A;"UV87)I86)L92!N86UE/2)I(CX-"B (" (" M(" (" (" (" (" (" (" (" /'1Y<&4 <')I;6ET:79E/2)T<G5E M(B!N86UE/2)I;G0B+SX-"B (" (" (" (" (" (" (" (" (" M(" /&QI=&5R86PM;G5M8F5R(&MI;F0](FEN=&5R9V5R(B!V86QU93TB,"(O M/ T*(" (" (" (" (" (" (" (" (" (#PO;&]C86PM=F%R:6%B M(" (" (" (" (" (" \=&5S=#X-"B (" (" (" (" (" (" M(" (" (" \8FEN87)Y+65X<'( ;W ](CPB/ T*(" (" (" (" (" M(" (" (" (" (" (" (" (" (#QF:65L9"UA8V-E<W, 9FEE;&0] M(" \=F%R+7)E9B!N86UE/2)J879A0V]D92(O/ T*(" (" (" (" (" M(" (" (" (" (" (" \+V9I96QD+6%C8V5S<SX-"B (" (" (" M(" (" (" (" (" (" \+V)I;F%R>2UE>'!R/ T*(" (" (" (" M(" (" (" (" /"]T97-T/ T*(" (" (" (" (" (" (" (" M/'5P9&%T93X-"B (" (" (" (" (" (" (" (" (" \=6YA<GDM M97AP<B!O<#TB*RLB('!O<W0](G1R=64B/ T*(" (" (" (" (" (" M(" (" (" (" (" (" /"]U;F%R>2UE>'!R/ T*(" (" (" (" M+79A<FEA8FQE(&YA;64](F5L96TB/ T*(" (" (" (" (" (" (" M(" (" (" (" \='EP92!N86UE/2))6$U,16QE;65N="(O/ T*(" (" M(" (" (" (" (" (" (" (" (" \<V5N9"!M97-S86=E/2)C;VYV M97)T5&]834PB/ T*(" (" (" (" (" (" (" (" (" (" (" M(" /&%R9W5M96YT<SX-"B (" (" (" (" (" (" (" (" (" M(" (" (" (" \87)R87DM<F5F/ T*(" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" \8F%S93X-"B (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (#QV87(M<F5F(&YA M(" (" (" (" (" (#PO8F%S93X-"B (" (" (" (" (" (" M(" (" (" (" (" (" (" (" /&]F9G-E=#X-"B (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" (#QV87(M<F5F M(&YA;64](FDB+SX-"B (" (" (" (" (" (" (" (" (" (" M(" (" (" (" (" (" (" (" (" /&%R<F%Y+7)E9CX-"B (" M(" (" (" (" (" (" (" (" (" (" (" (" (" /&)A<V4^ M(" (" (" (" (" (" (" (" (" (" (" (#PO8F%S93X-"B M(" (" (" (" (" (" (" (" (" (" (" (" (" (" /&]F M9G-E=#X-"B (" (" (" (" (" (" (" (" (" (" (" (" M(" (" (" (#QV87(M<F5F(&YA;64](FDB+SX-"B (" (" (" (" M(" (" (" (" (" (" (" (" (" (" (" (" /"]A<G)A>2UR M9W5M96YT<SX-"B (" (" (" (" (" (" (" (" (" (" /"]S M96YD/ T*(" (" (" (" (" (" (" (" (" (#PO;&]C86PM=F%R M<V%G93TB861D0VAI;&0B/ T*(" (" (" (" (" (" (" (" (" M(" (" \=&%R9V5T/ T*(" (" (" (" (" (" (" (" (" (" M(" (" /'9A<BUR968 ;F%M93TB96QE;65N="(O/ T*(" (" (" (" M(" (" (" (" (" (" (" \+W1A<F=E=#X-"B (" (" (" (" M(" (" (" (" (" (" /&%R9W5M96YT<SX-"B (" (" (" (" M(" (" (" (" (" (" (" (#QV87(M<F5F(&YA;64](F5L96TB+SX- M"B (" (" (" (" (" (" (" (" (" (" /"]A<F=U;65N=',^ M(" (" (" (" (" (" /"]B;&]C:SX-"B (" (" (" (" (" M(" /"]L;V]P/ T*(" (" (" (" (" (" (" \<F5T=7)N/ T*(" M(" (" (" (" (" (" (" /'9A<BUR968 ;F%M93TB96QE;65N="(O M/ T*(" (" (" (" (" (" (" \+W)E='5R;CX-"B (" (" (" M(" (" \;65T:&]D(&YA;64](F-O;G9E<G14;UA-3"( =FES:6)I;&ET>3TB M<'5B;&EC(B!S=&%T:6,](G1R=64B/ T*(" (" (" (" (" (#QT>7!E M='EP92!N86UE/2)296%D97(B+SX-"B (" (" (" (" (" (" /"]F M87)G=6UE;G0 ;F%M93TB8VQA<W-.86UE(CX-"B (" (" (" (" (" M(" (" (#QT>7!E(&YA;64](E-T<FEN9R(O/ T*(" (" (" (" (" M(" (" \+V9O<FUA;"UA<F=U;65N=#X-"B (" (" (" (" (" \+V9O M<'1I;VX](DI834Q%>&-E<'1I;VXB+SX-"B (" (" (" (" (" \8FQO M86UE/2))6$U,16QE;65N="(O/ T*(" (" (" (" (" (" (" (" M(" (" (" /'1A<F=E=#X-"B (" (" (" (" (" (" (" (" M(" (" /'9A<BUR968 ;F%M93TB2F%V85!A<G-E<B(O/ T*(" (" (" M(" (" (" (" (" (" (#PO=&%R9V5T/ T*(" (" (" (" (" M(" (" (" (" (#QA M(" (" (" (" (#QV87(M<F5F(&YA;64](F-O9&4B+SX-"B (" (" M(" (" (" (" (" (" (" \+V%R9W5M96YT<SX-"B (" (" (" M(" (" (" (" (#PO<V5N9#X-"B (" (" (" (" (" (" /"]L M;V-A;"UV87)I86)L93X-"B (" (" (" (" (" (" /&EF/ T*(" M(" (" (" (" (" (" (" (#QV87(M<F5F(&YA;64](F-L87-S3F%M M92(O/ T*(" (" (" (" (" (" (" (" (" (" (" \;&ET97)A M;"UN=6QL+SX-"B (" (" (" (" (" (" (" (" (" \+V)I;F%R M>2UE>'!R/ T*(" (" (" (" (" (" (" (" /"]T97-T/ T*(" M(" (" (" (" (" (" (" /'1R=64M8V%S93X-"B (" (" (" M(" (" (" (" (" (" \<V5N9"!M97-S86=E/2)S971!='1R:6)U=&4B M/ T*(" (" (" (" (" (" (" (" (" (" (" \=&%R9V5T/ T* M(" (" (" (" (" (" (" (" (" (" (" (" /'9A<BUR968 M;F%M93TB:F%V84-O9&4B+SX-"B (" (" (" (" (" (" (" (" M(" (#QA M(" (" (" \;&ET97)A;"US=')I;F< =F%L=64](B)N86UE(B(O/ T*(" M(" (" (" (" (" (" (" (" (" (" (" /'9A<BUR968 ;F%M M(" (#PO87)G=6UE;G1S/ T*(" (" (" (" (" (" (" (" (" M(#PO<V5N9#X-"B (" (" (" (" (" (" (" (#PO=')U92UC87-E M/ T*(" (" (" (" (" (" (" \+VEF/ T*(" (" (" (" (" M(" (" \<F5T=7)N/ T*(" (" (" (" (" (" (" (" /'9A<BUR M968 ;F%M93TB:F%V84-O9&4B+SX-"B (" (" (" (" (" (" /"]R M(#PO;65T:&]D/ T*(" (" (" \+V-L87-S/ T*(" (#PO:F%V82UC;&%S A<RUF:6QE/ T*/"]J879A+7-O=7)C92UP<F]G<F%M/ T* ` end
Feb 24 2006
Hi bobef, attached a java file and its xml representation. zipped bjoern "bobef" <bobef lessequal.com> schreef in bericht news:dtl38g$13dh$1 digitaldaemon.com...BLS wrote: If someone is looking for a samplebegin 666 Java2XML.zip MWW/3.!!^)G_%DA?<DCH4W B= >G 4.;X,84;;H;A0;$WL8IM^22Y:>;H_WZ[ MO?V#Y*>J6FNYS"Q$IP?P6FB3P1LARPF\R',X9XF!<S2H+S&-:<++0L <GD+& MJL_=WPO2CQ-5W+MW[S/.C;3(<FNKI]/I:K6*>TK3SBVC%G8E=..:5I<RQ10> M"',DS8,)K*3-5&U!E&O JTJC,: TR*+*)>G11"U*NV:?SDHH%> EEI:FD=\V M] ?4A31&JI)]7K(#Y(I5;%&5R)]X<F]FNV*IRB,*0($ZD2*G]("H:"^)L&2/ MDJ01\_4$3#V_P,2R+=[&0N6Y6K&'% &K9<+:C3=P'%, R5=*H"QW7(:B-I96 MM1P"<ELC!Q'9Y1FL5=W*V10]22XDAT!8)UUI9=&YT- GE]M P-G"Z>QN5I;> MFN"4IG5B)[1Y$,FW4JUR3)<%)XF\9<->`U*5U#SN M])SP0*OQGC3^74OM,,F*CV,"K$4:(%]JG2!<HC8NL&Z;%(**]E?F:RB$_D9J M KRNDXS=2\-0^67[`6/M.7(6A /2./$D;H!-AF32C[_&0E$%,8*%]],ACH'A M'4XEYY>VV";X%6G7IEEU&U$!DJI:5\KP!E'0*U$420906P1<(VQP.AI5E G" M?5.^,1.!55=%/AN-J+ 4T<.6('YYE6#E$!J_(<IHO\[V34B%%?$9J^;(2;U9 M\0YZ5&8%Y2Q^0R,?2(:Z\Y:U8JGB5\1P[Y1]I>HRW74QU'I?VZJV'ZU&40PJ MG*-(>8DMT=G[_78_:%GN,[G''&E37F\4?M;$I+S7Z>'A"#QGTC_.*Y%PR05+ MG+C*9))M^)- P 1)"DB)3PVSR!)+U,+7,L4;6ER[>F/3CCIP`\1$I53B/,[_ MOA(-+\T!:8-_Y (B'HMS+)<V V=P?-!)^?FX-A:+F%I$7''\\S(:_VD(VT]= M'.'H0NBFTS&(^ NWP6,'+/?Q<??Q2?,QYF=\,&O7N<;<8/NMO[[5Z_X`/QV M:$_:?3!P`B6N0E&PL:^S'1L[`USND63:/'DTD\^\66] )A\^/-AUA!^O^$5^ MW7'!Q98$![-;5[^&6YZ=&4'Q`_KW"=,28<9^4B2-O&N3)N^SP3B&E4HQJ&VP M<5H751>-R$=CXORXXX),`Q:IO;M-<D'?O%TV'2_RVF31 '1QH]3-37)J)GOG M#DJOZ1 M]C1^ P_P T_';Z.=H5$W[OZXYL,/WQ5<!;OS'!V^U]PV I;AF-1U'+Y:^#G; MAK/Q8 +M4+=ZD\&]:_7;U,;2IE7=/PDL^<$^))QA1T(]V]'XA5ZZ S"U\<R? M CG(=-2E8UYC*2SY/9W&#V_Y MXSZ0-_C?`_\[PO[7HGX'\]W"=P9\F'8/BIL`0>>+'P-! ('_!P3V\>+6GUMH M>3-DFCLKW_>;'ST\;_ /+]YANMBZH^W9K760_'KZO 7^SH7_0*&A^0[]T/V\ M$?M%H\0Q:*]<VN7NGW!=]/'>0H: ]\(V/R81_DI2'T^&>-6G<S.OE\_KT;]0 M2P,$% `"`` `]&!8-';[XF*)" ``](8```H```!O=71P=70N>&UL[5U+C]LV M$+X7Z'] = UD->DMD L$0=,F:![HMF /N= 2;3/1JQ3E70/Y\25E>]=V]) A MC&0T97,O>O'I,.&G-17ENKZ4N;Z^?9+^X.WGJ><J:/2%KI ?LRC93U0/GMT. M]H+C[_.TR(4D:1Y7R;??G?UZ$[%"\CPK9V_5F]Y>HB:)J:2S-WIXPE*62?Q MP[&:R2D5,RVHC^I_3'0.KT7&\]EK)83WN7R=5UD,>^/CD1\J653R2 I&4_" M/QF- =2]^8"CZ:/ &88<!"EJ5IZMT /^$5R>#ZCAOP?L0:\\LN$E7_"$R^W< MGC4258\,SI[81'P`H#Y<)'GTI>TI?-E)/2MEQ_]WT_.,BJW/; I!\F+NA5[/ MB!T[.4MBGT814Z"I+^9>PK*57$.&UU-LJ/ %6QY+(H \.CA^-F1 HL&NN)Q5 MLBPFJ6*(,CU*Y_2*DV1 44C%?2:!WVZ5?UY)#S MQF'?ZM()N[)>-PXP\_[6(GI!](),_,]4D"-70A#M MSP.S* PPM(>!QE&_&O2 4K$7`/!P29/2L1I(L84R!CKGG3SS2$E3`9;3Q:V/ M*&K36Z)Q?V17CKP/H&UIG35CU\J6"+H]FP Y3P>% <E4BIB^-7- 8^/2`#E; MA4XG,&12&-P*';5JGJ(9IP=YL3>BRGU!(Y]G7)HPJ%']N"D`=O ^]S /LY[M M<G!T KR-G\PTR5QLN^$&S(<XD>X<2X"B<G/97&0A.9B$$=<2F)]JY+LV#JJ* MF$IF0FIUBI&G3]6V+R]E^S;Q8H ) \J<B48,0;LD=_YI6?)5IKV\.U;.C;F7 MU&N4C4+4YDA+P&*2'4?ZG<,1-/1(T>SI"_/ELF32_5MR!^]G39O>?]AA0=D\ M&SQJG]B&?G=NL-5N<E U<ZEJKCUKY_KF5N<&T3M'NN=&__!1A-9MBI$5/K-M M:%.,WN<'>H-C'1A ^],2B\! VX$-:)[3 &"49QLFY%^Y#NH;>1BV\G?L(SM: M*BS!U7;F>2%<V3Q^B/6NUM6'"R&KTZ<[^6%/H3KC. 8`;A&>P:F4DU .\I3* M"7;;EL(K18K4-PHJ2GT,CM=J(R3CS>PI%N,J+8[<J,M!\A1"BH3?65(8[!Q' M`<$I\<S0!VV8JC!9!\=!SK2*/;Q53.<]29:1G6-'9$YL7+QQ<+E,JG(]VD)F M?&_*:NM8D[-+-QZ7'7Z'\+S<>E_6'IB%BKF)A9R*65'Q;O?9BK]6$F_;Z= = M[ 76-)DM:5;F8X10> ,HV V7(RB^PRW2B/KE*L%]9% C6V L;;WPC3WES5- M)GHRT9.)GDST9*(G$SV9Z!%,=%MM[V28)\,\&>;),$^&>3+,C\DPZU+>K8." MX-Y:WS!H;&70/'<8[)I.=+:B^-S5Q +5CF+?^6& _A.:QE=YS,;K0=%!7-T1 MY+WZ>.];9,BUR*]+P ZN&^04Y-)]-9[,QVFL<0NQ89IK.*?W"'7.*1ZA T<- M-+=9"ZU0:(Y$:S0:(!*/RJ'\;GCE=G<$J;,BN]D1TOG\0-\;6F5M45&-TB^+ M==9\)PT3?V=4$NX'-\CK>M>0%A5F:FAB:["(<+/V[HTA0HQTPKVF#Q?:-* MI_ZW\F *XD,I<1FUOR Y8T7I.V)ON+<'.,Q&M 0:8K-P$,!^,-3&VQNL1^&2 M67EDDT,V.6230S8Y9-^?0W:RR%H[97TK_84],]PYW)1><8_2*[Y^!<76S88U M#IVC.NRZB M;:A*)OOC5P8[*4 ?,Z?[J!:-:/ A2F_0O=*4>D0LT+E7]BGU:$H],I3(I5./ M6LT/7$?-.I [Z#H^Y:+T#WK N2CW0:*&>]9)IHY\>-#O4*(:5I^M332.7ZUY M9P%[4&%W0C[8&9C^W?B/5)1#G(,9G+:[S(IP<- ^6DVI:1(". H_0 #UF M2ZG6AD4EV>"6';DE'M"TMP2:-)F(,*L53%QZ"3:A5ZR?T"M$%XY"&-3<W-\) M```-``````````$`( ````````!*879A,EA-3"YJ879A4$L!`A0`% `"`` ` M]&!8-';[XF*)" ``](8```H``````````0` ```` 8``&]U='!U="YX;6Q0 52P4&``````(`` !S````,0\````` ` endtranslation let me know. Bjoern Lietz-SpendigIt would be nice if you could post one here...
Feb 24 2006
Seems interesting task to convert this to D, but I suggest before anyone take it we list all the specific cases which looks the same but are handled different in Java. My knowledge of Java is almost non existent, so I ask everyone who know such cases to post them here, because I believe this will be tricky and may cause a lot of trouble. One thing I know if is this http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D/27876 .
Feb 24 2006
thanks for feedback, sorry but i am not able to offer more because the IDE needs all of my time. but i agree, it is nessesary first to collect differences between Java and D. Bjoern bobef" <bobef lessequal.com> schreef in bericht news:dtmts5$1m1g$1 digitaldaemon.com...Seems interesting task to convert this to D, but I suggest before anyone take it we list all the specific cases which looks the same but are handled different in Java. My knowledge of Java is almost non existent, so I ask everyone who know such cases to post them here, because I believe this will be tricky and may cause a lot of trouble. One thing I know if is this http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D/27876 .
Feb 24 2006
bobef wrote:Seems interesting task to convert this to D, but I suggest before anyone take it we list all the specific cases which looks the same but are handled different in Java. My knowledge of Java is almost non existent, so I ask everyone who know such cases to post them here, because I believe this will be tricky and may cause a lot of trouble. One thing I know if is this http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D/27876 .Yup, Java has very specific order of evaluation constraints in the spec, while D intentionally doesn't, but there are other problems as well, and almost all of them involve some trickiness, in random order: - in Java, arrays are also Objects; while it would be possible to somewhat fake such an array using a templated object, it still wouldn't be the same - a SomeClass[] is also implicitly castable to Object[] in Java, while I know of no way to make Array!(SomeClass) inherit from Array!(Object) (except having a static field in each Java class naming the super class; and supporting interfaces in this manner is still impossible) - interfaces are handled totally differently, mostly meaning that in Java it's always the case that "cast(Interface)obj" is exactly the same reference as "cast(Class)obj". In D, an interface reference points somewhere else (though not far :). While implicit casting works for single references, casting arrays totally doesn't work, and last time I checked, one couldn't even call Object's methods on interface references. - D's Object.toString() returns char[], not a String object, and you can't override it in some other base class :) - in Java, you can wait(), notify() and notifyAll() on any object, not so in D - Java's RTTI/reflection is waaay stronger than D's, and is commonly used. Runtime class loading support is also rather sophisticated.. - Java has Soft, Weak and Phantom references (which are similar to normal references, except they don't prevent an object from being GCed), and worse - you can also listen for the referred-to objects' destruction - Java's standard library is huge and highly self-interdependent; even something as simple as a String references huge amounts of Unicode-related code, if you want a full implementation (and you do, because equalsIgnoreCase() is used often) - operators don't have the same precedence (not all of them, anyway) - lifetime of classes is different - in D, all static initialization occurs at program startup, while in Java, it occurs when a class is first needed (you're also allowed cyclic dependences), which means a lot of static initializers contain relatively expensive code, as it's not a problem. Furthermore, you're allowed cyclic dependences between classes. - in Java, you can have a package, class, variable and method all share the same name, while in D you can't. Combine all these, and I don't think there's a way to mechanically translate Java code into something that is - 100% equal in meaning - readable - maintainable So I guess the best that could be done is to 1) convert the syntax to what works in simple cases and actually looks like D, and 2) prominently mark all the places where it is not certain that the resulting code will work properly, for human inspection 3) store the original Java code somewhere handy, for comparison to newer versions I just fear that more time would be spent on a decent tool to do these, than would actually be saved by using it (I don't expect a huge number of Java code will ever be ported to D in such a manner) OTOH, no-one would expect readable/maintainable code if it was converted from bytecode? It would be really easy, too :) xs0
Feb 27 2006
xs0 wrote:bobef wrote:I started to implement such tool an came to the same conclusions. Briefly thisSeems interesting task to convert this to D, but I suggest before anyone take it we list all the specific cases which looks the same but are handled different in Java. My knowledge of Java is almost non existent, so I ask everyone who know such cases to post them here, because I believe this will be tricky and may cause a lot of trouble. One thing I know if is this http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D/27876 .Yup, Java has very specific order of evaluation constraints in the spec, while D intentionally doesn't, but there are other problems as well, and almost all of them involve some trickiness, in random order: - in Java, arrays are also Objects; while it would be possible to somewhat fake such an array using a templated object, it still wouldn't be the same - a SomeClass[] is also implicitly castable to Object[] in Java, while I know of no way to make Array!(SomeClass) inherit from Array!(Object) (except having a static field in each Java class naming the super class; and supporting interfaces in this manner is still impossible) - interfaces are handled totally differently, mostly meaning that in Java it's always the case that "cast(Interface)obj" is exactly the same reference as "cast(Class)obj". In D, an interface reference points somewhere else (though not far :). While implicit casting works for single references, casting arrays totally doesn't work, and last time I checked, one couldn't even call Object's methods on interface references. - D's Object.toString() returns char[], not a String object, and you can't override it in some other base class :) - in Java, you can wait(), notify() and notifyAll() on any object, not so in D - Java's RTTI/reflection is waaay stronger than D's, and is commonly used. Runtime class loading support is also rather sophisticated.. - Java has Soft, Weak and Phantom references (which are similar to normal references, except they don't prevent an object from being GCed), and worse - you can also listen for the referred-to objects' destruction - Java's standard library is huge and highly self-interdependent; even something as simple as a String references huge amounts of Unicode-related code, if you want a full implementation (and you do, because equalsIgnoreCase() is used often) - operators don't have the same precedence (not all of them, anyway) - lifetime of classes is different - in D, all static initialization occurs at program startup, while in Java, it occurs when a class is first needed (you're also allowed cyclic dependences), which means a lot of static initializers contain relatively expensive code, as it's not a problem. Furthermore, you're allowed cyclic dependences between classes. - in Java, you can have a package, class, variable and method all share the same name, while in D you can't. Combine all these, and I don't think there's a way to mechanically translate Java code into something that is - 100% equal in meaning - readable - maintainable So I guess the best that could be done is to 1) convert the syntax to what works in simple cases and actually looks like D, and 2) prominently mark all the places where it is not certain that the resulting code will work properly, for human inspection 3) store the original Java code somewhere handy, for comparison to newer versions I just fear that more time would be spent on a decent tool to do these, than would actually be saved by using it (I don't expect a huge number of Java code will ever be ported to D in such a manner) OTOH, no-one would expect readable/maintainable code if it was converted from bytecode? It would be really easy, too :) xs0I just fear that more time would be spent on a decent tool to do these, than would actually be saved by using it (I don't expect a huge number of Java code will ever be ported to D in such a manner)
Feb 27 2006