%! %%BoundingBox: (atend) %%Pages: (atend) %%DocumentFonts: (atend) %%EndComments % % FrameMaker PostScript Prolog 3.0, for use with FrameMaker 3.0 % Copyright (c) 1986,87,89,90,91 by Frame Technology Corporation. % All rights reserved. % % Known Problems: % Due to bugs in Transcript, the 'PS-Adobe-' is omitted from line 1 /FMversion (3.0) def % Set up Color vs. Black-and-White /FMPrintInColor systemdict /colorimage known systemdict /currentcolortransfer known or def % Uncomment this line to force b&w on color printer % /FMPrintInColor false def /FrameDict 295 dict def systemdict /errordict known not {/errordict 10 dict def errordict /rangecheck {stop} put} if % The readline in 23.0 doesn't recognize cr's as nl's on AppleTalk FrameDict /tmprangecheck errordict /rangecheck get put errordict /rangecheck {FrameDict /bug true put} put FrameDict /bug false put mark % Some PS machines read past the CR, so keep the following 3 lines together! currentfile 5 string readline 00 0000000000 cleartomark errordict /rangecheck FrameDict /tmprangecheck get put FrameDict /bug get { /readline { /gstring exch def /gfile exch def /gindex 0 def { gfile read pop dup 10 eq {exit} if dup 13 eq {exit} if gstring exch gindex exch put /gindex gindex 1 add def } loop pop gstring 0 gindex getinterval true } def } if /FMVERSION { FMversion ne { /Times-Roman findfont 18 scalefont setfont 100 100 moveto (FrameMaker version does not match postscript_prolog!) dup = show showpage } if } def /FMLOCAL { FrameDict begin 0 def end } def /gstring FMLOCAL /gfile FMLOCAL /gindex FMLOCAL /orgxfer FMLOCAL /orgproc FMLOCAL /organgle FMLOCAL /orgfreq FMLOCAL /yscale FMLOCAL /xscale FMLOCAL /manualfeed FMLOCAL /paperheight FMLOCAL /paperwidth FMLOCAL /FMDOCUMENT { array /FMfonts exch def /#copies exch def FrameDict begin 0 ne dup {setmanualfeed} if /manualfeed exch def /paperheight exch def /paperwidth exch def /yscale exch def /xscale exch def currenttransfer cvlit /orgxfer exch def currentscreen cvlit /orgproc exch def /organgle exch def /orgfreq exch def setpapername manualfeed {true} {papersize} ifelse {manualpapersize} {false} ifelse {desperatepapersize} if end } def /pagesave FMLOCAL /orgmatrix FMLOCAL /landscape FMLOCAL /FMBEGINPAGE { FrameDict begin /pagesave save def 3.86 setmiterlimit /landscape exch 0 ne def landscape { 90 rotate 0 exch neg translate pop } {pop pop} ifelse xscale yscale scale /orgmatrix matrix def gsave } def /FMENDPAGE { grestore pagesave restore end showpage } def /FMFONTDEFINE { FrameDict begin findfont ReEncode 1 index exch definefont FMfonts 3 1 roll put end } def /FMFILLS { FrameDict begin array /fillvals exch def end } def /FMFILL { FrameDict begin fillvals 3 1 roll put end } def /FMNORMALIZEGRAPHICS { newpath 0.0 0.0 moveto 1 setlinewidth 0 setlinecap 0 0 0 sethsbcolor 0 setgray } bind def /fx FMLOCAL /fy FMLOCAL /fh FMLOCAL /fw FMLOCAL /llx FMLOCAL /lly FMLOCAL /urx FMLOCAL /ury FMLOCAL /FMBEGINEPSF { end /FMEPSF save def /showpage {} def FMNORMALIZEGRAPHICS [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall fx fy translate rotate fw urx llx sub div fh ury lly sub div scale llx neg lly neg translate } bind def /FMENDEPSF { FMEPSF restore FrameDict begin } bind def FrameDict begin /setmanualfeed { %%BeginFeature *ManualFeed True statusdict /manualfeed true put %%EndFeature } def /max {2 copy lt {exch} if pop} bind def /min {2 copy gt {exch} if pop} bind def /inch {72 mul} def /pagedimen { paperheight sub abs 16 lt exch paperwidth sub abs 16 lt and {/papername exch def} {pop} ifelse } def /papersizedict FMLOCAL /setpapername { /papersizedict 14 dict def papersizedict begin /papername /unknown def /Letter 8.5 inch 11.0 inch pagedimen /LetterSmall 7.68 inch 10.16 inch pagedimen /Tabloid 11.0 inch 17.0 inch pagedimen /Ledger 17.0 inch 11.0 inch pagedimen /Legal 8.5 inch 14.0 inch pagedimen /Statement 5.5 inch 8.5 inch pagedimen /Executive 7.5 inch 10.0 inch pagedimen /A3 11.69 inch 16.5 inch pagedimen /A4 8.26 inch 11.69 inch pagedimen /A4Small 7.47 inch 10.85 inch pagedimen /B4 10.125 inch 14.33 inch pagedimen /B5 7.16 inch 10.125 inch pagedimen end } def /papersize { papersizedict begin /Letter {lettertray letter} def /LetterSmall {lettertray lettersmall} def /Tabloid {11x17tray 11x17} def /Ledger {ledgertray ledger} def /Legal {legaltray legal} def /Statement {statementtray statement} def /Executive {executivetray executive} def /A3 {a3tray a3} def /A4 {a4tray a4} def /A4Small {a4tray a4small} def /B4 {b4tray b4} def /B5 {b5tray b5} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end /FMdicttop countdictstack 1 add def statusdict begin stopped end countdictstack -1 FMdicttop {pop end} for } def /manualpapersize { papersizedict begin /Letter {letter} def /LetterSmall {lettersmall} def /Tabloid {11x17} def /Ledger {ledger} def /Legal {legal} def /Statement {statement} def /Executive {executive} def /A3 {a3} def /A4 {a4} def /A4Small {a4small} def /B4 {b4} def /B5 {b5} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end stopped } def /desperatepapersize { statusdict /setpageparams known { paperwidth paperheight 0 1 statusdict begin {setpageparams} stopped pop end } if } def /savematrix { orgmatrix currentmatrix pop } bind def /restorematrix { orgmatrix setmatrix } bind def /dmatrix matrix def /dpi 72 0 dmatrix defaultmatrix dtransform dup mul exch dup mul add sqrt def /freq dpi 18.75 div 8 div round dup 0 eq {pop 1} if 8 mul dpi exch div def /sangle 1 0 dmatrix defaultmatrix dtransform exch atan def /DiacriticEncoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis /dagger /.notdef /cent /sterling /section /bullet /paragraph /germandbls /registered /copyright /trademark /acute /dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef /yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown /exclamdown /logicalnot /.notdef /florin /.notdef /.notdef /guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde /Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright /quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand /Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron ] def /ReEncode { dup length dict begin { 1 index /FID ne {def} {pop pop} ifelse } forall 0 eq {/Encoding DiacriticEncoding def} if currentdict end } bind def /graymode true def /bwidth FMLOCAL /bpside FMLOCAL /bstring FMLOCAL /onbits FMLOCAL /offbits FMLOCAL /xindex FMLOCAL /yindex FMLOCAL /x FMLOCAL /y FMLOCAL /setpattern { /bwidth exch def /bpside exch def /bstring exch def /onbits 0 def /offbits 0 def freq sangle landscape {90 add} if {/y exch def /x exch def /xindex x 1 add 2 div bpside mul cvi def /yindex y 1 add 2 div bpside mul cvi def bstring yindex bwidth mul xindex 8 idiv add get 1 7 xindex 8 mod sub bitshift and 0 ne {/onbits onbits 1 add def 1} {/offbits offbits 1 add def 0} ifelse } setscreen {} settransfer offbits offbits onbits add div FMsetgray /graymode false def } bind def /grayness { FMsetgray graymode not { /graymode true def orgxfer cvx settransfer orgfreq organgle orgproc cvx setscreen } if } bind def /HUE FMLOCAL /SAT FMLOCAL /BRIGHT FMLOCAL /Colors FMLOCAL FMPrintInColor { /HUE 0 def /SAT 0 def /BRIGHT 0 def % array of arrays Hue and Sat values for the separations [HUE BRIGHT] /Colors [[0 0 ] % black [0 0 ] % white [0.00 1.0] % red [0.37 1.0] % green [0.60 1.0] % blue [0.50 1.0] % cyan [0.83 1.0] % magenta [0.16 1.0] % comment / yellow ] def /BEGINBITMAPCOLOR { BITMAPCOLOR} def /BEGINBITMAPCOLORc { BITMAPCOLORc} def /BEGINBITMAPTRUECOLOR { BITMAPTRUECOLOR } def /BEGINBITMAPTRUECOLORc { BITMAPTRUECOLORc } def /K { Colors exch get dup 0 get /HUE exch store 1 get /BRIGHT exch store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray} {HUE SAT BRIGHT sethsbcolor} ifelse } def /FMsetgray { /SAT exch 1.0 exch sub store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray} {HUE SAT BRIGHT sethsbcolor} ifelse } bind def } { /BEGINBITMAPCOLOR { BITMAPGRAY} def /BEGINBITMAPCOLORc { BITMAPGRAYc} def /BEGINBITMAPTRUECOLOR { BITMAPTRUEGRAY } def /BEGINBITMAPTRUECOLORc { BITMAPTRUEGRAYc } def /FMsetgray {setgray} bind def /K { pop } def } ifelse /normalize { transform round exch round exch itransform } bind def /dnormalize { dtransform round exch round exch idtransform } bind def /lnormalize { 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop } bind def /H { lnormalize setlinewidth } bind def /Z { setlinecap } bind def /fillvals FMLOCAL /X { fillvals exch get dup type /stringtype eq {8 1 setpattern} {grayness} ifelse } bind def /V { gsave eofill grestore } bind def /N { stroke } bind def /M {newpath moveto} bind def /E {lineto} bind def /D {curveto} bind def /O {closepath} bind def /n FMLOCAL /L { /n exch def newpath normalize moveto 2 1 n {pop normalize lineto} for } bind def /Y { L closepath } bind def /x1 FMLOCAL /x2 FMLOCAL /y1 FMLOCAL /y2 FMLOCAL /rad FMLOCAL /R { /y2 exch def /x2 exch def /y1 exch def /x1 exch def x1 y1 x2 y1 x2 y2 x1 y2 4 Y } bind def % The following commented out code did not work for tangent lines of zero % length. The code following it was provided by Frame to patch this error. % %/RR { % /rad exch def % normalize % /y2 exch def % /x2 exch def % normalize % /y1 exch def % /x1 exch def % newpath % x1 y1 rad add moveto % x1 y2 x2 y2 rad arcto % x2 y2 x2 y1 rad arcto % x2 y1 x1 y1 rad arcto % x1 y1 x1 y2 rad arcto % closepath % 16 {pop} repeat % } bind def /rarc {rad {arcto} stopped } bind def /RR { /rad exch def normalize /y2 exch def /x2 exch def normalize /y1 exch def /x1 exch def mark newpath x1 y1 rad add moveto x1 y2 x2 y2 rarc x2 y2 x2 y1 rarc x2 y1 x1 y1 rarc % x2 y1 x1 y1 rarc x1 y1 x1 y2 rarc closepath cleartomark } bind def /C { grestore gsave R clip } bind def /FMpointsize FMLOCAL /F { FMfonts exch get FMpointsize scalefont setfont } bind def /Q { /FMpointsize exch def F } bind def /T { moveto show } bind def /RF { rotate 0 ne {-1 1 scale} if } bind def /TF { gsave moveto RF show grestore } bind def /P { moveto 0 32 3 2 roll widthshow } bind def /PF { gsave moveto RF 0 32 3 2 roll widthshow grestore } bind def /S { moveto 0 exch ashow } bind def /SF { gsave moveto RF 0 exch ashow grestore } bind def /B { moveto 0 32 4 2 roll 0 exch awidthshow } bind def /BF { gsave moveto RF 0 32 4 2 roll 0 exch awidthshow grestore } bind def /G { gsave newpath normalize translate 0.0 0.0 moveto dnormalize scale 0.0 0.0 1.0 5 3 roll arc closepath fill grestore } bind def /A { gsave savematrix newpath 2 index 2 div add exch 3 index 2 div sub exch normalize 2 index 2 div sub exch 3 index 2 div add exch translate scale 0.0 0.0 1.0 5 3 roll arc restorematrix stroke grestore } bind def /x FMLOCAL /y FMLOCAL /w FMLOCAL /h FMLOCAL /xx FMLOCAL /yy FMLOCAL /ww FMLOCAL /hh FMLOCAL /FMsaveobject FMLOCAL /FMoptop FMLOCAL /FMdicttop FMLOCAL /BEGINPRINTCODE { /FMdicttop countdictstack 1 add def /FMoptop count 4 sub def /FMsaveobject save def userdict begin /showpage {} def FMNORMALIZEGRAPHICS 3 index neg 3 index neg translate } bind def /ENDPRINTCODE { count -1 FMoptop {pop pop} for countdictstack -1 FMdicttop {pop end} for FMsaveobject restore } bind def /gn { 0 { 46 mul cf read pop 32 sub dup 46 lt {exit} if 46 sub add } loop add } bind def /str FMLOCAL /cfs { /str sl string def 0 1 sl 1 sub {str exch val put} for str def } bind def /ic [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} ] def /sl FMLOCAL /val FMLOCAL /ws FMLOCAL /im FMLOCAL /bs FMLOCAL /cs FMLOCAL /len FMLOCAL /pos FMLOCAL /ms { /sl exch def /val 255 def /ws cfs /im cfs /val 0 def /bs cfs /cs cfs } bind def 400 ms /cip { is 0 cf cs readline pop { ic exch get exec add } forall pop /tot w 1 sub def 0 1 tot { /indx exch def /indxa is indx get def /placer nredt indxa get def /placeg ngreent indxa get def /placeb nbluet indxa get def cris indx placer 255 mul cvi put cgis indx placeg 255 mul cvi put cbis indx placeb 255 mul cvi put } for pop cris } bind def /ip { is 0 cf cs readline pop { ic exch get exec add } forall pop } bind def /wh { /len exch def /pos exch def ws 0 len getinterval im pos len getinterval copy pop pos len } bind def /bl { /len exch def /pos exch def bs 0 len getinterval im pos len getinterval copy pop pos len } bind def /s1 1 string def /fl { /len exch def /pos exch def /val cf s1 readhexstring pop 0 get def pos 1 pos len add 1 sub {im exch val put} for pos len } bind def /hx { 3 copy getinterval cf exch readhexstring pop pop } bind def /h FMLOCAL /w FMLOCAL /d FMLOCAL /lb FMLOCAL /bitmapsave FMLOCAL /is FMLOCAL /cf FMLOCAL /wbytes { dup 8 eq {pop} {1 eq {7 add 8 idiv} {3 add 4 idiv} ifelse} ifelse } bind def /BEGINBITMAPBWc { 1 {} COMMONBITMAPc } bind def /BEGINBITMAPGRAYc { 8 {} COMMONBITMAPc } bind def /BEGINBITMAP2BITc { 2 {} COMMONBITMAPc } bind def /COMMONBITMAPc { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def r /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} image bitmapsave restore grestore } bind def /BEGINBITMAPBW { 1 {} COMMONBITMAP } bind def /BEGINBITMAPGRAY { 8 {} COMMONBITMAP } bind def /BEGINBITMAP2BIT { 2 {} COMMONBITMAP } bind def /COMMONBITMAP { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def r /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] {cf is readhexstring pop} image bitmapsave restore grestore } bind def /proc1 FMLOCAL /proc2 FMLOCAL /newproc FMLOCAL /Fmcc { /proc2 exch cvlit def /proc1 exch cvlit def /newproc proc1 length proc2 length add array def newproc 0 proc1 putinterval newproc proc1 length proc2 putinterval newproc cvx } bind def /ngrayt 256 array def /nredt 256 array def /nbluet 256 array def /ngreent 256 array def /gryt FMLOCAL /blut FMLOCAL /grnt FMLOCAL /redt FMLOCAL /indx FMLOCAL /cynu FMLOCAL /magu FMLOCAL /yelu FMLOCAL /k FMLOCAL /u FMLOCAL /colorsetup { currentcolortransfer /gryt exch def /blut exch def /grnt exch def /redt exch def 0 1 255 { /indx exch def /cynu 1 red indx get 255 div sub def /magu 1 green indx get 255 div sub def /yelu 1 blue indx get 255 div sub def /k cynu magu min yelu min def nredt indx 1 0 cynu max sub redt exec put ngreent indx 1 0 magu max sub grnt exec put nbluet indx 1 0 yelu max sub blut exec put ngrayt indx 1 k sub gryt exec put } for } bind def /tran FMLOCAL /fakecolorsetup { /tran 256 string def 0 1 255 {/indx exch def tran indx red indx get 77 mul green indx get 151 mul blue indx get 28 mul add add 256 idiv put} for currenttransfer {255 mul cvi tran exch get 255.0 div} exch Fmcc settransfer } bind def /BITMAPCOLOR { /d 8 def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def colorsetup /is w d wbytes string def /ris w d wbytes string def /gis w d wbytes string def /bis w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] {cf is readhexstring pop /tot w 1 sub def 0 1 tot { /indx exch def /indxa is indx get def /placer nredt indxa get def /placeg ngreent indxa get def /placeb nbluet indxa get def ris indx placer 255 mul cvi put gis indx placeg 255 mul cvi put bis indx placeb 255 mul cvi put } for pop ris} {gis} {bis} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPCOLORc { /d 8 def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def colorsetup /is im 0 lb getinterval def /cris lb string def /cgis lb string def /cbis lb string def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {cip} {cgis} {cbis} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPTRUECOLORc { gsave translate rotate scale /h exch def /w exch def /bitmapsave save def /is w string def ws 0 w getinterval is copy pop /cf currentfile def w h 8 [w 0 0 h neg 0 h] {ip} {gip} {bip} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPTRUECOLOR { gsave translate rotate scale /h exch def /w exch def /bitmapsave save def /is w string def /gis w string def /bis w string def /cf currentfile def w h 8 [w 0 0 h neg 0 h] { cf is readhexstring pop } { cf gis readhexstring pop } { cf bis readhexstring pop } true 3 colorimage bitmapsave restore grestore } bind def /BITMAPTRUEGRAYc { gsave translate rotate scale /h exch def /w exch def /bitmapsave save def /is w string def ws 0 w getinterval is copy pop /cf currentfile def w h 8 [w 0 0 h neg 0 h] {ip gip bip w gray} image bitmapsave restore grestore } bind def /ww FMLOCAL /r FMLOCAL /g FMLOCAL /b FMLOCAL /i FMLOCAL /gray { /ww exch def /b exch def /g exch def /r exch def 0 1 ww 1 sub { /i exch def r i get .299 mul g i get .587 mul b i get .114 mul add add r i 3 -1 roll floor cvi put } for r } bind def /BITMAPTRUEGRAY { gsave translate rotate scale /h exch def /w exch def /bitmapsave save def /is w string def /gis w string def /bis w string def /cf currentfile def w h 8 [w 0 0 h neg 0 h] { cf is readhexstring pop cf gis readhexstring pop cf bis readhexstring pop w gray} image bitmapsave restore grestore } bind def /BITMAPGRAY { 8 {fakecolorsetup} COMMONBITMAP } bind def /BITMAPGRAYc { 8 {fakecolorsetup} COMMONBITMAPc } bind def /ENDBITMAP { } bind def end /ALDsave FMLOCAL /ALDmatrix matrix def ALDmatrix currentmatrix pop /StartALD { /ALDsave save def savematrix ALDmatrix setmatrix } bind def /InALD { restorematrix } bind def /DoneALD { ALDsave restore } bind def %%EndProlog %%BeginSetup (3.0) FMVERSION 1 1 612 792 0 1 10 FMDOCUMENT 0 0 /Helvetica-Bold FMFONTDEFINE 1 0 /Times-Bold FMFONTDEFINE 2 0 /Times-Italic FMFONTDEFINE 3 0 /Times-Roman FMFONTDEFINE 4 0 /Courier-Bold FMFONTDEFINE 32 FMFILLS 0 0 FMFILL 1 0.1 FMFILL 2 0.3 FMFILL 3 0.5 FMFILL 4 0.7 FMFILL 5 0.9 FMFILL 6 0.97 FMFILL 7 1 FMFILL 8 <0f1e3c78f0e1c387> FMFILL 9 <0f87c3e1f0783c1e> FMFILL 10 FMFILL 11 FMFILL 12 <8142241818244281> FMFILL 13 <03060c183060c081> FMFILL 14 <8040201008040201> FMFILL 16 1 FMFILL 17 0.9 FMFILL 18 0.7 FMFILL 19 0.5 FMFILL 20 0.3 FMFILL 21 0.1 FMFILL 22 0.03 FMFILL 23 0 FMFILL 24 FMFILL 25 FMFILL 26 <3333333333333333> FMFILL 27 <0000ffff0000ffff> FMFILL 28 <7ebddbe7e7dbbd7e> FMFILL 29 FMFILL 30 <7fbfdfeff7fbfdfe> FMFILL %%EndSetup %%Page: "6" 6 %%BeginPaperSize: Letter %%EndPaperSize 612 792 0 FMBEGINPAGE 54 750.68 540 750.68 2 L 0.25 H 0 Z 0 X 0 K N 0 8 Q (Application Considerations) 189 737.5 T 54 75.33 540 75.33 2 L 2 Z N 1 12 Q (6) 54 59.9 T 2 10 Q (Dir) 189 59.9 T (ectory Structur) 202.51 59.9 T (e Re-or) 262.38 59.9 T (ganization in IRIX 5.x) 291.7 59.9 T 3 F (/usr/etc/boot is used to keep software and data con\336guration \336les for diskless support.) 189 683.31 T (The diskless client installation software will be changed to use the new directory) 189 671.31 T (/var/boot.) 189 659.31 T (The installed software history database maintained by inst in /usr/lib/inst moves to) 189 635.31 T (/var/inst.) 189 623.31 T -0.01 (The sendmail con\336guration \336le, sendmail.cf is moved to /etc with the other networking) 189 599.31 P (con\336guration \336les.) 189 587.31 T 189 530.98 540 533.98 C 189 533.13 540 533.13 2 L 0.25 H 2 Z 0 X 0 K N 0 0 612 792 C 2 14 Q 0 X 0 K (Application Considerations) 189 538.64 T 3 10 Q (Private \336les \050machine/user speci\336c, log, lock \336les\051 should not be made in shared /usr) 189 510.31 T (.) 527.39 510.31 T (All con\336guration and other writable \336les should reside on /var or some partition other) 189 498.31 T (than /usr like /opt. The impact on applications code varies. In most cases, this change) 189 486.31 T (has already been made for other system architectures and can be replicated for SGI sys-) 189 474.31 T -0.4 (tems. Applications may store sharable \336les, e.g. executables, read-only \336les, in the usual) 189 462.31 P (places in /usr) 189 450.31 T (.) 241.19 450.31 T 189 393.98 540 396.98 C 189 396.13 540 396.13 2 L 0.25 H 2 Z 0 X 0 K N 0 0 612 792 C 2 14 Q 0 X 0 K ( Other Information) 189 401.64 T 3 10 Q (This \336le is available in postscript form in the RCS tree as) 189 377.31 T (\322.../irix) 189 365.31 T (/cmd/diskless/dir) 217.59 365.31 T (-reor) 285.7 365.31 T (g.ps\323.) 304.94 365.31 T (Raghav Sharma wrote the original proposal which explained how to tailor the SVR4) 189 341.31 T -0.28 (directory hierarchy to IRIX. He performed a great majority of the engineering work; but) 189 329.31 P (many were involved with the conversion, including Sunita Das, W) 189 317.31 T (ei Hu, Bill) 454.41 317.31 T (Kawakami, Mark Minihan, Michael Nishimoto, and Adam Sweeney) 189 305.31 T (. Jay McCauley) 462.05 305.31 T (took the original proposal and wrote this document. Subsequent modi\336cations have) 189 293.31 T (been made by Michael Nishimoto.) 189 281.31 T (For a discussion of the diskless architecture, please see \322Diskless Architecture\323. It is) 189 257.31 T (available in postscript format as \322.../irix/cmd/diskless/diskless-arch.ps\323. Installation of) 189 245.31 T (diskless workstations is described in \322Diskless W) 189 233.31 T (orkstation Administration Guide\323,) 386.41 233.31 T (document number 007-0855-030.) 189 221.31 T FMENDPAGE %%EndPage: "6" 5 %%Page: "5" 5 612 792 0 FMBEGINPAGE 72 750.68 558 750.68 2 L 0.25 H 0 Z 0 X 0 K N 0 8 Q (Other Changes) 207 737.5 T 72 75.33 558 75.33 2 L 2 Z N 2 10 Q (Dir) 207 59.9 T (ectory Structur) 220.51 59.9 T (e Re-or) 280.38 59.9 T (ganization in IRIX 5.x) 309.7 59.9 T 1 12 Q (5) 552 59.9 T 207 672.98 558 675.98 C 207 675.13 558 675.13 2 L 0.25 H 2 Z 0 X 0 K N 0 0 612 792 C 2 14 Q 0 X 0 K (Other Changes) 207 680.64 T 0 9 Q (/etc) 207 649.98 T 3 10 Q (Executables in /etc/ have been moved to /usr/etc and /sbin, so they can be shared.) 207 625.31 T (/etc/utmp and similar \336les have moved to /var/adm/utmp.) 207 601.31 T (System speci\336c networking con\336guration \336les which were located in) 207 577.31 T (/usr/etc, have) 485.43 577.31 T (moved to /etc. \050resolv) 207 565.31 T (.conf,) 293.51 565.31 T (snmpd.auth, inetd.conf, etc.\051) 318.77 565.31 T 0 9 Q (CPU-architecture dependencies) 207 514.98 T 3 10 Q -0.23 (The commands and utilities on all SGI systems are built as MIPS1 \050R2000/R3000\051 bina-) 207 490.31 P (ries, so that they are common for all systems. These binaries can be shared among all) 207 478.31 T -0.22 (systems, including R4000 systems. There are a handful of CPUBOARD dependent \336les) 207 466.31 P (and graphics-architecture speci\336c \336les, the stand alones and diagnostics. They will be) 207 454.31 T (located on the / \336le system as they are in current IRIX systems.) 207 442.31 T 0 9 Q (Graphics-architecture dependencies) 207 415.98 T 3 10 Q -0.29 (Some of the graphics support \336les \050/usr/lib/libgl* and /usr/include/feed.h\051 must reside at) 207 391.31 P (a \336xed name in the \336le system. This requires a second level of name indirection in the) 207 379.31 T (/var area to point back to the actual graphics \336le in the shared /usr area. That is, on /usr) 207 367.31 T (the symbolic link points to a \336xed name in /var) 207 355.31 T (, and the name in /var is a symbolic link) 395.11 355.31 T (to the actual, uniquely named \336le in the shared /usr) 207 343.31 T (.) 410.76 343.31 T (The rest of graphics dependent \336les have unique names across dif) 207 319.31 T (ferent graphics and) 469.4 319.31 T (cpu architectures, and can all reside on the shared /usr) 207 307.31 T (.) 422.38 307.31 T (This makes it possible to store all the graphics dependent \336les in a single tree which) 207 283.31 T (then can be shared by all graphics architectures. This part of the tree looks like:) 207 271.31 T (/usr/gfx) 207 247.31 T (microcode,start,stop,init) 297 247.31 T (etc.) 396.39 247.31 T (/usr/gfx/libgl//libgl*) 207 223.31 T (libgl) 352.45 223.31 T (\336les for a speci\336c CPU/GFX combination.) 373.28 223.31 T (/usr/gfx/include//feed.h) 207 199.31 T (all graphics speci\336c include \336les will be) 367.41 199.31 T (included) 207 187.31 T (with all architectures. Special links will be made for) 243.92 187.31 T (feed.h which depends on) 454.88 187.31 T (graphics arch.) 207 175.31 T 0 9 Q (Other \336les and directories) 207 157.98 T 3 10 Q (The Network Information Service \050NIS\051 databases and runtime \336les located in) 207 133.31 T (/usr/etc/yp will be relocated to /var/yp.) 207 121.31 T FMENDPAGE %%EndPage: "5" 4 %%Page: "4" 4 612 792 0 FMBEGINPAGE 54 750.68 540 750.68 2 L 0.25 H 0 Z 0 X 0 K N 0 8 Q (/var) 189 737.5 T 54 75.33 540 75.33 2 L 2 Z N 1 12 Q (4) 54 59.9 T 2 10 Q (Dir) 189 59.9 T (ectory Structur) 202.51 59.9 T (e Re-or) 262.38 59.9 T (ganization in IRIX 5.x) 291.7 59.9 T 3 F (New systems with lar) 189 683.31 T (ge system disks will be con\336gured to have /var be a separately) 275.15 683.31 T -0.34 (mounted \336le system. T) 189 671.31 P -0.34 (o minimize the impact on the installed base, existing systems will) 278.9 671.31 P (have /var be a symbolic link to usr/var) 189 659.31 T (.) 341.96 659.31 T (In a standard IRIX 5.0.1 environment, the following \336les and directories are located in) 189 635.31 T (/var) 189 623.31 T (. In almost all cases, a symbolic link pointing to the /var entry has been left in the) 203.99 623.31 T (original location.) 189 611.31 T (/var/X1) 189 587.31 T (1) 219.16 587.31 T (system speci\336c X1) 279 587.31 T (1 \336les which were formerly locate in /usr/X1) 354.14 587.31 T (1) 533.36 587.31 T (/var/adm) 189 563.31 T (administrative logs and accounting \336les formerly in /usr/adm) 279 563.31 T (/var/arch) 189 539.31 T (Architecture dependent private \336les.) 279 539.31 T (/var/arch/libgl) 189 515.31 T (Indirect links for libgl*. This is discussed below) 279 515.31 T (.) 471.01 515.31 T (/var/arch/include) 189 491.31 T (Indirect links for feed.h) 279 491.31 T (/var/con\336g) 189 467.31 T (system speci\336c kernel con\336guration information formerly in) 279 467.31 T (/usr/con\336g) 279 455.31 T (/var/cron) 189 431.31 T (system speci\336c cron logs and control \336les) 279 431.31 T (/var/lib) 189 407.31 T (system speci\336c writable \336les from /usr/lib) 279 407.31 T (/var/mail) 189 383.31 T (mail directory) 279 383.31 T (/var/ncs, /var/netls) 189 359.31 T (system speci\336c writable \336les for the software licensing system) 279 359.31 T (/var/opt) 189 335.31 T (install area for optional products \050SVR4 standard name\051) 279 335.31 T (/var/preserve) 189 311.31 T (vi/ex saved \336le area formerly /usr/preserve) 279 311.31 T (/var/sadm) 189 287.31 T (SVR4 system administration work area) 279 287.31 T (/var/saf) 189 263.31 T (SVR4 networking work area) 279 263.31 T (/var/spool) 189 239.31 T (spooling area, formerly /usr/spool) 279 239.31 T (/var/sysgen) 189 215.31 T (Machine speci\336c/private \336les needed to con\336gure a speci\336c sys-) 279 215.31 T (tem. The building of a new kernel will use the boot and toolroot) 279 203.31 T (directories in) 279 191.31 T (/usr/cpu/sysgen and will have private system,) 333.96 191.31 T (mtune and master) 279 179.31 T (.d \336les in /var/sysgen.) 349.51 179.31 T (/var/tmp) 189 155.31 T (temporary area, formerly /usr/tmp) 279 155.31 T (/var/tmp_rex) 189 131.31 T (temporary mount point used by rexd, formerly /usr/tmp_rex) 279 131.31 T (/var/yp) 189 107.31 T (NIS con\336guration and database \336les) 279 107.31 T FMENDPAGE %%EndPage: "4" 3 %%Page: "3" 3 612 792 0 FMBEGINPAGE 72 750.68 558 750.68 2 L 0.25 H 0 Z 0 X 0 K N 0 8 Q (/usr Changes) 207 737.5 T 72 75.33 558 75.33 2 L 2 Z N 2 10 Q (Dir) 207 59.9 T (ectory Structur) 220.51 59.9 T (e Re-or) 280.38 59.9 T (ganization in IRIX 5.x) 309.7 59.9 T 1 12 Q (3) 552 59.9 T 3 10 Q (/usr/diag) 207 683.31 T (All diagnostics for hardware suite.) 279 683.31 T ( No) 534.25 683.31 T (writable \336les.) 279 671.31 T (/usr/cpu) 207 647.31 T (CPU architecture- or CPU board-dependent \336les.) 279 647.31 T (/usr/cpu/sysgen) 207 623.31 T (Shareable \336les to recon\336gure/boot a system. These are dependent on) 279 623.31 T (CPUBOARD.) 279 611.31 T (/usr/cpu/sysgen/boot) 207 587.31 T (objects needed to boot a system,) 338.47 587.31 T ( e.g. IP6boot) 467.83 587.31 T (/usr/cpu/root) 207 563.31 T (T) 279 563.31 T (ools needed to con\336gure the IRIX kernel.) 284.41 563.31 T (/usr/sysgen) 207 539.31 T (Symbolic link to /var/sysgen. This permits dif) 279 539.31 T (ferent clients sharing) 462.34 539.31 T (the same /usr \336le system to have individual kernel con\336gurations.) 279 527.31 T 207 470.98 558 473.98 C 207 473.13 558 473.13 2 L 0.25 H 2 Z 0 X 0 K N 0 0 612 792 C 2 14 Q 0 X 0 K (/usr Changes) 207 478.64 T 3 10 Q (A shared /usr \336le system requires several modi\336cations.) 207 450.31 T 4 F (\245) 207 432.31 T 3 F (All system modi\336able \336les move to /var) 220.74 432.31 T (, a system private tree. This includes the) 380.82 432.31 T (local administrative, con\336guration and) 220.74 420.31 T (log \336les, NIS databases, and other system) 377.59 420.31 T (managed \336les.) 220.74 408.31 T 4 F (\245) 207 393.31 T 3 F (Files that depend on the machine\325) 220.74 393.31 T (s hardware become symbolic links to \336xed names) 355.38 393.31 T (in machine architecture speci\336c tree which is always) 220.74 381.31 T -0.28 ( mounted at a \336xed place. libgl) 433.91 381.31 P (is a special case, which requires an addition level of indirection, as explained below) 220.74 369.31 T (.) 555.12 369.31 T 4 F (\245) 207 354.31 T 3 F (All con\336guration \336les in /usr/etc move to /etc.) 220.74 354.31 T (resolv) 407.58 354.31 T (.conf, statd.d, so that a system) 431.36 354.31 T (can be booted with the appropriate con\336gurations.) 220.74 342.31 T 4 F (\245) 207 327.31 T 3 F -0.12 (/usr/local can not be used as a tree local to the machine unless) 220.74 327.31 P -0.12 (it is a mount point for) 469.31 327.31 P (a machine private area.) 220.74 315.31 T ( No application may have writable \336les or machine speci\336c) 315.93 315.31 T -0.24 (con\336guration \336les in /usr) 220.74 303.31 P -0.24 (. /usr/local may be used for non-writable \336les that would be) 319.7 303.31 P (common to all the clients mounting the shared /usr) 220.74 291.31 T (.) 422.85 291.31 T -0.18 (Much of this transition is already manifest in changes made to system utilities in SVR4.) 207 267.31 P (IRIX 5.x has incorporated much of these changes into its system utilities.) 207 255.31 T (Moving system modi\336able \336les to /var requires /var to be mounted in when the system) 207 231.31 T -0.34 (is in single user mode. This requires changes in rc scripts. Also some of the scripts make) 207 219.31 P (directories whose names have now changed) 207 207.31 T 207 150.98 558 153.98 C 207 153.13 558 153.13 2 L 0.25 H 2 Z 0 X 0 K N 0 0 612 792 C 2 14 Q 0 X 0 K (/var) 207 158.64 T 3 10 Q -0.38 (V) 207 134.31 P -0.38 (ariable \336les \050ones which may be written\051 which formerly resided in /usr will migrate to) 213.11 134.31 P -0.06 (the /var tree in the new scheme. Where all the \336les in a directory subtree are potentially) 207 122.31 P (variable, the entire subtree is moved, and the symbolic link in /usr points to the relo-) 207 110.31 T (cated subtree in /var) 207 98.31 T (, e.g. /usr/adm is moved to /var/adm, with the symlink at /usr/adm.) 287.37 98.31 T FMENDPAGE %%EndPage: "3" 2 %%Page: "2" 2 612 792 0 FMBEGINPAGE 54 750.68 540 750.68 2 L 0.25 H 0 Z 0 X 0 K N 0 8 Q (Introduction) 189 737.5 T 54 75.33 540 75.33 2 L 2 Z N 1 12 Q (2) 54 59.9 T 2 10 Q (Dir) 189 59.9 T (ectory Structur) 202.51 59.9 T (e Re-or) 262.38 59.9 T (ganization in IRIX 5.x) 291.7 59.9 T 189 672.98 540 675.98 C 189 675.13 540 675.13 2 L 0.25 H 2 Z 0 X 0 K N 0 0 612 792 C 2 14 Q 0 X 0 K (Intr) 189 680.64 T (oduction) 209.47 680.64 T 3 10 Q (The system directory tree in IRIX 5.0.1 and beyond has been restructured to facilitate) 189 652.31 T (sharing of \336les in a network environment. The goal of this restructuring is to make /usr) 189 640.31 T (capable of being mounted read-only) 189 628.31 T (, and shared among diskless or dataless client sys-) 332.68 628.31 T (tems. This new directory layout is similar to those in System V Release 4 and other) 189 616.31 T (industry standard systems. It was the intent of the implementation to be essentially) 189 604.31 T (transparent to most applications. Where \336les or directory trees have been relocated,) 189 592.31 T -0.06 (symbolic links have been placed in the old location on /usr pointing to the new location) 189 580.31 P (on /var) 189 568.31 T (. \050The only exceptions to this are that symbolic link have not been placed in) 216.49 568.31 T (/usr/sysgen, /usr/man and /usr/catman\051. The movement of writable system \336les from) 189 556.31 T (/usr to /var occurs transparently and automatically as the IRIX operating system is) 189 544.31 T (installed.) 189 532.31 T (Files have been grouped into the following main types:) 189 508.31 T 4 F (\245) 189 490.31 T 3 F (private \336les \050administrative, con\336gurations, logs, etc.\051) 202.74 490.31 T 4 F (\245) 189 475.31 T 3 F (architecture dependent \336les) 202.74 475.31 T 4 F (\245) 189 460.31 T 3 F (application architecture dependent \336les) 202.74 460.31 T 4 F (\245) 189 445.31 T 3 F (CPU board dependent \336les) 202.74 445.31 T 4 F (\245) 189 430.31 T 3 F (graphics and audio architecture dependent \336les) 202.74 430.31 T 4 F (\245) 189 415.31 T 3 F (architecture independent \336les \050documents, data, manual pages\051) 202.74 415.31 T -0.32 (Each of the major subtrees has dif) 189 391.31 P -0.32 (ferent characteristics and requirements. The following) 322.92 391.31 P (is a brief discussion of them.) 189 379.31 T (/) 189 355.31 T (Machine speci\336c \336les and \336les required to boot the) 263.5 355.31 T (system. The /) 470.3 355.31 T (\050root\051 \336le system is not intended to be shared in this scheme, partly) 261 343.31 T (from the requirements in the boot mechanisms.) 261 331.31 T (/usr) 189 307.31 T ( Application architecture dependent \336les to be shared by machines of) 261 307.31 T (similar architecture. All MIPS1 machine can share the same /usr) 261 295.31 T (. \050T) 518.04 295.31 T (o) 531.77 295.31 T -0.19 (allow all systems to use the same binaries for commands and utilities,) 261 283.31 P (the standard system commands are built as MIPS1 for all systems,) 261 271.31 T (including the R4000 systems.\051 These \336les are not writable.) 261 259.31 T (/usr/share) 189 235.31 T (Sharable, architecture independent \336les.) 261 235.31 T (/usr/gfx) 189 211.31 T -0.27 (Graphics architecture related \336les. All \336les which are dependent upon) 261 211.31 P (the system\325) 261 199.31 T (s graphics hardware complement will reside in this tree.) 306.26 199.31 T (/var) 189 175.31 T (Files private to a machine, such as machine speci\336c administrative,) 261 175.31 T (con\336guration and log \336les. The \336le system may also be used for user) 261 163.31 T (directories.) 261 151.31 T (/usr/people) 189 127.31 T (Files private to users of the system/network.) 261 127.31 T ( Normally in SVR4 sys-) 440.33 127.31 T -0.36 (tems, this is /home. For IRIX, the decision has been made to not move) 261 115.31 P (home directories because doing so would cause unnecessary grief.) 261 103.31 T FMENDPAGE %%EndPage: "2" 1 %%Page: "1" 1 612 792 0 FMBEGINPAGE 72 750.68 198 750.68 2 L 0.25 H 0 Z 0 X 0 K N 0 9 Q (February 8, 1994) 72 737.84 T 72 444.68 558 444.68 2 L 2 Z N 72 75.33 558 75.33 2 L N 1 12 Q (1) 552 59.9 T 2 24 Q -0.88 (Dir) 207 659 S -0.88 (ectory Structur) 236.77 659 S -0.88 (e Re-or) 367.18 659 S -0.88 (ganization in) 431.36 659 S -0.88 (IRIX 5.x) 207 629 S 0 12 Q (System Software Marketing) 207 577 T (Computer Systems Group) 207 561 T 1 10 Q (This note discusses the r) 207 526.33 T (e-organization of the dir) 310.1 526.33 T (ectory structur) 413.47 526.33 T (e in IRIX 5.x. The) 477.39 526.33 T -0.3 (intent of this r) 207 514.33 P -0.3 (eorganization is make the /usr dir) 266.72 514.33 P -0.3 (ectory tr) 408.59 514.33 P -0.3 (ee capable of being shar) 445.01 514.33 P -0.3 (ed) 545.8 514.33 P (as r) 207 502.33 T (ead-only \336le system. This better supports diskless and dataless workstations.) 222.64 502.33 T (Most system-owned \336les and dir) 207 490.33 T (ectories ar) 343.96 490.33 T (e moved transpar) 388.46 490.33 T (ently by using a) 463.23 490.33 T (symbolic link fr) 207 478.33 T (om the old location to the new location.) 274.01 478.33 T 207 412.98 558 415.98 C 207 415.14 558 415.14 2 L 0.25 H 2 Z 0 X 0 K N 0 0 612 792 C 2 14 Q 0 X 0 K (Executive Summary) 207 420.65 T 3 10 Q (IRIX 5.0.1 and IRIX 5.1 will continue the ef) 207 392.32 T (forts to re-or) 384.75 392.32 T (ganize the directory structure) 435.08 392.32 T (which started in IRIX 5.0. This reor) 207 380.32 T (ganization is bene\336cial for several reasons:) 350.05 380.32 T 4 F (\245) 207 362.32 T 3 F (it will allow a shared /usr to be mounted read only on diskless) 220.74 362.32 T (and semi-diskless) 470.87 362.32 T 0 (workstations. This /usr will be common across all SGI processor and graphics archi-) 220.74 350.32 P (tectures.) 220.74 338.32 T 4 F (\245) 207 323.32 T 3 F -0.24 (it is in conformance with System V Release 4 practices, as well as those followed by) 220.74 323.32 P (most other manufacturers) 220.74 311.32 T (The plan is to make this transition as transparent and painless as is possible. T) 207 287.32 T (o do this,) 518.05 287.32 T (\336les and directories will be moved around as appropriate, and symbolic links will be) 207 275.32 T -0.33 (placed in the old locations of critical \336les and directories to point to the \336les in their new) 207 263.32 P (locations.) 207 251.32 T (Application developers, both within and outside of SGI, will want to be aware of these) 207 227.32 T -0.23 (changes, primarily to ensure that \336les they place in /usr will be read only) 207 215.32 P -0.23 (. Existing appli-) 494.32 215.32 P (cations will continue to run without change on most workstations. On con\336gurations) 207 203.32 T (where a read-only /usr is used, these applications will continue to run by moving read--) 207 191.32 T (write \336les from /usr in /var \050or other writable location\051 and installing a symbolic link) 207 179.32 T (from /usr to /var) 207 167.32 T (.) 271.68 167.32 T FMENDPAGE %%EndPage: "1" 0 %%Trailer %%BoundingBox: 0 0 612 792 %%Pages: 6 -1 %%DocumentFonts: Helvetica-Bold %%+ Times-Bold %%+ Times-Italic %%+ Times-Roman %%+ Courier-Bold