%!
%%Title:
%%Creator: html2ps version 1.0 beta1
%%EndComments
save
2000 dict begin
/d {bind def} bind def
/D {def} d
/t true D
/f false D
/FL [/Times-Roman
/Times-Italic
/Times-Bold
/Times-BoldItalic
/Courier
/Courier-Oblique
/Courier-Bold
/Courier-BoldOblique
/Helvetica
/Helvetica-Oblique
/Helvetica-Bold
/Helvetica-BoldOblique] D
/WF t D
/WI 0 D
/F 1 D
/IW 453 F div D
/IL 671 F div D
/PS 842 D
/EF [0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 2 2] D
/EZ [11 9 19 17 15 13 12 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 8 8] D
/Ey [0 0 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] D
/EG [-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1] D
/Tm [1 1 0.8 0.8 0.8 0.8 0.8 0.8 0 0 0 0 0 0 0.5 1 1 1 1 0 0 1.3 0 0] D
/Bm [1 1 0.5 0.5 0.5 0.5 0.5 0.5 0 0 0 0 0 0 0.5 1 1 1 1 0 0 1 0 0] D
/Lm [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 0 0 2 0 0 0] D
/Rm [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0] D
/EU [-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 0] D
/NO f D
/YY [[{()}1][{()}0][{()}2]] D
/ZZ [[{()}1][{()}0][{()}2]] D
/Ts EZ 0 get D
/TU f D
/Xp t D
/AU f D
/SN 0 D
/Cf f D
/Fe f D
/TI 1 Ts mul D
/FE {newpath -14 14 M CP BB 467 14 L 467 -685 L CP BB -14 -685 L closepath} D
/LA {TU PM 0 eq and{IW 56 F div add SA{Sf div}if 0 translate}
{71 757 translate F SA{Sf mul}if dup scale
CS CF FS Cf{CA CL get VC}if /Bb f D}ie 0 0 M TF not Tc or
{Cf{gsave SA{1 Sf div dup scale}if Cb VC FE fill grestore}if Df{Sd}if}if} D
/Pi 0 Ts mul D
/SG [0.8 1 1] D
/Ab 15 D
/J 0 D
/Tc f D
/NH 6 D
/Nf f D
/Pa f D
/LH 1.2 D
/XR f D
/Xr {/pN E D ( [p ) WB pN WB (] )WB} D
/Db [16#FF 16#FF 16#FF] D
/Dt [16#00 16#00 16#00] D
/eA f D
/Lc t D
/Dl [16#00 16#00 16#00] D
/LX f D
/Br 0.25 D
/IA ([IMAGE]) D
/DS {/PF f D()WB NL NP()pop RC ZF} D
/Gb f D
/Mb f D
/Hc [16#00 16#00 16#00] D
/Bl 3 D
/MI -15.2 D
/DX (DRAFT) D
/Di 0 D
/FD 2 D
/Dy 2 D
/cD [16#F0 16#F0 16#F0] D
/FW 0.6 D
/FU [16#00 16#00 16#00] D
/ET {/RM f D /A0 0 D /PN SN D /OU t D /Ou t D /W IW D /LL W D D1
Ms not TP and{Ip}if /TF f D} D
%-- End of variable part --
/Cd {aload length 2 idiv dup dict begin {D} repeat currentdict end} D
/EX {EC cvx exec} D
/DU {} d
/BB {pop pop}d
/ie {ifelse} d
/E {exch} d
/M {moveto} d
/R {rmoveto} d
/L {lineto} d
/RL {rlineto} d
/CP {currentpoint} d
/SW {stringwidth} d
/GI {getinterval} d
/PI {putinterval} d
/Sg {setgray} d
/LW {setlinewidth} d
/S {dup () ne OU and{0 Co R AT 3 eq LB and HF not and A1 0 ne A2 0 ne or and
{A2 0 32 A1 0 6 -1 roll awidthshow}{show}ie 0 Co neg R}{pop}ie
OU PH 3 eq or{/Ms t D}if} D
/U {OU{gsave CP currentfont /FontInfo get /UnderlinePosition get
0 E currentfont /FontMatrix get dtransform E pop add newpath M dup SW pop
CJ 0 RL stroke grestore}if} D
/B {OU Br 0 gt and{CP Ts neg Ts .33 mul R gsave 0 Sg
CP newpath Ts Br mul 0 360 arc closepath UI 2 mod 0 eq{stroke}{fill}ie
grestore M CP E Ts Br 1 add mul sub E BB /Ms t D}if}D
/NP {Ms TP not or PA and OU and{TP{OR}if f1{mF k2 /mF E D /YC 0 D}if
TP TU not PM 0 eq or and{showpage}if DU Ip TE not{LA}if 0.6 LW
/CI 0 D /TP t D /Hs f D /hl 6 D /hL 6 D /HI hi D /Ms f D}if Bs XO BO M} D
/Np {LE sub CP E pop gt PL 0 eq and{NP}if}D
/Ip {/PN PN 1 add D /Pn RM{1}{4}ie PN Ns D /PM PN SN sub 2 mod D} D
/GP {E dup 3 -1 roll get PN 1 add 2 mod get dup type /integertype eq
{get 0 get}{E pop}ie}d
/Fc {dup 2 GP exec SW pop /S1 E D dup 1 GP exec SW pop /S2 E D 0 GP exec SW
pop /S3 E D S1 0 gt{S2 2 mul S1 add S3 2 mul S1 add 2 copy lt{E}if pop}{0}ie
S2 S3 add 2 copy lt{E}if pop IW .9 mul div dup 1 gt{1 E div}{pop 1}ie}D
/OR {gsave SA{1 Sf div dup scale}if Fe{Cf{FU VC}if FW LW 1 setlinejoin
FE stroke}if /YO {60 F div dup 40 gt{pop 40}if}D /cs CS D /cf CF D /CF 0 D
/pf PF D /PF f D /Fn FN D /At AT D /AT 0 D /FN EF Hf 1 add get D Fz Fs FS ZZ
Fc Fz mul Fs FS EU Hf 1 add get dup type /arraytype eq Cf and{VC}{pop 0 Sg}ie
IW IL neg YO sub M ZZ 1 GP exec dup SW pop neg 0 R Sh 0 IL neg YO sub M
ZZ 0 GP exec Sh ZZ 2 GP exec dup SW pop IW E sub 2 div IL neg YO sub M Sh
Fz Fs FS NO{/AW IW Pn SW pop sub D AW 2 div IL neg YO sub
S1 0 gt S2 AW .45 mul gt or S3 AW .45 mul gt or{Fz 2 mul sub}if M Pn Sh}if
EU Hf get dup type /arraytype eq Cf and{VC}{pop 0 Sg}ie
YY Fc /FN EF Hf get D Hz mul HS FS IW YO M YY 1 GP exec dup SW pop neg 0 R Sh
0 YO M YY 0 GP exec Sh YY 2 GP exec dup SW pop IW E sub 2 div YO M Sh
/FN Fn D /AT At D t Pb XO SZ SL get neg R /PF pf D grestore /CF 0 D cs cf FS}D
/Sh {dup () ne{CP Hz 4 div sub BB show CP CS add BB}{pop}ie}D
/Pb {/OU E D /Ou OU D /PB t D 0 0 M Ba{/Sa save D /BP t D /Fl t D RC /PL 0 D
/PH 0 D /W IW D /LE IL .7 mul D /EO 0 D SI ZF /YA 0 D /BO 0 D /C1 () D
BA 0 Ts neg R Bb{Xl Yl Xh Yh}if Bb CP Sa restore M
{/Yh E D /Xh E D /Yl E D /Xl E D}if /Fl t D}if
BL /OU t D /HM f D /Ou t D /PB f D} D
/Bs {/BP Ba not D}D
/reencodeISO {
dup dup findfont dup length dict begin{1 index /FID ne{D}{pop pop}ie}forall
/Encoding ISOLatin1Encoding D currentdict end definefont} D
/ISOLatin1Encoding [
/.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/quoteright
/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/quoteleft/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/.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/exclamdown/cent/sterling/currency/yen/brokenbar
/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot
/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
/guillemotright/onequarter/onehalf/threequarters/questiondown
/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute
/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex
/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis
/yacute/thorn/ydieresis
] D
[128/backslash 129/parenleft 130/parenright 141/circumflex 142/tilde
143/perthousand 144/dagger 145/daggerdbl 146/Ydieresis 147/scaron 148/Scaron
149/oe 150/OE 151/guilsinglleft 152/guilsinglright 153/quotesinglbase
154/quotedblbase 155/quotedblleft 156/quotedblright 157/endash 158/emdash
159/trademark]
aload length 2 idiv 1 1 3 -1 roll{pop ISOLatin1Encoding 3 1 roll put}for
/colorimage where{pop}{
/colorimage {
pop pop /Pr E D {/Cv Pr D /Gr Cv length 3 idiv string D 0 1 Gr length 1 sub
{Gr E dup /i E 3 mul D Cv i get 0.299 mul Cv i 1 add get 0.587 mul add
Cv i 2 add get 0.114 mul add cvi put}for Gr} image} D
}ie
/pdfmark where{pop}{userdict /pdfmark /cleartomark load put}ie
WF{FL{reencodeISO D}forall}{4 1 FL length 1 sub{FL E get reencodeISO D}for}ie
/Symbol dup dup findfont dup length dict begin
{1 index /FID ne{D}{pop pop}ie}forall /Encoding [Encoding aload pop]
dup 128 /therefore put D currentdict end definefont D
/SF {/CS E D SZ SL CS put FO SL FN put /YI CS LH neg mul D dup ST cvs ( ) join
CS ST cvs join C1 E join ( NF ) join /C1 E D CS NF /Wf WF FN 0 gt or D
/BW Wf{( ) SW pop}{0}ie D}D
/NF {/cS E D /cF E D cF 0 ge{FL cF get}{/Symbol}ie
findfont cS scalefont setfont} D
/FS {CF or /CF E D FR SL CF put CF CF 0 ge{FN 4 mul add}if E SF} D
/PC {SH /BP f D fin not GL not and{NL}if /HM t D /LL LS D} D
/BS {/TX E D Wf{/fin f D /CW 0 D /LK 0 D /SC 0 D
/RT TX D {RT ( ) search{/NW E D pop /RT E D /WH NW SW pop D CW WH add LL gt
{TX SC LK SC sub 1 sub NN GI GL{SH cF cS OC
2 copy cS ne E cF ne or{NF}{pop pop}ie}{PC /CW WH BW add D}ie
/SC LK D}
{GL{JC}if
/CW CW WH add BW add D /HM t D}ie /GL f D /Ph f D
/LK LK NW length 1 add add D}{pop exit}ie}loop
/fin t D TX SC LK SC sub GI SH RT () ne{GL not{CC}if}if
/LC TX length D /WH RT SW pop D CW WH add Hy{HC SW pop add}if LL gt
{RT GL{SH cF cS OC 2 copy cS ne E cF ne or{NF}{pop pop}ie
Hy{/Ph t D}if /LL LS D}{NL /LL LS D SH}ie}
{RT PC Hy{CC}if /Ph Ph Hy or D}ie RT () ne{/GL t D /HM t D}if}
{TX SW pop LL le{TX SH}{/NW () D 0 2 TX length 1 sub
{/CW E D TX 0 CW GI dup SW pop LL gt{pop NW SH /HM t D NL/LL W XO sub MR sub D
/CW CW 2 sub NN D /TX TX CW TX length CW sub GI D TX BS exit}
{/NW E D}ie}for}ie}ie /HM t D}D
/CC {C0 length 0 gt{JC}if /C0 [C1 L1 YA YB Mf NS NB TB AF Bw] D
/C1 () D /L0 L1 D /YA 0 D /YB 0 D /Mf 0 D /NS 0 D /NB 0 D}D
/JC {C0 aload length 0 gt{pop pop pop NB add /NB E D NS add /NS E D
dup Mf gt{/Mf E D}{pop}ie dup YB gt{/YB E D}{pop}ie
dup YA gt{/YA E D}{pop}ie pop C1 join /C1 E D /C0 [] D}if}D
/OC {C0 length 0 gt{C1 L1 L0 sub YA YB Mf NS NB TB AF Bw GL C0 aload pop
/Bw E D /AF E D /TB E D /NB E D /NS E D /Mf E D /YB E D /YA E D /C0 [] D
/L1 E D /C1 E D Ph{HC SH}if NL /GL E D /Bw E D /AF E D /TB E D /NB E D /NS E D
/Mf E D /YB E D /YA E D /L1 E D /LL W L1 sub XO sub MR sub WH sub D /CW 0 D
C1 E join /C1 E D}if}D
/BT {/LB t D dup length string copy RS dup dup () ne E ( ) ne and
{/CI 0 D /LS LL D /LL W L1 sub XO sub MR sub D BS}
{dup ( ) eq{/GL f D}if dup () eq L1 0 eq or{pop}{SH /BP f D /Ph f D}ie}ie
/LB f D} D
/BL {CP E pop XO E M} D
/NL {JC /GL f D /SK W XO sub MR sub L1 sub TB{Bw add}if D
/YA LF{Mf HM Fl not and PF or{LH mul}if}{0 /LF t D}ie YA 2 copy lt{E}if pop D
C1 () ne{/FB YB Mf SA{Sf mul}if 4 div 2 copy lt{E}if pop D}if Fl{/Ya YA D}if
CP E pop YA sub YB sub LE neg lt Fl not and PB not and{NP}if NT TL BL
OU PF not and PB or{/RE L1 TB{Bw sub}if
W XO sub MR sub div YA YB add LE BO add div 2 copy lt{E}if pop D
RE 1 gt{BL 1 RE div dup scale}if}if
AT 2 le{SK AT mul 2 div YA neg R}if
AT 3 eq{0 YA neg R TB{/NB NB 1 sub D /NS NS 1 sub D}if /NB NB 1 sub NN D
/A3 NS 6 mul NB add D NS NB add 0 eq
{/A1 0 D /A2 0 D}
{NS 0 eq{/A1 SK NB div dup J gt{pop 0}if D /A2 0 D}{J A3 mul SK lt
{/A1 J D /A2 SK J NB mul sub NS div dup Ab gt{/A1 0 D pop 0}if D}
{/A1 SK A3 div D /A2 A1 6 mul D}ie}ie}ie /A1 A1 NN D /A2 A2 NN D}if
AT 4 eq{0 YA neg R PH 2 le{PD 0 lt{/PD L1 D}if PD M1 gt{/M1 PD D}if
L1 PD sub M2 gt{/M2 L1 PD sub D}if}{DV ID 1 sub get 0 ge{Lo 0 R}if}ie}if
F0 cF ne Cs cS ne or{F0 Cs NF}if
/ms Ms D /Ms f D CP FB sub
C1 cvx exec XO EO sub L1 add TB{BW sub}if dup LM gt{/LM E D}{pop}ie
PH 0 eq PH 4 eq or Ms and{HF not{/PO t D /AH t D}if
BB CP YA add E AT 3 eq LB and{A1 sub}if TB{BW sub}if E BB}
{pop pop}ie Ms HM PH 3 eq and or{/BP f D /Fl f D}if
/Lo 0 D /L1 0 D /F0 cF D /Cs cS D BP not{0 YB NN neg R}if
OU f1 and mF not and{k2 /f1 f D}if
OU PF not and PB or{RE 1 gt{RE dup scale}if}if /Ms ms Ms or D
/C1 AF{(Cp )}{()}ie D /YA 0 D /YB 0 D BL
AT 4 eq LB not and PH 3 ge and
{ID DV length lt{DV ID get dup 0 ge{DO E sub /Lo E D /L1 Lo D}{pop}ie
/ID ID 1 add D}if}if /T t D CD{/LN LN 1 add D PD}if
/PD -1 D /NS 0 D /NB 0 D /TB f D /Ph f D /Mf 0 D /HM f D} D
/RS {/TM E D /CN 0 D TM{10 eq{TM CN ( ) PI}if /CN CN 1 add D}forall
/CN 0 D /BK HM EN and{0}{1}ie D TM
{dup 32 ne{TM CN 3 2 roll put /CN CN 1 add D /BK 0 D}
{pop BK 0 eq{TM CN 32 put /CN CN 1 add D}if /BK 1 D}ie}forall
TM 0 CN GI dup dup () ne E ( ) ne and
{dup CN 1 sub get 32 eq{/EN f D}{/EN t D}ie}if} D
/join {2 copy length E length add string dup 4 2 roll 2 index 0 3 index
PI E length E PI}d
/WR {(\n) search{dup () ne BP not or
{Li 4 le CP E pop YI Li mul add LE add 0 lt and PL 0 eq and{NP}if
SH NL pop /Li Li 1 sub D WR}{pop pop WR}ie}{SH}ie /CI 0 D /BP f D} D
/SH {dup dup () ne E ( ) ne and PF or CS Mf gt and{/Mf CS D}if
T not Wf and{( ) E join /T t D}if dup BP{/MF CS D}if
AT 3 eq{2 copy length dup 0 gt{/NB E NB add D
{( ) search{/NS NS 1 add D pop pop}{pop exit}ie}loop}{pop pop}ie}if
CD PD 0 lt and{dup DC search{SW pop /PD E L1 add D pop pop}{pop}ie}if
0 Np dup SW pop L1 add /L1 E D dup () ne
{C1 (\() join E join (\)) join AU AF and UF or Wf and{( U ) join}if
sF{( s ) join}if ( S ) join
/C1 E D dup length 1 sub get 32 eq /TB E D /Bw BW D}{pop pop}ie} D
/BG {AI LG BC add add 0 eq} D
/ON {OU{Ty AR AI NN get dup 1 add Ln Ns Ty 2 mod 0 eq{(. )}{(\) )}ie join
dup SW pop neg 0 R CP E 0 lt{0 E M}{pop}ie CP BB show /Ms t D}if} D
/Ln {AR AI 3 -1 roll put}D
/SP {dup CI lt BP not and{dup CI sub 0 E R /CI E D}{pop}ie} D
/BN {PF{WR /HM f D}{BT NL}ie} D
/NN {dup 0 lt{pop 0}if} D
/h {HI 0 gt{(h) HI ST cvs join cvx exec dup 1 get E
Nf{0 get E join}{pop}ie}{()}ie} D
/H {/fn FN D /Hi E 1 add D 1 sub /HL E D /H2 HL 2 add D /GS EZ H2 get D
E Tm H2 get GS mul BE dup 0 gt{1 sub}{pop EG H2 get dup 0 lt{pop AT}if}ie NA
WW Np /SL SL 1 add D /FN EF H2 get D GS Ey H2 get FS
EU H2 get Sc Hs not HL Hl lt and Hs HL hl lt and or Hi 0 eq or
{/HI Hi D /Hs t D /hl HL D /hL HL D}if HL Hl lt{/hi Hi D}if
Nf HI 0 gt and{(h) Hi ST cvs join cvx exec 0 get WB}if
/HF t D /AH f D /PO f D} D
/EH {Bm H2 get GS mul BE OA /SL SL 1 sub NN D /CF 0 D /FN fn D
SZ SL get FR SL get FS /HF f D /GS Ts D ()Ec} D
/P {E PF{WR}{PO{EP}{BN}ie Ts 4 mul Np AE not{Tm 0 get Ts mul neg SP}if
dup 0 ge AH and{Pi Pd}if}ie 1 sub dup 0 lt{pop AV AL get}if /AT E D /PO t D} D
/EP {PF{WR}{BN Ts 4 mul Np}ie AE not{Bm 0 get Ts mul neg SP}if
/AT AV AL get D /PO f D} D
/BE {E PO{EP}{BN}ie Ts 4 mul Np neg SP} D
/HR {/Aw W EO sub D /RW E dup 0 gt{Aw mul}{neg}ie dup Aw gt{pop Aw}if D /RZ E D
E BN Ts neg SP 1 sub 2 div Aw RW sub mul EO add CP E pop M PF{0 Ps neg R}if
0 Np OU{gsave RZ LW Cf{Hc VC}{0 Sg}ie CP BB RW 0 RL CP BB stroke grestore}if
/CI 0 D /BP f D PF not{Ts neg SP}if /Ms t D} D
/AD {I NL EG 14 get dup 0 lt{pop AT}if NA /AE t D Tm 14 get Ts mul neg SP
Cf{EU 14 get dup -1 eq{pop CA CL get}if Sc}if} D
/DA {BN ()ES OA /AE f D ()Ec Bm 14 get Ts mul neg SP} D
/PR {/MW E D /Li E D Tm 1 get Ps mul BE 0 NA /FN Fp D /PF t D SI /SL SL 1 add D
/CF 0 D Ps CS mul Ts div MW WC mul CS mul Ts div dup LL gt PL 0 eq and
{LL div div}{pop}ie Ey 1 get FS CP E pop LE add YI neg div cvi dup Li lt
AH and{4 lt YI Li mul 5 mul LE add 0 gt or PL 0 eq and{NP}if}{pop}ie
EU 1 get Sc /GS Ps D}D
/RP {WR NL () /PF f D SI /FN 0 D ES Bm 1 get Ps mul neg SP OA /GS Ts D} D
/SI {/XO Lm 15 get BC NN mul Lm 16 get AI UI sub NN mul add
Lm 17 get UI NN mul add Lm 20 get LG NN mul add Ts mul
PF{Lm 1 get Ps mul add}if EO add D
/MR Rm 15 get BC NN mul Rm 16 get AI UI sub NN mul add
Rm 17 get UI NN mul add Rm 20 get LG NN mul add Ts mul
PF{Rm 1 get Ps mul add}if D /LL W XO sub MR sub D} D
/DT {BN /LG LG 1 sub D SI /LG LG 1 add D WW 2 div Np BL} D
/DD {WB Cc 0 eq L1 0 eq or Lm 20 get Ts mul L1 sub TB{BW add}if Ts 2 div lt or
NL /LF E D SI BL} D
/DL {Dc LG Cc put /Cc E D BG{Tm 18 get Ts mul BE}{BN}ie /LG LG 1 add D BL} D
/LD {BN LG 0 gt{/LG LG 1 sub D}if /Cc Dc LG get D SI
BG{()Bm 18 get Ts mul BE}if BL} D
/UL {BG{Tm 17 get Ts mul BE}{BN}ie NR AI NN 0 put /UI UI 1 add D
/AI AI 1 add D SI BL} D
/LU {BN /UI UI 1 sub D /AI AI 1 sub D SI BG{()Bm 17 get Ts mul BE}if BL} D
/OL {E BG{Tm 16 get Ts mul BE}{BN}ie TR AI NN Ty put /Ty E D NR AI NN 1 put
/AI AI 1 add D SI BL 1 Ln} D
/LO {BN /AI AI 1 sub D /Ty TR AI get D SI BG{()Bm 16 get Ts mul BE}if BL} D
/LI {E BN -1 SP /BP f D /CI 0 D 0 Np NR AI 1 sub NN get 1 eq
{dup dup 0 gt E 4 le and{/Ty E D}{pop}ie
/L1 L1 Ty AR AI NN get Ns SW pop XO sub dup 0 lt{pop 0}if add D ( ON )}
{pop ( B )}ie C1 E join /C1 E D CS Mf gt{/Mf CS D}if BL} D
/BQ {Tm 15 get Ts mul BE /BC BC 1 add D SI BL} D
/QB {Bm 15 get Ts mul BE /BC BC 1 sub D SI BL} D
/Al {E EP 1 sub dup 0 lt{pop AV AL get}if NA} D
/Ea {EP OA} D
/WB {PF{WR}{BT}ie} D
/F1 {WB /FN 0 D CS 0 FS} D
/F2 {WB /FN WI D CS 0 FS} D
/HY {/Hy t D WB /Hy f D} D
/YH {WB} D
/A {/LT E D LT 1 eq{/RN E D}if /Lh E D WB /AF t D /C1 C1 ( Cp ) join D
Lc{Cl Sc}if} D
/EA {Lc AF and{Ec}{WB}ie TL Pa AF and Lh 0 ne and
{( \() Lh join (\)) join /AF f D WB}if /AF f D} D
/TL {C1 ( Tl ) apa /C1 E D} d
/apa {AF OU and Lh 0 ne LT 1 eq or and{LT 1 eq{RN ( /) E ST cvs join}
{(\() Lh join (\)) join}ie E join join}{pop}ie} d
/Cp {/Xc CP /Yc E D D} D
/SS {Cf{dup 0 ge{EU E get dup -1 eq{pop CA CL get}if}{pop CA CL get}ie Sc}
{pop}ie SZ SL get /SL SL 1 add D} D
/I {WB 8 SS 1 FS} D
/EM {WB 8 SS /CF CF 1 xor D 0 FS} D
/BD {WB 9 SS 2 FS} D
/TT {WB 10 SS /FN Fp D 0 FS} D
/KB {WB 11 SS /FN Fp D 2 FS} D
/CT {WB 12 SS 1 FS} D
/SM {WB 13 SS /FN Fp D 0 FS} D
/Q {/QL QL 1 add D QO QL 2 mod get La get join WB} D
/EQ {QC QL 2 mod get La get join WB /QL QL 1 sub D} D
/RO {WB -1 SS /CF 0 D 0 FS} D
/SY {WB -1 SS -1 FS} D
/ES {WB /SL SL 1 sub NN D /CF 0 D /FN FO SL get D SZ SL get FR SL get FS ()Ec}D
/FZ {3 sub 1.2 E exp GS mul E WB TL /C1 C1 ( Cp ) join D /SL SL 1 add D 0 FS} D
/Ef {WB TL ()ES /C1 C1 ( Cp ) join D} D
/BZ {dup /Bf E D FZ}D
/Sc {dup -1 ne Cf and{/CL CL 1 add D dup 0 eq{pop [0 0 0]}if
dup CA E CL E put VS ( VC ) join C1 E join /C1 E D}{pop}ie} D
/Ec {WB Cf{/CL CL 1 sub NN D CA CL get VS ( VC ) join C1 E join /C1 E D}if} D
/VS {dup type /arraytype eq{([) E {ST cvs join ( ) join}forall (]) join}if} D
/VC {{255 div}forall setrgbcolor} D
/Sl {dup type /integertype ne{Ds}if /La E D WB}d
/UN {WB /UF t D} D
/NU {WB /UF f D} D
/SE {WB /sF t D} D
/XE {WB /sF f D} D
/sM {/C1 C1 ( k1 ) join D}d
/eM {/C1 C1 ( k2 ) join D}d
/k1 {/YC CP E pop Ts add D /mF t D /f1 t D}d
/k2 {gsave 3 LW -9 CP E pop Ts 0.2 mul sub M -9 YC L stroke grestore /mF f D}d
/Ac {/AC E D WB}d
/Ca {eA{( \()join AC join(\) )join}if WB}d
/s {OU{gsave 0 CS .25 mul R dup SW pop CJ 0 RL stroke grestore}if}D
/CJ {AT 3 eq LB and{E dup dup length 1 sub A1 mul E
{( ) search{pop pop E A2 add E}{pop exit}ie}loop 3 -1 roll add
W CP pop sub 2 copy gt{E}if pop}if}D
/So {/Co E D} D
/SO {C1 Yo ST cvs join ( So ) join /C1 E D (j) SW pop 2 div Pd} D
/Se {E WB CS E div Pd}D
/Pd {dup type /stringtype eq{SW pop}if dup /L1 E L1 add D
ST cvs ( 0 R ) join C1 E join /C1 E D} D
/Sp {0.35 CO} D
/Sb {-0.2 CO} D
/CO {OV Io Yo put /Yo E CS mul Yo add D /Io Io 1 add D -1.5 Io mul 3 add FZ SO
CS Yo add dup YA gt{/YA E D}{pop}ie
Yo neg dup YB gt{/YB E D}{pop}ie} D
/Es {ES /Io Io 1 sub NN D /Yo OV Io get D SO} D
/SB {/N2 0 D 0 1 NI{/N E D{IX N2 get 0 lt{/N2 N2 1 add D}{exit}ie}loop
/K WS N get FC N get mul D /NY AY N2 get D /BV NY array D
0 1 NY 1 sub{/TM K string D currentfile TM readhexstring pop pop BV E TM put}
for BM N BV put /N2 N2 1 add D}for} D
/IC [{/MA E D /MB 0 D}{2 div /MA E D /MB MA D}{/MB E CS sub D /MA CS D}
{pop /MA YS AB mul D /MB 1 AB sub YS mul D}{pop /MA 0 D /MB 0 D}] D
/IP {BV N get /N N 1 add D} D
/II {/K E D IX K get 0 lt{/EC E D}if /TY E D
TY 4 eq{/Y E D /X E D}if TY 3 eq{/AB E D}if
/XW AX K get D /YW AY K get D /IS SG IT K get get D /XS XW IS mul D
/YS YW IS mul D YS IC TY get exec /MA MA Fl not{3 add}if D} D
/IM {II /ty TY D /xs XS D /ys YS D /ya YA D /yb YB D /ma MA D /mb MB D /k K D
/ec EC D /BP f D /CI 0 D WB TL L1 xs add dup XO add MR add W gt
{pop /ma ma Fl{3 add}if D NL /YA ma D /YB mb D /YS ys D /L1 xs D}
{/L1 E D ma YA gt{/YA ma D}if mb YB gt{/YB mb D}if}ie /TB f D
OU{CP E pop YS sub LE neg lt Fl not and PB not and{NP /YA ma D /YB mb D}if
/BP f D ty ST cvs ( ) join IX k get 0 lt{(\() join ec join (\) ) join}if
k ST cvs join ty 3 eq{AB ST cvs ( ) join E join}if
ty 4 eq{X ST cvs ( ) join Y ST cvs join ( ) join E join}if C1 E join
( DI ) join FP 2 eq FP 1 eq AF and or{( FM ) join}if
( Il Cp ) apa /C1 E D /EN f D}if /HM t D /T f D} D
/DI {II /Xc CP /Yc E D D /YN YW neg D /HM t D /CI 0 D /K2 IX K get D gsave
TY 4 eq{OX X IS mul add OY FY add YS sub Y IS mul sub}
{/FY YS D CP MB sub 2 copy /OY E D /OX E D}ie
translate K2 0 ge{/DP AZ K2 get D /BV BM K2 get D XS YS scale /N 0 D XW YW DP
[XW 0 0 YN 0 YW] {IP} FC K2 get 1 eq{image}{f 3 colorimage}ie}
{EX}ie grestore XS 0 R /Ms t D} D
/FM {gsave 0 Sg CP MB sub translate XS neg 0 M 0 YS RL XS 0 RL 0 YS neg RL
XS neg 0 RL stroke grestore} D
/NA {/AT E D /AL AL 1 add D AV AL AT put} D
/OA {AL 0 gt{/AL AL 1 sub D /AT AV AL get D}if} D
/D1 {/BR {CP E pop E BN Mb{CP E pop eq{0 YI R}if}{pop}ie} D
/Sn {OU{C1 E ST cvs join ( Ld ) join /C1 E D}{pop}ie} D} D
/D1 {/BR {BN} D /Sn {OU {C1 E ST cvs join ( Ld ) join /C1 E D} {pop} ie} D} D
/TC {/TF t D /ML 0 D HN{SW pop dup ML gt{/ML E D}{pop}ie}forall NP /RM RM not D
RC /OU Tc D Ep /PN 0 D Ms not TP and{Ip}if /W IW ML sub Ts sub D
/A0 0 D TH{/BR {( ) join BT} D /Sn {pop} D /Ti () D /Au () D}if} D
/TN {0 eq{E EA PF HF or not XR and{HN E get Xr}{pop}ie}
{OU{Tn 0 ge{() BN}if /Tn E D}{pop}ie WB}ie} D
/NT {OU LB not and Tn 0 ge and{PL 0 eq{Ms not{CS CF FS}if CP dup
/y E YA sub D W 9 sub CS -1.8 mul XO L1 add 2 add{y M (.) show}for
HN Tn get dup SW pop IW E sub y M show CP BB M}if /Tn -1 D}if} D
/Ld {/DN E D HN DN Pn put [/View [/XYZ -4 Fl{PS}{CP YA add US E pop}ie null]
/Dest DN ST cvs cvn /DEST pdfmark} D
/C {ND 1 eq{1 sub}if TI mul /XO E D NL Nf not{pop()}if 0 3 -1 roll 1 A} D
/OP {BP not{NP}if PN 2 mod 0 eq{NP}if}D
/Ep {Xp PN 2 mod 0 eq and{/Pn (-) D showpage /PM 1 D LA}if}D
/Dg [73 86 88 76 67 68 77] D
/Rd [0 [1 1 0][2 1 0][3 1 0][2 1 1][1 1 1][2 2 1][3 3 1][4 4 1][2 1 2]] D
/Ns {/m E D /c E 32 mul D /j m 1000 idiv D /p j 12 add string D
c 96 le m 0 gt and{c 32 le {/i 0 D /d 77 D /l 100 D /m m j 1000 mul sub D
j -1 1 {pop p i d c add put /i i 1 add D}for
4 -2 0 {/j E D /n m l idiv D /m m n l mul sub D /d Dg j get D
n 0 gt {/x Rd n get D x 0 get -1 1 {pop p i d c add put /i i 1 add D}for
p i x 1 get sub Dg x 2 get j add get c add put}if /l l 10 idiv D
}for p 0 i GI}
{/i ST length 1 sub D m {1 sub dup 0 ge{dup 26 mod c add 1 add
ST i 3 -1 roll put 26 idiv dup 0 eq{pop exit}if}if /i i 1 sub D}loop
ST i ST length i sub GI}ie}
{m p cvs}ie} D
/US {matrix currentmatrix matrix defaultmatrix matrix invertmatrix
matrix concatmatrix transform} D
/GB {Gb{US}if}D
/Tl {/Rn E D Xc CP pop ne{
[/Rect [Xc 1 sub Yc cS 0.25 mul sub GB CP E 1 add E cS 0.85 mul add GB]
/Subtype /Link /Border [0 0 Cf Lc and LX and AU or{0}{1}ie] Rn type
/nametype eq {/Dest Rn}{/Action [/Subtype /URI /URI Rn] Cd}ie
/ANN pdfmark}if} D
/Il {/Rn E D [/Rect [Xc Yc GB Xc XS add Yc YS add GB] /Subtype /Link
/Border [0 0 0] Rn type /nametype eq{/Dest Rn}
{/Action [/Subtype /URI /URI Rn] Cd}ie /ANN pdfmark} D
/XP {[{/Z Bz 2 div D Z 0 R Z Z RL Z neg Z RL Z neg Z neg RL Z Z neg RL}
{Bz 0 RL 0 Bz RL Bz neg 0 RL 0 Bz neg RL}
{0 -5 R Bz 0 RL 0 21 RL Bz neg 0 RL 0 -21 RL}]} D
/MS {/Sm E D WB}D
/O {BN()Sm BX} D
/BX {/Bt E D Bt 2 lt{CS 0.8 mul}{11 mul}ie W XO sub MR sub 2 copy gt{E}if pop
/HZ E D WB Bt 2 eq{HZ ST cvs ( ) join}{()}ie
Bt ST cvs join ( Bx ) join HM{( ) Pd}if
L1 HZ add XO add MR add W gt{NL}if C1 E join /C1 E D /L1 L1 HZ add D /T f D
( ) WB Bt 2 lt{YA CS .8 mul lt{/YA CS .8 mul D}if}
{YB 5 lt{/YB 5 D}if YA 21 lt{/YA 21 D}if}ie /CI 0 D} D
/Bx {dup 2 eq{E /Bz E D}{/Bz CS .8 mul D}ie
OU {gsave 0 Sg XP E get exec stroke grestore}{pop}ie Bz 0 R /Ms t D} D
/SD {FD 4 mul Dy add DZ NF newpath 0 0 M DX t charpath pathbbox
3 -1 roll sub /DY E D E dup /X1 E D sub WM mul WX DY mul add WM DG mul E div
/DF E D /DR WX DF mul DY mul WM div 2 div D} d
/Sd {gsave 0 IL Di mul neg translate IL IW atan Di 0 eq{neg}if rotate
FD 4 mul Dy add DZ NF DR X1 sub DY 2 div neg M cD VC DX show grestore} d
/RC {/AI 0 D /LG 0 D /BC 0 D /UI 0 D /PF f D /Cc 0 D /Dc 10 array D
/NR [0 1 9{pop 0}for] D /La Ds D /AR 10 array D /TR 10 array D /AV 30 array D
SI /AL -1 D /AT A0 D AT NA /OV 9 array D /Yo 0 D /Co 0 D /Io 0 D /Hy f D
/Ph f D /CL -1 D Ct Sc}D
/ZF {/FR [0 1 30{pop 0}for] D /SZ [0 1 30{pop 0}for] D /FO [0 1 30{pop 0}for] D
/SL 0 D /CF 0 D /FN 0 D 0 Ts SF}D
/QO [[(\234)(\233)(\253\240)(\232)(\273)(\253)][(')(`)(\253\240)(\231)(\273)(\253)]] D
/QC [[(\234)(\234)(\240\273)(\233)(\253)(\273)][(')(')(\240\273)(`)(\253)(\273)]] D
/Hf EF length 2 sub D
/Hz EZ Hf get D
/HS Ey Hf get D
/Fz EZ Hf 1 add get D
/Fs Ey Hf 1 add get D
/LE IL D
/Ps EZ 1 get D
/Fp EF 1 get D
/XO 0 D
/YI 0 D
/CI 0 D
/FP 0 D
/WW Ts 7 mul D
/Mf 0 D
/YA 0 D
/YB 0 D
/Cs Ts D
/GS Ts D
/F0 0 D
/NS 0 D
/NB 0 D
/N 0 D
/C0 [] D
/C1 () D
/Lo 0 D
/L1 0 D
/LM 0 D
/PH 0 D
/EC 0 D
/Lh 0 D
/LT 0 D
/CH 1 string D
/ST 16 string D
/CA 9 array D
/HC (\255) D
/HM f D
/PF f D
/EN f D
/TB f D
/UF f D
/sF f D
/AE f D
/AF f D
/BP t D
/CD f D
/PA t D
/GL f D
/T t D
/HF f D
/AH f D
/SA f D
/PB f D
/f1 f D
/mF f D
/OX 0 D
/OY 0 D
/FY 0 D
/EO 0 D
/FB 0 D
/PL 0 D
/Bw 0 D
/PD -1 D
/TP f D
/TH t D
/Ty 4 D
/Tn -1 D
/Fl t D
/LB t D
/PM 1 D
/Ms f D
/Ba f D
/Bb f D
/Hl 3 D
/hl 6 D
/hL 6 D
/Hs f D
/HI 0 D
/hi 0 D
/PO t D
/TE f D
/LF t D
/BO 0 D
/Sm 1 D
/Bf 3 D
/A1 0 D
/A2 0 D
/Ds 1 D
/QL -1 D
/Cb Db D
/Ct Dt D
/Cl Dl D
[/Creator (html2ps version 1.0 beta1) /Author () /Keywords () /Subject ()
/Title () /DOCINFO pdfmark
/ND 1 D
/HN [1 1 1{pop (??)}for] D
/Hr []D
/HV []D
/Cn []D
Hr length 0 gt{[/PageMode /UseOutlines /DOCVIEW pdfmark}if
/Hn 1 D
0 1 Hr length 1 sub{
/Bn E D [Cn Bn get dup 0 gt{/Count E HV Bn get Bl ge{neg}if}{pop}ie
/Dest Hr Bn get dup abs ST cvs cvn E 0 ge{(h)Hn ST cvs join cvx exec dup 1 get
E Nf{0 get E join}{pop}ie /Hn Hn 1 add D}{()}ie /Title E /OUT pdfmark}for
ZF /FN Fp D Ps 0 FS /WC Wf{( )}{}ie SW pop D
ET RC ZF
/Df f D
/Cb Db D /Ct [16#00 16#00 16#00] D /Cl [16#00 16#00 16#00] D /CL -1 D Ct Sc
/Ba f D /BO 0 D Bs
/UR (web99-20000509-00030.html) D
/Ti () D
/Au () D
/Df f D
NP RC ZF
()1 Sl()WB 0 Sn() 175 84 PR( SPECweb99 Result
===============================================================================
||
Hewlett-Packard Company : HP 9000 Model A500 || NC SPECweb99
Zeus Technology Ltd. : Zeus 3.3.6 ||
||
===============================================================================
SPEC has determined that this result was not in compilance with the
SPECweb99 run and reporting rules. Specifically, the result did not meet
the 3 month availability requirement in the SPECweb99 run rules due to a
change in availability of the HP 9000 Model A500. Results for the same
hardware and software configuration have been submitted to SPEC that
address the availability issue.
===============================================================================
PERFORMANCE
| Conforming Simultaneous
Iteration | Connections
---------------+----------------------------
1 | NC
2 | NC
3 | NC
---------------+----------------------------
Median | NC
)WR(
===============================================================================
Availability Dates
All Hardware Aug-2000
HTTP Software Apr-2000
Operating System Mar-2000
Supplemental System Apr-2000
Hardware
Vendor Hewlett-Packard Company
Model HP 9000 Model A500
Processor 440 MHz PA-8500
# Processors 1 core, 1 chip, 1 core/chip
Primary Cache 512KBI+1024KBD
Secondary Cache None
Other Cache None
Memory 8 GB
Disk Subsystem 2 A5574A \20118GB\202
Disk Controllers Internal LVD SCSI
Other Hardware None
Software
Operating System HP-UX 11.ACE
File System HFS
Other Software None
HTTP Software
)WR(
Vendor Zeus Technology Ltd.
HTTP Software Zeus 3.3.6
API ISAPI
Server Cache See Notes
Log Mode Common Log Format
Test Sponsor
Test Date May-2000
Tested By HP, Cupertino CA
SPEC License 3
Network
# of Controllers 1
Network Controllers HP A4926A PCI 1000Base-SX
# of Nets 1
Type of Nets 1000Base-SX
Network Speed 1 Gb/s
MSL \201sec\202 30 \201Non RFC1122\202
Time-Wait \201sec\202 60 \201Non RFC1122\202
MTU 1500
Clients
# of Clients 11
Model HP B180L
Processor PA-7300LC 180MHz
# of Processors 1
Memory 128MB)WR(
Network Controller HP PCI 100BT
Operating System HP-UX 11.ACE
Compiler HP C/ANSI C \201B3899BA\202
Benchmark Configuration
Requested Connections 1032
Fileset Size \201MB\202 3420.88
===============================================================================
Notes/Tuning information
Operating System Notes
HP-UX Parameters:
ninode 8000 \201in-core inodes\202
nfile 35000 \201in-core filedescriptors\202
maxfiles 35000 \201max descriptors per process\202
maxfiles_lim 35000 \201absolute max descriptors per process\202
nproc 500 \201absolute number of processes\202
tcphashsz 16384 \201hash table scaling factor for TCP connections\202
dbc_min_pct 50 \201use half of memory for buffer cache\202
dbc_max_pct 50 \201use half of memory for buffer cache\202
Network Transport Parameters \201ndd\202:
tcp_xmit_hiwater_def 1048576 \201bump highwater mark\202
tcp_conn_request_max 1024 \201bump connection limits\202
tcp_conn_strategy 1 \201allocate memory assuming reuse\202
Network Interface Parameters \201gbeutil\202:
recv_coal_ticks 10000 \201max of 0.1 seconds before inbound interrupt\202
send_coal_ticks 1000 \201max of 0.01 seconds before outbound interrupt\202
recv_max_bufs 12 \201max of 12 inbound buffers before interrupt\202)WR(
send_max_bufs 32 \201max of 32 outbound buffers before interrupt\202
HTTP Software Notes
Zeus Tuning Values:
cache_files 60000 \201cache up to 60,000 files\202
cache_max_bytes 0 \201do not limit total size of cache\202
cache_small_file 0 \201keep any file no matter how small\202
cache_large_file 1048576 \201keep any file less than 1MB\202
cache_stat_expire 864000 \201check for file updates daily\202
cache_flush_interval 864000 \201flush cached files daily\202
sendfile yes \201use the HP-UX sendfile system call\202
sendfile_reservefd 30001 \201keep lots of descriptors available for sendfile\202
sendfile_minsize 0 \201no file is too small for a sendfile\202
listen_queue_size 8192 \201allow more connections to queue\202
cbuff_size 1048576 \201use large buffer for cgi interface\202
timeout 7200 \201don't give up on a client easily\202
keepalive_max -1 \201no limit on number of keepalive connections\202
unique_bind yes \201dedicate one listener to each listed ip addr.\202
bind_any no \201don't bind the listen socket to IN_ADDR_ANY\202
Zeus Site Configuration:
modules!stats!enabled no \201don't bother to measure statistics\202
modules!nsapi!enabled no \201don't need any NSAPI support\202
modules!isapi!enabled yes \201we do rely on the ISAPI features\202
modules!fastcgi!enabled yes \201support the FastCGI interface\202
Zeus Installation Notes:
Set LargePage attribute on all Zeus binaries [chatr +pi 16M +pd 16M]
HTTP API Notes
Zeus ISAPI interface used for most dynamic content
FastCGI used as communication method to manage all the independant CGI processes)WR(
Software Notes
HP-UX System Patches:
PHNE_20125 ndd general patch
PHNE_20316 Cumulative STREAMS Patch
Network Notes
All Clients wired via 100BT to one HP ProCurve 1600
SUT wired to a 1000-SX module within the HP ProCurve 1600
Client Notes
Client's HP-UX Parameters:
ncallout 5000 \201increase number of potential pending items\202
max_thread_proc 800 \201allow more threads per process\202
===============================================================================
Test Run Details
Run Conforming Percent | Throughput Response ops/sec/ Kbits/
Num Connections Conform | ops/sec msec loadgen sec
1 NC NC | NC NC NC NC
2 NC NC | NC NC NC NC
=> 3 NC NC | NC NC NC NC)RP(
)WB NL
/TE t D NP TU PM 0 eq and{/Pn () D showpage}if end restore