Psroff 2.0 Part 09 of 16

Chris Lewis clewis at ecicrl.UUCP
Sat Nov 17 16:18:09 AEST 1990


Submitted-by: Chris Lewis <clewis at ecicrl.uucp>
Archive-name: psroff2.0/Part09

#! /bin/sh
# This is a shell archive.  Remove anything before this line, then feed it
# into a shell via "sh file" or similar.  To overwrite existing files,
# type "sh file -c".
# The tool that generated this appeared in the comp.sources.unix newsgroup;
# send mail to comp-sources-unix at uunet.uu.net if you want that tool.
# Contents:  fonts.lj/S.16.pk.UU tests/ltest.m utils/fonts/cmmi10.pk.UU
#   utils/fonts/cmsl10.pk.UU utils/fonts/cmssi10.pk.UU utils/lj2ps.S
#   utils/pk2sfp.c
# Wrapped by clewis at ecicrl on Fri Nov 16 23:36:35 1990
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
echo If this archive is complete, you will see the following message:
echo '          "shar: End of archive 9 (of 16)."'
if test -f 'fonts.lj/S.16.pk.UU' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'fonts.lj/S.16.pk.UU'\"
else
  echo shar: Extracting \"'fonts.lj/S.16.pk.UU'\" \(8947 characters\)
  sed "s/^X//" >'fonts.lj/S.16.pk.UU' <<'END_OF_FILE'
Xtable
X !"#$%&'()*+,-./0123456789:;<=>?
X at ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
Xbegin 644 fonts.lj/S.16.pk
XM]UD``0``````````!":N``0FKJ!T(0```#,O0_LQTB_1/]`]#ST//0XCT//0
XM\]#B/0\]#ST//0XCT//0\]`[D;P[@KP[9;H[812Z.U$TN#M11+@[I+<[Q+8[
XMQ+4[[TM#ODLSP$LCP$L3PDL#PO2CQ$D\3T@\;T8\CT0\E#/+]"/,]\UL]<]-
XM'SP0P'@D````1CT<_!NHW7U-'7T-#4T].MC0:4=8JET$9+F%TC4]&674,TTX
XM1-<R/5 at EV"(M?0V2$]B]I=FMQ-J-U-N-Q-R-M-V-I-RME=J]@Q+9T-<B+84H
XMU3(]=$C30SU%:=$U/26)M&306JA726T-BM/3U-#0U]'4?=B at H"8E````-R\G
XM_".\'17.]\R<SWSET1`!DP8@`9,=%<[WS)S/?.71&\#`828````W+AS\&Y?;
XM9\UH73TJ1CJUI)B4M,=TP]%U3#TW--`M5B31+683T3UJT2V(TBV6TRV7TBVG
XMT2VVT2VHT#V*T"V#%M`M=";#U4-\+417L])'>ST$F*25NHTM*WO6F7VVL%HJ
XM````-R(C]B$2T5T#$\Y!3,0TRD5,A'3&24Q$M,),%,!,-*3%2$QT9,E$3+0D
XMS8SVT4T6SXS4),M$3)1DQTA,5*3#3`3!3"2TQ$E,9'3(14RD-,Q"/.?0,2T2
XM6`DM````-RH#^A'8L$`\````,28E^R+7/573?1;2;2;2;2;2;2;2;2;2;2;2
XM;2;2;1?375?6;6;6;6;6;6;6;6;6;6;6;6;6;6;6?577,+A`/0```#$F)?LB
XM/776;6;6;6;6;6;6;6;6;6;6;6;6;6;6;6?573?1;2;2;2;2;2;2;2;2;2;2
XM;2;2;2;2;375/7"X)D,````L)2W]+/UX?#>6Q5GVQTCVR#CB;)*&R3XG;*+L
XMYVTHR_R<0*!V1````#LT+OTMOBUO34;2^-"L\A?.,GS2-\PE?+)FRB=\DH;(
XM*7QCI\4K!\0[%\,K)\([-\$K1\`K9[\K=KXKA[TKEKPKI[H[M[DKQ[@[U[<K
XMY[8[][4L![0\%[,L)[(L1[$L5K`L9Z+':2R'<\EV+*=?U3_7'9"P:4@````W
XM+B_\+<:M7$T&ALQL!LE<1<9L9L-LAL%LIK;,:ESEELYG]M!E?0=&TF/B?2<F
XMU&'W4L8EPN1<I<+U+&)<+4<6U&+WTG/VTF7VT&?VSFELQK;*;!;(;#;&;%;$
XM;(;`;,:&T,35K&"P84L````Q+"[^+<DMWB3;XFV>*-<A?6\B;5(WU"1M,T?2
XM\F;1)WT/*&SRE\[RILTK?,\L!LLL%\HL)LD\)\CRQ&QSQ'QO+&;%+'?$\LAL
XM,LE\(LIL$\IL$\I[7)>8QY7\+`Q at H"E.````+R at M_2P>3+(L<A/'7CR2"DXB
XMNRL^2_L^(KL@].,LE<<Q+'(N3+&X%U`````U+BW]+`0&?(?![:;(;!C&AOR&
XMR+AD4@```#,J+?PL_<-\JCC-9(SE1\]%?.18SC:,TW?.)XS2B,PX?-*7S"F,
XMLJC7?7C7C7?8?7C7?8;87:/:/:/:/:/,+`/-*SSBH\XY//*3T"DM`X/0-ST$
XM8]%%/15#T',\VCVR_<+`-U,````:&"+^&]"<T89S9=5-9-9-9-;TUEUN)-?U
XMUFU7U8TZTKTKTKTJTYU'U7UEUN)-$432C460P#M4````-RXN_"UFV6J].WT-
XM'072S2/4K4)DB(1B.79Y,3Q67%_15%T4TD1-(N+50D`8XX`:[;8!J`$OV<#`
XM554````S*BW\+*_9WH`6Y6`4S=U]=R8GTV5E;&=G:6AH9VEI96IJ8_>FIR:V
XMMAY'MK<6MK8O>FIS:FIE:6EG:&AI9V=L965M-R8GU]?=P!3E8!:-[]F at L$I7
XM````-RXM_"S`_*TXV^1LA\%L'$MKDVMK9GIJ=VIJ:'EI>>AI:6OC:&AL'V=G
XM;#9F9L5E96QV1D;)8V-LQA86T,35K:Y6VXT_RL"P9E@````S+"[]+<6M+&S'
XMA\AL)L1\1\%\9[?(>7RG?WS'7WSG/G?0<^)\YU;.9GS'?VS&GVRFM<I<'UR%
XMPTR$Q?3&3'/&.BA,1(23Q#DA*#Q#@B*2Q"DB*3PCDB.#PC at RPL+"/BP<+!*H
XM=ED````[-"[]+-GQUS_55\HF?)-WR"EL<J?&*P;%*Q?$*R?"*S?!.T?`*U>_
XM.V>^*W>].X>\*Y>[.Z>Z*\:Y*]>X*^:W*_>V+`>T+!>S/">R+#>Q/$>P+%>C
XMQGDLAH+)=RRF8LMU+,<RS7(\YQ+/K0^-)M3TUBO at P'1:````)20P_2[4?>S9
XM1UUCM-0]!-(])-`]-<333%TEIM-*]M-:/54!)0$N)M-W;0Q6M7-&E:,FE<,6
XMA=&6;3AEU(5=5U;5=/;6<WUF1M=D;6=&UF1]9D]M9E;65FU69M57;46?736U
XMT5T$T$TTI=5678T-V-:`3%P````W*CCZ*Z\JU*MJEJEJEJEJEJEJEJEJEJEJ
XMEJEJEJEJEJEJEJEJM:UJUJUJUJUJUJUJUJUJUJUJUJUJUJUJUJUJUJU:XP`8
XM:O';B$M>````-RHX^BLJ]*UJUJUJUJUJUJUJUJUJUJUJUJUJUJUJUJUJUJUJ
XMQ:IJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJI:PP`:VO';>`E?````(2$#
XM`/#;P%IA````+28<_1O1??T-IE6RA9629J625L5S1M%6)&TE8D;253-M-D)&
XMTV,S;54R1M52-&U5$T?5425M:%;6=FUF?B;665U6E=1Z71054C6T-5)%=61#
XM;0F9C14PP(EB````)R4[_BW<;?O;55V#E=8[35/%TST%TCT5T3TET#TUT"U%
XMP]-L+47#U%PM1L+47#TUT"TUT2?0T371TB;1TBAQ71+47#U5LM9;\M9I/6:>
XM(M=H/6>.(M=H\]9I/5:DU&E=-J(3T6LB/&PC.ET#1&;1)M#3*7UB`5,!7B(!
XM4P%>(@%3`5XB`6"P3V,````D)"K_&Z;&**PS;"P2;$LUQ;)5E9-$P$DD3"1S
XM0\0W)2QB8T/&-28<@D//)"T#(]'R(M(A/2(2TUT^)-3SU>(M7B/4XSU.,]3B
XM/5+#P%9D````'QLN_2W4;6K253T$@[2BI,&DV?39XEV6V'V'UYUIUIUXU+T=
XM'%-Z9FAH5VE6:T9L-?;0-/;1,WT3-]$DXFT33VT#5L-UPW6SE9.U<]!5/2O6
XM;0#`*&4````<%AS\&]":R&T6TETUTVTFTO;2?2_6/VT^5=7UU5U5HU5TC,A@
XMP%)F````'QT[_2W5Y"WJUKT]#20FTDVTVTVTVTW#W$VTV_3;3;7;3;7;]-OB
XM3;7;XTV^-=SUV_;;;:C9K7T-31U-'4T-:]B-OUW.)-(V34-3UIV5L,!19P``
XM`",@*OX;5+>(>U,T1&4C12.%(E43I1)8N%?']FT'5M!G;0;W715_;09_715_
XM;09_715_;09_716%T&A-%H/27>7=]MWUW?;=]=WVW?7?.<!<:````"$<+OTM
XMU%V)U%--)5305DQ82O64E:5VI76U9K7U;%1M!?1L;S;08VQR?&-M!C_<)\8_
XM;08VQS;&1=!C;05/;&1K9O6U=:6%EH65E86TA,1TT45-)$35C874T"MI````
XM&1,<_1N#`10!#B76WB76WB76WUUM4!!:(6HA6IHA6C%9,T=$5$>Z:<!.:@``
XM`"@A'/P;<])*3(A;F%E!:%@S9V9%.64]95/74TUV(]FMK0U]3299T&A\6VM<
XM6FQ:;%<O%=!7C05IT%8A7153%=%4,ETD,S34A#UU4,!2:P```"DA+OPM=MZ-
XM]M]M_B;?]M]=_VW^)M_VWUW_;?XFW^)MV-N=E";70VUE-M55;35FTEA=%9;%
XMIK7&E=!G;19FTV1M1C?54GUF%M=A7983VU#07FP````J)2K^&[,!(P$$`13>
XM)0$%QM;&U=]0$%QM;&U=]0$%QM;&U=]0$%QM;&U6+U4!!6)&UE-'MU)7J%)8
XM at Q5#2E0T,U`3:&4WI(4"'V`A]0(?8"'U`A]@(?4",P(PP$=M````(R`<_1MF
XMU#&]-!O27V7356TF5M)6729ETE9M%F;15UT6==%7;06&Q97%I;6FI;:5Q970
XM6%T&9=)E735%U5)=:]B-M=[`6&X````?'#O^+=/D+=O2T<T[8GM]=]=]AMA]
XMAMCWV.-MKVVM+1TM'1Q1G$VDVDVO3:3:7:]-I=KTV_7:;9?9C7O5S5T-/2T]
XM'3T-6]>-KUVSTB=-)$35G860P#QO````(AT<_1O1?6T-%E7%A9:E=L56T%3V
XMT6\FTF\6TV%M+1TM#]-A]M)B]M%D7095QG6FE87%5M'0UGT0P$-P````*"4<
XM_AN-]P$E`30!-$<V+1.2<M`Z)RPZ-CPK-CPK)SV_-SVS9-KS=-GT=-CTA-=8
XM376%UDE=7UEM/B6UU"T3L,!-<0```"0@*OX;UFVKUT5=-77164T%I;6UKUQO
XMA=!O==%G70=FT']ET6;VT&?UT&=L:&Q9>EJ(6F$U7&*M%5;37=]MWUW?;=]=
XMWVW?7?/?P$9R````*"0<_1O0V<W)WGWW=FTVEM%K70;07%T5MM%;726FTEI=
XM-:72:6TEKUTUI=)J726_717%T%T4Q=):746%UE5=J]Y]D+`Q<P```!\A'/X;
XMC,?/70301)/$.RQ#L\,\`\,L$\,L!-%-'ST>)-#B30]=!-#C7031/(#`3W0`
XM```F(1S^&V74-IT6,S7'(U3'$V6W$G7)9M!W729FTU9=0X74*&U"A=4H74-V
XMU"A=4H74.%U"E=,Y33.DTRM=$[70/%P]%:/39DULVWT`L'MU````*B4[_2W-
XMXBUO/6\M;SUO+6\];RUO/6+3G,Q,=R,UPV4F6V<G65 at X5UDY55HJ5%LK0VH[
XM4EL[46LL!17`+`45L[P+.[P"P%%<`K85L[4ELZ8TLK5%HJ55DY5U at X65<G:U
XM8E;#4S)\?$S)TRUO/6\M;SUO+6\];RS`L&]V````+"8I_AM5SB.LHR,VR#(T
XM?&,R9\0\%L,\)L(\1L`\5L`L=J/':3R6<\IF/+93S6,\YB/043T8TGU%U>)M
XM.-&=`R;.,VS31LPV;*-VR3EL<Z;&.VQ3P6PSPGPBQ&P3Q'8C/&93(\AC,CRJ
XM,LUEL(AW````+BD[_BW1XBVCVN(MH]KB+:/:XBVCVO+(7"*3:;.&,S6BAR-4
XMHH<399*'$G6#F6:"MW62P&9I+!5ED\$X62PBAI+"*%HL(H63P3=I+"*%HL$X
XM6BP2E9/`.5DL`Z62P"M9*SM8.CP&<I3"5R@\5E)DR&(T3,P]&M8MH]KB+:/:
XMXBVCVN(LP+!C>````"PH'/\;<LXX/-93S74LYT/.<ST&,M)2/30BU3(L0L,Q
XM/#3"(BQ$PB(L-<(B+#3",3PTPB(\-,$R/#/",CPSP3,\(\%#/!3!-$MJ5%EY
XM5E:F9\0<.<(L*L%,#`IYQ&M<$`@)>0```!$#0_DQV,`M>@```!\40_LQTTT$
XMT4TDTO32[832]-)-)-%-!-9-5-1-3TU.V$U/343435360, at M>P```!\40_LQ
XM36353434]-3MA-3TU$U$U4UDT$T4TDTO32[832]-)-)-%-!-,+!"?````#<N
XM'_P?EM(6O/)<+-),3,(V9LLB2UR3(\)<<Q/$7%,CQ5Q#$\=<(R/)6T(LMF8R
XMS,1"S<)2S[<=%@`A8!`00$@3?0```#<N'_P?IQ=P`7;5`!=G<:?(0'X````?
XM&$/],2V?/9XCV>(]GB/9XCV>(]GB/9XCV>(]GB/9XSV>(]GB/9XCV>(]GB/9
XMXCV>(]GB/9XCV>(]GSV2L'A_````-R\P_"Z6Q6Q+N\##?#E696972T-+1CP4
XM%,$U/#,3PS-,1<1"/%7%,CQCQC'SQSQVR"QVY=T^(3VS/SV34]<V351SU3D]
XM,Z312TSTP4S4PTRTQ4R4QTQTR4Q4RUP5S5M=!)331TU45-=#39,SVS$]Q]U=
XM_B/*P"BA````(QD[^RW"V?/876?4G3(3$M(Q,3Q",DDT-#9%-4)'-VDY+@(+
XM.U`JH@```$8]%_P;B3E2E3E2E3E3E3E3E3E4.6'3D4DCDSDSDSDSE"E#E"E#
XM9<`HHP```",9._LMO@(#LI.6<W0D4U1C0T.4(R3#$Q/2(3$M.=1]9=CSVBM0
XM*J0```!&/1?\&V4Y0I0Y0I0Y,Y,Y,Y,Y))'3&6-)4Y4Y4Y4Y4Y4I4Y4I4XG`
XM3J8````C'B'^(!+>3=;;C9,6US-M4U74-UTCAM`Z:SQI/16#TU8]1D/68CV)
XMVGV)UF(]1D/35CT5@\:3IK.&T#==(U74,VU3%M>-EMM-XM[`4*@````C'B'^
XM(-\MU-MMF-=A/64SU%4])F/0:#MJ.EPX71-FTC1M0R;6,5V'VC%=@R;6-&U#
XM9M(X71.EP[:CT&@])F/453UE,]=A/9C;;=3?('@)L````"$A`P`RV[`FM0``
XM`"\F*?PG$M5>T-0_$](S/0-$SD5,Q'7(66Q&P'I\/*Q\3-K"L">V````+R8I
XM_"?"K-Q,?*PWI\!L1I7(5TS$5,Y$/0,_/2,>T#U#$M4 at L#NW````+R(K^B7%
XMQ<')O+I\U=!=!-%-%-(]+STO/2XCTN(],$WBU.(]3SU//4/33333337273?0
XMR\')Q<6P.+H````W*BOZ)<7-PM"].GU6UUV$V4V4VCVO/:\]KB/:Z#W.(]SS
XMW//</;3;3;3;7:;:?8T\+0Q<T+`XNP```#<J*_HE',Q=##TMA]IMI=M-M-M-
XML]SSW//<XCW.@^+:/:\]KSVCVDV4V4V%UVU7O2O0P\S%L$"^````-RHX^BO%
XMS<+0O3I]5M==A-E-E-H]H]I-KSVN(]KG/<XCW//;3;/</;3;3;3;7:;:?8T\
XM+0Q<T`&TW!W2W+!`OP```#<J./HK',Q=##TMA]IMI=M-M-M-L]P]M-OSW.(]
XMSG/BVCVO/:3:/:/:39393877;5>]*]##S``</<+='<)H#,@````O)A'\%MOG
XM:,/`(LP````C&AO\'9C3S-.=5]=?V3XML0J>(=L_V5UWU9T\S3B0H'C-````
XM1CT]_"Z^L-.XS+['FPG#>X?`6^6]7"6Z7$6X3(2V3*2T3,2R3.2Q/0.P/2.4
XMTD@]0W\]8UXCV#/C/:,>H]P^,3VC/B/8-?/6-SU#A-))/2.P/0.Q3.2R3,2T
XM3*2V3(2X7$6Z7"6]6^7`>X?#FPG'OLRXT["^P![.````'Q<\_"VCUN==;F.U
XM0T40.!5#1;XSUNV%UNPZL#'/````'Q<[_"VCQ^9<?C.U0T40*15#1;XSQ^9<
XM<]\\?F7'XSM4-%$"D50T6^,\?F7'.L!'U0```!T</?PNV$V7UT(]5"7406U#
XM)OTT)M-#343:Y4VN)=KTVN5=GF79Y5VO3:XEVN5-I--$328TTO8STV)--3/5
XM,SUWV5UPP&C8````(QPX_3+8+<\]L]1B/1T=!&7#E+.EE*9THQ1CLR-?2S)$
XM2C-#6C-22S1"]*-4'UHUKBDVKC at WKC<XKB8YKU.E\44Z0D0[0E,Z4T,Z1/0C
XMM%]!.D=J25E*6%M630T=$R;4/;\]PMBPP]D````_.#W]+LNM_$VLC6>GTFQ&
XMSFR&RUS%R4T$QTTDQ4U$PTUDP4V$P#VCL]PY3<2#WC?S`0-3RFQC0\@F/#-#
XMQBL<(S/&+!'",CQ2P$P3(\0[7!,CPSP%P3$\0\!<)L-,$\-OPSU&YL)-0_$\
XM(],R/"32,CPSQ1P#,\(\4;-#PSPQP#0\0L,<`U/$+!'`-CQ2L<$W/&)CP3A,
XM=L-)/<.SVCP$V$P4UDPTU$Q4TDQTT$R5S%RVR&SFQ&TGI];(VL3?K+!X#=H`
XM```F'Q_]'MCI"1V`6`S@````.!)#Z##?Z590V`WA````.!)#Z#+@/7L(`-`F
XMX@```#@40^@P`3,!%0$&UM;6UM;6U];?;6U];??6WWUMXWUMX"E]P#+C````
XM.!1%]3+0[6?0;0]\]\?'T&T&Q\>WQL;133;3;2?2?1?2;2;1?1?1]]'WT6T>
XMUG"X+.0````X%$/H,NVWPFPN-\)L+WPFPO?";"?";#]L-L)\)L-L-L-L-L-L
XM-L-<4]@-\````#@20_,P"`X#VW!0#/$````X$D/S,F7I7?"X+/(````X%$/U
XM,#Q5PVPVPVPVPVPVPVPGPFP_;#;"?";"]\)L+WPFPN-\)L+MM\@R\P```#@4
XM1>@R[6?1;1]]'WT7T7T6TFTGT7TGTFTVTTT6QL>WQ\;0;0?'SWSWT&T.UGT`
XMT";T````.!1#]3+>`I?6WC?6WWUM]];7UM]M;7UM;6UM;6U@$%`1,!/8"_4`
XM```X!T7H,@`>4$@)]@```$9%`@`1U9!%^P```$8])_PCKAT3STSO3.3.3///
XM3.3.3.Q*/&HL>@7-7+;*?)^,Y\]=!=!-!=#&I,6EQ*9-!-!-!-`]!-!-`]!-
XM`]$;H- at +_````"8?'_T>`#PPD$7]````1CTG_".Z'1/030]-!-!-`]!-!-!*
XM;$I<:DQM!<]=!L]\[XR7RUS%S4S5HL6CQ:3$SDSDSDSDSSSTSDSSSTSST1K@
X:0!3^````-RXO_"UA)WY?- at U>76$V#5#U]O;$
X`
Xend
END_OF_FILE
  if test 8947 -ne `wc -c <'fonts.lj/S.16.pk.UU'`; then
    echo shar: \"'fonts.lj/S.16.pk.UU'\" unpacked with wrong size!
  fi
  # end of 'fonts.lj/S.16.pk.UU'
fi
if test -f 'tests/ltest.m' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'tests/ltest.m'\"
else
  echo shar: Extracting \"'tests/ltest.m'\" \(8283 characters\)
  sed "s/^X//" >'tests/ltest.m' <<'END_OF_FILE'
X.\"Document revision 2.2 90/08/10
X.nr Ej 1
X.TL
Xtroff2ps testing script.
X.AU "Chris Lewis"
X.AS 1 10
XEver since the dawn of time, people have been dreaming of being
Xable to use "troff" on devices other than Wang Cat Phototypesetters.
XThis is a test document of one such thingie.
X.AE
X.MT 4 1
X.SP 2i
X.H 1 "Line Test"
X.P
XThis line should be exactly 5 inches long:
X.DS
X\l'5i\&\(ru'
X.DE
X.H 2 "Extended font test"
X.P
XExtended font test:
X.eX I
XThis is a standard display - this should be
XCourier, fixed width.
X.eE
X.H 2 "Simple paragraphs"
X.P
XThis is some more of the testing.  Can't you tell?
XTesting, testing, testing testing.
XThis book is a practical guide to the \fBUNIX\fP system and all users
Xfrom the novice to the expert should find it useful.
XMany examples are used throughout the text to illustrate techniques that make
Xthe system attractive to use.  By giving examples of the interactions
Xbetween commands, the user is able to take full advantage of the power of the
X\fBUNIX\fP system.
X.P
XThis is some more of the testing.  Can't you tell?
XTesting, testing, testing testing.
XThis book is a practical guide to the \fBUNIX\fP system and all users
Xfrom the novice to the expert should find it useful.
XMany examples are used throughout the text to illustrate techniques that make
Xthe system attractive to use.  By giving examples of the interactions
Xbetween commands, the user is able to take full advantage of the power of the
X\fBUNIX\fP system.
X.H 1 "Lists"
X.P
XBullet list:
X.BL
X.LI
X\(<- that was a bullet.
X.LI
XThis is 2
X.LI
XDashlist:
X.DL
X.LI
XDash
X.LI
XDasher
X.LE
X.LE
X.H 2 "Ligature test"
X.P
XLigature test: fido, flu, duffle, duffin
X.P
Xnroff doesn't like double quotes too much.
X"X" should look reasonable.
XMore 'test` `test'\*F
X.FS
XThis here's a footnote - slightly smaller pitch.
X.FE
XThis is more of the paragraph.
X.SK
X.H 1 "Different Fonts"
X.P
XThis is normal\f3Bold\fP\f2italic\fPnormal.
XThis is normal \f3Bold\fP \f2italic\fP normal.
X.S 36 38
X.P
X\(bs
X.S
X.S 14 26
X.P
Xthat was the logo at 36 point.  This sentence is 14 point.
X.S
X.P
XThe Logo will be printed whether or not you have raster fonts.
XThe original logo is a stylized "cX".
XIf you don't have the vfonts installed, the rest of the line will be
Xnormal characters with big spacing.
XIf the fonts are installed, you will see 75DPI big print.
X.P
XThis is some more of bigger stuff:
X.S 22
XTesting
X.I Testing
X.B Testing
X.S
X.SP
X.S 6
X6 Point
X.br
X.S 7
X7 Point
X.br
X.S 8
X8 Point
X.br
X.S 9
X9 Point
X.br
X.S 10
X10 Point
X.br
X.S 11
X11 Point
X.br
X.S 12
X12 Point
X.br
X.S 14
X14 Point
X.br
X.S 16
X16 Point
X.br
X.S 18
X18 Point
X.br
X.S 20
X20 Point
X.br
X.S 22
X22 Point
X.br
X.S 24
X24 Point
X.br
X.S 28
X28 Point
X.br
X.S 36
X36 Point
X.br
X.S 10
X.P
XNow, lets have some phun with phonts:
X.br
X.fp 1 H
X.fp 2 HO
X.fp 3 HB
X.ft 1
XThis should be Helvetica.
X\f2Helvetica Oblique\fP, \f3Helvetica Bold\fP.
X.br
X.fp 1 BR
X.fp 2 BO
X.fp 3 BB
X.ft 1
X.P
XThis should be Bookman.
X\f2Bookman Oblique\fP, \f3Bookman Bold\fP.
X.br
X.fp 1 R
X.fp 2 I
X.fp 3 B
X.H 3 "Testing 3"
Xhello 3
X.H 4 "Testing 4"
Xhello 4
X.H 5 "Testing 5"
Xhello 5
X.H 6 "Testing 6"
Xhello 6
X.H 7 "Testing 7"
Xhello 7
X.H 1 "Some Equations"
X.S 16
XEquations:
X.S
X.DS
X.EQ
Xleft [ x sup 2 + y sup 2 over alpha right ] ~=~ 1
X.EN
X.DE
X.br
X.DS
X.EQ
Xx dot = f(t) bar
X.EN
X.DE
X.DS
X.EQ
Xlim from {n -> inf} sum from 0 to n x sub i
X.EN
X.DE
X.DS
X.EQ
Xt ~=~ 2 pi int sub 0 sup 1
Xsin ( sqrt { x sup 2 + a sup 2 } ) dx
X.EN
X.DE
X.\".P
X.\"This is a test of piling (though, this isn't eqn):
X.\".DS I
X.\"\b'\(lt\(lk\(lb'\b'\(lc\(lf x \b'\(rc\(rf\b'\(rt\(rk\(rb'
X.\".DE
X.H 2 "More Equations"
X.DS
X.EQ
XG(z)~mark =~ e sup { ln ~ G(z) }
X~=~ exp left (
Xsum from k>=1 { S sub k z sup k } over k right )
X~=~ prod from k>=1 e sup { S sub k z sup k / k }
X.EN
X.DE
X.DS
X.EQ
Xlineup = left ( 1 + S sub 1 z +
X{ S sub 1 sup 2 z sup 2 } over 2! + ... right )
Xleft ( 1 + { S sub 2 z sup 2 } over 2
X+ { S sub 2 sup 2 z sup 4 } over { 2 sup 2 cdot 2! }
X+ ... right ) ...
X.EN
X.DE
X.DS
X.EQ
Xlineup = sum from m>=0 left (
Xsum from
Xpile { k sub 1 ,k sub 2 ,..., k sub m >= 0
Xabove
Xk sub 1 +2k sub 2 + ... + mk sub m = m }
X{ S sub 1 sup { k sub 1 } } over { 1 sup k sub 1 k sub 1 ! } ~
X{ S sub 2 sup { k sub 2 } } over { 2 sup k sub 2 k sub 2 ! } ~
X{ S sub m sup { k sub m } } over { m sup k sub m k sub m ! }
Xright ) z sup m
X.EN
X.DE
X.H 2 "Hanging Caps"
X.fp 1 PR
X.fp 3 PB
X.ta 1i
X.in +0.6i
X.ll -0.3i
X.ti -0.3i
X\v'1'\s36P\s0\v'-1'ater
X.de Xx
X'in -0.6i
X..
X.wh \n(nlu+1.5v Xx
Xnoster qui est
Xin caelis scanctificetur nomen tuum; adveniat regnum tuum;
Xfiat voluntus tua, sicut in caelo, et in terra ...
XAmen.
XToo bad I can't read Latin so I don't know what that line meant.
XBut it should be a good example of INITIAL hanging caps.
X(AND Palatino...)
X.fp 1 R
X.fp 3 B
X.H 1 "tbl output"
X.DS
X.TS
Xallbox doublebox;
Xc c c
Xl l l.
XCommand	Reference Section	Action
X
Xcc	CP	Compiles C programs
Xcp	C	Copies files
Xdisk cp	C	Copies archive media
Xlc	C	Lists files
Xlogin	M	Access to the system
Xtroff	CT	Typesets text
X.TE
X.DE
X.DS
X.TS
Xbox;
Xc s s
Xc | c | c
Xl | l | n.
XMajor New York Bridges
X=
XBridge	Designer	Length
X_
XBrooklyn	JA Roebling	1595
XManhattan	G Lindenthal	1470
XWilliamsburg	LL Buck	1600
X_
XQueensborough	Palmer &	1182
X	  Hornbostel
X_
X		1380
XTriborough	OH Ammann	_
X		383
X_
XBronx Whitestone	OH Ammann	2300
XThrogs Neck	OH Ammann	1800
X_
XGeorge Washington	OH Ammann	3500
X.TE
X.DE
X.DS
X.TS
Xbox;
XcfB s s s.
XComposition of Foods
X_
X.T&
Xc | c s s
Xc | c s s.
XFood	Percent by Weight
X\^	_
X\^	Protein	Fat	Carbo-
X\^	\^	\^	hydrate
X_
X.T&
Xl | n | n | n.
XApples	.4	.5	13.0
XHalibut	18.4	5.2	...
XLima beans	7.5	.8	22.o
XMilk	3.3	4.0	5.0
XMushrooms	3.5	.4	6.0
XRye bread	9.0	.6	52.7
X.TE
X.DE
X.H 1 "A Test of Two Column Output"
X.2C
X.P
XThe IBM salesman and the IBM system analyst went to spend
Xa weekend in the forest, hunting bear.
XThey hired a log cabin, and when they got there, took
Xtheir backpacks off and put them inside.
XAt which point the salesman said to the systems analyst:
X"You unpack while I go and find us a bear."
XThe analyst finished unpacking and then went and sat
Xoutside to await events. He did not have to wait too long.
XSoon he could hear noises in the forest. The noises got
Xnearer - and suddenly there was the salesman, running
Xacross the clearing toward the cabin, pursued by one of the
Xlargest and most ferocious Brown Bears the analyst had
Xever seen.
X"Open the door! shouted the salesman.
XThe analyst opened the door.
XThe salesman ran to the door, suddenly stopped, and
Xstepped aside.
XThe Bear carried by its momentum, continued though the
Xdoor and disappeared inside.
XThe salesman promptly shut the door on it, turned, looked
Xat the analyst, and said:
X"Ok, you skin that one while I go rustle us up another."
X.P
XThe IBM salesman and the IBM system analyst went to spend
Xa weekend in the forest, hunting bear.
XThey hired a log cabin, and when they got there, took
Xtheir backpacks off and put them inside.
XAt which point the salesman said to the systems analyst:
X"You unpack while I go and find us a bear."
XThe analyst finished unpacking and then went and sat
Xoutside to await events. He did not have to wait too long.
XSoon he could hear noises in the forest. The noises got
Xnearer - and suddenly there was the salesman, running
Xacross the clearing toward the cabin, pursued by one of the
Xlargest and most ferocious Brown Bears the analyst had
Xever seen.
X"Open the door! shouted the salesman.
XThe analyst opened the door.
XThe salesman ran to the door, suddenly stopped, and
Xstepped aside.
XThe Bear carried by its momentum, continued though the
Xdoor and disappeared inside.
XThe salesman promptly shut the door on it, turned, looked
Xat the analyst, and said:
X"Ok, you skin that one while I go rustle us up another."
X.P
XThe IBM salesman and the IBM system analyst went to spend
Xa weekend in the forest, hunting bear.
XThey hired a log cabin, and when they got there, took
Xtheir backpacks off and put them inside.
XAt which point the salesman said to the systems analyst:
X"You unpack while I go and find us a bear."
XThe analyst finished unpacking and then went and sat
Xoutside to await events. He did not have to wait too long.
XSoon he could hear noises in the forest. The noises got
Xnearer - and suddenly there was the salesman, running
Xacross the clearing toward the cabin, pursued by one of the
Xlargest and most ferocious Brown Bears the analyst had
Xever seen.
X"Open the door! shouted the salesman.
X.1C
X.CS
X.TC
END_OF_FILE
  if test 8283 -ne `wc -c <'tests/ltest.m'`; then
    echo shar: \"'tests/ltest.m'\" unpacked with wrong size!
  fi
  chmod +x 'tests/ltest.m'
  # end of 'tests/ltest.m'
fi
if test -f 'utils/fonts/cmmi10.pk.UU' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'utils/fonts/cmmi10.pk.UU'\"
else
  echo shar: Extracting \"'utils/fonts/cmmi10.pk.UU'\" \(9072 characters\)
  sed "s/^X//" >'utils/fonts/cmmi10.pk.UU' <<'END_OF_FILE'
Xtable
X !"#$%&'()*+,-./0123456789:;<=>?
X at ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
Xbegin 644 utils/fonts/cmmi10.pk
XM]UD11T9T;U!+(#$N,B!O=71P=70`H```"Z!B/@`$)JX`!":NP#M!#``"'QP=
XM_QS7\MSSVTVEVA$]D2/9$SU_%#UA4]7Q8]3Q<],8/2&3TM#1\;/!P[\=`Z\=
XM$Y+1-TT328O0.$(,(ML?'!S^&W`3`023P[.SM/H\.3T_D\23M).THZ2SA<`0
XMTZ2SM*\\2.,]1SU(/3D\.CLZ.D<!2L!!0PMO@!X='OX<TF<<-B0J.A(Y+02#
XMTC<],V/5)4U18]85/7%$UQ1-OB3;XTW.)-86\]48+4&3TAL]`=`Z+2-RUWT0
XMP#U$#3\F(A\<_AM]7324T3P]`]`\\]$Z/2.N(])..#TTXG/32#TS@]-(/3.3
XMTDD](Y/2.CT3L]`\.ST#I*U=`,`Y10O/IA\='/X;?9I+2CT2XJ/1&O/2&C<7
XM&C<=3S<=4V+5O4XS<=0W&!D],9\](9\](:/1*CT"H[5ME\`P1 at I)]AL<'/X;
XM?8I*2CT"XJ/0&O/1&C<6&C<=/S<=0V+4O3XS<=,W'4XCV^,]M-?-,,!(1PR4
XM>B$='OX<TF<<-B0J.A(Y+02#TC<],V/5)4U18]85/7%$UQ1-OB3;]-Q-"Q34
XM1.)-0V/4-CTS at M,X/2.3T$HZ(APW)!TGT<`H2`U,SB,A'/X;>TNDM-'C/#T>
XM,\/1XCP]+5T>,\/1XSP]'C/#T4M*M+?`'$D'"(H2$AS^&VRDT>,]'C/1XST>
XM,]'C/1XST4K&P"A*"-]*%Q4=_1N<T4U.,]3C/4XSU.,]3B.A<Y-3E%.38J%S
XMH6/!0]%=$,!,2PV6PR,A'/X;>WBDT$P]$M$]`=,\'4.QU#H=8Y'7.!V#<=@V
XM':-2VC1-DS$3V#,3/7,14]='/6.#U3D]7SH]0[/2\\/2\]`]!-!(MZ7`)TP*
XMXY`<%QS^&WS136XSUN,];C/6XSUN(]`6/!8]`6/"8[)SHV.4/7/`7TT/A;(H
XM*!S^&WC4BEU$T1$]--+Q$](1/2$3T1(]'Q(]`2/2\3.Q,]$4.A,]+Q0Y%#TA
XM0X%3T?%3<5/2\6-18]$7-!8]+Q<S%STA<R&#T?&#$8/2&3D]$I.3T#DI2I86
XMM\!*3 at S;!B$A'/X;=ZFST#T!$\+1\1/!TA(['1$SH=(4*ATO%#D='B%C<=(7
XM-AT1 at U'2XADT'1XALR'2'#$=$=!-+QT3T2T3T#TAN<&PP$)/##15(!P>_AS1
XM?6-3TCD[/#D]`X/2-CTS5--#340SU4\DU4XA36CBUD'TU4+TU$---%/3-CTC
XM@]`Y2SLY/2-4U7T0P"U0"D6P&QP<_AM]312$P[.SM/H\/BD\23PY/$D[2CI+
XM.$S0TN(]OC/;XSVTU[U`P%E1#*8=(1PE_AS1?6-3TCD[/#D]`X/2-CTS5--#
XM340SU4\DU4XA36CBUD'TU4)-4S340TTT4V1C8U%!0X,Q43.3,5$CLR%4TD1&
XM&Y<=4F+5)AUC,]:-=]EME)#`/%(,)@T@'1W^&WT]-(30.SP[2_/#KB/$H[2C
XMP[.DPX31S3."TSDM+SD]#C.CPZ3/.D85.D452T01N3,=I3#`.U,)SZ89&![^
XM',91HF(BD:2!PH+"?RT";RT1?SV$V&UITZTYUEV$V#V?)O'2)?+1)BT"<M`7
XM2B at B)RD5>\`O5`E9FQ@<'/\;/<,X.#(I.B(:.A(J.A(;.A(:.Q'QL['0/;XS
XMV^,]OC/;XSVTU=+`P#)5"NRH'!L=_1L;:430-ST2CB/1&.,]$8XST1CC/1&.
XM(]$9\]`:/!PK'0*ATB@=0E+774#(058)5588'!W]&ZJ#32-CTR<],8/2&4T1
XMKST!L\'/.QT#H='SD=)''4-QU#8=7S4=8T'7,RUS,=A!':,1VDV_/<\M<,AG
XM5P\<<R<H'?T;I;63/$Q%/0/0%ST#P8/$P8.UL9.Q$[&?.A(Z&O.1,Y&S at 4.!
XMPX%#<=`W%3<=`V%C8=%%%C8=+S07-1TS,9,QU#,9,BU#(:,AU3(:,1UC$;,1
XMUO3$U_/0/8+1+9+1'6#`2E at -06XB(1S_&WMIM+312RU#L=5)'7.!V#<=E%';
XM-!W$(=XQ'?4!#S`13?$3WA(]T4/;%3VA9- at 8/7&4U1L]0K/3+$T2T3Q-!8F:
XM4, at Y60E)]A@='/\;NH1-)&32*3TAH]$;3!T#L=%)'3."TS@=1&'6-1UT,=DR
XM':,2VEW//<XSW.,]P]F](,`\6 at KL&!P;'/X;C6A+.#PY+#H<.QM*'#L;/!H]
XMH]H]H]H]I-E-H]H]HZ'#H<.QL\&CP:3!H\*3PI/#@[2-:-`H80AU&Q81$OX1
XM=#)C,1-29$)T,W-"@S\X,N,X,^(W,Q$F0Q(C(B(413+0+&(&W=X2#AW^'":_
XM.N,ZXSHR13$3)$4C-B(W(N(W;B<Q-R(V,C8C-24D-A,I1]`@8P;LDA(/$OX1
XM=9)"4U)#5"-4,G(_.^0\.A(I$R at 5)2=FP#%D"%/K%A,=_AS0;],^/2/2XSE"
XM.#,1-R9&)T4W-B at U\X-.,X->(W,Q,F0Q0C(B(6130-`B90=S-1,.$OX1=7-!
XM4F%"@2-Q,H$C8CE.0[.A$I$B at 4)2=5#`-&8'U5 at 4%27^'-)-(C+0,DPB3#,M
XM#B/434\]'-#SU.0]3D/4Y#U2U?/0(RT$(M!!+1,ATTTPT#%G!Z&J%!$:_Q&3
XM,G(Q$V)44F1#8U)S3S<SXS<TXC8V)4<363(P$//38F-44F1#8T*6H,`S:`DW
XM\Q at 3'?X<1M/STN,]+C/2,U at Q)"=&-C<U1S7B.#3B.#4W-?.#,1-S01-S,1.2
XM(3*C,)`C:06#(`X*'/X;<_9'+6-A(S\3,O%#;S;B-C?S,2-!(S%"(6-`T"IJ
XM!I;#$1`D`!O3_$T@;#P2.10H%2 at 4-Q4]\\XSSC/.,\-R0V0R="*#(J6 at P#AK
XM"%1E%A(=_AQ&TO/1XST>,]$V-C0C%3,4-#,30S,31#(5)3$=!-![,CKS,XXC
XM0T$S0S$S8C%"=$#0&VP$QBH,"1W^'#;V/C4UXS7C->,UXS7C,A0B%3300VT.
XM#%@D(!+^$2-F95$C,5(R0D$R(6,18S$R$71S(32$<R$SDX-O.3 at UXCDX-CDW
XM-O.3 at S$CDW-!(Y-S,2.3DB%"HJ,PT#)N"9J0&102_A$C95$C(D)!,A%C,3-S
XM(31S(3.#;S at UXC@V-S;S at S$C<T$C<S$CDB%"HS#0)&\'P6T4$1+^$86B0G-B
XM4X)"DC*B+SIN*C'SDR.#0H)2<G)#I8#`-W`(#,X5%1H!$5-4 at 2,A0F$R$6)1
XM,W)!,X)!,X/W.#XF.#<X)S at W."@W*44I,10J,DSSU.,]1-*<T"IQ!R2#$P\:
XM_A%S05(Q(D)4,F0C8S)S+S<QXS<RXC8T)4435S(\\[XSM(H at P"-R!S?S$Q`2
XM_A$C5#$C(4$A,A%#$3-%,T01,U)O/.,\XSP]$L#0)7,'@``3#Q+^$76"4F%Q
XM4F,R<D/%MXB7PT&#(W(D<B1Q,9)"8G9 at T!UT!<<>#PP:`!F"GB..,SSB4XXS
XMCC./-1/S05(Q=$#0)W4)*,H8$Q+^$3.B,2-S+Q,W,?%#8V\W->,W-N(G,Q,U
XM0Q0D$B(65#+0)W8'P6X4$!+^$3.!,2-3$3-3$3-C]#<?0X'B,X%#<5*!7R<6
XM-1 at D&E;0.'<+=&8>&A+^$3.B83$C<U,1,W-3$3-S8_0V.!]#<X'B,W.!0W-Q
XM4H*!4H)Q8V-Q8V11 at T$B0;5%8,`R>`DD^Q at 3$OX15$1A,B%!041",50T(5,T
XM(6-"KSTN,Z(S<20C<20C83,A$F$Q02(R5$1 at P#!Y!]@R%!(:_A$SHB$C<_$3
XM-T]#8U\W-.,W->(G-C5')$E1/2/2)B<U1B9%)S4I%2M;P"MZ!W#8$Q`2_A%C
XM85511R)18U&!T1T1T1T1T1T1T1T1 at 5&101)20QA!1D%C8,`C``G8+AH;'/X;
XM?7I*.CPN*CP:XCT!H]KC/:XSVN,]KC/:36S2P$8!#558(QX=_AS8\MX]U=OQ
XM(]H3/9%$UQ8]8F/6%TU!A-,:/2*CTAM-`<3!T3LM$['221TT@=4W+5-QUD4=
XM=$'9,RV3/?$"X,!-`@PT52`<'OX<T7UC4](Y.SPY/0.#TC8],U330TU$,]5/
XM)-5!0QL33Q0]`X\]`T%#&Q-!]-5"35,TU$---%/3-CTC@]`Y/#LY/2-4U7T0
XMP#L#"QQS'1H=_QS6\MKSV?38$3U_$CUA,]8334%$U!4],6/2\7/1\8/0\9/!
XMH[\;.APZ'$@=!'+1-CT$.6O`)`0+X+@?'AS^&W_:8M<7XAV!!T\=`=+]+1\=
XM`0L.(=@7'7)OVG#`)@4-3,XC(1S^&WW:3#T>,\/1XSP]'C/#T>,\/1XSP]'C
XM/#T4M*M+<+!!!@QZ4B`?'/X;?,=,-8/%.#QAKSQ1I,0;/$&TPQP//030/030
XM+1'1'1'1'#'!'$'`'%&QQ1L<4I+&*!QR@<57RWS'P#,'"555&!L=_QQ%M5>(
XM.6H25$1%<S-SDC*2DB*AHA/8(2V2$=KTVN(]KC/:XSVN,]I-70T`P$(("JJK
XM'!H<`!NM#439XCUXTC(R2C0T-T4U-48V,T8W,S<W3Q1S>/<W04<W,S<V0S8V
XM134U1S0T.D(R/2C7XCV4U-"@P$`)"<NJ&1L<_QN-#53:XCPY.$$W-T0V-S7S
XM8V->(V-C8V-B?S4V-S4U.#4U*30U.B0T/",S+2(C$]5MGB/:35T-`,!."@Q;
XMOB`='?T<TGUD5-$Z/#PY31-TTC<]-%333B1-1/--1$331CTT8])'/2.3T#H]
XM`K/"T"LM$K&A4:)105&244%B at 6%!8G%A6(A8>5AX8,`P"PH\.!L6$OX1A-,D
XM+#8F$S<U$C at T$RDT$O.4(2\[,1,[1.([-BI&*"$S$R4D(A97,\!(#`D,SA<7
XM)?\<TETR0M$7+!@K&3D:.!LX&C@;.!LI&C at 5B104*Q5Z&RCQPH\<-N(<-QLW
XM*S<K*!$9*1$8*1,D.A5<\=CC'8\=D,`M#0A(H!44&_\15*$WD2EQ*V$B<E$B
XMD4$QH4'2\2'3XA$=3RU>(=7B+4XRU/+5&M`R#@<<<A(/'?X<E9)!<6%BSB+3
XMQ,3$M9(48S-34S-C,H(O."'SD2."+S at 3-R0G%287)!E7T!@/!GZ5$0T2_A%V
XM4Y*BHZ*CJ3Y#ORPL)"94P#80!P`"$A$E_QR^(=-J)!D221TATATBT2TATBT?
XM+2'2XBT3T?+2XCTCT4T6R+?&T4T?/1*B,=`VP"X1!_'+%1(;_A$C93$C(D(A
XM,A%C$3-T-'0S at _0X/C,X,^,X,S at U*#TO/1XST?/2)L`Y$@>"V!,0'?X<E+(B
XMDD)R4F)B4V)2<D-S,H/R.",H,O.#+1'B.#(X(S<S*#,G-/)R4F)B4H)"@C&T
XMH-`8$P6IN@\*$OX14GXC;C-N(V-_-4]1(C)$0-`L%`DW\Q at 3$OX14H-39D-1
XM)$-!0D-!LS'#$M0!"I-3CS8VXC<T$3<S$3DC$BI"P#,5"558&!,=_AQ4U#U/
XM/333XCU.(]--/STTTSTDT6PB.R,Z)$@F-S8V-S4X0SHR.S$\02T#P"H6":0+
XM&14;_Q%RDGXC at VXS@VXS at VXC@S$T9#$E0B(A,Q533SU.,]3SU2U at T"<7!^=;
XM%1,2_A$6HN)#D_,Y-#@U."4X-3<V-R<V)S8H-2DS.C(K;4`1P#08!P`"$A$E
XM`!R^(=-H1!<R1ST#T.4](A:308(6<=(M$M(=+RT>(](]%=![BXQM!='RH4'$
XM4,`J&0D>U1 at 5$OX134/5+5(E%!@6%!<7$RT?%"T/)"T!4L\D.S0[)3KS8Y)R
XM<,`Q&@A%LA43&_\1M-`S*B8H)R<W)R at _4X/B0X-3 at E.#4X)C<G12<Q%"@R2O
XM/2XSTO/3+4#`)QL))(,8%1+^$7T6TDTT1$DG.#@G\Y)N(Y-CDG.#<X*#<J)B
XMPD+170#`'QP&_I82$Q+^$4TCTRTR)2H6*1<=4=3B+3XBT^(](]0LT"<="*3]
XM%A,2_A$SL3$C at Q$S at Q$SD_0Z'T.QXC.Q3SH5*A8X%S<9-1QGP#\>"8B*&10E
XM_AS2'5XQU>,=7QTVPR$B at S%#4E%20F%3(V%B\3877W%F87;V%C(F%3,E%34D
XM%"@R$CMM/C'5XQT`P$$?"@+6&A8:_Q$TT1(3.Q,32A at Y&3@:1APU'0-!T4,=
XM(R'3,1U$UO/53573$CTA,]$4/0%4OQ<Z&$@:-!(<,A(=%##`2"`*;!H;%R7^
XM'-3QV.,=CC'8&S at 6$Q(V%3$3-A4Q$S47/T-1 at 4-A@4-1D>(S88%#48%347%C
XM46%S45&205&S(3+1?6'8XQV.(='`,"$)]9,:%Q(`$4'3%/'3/R'5(1UQ$:&1
XM$9*2^B at 1&2 at A&2 at 2*"<B)D8CUT at 95S=U5'#`)2('=@H3$!3_$H:)4V,RT1T?
XM'3%!H1,1EX'1\='QTAP3&A0V)IE7T#TC"7:*&10=_AS4`1$RWQ4KXA8K\6.A
XM8L%2,W$S(2-A(R$R=2$RE?,X-C at V.";S at V-S<W)S at G-RGR8K)!`06L`V)`U`
XM!2(?$OX13>/?+?(D'7$Q4=<2%1V!?QH;%O&AL7&2HG&2H8&#DH%R$G*20R)3
XMJ#FW5]%'2L`R)0A%LA41&OT1E+,R at F)B<E-R4H/S.#XB.#,X(T<S1R1&)1$E
XM)A(C)A1(XATRTK>WK3%0T!XF!<XZ#P\6_Q&'8E)"PL+1WRSB/3Q;:GIK3?/"
XMT;- at P#TG"G=X&Q<;_A%!M&&G49DQDU,ADG+Q&1H1&!LI&A$8&Q$8&B$G&A,6
XM&20T&"9"%4C1K-%M/B+7\]<M?SURU-!"0`A^E184'_X=I=)"L8&1DH*29()D
XM at V*BX@%"AC-C42-2 at 1-"D1,RM".S,L,CPR.S+SPR/",[,SLD\Z)BDH)RHD+5
XML-`U8`:JKA$0'0`<P\$QHC'Y)!^"47-!@E%_-!?S08,QDR&?,AHQ&TP]\M/!
XM$K$BH3*!8E*!0;10X!U[!2C(#0D2_A$<$Y'(Z'0X.!P<#@<'`XG%PN(R#@#0
XM)7P&)/T0#AH`$9.A(W%"85)A0U%3^SXZ.N,ZXSHU)#1#)4(F,BA8P$A]"B[P
XM&A4<_1)BU"UAAE%R4C)A<R%ADA)1HA)!LA(QQ?(<81T'T2(]`R1"8D0Q8T0Q
XM4T$4,3)A)#1_$ST.(4+1%!TA,M(3'4/4L!-^"``"%1((^!W!+$/$(MC!/"/#
XM)-`1?P1QR`P0!?4;5W)R0;$AT@$!T!\P"``"%1`4_A)6 at T-2@C.#+RHAYSH_
XM$J(C at S*"4T.&4-`0,0@``A4-$_P2<914$ZX!`UW`)3((``(5$!/^$D=R8T&3
XM,:,2IZ,1L\3#P\/#PM`7%2 at 4&2/"T1TAP"XS"``"%1`<_A)6 at E-?&#-&0D<R
XM1D,G3//#PJ;2+2\]$]#T$ICX>5LR&308-24I9<`L-`@``A42&_\2SRTCT?30
XM$3P2.R([$SH4.20Y%3 at 6-Q<V)S88-1DT*335YK.[P"TU"``"%1`<_A(B at DM:
XM:(Y1TA-7$20U*"09+1/1+1\Q*G^6I,(AHR&B08)B4I5 at T#<V"``"%1`=_AN$
XMHD)R86)C0F0R=#*"/STM,U4R%"0Q%B-((D at Q.B'D.C\2HQ.2,H,R at E)B<D*E
XM4,`D-P@``A41'/X2$=/3\=(AP2\<$QL=+QTATO'2\M'RT>,]#E31*=`R.`@`
XM`A40'?X;5I)"<8%2 at CXRHB.2,W)$864BA[6G<D129#*3(J6UX\(2L2*B,H)3
XM4H90T#<Y"``"%1`<_A)5HD)R8E*",X(RDQ\Z(>,Z,2HQ*4(H0R81-"02-5,_
XMTM,R at C1R-&)#<E%R8D*E<)`2*!```RHE"/X0<;D;GQN1N"N-\+ at 3*1```RHE
XM"/X*V1V"+9'9\=D=D=&`$BH0``,J)0C^$*0:P:SQK!K"+1"($BL0``,J)0C^
XM"M&H*I&J\:H:H7#0$BP$<<@,!PO^$T,E$S-.(E-354/8$BT$<<@,!PO^$S15
XM-3XE)#,Q4C3(*BX(``(5$A3_$RTTT6PB.R-))4<G12DT*D+RQJ0BDT)T4E1R
XM-)(CML31+3#`*B\(``(5$A3_$],M%,:S(I0R=%)4<D.2)*;\(DHD.25')T4I
XM0RLR+&T4TR#@"CH$<<@,!`3\`V_VX`X[!''(#`0,_`-O]Q$1(DC`*SP,<<H@
XM&1C]%=D]=-9-9-9-9-9-9-9-9-9-;TVDVDVDVDVDVDVDVDVDVDVCT"X]"``"
XM%1`I_AX!#RT_TM/2T]\M/?+3WRT]\M/2T]\M/?+3WRT]\M/2T]\M/?(!`, at K
XM/@QQRB`9&/T5/:3:3:3:3:3:3:3:3:3:3:]-9-9-9-9-9-9-9-9-9-9-<]G`
XM)C\(``(5%10`$ZY1UCDG-R%3,U70J='UTC$]$C+0)2P7&R<I*2@;%- at E6P8X
XMY1`+(/X>ZQH24S0B)3'E%T]C$6(A4R%#,4)!,E$B81)S@:#('%P&..40"2C]
XM'ND8%C-AT18S8NMR8S8=$6,V'E at 0P"A=!CCE$`LG_AV/%.85%!4R$F+5)B$C
XM44ZQ44%3(28M4F(2-13C%13Q at +@@7A```RHE"OX/'7$1U1,=,5'1%QSQDLLK
XM/'/"6UQL7,G"L"-?$``#*B4+_A#&'2P<G'Q$PTP2R2L<T8+/)2T20=,3'5$1
XMUQ#P#VED96YT:69I97(@0TU-2?`<8V]D:6YG<V-H96UE(%1E6"!M871H(&ET
X886QI8_`,9F]N=&9A8V5B>71E]`#J``#U
X`
Xend
END_OF_FILE
  if test 9072 -ne `wc -c <'utils/fonts/cmmi10.pk.UU'`; then
    echo shar: \"'utils/fonts/cmmi10.pk.UU'\" unpacked with wrong size!
  fi
  # end of 'utils/fonts/cmmi10.pk.UU'
fi
if test -f 'utils/fonts/cmsl10.pk.UU' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'utils/fonts/cmsl10.pk.UU'\"
else
  echo shar: Extracting \"'utils/fonts/cmsl10.pk.UU'\" \(8638 characters\)
  sed "s/^X//" >'utils/fonts/cmsl10.pk.UU' <<'END_OF_FILE'
Xtable
X !"#$%&'()*+,-./0123456789:;<=>?
X at ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
Xbegin 644 utils/fonts/cmsl10.pk
XM]UD11T9T;U!+(#$N,B!O=71P=70`H```<*XP2@`$)JX`!":NP#]!#``"'QP=
XM_QS5'>+<\]OTVEV2%- at 237(DUQ--8C36%%U"5-0633\732&$TAA=#2T!I,\;
XM2QQ+'02?'11TQ4E\P#5""U58'1L<_AM-706#M*.DI)2SGTM'3#CTM(2DE)2D
XM=+TL24I*2>)+1^-,1TM(2DA*24E&UH#`0$,+CCL>'![\'-!W&S8D*3H2*2T$
XM<](V/3-?/5)#UA1-84/7$^)-KD3;37$TUA7SUA8]07/3&3TAHM`L*QTC<M9\
XMP#Q$##CF(!X<_AM-736$T$L\3#OTT#I-!(XTTCA-)'32-TTS?B321TTCA-%'
XM]-(X31.4T#I,2DL[2SQ).M7`P#I%"N.0'!L<_AM-J%I(3#XX30&$T1A&%QCT
XM8=-%+31#TKTT4M/B1ATT87%_32%_31&$T"A,*$PX2E394,`N1 at IQRAL:'/X;
XM39A92$L^.$P830&$86&/1ATD4M)$/1O212TN-&'1Y4V$V5U-#0#`1$<,CCLA
XM'![\'-!W&S8D*3H2*2T$<](V/3-?/5)#UA1-84/7$^)-KB3;3-/34TU$---%
XM\]-&\])'/06"T$HJ(BLV)1T6T-`A2`P``A\?'/X;32R%E<Y$I,Y4I,`4WD2D
XMSE2DQ*35E8PL4-`6207''0\1'/\;387.1,Y4SE3.5,35C4#`(TH(..45%!W^
XM&WT,72Y$TN5-+E32](-4?U1'1$@U.18[%#T%T,!+2PQQRB`?'/X;30686UI,
XM/$P=%+'22ATTD=-)'42!U48==%'81#UT--9#$4U4(23501-=15341DU$=-)(
XM32])31]*302TM,2UIFQ;,,`B3`H``AH6'/X;31Q=3D34Y4U.1-5+'B5,'U2Q
XM9*)4HU2$+7+06$T.JJTF)AS^&TD!*84!%L$4`07?$4T13?$4P23/$TH23?$T
XMD331-(%$T41Q1,\51A1-\5115-%D,6319"%TP70A9-\701=-%UA-&$A-&#E,
XM*#A,1RE8E27%T$).#``"'Q\<_AM)BH6TMK+!%+'1%:'?$DH<\42!WQ5''?%D
XM8<\81!WQE#'1E2'1I"'!MM\<7?'4T0$#P@$"Q`$!F<&0P$%/#''*(!P>_!S0
XM?5-CT3D\/"H]`X/2-CTS5--$/5,TU3,]8RXDUHX]9!XDU4,]1$/4-4TD8]%'
XM30.3P[.3TC4]9]#`*E`*XY`<&AS^&TU<5TI*.4I.*$L^)TM'2SA*.4DY2$K0
XMT.--CE383974S1#`6%$,<<H@'"7\'-!]4V/1.3P[.CT#@](V/3-4TT0]4S35
XM,SUC+B36CCUD%-8R]-5#/41#U#5&-D8U$Q4W-!43.3(6$CLQ%DTD0W&Y<=4G
XM'5)AUC0M:==]AMI'P$!2"\<>'QT=_AM-335ST4E,2DM+._2TGTM*2SM*/$D]
XM!'30T--'/22#T4A-!)/024OD24Q)1A1*115:-1''-!VE,,`Y4PCCD!<6'OX<
XMIE&"8B)RDW*C8L)>(\)$P5357574G1O+R]&=1=5-;S3B'1-!T24L-#PE2B8B
XM)C<5><`L5`N..QX<'/P;/<)'5D(I22(:21(J21+QM)$AI*$1M*'0XTVN5-KE
XM3:3;74TYV"I5#``"'QL=^AO4I%M'32CC31CE31CE31CB31KSP;.QTY$!$H$!
XM,T(!90$0R#]6#``"'QT=^QO(DVT$=-(H32&4T1M-`;],'$L=!:'1])'2]('3
XM5AU48=5%'61"UD0==2'90AV?01VO7<\]WRU0R&57$''**RD=^QO$M9-;6D=+
XM6RA,2QE+6QE+6AI*$4H:2A%)*E at 221Q($E@<]'%$<=#T851AT44611TE0611
XMTT,74QU$,80QU/0AE"'502E!'601I!'6:EV$M=A,/9/0/9/0+:\M$M/`1E@,
XM``(?'QS_&UQ*AX7%D]))+36!U4<=9&'75!V4,ME2';01W%WDWO7=;;$DVA--
XMD477)4UQ9=4834&5TAM-$K7"T$I;9J;#R#M9#``"'QT<^QO)@VT$=-(H71&D
XMT!M;'02AT5D=%8'31QU%4=9%'64QV$(=E!':;;]-P]SD3</<3<77S0#`/%H)
XMQQX9&1S^&VUE6D8[1RM(*E@;21I)&DH977373737773737377721I)&DH92Q
XME**$L82R=,)TI&25;6;`*V$(``(5$A+]$5>34H12<V-B<]+SJ'1#8U-B<U-S
XM3S at S1T-&$3(2-!(Q(V0SP"]B"..0%Q(=_!PFT4T>4]'B/2,T at Q)"9')$@S\Z
XM(^(Z/B$Z,CHC.3,X,T at D(B0F%4C0(6,''',2#Q+]$79S,U)4,F,S8D+.([XC
XMTM*A(X%"<6)1AE#`+V0(XY`7%!W]'-%M-.73/3XCI#."0A-BA%.#4Y-2HTXC
XMHSXCHU\J-3A&)T at D(4E#8L`E90<<<Q(0$OX1=H-"8G)#<R.2(J(3HATA/.(]
XM$M$K$RD4*!8T*5;`(F8$XY`-$AW_',6S(Y)#@S1S4HXCT>([N_/1Y3T>4]$]
XM)+J`P#MG"``"%18<`!+5.T(B*",A$C<E)!<U.N,V.C4\)2T#,M`232'7\M>\
XMR=%RHV'0)2T#/RT24L)QLI)SQZ#`)F@(XY`7%!W_'%;333Y3T^(]0S63$D*$
XM8V]'-N,X->4X-3 at V1T*2D-`7:01QR`P*'?\<@O<W($QF1S;E-N4V-T.1T"!J
XM!..0#1`E!!P!`OT]('M\33SE/.4\Y34E-40U0S<C.5G`-6L(<<H6%1W_'%;4
XM34Y3U.(]4TAC9(-BDV&S4<-!T#,=$Q/1C$(\,TLT.S1*-3HU2#<X-E22 at M`6
XM;`1QR`P+'?\<5G3E<WY3?E-^4W.$22#0*6T-55 at D(1+_$38V9H0A4D%2A6,2
XM8V](2#;C.3DUY3DY-3DY-DA(0I.3D-`>;@CCD!<4$O\1-C6$$D*$8V]'-N,X
XM->4X-3 at V1T*2D-`D;P@``A43$OX1AK)3<X)3DS.R,L(N(\;BPR+",K,SDU-S
XM<U*V@,`N<`CCD!<6&@`11C2T$D*D<H2#<Y-SHGXCH^)3HV\Y-S at W1S@Q)"HS
XM3.(]7C/3G0#`+G$(<<@6$AK]$8118D$R0V$3,X,_.3+B.C'B.C,J,SDS.$0G
XM1B0A.$,]+B/1XSR1T!IR!D1&$!`2_Q$V(W83="14,V0R?C/.4\/4FF#0)W,&
XM3Z80#Q+_$68A0F,R at C&1,I$S at 36XB(C$(9,O&B(H(C at 3(14D$V70'70&..40
XM"QK\&6XAGR at H-T6_,WY3<XXS42\T%",61-@==0CCD!<1$OP196)'0S@^4C at R
XMXS at S\W0S9%)1%%8FR"EV"''*%A,2_!&$<D at U."8X%S<G-QA%&C4:\T&S,=`R
XM'0,1T5T4TCU"U!S8/'<+CCL>&Q+\$8*"<D9&-#@G)3<W%S9&%_-1$U&#02-!
XMDT$R09,Q0C&S(4,AOS$5,1Q&34<]."`1*"`1&1O`+G@(<<H6%A+_$3 at X5523
XM8L-1T#0=(R'3,2U$U3USU4U!(](330%3P7.B<X1T5TD at P#AY"''*%A<:`!%(
XM1V2#DX*C@;-RLW'$4=$U'1\T'2,QU#(=0Q'57536/8+8\=CQT30='T,=(R+4
XM35#0)WH''',2$1+_$4U#8U%S4G-1<V%C<5/3WSTU%S86-Q4W%3 at 5-R0V--3`
XM(``*``(:&1S^&TV(6$A*/CA+&/3!CC37Y4U^5-=-A=/0P,!%`0U56",>'?X<
XMUBWO/=7;;;$4VA)=@378%$UQ5=4675%TU!A=+QI-$;7!T$LM!+'161TT at M-(
XM'45AUD4M9%'74QV4+?("X,!1`@QQRB`<'OP<T'U38]$Y/#LZ/0.#TC8],U33
XM1#U3--4S/6,DUD%#&Q-!0]`X\]`T%#&Q-!3604UC+TU4,]1$/4-4TD8](W/1
XM.3P[.3TC4]9]`,`V`PL<<QT:'?\<U!W"VO/9]-A=AM8176$DU?$TU/%$TQ5=
XM(631\730\83/&5KQM)\<2"Q'2U.5P%`D!`JJK1P<'/X;5Q]'%>,6\;;Q9Q9V
XMEF]I9_%G'2XA;Q46XDXG%=`?!0P``A\?'/X;0!V$I<Y$I,Y4I,Y4I,Y4I,2D
XMU96,+%#`008+CCL>'1S^&UVU715DTS9=(H33&%TAE-(971&DT1KUW/7<7;3=
XM+>'>'>'2&QTAL=,:'3*"U!@=4G'5-AU%7:7;4,`N!PQQRB`;'?H<1;5(B#EI
XM(E1$17-"<Y,C at I,3D:,2V2$ME=GC39Y4V>5-E-I=31K`/P at +CCL>&1S\&XTM
XM)=?B35C10D$Y-$-&-44T-D4S-T5/%'18XG1H=&,C=%0D9%-#5%-C1#.C)!30
XMG6]-=-A=+1?`. at D,<<H@&QSZ&WTM1=GB2U=&4D9%1/145%XT5$1D1$1_-41'
XM]$0TDT0DHS0SPR0CT3&-1]GTV4VEU-&@P$L*"XX['AL=_1S(U#8]`Z.4PW30
XM14TC4]-/---.(DU$)-0S330TTS4])%/2-ST#@]`J+#HK/"HG%2DE$A89%A(6
XM&"43%A at 6$XB#^'A`T"\P"``"%1$=_!N%HS-R8F\H)"D_(Y,BH^,3IN2C$Z(C
XMDR\J,BHC*3,I)2<F)B at D*EG0&#$(``(5#1S\&[*3=E(SKB.>4YY3GE.3I$W`
XM-#((``(5$QS^&Y:R4X&#;QH_1(/S6#0Y/232/2\](](](](](M,M,M,H%RD6
XM&A8;%=%-%-)`P#,S"``"%1(=_1N5LD.!<V&#7B1D0W/2/1/2+2+1.VU#T_/2
XMXD,X0O5T)(,SA#&C48-R4Z:`P#,T"``"%1(<_AO3+2+2\]%-`1/!([$CLB.B
XM,Z%#D5.!8W%C<7-B<V&#49-!HSU>2ST3TDJQP#$U"``"%1(=_1MB<VMYB9Y!
XMTQU!-9$20H)C?Q@](]+B0CA"](0D at S&D,:-1 at V&"@D.UD,`Z-@@``A41'?P;
XMI:-!@G%B8U)D0G0S<T+1/1+1,U8Q)"5'(S$7,O22+B.C$Y,N(J,BDS."4G-2
XM<G)"M8#`+S<(``(5$AW[&S'3_3+2(L$QP4&Q0;'4'3'3'3'3+3'3\M(M+ST4
XMT?/1XDT.)-(M`-`V.`@``A42'?T;E;)2 at 8)B at EXBHO,Y)$<F5"=B*7Q[B"-F
XM)60H0RHS*R+B+"(L$RLD*A4H)S4J:,`\.0@``A41'?P;A:)1 at F)B at D.",Y(S
XMDR*CXQ.C$Y03DR.$,H1"81-142-E(]$]$M$T*"1&-$8E-B87*!0Z6L!/)`@`
XM`A43(?T>SQTFLC$B at 4%185%146%A,F%#\R830C44,S4;-!M2&YNJJYP17!,\
XM%"46%#,T%2-$%2,U%2,7%107%"46%!85%!@C$BMM/QO`5R8,<<H@'1_]'</<
XM(AVB,=GR0=CS0=@S'9)!V2,=GS(=HQ&)@[2SPK2RL1.QL2.AL32!LD.!HE-Q
XMHV-1LG-!LX,QLX,APY2A(Y.A,Z.10W(3<6)20T*5A7#0(C\'CCL4#QWZ'%=B
XM8D&2(I?X:3L[.SLL+1T=+?'>(06?.TPKP"D^!XX[%!`=_Q2BT/30(%#C'1+1
XM'1+1'1+0+#P\/0.#(X>3(J(CD4)C9V#0$A`$<<@,"1+_$3948^537E-39"G0
XM&Q$$XY`-#QH$$8>TP^6SOE.^4T)31$-$,V(SA8#`.!D(``,5%1W_',71-"LG
XM*3<^)S at W-S<X*#<I-3=B3#4K-BDW.#@HXS at VXSDV.#<R)#8R0C<S(C5D1\`Y
XM&@N..QX;$OT15W5C4D)"5%(2<D-E at C)TDOPZ)]=$0](U/2)ST3<]`X/0.$H1
XM.$D2-R$W%#0S-1=G9<`Z&PQQRB`>$OX1A9624E)"8H(B<D.&@B.DDB*SHA.S
XMHA.](3L\XCL]$J31.5H2.#$I%"<R-Q8T)349667`11P(``(5%!K^%=4=4M4=
XM4;81HE.#<V-Q$T-Q,D*!,C-Q0R-A4R-18Q-A4R-18R-!<S(Q at D(Q<T,1<V-S
XM at U*A%K'5'5+5'6#`7!T.<<HE)1S_&]':U1%834$DH],B2QU!-+'3\42QTO%$
XMP='Q5&'6%D8=8612U19%+6U=4712U1=&'4&$8=081A4:&$86&AA-`9&4P9*4
XMP9&DLH*DL9&DLG24E$E-9<!F'A`XYBHF'OL<T&`0-M:$=:1SH\-CL]`6/#T!
XM5,/0%$T#T!0]`]$330.103/1.1=-$Y%TT3 at G31-S9-'0=-$X)^)-$Y%TT3D4
XM$DT#TA,]`](3],/1%3P]`E2DT!=)/#@X2EHUUM!ML-!?'PQQRB`<(/P=`<$!
XM!U'#8R*CHA&CPJ/3@]$38]$C5,(S0]%#-,%3,\%C)+%T%*&$%)*(H804D904
XM@:04<;048K,D8;0D4<0S0=-#,=-3(=1ETW33D\.DHK$S4\%GT@'`H!HA!''(
XM#`D>_!UB;T4UXD7C-N,FXR?QV/-48F"@&3P$<<@,"![]%%)?12TN,6XR7B-2
XM7C-.-$-0L%$C#558(Q\E_1S&)RQS8\?R<L<V/')RQS8\?R<L<V/')RQS8\<G
XM*=`M+[)RQS8\?B)RQS8\<G*](M"2<L<V/'\G+'-CQR<L<V/'\G+'-CQ_)RQ0
XMP&\E#558(QLA^AY4TR0C'1,R4<,R8X0S<1 at 3,H&3,X&#0X%S4X%R8X%C8H%C
XM<H%3 at G%3DV%#LE%2T!05/1139-`U)!LU)1LE-ADU)Q at U-Q<V*!8V.!8G.!4W
XM.!0X.!,Y-Q,Z-Q(\)A,M`E$ST2,4+310X!$G!''(#`8,^1P8]\T$$((01B#0
XM*"@&..40#BK\'M'!LK*RP<*RORORORL[\K\[XBOG/.,M'?+2T=+1`0%PT"LI
XM!CCE$`XJ`!YQ`0$!`=+1TM'>(L/GPN*S^ROSORL[*SLK.RORLK*RLK*QT,`H
XM*@@``A41$OL>GB+2&245(C030S(B-XOTHQ$2="$C0S(T$E)1DM(=+RG`("L,
XM<<H@&QS\%]+B+;/;Y"VSV^(L`IP]OD+;/;XRVSVRTN`0+`1QR`P%#/T#.]YP
XMA$(A$0#@"BX$<<@,!`3\`W?VP$<O"``"%1<I`![8+7/7+7/7+7/7+7/7+7/7
XM+7/7+7/7+7/7+7/7+7/6/7+7/7+7/7+7/7+7/7+7/7+7/7+7/7+7/7+7/6/7
XM+8"0$#H$<<@,!Q+\$4)$\SWO,T0D@!<[!''(#`@:_1%25/0]HT]%-_%O%O%A
XM87#`$#T,<<H@'`S]#RW"W at T]XMP at P%)`#''*(!P=_!S0?5-RT2P<'2&AU!@=
XM86&$@5%R0G%!8F%Q,6*#03%3 at U'B$5.34N-3DU$18I-!(6-T03%B81)!07)!
XM(R)!A41QWQWQWQTSDI;0JM`:6P1QR`P.*?X>?W]ROE*^4KY2OE*^4KY"QV=P
XMT!I=!''(#`XI`AY_?\+ELKY2OE*^4KY2OD)W9W#@$6`$<<@,!@SZ'`0A""$$
XM$+OGC.`.$@@``A4&"/<<8\<.&'#!X`\3"``"%0@'\QP.'APX<,"`Z`T4"``"
XM%0H$]QG`V&/P<- at 2%0@``A4,!_<<&B^1$G$C0SA54,@)%@@``A4.`?D8T>`/
XM%PSP-B('!^\='(4,&"B.`-`0&`<<<Q(+"/W^4X23GS<R at AK0#2`$<<@,"@3]
XM#W-24U*`X!!>"``"%0H&]QP$`X&PQD"@$.`*7P1QR`P$!/@<;_;0%'T(``(5
XM#0?W'#\T,C0S)2/R4C)20.`/?@@``A4.!/D;'@3^-C^@..`.?P@``A4+!/<<
XM8-X_Q[!@P#$+"558&!T=_QS09%PU$3(Y-D0X-E-'-T4HXC@]'B.#O9OS@]'E
XM.#T>4X/1.#TCA+DY@,`K#`CCD!<5'?\<T&T#4:-C at V1S='."CSU.(]'5<W1S
XM at VY3@VY3 at V.#<X0Y.!#0)@T(XY`7%AW_'-FS1)-4DV2.,X-^(X-`%(\X-^4X
XM-^4X-S at X1T22DK`[#@U56",A'?\<P75L$V$C4:-U8X-U9'.$='.$@H\Y/%XC
XMD\+2<Y-T<Y.#;E.3 at VY3DX-CDX-TA'0Y.2D0T#8/#558(R(=_QS76;-A(T23
XM=523=62#A(..(Y.#?B.3 at T`@CSDX-^4Y.#?E.3 at W.3@X2$=$DY*2X!TB"``"
XM%0X,_!P8&/#WQ\T-!`00$(""`A`00$8&("#`"BT%558.#`+_"1V1X!U<"``"
XM%0X,]QP$!"`A`0@(("$!!`00$+B[X^>'C`S("7L(``(5%`'^"]>X"7P0``,J
XM*0'^"]WP#VED96YT:69I97(@0TU33/`58V]D:6YG<V-H96UE(%1E6"!T97AT
X7\`QF;VYT9F%C96)Y=&7T`.H``/7V]O85
X`
Xend
END_OF_FILE
  if test 8638 -ne `wc -c <'utils/fonts/cmsl10.pk.UU'`; then
    echo shar: \"'utils/fonts/cmsl10.pk.UU'\" unpacked with wrong size!
  fi
  # end of 'utils/fonts/cmsl10.pk.UU'
fi
if test -f 'utils/fonts/cmssi10.pk.UU' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'utils/fonts/cmssi10.pk.UU'\"
else
  echo shar: Extracting \"'utils/fonts/cmssi10.pk.UU'\" \(7911 characters\)
  sed "s/^X//" >'utils/fonts/cmssi10.pk.UU' <<'END_OF_FILE'
Xtable
X !"#$%&'()*+,-./0123456789:;<=>?
X at ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
Xbegin 644 utils/fonts/cmssi10.pk
XM]UD11T9T;U!+(#$N,B!O=71P=70`H```Q56-Z0`$)JX`!":NP$!!"JJN'!D=
XM_QS4/8]=8A/5\B/4(SU"--(D31-$T25-`U30)DPV3"A*.$GSE(_4<[5BT$4]
XM!$\]%#/20RTT(].-5,`Y0 at JJKAP9'?P<;1O3E(5TI62T;B3$1-`U3$5+1DE7
XMU'TYU(1H=*54Q%XTT$--$T301$Q%2T9(9M2-*L`J0PHXYAL7'_H=T(S0E&1T
XMH7353536/635]-7B35Z4USUTUST!9*-U9*S0><`U1`N./1X:'?P<;1S3I(6$
XMM'],1O301$T4XT32/C--)/)-)#]-%$301$T35-!%3$9*2$A8TZT<P!Q%"8X[
XM&1@=_!QOU636Y$UN1-;]1_36Y$UN1-;]5L`<1 at D<=1 at 7'?P<;]1DU>1-7D35
XM_3?TU>1-7D35]-;`-4<*JJT<&!_Z'=!]'0I&5THG3!9-9-<]=-;TUN)-;B37
XM28-(A.--`T3#8\-DLW.S=*.%5;S1>L`?2`M56AT:'?P<;B3$Y%3$7D3$7]=O
XM3$7D3$7D3$7TQ&#0%DD$<<H,"AW\'&XDY%1>1%XT7D1>1%]&P!]*!XX[%!,>
XM_AS2XDY-%-'D31XTT>1-'B1A=')5;(JVH,!+2PL<=AT<'?P<9-%&30.$PX2T
XME*2DE+2$Q'3$<]%&/21$TT--1"730GTD$Q32<ET61-!E305EQ(3$A;24I*2D
XMI92TE+6$Q'301TT48+`63`BJK18/'?P<;B2N1*Y$KC2N1*Y$K2#`:4T.``4D
XM(1W\'&]M)F;1=3$]$11O,3T"%&,4LB1C%*,D4R2B)&,DDR1C,Y(T8S.#-&,S
XM at D130W,T8T1B1&-$4T1C1%)44U1#1&-40E1C8S-48V,R9&-C(G13<R)D;S<Q
XM)T;S=813DX1CUT;0.4X+55H=&AW\'&XFLU,3HVXS(Y->(S1S8T-S8T1C7B-4
XM4V-C4UXC=#-O.#,U.3(V\Y038Z,38Z=?.V;`/T\+QQX?&A_['=!]2]#1IE:%
XME66T5<5$T4--)"330DU#\4U3%-2./5C]1!]--"320TT51,55I725AE:M'1O4
XM;0#`*U`*..8;&1W\'&T;TY2%?TM&XDQ$30-4Q%3#9+1DI&25?4C2I-?D37Y$
XMU_38P$-1"\<>'QHC^QW0?4O0T:96A95EM%7%1-%#323R333B%-2./5C]1!]-
XM-"1D5#1S141D-%1Y=&B&5JT='0TF%-E=GUV54-`U4 at I56!L9'?P<;<`2E(5T
XMM&3#;B3$1--4Q%2T9*1TAF`3@!*=Q&._1TKB2$CB2D?TM%3$5-1`P#)3"..0
XM%Q4?_1VWRY-D8Y)RL6/4XCU/3534;3G0K*T)TUU%U/35\]3S,L-"PE.C9&.;
XMQZ#(&E0*XY`<&1WY'`);37Y$U^1-?C37Y$U^1-?TT]`F50L`!1T8'OH<3B33
XMY#33/D33/C33/C333TPU]+-SHX2#I%3*`2;0R#Y6"JJN'!D=^1STU7U#%=,C
XM32,_31-/30-4PW]*./23E(.D at L1CST4]!$/11"TD,],S+4,CU#(M4Q+6;678
XM33#(:E</''8G)!WY'/3%Q\6S%+(3LQ2Q(Z,DHB.C)*(CDS22,Y,TDC.21()#
XM at T2"0X)D8E-S9&)3<G134V-T4F-BA$-C4X1"<U*4,W-#E#*#0J0R at S.O0BDS
XM*_02HR+#(;,AT2$L(2T?3032/1/1P$A8"JJN'!T=_QQTTC==`Y3$E:2TE,2$
XMT49-)%340TUC)-=!/9;:7</<7:;9C70CUD--1%/31DTC=-$Y3#I+/$D]!731
XM1DTE1-1$R#E9"JJN'!L=^1Q-5!730ETS1=$U70-ULX6DE)2E@\1ST%4])$/3
XM4CU4(]5!/7;879XTVCVN--H]KTU0P#-:"<<>&1H=_AQ_UMA-A-A-A===A-A-
XMA-A=====A-A-A-A===A-A-A-A===A-A-A-A=?]=@T")A![!=%!`2_1%VB5Q#
XM8T&3T\.F6STE8R-S+S at R15(!`\53,]`K8 at A$1A41'?T<;B/>0]XC`0,U8QA-
XM153S.#XR.3(X,CDR.$)&0T5$Q#&%,U;0&6,''',2#Q+\$79Y6S13([\[Y3PY
XM$D5#Q)=FP"UD"$1&%1,=_!S3XCY-(]+B.%,VD3705513=$.30X-.,Y-/.#4W
XM141FD3:!.4,VT!UE!QQS$@X2_!%EB$LS1"-R$X(0+>+#LY$45"PY9E#0'68$
XMXY`-$1W\'*:8B732`0XCWB.ON>,]Y#WD/?,!`,`T9P@``A46&P`1I32="-%S
XM0[-4HV.>(V.S0\G)T"%-'SUKO0C28Y13LT2S0\-$I%1U?1F]!Z#0)F@(1$85
XM$1W]'&XCWD/>(P$#-6,80!`U5#1S,X,D<SXS at RY#@R\X,Y`5:0/2?@H)'?T<
XM7B1$VO->,UY#7D-?-M`=:@1$1 at L1)00<WB3$"&\]XSWD/>0]XSWS<D1YB*:@
XMT#!K!]*`%!$=_1QN(]Y#WB,!`V1#5$-44T1C-',D<R2(F843A"1D0V\U138U
XM-D,X,SA"T!9L`])^"@D=_1QN(^137D->,UY#7D-?-M`I;0RV#B(>$OT10S9F
XM8QDY0QL;-69D-(2#,Y.3)(2#/C.3DRY#DY,O.3DSP!]N"$1&%1$2_1%#-6,8
XM31-50T<S.#)',^,X,N0X,O.#,-`@;P@``A42$OT1AJE\5&0TA!2C$[;BQOLQ
XM.C)(0T54UJIHP"QP"$1&%1,:_Q%C-8,8;09453=%.#XT.30X-#DT.$1&145&
XMQC&',UCSTN0](]/0*W$(1$85$1K\$64S5R-,1$4T9"1T(X,N,Y,O.#,W0T54
XMD32!-E,P$//>0]- at T!AR!7=Z#@T2_1%#,T,5,Q5&=82$GC.>0Y\ZT!QS!B(C
XM$`\2_A%G:SLT8CXCQYB(M<\R&3(V,\2G9M`9=`7''0\,&/L73B..(V^SXSCD
XM..(Y,R3X56#`'74(1$85$1+\$3\X/C(X,N0X,O.#,W0S93T3D35C-- at D=@=@
XMN!,1$OP12C\3DR\X,S<T-R8U-O-#?S,X,CHB*R$[(2Q<2NA#=PKN\AP:$OP1
XMX!\!W`?`9P-P.<#<#'!W!QP9P8<.<.'#G#!QQQP<<<8'.'.!SAS`<P<P'<'8
XM`V!V`- at -`#P#P`\`X`#`+7@'8+ at 3%1+_$3244X1S9(-4HS/0,3T6TTU#U4TR
XM$M(B/0)#LT.C8X-S<Y-3I$#`,7D'8+ at 3%1H`$5.C]3DV\X.#8Y\U.O-#PC/0
XM(RT2(]'R(M,1+4\]4M7RU2U3T'T6TETPP")Z!O2@$A(2_Q%?T$T-$]$]$]$]
XM$]$]$]$]$]$]$]$]'1/]%,`;``BJK185'?P<;])DT^1-/D33XTT^1-/D33]-
XM0,!%`0U56",>'?X<UDW%W&VB%-DQ39(DV"1-8T36)4U35-0V73*$TCA-$Y31
XM*EPZ6SQ++02CT%@]%7\]-&/45#U50]9#WB\"X,!!`@QQRB`;'_L=T'U;T=*U
XM9H6D=;5DT$5-)#333R343Q3504/0*.(]`XUH_50?340DTT--)%3055M765AF
XM:M+1O5?0P#T#"<<@&18=_QS2]-1=01/3\A/2\B30(TPS3"1+-$LE2C5*)DDV
XM22=7.$<I1CE&*D4Z12M$.T0L0SQ"\]"-)(`5!`JJK1P='?X<;BG at PYB2^8#]
XMGE^>8,`>!0M56AT:'?P<;]=DQ.14Q%Y$Q%XTQ%Y$Q%Y$Q%],1L`M!@N..QX?
XM'?X<;]SV7>]=[UWO7>]=[UWEW4W4W4WCWCWCWCWDW4W4W4W=MMMMQL`O!PQQ
XMRB`;'OD=595I:#I9)$0S1!-C(V:"(G:"$W/[(2V5V>)-E=GC39Y$V>1-GTTP
XMP#P("XX['AD=^QS1XDUTUHT="M.&*F1$-414121D5/%'18XG1H=%049&049%
XM0T5$4U1#56*HTZT-)]?TU_30P$$)#''*(!L=^1S0XDIF1K9%T%1'%E1%1&1$
XM5%1%7B141&14-&XD5$1D5#1T1$1U-#24-"65)!6F&<T=&]5]GTV?33#`/0H+
XMCCL>'1[^'=*-70T=/&9J6EA-!6323U333C1-1/1--%321DTC@]%(3$E,.SL\
XM.DQ)/1.#TO-ST_-CKZ6DT"TP"``"%1(=_!N5N8MD1&-C4X/S.3,J/R.C(Y,N
XM,Z,>,Z,O.3/S at T1C9#1[B+6 at T!HQ"``"%0X<_!O1LX5H8C._.N0ZXSKD.N0U
XM_1#`-#((``(5%!S^&Z;0F35()S<H13D_4J-1L]0]--,]--,],],],],])-)-
XM)-(],],],])-+]-`P#,S"``"%1,=_1NENH1$8W-3A$*44932/232/2306HMM
XM!]----,]/B310_&T,I12=&-4BK:0P#$T"``"%1,;_1K07131$3T"$\\B.R([
XM,CHS.4,Y-#@T.#4W13<V-C8V-S5'-?U;Y#TO-\`K-0@``A44'/T:;1;0<]/C
XM/3\]0R2[G'8T?T9&-TT^--+T4912DV-S at T2IQK#`-38(``(5$AW\&[6YA$&#
XMT3T3T3TBTCTB1',H701E0U<S2#,Y,DDRXSHR\Y,S at U*"8V-C1(C%D,`J-P@`
XM`A42&_H:+3'3TCT3T3T3T4T$T3T3T4T3T4T/30]-#TT.)-#B30]-$-`Q.`@`
XM`A44'?T;ILJ$5&\X-?.C\SHT2#8W1D5(K&RI-4<W-C at UXCHSXCHU.#8W.#1)
XMK&K`.#D(``(5$QW]&Z7(I$*#8V."8I)3DT*CXC.C,Y,SHS2$0X1#=41&:1-H
XM(W4STSTO/2/2-Q<W-3F<6]`Z)`@``A44(?T>SR`2>ZDR(D8R)18S)17B-"KB
XM0RQ1+)R<G8TA6_(TOB)#KR0T)2,U-"(W0B$YK&`2\L#`428,(B4?&A_]'=!-
XMAM:-0S/4)#T_-#TR4],D/3-#TS,]0R/5?6;76R=<)EPF>R11.B1#.24T2"0V
XM-R4V124W1"8X0B<Y,2 at Y6CE'(46%([*E9V/0(3\'CCL4#QWY'$=K/2-T$:/\
XM.SM*25E+.SL\+.,L(%D[\\#`(#X'CCL4#QW_%*XC!)XBSB+"P[.TI*2DOB.T
XMD2-E'1*U==`2$`/2?@H'$OT13SXS,^0SY#/S0-`9$01$1 at L/&@01SSX[.^0[
XMY#OC._-A1%EHAH#0.!D'L%X4$QW]'*:YFW148W/U.#4W-3 at U-S8U1S)H,E at R
XM=S5'-D8W-3A$XSDS\Y-#@U-T4S=3-V,F at -`P&@N..QX;$OT1=F9Y.4P;,V=3
XM,95RU(+`$8`50!DMU6/3=,.$PX61%&=4$!PJ.E=V4,`P&PQQRB`=$OT1=H9Y
XM65L[-%044R.'<A.E at A.M7[U;//.DPY7$=Y$D5!14+"T#E:=99<`]'`@``A46
XM&_\5UCU4U$U3R;N<E%5T5U13(U-4(T-4,T-30T-#4T,S4U,D4U,44V=4=46-
XM";JL/5/535/7'7#`11T-QR`D)AW_'-77U-C3,TWS)-\S3>\T3=-4W31-TU3<
XM\V3;-TVR?2T#?2SSA-G]+9.4V/.DUSI- at K37.TUO/$U3S38]#3:P0AX/CCTH
XM)Q_\'<%]+0G2A6;(64R%I,A+3'3`3&3!3%],%,7B3"3$],+%3TPDQ>1,%,9;
XM3(2TR%I,E87)9FRM*]#!?-#`6!\,<<H@&R/[']L=TM%S/-&].E9H65=9=DF%
XM2C)#2C-"2D-"2C1!2C5!239!2$:)-X at XATB&288Y044Z041)0D0Z0D,Z0T(Z
XM18I%>5=96&9IT[T<,WT3W!VPH!HA!1QS#0D=^QQN(^-3;R;S;B)C;C)C8M at U
XM\V"@&CP%'',-"1W]%&XCU^(F-N(F\VXB;B-B;C-38+!3(PU56",@)?T<Q_)R
XMR#8\@G+(-CR"<L at V/()RR#8\CR<L at V/()RK0/2P"<L at V/(\G+(-CR/)RR#8[
XMTCT*\G+(-CR"<L at V/()RR#8\@G+(-CR.(G+&P&4E#558(QLA^1Y4TB5M$DC#
XM,S2C,U.30U.#0V."4V-S4V-C8V-3<U-3 at U-2DT-3DS1#J4/'0]%&)DT35L-8
XMHU,SHE-$@T-C<U-C8V-C4V-C8G-C4W-C0X-30Y-3,[,S0LA#T&4M)&#@#"<$
XM<<@,!`CW''=V9,C`)B@&..40$"K]'M`\/#P\/#SSP\\\\\XCSB/.4\YCT>,]
XM'ST?/1/1.,`E*08XY1`0*@`>@]$]$]'ST>,]'I/DP\XCSSSSSSSSP\/#P\/#
XMP]#`)RH(``(5$1+Z'I\]$M$X,S,R0C)"42%5J6IXI5$A4E(B43,S..(]$I#`
XM(RL,<<H@&QS\%]/RVSV^,ML]OC+;.P*=`ML]OC+;/;XRVSVRTN`,+`1QR`P$
XM"/P"?N;,B-`*+ at 1QR`P$`_P"%O'`1B\(``(5&"D`'MGRV#V"V#V"V#USV"V#
XMV"V#V"V#USV"V#V"V#V"V#USV"V#V"V#V"V#USV"V#V"V#V"V#USV"V#V"V#
XMV"V0@`XZ!''(#`<2_!%/,SW3/S2`$CL$<<@,!Q?\$4\S/=,_-23R7Q;`$#T,
XM<<H@'0S]#SW#W at V]X]PPP$5`"JJM'!@=^QS0?2K-"69'639&E$6S1<,U1%(U
XM1D%%-T$U.$$U.#'B-3DQ\U.#(U-T(U1C,V-$1%IC:'1EI-A85]*M#1>0T"1;
XM!)]+#!`I_QZ.*(/2WC/2WB/?+>(]+>,]+>,]+>(]+>,]+>*(T"-=!)]+#!`I
XM`AZ.*/T]+>,]+>,]+>(]+>,]+>,]+>(]+>,WXHC@#&`$<<@,!`CW'!(F3N[8
XM#A((``(5"`?W'#8V\V-C8]`0$P@``A4*!_,<<V-C5%-C8W#8$Q0(``(5#@?W
XM&CAF0C0U,C<A.4HHV!,5"``"%0X(]QSSAG,45!1$.EAU8+@)%@@``A4.`_ at 9
XMWM`1%PO,XQ\*!_$<-C at 3-D<S&#4PX`P8!QQS$@8%_/P<XYS at T`X@`])^"@L%
XM_@^"9B8U8I#0%%X(``(5#@?X''*TDA-C,E-#,V,3@]`+7P1QR`P%!/<<&.(0
XMT!1]"``"%0X']QQ#0_,T,S0S-#/S0T#0$GX(``(5#P7X&S13)C0=$T8C5##8
XM#'\(``(5#`3V'/1(\T'0*0L)55 at 8'!W\'*96F#B)*71TTI(!#B.#WB.#K[1Y
XMXS@]Y#@]Y#@]\X,!`,`F#`B3ZQ85'OP=U#I3.6(Y?0/5+5XCU.(]'\,VXS at V
XMY#@VY#@V\X-PT"<-")/K%A4=_!R5,Y8SAS-S<X*#?B.#;B.#/\,VXS at VY#@V
XMY#@V\X-PL#(.#06S(B$>_!W1.U9$.753.81L(Y/&*BQN(Y/%XCD\+[5T-N,Y
XM.#;D.3 at VY#DX-O.3 at W#0,P\-!;,B(1W\'*5D0Y=50XA&0W.3<X*B at WXCDX-N
XM(Y.#/[5T-N,Y.#;D.3 at VY#DX-O.3 at W#0%"((``(5#`CZ'!XC4_$F(A<2)B(7
XM$\@)+0555 at X+`OX)V=`47`@``A4,"/,<,7'R%Q(F(A<2XC4QL`M["``"%14#
XM_ at P=SQ"`"WP0``,J*@/^#!V?$/`0:61E;G1I9FEE<B!#35-32?`58V]D:6YG
XC<V-H96UE(%1E6"!T97AT\`QF;VYT9F%C96)Y=&7T`.H``/53
X`
Xend
END_OF_FILE
  if test 7911 -ne `wc -c <'utils/fonts/cmssi10.pk.UU'`; then
    echo shar: \"'utils/fonts/cmssi10.pk.UU'\" unpacked with wrong size!
  fi
  # end of 'utils/fonts/cmssi10.pk.UU'
fi
if test -f 'utils/lj2ps.S' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'utils/lj2ps.S'\"
else
  echo shar: Extracting \"'utils/lj2ps.S'\" \(475 characters\)
  sed "s/^X//" >'utils/lj2ps.S' <<'END_OF_FILE'
X#2.1 90/07/18
Xif [ $# != 0 ]
Xthen
X    dontdelete=1
Xfi
Xif [ -f utils/hpinterp ]
Xthen
X    hpinterp=`pwd`/utils/hpinterp
Xelse
X    hpinterp=%%LIBDIR%%/hpinterp
Xfi
X
Xif [ -f utils/pk2ps ]
Xthen
X    pk2ps=`pwd`/utils/pk2ps
Xelse
X    pk2ps=%%LIBDIR%%/pk2ps
Xfi
X
Xtd=/tmp/$$
X(
X    mkdir $td
X    cd $td
X    mkdir FONTS
X    $hpinterp -p > postscript
X    rm FONTS/*.desc
X    $pk2ps -f FONTS/* > fonts
X    cat fonts postscript
X    echo "\004"
X)
Xif [ -z "$dontdelete" ]
Xthen
X    rm -fr $td
Xfi
END_OF_FILE
  if test 475 -ne `wc -c <'utils/lj2ps.S'`; then
    echo shar: \"'utils/lj2ps.S'\" unpacked with wrong size!
  fi
  # end of 'utils/lj2ps.S'
fi
if test -f 'utils/pk2sfp.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'utils/pk2sfp.c'\"
else
  echo shar: Extracting \"'utils/pk2sfp.c'\" \(8180 characters\)
  sed "s/^X//" >'utils/pk2sfp.c' <<'END_OF_FILE'
X/*	Copyright 1985, 1986, 1987, 1988 90/09/17 Chris Lewis
X		All Rights Reserved
X
X    Permission to copy and further distribute is freely given provided
X    this copyright notice remains intact and that this software is not
X    sold for profit.
X
X	Project:	Generic Troff drivers
X	Module:		pk2sfp.c
X	Author: 	Chris Lewis
X	Specs:		Generates SFP's from PK's.
X */
X
X#ifndef	lint
Xstatic char SCCSID[] =
X    "@(#)pk2sfp.c 2.2 Copyright 90/09/17 10:50:03 Chris Lewis";
X#endif
X
X#include "defs.h"
X#include "pk.h"
X
X#define	MAXMAP 256
X
Xstruct fontmap {
X    short from;
X    short to;
X} fontmap[MAXMAP], *flast = fontmap, *fp;
X
Xchar emittedyet[256];
X
X#define	NOTSET	32767
X
Xint symset = NOTSET;
Xint style = NOTSET;
Xint strokeweight = NOTSET;
Xint typeface = NOTSET;
Xint fontid = NOTSET;
Xint verbose = 0;
Xint merge = 0;
Xint symbol = 0;
Xint partial = 0;
Xint permanent = 0;
X
Xchar *progname;
X
X#ifdef	PARTIAL
Xextern struct enctab encNormal[], encSymbol[];
X
Xneedchar(font, character)
Xint font;
Xlong character; {
X    register struct enctab *tab;
X    register char *p;
X
X    if (!partial)
X	return(1);
X
X    if (symbol)
X	tab = encSymbol;
X    else
X	tab = encNormal;
X
X    for(; tab->e_name; tab++) {
X	for (p = tab->e_seq; *p; p++)
X	    if (((*p) & 0xff) == character)
X		return(1);
X    }
X
X    return(0);
X}
X#else
Xneedchar(font, character)
Xint font;
Xlong character; {
X    return(1);
X}
X#endif
X
Xmain(argc, argv)
Xint argc;
Xchar **argv; {
X    char buf[512];
X    extern int optind;
X    long totalbytes, numbytes;
X    int totalcodes, numcodes;
X
X    extern char *optarg;
X    int i;
X    int c;
X
X    progname = argv[0];
X
X    while((c = getopt(argc, argv, "D:s:t:w:f:i:vmSpP")) != EOF) {
X	switch(c) {
X	    case 'D':
X#ifdef	DEBUG
X		setdebug(optarg, "diagnostics");
X		break;
X#else
X		fprintf(stderr, "%s: DEBUG disabled, recompile\n", progname);
X		exit(1);
X#endif
X	    case 'P':
X		permanent = 1;
X		break;
X	    case 'S':
X		symbol = 1;
X		break;
X	    case 'p':
X		partial = 1;
X		break;
X	    case 's':
X		symset = ((optarg[0] - '0') << 5) + optarg[1] - 64;
X		break;
X	    case 't':
X		style = atoi(optarg);
X		break;
X	    case 'w':
X		strokeweight = atoi(optarg);
X		break;
X	    case 'f':
X		typeface = atoi(optarg);
X		break;
X	    case 'i':
X		fontid = atoi(optarg);
X		break;
X	    case 'v':
X		verbose = 1;
X		break;
X	    case 'm':
X		merge = 1;
X		break;
X
X	    default:
X		fprintf(stderr, "usage: pk2sfp [-Dopts] [<options>] file...\n");
X		fprintf(stderr, "or   : pk2sfp -m [-Dopts] [<options>]");
X		fprintf(stderr, " map file map file ....\n");
X
X		fprintf(stderr, "\t-sna: symset, eg: -s8U\n");
X		fprintf(stderr, "\t-t0|1: style: 0 upright, 1 italic\n");
X		fprintf(stderr, "\t-wn: stroke weight (-7..7)\n");
X		fprintf(stderr, "\t-fn: typeface, eg: 5 is Times Roman\n");
X		fprintf(stderr, "\t-in: prepend fontid n, auto increments\n");
X		fprintf(stderr, "\t-v: verbose - emit actions to stderr\n");
X		fprintf(stderr, "\t-p: only download chars psroff needs\n");
X		fprintf(stderr, "\t-S: font is used for psroff Symbol font\n");
X		fprintf(stderr, "\t-P: mark font as permanent (needs -in)\n");
X		exit(1);
X	}
X    }
X    if (merge)
X	fprintf(stderr, "MERGING fonts\n");
X
X    numbytes = 0;
X
X    for(;argv[optind];optind++) {
X	register struct pkp *pk;
X	register struct pkc *pc;
X
X	numcodes = 0;
X	numbytes = 0;
X
X	strcpy(buf, argv[optind]);
X
X	if (merge && readmerge(buf))
X	    continue;
X
X	/* Read the PK file in-core */
X	pk = pk_read(buf);
X
X	/* Overrides */
X	if (symset != NOTSET)
X	    pk->pkp_symset = symset;
X	if (style != NOTSET)
X	    pk->pkp_style = style;
X	if (strokeweight != NOTSET)
X	    pk->pkp_sw = strokeweight;
X	if (typeface != NOTSET)
X	    pk->pkp_typeface = typeface;
X
X	if (verbose)
X	    if (merge > 1)
X		fprintf(stderr, "Appending %s: ", buf);
X	    else
X		fprintf(stderr, "Emitting %s: ", buf);
X
X	/* you want a font ID select? */
X	if (merge <= 1 && fontid != NOTSET) {
X	    if (verbose)
X		fprintf(stderr, "fontid %d\n", fontid);
X	    printf("\033*c%dD", fontid);
X	} else
X	    if (verbose)
X		fprintf(stderr, "no fontid\n");
X
X	if (merge <= 1 && verbose) {
X	    fprintf(stderr, "\tsymset: %d%c\n", pk->pkp_symset >> 5,
X		(pk->pkp_symset & 0x1f) + 64);
X	    fprintf(stderr, "\ttype: %s\n", pk->pkp_style?"italic":"upright");
X	    fprintf(stderr, "\tstroke weight: %d\n", pk->pkp_sw);
X	    fprintf(stderr, "\ttypeface: %d\n", pk->pkp_typeface);
X	}
X
X	if (merge <= 1) {
X	    /* Emit the SFP header */
X	    epk_desc(pk, stdout);
X	    numbytes += 2048;
X	    numcodes = 0;
X	    if (merge == 1)
X		merge++;
X	}
X
X	/* Emit each character */
X	for (i = 0; i < pk->pkp_num; i++) {
X	    pc = pk->pkp_list[i];
X	    if (merge) {
X		for (fp = fontmap; fp < flast; fp++)
X		    if (pc->pkc_char == fp->from) {
X			pc->pkc_char = fp->to;
X			if (emittedyet[(fp->to)&0xff]) {
X			    if (verbose)
X				fprintf(stderr,
X				"Skipping %02x (%c) as %02x (%c) from %s\n",
X				fp->from, pchr(fp->from),
X				fp->to, pchr(fp->to), buf);
X			    break;
X			}
X			if (verbose)
X			    fprintf(stderr,
X				"Emitting %02x (%c) as %02x (%c) from %s\n",
X				fp->from, pchr(fp->from),
X				fp->to, pchr(fp->to), buf);
X			emittedyet[(fp->to)&0xff] = 1;
X			fp->to = 0x00;
X			numbytes += epkc_desc(pc, stdout);
X			numcodes++;
X			break;
X		    }
X	    } else {
X		DBP((D_FONT,"Downloading char %02x (%c)\n", pc->pkc_char,
X		    pchr(pc->pkc_char)));
X		numbytes += epkc_desc(pc, stdout);
X		numcodes++;
X	    }
X	}
X				/* added to make fonts permanent */
X				/* ron at mlfarm 6.1.90 */
X
X	if (fontid != NOTSET && permanent)
X	    printf("\033*c%dd5F", fontid);
X
X	if (fontid != NOTSET)
X	    fontid++;
X
X	/* Clobber in-core PK */
X	pk_destroy(pk);
X
X	totalbytes += numbytes;
X	totalcodes += numcodes;
X	if (verbose)
X	    fprintf(stderr, "%s: %d bytes %d codes\n", buf, numbytes, numcodes);
X
X    }
X    if (merge)
X	checkmissing((char *) NULL);
X    if (verbose)
X	fprintf(stderr, "total: %d bytes %d codes\n", totalbytes, totalcodes);
X    exit(0);
X}
X
X/*	similar to strtol */
Xshort
Xcvt(p)
Xregister char *p; {
X    register short ret = 0;
X    int base = 10;
X
X    if (!isdigit(*p) && !*(p+1))
X	return(*p);
X
X    if (*p == '0')
X	if (*(p+1) == 'x' || *(p+1) == 'X') {
X	    base = 16;
X	    p += 2;
X	} else
X	    base = 8;
X    while(*p)
X	ret = ret * base + ccvt(*p++);
X    return(ret);
X}
X
Xccvt(c)
Xint c; {
X    if (isdigit(c))
X	return(c - '0');
X    else if (isupper(c))
X	return(c - 'A' + 10);
X    else if (islower(c))
X	return(c - 'a' + 10);
X    else {
X	fprintf(stderr, "%s: bad digit %c in map file\n", progname, c);
X	exit(1);
X    }
X}
Xpchr(x)
Xint x; {
X    if (isascii(x) && isprint(x))
X	return(x);
X    else
X	return('?');
X}
X
X/*	Reads merge descriptor.  Returns non-zero if not a merge */
Xreadmerge(name)
Xchar *name; {
X    char from[20], to[20];
X    FILE *f = fopen(name, "r");
X    char buffer[512];
X    register char *p;
X    if (!f) {
X	fprintf(stderr, "%s: Can't open %s\n", progname, name);
X	exit(1);
X    }
X    if (!fgets(buffer, sizeof(buffer), f)) {
X	fprintf(stderr, "%s: Nothing in this file? (%s)\n", progname, name);
X	fclose(f);
X	return(0);
X    }
X    if (buffer[0] == '\033' || (buffer[0] & 0xff) == PK_pre) {
X	fclose(f);
X	return(0);
X    }
X    checkmissing(name);
X    flast = fontmap;
X    do {
X	for(p = buffer; *p && isspace(*p); p++);
X	if (!*p || *p == '\n' || *p == '#')
X	    continue;
X	switch(sscanf(p, "%s %s", from, to)) {
X	    case 0:
X		continue;
X	    case 1:
X		strcpy(to, from);
X		break;
X	    case 2:
X		if (strcmp(to, "\"") == 0)
X		    strcpy(to, from);
X		break;
X	}
X	if (flast - fontmap >= MAXMAP) {
X	    fprintf(stderr, "%s: too many map sequences in %s\n", progname,
X		name);
X	    exit(1);
X	}
X
X	flast->from = cvt(from);
X	flast->to = cvt(to);
X	flast++;
X    } while (fgets(buffer, sizeof(buffer), f));
X    fclose(f);
X
X#ifdef	DEBUG
X    if (debug&D_FONT) {
X	DBP((D_FONT, "Map from %s map file\n", name));
X	for (fp = fontmap; fp < flast; fp++)
X	    DBP((D_FONT, "  %02x (%c) -> %02x (%c)\n",
X		fp->from, pchr(fp->from),
X		fp->to, pchr(fp->to)));
X    }
X#endif
X    return(1);
X}
X
Xcheckmissing(name)
Xregister char *name; {
X    static char lastmap[512];
X    if (!verbose || flast == fontmap)
X	return;
X    for (fp = fontmap; fp < flast; fp++)
X	if (fp->to)
X	    fprintf(stderr, "Didn't remap 0x%02x:0%o:%d (%c) in map file %s\n",
X		fp->from, fp->from, fp->from, pchr(fp->from), lastmap);
X    if (name)
X	strcpy(lastmap, name);
X}
END_OF_FILE
  if test 8180 -ne `wc -c <'utils/pk2sfp.c'`; then
    echo shar: \"'utils/pk2sfp.c'\" unpacked with wrong size!
  fi
  # end of 'utils/pk2sfp.c'
fi
echo shar: End of archive 9 \(of 16\).
cp /dev/null ark9isdone
MISSING=""
for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked all 16 archives.
    echo "Read the README to get started with psroff installation"
    rm -f ark[1-9]isdone ark[1-9][0-9]isdone
else
    echo You still must unpack the following archives:
    echo "        " ${MISSING}
fi
exit 0
-- 
Chris Lewis, Phone: TBA
UUCP: uunet!utai!lsuc!ecicrl!clewis
Moderator of the Ferret Mailing List (ferret-request at eci386)
Psroff mailing list (psroff-request at eci386)



More information about the Alt.sources mailing list