[comp.os.minix] mu.c patch and psdatabase

cwr@pnet01.cts.com (Will Rose) (06/10/91)

I took a look at mu.c when it came out a while back, but decided
it was too much effort - I had some of the extra h files, but not
all, and the code was hard to follow.  Since W van Dorst cleaned
it up, I thought I'd have another go.  I'm running standard 1.5.10
on an XT, without shared memory, and I found that as written mu.c
wouldn't compile.  The typedef struct sysinfo_t contains

#if NR_SHARE
 struct nlist mm_sh_text[2];
 struct nlist mm_hole_head[2];
#endif

which needs to be:

#if NR_SHARE
 struct nlist mm_sh_text[2];
#endif
 struct nlist mm_hole_head[2];

This breaks the 1.5.10 ps, which doesn't use or update the mm_hole_head
address in psdatabase.  I long ago tired of this silly non-ascii format,
and rewrote a chunk of ps.c to generate an ascii database automatically in
the system build makefile.  However, if other programs are going to need
this format, I decided I'd have to have a simple way of viewing it or
rebuilding it.  Hence the program below, which displays a psdatabase file
in human-readable form, or builds a new one directly from symbol tables.
'cat ps.sym' on an ascii database is less work, a lot quicker, and much
more versatile, but there you are. 

Having built a suitable psdatabase, mu (patched as above) works fine
on systems without shared text.

Good luck - Will

==============================================================
table
 !"#$%&'()*+,-./0123456789:;<=>?
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
begin 644 psdata.c
M+RH@<'-D871A+F,@+2!M86YI<'5L871E<R!T:&4@9&%T86)A<V4@9F]R('!Sz
M+F,*("H*("H@5F5R<VEO;B P+C@@;V8@2G5N92 Q.3DQ+@H@*@H@*B!7<FETy
M=&5N(&)Y($,@5R!2;W-E"B J+PH*+RH@5&AI<R!P<F]G<F%M(&1I<W!L87ESx
M('1H92!-:6YI>" Q+C4@<'-D871A8F%S92!F:6QE(&EN(&AU;6%N+7)E861Aw
M8FQE"B J(&9O<FTL(&]R(&)U:6QD<R!A(&YE=R!D871A8F%S92!E:71H97(@v
M9G)O;2!T:&4@;W)I9VEN86P@:V5R;F5L+"!M;2P@86YD(&9S"B J('-Y;6)Ou
M;"!T86)L97,@*&YB+B!N;W0@=&AE(&)I;F%R:65S*2!O<B!F<F]M(&$@<VENt
M9VQE($%30TE)(&9I;&4@;V8@9&%T82X*("H@5&AI<R!F:6QE(&-A;B!M;W-Ts
M(&5A<VEL>2!B92!B=6EL="!B>2!A9&1I;F<@=&AE(&9O;&QO=VEN9R!T;R!Tr
M:&4@"B J('1O;VQS(&1I<F5C=&]R>2!-86ME9FEL93H*('-Y;3H@8G5I;&0@q
M8F]O=&)L;VL@:6YI=" N+B]K97)N96PO:V5R;F5L("XN+V9S+V9S("XN+VUMp
M+VUM"B @(" @(" @0&5C:&\@)UPC($1A=&%B87-E(&9O<B!P<R<@/BXO<',No
M<WEM"B @(" @(" @0&=R97 @)R!?<')O8R0D)R N+B]K97)N96PO<WEM8F]Ln
M+F]U=" ^/BXO<',N<WEM"B @(" @(" @0&=R97 @7V%O=70@("XN+VME<FYEm
M;"]S>6UB;VPN;W5T(#X^+B]P<RYS>6T*(" @(" @("! 9W)E<"!E;F1T97ATl
M("XN+VME<FYE;"]S>6UB;VPN;W5T(#X^+B]P<RYS>6T*(" @(" @("! 9W)Ek
M<"!?=&%S:W1A8B N+B]K97)N96PO<WEM8F]L+F]U=" ^/BXO<',N<WEM"B @j
M(" @(" @0&=R97 @7VUP<F]C("XN+VUM+W-Y;6)O;"YO=70@/CXN+W!S+G-Yi
M;0H@(" @(" @($!G<F5P(%]F<')O8R N+B]F<R]S>6UB;VPN;W5T(#X^+B]Ph
M<RYS>6T*(" @(" @("! 96-H;R!P<RYS>6T@9&]N92X*("H*("H@5&AE(&YEg
M=R!D871A8F%S92!I<R!N;W0@:61E;G1I8V%L('1O('1H870@<')O9'5C960@f
M8GD@=&AE('!S("U5(&]P=&EO;BP*("H@8G5T(&ES(&EN('-O;64@<F5S<&5Ce
M=',@;6]R92!C;VUP;&5T92X@(%1H92 Q+C4@<',@:6=N;W)E<R!T:&4@9FEEd
M;&1S"B J('1H870@:&%V92!B965N(&-H86YG960[('1H97D@87)E('1H97)Ec
M(&)E8V%U<V4@82!F=71U<F4@<',@;6%Y('5S92!T:&5M+@H@*@H@*B!/<'1Ib
M;VYS.@H@(" @(" @("UD9FEL96YA;64@(" @5W)I=&4@9&%T82!T;R!F:6QEa
M;F%M90H@(" @(" @("US9FEL96YA;64@(" @1V5T('-Y;6)O;',@9G)O;2!Fz
M:6QE;F%M90H)+79F:6QE;F%M92 @("!6:65W(&-O;G1E;G1S(&]F(&9I;&5Ny
M86UE"B J+PH*(VEN8VQU9&4@/&$N;W5T+F@^"B-I;F-L=61E(#QS=&1I;RYHx
M/@H*+RH@(V1E9FEN92!"24=?1$()"2\J(&QA<F=E<B H<&]S=" Q+C4_*2!Dw
M871A8F%S92 J+R *(V1E9FEN92!&04Q310D), HC9&5F:6YE(%12544)"7Y&v
M04Q310HC9&5F:6YE($]+"0DP"B-D969I;F4@1D%)3$5$"0DM,0HC9&5F:6YEu
M(%-!344)"3 *(V1E9FEN92!&051!3 D),0D)"2\J(&-L87-S97,@;V8@97)Rt
M;W(@*B\*(V1E9FEN92!.3TY?1D%404P), HC9&5F:6YE($)51DQ%3@D)-C0)s
M"0DO*B!U<V5F=6P@;G5M8F5R("HO"@HO*B!D969A=6QT('!A=&AS(&9O<B!Sr
M>7-T96T@<WEM8F]L('1A8FQE<R J+PHC9&5F:6YE($M%4DY%3%]0051("2(Oq
M=7-R+W-R8R]M:6YI>"]K97)N96PO<WEM8F]L+F]U="(*(V1E9FEN92!-35]0p
M051("0DB+W5S<B]S<F,O;6EN:7@O;6TO<WEM8F]L+F]U="(*(V1E9FEN92!&o
M4U]0051("0DB+W5S<B]S<F,O;6EN:7@O9G,O<WEM8F]L+F]U="(*"B\J(&1En
M9F%U;'0@<&%T:"!O9B!P<R!S>6UB;VP@=&%B;&4@86YD(&1A=&%B87-E<R Jm
M+PHC9&5F:6YE($134D-?4$%42 DB+V5T8R]P<RYS>6TB"B-D969I;F4@1$)!l
M4T5?4$%42 DB+V5T8R]P<V1A=&%B87-E(@HC9&5F:6YE($1"05-%7TU/1$4)k
M,#8T- H*+RH@=VAA="!W92!T:&EN:R!T:&4@<F5L979A;G0@:61E;G1I9FEEj
M<G,@:6X@=&AE(&YA;65L:7-T<R!A<F4@*B\*(V1E9FEN90E)1%]04D]#"0DBi
M7W!R;V,B"0DO*B!F<F]M(&ME<FYE;"!N86UE;&ES=" J+PHC9&5F:6YE"4E$h
M7TU04D]#"2)?;7!R;V,B"2\J(&9R;VT@;6T@;F%M96QI<W0@*B\*(V1E9FENg
M90E)1%]&4%)/0PDB7V9P<F]C(@DO*B!F<F]M(&9S(&YA;65L:7-T("HO"B-Df
M969I;F4)241?5$%32U1!0@DB7W1A<VMT86(B"2\J(&9R;VT@:V5R;F5L(&YAe
M;65L:7-T("HO"B-D969I;F4@241?2$],15](14%$"2)?:&]L95]H92()+RH@d
M9G)O;2!M;2!N86UE;&ES=" J+PH*(V1E9FEN90E.04U%7U-)6@DH<VEZ96]Fc
M*'-Y<VEN9F\N:V5?<')O8ULP72YN7VYA;64I*0DO*B X(&-H87)S("HO"@HOb
M*@H@*B!3=')U8W1U<F4@9F]R('-Y<W1E;2!A9&1R97-S(&EN9F\@*&%L<V\@a
M;&%Y;W5T(&]F('!S)W,@9&%T86)A<V4I+@H@*B H;FQI<W0@:7,@=&AE('-Tz
M<G5C='5R92!O9B!A('-Y;6)O;"!T86)L92!E;G1R>2D*("HO"G-T<G5C="!Sy
M>7-I;F9O7W0@>PH@('-T<G5C="!N;&ES="!K95]P<F]C6S)=.PH@('-T<G5Cx
M="!N;&ES="!K95]T87-K=&%B6S)=.PHC:69D968@0DE'7T1""B @<W1R=6-Tw
M(&YL:7-T(&UM7VAO;&5?:&5A9%LR73L*(V5N9&EF"B @<W1R=6-T(&YL:7-Tv
M(&UM7VUP<F]C6S)=.PH@('-T<G5C="!N;&ES="!F<U]F<')O8ULR73L*?2!Su
M>7-I;F9O.PD)"2\J('-Y<VEN9F\@:&]L9',@86-T=6%L('-Y<W1E;2!I;F9Ot
M("HO"@IC:&%R('!R;V=N86UE6T)51DQ%3ET["0DO*B!P<F]G<F%M(&YA;64@s
M*B\*8VAA<B!C<F5A=%]E<G);0E5&3$5.73L)"2\J(&5R<F]R(&UE<W-A9V5Sr
M("HO"F-H87(@;W!E;E]E<G);0E5&3$5.73L*8VAA<B!R96%D7V5R<EM"549,q
M14Y=.PIC:&%R('=R:71E7V5R<EM"549,14Y=.PIC:&%R('9A;&ED7V5R<EM"p
M549,14Y=.PD*<VAO<G0@:6YT(&]P=%]D.PD)+RH@;W!T:6]N<R J+PIS:&]Ro
M="!I;G0@;W!T7W,["G-H;W)T(&EN="!O<'1?=CL*"B\J(&QI<W0@97AT97)Nn
M86QS("HO"F5X=&5R;B!I;G0@9V5T;W!T*"DL(&]P=&EN9"P@;W!T97)R+"!Om
M<'1O<'0["F5X=&5R;B!C:&%R("IO<'1A<F<["@HO*B!&;W)W87)D(&1E8VQAl
M<F%T:6]N<R J+PIS:&]R="!I;G0@9&ES<&1A=&$H*3L*=F]I9"!E<G)O<B@Ik
M.PIS:&]R="!I;G0@<F5A9&%L;"@I.PIS:&]R="!I;G0@<F5A9'-Y;2@I.PIVj
M;VED('5S86=E*"D["@H*+RH*("H@9"!I(',@<"!D(&$@="!A"B J"B J($1Ii
M<W!L87D@=&AE(&1A=&%B87-E"B J"B J(%)E='5R;CH)3TL)06QW87ES"B Jh
M+PIS:&]R="!I;G0@9&ES<&1A=&$H<W I"G-T<G5C="!S>7-I;F9O7W0@*G-Pg
M.PI["B @8VAA<B!B=69F6S$P73L*("!S:&]R="!I;G0@:BP@:SL*("!S=')Uf
M8W0@;FQI<W0@*FYL:7-T<" ]("AS=')U8W0@;FQI<W0@*BD@<W ["@H@("\Je
M(&1I<W!L87D@=&AE(&1A=&%B87-E("HO"B @<')I;G1F*").86UE(" @(" @d
M061D<F5S<R @($-L87-S7&XB*3L*("!F;W(@*&H@/2 P(#L@:B \('-I>F5Oc
M9BAS=')U8W0@<WES:6YF;U]T*2 O('-I>F5O9BAS=')U8W0@;FQI<W0I(#L@b
M:BLK*2!["@EF;W(@*&L@/2 P(#L@:R \(#$P(#L@:RLK*2!B=69F6VM=(#T@a
M)UPP)SL*"7-T<FYC<'DH8G5F9BP@;FQI<W1P+3YN7VYA;64L(#@I.PH)<')Iz
M;G1F*"(E+3AS(" P>"4V;'@@("5C7&XB+ H)"0EN;&ES=' M/FY?;F%M95LPy
M72 ]/2 G7# G(#\@(BAN=6QL*2(@.B!B=69F+ H)"0EN;&ES=' M/FY?=F%Lx
M=64L"@D)"6YL:7-T<"T^;E]S8VQA<W,I.PH);FQI<W1P*RL["B @?0H*("!Rw
M971U<FXH3TLI.PI]"@H*+RH*("H@92!R('(@;R!R"B J"B J($UA>2!O<B!Mv
M87D@;F]T(&)E(&9A=&%L"B J+PIV;VED(&5R<F]R*',Q+"!S,BP@<V5V97)Eu
M*0IC:&%R("IS,2P@*G,R.PIS:&]R="!I;G0@<V5V97)E.PI["B @:68@*',Rt
M(#T]($Y53$PI"@EF<')I;G1F*'-T9&5R<BP@(DEN("5S.B E<RY<;B(L('!Rs
M;V=N86UE+"!S,2D["B @96QS90H)9G!R:6YT9BAS=&1E<G(L("));B E<SH@r
M)7,E<RY<;B(L('!R;V=N86UE+"!S,2P@<S(I.PH@(&EF("AS979E<F4@/3T@q
M1D%404PI"@EE>&ET*#$I.PI]"@H*+RH*("H@;2!A(&D@;@H@*@H@*B!-86ENp
M('!R;V=R86T*("HO"G-H;W)T(&EN="!M86EN*&%R9V,L(&%R9W8I"G-H;W)To
M(&EN="!A<F=C.R!C:&%R("IA<F=V6UT["GL*("!C:&%R(&1B7V9N86UE6T)5n
M1DQ%3ET["2\J(&1A=&%B87-E(&9I;&5N86UE("HO"B @8VAA<B!S>6U?9FYAm
M;65;0E5&3$5.73L)+RH@<WEM8F]L(&9I;&5N86UE("HO"B @8VAA<B!V=U]Fl
M;F%M95M"549,14Y=.PDO*B!V:65W:6YG(&9I;&5N86UE("HO"B @8VAA<B Jk
M8W ["B @<VAO<G0@:6YT(&H["B @:6YT(&1B7V9D+"!V=U]F9#L*("!S=')Uj
M8W0@;FQI<W0@*FYL:7-T<" ]("AS=')U8W0@;FQI<W0@*BD@)G-Y<VEN9F\[i
M"@H@("\J('-E="!D969A=6QT<R J+PH@('-T<FYC<'DH<')O9VYA;64L(&%Rh
M9W9;,%TL($)51DQ%3B M(#$I.PH@('-T<FYC<'DH9&)?9FYA;64L($1"05-%g
M7U!!5$@L($)51DQ%3B M(#$I.PH@('-T<FYC<'DH<WEM7V9N86UE+"!$4U)#f
M7U!!5$@L($)51DQ%3B M(#$I.PH@('-T<FYC<'DH=G=?9FYA;64L($1"05-%e
M7U!!5$@L($)51DQ%3B M(#$I.PH@('-T<F-P>2AC<F5A=%]E<G(L(")#86YNd
M;W0@8W)E871E("(I.PH@('-T<F-P>2AO<&5N7V5R<BP@(D-A;FYO="!O<&5Nc
M("(I.PH@('-T<F-P>2AR96%D7V5R<BP@(D-A;FYO="!R96%D("(I.PH@('-Tb
M<F-P>2AW<FET95]E<G(L(")#86YN;W0@=W)I=&4@(BD["B @<W1R8W!Y*'9Aa
M;&ED7V5R<BP@(DEN=F%L:60@9&%T82!I;B B*3L*("!O<'1E<G(@/2 P.PH@z
M(&]P=%]D(#T@;W!T7W,@/2!O<'1?=B ]($9!3%-%.PH*(" O*B!P87)S92!Ay
M<F=U;65N=',@*B\*("!W:&EL92 H*&H@/2!G971O<'0H87)G8RP@87)G=BP@x
M(F0Z<SIV.B(I*2 A/2!%3T8I('L*"7-W:71C:" H:B F(# Q-S<I('L*"0ECw
M87-E("=D)SH*"0D)<W1R;F-P>2AD8E]F;F%M92P@;W!T87)G+"!"549,14X@v
M+2 Q*3L*"0D);W!T7V0@/2!44E5%.PH)"0EB<F5A:SL*"0EC87-E("=S)SH*u
M"0D)<W1R;F-P>2AS>6U?9FYA;64L(&]P=&%R9RP@0E5&3$5.("T@,2D["@D)t
M"6]P=%]S(#T@5%)513L*"0D)8G)E86L["@D)8V%S92 G=B<Z"@D)"7-T<FYCs
M<'DH=G=?9FYA;64L(&]P=&%R9RP@0E5&3$5.("T@,2D["@D)"6]P=%]V(#T@r
M5%)513L*"0D)8G)E86L["@D)8V%S92 G/R<Z"@D)"6EF("@H;W!T;W!T("8@q
M,#$W-RD@/3T@)V0G*2!["@D)"0EO<'1?9" ](%12544["@D)"0EB<F5A:SL*p
M"0D)?0H)"2\J(&5L<V4@9F%L;"!T:')O=6=H("HO"@D)9&5F875L=#H*"0D)o
M=7-A9V4H*3L)+RH@<75I="!O;B!F86EL=7)E("HO"@D)"6)R96%K.PH)?0H@n
M('T*"B @+RH@<F5A9"!T:&4@8W5R<F5N="!D871A8F%S92 J+PH@(&EF("@Hm
M=G=?9F0@/2!O<&5N*'9W7V9N86UE+" P*2D@/3T@+3$I('L*"65R<F]R*&]Pl
M96Y?97)R+"!V=U]F;F%M92P@3D].7T9!5$%,*3L*("!]"B @96QS92!["@EIk
M9B H<F5A9"AV=U]F9"P@*&-H87(@*BD@)G-Y<VEN9F\L('-I>F5O9BAS>7-Ij
M;F9O*2D@(3T@<VEZ96]F*'-Y<VEN9F\I*0H)"65R<F]R*')E861?97)R+"!Vi
M=U]F;F%M92P@1D%404PI.PH*"2\J(&1I<W!L87D@=&AE(&-U<G)E;G0@9&%Th
M86)A<V4@*B\*"2AV;VED*2!D:7-P9&%T82@F<WES:6YF;RD["@H)*'9O:60Ig
M(&-L;W-E*'9W7V9D*3L*("!]"@H@("\J('5P9&%T92!T:&4@9&%T86)A<V4@f
M*B\*("!I9B H;W!T7V0I('L*"2\J('IE<F\@;W5T('1H92!D871A8F%S92!Se
M=')U8W1U<F4@*B\*"6-P(#T@*&-H87(@*BD@)G-Y<VEN9F\["@EF;W(@*&H@d
M/2 P(#L@:B \('-I>F5O9BAS=')U8W0@<WES:6YF;U]T*2 [(&HK*RD*"0DJc
M8W K*R ]("=<,"<["@D@"@DO*B!R96%D('1H92!S>6UB;VP@=&%B;&5S("HOb
M"@EI9B H<F5A9&%L;"AS>6U?9FYA;64L("9S>7-I;F9O*2 ]/2!&04E,140Ia
M('L*"0EI9B H<F5A9'-Y;2A+15).14Q?4$%42"P@241?4%)/0RP@;FQI<W1Pz
M*2 ]/2!&04E,140@?'P*"7)E861S>6TH2T523D5,7U!!5$@L($E$7U1!4TM4y
M04(L(&YL:7-T<" K(#(I(#T]($9!24Q%1"!\? HC:69D968@0DE'7T1""@ERx
M96%D<WEM*$U-7U!!5$@L($E$7TA/3$5?2$5!1"P@;FQI<W1P("L@-"D@/3T@w
M1D%)3$5$('Q\"@ER96%D<WEM*$U-7U!!5$@L($E$7TU04D]#+"!N;&ES=' @v
M*R V*2 ]/2!&04E,140@?'P*"7)E861S>6TH1E-?4$%42"P@241?1E!23T,Lu
M(&YL:7-T<" K(#@I(#T]($9!24Q%1"D*(V5L<V4*"7)E861S>6TH34U?4$%4t
M2"P@241?35!23T,L(&YL:7-T<" K(#0I(#T]($9!24Q%1"!\? H)<F5A9'-Ys
M;2A&4U]0051(+"!)1%]&4%)/0RP@;FQI<W1P("L@-BD@/3T@1D%)3$5$*0HCr
M96YD:68*"0D)97AI="@Q*3L*"7T*"0H)+RH@=W)I=&4@;W5T('1H92!N97<@q
M9&%T86)A<V4@*B\*"6EF("@H9&)?9F0@/2!C<F5A="AD8E]F;F%M92P@1$)!p
M4T5?34]$12DI(#T]("TQ*0H)"65R<F]R*&-R96%T7V5R<BP@9&)?9FYA;64Lo
M($9!5$%,*3L*"6EF("AW<FET92AD8E]F9"P@*&-H87(@*BD@)G-Y<VEN9F\Ln
M('-I>F5O9BAS>7-I;F9O*2D@(3T@<VEZ96]F*'-Y<VEN9F\I*0H)"65R<F]Rm
M*'=R:71E7V5R<BP@9&)?9FYA;64L($9!5$%,*3L*"2AV;VED*2!C;&]S92 Hl
M9&)?9F0I.PH*"2\J(&1I<W!L87D@=&AE(&YE=R!D871A8F%S92 J+PH)*'9Ok
M:60I(&1I<W!D871A*"9S>7-I;F9O*3L*("!]"B @97AI="@P*3L@"GT*"@HOj
M*@H@*B!R(&4@82!D(&$@;"!L( H@*@H@*B!296%D(&%L;"!T:&4@9&%T82!Fi
M<F]M(&$@<VEN9VQE('-Y;6)O;"YO=70@9FEL92 *("H*("H@4F5T=7)N.@E/h
M2PD)4W5C8V5S<PH@*@D)1D%)3$5$"0E/=&AE<G=I<V4*("HO"G-H;W)T(&ENg
M="!R96%D86QL*&9N86UE+"!S<"D*8VAA<B J9FYA;64[('-T<G5C="!S>7-If
M;F9O7W0@*G-P.PI["B @=6YS:6=N960@8VAA<B!U8SL*("!C:&%R(&)U9F9;e
M0E5&3$5.72P@9F)U9F9;0E5&3$5.73L*("!L;VYG(&EN="!L:BP@7W1A<VMTd
M86(L(%]K<')O8RP@7VAO;&5?:&4L(%]M<')O8RP@7V9P<F]C.PH@($9)3$4@c
M*G-Y;5]F<#L*"B @7W1A<VMT86(@/2!?:W!R;V,@/2!?:&]L95]H92 ](%]Mb
M<')O8R ](%]F<')O8R ](#!,.PH*(" O*B!G970@=&AE('-Y<W1E;2!A9&1Ra
M97-S(&EN9F]R;6%T:6]N+"!A;F0@9FEL;"!T:&4@<WES:6YF;R!S=')U8W0@z
M*B\*(" O*B!T:&ES(&%S<W5M97,@=&AE('-T86YD87)D('-Y;6)O;"YO=70@y
M9FEL92!F;W)M870@*B\*("!I9B H*'-Y;5]F<" ](&9O<&5N*&9N86UE+" Bx
M<B(I*2 ]/2 H1DE,12 J*4Y53$PI('L*"65R<F]R*&]P96Y?97)R+"!F;F%Mw
M92P@3D].7T9!5$%,*3L*"7)E='5R;BA&04E,140I.PH@('T*"B @=VAI;&4@v
M*&9G971S*&9B=69F+"!"549,14XL('-Y;5]F<"DI('L@"@EI9B H<W-C86YFu
M*&9B=69F+" B)6,@)6QX("5S(BP@)G5C+" F;&HL(&)U9F8I("$](#,I"@D)t
M8V]N=&EN=64["@H):68@*'-T<F-M<"A)1%]405-+5$%"+"!B=69F*2 ]/2!3s
M04U%*2!["@D)<W1R;F-P>2AS<"T^:V5?=&%S:W1A8ELP72YN7VYA;64L($E$r
M7U1!4TM404(L($Y!345?4TE:*3L*"0ES<"T^:V5?=&%S:W1A8ELP72YN7W9Aq
M;'5E(#T@;&H["@D)<W M/FME7W1A<VMT86);,%TN;E]S8VQA<W,@/2!U8SL*p
M"0E?=&%S:W1A8B ](&QJ.PH)?0H)96QS92!I9B H<W1R8VUP*$E$7U!23T,Lo
M(&)U9F8I(#T](%-!344I('L*"0ES=')N8W!Y*'-P+3YK95]P<F]C6S!=+FY?n
M;F%M92P@241?4%)/0RP@3D%-15]325HI.PH)"7-P+3YK95]P<F]C6S!=+FY?m
M=F%L=64@/2!L:CL*"0ES<"T^:V5?<')O8ULP72YN7W-C;&%S<R ]('5C.PH)l
M"5]K<')O8R ](&QJ.PH)?0HC:69D968@0DE'7T1""@EE;'-E(&EF("AS=')Ck
M;7 H241?2$],15](14%$+"!B=69F*2 ]/2!304U%*2!["@D)<W1R;F-P>2ASj
M<"T^;6U?:&]L95]H96%D6S!=+FY?;F%M92P@241?2$],15](14%$+"!.04U%i
M7U-)6BD["@D)<W M/FUM7VAO;&5?:&5A9%LP72YN7W9A;'5E(#T@;&H["@D)h
M<W M/FUM7VAO;&5?:&5A9%LP72YN7W-C;&%S<R ]('5C.PH)"5]H;VQE7VAEg
M(#T@;&H["@E]"B-E;F1I9@H)96QS92!I9B H<W1R8VUP*$E$7TU04D]#+"!Bf
M=69F*2 ]/2!304U%*2!["@D)<W1R;F-P>2AS<"T^;6U?;7!R;V-;,%TN;E]Ne
M86UE+"!)1%]-4%)/0RP@3D%-15]325HI.PH)"7-P+3YM;5]M<')O8ULP72YNd
M7W9A;'5E(#T@;&H["@D)<W M/FUM7VUP<F]C6S!=+FY?<V-L87-S(#T@=6,[c
M"@D)7VUP<F]C(#T@;&H["@E]"@EE;'-E(&EF("AS=')C;7 H241?1E!23T,Lb
M(&)U9F8I(#T](%-!344I('L*"0ES=')N8W!Y*'-P+3YF<U]F<')O8ULP72YNa
M7VYA;64L($E$7T904D]#+"!.04U%7U-)6BD["@D)<W M/F9S7V9P<F]C6S!=z
M+FY?=F%L=64@/2!L:CL*"0ES<"T^9G-?9G!R;V-;,%TN;E]S8VQA<W,@/2!Uy
M8SL*"0E?9G!R;V,@/2!L:CL*"7T*("!]"B @9F-L;W-E*'-Y;5]F<"D["@HCx
M:69D968@0DE'7T1""B @:68@*"%?=&%S:W1A8B!\?" A7VMP<F]C('Q\("%?w
M;7!R;V,@?'P@(5]F<')O8R!\?" A7VAO;&5?:&4I"B-E;'-E"B @:68@*"%?v
M=&%S:W1A8B!\?" A7VMP<F]C('Q\("%?;7!R;V,@?'P@(5]F<')O8RD*(V5Nu
M9&EF"@EE<G)O<BAV86QI9%]E<G(L(&9N86UE+"!&051!3"D["@H@(')E='5Rt
M;BA/2RD["GT*"@HO*@H@*B!296%D(&$@<VEN9VQE(&ET96T@9G)O;2!A('-Ys
M;6)O;"YO=70@9FEL90H@*@H@*B!2971U<FXZ"4]+"0E3=6-C97-S"B J"0E&r
M04E,140)"4]T:&5R=VES90H@*B\*<VAO<G0@:6YT(')E861S>6TH9FYA;64Lq
M('-N86UE+"!N<"D*8VAA<B J9FYA;64L("IS;F%M93L@<W1R=6-T(&YL:7-Tp
M("IN<#L*>PH@('5N<VEG;F5D(&-H87(@=6,["B @8VAA<B!B=69F6T)51DQ%o
M3ETL(&9B=69F6T)51DQ%3ET["B @<VAO<G0@:6YT(&9L9SL*("!L;VYG(&ENn
M="!L:CL*("!&24Q%("IS>6U?9G ["@H@(&EF("@H<WEM7V9P(#T@9F]P96XHm
M9FYA;64L(")R(BDI(#T]("A&24Q%("HI3E5,3"D@>PH)97)R;W(H;W!E;E]El
M<G(L(&9N86UE+"!.3TY?1D%404PI.PH)<F5T=7)N*$9!24Q%1"D["B @?0H*k
M("!F;&<@/2!&04Q313L*("!W:&EL92 H9F=E=',H9F)U9F8L($)51DQ%3BP@j
M<WEM7V9P*2D@>R *"6EF("AS<V-A;F8H9F)U9F8L("(E8R E;'@@)7,B+" Fi
M=6,L("9L:BP@8G5F9BD@(3T@,RD*"0EC;VYT:6YU93L*"6EF("AS=')N8VUPh
M*'-N86UE+"!B=69F+"!.04U%7U-)6BD@/3T@4T%-12D@>PH)"7-T<FYC<'DHg
M;G M/FY?;F%M92P@<VYA;64L($Y!345?4TE:*3L*"0EN<"T^;E]V86QU92 ]f
M(&QJ.PH)"6YP+3YN7W-C;&%S<R ]('5C.PH)"69L9R ](%12544["@D)8G)Ee
M86L["@E]"B @?0H*("!F8VQO<V4H<WEM7V9P*3L*("!I9B H9FQG*0H)<F5Td
M=7)N*$]+*3L*("!E;'-E"@ER971U<FXH1D%)3$5$*3L*?0H*"B\J"B J('4@c
M<R!A(&<@90H@*@H@*B!5<V%G92!M97-S86=E"B J+PIV;VED('5S86=E*"D*b
M>PH@(&9P<FEN=&8H<W1D97)R+" B57-A9V4Z("5S(%LM9%MD871A8F%S95U=a
M(%LM<W-Y;71A8ET@6RUV=FEE=V9I;&5=7&XB+"!P<F]G;F%M92D["B @97AIz
)="@Q*3L*?0H*y
 x
end
-----------------------------------------------------------------------
"If heaven too had passions  | Will Rose
     even heaven would       | UUCP: {nosc ucsd hplabs!hp-sdd}!crash!pnet01!cw
     grow old."  -  Li Ho.   | ARPA: crash!pnet01!cwr@nosc.mil
                             | INET: cwr@pnet01.cts.com


UUCP: {nosc ucsd hplabs!hp-sdd}!crash!pnet01!cwr
ARPA: crash!pnet01!cwr@nosc.mil
INET: cwr@pnet01.cts.com