[m-dev.] Re: Pretty Printer <now with added files...>

Ralph Becket rbeck at microsoft.com
Thu Apr 6 21:03:49 AEST 2000


Oops.

--
Ralph Becket      |      MSR Cambridge      |      rbeck at microsoft.com 


begin 600 pprint.m
M)2`M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM("4-"B4@<'!R:6YT
M+FT-"B4 at 4F%L<&@@0F5C:V5T(#QR8F5C:T!M:6-R;W-O9G0N8V]M/@T*)2!7
M960 at 36%R(#(R(#$W.C0T.C,R("`R,#`P#0HE('9I.B!T<STT('-W/30 at 970@
M='<],"!W;3TP#0HE#0HE(%1H:7, at 9FEL92!M87D@;VYL>2!B92!C;W!I960@
M=6YD97(@=&AE('1E<FUS(&]F('1H92!'3E4 at 3&EB<F%R>2!'96YE<F%L#0HE
M(%!U8FQI8R!,:6-E;G-E("T@<V5E('1H92!F:6QE($-/4%E)3D<N3$E"(&EN
M('1H92!-97)C=7)Y(&1I<W1R:6)U=&EO;BX-"B4-"B4-"B4 at 5&AI<R!I<R!P
M<F5T='D@;75C:"!A(&1I<F5C="!T<F%N<VQI=&5R871I;VX@;V8 at 4&AI;&EP
M(%=A9&QE<B=S#0HE($AA<VME;&P@<')E='1Y('!R:6YT97(@9&5S8W)I8F5D
M(&EN(")!(%!R971T:65R(%!R:6YT97(B+"!A=F%I;&%B;&4-"B4 at 870@:'1T
M<#HO+V-M+F)E;&PM;&%B<RYC;VTO8VTO8W,O=VAO+W=A9&QE<B]T;W!I8W,O
M<F5C96YT+FAT;6P-"B4-"B4 at 5V%D;&5R)W, at 87!P<F]A8V@@:&%S('1H<F5E
M(&UA:6X at 861V86YT86=E<SH-"B4@,2X@=&AE(&QA>6]U="!A;&=E8G)A(&ES
M('-M86QL(&%N9"!Q=6ET92!I;G1U:71I=F4@*&UO<F4@<V\@=&AA;B!(=6=H
M97,G*3L-"B4@,BX@=&AE('!R971T>2!P<FEN=&5R(&ES(&]P=&EM86P@:6X@
M=&AE('-E;G-E('1H870@:70@=VEL;"!N979E<B!G96YE<F%T90T*)2`@("!O
M=71P=70@=&AA="!O=F5R+7)U;G,@=&AE('-P96-I9FEE9"!W:61T:"!U;FQE
M<W,@=&AA="!I<R!U;F%V;VED86)L93L at 86YD#0HE(#,N('1H92!P<F5T='D@
M<')I;G1E<B!I<R!B;W5N9&5D(&EN('1H870@:70@;F5V97(@;F5E9',@=&\@
M;&]O:R!M;W)E('1H86X-"B4@("`@:R!C:&%R86-T97)S(&%H96%D('1O(&UA
M:V4 at 82!F;W)M871T:6YG(&1E8VES:6]N("AA;'1H;W5G:"!S964@=&AE(%A8
M6`T*)2`@("!C;VUM96YT(&)E;&]W*2X-"B4-"B4 at 22!H879E(&UA9&4@='=O
M('-M86QL(&-H86YG97,Z(')A=&AE<B!T:&%N(&AA=FEN9R!G<F]U<"\Q(&%S
M(&$@;F]N+7!R:6UI=&EV90T*)2!F=6YC=&EO;B`H9F]R(&%L;&]W:6YG(&QI
M;F4M8G)E86MS('1O(&)E(&-O;G9E<G1E9"!I;G1O('-P86-E<R!A="!T:&4@
M<')E='1Y#0HE('!R:6YT97(G<R!D:7-C<F5T:6]N*2!O=F5R(&1O8W,L($D@
M:&%V92!E>'1E;F1E9"!T:&4 at 9&]C('1Y<&4@=&\@:6YC;'5D92!A#0HE("='
M4D]54"<@8V]N<W1R=6-T;W(@86YD(&%L=&5R960 at 9FQA='1E;B\Q(&%N9"!B
M92\S(&%P<')O<')I871E;'DN("!B96-A=7-E#0HE("=53DE/3B<@;VYL>2!A
M<FES97, at 87, at 82!C;VYS97%U96YC92!O9B!P<F]C97-S:6YG(&$@)T=23U50
M)R!I="!T=7)N<R!O=70@=&\-"B4 at 8F4@<VEM<&QE<B!T;R!D;R!A=V%Y('=I
M=&@@)U5.24].)R!A;'1O9V5T:&5R(&%N9"!C;VYV97)T(&-L875S97,@=&AA
M=`T*)2!P<F]C97-S("=53DE/3B<@=&5R;7,@=&\@<')O8V5S<VEN9R`G1U)/
M55`G<RX-"B4-"B4 at 5&AE('-E8V]N9"!C:&%N9V4@:7,@=&AA="!F;&%T=&5N
M960 at 8&QI;F4G(&)R96%K<R!B96-O;64 at 96UP='D@<W1R:6YG<R!R871H97(-
M"B4@=&AA;B!S<&%C97,N#0HE#0HE($D@:&%V92!A;'-O(&%D9&5D('-E=F5R
M86P@;V)V:6]U<R!G96YE<F%L('!U<G!O<V4 at 9F]R;6%T=&EN9R!F=6YC=&EO
M;G,N#0HE#0HE("TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T@)0T*
M#0HZ+2!M;V1U;&4@<'!R:6YT+ at T*#0HZ+2!I;G1E<F9A8V4N#0H-"CHM(&EM
M<&]R=%]M;V1U;&4@:6YT+"!S=')I;F<L(&QI<W0L(&EO+ at T*#0H@("`@)2!#
M;&EE;G1S(&UU<W0@=')A;G-L871E(&1A=&$@<W1R=6-T=7)E<R!I;G1O(&1O
M8W, at 9F]R#0H@("`@)2!T:&4@<')E='1Y('!R:6YT97(@=&\@9&ES<&QA>2X-
M"B`@("`E#0HZ+2!T>7!E(&1O8RX-"@T*.BT at 9G5N8R!N:6P@("`@("`@("`@
M("`@("`@(#T at 9&]C+B`@)2!%;7!T>2!D;V-U;65N="X-"CHM(&9U;F, at 9&]C
M(&`\/F`@9&]C("`@("`@("`](&1O8RX@("4 at 0V]M<&]S:71I;VX@;V8@='=O
M(&1O8W,N#0HZ+2!F=6YC(&YE<W0H:6YT+"!D;V,I("`@("`@/2!D;V,N("`E
M($9O;&QO=R!N97=L:6YE<R!I;B!D;V,@=VET:"!I;F1E;G1A=&EO;BX-"CHM
M(&9U;F,@=&5X="AS=')I;F<I("`@("`@("`](&1O8RX@("4 at 0V]N=F5R="!A
M('-T<FEN9R!I;G1O(&$@9&]C+ at T*.BT at 9G5N8R!L:6YE("`@("`@("`@("`@
M("`@(#T at 9&]C+B`@)2!.97<M;&EN92`H=6YL97-S(&9L871T96YE9"!O=70I
M+ at T*.BT at 9G5N8R!P;VQY*'-T<FEN9U]?<&]L>5]T>7!E*2`](&1O8RX@)2!#
M;VYV97)T(&%N(%MS:69C72A?*2!I;G1O(&$@<W1R:6YG+ at T*.BT at 9G5N8R!G
M<F]U<"AD;V,I("`@("`@("`@(#T at 9&]C+B`@)2!!;&QO=R!A(&1O8W5M96YT
M('1O(&)E(&9L871T96YE9"X-"@T*("`@("4 at 02!W;W)D(&]F(&5X<&QA;F%T
M:6]N(&%B;W5T(&=R;W5P+S$N("!@9W)O=7`H1&]C*2<@9VEV97,@=&AE('!R
M971T>0T*("`@("4@<')I;G1E<B!T:&4@;W!T:6]N(&]F(&9I='1I;F<@1&]C
M(&]N=&\@;VYE(&QI;F4@:68@<&]S<VEB;&4 at 8GD@<F5M;W9I;F<-"B`@("`E
M(&%L;"!T:&4@;F5W+6QI;F5S(&%N9"!N97-T+7-P86-I;F<@9G)O;2!I=#L@
M:68@=&AI<R!D;V5S;B=T('=O<FL@=&AE;@T*("`@("4@=&AE('!R971T>2!P
M<FEN=&5R('=I;&P@:G5S="!I;G1E<G!R970 at 1&]C(&QI=&5R86QL>2`H;V8@
M8V]U<G-E+"!$;V,-"B`@("`E(&UA>2!C;VYT86EN(&]T:&5R(&!G<F]U<"=E
M9"!I=&5M<RXI#0H-"B`@("`E(%9A<FEO=7, at 8G)A8VME=&EN9R!F=6YC=&EO
M;G,N#0H@("`@)0T*.BT at 9G5N8R!B<F%C:V5T960H<W1R:6YG+"!S=')I;F<L
M(&1O8RD@(#T at 9&]C+ at T*.BT at 9G5N8R!P87)E;G1H97-E<RAD;V,I("`@("`@
M("`@("`@("`@(#T at 9&]C+ at T*.BT at 9G5N8R!B<F%C:V5T<RAD;V,I("`@("`@
M("`@("`@("`@("`@(#T at 9&]C+ at T*.BT at 9G5N8R!B<F%C97,H9&]C*2`@("`@
M("`@("`@("`@("`@("`@(#T at 9&]C+ at T*#0H@("`@)2!S97!A<F%T960H4%`L
M(%-%4"P at 6U@Q+"`N+BXL(%AN72D@/2!8,2!@/#Y@(%-%4"!@/#Y@("XN+B!3
M15`@8#P^8"!8;@T*("`@("4-"CHM(&9U;F,@<V5P87)A=&5D*&9U;F,H5"D@
M/2!D;V,L(&1O8RP@;&ES="A4*2D@/2!D;V,N#0H-"B`@("`E($AA;F1Y('!U
M;F-T=6%T:6]N(&1O8W, at 86YD('9E<G-I;VYS('=I=&@@9F]L;&]W:6YG(&QI
M;F4 at 8G)E86MS+ at T*("`@("4-"CHM(&9U;F, at 8V]M;6$@("`@("`@("`@("`@
M("`](&1O8RX-"CHM(&9U;F,@<V5M:6,@("`@("`@("`@("`@("`](&1O8RX-
M"CHM(&9U;F,@<W!A8V4@("`@("`@("`@("`@("`](&1O8RX-"CHM(&9U;F,@
M8V]M;6%?<W!A8V4@("`@("`@("`](&1O8RX-"CHM(&9U;F,@<V5M:6-?<W!A
M8V4@("`@("`@("`](&1O8RX-"CHM(&9U;F, at 8V]M;6%?;&EN92`@("`@("`@
M("`](&1O8RX-"CHM(&9U;F,@<V5M:6-?;&EN92`@("`@("`@("`](&1O8RX-
M"CHM(&9U;F,@<W!A8V5?;&EN92`@("`@("`@("`](&1O8RX-"CHM(&9U;F,@
M8V]M;6%?<W!A8V5?;&EN92`@("`](&1O8RX-"CHM(&9U;F,@<V5M:6-?<W!A
M8V5?;&EN92`@("`](&1O8RX-"@T*#0H@("`@)2!E+F<N($EF(&]N92!W86YT
M960@=&\@<')E='1Y('!R:6YT(&$@365R8W5R>2!L:7-T('1H96X@;VYE(&UI
M9VAT('=R:71E#0H@("`@)0T*("`@("4@("!B<F%C97,H;F5S="@R+"!S97!A
M<F%T960H<'!?;7E?;65M8F5R<RP at 8V]M;6%?<W!A8V5?;&EN92P at 37E,:7-T
M*2DI#0H@("`@)0T*("`@("4@=VAE<F4 at 8'!P7VUY7VUE;6)E<G,G(&ES(&$@
M9G5N8W1I;VX at 9G)O;2!->4QI<W0@;65M8F5R<R!T;R!D;V-S+ at T*#0H-"B`@
M("`E($-O;G9E<G0 at 9&]C<R!T;R!S=')I;F=S(&]R(&IU<W0@=W)I=&4@=&AE
M;2!O=70N#0H@("`@)2!4:&4@:6YT(&%R9W5M96YT('-P96-I9FEE<R!A('!A
M9V4@=VED=&@N#0H@("`@)0T*.BT at 9G5N8R!T;U]S=')I;F<H:6YT+"!D;V,I
M(#T@<W1R:6YG+ at T*#0HZ+2!P<F5D('=R:71E*&EN="P at 9&]C+"!I;U]?<W1A
M=&4L(&EO7U]S=&%T92DN#0HZ+2!M;V1E('=R:71E*&EN+"!I;BP at 9&DL('5O
M*2!I<R!D970N#0H-"CHM('!R960@=W)I=&4H:6]?7V]U='!U=%]S=')E86TL
M(&EN="P at 9&]C+"!I;U]?<W1A=&4L(&EO7U]S=&%T92DN#0HZ+2!M;V1E('=R
M:71E*&EN+"!I;BP@:6XL(&1I+"!U;RD@:7, at 9&5T+ at T*#0HE("TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T@)0T*)2`M+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM("4-"@T*.BT@:6UP;&5M96YT871I;VXN#0H-"CHM
M(&EM<&]R=%]M;V1U;&4@<W1D7W5T:6PL(&)O;VPN#0H-"CHM('1Y<&4 at 9&]C
M#0H@("`@+2TM/B`@("`G3DE,)PT*("`@(#L@("`@("`@)U-%42<H9&]C+"!D
M;V,I#0H@("`@.R`@("`@("`G3D535"<H:6YT+"!D;V,I("`@("`@("`@(`T*
M("`@(#L@("`@("`@)U1%6%0G*'-T<FEN9RD-"B`@("`[("`@("`@("=,24Y%
M)PT*("`@(#L@("`@("`@)T=23U50)RAD;V,I+ at T*#0HZ+2!T>7!E('-I;7!L
M95]D;V,-"B`@("`M+2T^("`@(&YI;`T*("`@(#L@("`@("`@<W1R:6YG(&!T
M97AT8"!S:6UP;&5?9&]C#0H@("`@.R`@("`@("!I;G0 at 8&QI;F5@('-I;7!L
M95]D;V,N#0H-"B4 at +2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2`E
M#0H-"FYI;"`@("`@("`@("`@("`@("`@("`@(#T@)TY)3"<N#0I8(&`\/F`@
M62`@("`@("`@("`@("`@("`]("=315$G*%@L(%DI+ at T*;F5S="A)+"!8*2`@
M("`@("`@("`@("`@/2`G3D535"<H22P at 6"DN#0IT97AT*%,I("`@("`@("`@
M("`@("`@("`]("=415A4)RA3*2X-"FQI;F4@("`@("`@("`@("`@("`@("`@
M(#T@)TQ)3D4G+ at T*9W)O=7`H6"D@("`@("`@("`@("`@("`@/2`G1U)/55`G
M*%@I+ at T*#0IP;VQY*',H4RDI("`@("`@("`@("`@("`]('1E>'0H<W1R:6YG
M7U]F;W)M870H(B5S(BP at 6W,H4RE=*2DN#0IP;VQY*&,H0RDI("`@("`@("`@
M("`@("`]('1E>'0H<W1R:6YG7U]F;W)M870H(B5C(BP at 6V,H0RE=*2DN#0IP
M;VQY*&DH22DI("`@("`@("`@("`@("`]('1E>'0H<W1R:6YG7U]F;W)M870H
M(B5D(BP at 6VDH22E=*2DN#0IP;VQY*&8H1BDI("`@("`@("`@("`@("`]('1E
M>'0H<W1R:6YG7U]F;W)M870H(B5F(BP at 6V8H1BE=*2DN#0H-"B4 at +2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2`E#0H-"G1O7W-T<FEN9RA7+"!8
M*2`](%, at .BT-"B`@("!P<F5T='DH<')E9"A(.CII;BP at 5#HZ:6XL(%M(('P@
M5%TZ.F]U="D@:7, at 9&5T+"!7+"!8+"!;72P at 4W,I+`T*("`@(%,@/2!S=')I
M;F=?7V%P<&5N9%]L:7-T*&QI<W1?7W)E=F5R<V4H4W,I*2X-"@T*=W)I=&4H
M5RP at 6"D@("`@("`@("`@("`@+2T^('!R971T>2AI;U]?=W)I=&5?<W1R:6YG
M+"!7+"!8*2X-"@T*=W)I=&4H4W1R96%M+"!7+"!8*2`@("`@+2T^('!R971T
M>2AI;U]?=W)I=&5?<W1R:6YG*%-T<F5A;2DL(%<L(%@I+ at T*#0HE("TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T@)0T*#0HZ+2!P<F5D('!R971T
M>2AP<F5D*'-T<FEN9RP at 5"P at 5"DL(&EN="P at 9&]C+"!4+"!4*2X-"CHM(&UO
M9&4@<')E='1Y*'!R960H:6XL(&EN+"!O=70I(&ES(&1E="P@:6XL(&EN+"!I
M;BP@;W5T*2!I<R!D970N#0HZ+2!M;V1E('!R971T>2AP<F5D*&EN+"!D:2P@
M=6\I(&ES(&1E="P@:6XL(&EN+"!D:2P@=6\I(&ES(&1E="X-"@T*<')E='1Y
M*%`L(%<L(%@I("`@("`@("`@+2T^(&QA>6]U="A0+"!B97-T*%<L(#`L(%@I
M*2X-"@T*)2`M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM("4-"@T*
M.BT@<')E9"!L87EO=70H<')E9"AS=')I;F<L(%0L(%0I+"!S:6UP;&5?9&]C
M+"!4+"!4*2X-"CHM(&UO9&4@;&%Y;W5T*'!R960H:6XL(&EN+"!O=70I(&ES
M(&1E="P@:6XL(&EN+"!O=70I(&ES(&1E="X-"CHM(&UO9&4@;&%Y;W5T*'!R
M960H:6XL(&1I+"!U;RD@:7, at 9&5T+"!I;BP at 9&DL('5O*2!I<R!D970N#0H-
M"FQA>6]U="A?+"!N:6PI("`@("`@("`@("TM/B!;72X-"FQA>6]U="A0+"!3
M(&!T97AT8"!8*2`@("TM/B!0*%,I+"!L87EO=70H4"P at 6"DN#0IL87EO=70H
M4"P at 22!@;&EN96`@6"D@("`M+3X at 4"@B7&XB*2P at 4"AS=')I;F=?7V1U<&QI
M8V%T95]C:&%R*"<@)RP at 22DI+`T*("`@("`@("`@("`@("`@("`@("`@("`@
M("`@(&QA>6]U="A0+"!8*2X-"@T*)2`M+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM("4-"@T*.BT at 9G5N8R!B97-T*&EN="P@:6YT+"!D;V,I(#T@
M<VEM<&QE7V1O8RX-"@T*8F5S="A7+"!++"!8*2`@("`@("`@("`@/2!B92A7
M+"!++"!;,"`M(%A=*2X-"@T*)2`M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM("4-"@T*("`@("4 at 6%A8(%=E(&-O=6QD(&1O('=I=&@@82!S<&]T
M(&]F(&QA>FEN97-S('1O(&%V;VED(&5X<&]N96YT:6%L#0H@("`@)2!R=6XM
M=&EM97,@:6X@=&AE('=O<G-T(&-A<V4@:&5R92X@(%1H92!P<F]B;&5M(&ES
M('1H870 at 9FQA='1E;B\Q#0H@("`@)2!N965D(&]N;'D at 8F4@979A;'5A=&5D
M('1O('1H92!P;VEN="!W:&5R92!I="!C86X at 8F4@9&5C:61E9`T*("`@("4@
M*&)Y(&)E='1E<B\T(&%N9"!F:71S+S(I('=H971H97(@82!S=')U8W1U<F4@
M:7, at 9V]I;F<@=&\@9FET(&]N#0H@("`@)2!T:&4@<F5M86EN9&5R(&]F('1H
M92!L:6YE(&]R(&YO="X@($EN('!R86-T:6-E+"!E86=E<FYE<W, at 9&]E<VXG
M=`T*("`@("4@<V5E;2!T;R!B92!A('!R;V)L96TN#0H-"CHM(&9U;F, at 8F4H
M:6YT+"!I;G0L(&QI<W0H<&%I<BAI;G0L(&1O8RDI*2`]('-I;7!L95]D;V,N
M#0H-"F)E*%\L(%\L(%M=*2`@("`@("`@("`@("`@("`@("`@(#T@;FEL+ at T*
M8F4H5RP at 2RP@6U\@+2`G3DE,)R`@("`@("`@?"!:72D@/2!B92A7+"!++"!:
M*2X-"F)E*%<L($LL(%M)("T@)U-%42<H6"P at 62D@('P at 6ETI(#T at 8F4H5RP@
M2RP at 6TD@+2!8+"!)("T at 62!\(%I=*2X-"F)E*%<L($LL(%M)("T@)TY%4U0G
M*$HL(%@I('P at 6ETI(#T at 8F4H5RP@2RP at 6RA)("L at 2BD@+2!8('P at 6ETI+@T*
M8F4H5RP at 2RP@6U\@+2`G5$585"<H4RD@("`@?"!:72D@/2!3(&!T97AT8"!B
M92A7+"`H2R`K('-T<FEN9U]?;&5N9W1H*%,I*2P at 6BDN#0IB92A7+"!?+"!;
M22`M("=,24Y%)R`@("`@("!\(%I=*2`]($D at 8&QI;F5@(&)E*%<L($DL(%HI
M+ at T*8F4H5RP at 2RP@6TD at +2`G1U)/55`G*%@I("`@?"!:72D@/0T*("`@(&)E
M='1E<BA7+"!++`T*("`@("`@("`H*&9U;F,I(#T at 8F4H5RP@2RP at 6TD@+2!F
M;&%T=&5N*%@I('P at 6ETI*2P-"B`@("`@("`@*"AF=6YC*2`](&)E*%<L($LL
M(%M)("T at 6"!\(%I=*2D-"B`@("`I+ at T*#0HE("TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2T@)0T*#0HZ+2!F=6YC(&9L871T96XH9&]C*2`](&1O
M8RX-"@T*9FQA='1E;B at G3DE,)RD@("`@("`@("`@/2`G3DE,)RX-"F9L871T
M96XH)U-%42<H6"P at 62DI("`@(#T@)U-%42<H9FQA='1E;BA8*2P at 9FQA='1E
M;BA9*2DN#0IF;&%T=&5N*"=.15-4)RA)+"!8*2D@("`]("=.15-4)RA)+"!F
M;&%T=&5N*%@I*2X-"F9L871T96XH)U1%6%0G*%,I*2`@("`@(#T@)U1%6%0G
M*%,I+ at T*9FQA='1E;B at G3$E.12<I("`@("`@("`@/2`G3DE,)RX-"F9L871T
M96XH)T=23U50)RA8*2D@("`@(#T at 9FQA='1E;BA8*2X-"@T*)2`M+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM("4-"@T*.BT@='EP92!B97-T9FX@
M/3T@*"AF=6YC*2`]('-I;7!L95]D;V,I+ at T*#0HZ+2!F=6YC(&)E='1E<BAI
M;G0L(&EN="P at 8F5S=&9N+"!B97-T9FXI(#T@<VEM<&QE7V1O8RX-"@T*8F5T
M=&5R*%<L($LL(%@L(%DI(#T-"B`@("`H(&EF(&9I=',H5R`M($LL(&%P<&QY
M*%@I*2!T:&5N(&%P<&QY*%@I(&5L<V4 at 87!P;'DH62D@*2X-"@T*)2`M+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM("4-"@T*.BT@<')E9"!F:71S
M*&EN="P@<VEM<&QE7V1O8RDN#0HZ+2!M;V1E(&9I=',H:6XL(&EN*2!I<R!S
M96UI9&5T+ at T*#0IF:71S*%<L(%@I(#HM#0H@("`@5R`^/2`P+`T*("`@("@-
M"B`@("`@("`@6"`](&YI;`T*("`@(#L-"B`@("`@("`@6"`](%, at 8'1E>'1@
M(%DL(&9I=',H5R`M('-T<FEN9U]?;&5N9W1H*%,I+"!9*0T*("`@(#L-"B`@
M("`@("`@6"`](%\@8&QI;F5@(%\-"B`@("`I+ at T*#0HE("TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2T@)0T*#0IB<F%C:V5T960H3"P at 4BP@1"D@
M(#T@=&5X="A,*2!@/#Y@($0 at 8#P^8"!T97AT*%(I+ at T*<&%R96YT:&5S97,H
M1"D@("`@("`](&)R86-K971E9"@B*"(L("(I(BP at 1"DN#0IB<F%C:V5T<RA$
M*2`@("`@("`@(#T at 8G)A8VME=&5D*");(BP@(ETB+"!$*2X-"F)R86-E<RA$
M*2`@("`@("`@("`@/2!B<F%C:V5T960H(GLB+"`B?2(L($0I+ at T*#0HE("TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T@)0T*#0IS97!A<F%T960H
M7RP@(%\L("`@6UTI(#T@;FEL+ at T*#0IS97!A<F%T960H4%`L(%-E<"P at 6U@@
M?"!8<UTI(#T-"B`@("`H(&EF(%AS(#T at 6UT@=&AE;@T*("`@("`@("!04"A8
M*0T*("`@("`@96QS90T*("`@("`@("!04"A8*2!@/#Y@(%-E<"!@/#Y@('-E
M<&%R871E9"A04"P at 4V5P+"!8<RD-"B`@("`I+ at T*#0HE("TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2T@)0T*#0IC;VUM82`@("`@("`@("`@("`@
M(#T@=&5X="@B+"(I+ at T*<V5M:6,@("`@("`@("`@("`@("`]('1E>'0H(CLB
M*2X-"G-P86-E("`@("`@("`@("`@("`@/2!T97AT*"(@(BDN#0IC;VUM85]S
M<&%C92`@("`@("`@(#T@=&5X="@B+"`B*2X-"G-E;6EC7W-P86-E("`@("`@
M("`@/2!T97AT*"([("(I+ at T*8V]M;6%?;&EN92`@("`@("`@("`](&-O;6UA
M(&`\/F`@;&EN92X-"G-E;6EC7VQI;F4@("`@("`@("`@/2!S96UI8R!@/#Y@
M(&QI;F4N#0IS<&%C95]L:6YE("`@("`@("`@(#T@<W!A8V4 at 8#P^8"!L:6YE
M+ at T*8V]M;6%?<W!A8V5?;&EN92`@("`]('1E>'0H(BP@(BD at 8#P^8"!L:6YE
M+ at T*<V5M:6-?<W!A8V5?;&EN92`@("`]('1E>'0H(CL@(BD at 8#P^8"!L:6YE
M+ at T*#0HE("TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T@)0T*#0H@
M("`@)2!4:&ES(&YE961S('1O(&=O(&EN=&\@<W1R:6YG+FT-"@T*+RH-"CHM
M(&9U;F,@;&5N9W1H*'-T<FEN9RD@/2!I;G0N#0H-"FQE;F=T:"A3*2`]($P@
C.BT-"B`@("!S=')I;F=?7VQE;F=T:"A3+"!,*2X-"BHO#0H=
`
end

begin 600 test_pprint.m
M.BT@;6]D=6QE('1E<W1?<'!R:6YT+ at T*#0HZ+2!I;G1E<F9A8V4N#0H-"CHM
M(&EM<&]R=%]M;V1U;&4@:6\N#0H-"@T*.BT@<')E9"!M86EN*&EO7U]S=&%T
M92P@:6]?7W-T871E*2X-"CHM(&UO9&4@;6%I;BAD:2P@=6\I(&ES(&1E="X-
M"@T*#0HZ+2!I;7!L96UE;G1A=&EO;BX-"@T*.BT@:6UP;W)T7VUO9'5L92!P
M<')I;G0L('-T<FEN9RP@:6YT+"!L:7-T+"!C:&%R+ at T*#0H-"CHM('1Y<&4@
M=')E92`M+2T^('-T<FEN9R`M(&QI<W0H=')E92DN#0H-"@T*;6%I;B`M+3X-
M"B`@("!I;U]?8V]M;6%N9%]L:6YE7V%R9W5M96YT<RA!<F=V*2P-"B`@("!R
M=6Y?=&5S=',H07)G=BDN#0H-"@T*.BT@<')E9"!R=6Y?=&5S=',H;&ES="AS
M=')I;F<I+"!I;U]?<W1A=&4L(&EO7U]S=&%T92DN#0HZ+2!M;V1E(')U;E]T
M97-T<RAI;BP at 9&DL('5O*2!I<R!D970N#0H-"G)U;E]T97-T<RA;72D at +2T^
M(%M=+ at T*#0IR=6Y?=&5S=',H6T$@?"!!<UTI("TM/@T*("`@('L at 5"`]#0H@
M("`@("`@(")A86$B+5L-"B`@("`@("`@("`@(")B8F)B8B(M6R)C8V,B+5M=
M+"`B9&0B+5M=72P-"B`@("`@("`@("`@(")E964B+5M=+`T*("`@("`@("`@
M("`@(F9F9F8B+5LB9V<B+5M=+"`B:&AH(BU;72P@(FEI(BU;75U=+`T*("`@
M("`@4%`Q(#T@<'!?=')E93$H5"DL#0H@("`@("!04#(@/2!P<%]T<F5E,BA4
M*0T*("`@('TL#0H@("`@*"!I9B![('-T<FEN9U]?=&]?:6YT*$$L(%<I('T@
M=&AE;@T*("`@("`@("!I;U]?9F]R;6%T*"(M+2TM+2!W:71H('=I9'1H("5D
M("TM+2TM7&Y<;B(L(%MI*%<I72DL#0H@("`@("`@('!P<FEN=%]?=W)I=&4H
M5RP at 4%`Q*2P@:6]?7VYL+"!I;U]?;FPL#0H@("`@("`@('!P<FEN=%]?=W)I
M=&4H5RP at 4%`R*2P@:6]?7VYL+"!I;U]?;FP-"B`@("`@(&5L<V4-"B`@("`@
M("`@:6]?7V9O<FUA="@B*B!@)7,G(&ES(&YO="!A;B!I;G1<;EQN(BP at 6W,H
M02E=*0T*("`@("DL#0H@("`@<G5N7W1E<W1S*$%S*2X-"@T*)2`M+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM("4-"@T*.BT at 9G5N8R!P<%]T<F5E
M,2AT<F5E*2`]('!P<FEN=%]?9&]C+ at T*#0IP<%]T<F5E,2A3("T at 0W,I(#T@
M#0H@("`@9W)O=7`H(&EF($-S(#T at 6UT@=&AE;@T*("`@("`@("!T97AT*%,I
M#0H@("`@("!E;'-E#0H@("`@("`@('1E>'0H4RD at 8#P^8"!N97-T*'-T<FEN
M9U]?;&5N9W1H*%,I+"!P<%]C:&EL9')E;C$H0W,I*0T*("`@("DN#0H-"@T*
M.BT at 9G5N8R!P<%]C:&EL9')E;C$H;&ES="AT<F5E*2D@/2!P<')I;G1?7V1O
M8RX-"@T*<'!?8VAI;&1R96XQ*$-S*2`]#0H@("`@8G)A8VME=',H;F5S="@Q
M+"!S97!A<F%T960H<'!?=')E93$L(&-O;6UA7W-P86-E7VQI;F4L($-S*2DI
M+ at T*#0HE("TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T@)0T*#0HZ
M+2!F=6YC('!P7W1R964R*'1R964I(#T@<'!R:6YT7U]D;V,N#0H-"G!P7W1R
M964R*%, at +2!#<RD@/0T*("`@(&=R;W5P*"!I9B!#<R`](%M=('1H96X-"B`@
M("`@("`@=&5X="A3*0T*("`@("`@96QS90T*("`@("`@("!T97AT*%,I(&`\
M/F`@<'!?8VAI;&1R96XR*$-S*0T*("`@("DN#0H-"CHM(&9U;F,@<'!?8VAI
M;&1R96XR*&QI<W0H=')E92DI(#T@<'!R:6YT7U]D;V,N#0H-"G!P7V-H:6QD
M<F5N,BA#<RD@/0T*("`@(&)R86-K971S*&YE<W0H,BP@;&EN92!@/#Y@('-E
M<&%R871E9"AP<%]T<F5E,BP at 8V]M;6%?<W!A8V5?;&EN92P at 0W,I*2!@/#Y@
M(&QI;F4I+ at T*#0HE("TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T@
#)0T*
`
end
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------



More information about the developers mailing list