From 7ec7e033bec0591f48abf1004798caf044e21dfa Mon Sep 17 00:00:00 2001 From: Oliver Schinagl Date: Tue, 25 Oct 2005 08:32:38 +0000 Subject: All 'a' images. --- ADD/Images/Addclaim.eps | 1532 +++++++++++++++++++ ADD/Images/Addclaim.png | Bin 0 -> 2400 bytes ADD/Images/Addclient.eps | 1460 ++++++++++++++++++ ADD/Images/Addclient.png | Bin 0 -> 2104 bytes ADD/Images/Addcrosssellopportunity.eps | 1618 ++++++++++++++++++++ ADD/Images/Addcrosssellopportunity.png | Bin 0 -> 3354 bytes ADD/Images/Addindividualisurance.eps | 1532 +++++++++++++++++++ ADD/Images/Addindividualisurance.png | Bin 0 -> 2625 bytes ADD/Images/Addinsurancepackage.eps | 1704 +++++++++++++++++++++ ADD/Images/Addinsurancepackage.png | Bin 0 -> 3672 bytes ADD/Images/Addpayment.eps | 1864 +++++++++++++++++++++++ ADD/Images/Addpayment.png | Bin 0 -> 3725 bytes ADD/Images/Addproposal.eps | 2519 ++++++++++++++++++++++++++++++++ ADD/Images/Addproposal.png | Bin 0 -> 7756 bytes ADD/Images/Addrepresentative.eps | 1558 ++++++++++++++++++++ ADD/Images/Addrepresentative.png | Bin 0 -> 2532 bytes ADD/Images/Addrisk.eps | 1558 ++++++++++++++++++++ ADD/Images/Addrisk.png | Bin 0 -> 2684 bytes ADD/Images/Addtypeofclient.eps | 1558 ++++++++++++++++++++ ADD/Images/Addtypeofclient.png | Bin 0 -> 2476 bytes ADD/Images/Addupsellopportunity.eps | 1618 ++++++++++++++++++++ ADD/Images/Addupsellopportunity.png | Bin 0 -> 3037 bytes 22 files changed, 18521 insertions(+) create mode 100644 ADD/Images/Addclaim.eps create mode 100644 ADD/Images/Addclaim.png create mode 100644 ADD/Images/Addclient.eps create mode 100644 ADD/Images/Addclient.png create mode 100644 ADD/Images/Addcrosssellopportunity.eps create mode 100644 ADD/Images/Addcrosssellopportunity.png create mode 100644 ADD/Images/Addindividualisurance.eps create mode 100644 ADD/Images/Addindividualisurance.png create mode 100644 ADD/Images/Addinsurancepackage.eps create mode 100644 ADD/Images/Addinsurancepackage.png create mode 100644 ADD/Images/Addpayment.eps create mode 100644 ADD/Images/Addpayment.png create mode 100644 ADD/Images/Addproposal.eps create mode 100644 ADD/Images/Addproposal.png create mode 100644 ADD/Images/Addrepresentative.eps create mode 100644 ADD/Images/Addrepresentative.png create mode 100644 ADD/Images/Addrisk.eps create mode 100644 ADD/Images/Addrisk.png create mode 100644 ADD/Images/Addtypeofclient.eps create mode 100644 ADD/Images/Addtypeofclient.png create mode 100644 ADD/Images/Addupsellopportunity.eps create mode 100644 ADD/Images/Addupsellopportunity.png diff --git a/ADD/Images/Addclaim.eps b/ADD/Images/Addclaim.eps new file mode 100644 index 0000000..daeb458 --- /dev/null +++ b/ADD/Images/Addclaim.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:25:06 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 +390.0 -30.0 l +390.0 137.0 l +60.0 137.0 l +60.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 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 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 +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) show +Q +newpath +0.0 13.5 m +28.112304 13.5 l +S +[ 1.0 0.0 0.0 1.0 230.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 230.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 261.5281 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 230.3596 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 228.3596 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 224.3596 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 210.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 +66.52635 0.5 m +66.52635 107.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 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 +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 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 -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 +61.796875 0.5 m +61.796875 10.5 l +53.796875 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 +61.796875 0.5 m +61.796875 10.5 l +53.796875 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 \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 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 262.0 67.0 ] concat +0 J +1.0 M +newpath +-109.5031 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 212.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -52.2633 -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 159.7367 91.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 159.7367 91.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\000l\000a\000i\000m) show +Q +[ 1.0 0.0 0.0 1.0 165.849 91.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\050) show +Q +[ 1.0 0.0 0.0 1.0 165.849 91.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.7754 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 165.849 91.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 165.849 91.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 159.7367 91.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 212.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 179.0 87.0 ] concat +0 J +1.0 M +newpath +-26.5032 0.0 m +13.4968 0.0 l +13.4968 20.0 l +-26.5032 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -26.5032 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 127.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 13.0241 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.0241 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.0241 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 +(\000A\000d\000d\000C\000l\000a\000i\000m) show +Q +[ 1.0 0.0 0.0 1.0 148.1364 129.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.6846 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.1364 129.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 51.3477 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.1364 129.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.1364 129.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0241 129.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 129.0 127.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 390.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 225.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 225.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 390.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 390.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/Addclaim.png b/ADD/Images/Addclaim.png new file mode 100644 index 0000000..f9cd521 Binary files /dev/null and b/ADD/Images/Addclaim.png differ diff --git a/ADD/Images/Addclient.eps b/ADD/Images/Addclient.eps new file mode 100644 index 0000000..1f2d565 --- /dev/null +++ b/ADD/Images/Addclient.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:27:38 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 -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 162.0 l +70.0 162.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 130.0 l +80.0 130.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 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 +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 80.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 80.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 66.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 66.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 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 +66.1992 0.5 m +66.1992 11.5 l +58.199200 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 +66.1992 0.5 m +66.1992 11.5 l +58.199200 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 +(\000A\000d\000d\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 203.0 80.0 ] concat +0 J +1.0 M +newpath +-36.5573 0.0 m +97.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 97.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 133.0 120.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 5.1625 -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 138.1625 104.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 138.1625 104.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\000l\000i\000e\000n\000t) show +Q +[ 1.0 0.0 0.0 1.0 144.2748 104.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\050) show +Q +[ 1.0 0.0 0.0 1.0 144.2748 104.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 31.7861 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 144.2748 104.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 +[ 1.0 0.0 0.0 1.0 144.2748 104.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 +(\000x) show +Q +[ 1.0 0.0 0.0 1.0 182.7802 104.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 144.2748 104.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 144.2748 104.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 138.1625 104.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 133.0 120.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 50.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 50.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 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 -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 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/Addclient.png b/ADD/Images/Addclient.png new file mode 100644 index 0000000..14d881b Binary files /dev/null and b/ADD/Images/Addclient.png differ diff --git a/ADD/Images/Addcrosssellopportunity.eps b/ADD/Images/Addcrosssellopportunity.eps new file mode 100644 index 0000000..b33b591 --- /dev/null +++ b/ADD/Images/Addcrosssellopportunity.eps @@ -0,0 +1,1618 @@ +%!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:29: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 +629 289 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 629.0 289.0 rf +0.0 0.0 0.0 RG +q +0 0 629 289 rc +q +1.0 1.0 1.0 RG +0.0 0.0 629.0 289.0 rf +0.0 0.0 629.0 289.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 +679.0 -40.0 l +679.0 249.0 l +50.0 249.0 l +50.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +60.0 -30.0 m +669.0 -30.0 l +669.0 217.0 l +60.0 217.0 l +60.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 +60.8662 0.5 m +60.8662 187.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +60.8662 0.5 m +60.8662 187.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 +120.2324 0.5 l +120.2324 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 +120.2324 0.5 l +120.2324 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 326.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 326.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 +(\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 382.0332 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 326.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 324.0 64.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 320.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 187.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 187.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 +150.9023 0.5 m +150.9023 11.5 l +142.9023 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.9023 0.5 m +150.9023 11.5 l +142.9023 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 +(\000A\000d\000d\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 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 178.0 67.0 ] concat +0 J +1.0 M +newpath +-29.1951 0.0 m +10.8049 0.0 l +10.8049 20.0 l +-29.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -29.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 128.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 14.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 128.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 367.0 107.0 ] concat +0 J +1.0 M +newpath +-218.195 0.0 m +63.3662 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 63.3662 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 317.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -120.8996 -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 196.1004 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 196.1004 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 +(\000A\000d\000d\000C\000r\000o\000s\000s\000S\000e\000l\000l) show +Q +[ 1.0 0.0 0.0 1.0 202.2127 131.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\050) show +Q +[ 1.0 0.0 0.0 1.0 202.2127 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 70.3022 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 202.2127 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 202.2127 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 196.1004 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 317.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 483.0 167.0 ] concat +0 J +1.0 M +newpath +-57.1643 0.0 m +-17.1643 0.0 l +-17.1643 20.0 l +-57.1643 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -57.1643 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 433.0 207.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -16.1643 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 416.8357 209.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 416.8357 209.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\000C\000r\000o\000s\000s\000S\000e\000l\000l\000O\000p\000p\000o\000r\000t\000u\000n\000i\000t\000i\000e\000s) show +Q +[ 1.0 0.0 0.0 1.0 422.948 209.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 143.6714 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 422.948 209.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 147.3345 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 422.948 209.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 422.948 209.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 416.8357 209.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 433.0 207.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 93.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 669.0 93.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 364.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 364.5 217.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 669.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 217.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 669.0 217.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 160.092773 217.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 289.0 l +629.0 289.0 l +629.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Addcrosssellopportunity.png b/ADD/Images/Addcrosssellopportunity.png new file mode 100644 index 0000000..0288bb2 Binary files /dev/null and b/ADD/Images/Addcrosssellopportunity.png differ diff --git a/ADD/Images/Addindividualisurance.eps b/ADD/Images/Addindividualisurance.eps new file mode 100644 index 0000000..20e2646 --- /dev/null +++ b/ADD/Images/Addindividualisurance.eps @@ -0,0 +1,1532 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 134 20 461 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:29: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 +515 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 515.0 209.0 rf +0.0 0.0 0.0 RG +q +0 0 515 209 rc +q +1.0 1.0 1.0 RG +0.0 0.0 515.0 209.0 rf +0.0 0.0 515.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 +585.0 -40.0 l +585.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 +575.0 -30.0 l +575.0 137.0 l +80.0 137.0 l +80.0 -30.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 +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 326.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 326.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 382.0332 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 326.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 324.0 64.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 320.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 +136.9102 0.5 m +136.9102 11.5 l +128.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 +136.9102 0.5 m +136.9102 11.5 l +128.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 +(\000A\000d\000d\000 \000i\000n\000d\000i\000v\000i\000d\000u\000a\000l\000 \000i\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 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 201.0 67.0 ] concat +0 J +1.0 M +newpath +-32.1951 0.0 m +7.8049 0.0 l +7.8049 20.0 l +-32.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -32.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 131.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 11.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 131.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 394.0 107.0 ] concat +0 J +1.0 M +newpath +-225.195 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 147.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 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 162.0595 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\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 131.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 131.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 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 168.1718 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 162.0595 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 -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 575.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 327.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 327.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 575.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 575.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 123.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 +515.0 209.0 l +515.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Addindividualisurance.png b/ADD/Images/Addindividualisurance.png new file mode 100644 index 0000000..68a0d03 Binary files /dev/null and b/ADD/Images/Addindividualisurance.png differ diff --git a/ADD/Images/Addinsurancepackage.eps b/ADD/Images/Addinsurancepackage.eps new file mode 100644 index 0000000..0967868 --- /dev/null +++ b/ADD/Images/Addinsurancepackage.eps @@ -0,0 +1,1704 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 25 20 570 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:29: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 +505 342 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 342.0 rf +0.0 0.0 0.0 RG +q +0 0 505 342 rc +q +1.0 1.0 1.0 RG +0.0 0.0 505.0 342.0 rf +0.0 0.0 505.0 342.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 302.0 l +60.0 302.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 270.0 l +70.0 270.0 l +70.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 +81.2158 0.5 m +81.2158 220.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 220.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 266.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 266.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 316.0332 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 266.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 264.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 260.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 260.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 220.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 220.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 +138.9199 0.5 m +138.9199 11.5 l +130.9199 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.9199 0.5 m +138.9199 11.5 l +130.9199 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 +(\000A\000d\000d\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 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 192.0 70.0 ] concat +0 J +1.0 M +newpath +-33.1951 0.0 m +6.8049 0.0 l +6.8049 20.0 l +-33.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -33.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 132.0 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 10.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 112.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 112.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 112.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 112.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 112.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 148.6963 112.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 142.0283 112.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 132.0 110.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 324.0 110.0 ] concat +0 J +1.0 M +newpath +-165.195 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 264.0 150.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -138.0555 -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 125.9445 134.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 125.9445 134.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\000a\000c\000k\000a\000g\000e) show +Q +[ 1.0 0.0 0.0 1.0 132.0568 134.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 91.1152 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.0568 134.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 94.7783 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.0568 134.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 132.0568 134.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 125.9445 134.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 264.0 150.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 406.0 133.0 ] concat +0 J +1.0 M +newpath +-11.5105 0.0 m +28.4895 0.0 l +28.4895 20.0 l +-11.5105 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -11.5105 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 346.0 173.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 29.4895 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 375.4895 175.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 375.4895 175.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\000I\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +[ 1.0 0.0 0.0 1.0 381.6018 175.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 67.8799 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 381.6018 175.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 71.543 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 381.6018 175.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 381.6018 175.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 375.4895 175.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 346.0 173.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 435.0 177.0 ] concat +0 J +1.0 M +newpath +-40.5105 0.0 m +-0.5105 0.0 l +-0.5105 20.0 l +-40.5105 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -40.5105 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 375.0 217.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 0.4895 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 375.4895 219.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 375.4895 219.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\000I\000n\000s\000u\000r\000a\000n\000c\000e) show +Q +[ 1.0 0.0 0.0 1.0 381.6018 219.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 67.8799 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 381.6018 219.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 71.543 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 381.6018 219.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 381.6018 219.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 375.4895 219.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 375.0 217.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 120.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 120.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 -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 270.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 270.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 270.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 270.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 342.0 l +505.0 342.0 l +505.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Addinsurancepackage.png b/ADD/Images/Addinsurancepackage.png new file mode 100644 index 0000000..c180d18 Binary files /dev/null and b/ADD/Images/Addinsurancepackage.png differ diff --git a/ADD/Images/Addpayment.eps b/ADD/Images/Addpayment.eps new file mode 100644 index 0000000..134f46d --- /dev/null +++ b/ADD/Images/Addpayment.eps @@ -0,0 +1,1864 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 96 20 499 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:29:49 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 +621 312 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 621.0 312.0 rf +0.0 0.0 0.0 RG +q +0 0 621 312 rc +q +1.0 1.0 1.0 RG +0.0 0.0 621.0 312.0 rf +0.0 0.0 621.0 312.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 +681.0 -40.0 l +681.0 272.0 l +60.0 272.0 l +60.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +70.0 -30.0 m +671.0 -30.0 l +671.0 240.0 l +70.0 240.0 l +70.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 530.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +55.52245 0.5 m +55.52245 195.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 195.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 476.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 476.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 526.6895 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 476.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 474.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 470.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 470.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 380.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +66.52635 0.5 m +66.52635 195.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 195.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 326.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 326.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 361.3438 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 326.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 324.0 64.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 320.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 260.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +45.5 0.5 m +45.5 195.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +45.5 0.5 m +45.5 195.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 9.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 215.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 215.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 246.5281 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 215.3489 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 213.3489 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 209.3489 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 -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 195.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 195.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 +84.2109 0.5 m +84.2109 11.5 l +76.2109 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 +84.2109 0.5 m +84.2109 11.5 l +76.2109 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 +(\000A\000d\000d\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 191.0 120.0 ] concat +0 J +1.0 M +newpath +-34.5573 0.0 m +114.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 114.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 131.0 160.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -0.3148 -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.6852 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 130.6852 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 136.7975 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 136.7975 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 136.7975 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 136.7975 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 205.2575 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 136.7975 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 136.7975 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 130.6852 144.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 131.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 335.0 149.0 ] concat +0 J +1.0 M +newpath +-30.0 0.0 m +106.0242 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 106.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 275.0 189.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -22.5094 -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 252.4906 173.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 252.4906 173.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 258.6029 173.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 258.6029 173.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 258.6029 173.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 258.6029 173.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 252.4906 173.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 275.0 189.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 477.0 195.0 ] concat +0 J +1.0 M +newpath +-35.9758 0.0 m +103.9372 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 103.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 417.0 235.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 1.2788 -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 418.2788 219.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 418.2788 219.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) show +Q +[ 1.0 0.0 0.0 1.0 424.3911 219.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 43.4092 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 424.3911 219.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 47.0723 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 424.3911 219.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 50.7354 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 424.3911 219.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 53.7915 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 478.1826 219.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 424.3911 219.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 424.3911 219.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 418.2788 219.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 417.0 235.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 105.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 671.0 105.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 370.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 370.5 240.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 671.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 240.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 671.0 240.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 166.092773 240.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 312.0 l +621.0 312.0 l +621.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Addpayment.png b/ADD/Images/Addpayment.png new file mode 100644 index 0000000..fd6a9bf Binary files /dev/null and b/ADD/Images/Addpayment.png differ diff --git a/ADD/Images/Addproposal.eps b/ADD/Images/Addproposal.eps new file mode 100644 index 0000000..66746b1 --- /dev/null +++ b/ADD/Images/Addproposal.eps @@ -0,0 +1,2519 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 20 92 575 750 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:30:05 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 +720 608 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 720.0 608.0 rf +0.0 0.0 0.0 RG +q +0 0 720 608 rc +q +1.0 1.0 1.0 RG +0.0 0.0 720.0 608.0 rf +0.0 0.0 720.0 608.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 +770.0 -40.0 l +770.0 568.0 l +50.0 568.0 l +50.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +60.0 -30.0 m +760.0 -30.0 l +760.0 536.0 l +60.0 536.0 l +60.0 -30.0 l +h +S +[ 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 506.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 506.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 603.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 603.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 635.5 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 603.1123 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 601.1123 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 597.1123 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 580.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 560.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +50.5 0.5 m +50.5 506.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 506.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 534.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 534.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 564.5869 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 534.0254 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 532.0254 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 528.0254 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 510.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 450.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +60.8662 0.5 m +60.8662 506.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +60.8662 0.5 m +60.8662 506.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 +120.2324 0.5 l +120.2324 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 +120.2324 0.5 l +120.2324 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 +(\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 406.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 406.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 +(\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 462.0332 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 406.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 404.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 400.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 400.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 280.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +81.87795 0.5 m +81.87795 506.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 506.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 236.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 236.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 286.6953 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 506.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 506.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 +84.2168 0.5 m +84.2168 11.5 l +76.2168 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 +84.2168 0.5 m +84.2168 11.5 l +76.2168 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 +(\000A\000d\000d\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 -50.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 229.0 68.0 ] concat +0 J +1.0 M +newpath +-82.5573 0.0 m +-42.5573 0.0 l +-42.5573 20.0 l +-82.5573 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -82.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 179.0 108.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -41.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 110.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 110.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 110.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 110.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 110.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 143.555 110.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 137.4427 110.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 179.0 108.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 412.0 148.0 ] concat +0 J +1.0 M +newpath +-56.9035 0.0 m +-16.9035 0.0 l +-16.9035 20.0 l +-56.9035 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -56.9035 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 362.0 188.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -15.9035 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 346.0965 190.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 346.0965 190.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\000F\000o\000r\000U\000p\000S\000e\000l\000l) show +Q +[ 1.0 0.0 0.0 1.0 352.2088 190.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 80.083 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 352.2088 190.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 83.7461 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 352.2088 190.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 352.2088 190.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 346.0965 190.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 362.0 188.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 414.0 266.0 ] concat +0 J +1.0 M +newpath +-58.9035 0.0 m +-18.9035 0.0 l +-18.9035 20.0 l +-58.9035 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -58.9035 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 364.0 306.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -17.9035 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 346.0965 308.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 346.0965 308.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\000F\000o\000r\000C\000r\000o\000s\000s\000S\000e\000l\000l) show +Q +[ 1.0 0.0 0.0 1.0 352.2088 308.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 94.7461 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 352.2088 308.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 98.4092 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 352.2088 308.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 352.2088 308.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 346.0965 308.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 364.0 306.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 620.0 188.0 ] concat +0 J +1.0 M +newpath +-264.9035 0.0 m +-114.1643 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -114.1643 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 570.0 228.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -234.78 -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 335.22 212.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 335.22 212.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 +(\000G\000e\000t\000 \000_\000u\000p\000_\000s\000e\000l\000l\000_\000I\000D\000s) show +Q +[ 1.0 0.0 0.0 1.0 335.22 212.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 570.0 228.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 618.0 306.0 ] concat +0 J +1.0 M +newpath +-262.9035 0.0 m +-112.1643 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -112.1643 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 568.0 346.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -239.8027 -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 328.1973 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 328.1973 330.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 +(\000G\000e\000t\000 \000_\000c\000r\000o\000s\000s\000_\000s\000e\000l\000l\000_\000I\000D\000s) show +Q +[ 1.0 0.0 0.0 1.0 328.1973 330.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 568.0 346.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 584.5237 346.0 ] concat +0 J +1.0 M +newpath +-229.4272 0.0 m +-6.4983 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -6.4983 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 534.5237 386.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -215.0708 -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 319.4529 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 319.4529 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 +(\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 325.5652 368.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 325.5652 368.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 325.5652 368.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 325.5652 368.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 357.3352 368.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 325.5652 368.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 325.5652 368.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 319.4529 368.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 534.5237 386.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.5237 366.0 ] concat +0 J +1.0 M +newpath +-35.4273 0.0 m +4.5727 0.0 l +4.5727 20.0 l +-35.4273 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -35.4273 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 340.5237 406.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 5.5727 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 346.0964 408.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 346.0964 408.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\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 352.2087 408.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.96 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 352.2087 408.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.623 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 352.2087 408.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 352.2087 408.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 346.0964 408.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 340.5237 406.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 678.5237 406.0 ] concat +0 J +1.0 M +newpath +-323.4272 0.0 m +1.4763 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 1.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 628.5237 446.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -310.6666 -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 317.8571 429.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 317.8571 429.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 323.9694 429.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 323.9694 429.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 323.9694 429.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 323.9694 429.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 355.7394 429.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 323.9694 429.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 323.9694 429.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 317.8571 429.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 628.5237 446.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 384.5237 486.0 ] concat +0 J +1.0 M +newpath +-29.4273 0.0 m +10.5727 0.0 l +10.5727 20.0 l +-29.4273 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -29.4273 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 334.5237 526.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 11.5727 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 346.0964 528.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 346.0964 528.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\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 352.2087 528.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.96 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 352.2087 528.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.623 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 352.2087 528.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 352.2087 528.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 346.0964 528.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 334.5237 526.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 356.0 111.0 ] concat +0 J +1.0 M +newpath +-209.5573 0.0 m +-0.9035 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -0.9035 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 306.0 151.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -162.0888 -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 143.9112 135.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 143.9112 135.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\000r\000o\000p\000o\000s\000a\000l) show +Q +[ 1.0 0.0 0.0 1.0 150.0235 135.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 150.0235 135.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 150.0235 135.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 150.0235 135.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 252.128 135.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 150.0235 135.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 150.0235 135.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 143.9112 135.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 306.0 151.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 253.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 760.0 253.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 410.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 410.0 536.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 760.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 536.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 760.0 536.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 205.592773 536.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 608.0 l +720.0 608.0 l +720.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Addproposal.png b/ADD/Images/Addproposal.png new file mode 100644 index 0000000..27b301e Binary files /dev/null and b/ADD/Images/Addproposal.png differ diff --git a/ADD/Images/Addrepresentative.eps b/ADD/Images/Addrepresentative.eps new file mode 100644 index 0000000..22f37c8 --- /dev/null +++ b/ADD/Images/Addrepresentative.eps @@ -0,0 +1,1558 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 119 20 476 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:30:18 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 +477 212 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 477.0 212.0 rf +0.0 0.0 0.0 RG +q +0 0 477 212 rc +q +1.0 1.0 1.0 RG +0.0 0.0 477.0 212.0 rf +0.0 0.0 477.0 212.0 rc +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] concat +[ 1.0 0.0 0.0 1.0 0.0 0.0 ] concat +newpath +210.0 -40.0 m +687.0 -40.0 l +687.0 172.0 l +210.0 172.0 l +210.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +220.0 -30.0 m +677.0 -30.0 l +677.0 140.0 l +220.0 140.0 l +220.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 +88.8799 0.5 m +88.8799 110.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 110.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 266.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 266.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 350.0469 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 266.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 264.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 260.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 260.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 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 110.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 110.5 l +S +2 J +10.0 M +[ ] 0.0 d +[ 1.0 0.0 0.0 1.0 12.9316 0.0 ] concat +1.0 1.0 1.0 RG +newpath +0.5 0.5 m +73.6367 0.5 l +73.6367 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 +73.6367 0.5 l +73.6367 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 +(\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 58.9316 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 30.6797 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 58.9316 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 34.0137 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 +(\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 92.9453 66.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 58.9316 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.9316 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 52.9316 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 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 220.0 -30.0 ] concat +1.0 1.0 1.0 RG +newpath +114.2285 0.5 m +114.2285 11.5 l +106.2285 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 +114.2285 0.5 m +114.2285 11.5 l +106.2285 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 +(\000A\000d\000d\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 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 371.0 70.0 ] concat +0 J +1.0 M +newpath +-71.0 0.0 m +99.0 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 99.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 161.0 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -33.9907 -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.0093 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 127.0093 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 +(\000R\000e\000p\000r\000e\000s\000e\000n\000t\000a\000t\000i\000v\000e) show +Q +[ 1.0 0.0 0.0 1.0 133.1216 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 73.9868 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.1216 94.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\051) show +Q +[ 1.0 0.0 0.0 1.0 133.1216 94.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:) show +Q +[ 1.0 0.0 0.0 1.0 133.1216 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 84.3691 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 217.4907 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 133.1216 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 133.1216 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 127.0093 94.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 161.0 110.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 337.0 90.0 ] concat +0 J +1.0 M +newpath +-37.0 0.0 m +3.0 0.0 l +3.0 20.0 l +-37.0 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -37.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 127.0 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 4.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 132.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 132.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\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 132.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 93.5591 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 132.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 97.2222 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 132.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 137.1123 132.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 131.0 132.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 127.0 130.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 220.0 55.0 ] concat +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 677.0 55.0 ] concat +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 448.5 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 448.5 140.0 ] concat +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 220.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 677.0 -30.0 ] concat +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 220.0 140.0 ] concat +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 677.0 140.0 ] concat +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -210.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 244.092773 140.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 -210.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 212.0 l +477.0 212.0 l +477.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Addrepresentative.png b/ADD/Images/Addrepresentative.png new file mode 100644 index 0000000..9945ff4 Binary files /dev/null and b/ADD/Images/Addrepresentative.png differ diff --git a/ADD/Images/Addrisk.eps b/ADD/Images/Addrisk.eps new file mode 100644 index 0000000..a55853e --- /dev/null +++ b/ADD/Images/Addrisk.eps @@ -0,0 +1,1558 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 33 20 562 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:30: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 282 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 282.0 rf +0.0 0.0 0.0 RG +q +0 0 429 282 rc +q +1.0 1.0 1.0 RG +0.0 0.0 429.0 282.0 rf +0.0 0.0 429.0 282.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 242.0 l +110.0 242.0 l +110.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +120.0 -30.0 m +477.0 -30.0 l +477.0 210.0 l +120.0 210.0 l +120.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 345.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +51.45335 0.5 m +51.45335 160.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +51.45335 0.5 m +51.45335 160.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 22.0376 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 263.0376 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 263.0376 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 287.4814 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 263.0376 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 261.0376 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 257.0376 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 235.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 150.0 20.0 ] concat +1.0 1.0 1.0 RG +newpath +81.87795 0.5 m +81.87795 160.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 160.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 -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 +56.8477 0.5 m +56.8477 11.5 l +48.8477 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.8477 0.5 m +56.8477 11.5 l +48.8477 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 +(\000A\000d\000d\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 -110.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 394.0 68.0 ] concat +0 J +1.0 M +newpath +-168.9035 0.0 m +-26.9624 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -26.9624 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 108.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -119.6241 -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 164.3759 92.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 164.3759 92.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 170.4882 92.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 170.4882 92.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 170.4882 92.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 170.4882 92.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 202.2582 92.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 170.4882 92.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 170.4882 92.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 164.3759 92.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 284.0 108.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 232.0 98.0 ] concat +0 J +1.0 M +newpath +-6.9035 0.0 m +33.0965 0.0 l +33.0965 20.0 l +-6.9035 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -6.9035 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 122.0 138.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 34.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 140.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 140.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\000R\000i\000s\000k) show +Q +[ 1.0 0.0 0.0 1.0 162.2088 140.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 40.96 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 140.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 44.623 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 140.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 162.2088 140.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 156.0965 140.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 122.0 138.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 90.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 477.0 90.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 298.5 -30.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 298.5 210.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 120.0 -30.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 477.0 -30.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 120.0 210.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 477.0 210.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 210.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 282.0 l +429.0 282.0 l +429.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Addrisk.png b/ADD/Images/Addrisk.png new file mode 100644 index 0000000..1ecdef2 Binary files /dev/null and b/ADD/Images/Addrisk.png differ diff --git a/ADD/Images/Addtypeofclient.eps b/ADD/Images/Addtypeofclient.eps new file mode 100644 index 0000000..cd2b378 --- /dev/null +++ b/ADD/Images/Addtypeofclient.eps @@ -0,0 +1,1558 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 115 20 480 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:30: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 +461 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 461.0 209.0 rf +0.0 0.0 0.0 RG +q +0 0 461 209 rc +q +1.0 1.0 1.0 RG +0.0 0.0 461.0 209.0 rf +0.0 0.0 461.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 +521.0 -40.0 l +521.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 +511.0 -30.0 l +511.0 137.0 l +70.0 137.0 l +70.0 -30.0 l +h +S +[ 1.0 0.0 0.0 1.0 350.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 296.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 296.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 356.6914 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 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 +105.5566 0.5 m +105.5566 11.5 l +97.5566 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 +105.5566 0.5 m +105.5566 11.5 l +97.5566 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 +(\000A\000d\000d\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 -60.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 192.0 67.0 ] concat +0 J +1.0 M +newpath +-33.1951 0.0 m +6.8049 0.0 l +6.8049 20.0 l +-33.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -33.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 132.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 10.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 132.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 345.0 107.0 ] concat +0 J +1.0 M +newpath +-186.195 0.0 m +70.0244 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 70.0244 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 285.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -99.012 -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 185.988 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 185.988 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 +(\000C\000l\000i\000e\000n\000t\000T\000y\000p\000e) show +Q +[ 1.0 0.0 0.0 1.0 192.1003 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 52.5776 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 192.1003 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 56.2407 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 192.1003 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 59.9038 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 192.1003 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 62.96 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 255.0603 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 192.1003 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 192.1003 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 185.988 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 285.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 511.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 290.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 290.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 511.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 511.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 86.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 +461.0 209.0 l +461.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Addtypeofclient.png b/ADD/Images/Addtypeofclient.png new file mode 100644 index 0000000..8ed4882 Binary files /dev/null and b/ADD/Images/Addtypeofclient.png differ diff --git a/ADD/Images/Addupsellopportunity.eps b/ADD/Images/Addupsellopportunity.eps new file mode 100644 index 0000000..fae693f --- /dev/null +++ b/ADD/Images/Addupsellopportunity.eps @@ -0,0 +1,1618 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%BoundingBox: 116 20 479 822 +%%Creator: FreeHEP Graphics2D Driver +%%Producer: org.freehep.graphicsio.ps.PSGraphics2D Revision: 1.20 +%%For: +%%Title: +%%CreationDate: dinsdag 25 oktober 2005 10:30: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 +553 249 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 553.0 249.0 rf +0.0 0.0 0.0 RG +q +0 0 553 249 rc +q +1.0 1.0 1.0 RG +0.0 0.0 553.0 249.0 rf +0.0 0.0 553.0 249.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 +633.0 -40.0 l +633.0 209.0 l +80.0 209.0 l +80.0 -40.0 l +h +f +0.501961 0.501961 0.501961 RG +newpath +90.0 -30.0 m +623.0 -30.0 l +623.0 177.0 l +90.0 177.0 l +90.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 +60.8662 0.5 m +60.8662 147.5 l +f +0.0 0.0 0.0 RG +0 J +1.0 M +[ 5.0 5.0 ] 0.0 d +newpath +60.8662 0.5 m +60.8662 147.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 +120.2324 0.5 l +120.2324 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 +120.2324 0.5 l +120.2324 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 266.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 266.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 +(\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 322.0332 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 266.0 66.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 264.0 64.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 260.0 60.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 260.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 147.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 147.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 +135.5801 0.5 m +135.5801 11.5 l +127.580099 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 +135.5801 0.5 m +135.5801 11.5 l +127.580099 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 +(\000A\000d\000d\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 -80.0 40.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 193.0 67.0 ] concat +0 J +1.0 M +newpath +-14.1951 0.0 m +25.8049 0.0 l +25.8049 20.0 l +-14.1951 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -14.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 113.0 107.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 29.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 113.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 417.0 107.0 ] concat +0 J +1.0 M +newpath +-238.195 0.0 m +-16.6338 0.0 l +S +2 J +10.0 M +[ -1.0 0.0 0.0 -1.0 -16.6338 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 337.0 147.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 -163.5681 -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 173.4319 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 173.4319 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 +(\000A\000d\000d\000U\000p\000S\000e\000l\000l) show +Q +[ 1.0 0.0 0.0 1.0 179.5442 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 51.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 179.5442 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 55.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 179.5442 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 179.5442 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 173.4319 131.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 337.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 433.0 127.0 ] concat +0 J +1.0 M +newpath +-37.1643 0.0 m +2.8357 0.0 l +2.8357 20.0 l +-37.1643 20.0 l +S +2 J +10.0 M +[ 1.0 0.0 0.0 1.0 -37.1643 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 353.0 167.0 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 3.8357 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 356.8357 169.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 356.8357 169.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\000U\000p\000S\000e\000l\000l\000O\000p\000p\000o\000r\000t\000u\000n\000i\000t\000i\000e\000s) show +Q +[ 1.0 0.0 0.0 1.0 362.948 169.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 129.0083 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 362.948 169.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 132.6714 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 362.948 169.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 362.948 169.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 356.8357 169.5 ] defaultmatrix matrix concatmatrix setmatrix +[ 1.0 0.0 0.0 1.0 353.0 167.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 73.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 623.0 73.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 356.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 356.5 177.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 623.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 177.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 623.0 177.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 152.092773 177.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 249.0 l +553.0 249.0 l +553.0 0.0 l +h +W +Q +end end restore showpage + +%%Trailer +%%EOF diff --git a/ADD/Images/Addupsellopportunity.png b/ADD/Images/Addupsellopportunity.png new file mode 100644 index 0000000..ef546f4 Binary files /dev/null and b/ADD/Images/Addupsellopportunity.png differ -- cgit v0.12