From 1f3c62fd9257c76ff19bf33577fb392fe5436041 Mon Sep 17 00:00:00 2001 From: Oliver Schinagl Date: Tue, 25 Oct 2005 08:59:31 +0000 Subject: Initial Import --- ADD/Images/Addindividualinsurance.eps | 1532 ++++++++++++++ ADD/Images/Addindividualinsurance.png | Bin 0 -> 2601 bytes ADD/Images/Basiccalculationsviawebsite.eps | 2439 ++++++++++++++++++++++ ADD/Images/Basiccalculationsviawebsite.png | Bin 0 -> 6030 bytes ADD/Images/Convertproposal.eps | 1950 ++++++++++++++++++ ADD/Images/Convertproposal.png | Bin 0 -> 4489 bytes ADD/Images/Deletepayment.eps | 1532 ++++++++++++++ ADD/Images/Deletepayment.png | Bin 0 -> 2450 bytes ADD/Images/Deletepolicy.eps | 2447 +++++++++++++++++++++++ ADD/Images/Deletepolicy.png | Bin 0 -> 6132 bytes ADD/Images/Deleteproposal.eps | 2996 ++++++++++++++++++++++++++++ ADD/Images/Deleteproposal.png | Bin 0 -> 9907 bytes ADD/Images/EditClient.eps | 1434 +++++++++++++ ADD/Images/EditClient.png | Bin 0 -> 2183 bytes ADD/Images/Editclaim.eps | 1434 +++++++++++++ ADD/Images/Editclaim.png | Bin 0 -> 2189 bytes ADD/Images/Editindividualinsurance.eps | 1532 ++++++++++++++ ADD/Images/Editindividualinsurance.png | Bin 0 -> 2675 bytes ADD/Images/Editinsurancepackage.eps | 1532 ++++++++++++++ ADD/Images/Editinsurancepackage.png | Bin 0 -> 2710 bytes ADD/Images/Editpayment.eps | 1838 +++++++++++++++++ ADD/Images/Editpayment.png | Bin 0 -> 3577 bytes ADD/Images/Editpolicy.eps | 1532 ++++++++++++++ ADD/Images/Editpolicy.png | Bin 0 -> 2700 bytes ADD/Images/Editrisk.eps | 1434 +++++++++++++ ADD/Images/Editrisk.png | Bin 0 -> 2192 bytes ADD/Images/Edittypeofclient.eps | 1532 ++++++++++++++ ADD/Images/Edittypeofclient.png | Bin 0 -> 2501 bytes ADD/Images/Employeemanagement.eps | 2019 +++++++++++++++++++ ADD/Images/Employeemanagement.png | Bin 0 -> 4450 bytes ADD/Images/Generatereport.eps | 1434 +++++++++++++ ADD/Images/Generatereport.png | Bin 0 -> 2252 bytes ADD/Images/Internalcareertracking.eps | 2019 +++++++++++++++++++ ADD/Images/Internalcareertracking.png | Bin 0 -> 4528 bytes ADD/Images/ManageTimesheet.eps | 1840 +++++++++++++++++ ADD/Images/ManageTimesheet.png | Bin 0 -> 3524 bytes ADD/Images/QueryProposal.eps | 1460 ++++++++++++++ ADD/Images/QueryProposal.png | Bin 0 -> 2288 bytes ADD/Images/Queryclient.eps | 1434 +++++++++++++ ADD/Images/Queryclient.png | Bin 0 -> 2302 bytes ADD/Images/Queryinsurancepackage.eps | 1498 ++++++++++++++ ADD/Images/Queryinsurancepackage.png | Bin 0 -> 2705 bytes ADD/Images/Querypayment.eps | 1838 +++++++++++++++++ ADD/Images/Querypayment.png | Bin 0 -> 3716 bytes ADD/Images/Querypolicy.eps | 1434 +++++++++++++ ADD/Images/Querypolicy.png | Bin 0 -> 2438 bytes ADD/Images/Queryrisk.eps | 1434 +++++++++++++ ADD/Images/Queryrisk.png | Bin 0 -> 2221 bytes ADD/Images/Removeclaim.eps | 1532 ++++++++++++++ ADD/Images/Removeclaim.png | Bin 0 -> 2588 bytes ADD/Images/Removecrosssellopportunity.eps | 1491 ++++++++++++++ ADD/Images/Removecrosssellopportunity.png | Bin 0 -> 2505 bytes ADD/Images/Removerepresentative.eps | 1532 ++++++++++++++ ADD/Images/Removerepresentative.png | Bin 0 -> 2522 bytes ADD/Images/Removerisk.eps | 1558 +++++++++++++++ ADD/Images/Removerisk.png | Bin 0 -> 2357 bytes ADD/Images/Removeupsellopportunity.eps | 1491 ++++++++++++++ ADD/Images/Removeupsellopportunity.png | Bin 0 -> 2465 bytes ADD/Images/Searchcallerdetails.eps | 1434 +++++++++++++ ADD/Images/Searchcallerdetails.png | Bin 0 -> 2239 bytes 60 files changed, 50612 insertions(+) create mode 100644 ADD/Images/Addindividualinsurance.eps create mode 100644 ADD/Images/Addindividualinsurance.png create mode 100644 ADD/Images/Basiccalculationsviawebsite.eps create mode 100644 ADD/Images/Basiccalculationsviawebsite.png create mode 100644 ADD/Images/Convertproposal.eps create mode 100644 ADD/Images/Convertproposal.png create mode 100644 ADD/Images/Deletepayment.eps create mode 100644 ADD/Images/Deletepayment.png create mode 100644 ADD/Images/Deletepolicy.eps create mode 100644 ADD/Images/Deletepolicy.png create mode 100644 ADD/Images/Deleteproposal.eps create mode 100644 ADD/Images/Deleteproposal.png create mode 100644 ADD/Images/EditClient.eps create mode 100644 ADD/Images/EditClient.png create mode 100644 ADD/Images/Editclaim.eps create mode 100644 ADD/Images/Editclaim.png create mode 100644 ADD/Images/Editindividualinsurance.eps create mode 100644 ADD/Images/Editindividualinsurance.png create mode 100644 ADD/Images/Editinsurancepackage.eps create mode 100644 ADD/Images/Editinsurancepackage.png create mode 100644 ADD/Images/Editpayment.eps create mode 100644 ADD/Images/Editpayment.png create mode 100644 ADD/Images/Editpolicy.eps create mode 100644 ADD/Images/Editpolicy.png create mode 100644 ADD/Images/Editrisk.eps create mode 100644 ADD/Images/Editrisk.png create mode 100644 ADD/Images/Edittypeofclient.eps create mode 100644 ADD/Images/Edittypeofclient.png create mode 100644 ADD/Images/Employeemanagement.eps create mode 100644 ADD/Images/Employeemanagement.png create mode 100644 ADD/Images/Generatereport.eps create mode 100644 ADD/Images/Generatereport.png create mode 100644 ADD/Images/Internalcareertracking.eps create mode 100644 ADD/Images/Internalcareertracking.png create mode 100644 ADD/Images/ManageTimesheet.eps create mode 100644 ADD/Images/ManageTimesheet.png create mode 100644 ADD/Images/QueryProposal.eps create mode 100644 ADD/Images/QueryProposal.png create mode 100644 ADD/Images/Queryclient.eps create mode 100644 ADD/Images/Queryclient.png create mode 100644 ADD/Images/Queryinsurancepackage.eps create mode 100644 ADD/Images/Queryinsurancepackage.png create mode 100644 ADD/Images/Querypayment.eps create mode 100644 ADD/Images/Querypayment.png create mode 100644 ADD/Images/Querypolicy.eps create mode 100644 ADD/Images/Querypolicy.png create mode 100644 ADD/Images/Queryrisk.eps create mode 100644 ADD/Images/Queryrisk.png create mode 100644 ADD/Images/Removeclaim.eps create mode 100644 ADD/Images/Removeclaim.png create mode 100644 ADD/Images/Removecrosssellopportunity.eps create mode 100644 ADD/Images/Removecrosssellopportunity.png create mode 100644 ADD/Images/Removerepresentative.eps create mode 100644 ADD/Images/Removerepresentative.png create mode 100644 ADD/Images/Removerisk.eps create mode 100644 ADD/Images/Removerisk.png create mode 100644 ADD/Images/Removeupsellopportunity.eps create mode 100644 ADD/Images/Removeupsellopportunity.png create mode 100644 ADD/Images/Searchcallerdetails.eps create mode 100644 ADD/Images/Searchcallerdetails.png diff --git a/ADD/Images/Addindividualinsurance.eps b/ADD/Images/Addindividualinsurance.eps new file mode 100644 index 0000000..4f94849 --- /dev/null +++ b/ADD/Images/Addindividualinsurance.eps @@ -0,0 +1,1532 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 131 20 464 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:53:31 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +503 208 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 503.0 208.0 rf +0.0 0.0 0.0 RG +q +0 0 503 208 rc +q +1.0 1.0 1.0 RG +0.0 0.0 503.0 208.0 rf +0.0 0.0 503.0 208.0 rc +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +70.0 -39.0 m +573.0 -39.0 l +573.0 169.0 l +70.0 169.0 l +70.0 -39.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +80.0 -29.0 m +563.0 -29.0 l +563.0 137.0 l +80.0 137.0 l +80.0 -29.0 l +h +S +[ 1.0 0.0 0.0 1.0 390.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +71.6245 0.5 m +71.6245 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +71.6245 0.5 m +71.6245 107.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +141.749 0.5 l +141.749 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +141.749 0.5 l +141.749 26.5 l +0.5 26.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +newpath +0.0 13.5 m +48.307617 13.5 l +S +[ 1.0 0.0 0.0 1.0 326.0 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 48.3076 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 326.0 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 51.3638 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000i\000n\000g\000l\000e\000I\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +newpath +0.0 13.5 m +78.885253 13.5 l +S +[ 1.0 0.0 0.0 1.0 377.3638 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 326.0 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 324.0 63.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 320.0 59.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 320.0 59.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 110.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +56.94265 0.5 m +56.94265 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +56.94265 0.5 m +56.94265 107.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +112.3853 0.5 l +112.3853 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +112.3853 0.5 l +112.3853 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 48.9146 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 51.9707 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 97.9707 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 63.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 59.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 59.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 -29.0 ] concat +1.0 1.0 1.0 RG +newpath +132.7437 0.5 m +132.7437 10.5 l +124.743699 18.5 l +0.5 18.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +132.7437 0.5 m +132.7437 10.5 l +124.743699 18.5 l +0.5 18.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000A\000d\000d\000 \000i\000n\000d\000i\000v\000i\000d\000u\000a\000l\000 \000i\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 201.0 67.0 ] concat +0 J +1.0 M +newpath +-34.557349 0.0 m +5.442650 0.0 l +5.442650 20.0 l +-34.557349 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -34.55735 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 131.0 106.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.4427 2.5 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 137.4427 108.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 137.4427 108.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 143.555 108.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 143.555 108.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 143.555 108.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 143.555 108.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 137.4427 108.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 131.0 106.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 394.0 107.0 ] concat +0 J +1.0 M +newpath +-227.557349 0.0 m +-4.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -4.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 324.0 146.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -161.9405 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 162.0595 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 162.0595 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000i\000n\000g\000l\000e\000I\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +[ 1.0 0.0 0.0 1.0 168.1718 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 78.8853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 168.1718 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 82.5483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 168.1718 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 168.1718 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 162.0595 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 324.0 146.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 54.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 563.0 54.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 321.5 -29.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 321.5 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 -29.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 563.0 -29.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 563.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 117.092773 137.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -70.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 208.0 l +503.0 208.0 l +503.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Addindividualinsurance.png b/ADD/Images/Addindividualinsurance.png new file mode 100644 index 0000000..ee44628 Binary files /dev/null and b/ADD/Images/Addindividualinsurance.png differ diff --git a/ADD/Images/Basiccalculationsviawebsite.eps b/ADD/Images/Basiccalculationsviawebsite.eps new file mode 100644 index 0000000..8fa5fc3 --- /dev/null +++ b/ADD/Images/Basiccalculationsviawebsite.eps @@ -0,0 +1,2439 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 111 20 484 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:39:40 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +830 386 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 830.0 386.0 rf +0.0 0.0 0.0 RG +q +0 0 830 386 rc +q +1.0 1.0 1.0 RG +0.0 0.0 830.0 386.0 rf +0.0 0.0 830.0 386.0 rc +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +240.0 -40.0 m +1070.0 -40.0 l +1070.0 346.0 l +240.0 346.0 l +240.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +250.0 -30.0 m +1060.0 -30.0 l +1060.0 314.0 l +250.0 314.0 l +250.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 930.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 284.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 284.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 17.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +65.2754 0.5 l +65.2754 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +65.2754 0.5 l +65.2754 26.5 l +0.5 26.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k\000N) show +Q +newpath +0.0 13.5 m +29.331542 13.5 l +S +[ 1.0 0.0 0.0 1.0 713.1123 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 29.3315 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 713.1123 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 32.3877 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k) show +Q +newpath +0.0 13.5 m +21.387695 13.5 l +S +[ 1.0 0.0 0.0 1.0 745.5 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 713.1123 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 711.1123 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 707.1123 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 690.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 860.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 284.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 284.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 18.0254 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +63.449199 0.5 l +63.449199 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +63.449199 0.5 l +63.449199 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k\0001) show +Q +newpath +0.0 13.5 m +27.505371 13.5 l +S +[ 1.0 0.0 0.0 1.0 644.0254 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 27.5054 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 644.0254 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 30.5615 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k) show +Q +newpath +0.0 13.5 m +21.387695 13.5 l +S +[ 1.0 0.0 0.0 1.0 674.5869 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 644.0254 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 642.0254 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 638.0254 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 620.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 440.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +55.17675 0.5 m +55.17675 284.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +55.17675 0.5 m +55.17675 284.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +108.8535 0.5 l +108.8535 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +108.8535 0.5 l +108.8535 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000U\000s\000e\000r) show +Q +newpath +0.0 13.5 m +23.224609 13.5 l +S +[ 1.0 0.0 0.0 1.0 206.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 25.3359 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 206.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 28.6699 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000W\000e\000b\000s\000i\000t\000e\000U\000s\000e\000r) show +Q +newpath +0.0 13.5 m +62.959960 13.5 l +S +[ 1.0 0.0 0.0 1.0 234.6699 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 206.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 204.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 630.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +81.87795 0.5 m +81.87795 284.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +81.87795 0.5 m +81.87795 284.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +162.2559 0.5 l +162.2559 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +162.2559 0.5 l +162.2559 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +43.414550 13.5 l +S +[ 1.0 0.0 0.0 1.0 396.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 396.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +91.722167 13.5 l +S +[ 1.0 0.0 0.0 1.0 446.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 396.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 394.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 390.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 390.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 280.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 284.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 284.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 5.7981 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +87.9038 0.5 l +87.9038 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +87.9038 0.5 l +87.9038 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000y\000s\000t\000e\000m) show +Q +newpath +0.0 13.5 m +36.673828 13.5 l +S +[ 1.0 0.0 0.0 1.0 51.7981 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 36.6738 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 51.7981 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 39.73 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000y\000s\000t\000e\000m) show +Q +newpath +0.0 13.5 m +36.673828 13.5 l +S +[ 1.0 0.0 0.0 1.0 91.5281 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 51.7981 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 49.7981 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 45.7981 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 250.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +171.5742 0.5 m +171.5742 11.5 l +163.5742 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +171.5742 0.5 m +171.5742 11.5 l +163.5742 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000B\000a\000s\000i\000c\000 \000c\000a\000l\000c\000u\000l\000a\000t\000i\000o\000n\000s\000 \000v\000i\000a\000 \000w\000e\000b\000s\000i\000t\000e) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 540.0 184.0 ] concat +0 J +1.0 M +newpath +167.2088 0.0 m +207.2088 0.0 l +207.2088 20.0 l +167.2088 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 167.2088 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 300.0 224.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 206.0965 2.5 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 506.0965 226.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 506.0965 226.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000a\000l\000c\000u\000l\000a\000t\000e\000P\000r\000e\000m\000i\000u\000m\000A\000m\000o\000u\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 512.2088 226.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 127.7729 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 512.2088 226.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 131.436 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 512.2088 226.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 135.0991 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 512.2088 226.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 138.1553 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 650.3641 226.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 512.2088 226.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 512.2088 226.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 506.0965 226.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 300.0 224.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 340.0 103.0 ] concat +0 J +1.0 M +newpath +150.6204 0.0 m +-10.0 0.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -10.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 100.0 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 18.6537 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 118.6537 127.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 118.6537 127.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000L\000o\000g\000i\000n\000W\000e\000b\000s\000i\000t\000e\000U\000s\000e\000r) show +Q +[ 1.0 0.0 0.0 1.0 124.766 127.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 89.8745 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 124.766 127.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 93.5376 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 124.766 127.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 124.766 127.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 118.6537 127.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 100.0 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 705.0 123.0 ] concat +0 J +1.0 M +newpath +-210.3233 0.0 m +-75.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -75.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 465.0 163.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -199.7979 -17.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 265.2021 146.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 265.2021 146.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +[ 1.0 0.0 0.0 1.0 271.8701 146.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 91.7222 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 271.8701 146.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 271.8701 146.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 271.8701 146.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 102.1045 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 373.9746 146.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 271.8701 146.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 271.8701 146.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 265.2021 146.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 465.0 163.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 904.0 143.0 ] concat +0 J +1.0 M +newpath +-196.7912 0.0 m +-25.9746 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -25.9746 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 664.0 183.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -195.7387 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 468.2613 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 468.2613 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 474.3736 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 21.3877 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 474.3736 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 25.0508 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 474.3736 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 28.7139 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 474.3736 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.77 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 506.1436 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 474.3736 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 474.3736 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 468.2613 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 664.0 183.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1040.0 164.0 ] concat +0 J +1.0 M +newpath +-332.7912 0.0 m +-92.8877 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -92.8877 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 800.0 204.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -331.6041 -17.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 468.3959 187.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 468.3959 187.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 474.5082 187.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 21.3877 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 474.5082 187.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 25.0508 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 474.5082 187.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 28.7139 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 474.5082 187.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.77 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 506.2782 187.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 474.5082 187.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 474.5082 187.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 468.3959 187.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 800.0 204.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 907.0 224.0 ] concat +0 J +1.0 M +newpath +-199.7912 0.0 m +3.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 3.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 667.0 264.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -196.7632 -17.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 470.2368 247.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 470.2368 247.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 476.3491 247.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.1846 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 476.3491 247.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.8477 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 476.3491 247.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 476.3491 247.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 470.2368 247.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 667.0 264.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 975.0 244.0 ] concat +0 J +1.0 M +newpath +-267.7912 0.0 m +5.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 5.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 735.0 284.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -263.7632 -19.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 471.2368 265.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 471.2368 265.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 477.3491 265.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.1846 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 477.3491 265.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.8477 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 477.3491 265.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 477.3491 265.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 471.2368 265.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 735.0 284.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 740.0 264.0 ] concat +0 J +1.0 M +newpath +-32.7912 0.0 m +7.2088 0.0 l +7.2088 20.0 l +-32.7912 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -32.7912 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 500.0 304.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.0965 2.5 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 506.0965 306.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 506.0965 306.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +[ 1.0 0.0 0.0 1.0 512.2088 306.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 123.519 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 512.2088 306.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 127.1821 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 512.2088 306.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 512.2088 306.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 506.0965 306.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 500.0 304.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 250.0 142.0 ] concat +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1060.0 142.0 ] concat +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 655.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 655.0 314.0 ] concat +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 250.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1060.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 250.0 314.0 ] concat +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1060.0 314.0 ] concat +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 450.592773 314.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -240.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 386.0 l +830.0 386.0 l +830.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Basiccalculationsviawebsite.png b/ADD/Images/Basiccalculationsviawebsite.png new file mode 100644 index 0000000..021936c Binary files /dev/null and b/ADD/Images/Basiccalculationsviawebsite.png differ diff --git a/ADD/Images/Convertproposal.eps b/ADD/Images/Convertproposal.eps new file mode 100644 index 0000000..bd780f1 --- /dev/null +++ b/ADD/Images/Convertproposal.eps @@ -0,0 +1,1950 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 146 20 449 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:40:54 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +857 322 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 857.0 322.0 rf +0.0 0.0 0.0 RG +q +0 0 857 322 rc +q +1.0 1.0 1.0 RG +0.0 0.0 857.0 322.0 rf +0.0 0.0 857.0 322.0 rc +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +60.0 -40.0 m +917.0 -40.0 l +917.0 282.0 l +60.0 282.0 l +60.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +70.0 -30.0 m +907.0 -30.0 l +907.0 250.0 l +70.0 250.0 l +70.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 720.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +78.5381 0.5 m +78.5381 200.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +78.5381 0.5 m +78.5381 200.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +155.5762 0.5 l +155.5762 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +155.5762 0.5 l +155.5762 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t\000 \000 \000i\000n\000f\000o) show +Q +newpath +0.0 13.5 m +67.256835 13.5 l +S +[ 1.0 0.0 0.0 1.0 666.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 73.3711 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 666.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 76.7051 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t\000I\000n\000f\000o) show +Q +newpath +0.0 13.5 m +61.756835 13.5 l +S +[ 1.0 0.0 0.0 1.0 742.7051 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 666.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 664.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 660.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 660.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 550.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +66.52635 0.5 m +66.52635 200.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +66.52635 0.5 m +66.52635 200.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +29.342285 13.5 l +S +[ 1.0 0.0 0.0 1.0 496.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 32.0098 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 496.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 35.3438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +77.649902 13.5 l +S +[ 1.0 0.0 0.0 1.0 531.3438 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 496.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 494.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 490.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 490.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 350.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +81.87795 0.5 m +81.87795 200.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +81.87795 0.5 m +81.87795 200.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +162.2559 0.5 l +162.2559 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +162.2559 0.5 l +162.2559 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +43.414550 13.5 l +S +[ 1.0 0.0 0.0 1.0 296.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 296.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +91.722167 13.5 l +S +[ 1.0 0.0 0.0 1.0 346.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 296.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 294.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 290.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 290.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 100.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 200.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 200.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +104.8828 0.5 m +104.8828 11.5 l +96.8828 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +104.8828 0.5 m +104.8828 11.5 l +96.8828 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000o\000n\000v\000e\000r\000t\000 \000p\000r\000o\000p\000o\000s\000a\000l) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 230.0 68.0 ] concat +0 J +1.0 M +newpath +-71.1951 0.0 m +-31.1951 0.0 l +-31.1951 20.0 l +-71.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -71.1951 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 170.0 108.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -27.9717 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.6963 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0283 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 170.0 108.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 387.0 142.0 ] concat +0 J +1.0 M +newpath +-228.195 0.0 m +40.2088 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 40.2088 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 327.0 182.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -143.2973 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 183.7027 166.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 183.7027 166.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000o\000n\000v\000e\000r\000t\000T\000o\000P\000o\000l\000i\000c\000y) show +Q +[ 1.0 0.0 0.0 1.0 189.815 166.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.6953 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 189.815 166.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 84.3584 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 189.815 166.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 189.815 166.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 183.7027 166.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 327.0 182.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 537.0 162.0 ] concat +0 J +1.0 M +newpath +-109.7912 0.0 m +13.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 13.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 477.0 202.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -99.274 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 377.726 186.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 377.726 186.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +[ 1.0 0.0 0.0 1.0 383.8383 186.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 77.6499 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 383.8383 186.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 81.313 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 383.8383 186.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 84.9761 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 383.8383 186.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 88.0322 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 471.8705 186.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 383.8383 186.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 383.8383 186.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 377.726 186.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 477.0 202.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 680.0 190.0 ] concat +0 J +1.0 M +newpath +-67.5031 0.0 m +40.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 40.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 620.0 230.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -56.3637 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 563.6363 214.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 563.6363 214.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t\000I\000n\000f\000o) show +Q +[ 1.0 0.0 0.0 1.0 569.7486 214.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 61.7568 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 569.7486 214.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 65.4199 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 569.7486 214.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 69.083 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 569.7486 214.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 72.1392 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 641.8878 214.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 569.7486 214.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 569.7486 214.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 563.6363 214.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 620.0 230.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 110.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 907.0 110.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 488.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 488.5 250.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 907.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 250.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 907.0 250.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 284.092773 250.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 322.0 l +857.0 322.0 l +857.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Convertproposal.png b/ADD/Images/Convertproposal.png new file mode 100644 index 0000000..9c43f35 Binary files /dev/null and b/ADD/Images/Convertproposal.png differ diff --git a/ADD/Images/Deletepayment.eps b/ADD/Images/Deletepayment.eps new file mode 100644 index 0000000..f47d867 --- /dev/null +++ b/ADD/Images/Deletepayment.eps @@ -0,0 +1,1532 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 123 20 472 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:41:51 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +481 209 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 481.0 209.0 rf +0.0 0.0 0.0 RG +q +0 0 481 209 rc +q +1.0 1.0 1.0 RG +0.0 0.0 481.0 209.0 rf +0.0 0.0 481.0 209.0 rc +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +70.0 -40.0 m +551.0 -40.0 l +551.0 169.0 l +70.0 169.0 l +70.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +80.0 -30.0 m +541.0 -30.0 l +541.0 137.0 l +80.0 137.0 l +80.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 400.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +55.52245 0.5 m +55.52245 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +55.52245 0.5 m +55.52245 107.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +109.5449 0.5 l +109.5449 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +109.5449 0.5 l +109.5449 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t) show +Q +newpath +0.0 13.5 m +43.409179 13.5 l +S +[ 1.0 0.0 0.0 1.0 336.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.3555 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 336.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.6895 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t) show +Q +newpath +0.0 13.5 m +43.409179 13.5 l +S +[ 1.0 0.0 0.0 1.0 386.6895 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 336.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 334.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 330.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 330.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 110.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 107.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +97.5469 0.5 m +97.5469 11.5 l +89.5469 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +97.5469 0.5 m +97.5469 11.5 l +89.5469 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000 \000p\000a\000y\000m\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 203.0 67.0 ] concat +0 J +1.0 M +newpath +-34.1951 0.0 m +5.8049 0.0 l +5.8049 20.0 l +-34.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -34.1951 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 133.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 9.0283 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 133.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 401.0 107.0 ] concat +0 J +1.0 M +newpath +-232.195 0.0 m +52.0493 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 52.0493 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 331.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -136.6323 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 194.3677 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 194.3677 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000P\000a\000y\000m\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 200.48 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 75.2061 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 200.48 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 78.8691 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 200.48 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.48 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 194.3677 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 331.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 541.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 310.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 310.5 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 541.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 541.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 106.092773 137.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 209.0 l +481.0 209.0 l +481.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Deletepayment.png b/ADD/Images/Deletepayment.png new file mode 100644 index 0000000..f13c74a Binary files /dev/null and b/ADD/Images/Deletepayment.png differ diff --git a/ADD/Images/Deletepolicy.eps b/ADD/Images/Deletepolicy.eps new file mode 100644 index 0000000..3676912 --- /dev/null +++ b/ADD/Images/Deletepolicy.eps @@ -0,0 +1,2447 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 132 20 463 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:42:04 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +881 362 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 881.0 362.0 rf +0.0 0.0 0.0 RG +q +0 0 881 362 rc +q +1.0 1.0 1.0 RG +0.0 0.0 881.0 362.0 rf +0.0 0.0 881.0 362.0 rc +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +40.0 -40.0 m +921.0 -40.0 l +921.0 322.0 l +40.0 322.0 l +40.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +50.0 -30.0 m +911.0 -30.0 l +911.0 290.0 l +50.0 290.0 l +50.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 730.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +75.5381 0.5 m +75.5381 260.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +75.5381 0.5 m +75.5381 260.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +149.5762 0.5 l +149.5762 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +149.5762 0.5 l +149.5762 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t\000I\000n\000f\000o) show +Q +newpath +0.0 13.5 m +61.756835 13.5 l +S +[ 1.0 0.0 0.0 1.0 696.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 67.3711 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 696.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.7051 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t\000I\000n\000f\000o) show +Q +newpath +0.0 13.5 m +61.756835 13.5 l +S +[ 1.0 0.0 0.0 1.0 766.7051 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 696.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 694.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 690.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 690.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 630.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 260.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 260.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 10.3877 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +78.7246 0.5 l +78.7246 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +78.7246 0.5 l +78.7246 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000a\000i\000m\000N) show +Q +newpath +0.0 13.5 m +36.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 606.3877 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 36.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 606.3877 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 39.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000a\000i\000m) show +Q +newpath +0.0 13.5 m +28.112304 13.5 l +S +[ 1.0 0.0 0.0 1.0 645.5 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 606.3877 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 604.3877 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 600.3877 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 590.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 540.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 260.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 260.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 11.3008 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +76.8984 0.5 l +76.8984 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +76.8984 0.5 l +76.8984 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000a\000i\000m\0001) show +Q +newpath +0.0 13.5 m +34.229980 13.5 l +S +[ 1.0 0.0 0.0 1.0 517.3008 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 34.23 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 517.3008 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 37.2861 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000a\000i\000m) show +Q +newpath +0.0 13.5 m +28.112304 13.5 l +S +[ 1.0 0.0 0.0 1.0 554.5869 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 517.3008 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 515.3008 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 511.3008 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 500.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 450.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 260.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 260.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 12.2935 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +74.9131 0.5 l +74.9131 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +74.9131 0.5 l +74.9131 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000N) show +Q +newpath +0.0 13.5 m +15.280761 13.5 l +S +[ 1.0 0.0 0.0 1.0 428.2935 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 16.6699 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 428.2935 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 20.0039 0.5 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t) show +Q +newpath +0.0 13.5 m +43.409179 13.5 l +S +[ 1.0 0.0 0.0 1.0 448.2974 66.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 428.2935 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 426.2935 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 422.2935 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 410.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 360.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 260.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 260.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 13.2896 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +72.9209 0.5 l +72.9209 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +72.9209 0.5 l +72.9209 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\0001) show +Q +newpath +0.0 13.5 m +13.454589 13.5 l +S +[ 1.0 0.0 0.0 1.0 339.2896 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 14.6777 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 339.2896 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 18.0117 0.5 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t) show +Q +newpath +0.0 13.5 m +43.409179 13.5 l +S +[ 1.0 0.0 0.0 1.0 357.3013 66.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 339.2896 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 337.2896 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 333.2896 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 320.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 240.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +66.52635 0.5 m +66.52635 260.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +66.52635 0.5 m +66.52635 260.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +29.342285 13.5 l +S +[ 1.0 0.0 0.0 1.0 206.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 32.0098 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 206.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 35.3438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +77.649902 13.5 l +S +[ 1.0 0.0 0.0 1.0 241.3438 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 206.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 204.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 260.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 260.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +82.2012 0.5 m +82.2012 11.5 l +74.2012 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +82.2012 0.5 m +82.2012 11.5 l +74.2012 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000 \000p\000o\000l\000i\000c\000y) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 242.0 158.0 ] concat +0 J +1.0 M +newpath +-103.1951 0.0 m +60.4969 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 60.4969 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 202.0 198.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -84.7092 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 117.2908 182.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 117.2908 182.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +[ 1.0 0.0 0.0 1.0 123.4031 182.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 109.4468 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 123.4031 182.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 113.1099 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 123.4031 182.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 123.4031 182.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 117.2908 182.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 202.0 198.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 166.0 72.0 ] concat +0 J +1.0 M +newpath +-27.1951 0.0 m +12.8049 0.0 l +12.8049 20.0 l +-27.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -27.1951 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 126.0 112.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 16.0283 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 114.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 114.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 114.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 114.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 114.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.6963 114.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0283 114.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 126.0 112.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 388.0 179.0 ] concat +0 J +1.0 M +newpath +-85.5031 0.0 m +22.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 22.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 348.0 219.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -76.8102 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 271.1898 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 271.1898 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000P\000a\000y\000m\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 277.3021 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 75.2061 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 277.3021 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 78.8691 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 277.3021 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 277.3021 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 271.1898 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 348.0 219.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 510.0 199.0 ] concat +0 J +1.0 M +newpath +-207.5031 0.0 m +-10.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -10.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 470.0 239.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -198.8102 -18.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 271.1898 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 271.1898 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000P\000a\000y\000m\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 277.3021 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 75.2061 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 277.3021 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 78.8691 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 277.3021 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 277.3021 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 271.1898 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 470.0 239.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 560.0 219.0 ] concat +0 J +1.0 M +newpath +-257.5031 0.0 m +30.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 30.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 520.0 259.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -250.3004 -17.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 269.6996 242.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 269.6996 242.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000C\000l\000a\000i\000m) show +Q +[ 1.0 0.0 0.0 1.0 275.8119 242.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 59.9092 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 275.8119 242.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 63.5723 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 275.8119 242.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 275.8119 242.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 269.6996 242.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 520.0 259.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 684.0 240.0 ] concat +0 J +1.0 M +newpath +-381.5031 0.0 m +-4.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -4.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 644.0 280.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -375.9299 -18.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 268.0701 262.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 268.0701 262.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000C\000l\000a\000i\000m) show +Q +[ 1.0 0.0 0.0 1.0 274.1824 262.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 59.9092 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 274.1824 262.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 63.5723 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 274.1824 262.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 274.1824 262.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 268.0701 262.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 644.0 280.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 747.5237 260.0 ] concat +0 J +1.0 M +newpath +-445.0268 0.0 m +57.5144 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 57.5144 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 707.5237 300.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -438.8653 -18.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 268.6584 282.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 268.6584 282.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000P\000a\000y\000m\000e\000n\000t\000I\000n\000f\000o) show +Q +[ 1.0 0.0 0.0 1.0 274.7707 282.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 93.5537 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 274.7707 282.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 97.2168 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 274.7707 282.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 274.7707 282.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 268.6584 282.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 707.5237 300.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 130.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 911.0 130.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 480.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 480.5 290.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 911.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 290.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 911.0 290.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 276.092773 290.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 362.0 l +881.0 362.0 l +881.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Deletepolicy.png b/ADD/Images/Deletepolicy.png new file mode 100644 index 0000000..c06aa68 Binary files /dev/null and b/ADD/Images/Deletepolicy.png differ diff --git a/ADD/Images/Deleteproposal.eps b/ADD/Images/Deleteproposal.eps new file mode 100644 index 0000000..d3a8927 --- /dev/null +++ b/ADD/Images/Deleteproposal.eps @@ -0,0 +1,2996 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 145 20 450 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:42:16 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +1290 489 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 1290.0 489.0 rf +0.0 0.0 0.0 RG +q +0 0 1290 489 rc +q +1.0 1.0 1.0 RG +0.0 0.0 1290.0 489.0 rf +0.0 0.0 1290.0 489.0 rc +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +180.0 -40.0 m +1470.0 -40.0 l +1470.0 449.0 l +180.0 449.0 l +180.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +190.0 -30.0 m +1460.0 -30.0 l +1460.0 417.0 l +190.0 417.0 l +190.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 1330.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 387.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 387.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 10.6912 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +78.1177 0.5 l +78.1177 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +78.1177 0.5 l +78.1177 26.5 l +0.5 26.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000a\000i\000m\000K) show +Q +newpath +0.0 13.5 m +35.449218 13.5 l +S +[ 1.0 0.0 0.0 1.0 1166.6912 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 35.4492 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 1166.6912 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 38.5054 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000a\000i\000m) show +Q +newpath +0.0 13.5 m +28.112304 13.5 l +S +[ 1.0 0.0 0.0 1.0 1205.1966 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1166.6912 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1164.6912 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1160.6912 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1150.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1240.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 387.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 387.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 11.3008 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +76.8984 0.5 l +76.8984 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +76.8984 0.5 l +76.8984 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000a\000i\000m\0001) show +Q +newpath +0.0 13.5 m +34.229980 13.5 l +S +[ 1.0 0.0 0.0 1.0 1077.3008 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 34.23 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 1077.3008 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 37.2861 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000a\000i\000m) show +Q +newpath +0.0 13.5 m +28.112304 13.5 l +S +[ 1.0 0.0 0.0 1.0 1114.5869 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1077.3008 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1075.3008 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1071.3008 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1060.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1130.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +60.5205 0.5 m +60.5205 387.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +60.5205 0.5 m +60.5205 387.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +119.541 0.5 l +119.541 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +119.541 0.5 l +119.541 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t\000M) show +Q +newpath +0.0 13.5 m +52.572265 13.5 l +S +[ 1.0 0.0 0.0 1.0 956.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 57.3516 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 956.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.6855 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t) show +Q +newpath +0.0 13.5 m +43.409179 13.5 l +S +[ 1.0 0.0 0.0 1.0 1016.6855 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 956.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 954.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 950.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 950.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1010.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +58.8594 0.5 m +58.8594 387.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +58.8594 0.5 m +58.8594 387.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +116.2188 0.5 l +116.2188 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +116.2188 0.5 l +116.2188 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t\0001) show +Q +newpath +0.0 13.5 m +49.526855 13.5 l +S +[ 1.0 0.0 0.0 1.0 836.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 54.0293 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 836.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 57.3633 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t) show +Q +newpath +0.0 13.5 m +43.409179 13.5 l +S +[ 1.0 0.0 0.0 1.0 893.3633 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 836.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 834.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 830.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 830.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 860.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +75.5381 0.5 m +75.5381 387.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +75.5381 0.5 m +75.5381 387.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +149.5762 0.5 l +149.5762 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +149.5762 0.5 l +149.5762 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t\000I\000n\000f\000o) show +Q +newpath +0.0 13.5 m +61.756835 13.5 l +S +[ 1.0 0.0 0.0 1.0 686.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 67.3711 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 686.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.7051 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t\000I\000n\000f\000o) show +Q +newpath +0.0 13.5 m +61.756835 13.5 l +S +[ 1.0 0.0 0.0 1.0 756.7051 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 686.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 684.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 680.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 680.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 600.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 387.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 387.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 17.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +65.2754 0.5 l +65.2754 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +65.2754 0.5 l +65.2754 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k\000N) show +Q +newpath +0.0 13.5 m +29.331542 13.5 l +S +[ 1.0 0.0 0.0 1.0 443.1123 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 29.3315 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 443.1123 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 32.3877 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k) show +Q +newpath +0.0 13.5 m +21.387695 13.5 l +S +[ 1.0 0.0 0.0 1.0 475.5 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 443.1123 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 441.1123 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 437.1123 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 420.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 530.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 387.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 387.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 18.0254 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +63.449199 0.5 l +63.449199 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +63.449199 0.5 l +63.449199 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k\0001) show +Q +newpath +0.0 13.5 m +27.505371 13.5 l +S +[ 1.0 0.0 0.0 1.0 374.0254 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 27.5054 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 374.0254 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 30.5615 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k) show +Q +newpath +0.0 13.5 m +21.387695 13.5 l +S +[ 1.0 0.0 0.0 1.0 404.5869 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 374.0254 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 372.0254 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 368.0254 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 350.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 720.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +66.52635 0.5 m +66.52635 387.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +66.52635 0.5 m +66.52635 387.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +29.342285 13.5 l +S +[ 1.0 0.0 0.0 1.0 546.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 32.0098 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 546.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 35.3438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +77.649902 13.5 l +S +[ 1.0 0.0 0.0 1.0 581.3438 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 546.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 544.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 540.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 540.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 370.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +81.87795 0.5 m +81.87795 387.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +81.87795 0.5 m +81.87795 387.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +162.2559 0.5 l +162.2559 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +162.2559 0.5 l +162.2559 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +43.414550 13.5 l +S +[ 1.0 0.0 0.0 1.0 196.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 196.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +91.722167 13.5 l +S +[ 1.0 0.0 0.0 1.0 246.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 196.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 194.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 190.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 190.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 220.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 387.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 387.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 190.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +97.5527 0.5 m +97.5527 11.5 l +89.5527 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +97.5527 0.5 m +97.5527 11.5 l +89.5527 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000 \000p\000r\000o\000p\000o\000s\000a\000l) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 184.0 187.0 ] concat +0 J +1.0 M +newpath +94.805 0.0 m +134.805 0.0 l +134.805 20.0 l +94.805 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 94.805 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 4.0 227.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 138.0283 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 229.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 229.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 229.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 229.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 229.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.6963 229.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0283 229.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 4.0 227.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 366.0 227.0 ] concat +0 J +1.0 M +newpath +-87.195 0.0 m +81.2088 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 81.2088 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 186.0 267.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -73.7092 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 112.2908 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 112.2908 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +[ 1.0 0.0 0.0 1.0 118.4031 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 123.519 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 118.4031 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 127.1821 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 118.4031 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 118.4031 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 112.2908 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 186.0 267.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 628.0 247.0 ] concat +0 J +1.0 M +newpath +-180.7912 0.0 m +-48.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -48.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 448.0 287.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -172.7632 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 275.2368 271.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 275.2368 271.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 281.3491 271.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.1846 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 281.3491 271.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.8477 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 281.3491 271.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 281.3491 271.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 275.2368 271.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 448.0 287.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 645.5237 267.0 ] concat +0 J +1.0 M +newpath +-198.3149 0.0 m +4.4763 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 4.4763 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 465.5237 307.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -189.2869 -17.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 276.2368 290.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 276.2368 290.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 282.3491 290.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.1846 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 282.3491 290.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.8477 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 282.3491 290.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 282.3491 290.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 276.2368 290.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 465.5237 307.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 780.5237 287.0 ] concat +0 J +1.0 M +newpath +-333.3149 0.0 m +1.9732 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 1.9732 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 600.5237 327.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -328.906 -17.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 271.6177 310.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 271.6177 310.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +[ 1.0 0.0 0.0 1.0 277.73 310.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 109.4468 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 277.73 310.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 113.1099 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 277.73 310.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 277.73 310.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 271.6177 310.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 600.5237 327.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 915.5237 307.0 ] concat +0 J +1.0 M +newpath +-133.0268 0.0 m +19.5144 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 19.5144 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 735.5237 347.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -115.8653 -17.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 619.6584 330.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 619.6584 330.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000P\000a\000y\000m\000e\000n\000t\000I\000n\000f\000o) show +Q +[ 1.0 0.0 0.0 1.0 625.7707 330.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 93.5537 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 625.7707 330.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 97.2168 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 625.7707 330.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 625.7707 330.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 619.6584 330.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 735.5237 347.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1048.5237 327.0 ] concat +0 J +1.0 M +newpath +-266.0268 0.0 m +17.8626 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 17.8626 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 868.5237 367.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -247.0467 -17.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 621.477 350.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 621.477 350.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000P\000a\000y\000m\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 627.5893 350.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 75.2061 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 627.5893 350.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 78.8691 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 627.5893 350.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 627.5893 350.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 621.477 350.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 868.5237 367.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1131.0 347.0 ] concat +0 J +1.0 M +newpath +-348.5031 0.0 m +57.0474 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 57.0474 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 951.0 387.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -330.2591 -19.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 620.7409 368.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 620.7409 368.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000P\000a\000y\000m\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 626.8532 368.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 75.2061 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 626.8532 368.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 78.8691 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 626.8532 368.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 626.8532 368.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 620.7409 368.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 951.0 387.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1268.5237 367.0 ] concat +0 J +1.0 M +newpath +-486.0268 0.0 m +21.4763 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 21.4763 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 1088.5237 407.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -467.6855 -20.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 620.8382 387.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 620.8382 387.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000C\000l\000a\000i\000m) show +Q +[ 1.0 0.0 0.0 1.0 626.9505 387.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 59.9092 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 626.9505 387.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 63.5723 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 626.9505 387.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 626.9505 387.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 620.8382 387.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1088.5237 407.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1398.5237 387.0 ] concat +0 J +1.0 M +newpath +-616.0268 0.0 m +-18.5237 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -18.5237 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 1218.5237 427.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -597.6855 -18.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 620.8382 409.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 620.8382 409.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000C\000l\000a\000i\000m) show +Q +[ 1.0 0.0 0.0 1.0 626.9505 409.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 59.9092 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 626.9505 409.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 63.5723 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 626.9505 409.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 626.9505 409.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 620.8382 409.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1218.5237 427.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 190.0 193.5 ] concat +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1460.0 193.5 ] concat +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 825.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 825.0 417.0 ] concat +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 190.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1460.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 190.0 417.0 ] concat +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1460.0 417.0 ] concat +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 620.592773 417.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -180.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 489.0 l +1290.0 489.0 l +1290.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Deleteproposal.png b/ADD/Images/Deleteproposal.png new file mode 100644 index 0000000..e15440d Binary files /dev/null and b/ADD/Images/Deleteproposal.png differ diff --git a/ADD/Images/EditClient.eps b/ADD/Images/EditClient.eps new file mode 100644 index 0000000..bed2b70 --- /dev/null +++ b/ADD/Images/EditClient.eps @@ -0,0 +1,1434 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 108 20 487 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:42:31 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 202 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 202.0 rf +0.0 0.0 0.0 RG +q +0 0 429 202 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 202.0 rf +0.0 0.0 429.0 202.0 rc +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +40.0 -40.0 m +469.0 -40.0 l +469.0 162.0 l +40.0 162.0 l +40.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +50.0 -30.0 m +350.0 -30.0 l +350.0 130.0 l +50.0 130.0 l +50.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 220.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 96.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 96.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 14.3489 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +70.8022 0.5 l +70.8022 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +70.8022 0.5 l +70.8022 26.5 l +0.5 26.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t) show +Q +newpath +0.0 13.5 m +28.123046 13.5 l +S +[ 1.0 0.0 0.0 1.0 200.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 28.123 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 200.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.1792 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t) show +Q +newpath +0.0 13.5 m +28.123046 13.5 l +S +[ 1.0 0.0 0.0 1.0 231.5281 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 198.3489 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 194.3489 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 96.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 96.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +68.1914 0.5 m +68.1914 11.5 l +60.1914 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +68.1914 0.5 m +68.1914 11.5 l +60.1914 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000 \000C\000l\000i\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 168.0 96.0 ] concat +0 J +1.0 M +newpath +-31.5573 0.0 m +102.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 102.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 128.0 136.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 4.9633 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 132.9633 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 132.9633 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000C\000l\000i\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 139.0756 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.0776 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 139.0756 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.7407 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 139.0756 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 139.0756 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 132.9633 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 128.0 136.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 50.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 350.0 50.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 130.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 202.0 l +429.0 202.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/EditClient.png b/ADD/Images/EditClient.png new file mode 100644 index 0000000..45cdbaf Binary files /dev/null and b/ADD/Images/EditClient.png differ diff --git a/ADD/Images/Editclaim.eps b/ADD/Images/Editclaim.eps new file mode 100644 index 0000000..cc790e3 --- /dev/null +++ b/ADD/Images/Editclaim.eps @@ -0,0 +1,1434 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 108 20 487 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:42:45 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 202 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 202.0 rf +0.0 0.0 0.0 RG +q +0 0 429 202 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 202.0 rf +0.0 0.0 429.0 202.0 rc +[ 1.0 0.0 0.0 1.0 -110.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +110.0 -40.0 m +539.0 -40.0 l +539.0 162.0 l +110.0 162.0 l +110.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +120.0 -30.0 m +410.0 -30.0 l +410.0 130.0 l +120.0 130.0 l +120.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 150.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +66.52635 0.5 m +66.52635 80.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +66.52635 0.5 m +66.52635 80.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +29.342285 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 32.0098 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 35.3438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +77.649902 13.5 l +S +[ 1.0 0.0 0.0 1.0 81.3438 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -110.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 280.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 80.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 80.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 14.3596 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +70.7808 0.5 l +70.7808 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +70.7808 0.5 l +70.7808 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000a\000i\000m) show +Q +newpath +0.0 13.5 m +28.112304 13.5 l +S +[ 1.0 0.0 0.0 1.0 190.3596 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 28.1123 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 190.3596 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.1685 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000a\000i\000m) show +Q +newpath +0.0 13.5 m +28.112304 13.5 l +S +[ 1.0 0.0 0.0 1.0 221.5281 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 190.3596 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 188.3596 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 184.3596 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 170.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -110.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 120.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +65.5137 0.5 m +65.5137 11.5 l +57.5137 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +65.5137 0.5 m +65.5137 11.5 l +57.5137 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000 \000c\000l\000a\000i\000m) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -110.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 325.0 70.0 ] concat +0 J +1.0 M +newpath +-113.9758 0.0 m +5.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 5.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 215.0 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -84.7406 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 130.2594 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 130.2594 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000C\000l\000a\000i\000m) show +Q +[ 1.0 0.0 0.0 1.0 136.3717 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.0669 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 136.3717 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.73 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 136.3717 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 136.3717 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 130.2594 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 215.0 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -110.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 120.0 50.0 ] concat +[ 1.0 0.0 0.0 1.0 -110.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 410.0 50.0 ] concat +[ 1.0 0.0 0.0 1.0 -110.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -110.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 120.0 130.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -110.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 202.0 l +429.0 202.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Editclaim.png b/ADD/Images/Editclaim.png new file mode 100644 index 0000000..499fd58 Binary files /dev/null and b/ADD/Images/Editclaim.png differ diff --git a/ADD/Images/Editindividualinsurance.eps b/ADD/Images/Editindividualinsurance.eps new file mode 100644 index 0000000..f765b34 --- /dev/null +++ b/ADD/Images/Editindividualinsurance.eps @@ -0,0 +1,1532 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 124 20 471 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:44:25 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +485 209 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 485.0 209.0 rf +0.0 0.0 0.0 RG +q +0 0 485 209 rc +q +1.0 1.0 1.0 RG +0.0 0.0 485.0 209.0 rf +0.0 0.0 485.0 209.0 rc +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +80.0 -40.0 m +565.0 -40.0 l +565.0 169.0 l +80.0 169.0 l +80.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +90.0 -30.0 m +555.0 -30.0 l +555.0 137.0 l +90.0 137.0 l +90.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 370.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +77.5449 0.5 m +77.5449 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +77.5449 0.5 m +77.5449 107.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +153.5898 0.5 l +153.5898 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +153.5898 0.5 l +153.5898 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +newpath +0.0 13.5 m +48.307617 13.5 l +S +[ 1.0 0.0 0.0 1.0 296.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 52.6992 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 296.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.0332 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000i\000n\000g\000l\000e\000I\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +newpath +0.0 13.5 m +78.885253 13.5 l +S +[ 1.0 0.0 0.0 1.0 352.0332 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 296.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 294.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 290.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 290.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 120.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 107.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +142.9102 0.5 m +142.9102 11.5 l +134.9102 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +142.9102 0.5 m +142.9102 11.5 l +134.9102 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000 \000i\000n\000d\000i\000v\000i\000d\000u\000a\000l\000 \000i\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 210.0 67.0 ] concat +0 J +1.0 M +newpath +-31.1951 0.0 m +8.8049 0.0 l +8.8049 20.0 l +-31.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -31.1951 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 130.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 12.0283 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 130.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 371.0 107.0 ] concat +0 J +1.0 M +newpath +-189.9717 0.0 m +76.0449 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 76.0449 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 291.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -117.6607 -17.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 173.3393 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 173.3393 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000S\000i\000n\000g\000l\000e\000I\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +[ 1.0 0.0 0.0 1.0 180.0073 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 106.7344 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 180.0073 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 110.7305 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 180.0073 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0073 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 173.3393 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 291.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 555.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 322.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 322.5 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 555.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 555.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 118.092773 137.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 209.0 l +485.0 209.0 l +485.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Editindividualinsurance.png b/ADD/Images/Editindividualinsurance.png new file mode 100644 index 0000000..0bf0760 Binary files /dev/null and b/ADD/Images/Editindividualinsurance.png differ diff --git a/ADD/Images/Editinsurancepackage.eps b/ADD/Images/Editinsurancepackage.eps new file mode 100644 index 0000000..c261beb --- /dev/null +++ b/ADD/Images/Editinsurancepackage.eps @@ -0,0 +1,1532 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 127 20 468 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:44:16 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +492 209 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 492.0 209.0 rf +0.0 0.0 0.0 RG +q +0 0 492 209 rc +q +1.0 1.0 1.0 RG +0.0 0.0 492.0 209.0 rf +0.0 0.0 492.0 209.0 rc +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +50.0 -40.0 m +542.0 -40.0 l +542.0 169.0 l +50.0 169.0 l +50.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +60.0 -30.0 m +532.0 -30.0 l +532.0 137.0 l +60.0 137.0 l +60.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 340.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +81.2158 0.5 m +81.2158 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +81.2158 0.5 m +81.2158 107.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +160.9316 0.5 l +160.9316 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +160.9316 0.5 l +160.9316 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000c\000k\000a\000g\000e) show +Q +newpath +0.0 13.5 m +42.807617 13.5 l +S +[ 1.0 0.0 0.0 1.0 296.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.6992 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 296.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0332 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000a\000c\000k\000a\000g\000e) show +Q +newpath +0.0 13.5 m +91.115234 13.5 l +S +[ 1.0 0.0 0.0 1.0 346.0332 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 296.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 294.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 290.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 290.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 107.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +138.2461 0.5 m +138.2461 11.5 l +130.2461 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +138.2461 0.5 m +138.2461 11.5 l +130.2461 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000 \000i\000n\000s\000u\000r\000a\000n\000c\000e\000 \000p\000a\000c\000k\000a\000g\000e) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 179.0 67.0 ] concat +0 J +1.0 M +newpath +-30.1951 0.0 m +9.8049 0.0 l +9.8049 20.0 l +-30.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -30.1951 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 129.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 13.0283 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 129.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 341.0 107.0 ] concat +0 J +1.0 M +newpath +-192.195 0.0 m +79.7158 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 79.7158 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 291.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -122.2881 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 168.7119 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 168.7119 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000a\000c\000k\000a\000g\000e) show +Q +[ 1.0 0.0 0.0 1.0 174.8242 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 110.0698 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 174.8242 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 113.7329 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 174.8242 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 174.8242 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 168.7119 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 291.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 532.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 296.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 296.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 532.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 532.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 91.592773 137.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 209.0 l +492.0 209.0 l +492.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Editinsurancepackage.png b/ADD/Images/Editinsurancepackage.png new file mode 100644 index 0000000..5984896 Binary files /dev/null and b/ADD/Images/Editinsurancepackage.png differ diff --git a/ADD/Images/Editpayment.eps b/ADD/Images/Editpayment.eps new file mode 100644 index 0000000..d8604c9 --- /dev/null +++ b/ADD/Images/Editpayment.eps @@ -0,0 +1,1838 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 113 20 482 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:45:13 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +611 281 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 611.0 281.0 rf +0.0 0.0 0.0 RG +q +0 0 611 281 rc +q +1.0 1.0 1.0 RG +0.0 0.0 611.0 281.0 rf +0.0 0.0 611.0 281.0 rc +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +40.0 -40.0 m +651.0 -40.0 l +651.0 241.0 l +40.0 241.0 l +40.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +50.0 -30.0 m +641.0 -30.0 l +641.0 209.0 l +50.0 209.0 l +50.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 500.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +55.52245 0.5 m +55.52245 179.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +55.52245 0.5 m +55.52245 179.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +109.5449 0.5 l +109.5449 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +109.5449 0.5 l +109.5449 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t) show +Q +newpath +0.0 13.5 m +43.409179 13.5 l +S +[ 1.0 0.0 0.0 1.0 466.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.3555 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 466.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.6895 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t) show +Q +newpath +0.0 13.5 m +43.409179 13.5 l +S +[ 1.0 0.0 0.0 1.0 516.6895 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 466.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 464.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 460.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 460.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 350.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +66.52635 0.5 m +66.52635 179.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +66.52635 0.5 m +66.52635 179.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +29.342285 13.5 l +S +[ 1.0 0.0 0.0 1.0 316.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 32.0098 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 316.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 35.3438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +77.649902 13.5 l +S +[ 1.0 0.0 0.0 1.0 351.3438 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 316.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 314.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 310.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 310.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 220.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 179.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 179.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 14.3489 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +70.8022 0.5 l +70.8022 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +70.8022 0.5 l +70.8022 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t) show +Q +newpath +0.0 13.5 m +28.123046 13.5 l +S +[ 1.0 0.0 0.0 1.0 200.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 28.123 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 200.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.1792 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t) show +Q +newpath +0.0 13.5 m +28.123046 13.5 l +S +[ 1.0 0.0 0.0 1.0 231.5281 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 198.3489 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 194.3489 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 179.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 179.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +83.5371 0.5 m +83.5371 11.5 l +75.5371 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +83.5371 0.5 m +83.5371 11.5 l +75.5371 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000 \000p\000a\000y\000m\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 166.0 99.0 ] concat +0 J +1.0 M +newpath +-29.5573 0.0 m +104.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 104.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 126.0 139.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -2.8148 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 123.1852 123.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 123.1852 123.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000C\000l\000i\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 129.2975 123.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 58.0776 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 129.2975 123.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 61.7407 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 129.2975 123.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 65.4038 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 129.2975 123.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 68.46 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 197.7575 123.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 129.2975 123.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 129.2975 123.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 123.1852 123.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 126.0 139.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 303.0 139.0 ] concat +0 J +1.0 M +newpath +-33.0 0.0 m +108.0242 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 108.0242 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 263.0 179.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -23.0094 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 239.9906 163.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 239.9906 163.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +[ 1.0 0.0 0.0 1.0 246.1029 163.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 107.6045 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 246.1029 163.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 111.2676 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 246.1029 163.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 246.1029 163.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 239.9906 163.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 263.0 179.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 439.0 179.0 ] concat +0 J +1.0 M +newpath +-27.9758 0.0 m +111.9372 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 111.9372 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 399.0 219.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 4.0796 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 403.0796 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 403.0796 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000P\000a\000y\000m\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 409.1919 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 62.3638 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 409.1919 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 66.0269 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 409.1919 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 409.1919 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 403.0796 203.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 399.0 219.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 89.5 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 641.0 89.5 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 345.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 345.5 209.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 641.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 209.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 641.0 209.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 141.092773 209.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 281.0 l +611.0 281.0 l +611.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Editpayment.png b/ADD/Images/Editpayment.png new file mode 100644 index 0000000..877f451 Binary files /dev/null and b/ADD/Images/Editpayment.png differ diff --git a/ADD/Images/Editpolicy.eps b/ADD/Images/Editpolicy.eps new file mode 100644 index 0000000..c37a4a2 --- /dev/null +++ b/ADD/Images/Editpolicy.eps @@ -0,0 +1,1532 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 77 20 518 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:45:27 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 235 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 235.0 rf +0.0 0.0 0.0 RG +q +0 0 429 235 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 235.0 rf +0.0 0.0 429.0 235.0 rc +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +70.0 -40.0 m +499.0 -40.0 l +499.0 195.0 l +70.0 195.0 l +70.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +80.0 -30.0 m +413.0 -30.0 l +413.0 163.0 l +80.0 163.0 l +80.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 250.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +66.52635 0.5 m +66.52635 133.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +66.52635 0.5 m +66.52635 133.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +29.342285 13.5 l +S +[ 1.0 0.0 0.0 1.0 186.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 32.0098 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 186.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 35.3438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +77.649902 13.5 l +S +[ 1.0 0.0 0.0 1.0 221.3438 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 186.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 184.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 110.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 133.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 133.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +68.1914 0.5 m +68.1914 11.5 l +60.1914 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +68.1914 0.5 m +68.1914 11.5 l +60.1914 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000 \000p\000o\000l\000i\000c\000y) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 167.0 73.0 ] concat +0 J +1.0 M +newpath +-0.5573 0.0 m +39.4427 0.0 l +39.4427 20.0 l +-0.5573 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -0.5573 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 97.0 113.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.4427 2.5 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 137.4427 115.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 137.4427 115.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 143.555 115.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 143.555 115.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 143.555 115.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 143.555 115.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 137.4427 115.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 97.0 113.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 198.0 133.0 ] concat +0 J +1.0 M +newpath +-31.5573 0.0 m +113.0242 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 113.0242 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 128.0 173.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -14.2881 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 113.7119 157.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 113.7119 157.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +[ 1.0 0.0 0.0 1.0 119.8242 157.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 96.6045 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 119.8242 157.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 100.2676 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 119.8242 157.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 119.8242 157.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 113.7119 157.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 128.0 173.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 66.5 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 413.0 66.5 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 246.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 246.5 163.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 413.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 163.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 413.0 163.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 163.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 235.0 l +429.0 235.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Editpolicy.png b/ADD/Images/Editpolicy.png new file mode 100644 index 0000000..e4687f8 Binary files /dev/null and b/ADD/Images/Editpolicy.png differ diff --git a/ADD/Images/Editrisk.eps b/ADD/Images/Editrisk.eps new file mode 100644 index 0000000..c6f8863 --- /dev/null +++ b/ADD/Images/Editrisk.eps @@ -0,0 +1,1434 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 108 20 487 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:45:39 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 202 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 202.0 rf +0.0 0.0 0.0 RG +q +0 0 429 202 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 202.0 rf +0.0 0.0 429.0 202.0 rc +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +40.0 -40.0 m +469.0 -40.0 l +469.0 162.0 l +40.0 162.0 l +40.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +50.0 -30.0 m +390.0 -30.0 l +390.0 130.0 l +50.0 130.0 l +50.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 260.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 93.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 93.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 21.0842 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +57.3315 0.5 l +57.3315 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +57.3315 0.5 l +57.3315 26.5 l +0.5 26.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k) show +Q +newpath +0.0 13.5 m +21.387695 13.5 l +S +[ 1.0 0.0 0.0 1.0 247.0842 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 21.3877 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 247.0842 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 24.4438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k) show +Q +newpath +0.0 13.5 m +21.387695 13.5 l +S +[ 1.0 0.0 0.0 1.0 271.528 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 247.0842 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 245.0842 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 241.0842 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 220.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +81.87795 0.5 m +81.87795 93.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +81.87795 0.5 m +81.87795 93.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +162.2559 0.5 l +162.2559 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +162.2559 0.5 l +162.2559 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +43.414550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +91.722167 13.5 l +S +[ 1.0 0.0 0.0 1.0 96.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +56.1738 0.5 m +56.1738 11.5 l +48.1738 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +56.1738 0.5 m +56.1738 11.5 l +48.1738 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000 \000r\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 189.0 93.0 ] concat +0 J +1.0 M +newpath +-33.9035 0.0 m +121.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 121.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 149.0 133.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 16.6578 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 165.6578 117.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 165.6578 117.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 171.7701 117.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.3423 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 171.7701 117.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0054 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 171.7701 117.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 171.7701 117.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 165.6578 117.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 149.0 133.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 50.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 390.0 50.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 130.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 202.0 l +429.0 202.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Editrisk.png b/ADD/Images/Editrisk.png new file mode 100644 index 0000000..68e53d2 Binary files /dev/null and b/ADD/Images/Editrisk.png differ diff --git a/ADD/Images/Edittypeofclient.eps b/ADD/Images/Edittypeofclient.eps new file mode 100644 index 0000000..c10faf5 --- /dev/null +++ b/ADD/Images/Edittypeofclient.eps @@ -0,0 +1,1532 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 102 20 493 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:46:10 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 209 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 209.0 rf +0.0 0.0 0.0 RG +q +0 0 429 209 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 209.0 rf +0.0 0.0 429.0 209.0 rc +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +50.0 -40.0 m +479.0 -40.0 l +479.0 169.0 l +50.0 169.0 l +50.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +60.0 -30.0 m +441.0 -30.0 l +441.0 137.0 l +60.0 137.0 l +60.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 280.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +65.5244 0.5 m +65.5244 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +65.5244 0.5 m +65.5244 107.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +129.5488 0.5 l +129.5488 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +129.5488 0.5 l +129.5488 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t\000T\000y\000p\000e) show +Q +newpath +0.0 13.5 m +52.577636 13.5 l +S +[ 1.0 0.0 0.0 1.0 236.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 57.3574 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 236.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.6914 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t\000T\000y\000p\000e) show +Q +newpath +0.0 13.5 m +52.577636 13.5 l +S +[ 1.0 0.0 0.0 1.0 296.6914 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 236.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 234.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 230.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 230.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 107.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +104.8828 0.5 m +104.8828 11.5 l +96.8828 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +104.8828 0.5 m +104.8828 11.5 l +96.8828 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000 \000t\000y\000p\000e\000 \000o\000f\000 \000c\000l\000i\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 177.0 67.0 ] concat +0 J +1.0 M +newpath +-28.1951 0.0 m +11.8049 0.0 l +11.8049 20.0 l +-28.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -28.1951 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 127.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 15.0283 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 127.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 279.0 107.0 ] concat +0 J +1.0 M +newpath +-130.195 0.0 m +1.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 1.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 229.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -108.264 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 120.736 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 120.736 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000d\000i\000t\000C\000l\000i\000e\000n\000t\000T\000y\000p\000e) show +Q +[ 1.0 0.0 0.0 1.0 126.8483 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 71.5322 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 126.8483 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 75.1953 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 126.8483 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 126.8483 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 120.736 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 229.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 441.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 250.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 250.5 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 441.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 441.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 137.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 209.0 l +429.0 209.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Edittypeofclient.png b/ADD/Images/Edittypeofclient.png new file mode 100644 index 0000000..c6604d2 Binary files /dev/null and b/ADD/Images/Edittypeofclient.png differ diff --git a/ADD/Images/Employeemanagement.eps b/ADD/Images/Employeemanagement.eps new file mode 100644 index 0000000..0c3befc --- /dev/null +++ b/ADD/Images/Employeemanagement.eps @@ -0,0 +1,2019 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 93 20 502 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:46:21 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +653 332 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 653.0 332.0 rf +0.0 0.0 0.0 RG +q +0 0 653 332 rc +q +1.0 1.0 1.0 RG +0.0 0.0 653.0 332.0 rf +0.0 0.0 653.0 332.0 rc +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +50.0 -40.0 m +703.0 -40.0 l +703.0 292.0 l +50.0 292.0 l +50.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +60.0 -30.0 m +693.0 -30.0 l +693.0 260.0 l +60.0 260.0 l +60.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 540.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.52245 0.5 m +61.52245 228.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.52245 0.5 m +61.52245 228.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5449 0.5 l +121.5449 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5449 0.5 l +121.5449 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000a\000l\000a\000r\000y\000R\000e\000c\000o\000r\000d) show +Q +newpath +0.0 13.5 m +66.639160 13.5 l +S +[ 1.0 0.0 0.0 1.0 496.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 72.6973 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 496.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 76.0313 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000a\000l\000a\000r\000y) show +Q +newpath +0.0 13.5 m +31.179199 13.5 l +S +[ 1.0 0.0 0.0 1.0 572.0313 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 496.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 494.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 490.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 490.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 390.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 228.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 228.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 346.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 346.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 402.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 346.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 344.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 340.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 340.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +90.541 0.5 m +90.541 228.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +90.541 0.5 m +90.541 228.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +179.582 0.5 l +179.582 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +179.582 0.5 l +179.582 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000B\000u\000s\000i\000n\000e\000s\000s\000D\000e\000p\000a\000r\000t\000m\000e\000n\000t) show +Q +newpath +0.0 13.5 m +102.104492 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 111.3867 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 114.7207 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 160.7207 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +140.2383 0.5 m +140.2383 11.5 l +132.2383 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +140.2383 0.5 m +140.2383 11.5 l +132.2383 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e\000 \000m\000a\000n\000a\000g\000e\000m\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 215.0 78.0 ] concat +0 J +1.0 M +newpath +-37.1823 0.0 m +2.8177 0.0 l +2.8177 20.0 l +-37.1823 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -37.1823 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 165.0 118.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.041 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 171.041 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 171.041 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 177.709 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 177.709 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 177.709 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 177.709 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 171.041 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 165.0 118.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 392.0 137.0 ] concat +0 J +1.0 M +newpath +-214.1823 0.0 m +56.805 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 56.805 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 342.0 177.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -126.2733 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 215.7267 161.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 215.7267 161.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000e\000a\000r\000c\000h\000S\000a\000l\000a\000r\000y) show +Q +[ 1.0 0.0 0.0 1.0 221.839 161.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 66.0322 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 221.839 161.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 69.6953 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 221.839 161.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 73.3584 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 221.839 161.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 76.4146 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 298.2536 161.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 221.839 161.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 221.839 161.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 215.7267 161.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 342.0 177.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 448.0 177.0 ] concat +0 J +1.0 M +newpath +-270.1823 0.0 m +0.805 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 0.805 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 398.0 217.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -170.3548 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 227.6452 201.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 227.6452 201.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000A\000d\000d\000S\000a\000l\000a\000r\000y) show +Q +[ 1.0 0.0 0.0 1.0 233.7575 201.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.7515 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 233.7575 201.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 54.4146 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 233.7575 201.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 233.7575 201.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 227.6452 201.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 398.0 217.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 448.0 208.0 ] concat +0 J +1.0 M +newpath +-270.1823 0.0 m +0.805 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 0.805 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 398.0 248.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -181.0487 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 216.9513 232.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 216.9513 232.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000m\000o\000v\000e\000S\000a\000l\000a\000r\000y) show +Q +[ 1.0 0.0 0.0 1.0 223.0636 232.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 72.1392 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 223.0636 232.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 75.8022 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 223.0636 232.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 223.0636 232.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 216.9513 232.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 398.0 248.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 540.0 157.0 ] concat +0 J +1.0 M +newpath +-91.195 0.0 m +61.0225 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 61.0225 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 490.0 197.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -45.147 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 444.853 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 444.853 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000a\000l\000a\000r\000y) show +Q +[ 1.0 0.0 0.0 1.0 450.9653 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.1792 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 450.9653 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 34.8423 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 450.9653 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 38.5054 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 450.9653 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 41.5615 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 492.5268 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 450.9653 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 450.9653 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 444.853 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 490.0 197.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 598.0 228.0 ] concat +0 J +1.0 M +newpath +-149.195 0.0 m +3.0225 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 3.0225 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 548.0 268.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -114.7674 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 433.2326 252.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 433.2326 252.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000S\000a\000l\000a\000r\000y) show +Q +[ 1.0 0.0 0.0 1.0 439.3449 252.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 62.9761 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 439.3449 252.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 66.6392 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 439.3449 252.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 439.3449 252.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 433.2326 252.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 548.0 268.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 115.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 693.0 115.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 376.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 376.5 260.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 693.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.0 260.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 693.0 260.0 ] concat +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 172.092773 260.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 332.0 l +653.0 332.0 l +653.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Employeemanagement.png b/ADD/Images/Employeemanagement.png new file mode 100644 index 0000000..746f8ce Binary files /dev/null and b/ADD/Images/Employeemanagement.png differ diff --git a/ADD/Images/Generatereport.eps b/ADD/Images/Generatereport.eps new file mode 100644 index 0000000..be208a7 --- /dev/null +++ b/ADD/Images/Generatereport.eps @@ -0,0 +1,1434 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 108 20 487 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:46:34 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 202 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 202.0 rf +0.0 0.0 0.0 RG +q +0 0 429 202 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 202.0 rf +0.0 0.0 429.0 202.0 rc +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +60.0 -40.0 m +489.0 -40.0 l +489.0 162.0 l +60.0 162.0 l +60.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +70.0 -30.0 m +453.0 -30.0 l +453.0 130.0 l +70.0 130.0 l +70.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 290.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +66.52635 0.5 m +66.52635 92.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +66.52635 0.5 m +66.52635 92.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +29.342285 13.5 l +S +[ 1.0 0.0 0.0 1.0 236.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 32.0098 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 236.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 35.3438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +77.649902 13.5 l +S +[ 1.0 0.0 0.0 1.0 271.3438 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 236.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 234.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 230.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 230.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 100.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 92.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 92.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +98.2148 0.5 m +98.2148 11.5 l +90.2148 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +98.2148 0.5 m +98.2148 11.5 l +90.2148 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000G\000e\000n\000e\000r\000a\000t\000e\000 \000r\000e\000p\000o\000r\000t) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 185.0 92.0 ] concat +0 J +1.0 M +newpath +-28.5573 0.0 m +166.0242 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 166.0242 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 125.0 132.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -7.6892 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 117.3108 116.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 117.3108 116.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000G\000e\000n\000e\000r\000a\000t\000e\000G\000o\000v\000e\000r\000n\000m\000e\000n\000t\000R\000e\000p\000o\000r\000t) show +Q +[ 1.0 0.0 0.0 1.0 123.4231 116.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 139.4067 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 123.4231 116.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 143.0698 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 123.4231 116.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 123.4231 116.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 117.3108 116.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 125.0 132.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 50.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 453.0 50.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 130.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 202.0 l +429.0 202.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Generatereport.png b/ADD/Images/Generatereport.png new file mode 100644 index 0000000..610e7d4 Binary files /dev/null and b/ADD/Images/Generatereport.png differ diff --git a/ADD/Images/Internalcareertracking.eps b/ADD/Images/Internalcareertracking.eps new file mode 100644 index 0000000..07e7e2c --- /dev/null +++ b/ADD/Images/Internalcareertracking.eps @@ -0,0 +1,2019 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 80 20 515 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:46:45 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +589 319 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 589.0 319.0 rf +0.0 0.0 0.0 RG +q +0 0 589 319 rc +q +1.0 1.0 1.0 RG +0.0 0.0 589.0 319.0 rf +0.0 0.0 589.0 319.0 rc +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +60.0 -40.0 m +649.0 -40.0 l +649.0 279.0 l +60.0 279.0 l +60.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +70.0 -30.0 m +639.0 -30.0 l +639.0 247.0 l +70.0 247.0 l +70.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 470.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +69.53225 0.5 m +69.53225 217.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +69.53225 0.5 m +69.53225 217.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +137.5645 0.5 l +137.5645 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +137.5645 0.5 l +137.5645 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000a\000r\000e\000e\000r\000S\000t\000e\000p) show +Q +newpath +0.0 13.5 m +56.251464 13.5 l +S +[ 1.0 0.0 0.0 1.0 416.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 61.3652 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 416.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 64.6992 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000a\000r\000e\000e\000r\000S\000t\000e\000p) show +Q +newpath +0.0 13.5 m +56.251464 13.5 l +S +[ 1.0 0.0 0.0 1.0 480.6992 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 416.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 414.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 410.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 410.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 330.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 217.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 217.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 276.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 276.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 332.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 276.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 274.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 270.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 270.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 100.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +93.541 0.5 m +93.541 217.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +93.541 0.5 m +93.541 217.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +185.582 0.5 l +185.582 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +185.582 0.5 l +185.582 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000B\000u\000s\000s\000i\000n\000e\000s\000s\000D\000e\000p\000a\000r\000t\000m\000e\000n\000t) show +Q +newpath +0.0 13.5 m +107.604492 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 117.3867 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 120.7207 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 166.7207 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +136.2246 0.5 m +136.2246 11.5 l +128.2246 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +136.2246 0.5 m +136.2246 11.5 l +128.2246 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000t\000e\000r\000n\000a\000l\000 \000c\000a\000r\000e\000e\000r\000 \000t\000r\000a\000c\000k\000i\000n\000g) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 187.0 67.0 ] concat +0 J +1.0 M +newpath +3.8177 0.0 m +43.8177 0.0 l +43.8177 20.0 l +3.8177 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 3.8177 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 127.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.041 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 174.041 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 174.041 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 180.709 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 180.709 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 180.709 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.709 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 174.041 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 127.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 384.0 107.0 ] concat +0 J +1.0 M +newpath +-193.1823 0.0 m +4.805 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 4.805 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 324.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -154.4344 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 169.5656 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 169.5656 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000e\000a\000r\000c\000h\000C\000a\000r\000e\000e\000r\000S\000t\000e\000p) show +Q +[ 1.0 0.0 0.0 1.0 175.6779 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 91.1045 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 175.6779 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 94.7676 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 175.6779 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 98.4307 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 175.6779 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 101.4868 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 277.1647 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 175.6779 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 175.6779 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 169.5656 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 324.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 389.0 157.0 ] concat +0 J +1.0 M +newpath +-198.1823 0.0 m +-0.195 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -0.195 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 329.0 197.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -147.516 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 181.484 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 181.484 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000A\000d\000d\000C\000a\000r\000e\000e\000r\000S\000t\000e\000p) show +Q +[ 1.0 0.0 0.0 1.0 187.5963 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 75.8237 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 187.5963 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 79.4868 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 187.5963 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 187.5963 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 181.484 181.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 329.0 197.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 385.0 197.0 ] concat +0 J +1.0 M +newpath +-194.1823 0.0 m +3.805 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 3.805 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 325.0 237.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -154.2098 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 170.7902 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 170.7902 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000m\000o\000v\000e\000C\000a\000r\000e\000e\000r\000S\000t\000e\000p) show +Q +[ 1.0 0.0 0.0 1.0 176.9025 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 97.2114 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 176.9025 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 100.8745 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 176.9025 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 176.9025 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 170.7902 221.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 325.0 237.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 468.0 127.0 ] concat +0 J +1.0 M +newpath +-79.195 0.0 m +2.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 2.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 408.0 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -78.9017 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 329.0983 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 329.0983 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000a\000r\000e\000e\000r\000S\000t\000e\000p) show +Q +[ 1.0 0.0 0.0 1.0 335.2106 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.2515 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 335.2106 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 59.9146 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 335.2106 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 63.5776 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 335.2106 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 66.6338 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 401.8444 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 335.2106 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 335.2106 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 329.0983 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 408.0 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 534.0 217.0 ] concat +0 J +1.0 M +newpath +-145.195 0.0 m +5.0322 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 5.0322 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 474.0 257.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -124.6323 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 349.3677 241.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 349.3677 241.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000C\000a\000r\000e\000e\000r\000S\000t\000e\000p) show +Q +[ 1.0 0.0 0.0 1.0 355.48 241.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 88.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 355.48 241.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 91.7114 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 355.48 241.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 355.48 241.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 349.3677 241.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 474.0 257.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 108.5 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 639.0 108.5 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 354.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 354.5 247.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 639.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 247.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 639.0 247.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 150.092773 247.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 319.0 l +589.0 319.0 l +589.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Internalcareertracking.png b/ADD/Images/Internalcareertracking.png new file mode 100644 index 0000000..96ab0cf Binary files /dev/null and b/ADD/Images/Internalcareertracking.png differ diff --git a/ADD/Images/ManageTimesheet.eps b/ADD/Images/ManageTimesheet.eps new file mode 100644 index 0000000..188b951 --- /dev/null +++ b/ADD/Images/ManageTimesheet.eps @@ -0,0 +1,1840 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 20 59 575 783 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:46:57 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 329 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 329.0 rf +0.0 0.0 0.0 RG +q +0 0 429 329 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 329.0 rf +0.0 0.0 429.0 329.0 rc +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +80.0 -40.0 m +509.0 -40.0 l +509.0 289.0 l +80.0 289.0 l +80.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +90.0 -30.0 m +488.0 -30.0 l +488.0 257.0 l +90.0 257.0 l +90.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 330.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +64.1885 0.5 m +64.1885 227.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +64.1885 0.5 m +64.1885 227.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +126.877 0.5 l +126.877 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +126.877 0.5 l +126.877 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000T\000i\000m\000e\000s\000h\000e\000e\000t) show +Q +newpath +0.0 13.5 m +51.353027 13.5 l +S +[ 1.0 0.0 0.0 1.0 256.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.0215 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 256.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 59.3555 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000T\000i\000m\000e\000s\000h\000e\000e\000t) show +Q +newpath +0.0 13.5 m +51.353027 13.5 l +S +[ 1.0 0.0 0.0 1.0 315.3555 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 256.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 254.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 250.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 250.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 120.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 227.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 227.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +116.2207 0.5 m +116.2207 11.5 l +108.2207 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +116.2207 0.5 m +116.2207 11.5 l +108.2207 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000M\000a\000n\000a\000g\000e\000 \000T\000i\000m\000e\000s\000h\000e\000e\000t) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 325.0 87.0 ] concat +0 J +1.0 M +newpath +-146.195 0.0 m +5.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 5.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 245.0 127.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -108.4525 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 136.5475 111.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 136.5475 111.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000T\000i\000m\000e\000s\000h\000e\000e\000t) show +Q +[ 1.0 0.0 0.0 1.0 142.6598 111.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 51.353 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 142.6598 111.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 55.0161 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 142.6598 111.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 58.6792 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 142.6598 111.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 61.7354 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 204.3952 111.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.6598 111.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.6598 111.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 136.5475 111.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 245.0 127.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 203.0 107.0 ] concat +0 J +1.0 M +newpath +-24.1951 0.0 m +15.8049 0.0 l +15.8049 20.0 l +-24.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -24.1951 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 123.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 14.4427 2.5 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 137.4427 149.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 137.4427 149.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000A\000d\000d\000T\000i\000m\000e\000s\000h\000e\000e\000t) show +Q +[ 1.0 0.0 0.0 1.0 143.555 149.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.9253 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 143.555 149.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 74.5884 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 143.555 149.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 143.555 149.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 137.4427 149.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 123.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 222.0 147.0 ] concat +0 J +1.0 M +newpath +-43.1951 0.0 m +-3.1951 0.0 l +-3.1951 20.0 l +-43.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -43.1951 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 142.0 187.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -4.5573 2.5 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 137.4427 189.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 137.4427 189.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000e\000a\000r\000c\000h\000T\000i\000m\000e\000s\000h\000e\000e\000t) show +Q +[ 1.0 0.0 0.0 1.0 143.555 189.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 86.2061 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 143.555 189.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 89.8691 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 143.555 189.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 93.5322 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 143.555 189.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 96.5884 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 240.1434 189.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 143.555 189.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 143.555 189.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 137.4427 189.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0 187.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 218.0 187.0 ] concat +0 J +1.0 M +newpath +-39.1951 0.0 m +0.8049 0.0 l +0.8049 20.0 l +-39.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -39.1951 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 138.0 227.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -0.5573 2.5 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 137.4427 229.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 137.4427 229.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000m\000o\000v\000e\000T\000i\000m\000e\000s\000h\000e\000e\000t) show +Q +[ 1.0 0.0 0.0 1.0 143.555 229.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 92.313 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 143.555 229.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.9761 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 143.555 229.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 143.555 229.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 137.4427 229.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 138.0 227.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 392.0 227.0 ] concat +0 J +1.0 M +newpath +-213.195 0.0 m +1.6885 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 1.6885 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 312.0 267.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -157.6323 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 154.3677 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 154.3677 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000T\000i\000m\000e\000s\000h\000e\000e\000t) show +Q +[ 1.0 0.0 0.0 1.0 160.48 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 83.1499 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 160.48 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 86.813 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 160.48 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 160.48 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 154.3677 251.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 312.0 267.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 113.5 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 488.0 113.5 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 289.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 289.0 257.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 488.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 257.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 488.0 257.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 257.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 329.0 l +429.0 329.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/ManageTimesheet.png b/ADD/Images/ManageTimesheet.png new file mode 100644 index 0000000..f1662c7 Binary files /dev/null and b/ADD/Images/ManageTimesheet.png differ diff --git a/ADD/Images/QueryProposal.eps b/ADD/Images/QueryProposal.eps new file mode 100644 index 0000000..d8e604d --- /dev/null +++ b/ADD/Images/QueryProposal.eps @@ -0,0 +1,1460 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 108 20 487 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:47:19 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 202 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 202.0 rf +0.0 0.0 0.0 RG +q +0 0 429 202 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 202.0 rf +0.0 0.0 429.0 202.0 rc +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +40.0 -40.0 m +469.0 -40.0 l +469.0 162.0 l +40.0 162.0 l +40.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +50.0 -30.0 m +413.0 -30.0 l +413.0 130.0 l +50.0 130.0 l +50.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 220.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +81.87795 0.5 m +81.87795 92.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +81.87795 0.5 m +81.87795 92.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +162.2559 0.5 l +162.2559 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +162.2559 0.5 l +162.2559 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +43.414550 13.5 l +S +[ 1.0 0.0 0.0 1.0 186.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 186.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +91.722167 13.5 l +S +[ 1.0 0.0 0.0 1.0 236.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 186.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 184.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 92.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 92.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +96.873 0.5 m +96.873 11.5 l +88.873 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +96.873 0.5 m +96.873 11.5 l +88.873 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000 \000P\000r\000o\000p\000o\000s\000a\000l) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 169.0 92.0 ] concat +0 J +1.0 M +newpath +-27.9717 0.0 m +132.378 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 132.378 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 129.0 132.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -25.9131 -17.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 103.0869 115.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 103.0869 115.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +[ 1.0 0.0 0.0 1.0 109.7549 115.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 132.7383 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 109.7549 115.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 136.7344 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 109.7549 115.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 140.7305 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 109.7549 115.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 144.0645 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 253.8194 115.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 109.7549 115.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 109.7549 115.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 103.0869 115.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 129.0 132.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 50.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 413.0 50.0 ] concat +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0 130.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -40.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 202.0 l +429.0 202.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/QueryProposal.png b/ADD/Images/QueryProposal.png new file mode 100644 index 0000000..c4de412 Binary files /dev/null and b/ADD/Images/QueryProposal.png differ diff --git a/ADD/Images/Queryclient.eps b/ADD/Images/Queryclient.eps new file mode 100644 index 0000000..655bfb4 --- /dev/null +++ b/ADD/Images/Queryclient.eps @@ -0,0 +1,1434 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 89 20 506 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:47:59 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 222 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 222.0 rf +0.0 0.0 0.0 RG +q +0 0 429 222 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 222.0 rf +0.0 0.0 429.0 222.0 rc +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +70.0 -40.0 m +499.0 -40.0 l +499.0 182.0 l +70.0 182.0 l +70.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +80.0 -30.0 m +380.0 -30.0 l +380.0 150.0 l +80.0 150.0 l +80.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 250.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 120.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 120.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 14.3489 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +70.8022 0.5 l +70.8022 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +70.8022 0.5 l +70.8022 26.5 l +0.5 26.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t) show +Q +newpath +0.0 13.5 m +28.123046 13.5 l +S +[ 1.0 0.0 0.0 1.0 200.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 28.123 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 200.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.1792 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t) show +Q +newpath +0.0 13.5 m +28.123046 13.5 l +S +[ 1.0 0.0 0.0 1.0 231.5281 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 198.3489 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 194.3489 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 110.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 120.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 120.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +77.5254 0.5 m +77.5254 11.5 l +69.5254 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +77.5254 0.5 m +77.5254 11.5 l +69.5254 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000 \000c\000l\000i\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 202.0 120.0 ] concat +0 J +1.0 M +newpath +-30.9717 0.0 m +98.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 98.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 132.0 160.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -5.4947 -17.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 126.5053 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 126.5053 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000C\000l\000i\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 133.1733 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 63.3574 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 133.1733 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 67.3535 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 133.1733 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 133.1733 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 126.5053 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 132.0 160.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 60.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 380.0 60.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 150.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 222.0 l +429.0 222.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Queryclient.png b/ADD/Images/Queryclient.png new file mode 100644 index 0000000..3d65f89 Binary files /dev/null and b/ADD/Images/Queryclient.png differ diff --git a/ADD/Images/Queryinsurancepackage.eps b/ADD/Images/Queryinsurancepackage.eps new file mode 100644 index 0000000..74fd57e --- /dev/null +++ b/ADD/Images/Queryinsurancepackage.eps @@ -0,0 +1,1498 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 127 20 468 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:48:32 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +492 209 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 492.0 209.0 rf +0.0 0.0 0.0 RG +q +0 0 492 209 rc +q +1.0 1.0 1.0 RG +0.0 0.0 492.0 209.0 rf +0.0 0.0 492.0 209.0 rc +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +70.0 -40.0 m +562.0 -40.0 l +562.0 169.0 l +70.0 169.0 l +70.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +80.0 -30.0 m +552.0 -30.0 l +552.0 137.0 l +80.0 137.0 l +80.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 360.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +81.2158 0.5 m +81.2158 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +81.2158 0.5 m +81.2158 107.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +160.9316 0.5 l +160.9316 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +160.9316 0.5 l +160.9316 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000c\000k\000a\000g\000e) show +Q +newpath +0.0 13.5 m +42.807617 13.5 l +S +[ 1.0 0.0 0.0 1.0 296.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.6992 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 296.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.0332 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000a\000c\000k\000a\000g\000e) show +Q +newpath +0.0 13.5 m +91.115234 13.5 l +S +[ 1.0 0.0 0.0 1.0 346.0332 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 296.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 294.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 290.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 290.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 110.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 107.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +150.2461 0.5 m +150.2461 11.5 l +142.2461 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +150.2461 0.5 m +150.2461 11.5 l +142.2461 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000 \000i\000n\000s\000u\000r\000a\000n\000c\000e\000 \000p\000a\000c\000k\000a\000g\000e) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 197.0 67.0 ] concat +0 J +1.0 M +newpath +-28.1951 0.0 m +11.8049 0.0 l +11.8049 20.0 l +-28.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -28.1951 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 127.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 15.0283 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 127.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 416.0 107.0 ] concat +0 J +1.0 M +newpath +-247.195 0.0 m +24.7158 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 24.7158 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 346.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -179.125 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 166.875 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 166.875 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000a\000c\000k\000a\000g\000e) show +Q +[ 1.0 0.0 0.0 1.0 166.875 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 346.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 552.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 316.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 316.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 552.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 552.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 111.592773 137.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -70.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 209.0 l +492.0 209.0 l +492.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Queryinsurancepackage.png b/ADD/Images/Queryinsurancepackage.png new file mode 100644 index 0000000..c49ba38 Binary files /dev/null and b/ADD/Images/Queryinsurancepackage.png differ diff --git a/ADD/Images/Querypayment.eps b/ADD/Images/Querypayment.eps new file mode 100644 index 0000000..cdf72c7 --- /dev/null +++ b/ADD/Images/Querypayment.eps @@ -0,0 +1,1838 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 99 20 496 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:48:44 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +611 302 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 611.0 302.0 rf +0.0 0.0 0.0 RG +q +0 0 611 302 rc +q +1.0 1.0 1.0 RG +0.0 0.0 611.0 302.0 rf +0.0 0.0 611.0 302.0 rc +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +60.0 -40.0 m +671.0 -40.0 l +671.0 262.0 l +60.0 262.0 l +60.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +70.0 -30.0 m +661.0 -30.0 l +661.0 230.0 l +70.0 230.0 l +70.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 520.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +55.52245 0.5 m +55.52245 200.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +55.52245 0.5 m +55.52245 200.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +109.5449 0.5 l +109.5449 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +109.5449 0.5 l +109.5449 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t) show +Q +newpath +0.0 13.5 m +43.409179 13.5 l +S +[ 1.0 0.0 0.0 1.0 466.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.3555 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 466.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.6895 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000a\000y\000m\000e\000n\000t) show +Q +newpath +0.0 13.5 m +43.409179 13.5 l +S +[ 1.0 0.0 0.0 1.0 516.6895 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 466.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 464.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 460.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 460.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 370.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +66.52635 0.5 m +66.52635 200.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +66.52635 0.5 m +66.52635 200.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +29.342285 13.5 l +S +[ 1.0 0.0 0.0 1.0 316.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 32.0098 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 316.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 35.3438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +77.649902 13.5 l +S +[ 1.0 0.0 0.0 1.0 351.3438 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 316.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 314.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 310.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 310.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 240.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 200.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 200.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 14.3489 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +70.8022 0.5 l +70.8022 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +70.8022 0.5 l +70.8022 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t) show +Q +newpath +0.0 13.5 m +28.123046 13.5 l +S +[ 1.0 0.0 0.0 1.0 200.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 28.123 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 200.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.1792 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t) show +Q +newpath +0.0 13.5 m +28.123046 13.5 l +S +[ 1.0 0.0 0.0 1.0 231.5281 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 198.3489 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 194.3489 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 100.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 200.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 200.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +95.5371 0.5 m +95.5371 11.5 l +87.5371 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +95.5371 0.5 m +95.5371 11.5 l +87.5371 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000 \000p\000a\000y\000m\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 194.0 120.0 ] concat +0 J +1.0 M +newpath +-37.5573 0.0 m +96.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 96.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 134.0 160.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -10.8148 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 123.1852 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 123.1852 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000C\000l\000i\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 129.2975 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 58.0776 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 129.2975 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 61.7407 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 129.2975 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 65.4038 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 129.2975 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 68.46 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 197.7575 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 129.2975 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 129.2975 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 123.1852 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 134.0 160.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 320.0 160.0 ] concat +0 J +1.0 M +newpath +-30.0 0.0 m +111.0242 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 111.0242 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 260.0 200.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -20.0094 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 239.9906 184.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 239.9906 184.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +[ 1.0 0.0 0.0 1.0 246.1029 184.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 107.6045 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 246.1029 184.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 111.2676 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 246.1029 184.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 246.1029 184.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 239.9906 184.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 260.0 200.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 460.0 200.0 ] concat +0 J +1.0 M +newpath +-28.9758 0.0 m +110.9372 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 110.9372 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 400.0 240.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -2.4204 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 397.5796 224.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 397.5796 224.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000P\000a\000y\000m\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 403.6919 224.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 73.3638 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 403.6919 224.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 77.0269 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 403.6919 224.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 403.6919 224.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 397.5796 224.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 400.0 240.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 100.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 661.0 100.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 365.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 365.5 230.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 661.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 230.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 661.0 230.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 161.092773 230.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 302.0 l +611.0 302.0 l +611.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Querypayment.png b/ADD/Images/Querypayment.png new file mode 100644 index 0000000..b318ae9 Binary files /dev/null and b/ADD/Images/Querypayment.png differ diff --git a/ADD/Images/Querypolicy.eps b/ADD/Images/Querypolicy.eps new file mode 100644 index 0000000..c9c4626 --- /dev/null +++ b/ADD/Images/Querypolicy.eps @@ -0,0 +1,1434 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 89 20 506 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:49:01 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 222 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 222.0 rf +0.0 0.0 0.0 RG +q +0 0 429 222 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 222.0 rf +0.0 0.0 429.0 222.0 rc +[ 1.0 0.0 0.0 1.0 -140.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +140.0 -40.0 m +569.0 -40.0 l +569.0 182.0 l +140.0 182.0 l +140.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +150.0 -30.0 m +483.0 -30.0 l +483.0 150.0 l +150.0 150.0 l +150.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 320.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +66.52635 0.5 m +66.52635 120.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +66.52635 0.5 m +66.52635 120.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +29.342285 13.5 l +S +[ 1.0 0.0 0.0 1.0 186.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 32.0098 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 186.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 35.3438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +77.649902 13.5 l +S +[ 1.0 0.0 0.0 1.0 221.3438 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 186.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 184.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -140.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 120.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 120.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -140.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 150.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +80.1914 0.5 m +80.1914 11.5 l +72.1914 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +80.1914 0.5 m +80.1914 11.5 l +72.1914 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000 \000p\000o\000l\000i\000c\000y) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -140.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 268.0 120.0 ] concat +0 J +1.0 M +newpath +-26.9717 0.0 m +118.0263 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 118.0263 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 128.0 160.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -20.4962 -17.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 107.5038 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 107.5038 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +[ 1.0 0.0 0.0 1.0 114.1718 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 117.3867 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 114.1718 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 121.3828 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 114.1718 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 114.1718 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 107.5038 143.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 128.0 160.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -140.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 150.0 60.0 ] concat +[ 1.0 0.0 0.0 1.0 -140.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 483.0 60.0 ] concat +[ 1.0 0.0 0.0 1.0 -140.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -140.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 150.0 150.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -140.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 222.0 l +429.0 222.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Querypolicy.png b/ADD/Images/Querypolicy.png new file mode 100644 index 0000000..c306e13 Binary files /dev/null and b/ADD/Images/Querypolicy.png differ diff --git a/ADD/Images/Queryrisk.eps b/ADD/Images/Queryrisk.eps new file mode 100644 index 0000000..21341fc --- /dev/null +++ b/ADD/Images/Queryrisk.eps @@ -0,0 +1,1434 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 108 20 487 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:49:08 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 202 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 202.0 rf +0.0 0.0 0.0 RG +q +0 0 429 202 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 202.0 rf +0.0 0.0 429.0 202.0 rc +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +30.0 -40.0 m +459.0 -40.0 l +459.0 162.0 l +30.0 162.0 l +30.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +40.0 -30.0 m +380.0 -30.0 l +380.0 130.0 l +40.0 130.0 l +40.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 250.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 94.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 94.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 21.0842 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +57.3315 0.5 l +57.3315 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +57.3315 0.5 l +57.3315 26.5 l +0.5 26.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k) show +Q +newpath +0.0 13.5 m +21.387695 13.5 l +S +[ 1.0 0.0 0.0 1.0 247.0842 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 21.3877 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 247.0842 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 24.4438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k) show +Q +newpath +0.0 13.5 m +21.387695 13.5 l +S +[ 1.0 0.0 0.0 1.0 271.528 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 247.0842 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 245.0842 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 241.0842 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 220.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +81.87795 0.5 m +81.87795 94.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +81.87795 0.5 m +81.87795 94.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +149.6929 0.5 l +149.6929 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +149.6929 0.5 l +149.6929 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +43.414550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 43.4146 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.4707 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +91.722167 13.5 l +S +[ 1.0 0.0 0.0 1.0 92.4707 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +68.1738 0.5 m +68.1738 11.5 l +60.1738 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +68.1738 0.5 m +68.1738 11.5 l +60.1738 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000 \000r\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 176.0 94.0 ] concat +0 J +1.0 M +newpath +-30.9035 0.0 m +124.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 124.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 146.0 134.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 14.1578 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 160.1578 118.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 160.1578 118.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 166.2701 118.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 51.3423 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 166.2701 118.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 55.0054 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 166.2701 118.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 166.2701 118.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 160.1578 118.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 146.0 134.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 50.0 ] concat +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 380.0 50.0 ] concat +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 130.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 202.0 l +429.0 202.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Queryrisk.png b/ADD/Images/Queryrisk.png new file mode 100644 index 0000000..9b09ee8 Binary files /dev/null and b/ADD/Images/Queryrisk.png differ diff --git a/ADD/Images/Removeclaim.eps b/ADD/Images/Removeclaim.eps new file mode 100644 index 0000000..c017050 --- /dev/null +++ b/ADD/Images/Removeclaim.eps @@ -0,0 +1,1532 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 83 20 512 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:49:28 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 229 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 229.0 rf +0.0 0.0 0.0 RG +q +0 0 429 229 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 229.0 rf +0.0 0.0 429.0 229.0 rc +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +260.0 -40.0 m +689.0 -40.0 l +689.0 189.0 l +260.0 189.0 l +260.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +270.0 -30.0 m +570.0 -30.0 l +570.0 157.0 l +270.0 157.0 l +270.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 300.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +66.52635 0.5 m +66.52635 127.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +66.52635 0.5 m +66.52635 127.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +131.5527 0.5 l +131.5527 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +29.342285 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 32.0098 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 35.3438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000o\000l\000i\000c\000y) show +Q +newpath +0.0 13.5 m +77.649902 13.5 l +S +[ 1.0 0.0 0.0 1.0 81.3438 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 440.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 127.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 127.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 14.3596 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +70.7808 0.5 l +70.7808 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +70.7808 0.5 l +70.7808 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000a\000i\000m) show +Q +newpath +0.0 13.5 m +28.112304 13.5 l +S +[ 1.0 0.0 0.0 1.0 200.3596 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 28.1123 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 200.3596 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.1685 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000a\000i\000m) show +Q +newpath +0.0 13.5 m +28.112304 13.5 l +S +[ 1.0 0.0 0.0 1.0 231.5281 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.3596 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 198.3596 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 194.3596 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 270.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +89.5195 0.5 m +89.5195 11.5 l +81.5195 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +89.5195 0.5 m +89.5195 11.5 l +81.5195 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000m\000o\000v\000e\000 \000c\000l\000a\000i\000m) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 394.0 87.0 ] concat +0 J +1.0 M +newpath +-32.9758 0.0 m +7.0242 0.0 l +7.0242 20.0 l +-32.9758 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -32.9758 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 134.0 127.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 8.0242 2.5 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 142.0242 129.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 142.0242 129.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000m\000o\000v\000e\000C\000l\000a\000i\000m) show +Q +[ 1.0 0.0 0.0 1.0 148.1365 129.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 69.0723 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 148.1365 129.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 72.7354 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 148.1365 129.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.1365 129.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0242 129.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 134.0 127.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 489.0 127.0 ] concat +0 J +1.0 M +newpath +-127.9758 0.0 m +1.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 1.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 229.0 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -100.1618 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 128.8382 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 128.8382 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000C\000l\000a\000i\000m) show +Q +[ 1.0 0.0 0.0 1.0 134.9505 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 59.9092 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 134.9505 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 63.5723 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 134.9505 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 134.9505 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 128.8382 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 229.0 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 270.0 63.5 ] concat +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 570.0 63.5 ] concat +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 420.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 420.0 157.0 ] concat +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 270.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 570.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 270.0 157.0 ] concat +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 570.0 157.0 ] concat +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 270.0 157.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -260.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 229.0 l +429.0 229.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Removeclaim.png b/ADD/Images/Removeclaim.png new file mode 100644 index 0000000..3317cb1 Binary files /dev/null and b/ADD/Images/Removeclaim.png differ diff --git a/ADD/Images/Removecrosssellopportunity.eps b/ADD/Images/Removecrosssellopportunity.eps new file mode 100644 index 0000000..f18a39d --- /dev/null +++ b/ADD/Images/Removecrosssellopportunity.eps @@ -0,0 +1,1491 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 137 20 458 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:49:44 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +525 209 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 525.0 209.0 rf +0.0 0.0 0.0 RG +q +0 0 525 209 rc +q +1.0 1.0 1.0 RG +0.0 0.0 525.0 209.0 rf +0.0 0.0 525.0 209.0 rc +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +30.0 -40.0 m +555.0 -40.0 l +555.0 169.0 l +30.0 169.0 l +30.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +40.0 -30.0 m +545.0 -30.0 l +545.0 137.0 l +40.0 137.0 l +40.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 360.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +77.5449 0.5 m +77.5449 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +77.5449 0.5 m +77.5449 107.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +153.5898 0.5 l +153.5898 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +153.5898 0.5 l +153.5898 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +newpath +0.0 13.5 m +48.307617 13.5 l +S +[ 1.0 0.0 0.0 1.0 336.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 52.6992 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 336.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.0332 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000i\000n\000g\000l\000e\000I\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +newpath +0.0 13.5 m +78.885253 13.5 l +S +[ 1.0 0.0 0.0 1.0 392.0332 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 336.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 334.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 330.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 330.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 107.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +174.2344 0.5 m +174.2344 11.5 l +166.2344 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +174.2344 0.5 m +174.2344 11.5 l +166.2344 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000m\000o\000v\000e\000 \000c\000r\000o\000s\000s\000 \000s\000e\000l\000l\000 \000o\000p\000p\000o\000r\000t\000u\000n\000i\000t\000y) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 159.0 67.0 ] concat +0 J +1.0 M +newpath +-30.1951 0.0 m +9.8049 0.0 l +9.8049 20.0 l +-30.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -30.1951 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 129.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 13.0283 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 129.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 357.0 107.0 ] concat +0 J +1.0 M +newpath +-228.195 0.0 m +80.0449 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 80.0449 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 327.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -81.2726 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 245.7274 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 245.7274 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 327.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 545.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 292.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 292.5 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 545.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 545.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 88.092773 137.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -30.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 209.0 l +525.0 209.0 l +525.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Removecrosssellopportunity.png b/ADD/Images/Removecrosssellopportunity.png new file mode 100644 index 0000000..8ef31ad Binary files /dev/null and b/ADD/Images/Removecrosssellopportunity.png differ diff --git a/ADD/Images/Removerepresentative.eps b/ADD/Images/Removerepresentative.eps new file mode 100644 index 0000000..ec141e1 --- /dev/null +++ b/ADD/Images/Removerepresentative.eps @@ -0,0 +1,1532 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 102 20 493 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:49:57 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 209 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 209.0 rf +0.0 0.0 0.0 RG +q +0 0 429 209 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 209.0 rf +0.0 0.0 429.0 209.0 rc +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +80.0 -40.0 m +509.0 -40.0 l +509.0 169.0 l +80.0 169.0 l +80.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +90.0 -30.0 m +487.0 -30.0 l +487.0 137.0 l +90.0 137.0 l +90.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 280.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +88.8799 0.5 m +88.8799 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +88.8799 0.5 m +88.8799 107.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +176.2598 0.5 l +176.2598 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +176.2598 0.5 l +176.2598 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000p\000r\000e\000s\000e\000n\000t\000a\000t\000i\000v\000e) show +Q +newpath +0.0 13.5 m +73.986816 13.5 l +S +[ 1.0 0.0 0.0 1.0 206.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.7129 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 206.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 84.0469 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000p\000r\000e\000s\000e\000n\000t\000a\000t\000i\000v\000e) show +Q +newpath +0.0 13.5 m +73.986816 13.5 l +S +[ 1.0 0.0 0.0 1.0 290.0469 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 206.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 204.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 120.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 107.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 14.3489 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +70.8022 0.5 l +70.8022 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +70.8022 0.5 l +70.8022 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t) show +Q +newpath +0.0 13.5 m +28.123046 13.5 l +S +[ 1.0 0.0 0.0 1.0 60.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 28.123 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 60.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.1792 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t) show +Q +newpath +0.0 13.5 m +28.123046 13.5 l +S +[ 1.0 0.0 0.0 1.0 91.5281 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 58.3489 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 54.3489 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +137.5605 0.5 m +137.5605 11.5 l +129.5605 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +137.5605 0.5 m +137.5605 11.5 l +129.5605 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000m\000o\000v\000e\000 \000r\000e\000p\000r\000e\000s\000e\000n\000t\000a\000t\000i\000v\000e) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 198.0 67.0 ] concat +0 J +1.0 M +newpath +-28.0 0.0 m +12.0 0.0 l +12.0 20.0 l +-28.0 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -28.0 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 118.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 13.0 2.5 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 131.0 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 131.0 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000m\000o\000v\000e\000R\000e\000p\000r\000e\000s\000e\000n\000t\000a\000t\000i\000v\000e) show +Q +[ 1.0 0.0 0.0 1.0 137.1123 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 114.9468 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 137.1123 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 118.6099 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 137.1123 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 137.1123 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 131.0 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 118.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 334.0 107.0 ] concat +0 J +1.0 M +newpath +-164.0 0.0 m +27.5149 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 27.5149 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 254.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -127.8537 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 126.1463 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 126.1463 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000R\000e\000p\000r\000e\000s\000e\000n\000t\000a\000t\000i\000v\000e) show +Q +[ 1.0 0.0 0.0 1.0 132.2586 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 105.7837 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 132.2586 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 109.4468 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 132.2586 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 132.2586 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 126.1463 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 254.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 487.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 288.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 288.5 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 487.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 487.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 90.0 137.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 209.0 l +429.0 209.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Removerepresentative.png b/ADD/Images/Removerepresentative.png new file mode 100644 index 0000000..5c59c39 Binary files /dev/null and b/ADD/Images/Removerepresentative.png differ diff --git a/ADD/Images/Removerisk.eps b/ADD/Images/Removerisk.eps new file mode 100644 index 0000000..c32372a --- /dev/null +++ b/ADD/Images/Removerisk.eps @@ -0,0 +1,1558 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 102 20 493 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:50:12 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 209 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 209.0 rf +0.0 0.0 0.0 RG +q +0 0 429 209 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 209.0 rf +0.0 0.0 429.0 209.0 rc +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +200.0 -40.0 m +629.0 -40.0 l +629.0 169.0 l +200.0 169.0 l +200.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +210.0 -30.0 m +610.0 -30.0 l +610.0 137.0 l +210.0 137.0 l +210.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 480.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 107.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 21.0842 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +57.3315 0.5 l +57.3315 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +57.3315 0.5 l +57.3315 26.5 l +0.5 26.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k) show +Q +newpath +0.0 13.5 m +21.387695 13.5 l +S +[ 1.0 0.0 0.0 1.0 307.0842 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 21.3877 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 307.0842 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 24.4438 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000i\000s\000k) show +Q +newpath +0.0 13.5 m +21.387695 13.5 l +S +[ 1.0 0.0 0.0 1.0 331.528 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 307.0842 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 305.0842 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 301.0842 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 280.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 240.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +81.87795 0.5 m +81.87795 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +81.87795 0.5 m +81.87795 107.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +162.2559 0.5 l +162.2559 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +162.2559 0.5 l +162.2559 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +43.414550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e\000P\000r\000o\000p\000o\000s\000a\000l) show +Q +newpath +0.0 13.5 m +91.722167 13.5 l +S +[ 1.0 0.0 0.0 1.0 96.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 210.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +80.1797 0.5 m +80.1797 11.5 l +72.1797 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +80.1797 0.5 m +80.1797 11.5 l +72.1797 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000m\000o\000v\000e\000 \000r\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 335.0 67.0 ] concat +0 J +1.0 M +newpath +-17.7912 0.0 m +22.2088 0.0 l +22.2088 20.0 l +-17.7912 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -17.7912 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 135.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 21.0965 2.5 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 156.0965 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 156.0965 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000m\000o\000v\000e\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 162.2088 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 62.3477 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 162.2088 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 66.0107 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 162.2088 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 162.2088 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 156.0965 109.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 135.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 484.0 107.0 ] concat +0 J +1.0 M +newpath +-166.7912 0.0 m +46.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 46.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 284.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -99.0414 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 184.9586 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 184.9586 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000D\000e\000l\000e\000t\000e\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 191.0709 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.1846 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 191.0709 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.8477 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 191.0709 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 60.5107 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +[ 1.0 0.0 0.0 1.0 191.0709 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 63.5669 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 254.6378 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 191.0709 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 191.0709 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 184.9586 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 284.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 210.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 610.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 410.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 410.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 210.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 610.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 210.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 610.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 210.0 137.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -200.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 209.0 l +429.0 209.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Removerisk.png b/ADD/Images/Removerisk.png new file mode 100644 index 0000000..7a40173 Binary files /dev/null and b/ADD/Images/Removerisk.png differ diff --git a/ADD/Images/Removeupsellopportunity.eps b/ADD/Images/Removeupsellopportunity.eps new file mode 100644 index 0000000..a723395 --- /dev/null +++ b/ADD/Images/Removeupsellopportunity.eps @@ -0,0 +1,1491 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 131 20 464 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:50:22 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +505 209 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 505.0 209.0 rf +0.0 0.0 0.0 RG +q +0 0 505 209 rc +q +1.0 1.0 1.0 RG +0.0 0.0 505.0 209.0 rf +0.0 0.0 505.0 209.0 rc +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +60.0 -40.0 m +565.0 -40.0 l +565.0 169.0 l +60.0 169.0 l +60.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +70.0 -30.0 m +555.0 -30.0 l +555.0 137.0 l +70.0 137.0 l +70.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 370.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +77.5449 0.5 m +77.5449 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +77.5449 0.5 m +77.5449 107.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +153.5898 0.5 l +153.5898 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +153.5898 0.5 l +153.5898 27.5 l +0.5 27.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000I\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +newpath +0.0 13.5 m +48.307617 13.5 l +S +[ 1.0 0.0 0.0 1.0 316.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 52.6992 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 316.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.0332 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000i\000n\000g\000l\000e\000I\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +newpath +0.0 13.5 m +78.885253 13.5 l +S +[ 1.0 0.0 0.0 1.0 372.0332 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 316.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 314.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 310.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 310.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 100.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +61.5283 0.5 m +61.5283 107.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +61.5283 0.5 m +61.5283 107.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +121.5566 0.5 l +121.5566 27.5 l +0.5 27.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.3613 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.6953 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 102.6953 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +158.9121 0.5 m +158.9121 11.5 l +150.9121 19.5 l +0.5 19.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +158.9121 0.5 m +158.9121 11.5 l +150.9121 19.5 l +0.5 19.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000R\000e\000m\000o\000v\000e\000 \000u\000p\000 \000s\000e\000l\000l\000 \000o\000p\000p\000o\000r\000t\000u\000n\000i\000t\000y) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 181.0 67.0 ] concat +0 J +1.0 M +newpath +-22.1951 0.0 m +17.8049 0.0 l +17.8049 20.0 l +-22.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -22.1951 20.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 121.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 21.0283 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.334 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.668 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000h\000e\000c\000k\000A\000u\000t\000h\000o\000r\000i\000z\000a\000t\000i\000o\000n) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 95.3853 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 99.0483 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.6963 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0283 109.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 121.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 372.0 107.0 ] concat +0 J +1.0 M +newpath +-213.195 0.0 m +75.0449 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 75.0449 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 312.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -76.2726 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 235.7274 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 235.7274 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 312.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 555.0 53.5 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 312.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 312.5 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 555.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 555.0 137.0 ] concat +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 108.092773 137.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 209.0 l +505.0 209.0 l +505.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Removeupsellopportunity.png b/ADD/Images/Removeupsellopportunity.png new file mode 100644 index 0000000..1bf2e5e Binary files /dev/null and b/ADD/Images/Removeupsellopportunity.png differ diff --git a/ADD/Images/Searchcallerdetails.eps b/ADD/Images/Searchcallerdetails.eps new file mode 100644 index 0000000..fa0db4a --- /dev/null +++ b/ADD/Images/Searchcallerdetails.eps @@ -0,0 +1,1434 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 109 20 486 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:56:28 uur CEST +%%LanguageLevel: 3 +%%EndComments +%%BeginProlog +100 dict dup begin + +% +% File: org/freehep/graphicsio.ps/PSProlog.txt +% Author: Charles Loomis +% + +% Redefinitions which save some space in the output file. These are also +% the same as the PDF operators. +/q {gsave} def +/Q {grestore} def + +/n {newpath} def +/m {moveto} def +/l {lineto} def +/c {curveto} def +/h {closepath} def + +/re {4 -2 roll moveto + dup 0 exch rlineto exch 0 rlineto + neg 0 exch rlineto closepath} def + +/f {fill} def +/f* {eofill} def +/F {gsave vg&FC fill grestore} def +/F* {gsave vg&FC eofill grestore} def + +/s {closepath stroke} def +/S {stroke} def + +/b {closepath gsave vg&FC fill grestore + gsave stroke grestore newpath} def +/B {gsave vg&FC fill grestore gsave stroke grestore newpath} def +/b* {closepath gsave vg&FC eofill grestore + gsave stroke grestore newpath} def +/B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def + +/g {1 array astore /vg&fcolor exch def} def +/G {setgray} def +/k {4 array astore /vg&fcolor exch def} def +/K {setcmykcolor} def +/rg {3 array astore /vg&fcolor exch def} def +/RG {setrgbcolor} def + +% Initialize the fill color. +0 0 0 rg + +/vg&FC {mark vg&fcolor aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/vg&DFC {/vg&fcolor exch def} def + +/vg&C {mark exch aload pop + counttomark 1 eq {G} if + counttomark 3 eq {RG} if + counttomark 4 eq {K} if + cleartomark } def + +/w {setlinewidth} def +/j {setlinejoin} def +/J {setlinecap} def +/M {setmiterlimit} def +/d {setdash} def +/i {setflat} def + +/W {clip} def +/W* {eoclip} def + +% Setup the default graphics state. +% (black; 1 pt. linewidth; miter join; butt-ends; solid) +/defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def + +% Emulation of the rectangle operators for PostScript implementations +% which do not implement all Level 2 features. This is an INCOMPLETE +% emulation; only the "x y width height rect..." form is emulated. +/*rf {gsave newpath re fill grestore} def +/*rs {gsave newpath re stroke grestore} def +/*rc {newpath re clip} def +/rf /rectfill where {pop /rectfill}{/*rf} ifelse load def +/rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def +/rc /rectclip where {pop /rectclip}{/*rc} ifelse load def + +% Emulation of the selectfont operator. This includes a 20% increase in +% the fontsize which is necessary to get sizes similar to the Java fonts. +/*sf {exch findfont exch + dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def +/sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def + +% Special version of stroke which allows the dash pattern to continue +% across path segments. (This may be needed for PostScript although +% modern printers seem to do this correctly.) +/vg&stroke { + currentdash pop length 0 eq + {stroke} + { + currentdash /vg&doffset exch def pop + flattenpath + {m vg&resetdash} + {2 copy + currentpoint + 3 -1 roll sub dup mul + 3 1 roll sub dup mul + add sqrt + 3 1 roll l + currentdash 3 -1 roll add setdash} + {} + {h vg&resetdash} + pathforall + stroke + vg&resetdash + } ifelse +} def +/vg&resetdash {currentdash pop vg&doffset setdash} def + +% Initialize variables for safety. +/delta 0 def +/xv 0 def /yv 0 def /width 0 def /height 0 def + +% Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page. +/pw 595 def /ph 791 def /po true def /ftp false def + +% Initialize margins to 20 points. +/ml 20 def /mr 20 def /mt 20 def /mb 20 def + +% Temporary matrices. +/smatrix 0 def /nmatrix 0 def + +% set page size (usage: setpagesize) +/setpagesize {/ph exch def /pw exch def} def + +% set page orientation (usage: portrait or landscape) +/portrait {/po true def} def +/landscape {/po false def} def + +% force natural size for image (usage: naturalsize) +/naturalsize {/ftp false def} def + +% resize image to fill page (usage: fittopage) +/fittopage {/ftp true def} def + +% set margins of the page (usage: setmargins) +/setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def + +% set the graphic's size (usage: setsize) +/setsize {/gh exch def /gw exch def} def + +% set the graphic's origin (usage: setorigin) +/setorigin {/gy exch def /gx exch def} def + +% calculate image center +/imagecenter {pw ml sub mr sub 2 div ml add + ph mt sub mb sub 2 div mb add} def + +% calculate the necessary scaling +/imagescale {po {gw}{gh} ifelse pw ml sub mr sub div + po {gh}{gw} ifelse ph mt sub mb sub div + 2 copy lt {exch} if pop + ftp not {1 2 copy lt {exch} if pop} if + 1 exch div /sfactor exch def + /gw gw sfactor mul def /gh gh sfactor mul def} def + +% calculate image origin +/imageorigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def + +% calculate the clipping origin +/cliporigin {pw ml sub mr sub 2 div ml add + po {gw}{gh} ifelse 2 div sub floor + ph mt sub mb sub 2 div mb add + po {gh}{gw} ifelse 2 div sub floor} def + +% Set the clipping region to the bounding box. +/cliptobounds {cliporigin po {gw}{gh} ifelse 1 add + po {gh}{gw} ifelse 1 add rc} def + +% set the base transformation matrix (usage: setbasematrix) +/setbasematrix {imageorigin translate + po {0}{90} ifelse rotate + sfactor sfactor neg scale + /defaultmatrix matrix currentmatrix def} def + +% The lower-right bias in drawing 1 pt. wide lines. +/bias {q 0.5 0.5 translate} def +/unbias {Q} def + +% Draw a line. (x0 y0 x1 y1 line) +/L {bias n m l S unbias} def + +% Polyline primitive. +/polyline {n m 1 exch 1 exch + {pop currentfile token pop currentfile token pop l} for + } def + +% Draw a polyline (n x0 y0 OPL x1 y1 x2 y2 ... ... xn yn) +/OPL {bias polyline S unbias} def + +% Draw a closed polyline (n x0 y0 CPL x1 y1 x2 y2 ... ... xn yn) +/CPL {bias polyline s unbias} def + +% Draw a filled polyline (n x0 y0 FPL x1 y1 x2 y2 ... ... xn yn) +/FPL {polyline h f*} def + +% Draw an oval. (x y w h OVL) +/OVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width currentlinewidth sub 2 div + height currentlinewidth sub 2 div neg + scale n 0 0 1 5 -2 roll arc + smatrix setmatrix S} def + +% Draw a filled oval. (x y w h FOVL) +/FOVL {matrix currentmatrix /smatrix exch def + /height exch def /width exch def + /yv exch def /xv exch def + width 2 div xv add height 2 div yv add translate + width 2 div + height 2 div neg + scale n 0 0 m 0 0 1 5 -2 roll arc + h smatrix setmatrix f} def + +% Draw a rounded rectangle. (x y w h arcwidth archeight RREC) +/RREC {matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + s} def + +% Draw a filled rounded rectangle. (x y w h arcwidth archeight FRREC) +/FRREC{matrix currentmatrix /smatrix exch def + 2 div /ah exch def + 2 div /aw exch def + /height exch def /width exch def + /yv exch def /xv exch def + aw ah scale matrix + currentmatrix /nmatrix exch def + smatrix setmatrix + n xv width add aw sub yv m + nmatrix setmatrix + currentpoint exch 1 add exch + currentpoint 1 add exch 1 add exch + 1 arct smatrix setmatrix + xv width add yv height add ah sub l + nmatrix setmatrix + currentpoint 1 add + currentpoint exch 1 sub exch 1 add + 1 arct smatrix setmatrix + xv aw add yv height add l + nmatrix setmatrix + currentpoint exch 1 sub exch + currentpoint exch 1 sub exch 1 sub + 1 arct smatrix setmatrix + xv yv ah add l + nmatrix setmatrix + currentpoint 1 sub + currentpoint exch 1 add exch 1 sub + 1 arct smatrix setmatrix + h f} def + +% Draw a string. (string x y STR) +/STR {q m 1 -1 scale recshow Q} def + +% Define basic plot symbols. +/xys {/siz exch def /yv exch def /xv exch def} def +/hline {xys n xv siz 2. div sub yv m siz 0 rlineto S} def +/vline {xys n xv yv siz 2. div sub m 0 siz rlineto S} def +/plus {xys n xv yv siz 2. div sub m 0 siz rlineto + xv siz 2. div sub yv m siz 0 rlineto S} def +/dot {n 2. div 0 360 arc s} def +/fdot {n 2. div 0 360 arc h f} def +/box {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rs} def +/fbox {xys n xv siz 2 sqrt div 2 div sub yv siz 2 sqrt div 2 div sub + siz 2 sqrt div dup rf} def +/tridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto s} def +/ftridn{xys n xv yv siz 3 sqrt div add m + siz 2. div neg 3 sqrt 2. div siz mul neg rlineto + siz 0 rlineto h f} def + +% Symbols defined in terms of the others. +/star {3 copy cross plus} def +/cross {xys q xv yv translate 45 rotate 0 0 siz plus Q} def +/diamond {xys q xv yv translate 45 rotate 0 0 siz box Q} def +/fdiamond {xys q xv yv translate 45 rotate 0 0 siz fbox Q} def +/triup {xys q xv yv translate 180 rotate 0 0 siz tridn Q} def +/ftriup {xys q xv yv translate 180 rotate 0 0 siz ftridn Q} def + +% Define the composite fonts used to print Unicode strings. +% Undefine particular values in an encoding array. +/vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def +/vg&redef { {3 -1 roll dup 4 2 roll put} forall } def + +% usage: key encoding basefontname vg&newbasefont font +/vg&newbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + currentdict + end +definefont +} def + +% usage: key encoding basefontname vg&newskewedbasefont font +/vg&newskewedbasefont { +findfont dup length dict copy + begin + currentdict /FID undef + /Encoding exch def + dup /FontName exch def + exch FontMatrix exch matrix concatmatrix /FontMatrix exch def + currentdict + end +definefont +} def + +% usage: basekey suffix vg&nconcat name +/vg&nconcat { + 2 {dup length string cvs exch} repeat + dup length 3 -1 roll dup length 3 -1 roll add string + dup 0 4 -1 roll dup length 5 1 roll putinterval + dup 4 -2 roll exch putinterval cvn +} def + +%usage: fontname vg&skewmatrix matrix +/vg&skewmatrix { +findfont dup /FontInfo known + { + /FontInfo get dup /ItalicAngle known + { + [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ] + } + {pop matrix} ifelse + } + {pop matrix} ifelse +} def + +% usage: newfontname basefontname vg&newcompositefont -- +/vg&newcompositefont { +/vg&fstyle exch def +/vg&bfont exch def +/vg&fname exch def +<< +/FontStyleBits vg&fstyle +/FontType 0 +/FontMatrix matrix +/FontName vg&fname +/FMapType 2 +/Encoding [ 0 1 255 {pop 6} for ] + dup 16#00 0 put % Latin + dup 16#03 1 put % Greek + dup 16#20 2 put % Punctuation + dup 16#21 3 put % Arrows + dup 16#22 4 put % MathOps + dup 16#27 5 put % Dingbats + +/FDepVector [ +vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding +vg&bfont vg&newbasefont + +vg&bfont vg&skewmatrix +vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding +/Symbol vg&newskewedbasefont + +vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding +vg&bfont vg&newbasefont + +/Arrows-UC findfont +/MathOps-UC findfont +/Dingbats-UC findfont +/Undefined-UC findfont ] +>> +vg&fname exch definefont pop +} def + +% Null encoding vector (all elements set to .notdef) +/NullEncoding [ 256 {/.notdef} repeat ] def + +% Unicode Latin encoding (unicode codes \u0000-\u00ff) +/UCLatinEncoding + ISOLatin1Encoding dup length array copy + dup 16#60 /grave put + [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96 + 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f + ] vg&undef + def + +% Unicode Greek encoding (unicode codes \u0370-\u03ff) +/UCGreekEncoding + NullEncoding dup length array copy + << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta + 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta + 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu + 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi + 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon + 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega + 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta + 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta + 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu + 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi + 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau + 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi + 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1 + 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1 + >> vg&redef + def + +% Unicode punctuation encoding (unicode codes \u2000-\u206f) +/UCPunctuationEncoding + NullEncoding dup length array copy + << 16#10 /hyphen 16#11 /hyphen 16#12 /endash + 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright + 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft + 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl + 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet + 16#24 /period 16#26 /ellipsis 16#27 /periodcentered + 16#30 /perthousand 16#44 /fraction + 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior + 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior + 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior + 16#7e /parenrightsuperior + 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior + 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior + 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior + 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior + 16#8e /parenrightinferior + >> vg&redef + def + +% Unicode mathematical operators encoding (unicode codes \u2200-\u22ff) +/UCMathOpsEncoding + NullEncoding dup length array copy + << 16#00 /universal 16#02 /partialdiff 16#03 /existential + 16#05 /emptyset 16#06 /Delta 16#07 /gradient + 16#08 /element 16#09 /notelement 16#0b /suchthat + 16#0f /product 16#11 /summation 16#12 /minus + 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet + 16#1a /radical 16#1d /proportional 16#1e /infinity + 16#20 /angle 16#23 /bar 16#27 /logicaland + 16#28 /logicalor 16#29 /intersection 16#2a /union + 16#2b /integral 16#34 /therefore 16#36 /colon + 16#3c /similar 16#45 /congruent 16#48 /approxequal + 16#60 /notequal 16#61 /equivalence 16#64 /lessequal + 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset + 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus + 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential + 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection + 16#c3 /union 16#c4 /diamond 16#c5 /dotmath + >> vg&redef + def + +% Unicode arrows encoding (unicode codes \u2190-\u21ff) +% Also includes those "Letterlike" unicode characters +% which are available in the symbol font. (unicode codes \u2100-\u214f) +/UCArrowsEncoding + NullEncoding dup length array copy + << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif + 16#35 /aleph + 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright + 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft + 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown + 16#d4 /arrowdblboth + >> vg&redef + def + +/ZapfDingbats findfont /Encoding get +dup length array copy /UCDingbatsEncoding exch def +16#20 1 16#7f { + dup 16#20 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +16#a0 1 16#ff { + dup 16#40 sub exch + UCDingbatsEncoding exch get + UCDingbatsEncoding 3 1 roll put +} for +UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef +[ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f + 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72 + 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf +] vg&undef pop + +% Define the base fonts which don't change. +/Undefined-UC NullEncoding /Helvetica vg&newbasefont pop +/MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop +/Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop +/Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop + +% Make the SansSerif composite fonts. +/SansSerif /Helvetica 16#00 vg&newcompositefont +/SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Serif composite fonts. +/Serif /Times-Roman 16#00 vg&newcompositefont +/Serif-Bold /Times-Bold 16#01 vg&newcompositefont +/Serif-Italic /Times-Italic 16#02 vg&newcompositefont +/Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont + +% Make the Monospaced composite fonts. +/Monospaced /Courier 16#00 vg&newcompositefont +/Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont +/Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + +% Make the Dialog composite fonts. +/Dialog /Helvetica 16#00 vg&newcompositefont +/Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the DialogInput composite fonts. +/DialogInput /Helvetica 16#00 vg&newcompositefont +/DialogInput-Bold /Helvetica-Bold 16#01 vg&newcompositefont +/DialogInput-Italic /Helvetica-Oblique 16#02 vg&newcompositefont +/DialogInput-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont + +% Make the Typewriter composite fonts (JDK 1.1 only). +/Typewriter /Courier 16#00 vg&newcompositefont +/Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont +/Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont +/Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont + + +/cfontH { + dup /fontsize exch def /SansSerif exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHB { + dup /fontsize exch def /SansSerif-Bold exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHI { + dup /fontsize exch def /SansSerif-Italic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def +/cfontHBI { + dup /fontsize exch def /SansSerif-BoldItalic exch sf + /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def +} def + +/cfontT { + dup /fontsize exch def /Serif exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTB { + dup /fontsize exch def /Serif-Bold exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTI { + dup /fontsize exch def /Serif-Italic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def +/cfontTBI { + dup /fontsize exch def /Serif-BoldItalic exch sf + /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def +} def + +/cfontC { + dup /fontsize exch def /Typewriter exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCB { + dup /fontsize exch def /Typewriter-Bold exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCI { + dup /fontsize exch def /Typewriter-Italic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def +/cfontCBI { + dup /fontsize exch def /Typewriter-BoldItalic exch sf + /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def +} def + +% Darken or lighten the current color. +/darken {0.7 exch exp 3 copy + q 4 -1 roll vg&C + currentrgbcolor 3 {4 -2 roll mul} repeat + 3 array astore Q} def + +/displayColorMap +<< /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00] + /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00] + /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00] + /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/printColorMap +<< /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33] + /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00] + /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00] + /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67] + /Cw [1 ] /Cgrl [0.75] + /Cgr [0.50] /Cgrd [0.25] + /Ck [0 ] + /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33] + /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00] + /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00] + /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67] + /CGw [1 ] /CGgrl [0.75] + /CGgr [0.50] /CGgrd [0.25] + /CGk [0 ] + /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33] + /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00] + /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00] + /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67] + /CIw [1 ] /CIgrl [0.75] + /CIgr [0.50] /CIgrd [0.25] + /CIk [0 ] +>> def + +/grayColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [0.75] /CGg [1 ] + /CGb [0.50] /CGc [0.75] + /CGm [0.50] /CGy [1 ] + /CGo [0.75] /CGp [1 ] + /CGw [0 ] /CGgrl [0.25] + /CGgr [0.50] /CGgrd [0.75] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +/bwColorMap +<< /Cr [0 ] /Cg [0 ] + /Cb [0 ] /Cc [0 ] + /Cm [0 ] /Cy [0 ] + /Co [0 ] /Cp [0 ] + /Cw [0 ] /Cgrl [0 ] + /Cgr [0 ] /Cgrd [0 ] + /Ck [0 ] + /CGr [1 ] /CGg [1 ] + /CGb [1 ] /CGc [1 ] + /CGm [1 ] /CGy [1 ] + /CGo [1 ] /CGp [1 ] + /CGw [0 ] /CGgrl [1 ] + /CGgr [1 ] /CGgrd [1 ] + /CGk [1 ] + /CIr [1 ] /CIg [1 ] + /CIb [1 ] /CIc [1 ] + /CIm [1 ] /CIy [1 ] + /CIo [1 ] /CIp [1 ] + /CIw [1 ] /CIgrl [1 ] + /CIgr [1 ] /CIgrd [1 ] + /CIk [1 ] +>> def + +% +% The following routines handle the alignment of and printing of +% tagged strings. +% + +% Predefine the bounding box values. +/bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def + +% This routine pops the first unicode character off of a string and returns +% the remainder of the string, the character code of first character, +% and a "true" if the string was non-zero length. +% popfirst +% popfirst +/popfirst { + dup length 1 gt + {dup 0 get /vg&fbyte exch def + dup 1 get /vg&cbyte exch def + dup length 2 sub 2 exch getinterval true} + {pop false} ifelse +} def + +% This routine shows a single unicode character given the font and +% character codes. +% unicharshow -- +/unicharshow { + 2 string + dup 0 5 -1 roll put + dup 1 4 -1 roll put + internalshow +} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and showing the string for recshow. +% internalshow -- +/internalshow {show} def + +% This is an internal routine to alternate between determining the +% bounding box for stringsize and stroking various ornaments. +% internalstroke -- +/internalstroke {S} def + +% Sets up internalshow to use the null device to determine string size. +% -- nullinternalshow -- +/nullinternalshow {/internalshow {false charpath flattenpath + pathbbox updatebbox} def} def + +% Sets up internalstroke to use the null device to determine string size. +% -- nullinternalstroke -- +/nullinternalstroke { + /internalstroke {flattenpath pathbbox updatebbox} def} def + +% This routine tests to see if the character code matches the first +% character of a string. +% testchar +/testchar {exch dup 3 -1 roll 0 get eq} def + +% Raise the text baseline for superscripts. +% -- raise -- +/raise { + 0 fontsize 2 div rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-raise the text baseline for superscripts. +% -- unraise -- +/unraise { + /fontsize fontsize 1.5 mul def + 0 fontsize 2 div neg rmoveto +} def + +% Lower the text baseline for subscripts. +% -- lower -- +/lower { + 0 fontsize 3 div neg rmoveto + /fontsize fontsize 2 mul 3 div def + currentfont /FontName get fontsize sf +} def + +% Un-lower the text baseline for subscripts. +% -- unlower -- +/unlower { + /fontsize fontsize 1.5 mul def + 0 fontsize 3 div rmoveto +} def + +% Compare the top two elements on the stack and leave only the +% larger one. +/maxval {2 copy gt {pop} {exch pop} ifelse} def + +% Tokenize a string. Do not use the usual PostScript token because +% parentheses will not be interpreted correctly because of rescanning +% of the string. +/vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def +0 2 vg&string length 2 sub { + dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or + dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse + /vg&level exch vg&level add def + vg&level 0 eq {/vg&index exch def exit} if pop +} for +vg&index 0 ge { + vg&string vg&index 2 add dup vg&string length exch sub getinterval + vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse + true} +{false} ifelse +} bind def + +% Recursively show an unicode string. +% recshow -- +/recshow { + popfirst + { + % Test to see if this is a string attribute. + vg&fbyte 16#f0 and 16#e0 eq + { + q + + % Font style. + currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse + vg&cbyte or vg&fontstyles exch get fontsize exch exec + + vg&token pop recshow currentpoint Q m recshow + } + { + vg&fbyte 16#F8 and 16#F0 eq { + + % Superscript and/or subscript. + vg&cbyte 16#00 eq { + vg&token pop exch vg&token pop 3 -1 roll + q raise recshow unraise currentpoint pop Q exch + q lower recshow unlower currentpoint pop Q + maxval currentpoint exch pop m recshow } if + + % Strikeout. + vg&cbyte 16#01 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll fontsize 3 div add moveto + fontsize 3 div add lineto internalstroke Q + recshow} if + + % Underline. + vg&cbyte 16#02 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dashed underline. + vg&cbyte 16#03 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Dotted underline. + vg&cbyte 16#04 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 1 J [ 0 vg&uthick 3 mul] 0 d + vg&underline vg&uthick w + currentpoint 4 -2 roll vg&uoffset add moveto + vg&uoffset add lineto internalstroke Q + recshow} if + + % Thick underline. + vg&cbyte 16#05 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Gray thick underline. + vg&cbyte 16#06 eq { + vg&token pop currentpoint 3 -1 roll recshow + q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray + currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto + vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q + recshow} if + + % Overbar. + vg&cbyte 16#07 eq { + vg&token pop dup stringsize relative 4 1 roll pop pop exch + 3 -1 roll recshow + q 0 J vg&underline vg&uthick w + vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q + recshow} if + } + { + vg&fbyte vg&cbyte unicharshow recshow + } ifelse + } ifelse + } if +} def + +% Get the underline position and thickness from the current font. +/vg&underline { + +currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if +dup dup /FontInfo known { + /FontInfo get dup + dup /UnderlinePosition known { + /UnderlinePosition get /vg&uoffset exch def + } + { + pop /vg&uoffset 0 def + } ifelse + dup /UnderlineThickness known { + /UnderlineThickness get /vg&uthick exch def + } + { + pop /vg&uthick 0 def + } ifelse +} +{ + pop /vg&uoffset 0 def /vg&uthick 0 def +} ifelse +/FontMatrix get +currentfont dup /FontType get 0 eq +{/FontMatrix get matrix concatmatrix}{pop} ifelse +dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop +0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop +} def + +% Make a frame with the coordinates on the stack. +% frame -- +/frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def + +% Resets the accumulated bounding box to a degenerate box at the +% current point. +% -- resetbbox -- +/resetbbox { + currentpoint 2 copy + /bbury exch def + /bburx exch def + /bblly exch def + /bbllx exch def +} def + +% Update the accumulated bounding box. +% updatebbox -- +/updatebbox { + dup bbury gt {/bbury exch def} {pop} ifelse + dup bburx gt {/bburx exch def} {pop} ifelse + dup bblly lt {/bblly exch def} {pop} ifelse + dup bbllx lt {/bbllx exch def} {pop} ifelse +} def + +% Set the bounding box to the values on the stack. +% updatebbox -- +/restorebbox { + /bbury exch def /bburx exch def /bblly exch def /bbllx exch def +} def + +% Push the accumulated bounding box onto the stack. +% -- pushbbox +/pushbbox {bbllx bblly bburx bbury} def + +% Make the relative bounding box relative to the currentpoint. +% inflate +/inflate { + 2 {fontsize 0.2 mul add 4 1 roll} repeat + 2 {fontsize 0.2 mul sub 4 1 roll} repeat +} def + +% Make the relative bounding box relative to the currentpoint. +% relative +/relative { + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll + currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll +} def + +% Returns the size of a string appropriate for recshow. +% stringsize +/stringsize { + pushbbox /internalshow load /internalstroke load 7 -1 roll + q + nulldevice 0 0 m + nullinternalshow nullinternalstroke + resetbbox + recshow + /internalstroke exch def /internalshow exch def + pushbbox 8 -4 roll restorebbox + Q +} def + +% Calculate values for string positioning. +/calcval {4 copy + 3 -1 roll sub /widy exch def sub neg /widx exch def + pop pop /dy exch def /dx exch def} def + +% Utilities to position a string. +% First letter (U=upper, C=center, B=baseline, L=lower) +% Second letter (L=left, C=center, R=right) +/align [ +{calcval dx neg widy dy add neg rmoveto} % UL +{calcval dx neg widy 2 div dy add neg rmoveto} % CL +{calcval dx neg 0 rmoveto} % BL +{calcval dx neg dy neg rmoveto} % LL +{calcval widx dx add neg widy dy add neg rmoveto} % UR +{calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR +{calcval widx dx add neg 0 rmoveto} % BR +{calcval widx dx add neg dy neg rmoveto} % LR +{calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC +{calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC +{calcval widx 2 div dx add neg 0 rmoveto} % BC +{calcval widx 2 div dx add neg dy neg rmoveto} % LC +] def + +/vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec + q inflate relative frame exch exec Q recshow Q} def + +end /procDict exch def +%%EndProlog + +%%BeginSetup +save +procDict begin +printColorMap begin +595 842 setpagesize +20 20 20 20 setmargins +0 0 setorigin +429 201 setsize +fittopage +landscape +imagescale +cliptobounds +setbasematrix +/Helvetica 10 sf +defaultGraphicsState +%%EndSetup + +0.0 0.0 0.0 RG +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +1.0 w +2 J +0 j +10.0 M +[ ] 0.0 d +1.0 1.0 1.0 RG +0.0 0.0 429.0 201.0 rf +0.0 0.0 0.0 RG +q +0 0 429 201 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 201.0 rf +0.0 0.0 429.0 201.0 rc +[ 1.0 0.0 0.0 1.0 -110.0 39.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +110.0 -39.0 m +539.0 -39.0 l +539.0 162.0 l +110.0 162.0 l +110.0 -39.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +120.0 -29.0 m +420.0 -29.0 l +420.0 130.0 l +120.0 130.0 l +120.0 -29.0 l +h +S +[ 1.0 0.0 0.0 1.0 290.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 87.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +50.5 0.5 m +50.5 87.5 l +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 14.3489 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +70.8022 0.5 l +70.8022 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +70.8022 0.5 l +70.8022 26.5 l +0.5 26.5 l +h +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +0.501961 0.501961 0.501961 RG +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 0.0 0.0 RG +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t) show +Q +newpath +0.0 13.5 m +28.123046 13.5 l +S +[ 1.0 0.0 0.0 1.0 200.3489 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 28.123 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 200.3489 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.1792 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000C\000l\000i\000e\000n\000t) show +Q +newpath +0.0 13.5 m +28.123046 13.5 l +S +[ 1.0 0.0 0.0 1.0 231.5281 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 200.3489 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 198.3489 63.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 194.3489 59.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 180.0 59.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -110.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 150.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +56.94265 0.5 m +56.94265 87.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +56.94265 0.5 m +56.94265 87.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +112.3853 0.5 l +112.3853 26.5 l +0.5 26.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +0.5 0.5 m +112.3853 0.5 l +112.3853 26.5 l +0.5 26.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 4.0 ] concat +[ 1.0 0.0 0.0 1.0 2.0 2.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 48.9146 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000:) show +Q +newpath +0.0 13.5 m +3.056152 13.5 l +S +[ 1.0 0.0 0.0 1.0 46.0 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 51.9707 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000E\000m\000p\000l\000o\000y\000e\000e) show +Q +newpath +0.0 13.5 m +48.914550 13.5 l +S +[ 1.0 0.0 0.0 1.0 97.9707 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 46.0 65.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.0 63.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 59.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.0 59.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -110.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 120.0 -29.0 ] concat +1.0 1.0 1.0 RG +newpath +112.5483 0.5 m +112.5483 10.5 l +104.5483 18.5 l +0.5 18.5 l +0.5 0.5 l +h +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +112.5483 0.5 m +112.5483 10.5 l +104.5483 18.5 l +0.5 18.5 l +0.5 0.5 l +h +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 4.0 2.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000S\000e\000a\000r\000c\000h\000 \000c\000a\000l\000l\000e\000r\000 \000d\000e\000t\000a\000i\000l\000s) show +Q +[ 1.0 0.0 0.0 1.0 10.0 10.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -110.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 236.0 87.0 ] concat +0 J +1.0 M +newpath +-29.557349 0.0 m +104.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 104.0 0.0 ] concat +newpath +10.0 5.0 m +0.0 0.0 l +10.0 -5.0 l +S +[ 1.0 0.0 0.0 1.0 126.0 126.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1.4633 -16.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000 ) show +Q +[ 1.0 0.0 0.0 1.0 127.4633 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.0562 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif-Bold findfont 11.0 scalefont setfont +(\000.) show +Q +[ 1.0 0.0 0.0 1.0 127.4633 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 6.1123 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +0 J +1.0 M +newpath +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +1.0 1.0 1.0 RG +newpath +f +0.0 0.0 0.0 RG +newpath +S +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000Q\000u\000e\000r\000y\000C\000l\000i\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 133.5756 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 58.0776 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\050) show +Q +[ 1.0 0.0 0.0 1.0 133.5756 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 61.7407 0.0 ] concat +0.0 12.0 moveto +q 1 -1 scale +/SansSerif findfont 11.0 scalefont setfont +(\000\051) show +Q +[ 1.0 0.0 0.0 1.0 133.5756 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 133.5756 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 127.4633 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 126.0 126.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -110.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 120.0 50.5 ] concat +[ 1.0 0.0 0.0 1.0 -110.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 420.0 50.5 ] concat +[ 1.0 0.0 0.0 1.0 -110.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -110.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 120.0 130.0 ] concat +0.0 13.0 moveto +q 1 -1 scale +/Helvetica findfont 12.0 scalefont setfont +(Created with Poseidon for UML Community Edition. Not for Commercial Use.) show +Q +[ 1.0 0.0 0.0 1.0 -110.0 39.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] defaultmatrix matrix concatmatrix setmatrix +newpath +0.0 0.0 m +0.0 201.0 l +429.0 201.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Searchcallerdetails.png b/ADD/Images/Searchcallerdetails.png new file mode 100644 index 0000000..d894353 Binary files /dev/null and b/ADD/Images/Searchcallerdetails.png differ -- cgit v0.12