1 %!PS-Adobe-3.0 EPSF-3.0
2 %%BoundingBox: 20 306 575 485
3 %%Creator: FreeHEP Graphics2D Driver
4 %%Producer: org.freehep.graphicsio.ps.EPSGraphics2D Revision: 12753
5 %%For: pimjager@167-013.wlan-int.ru.nl
7 %%CreationDate: Thursday, June 23, 2016 10:05:45 AM CEST
14 % File: org/freehep/graphicsio.ps/PSProlog.txt
15 % Author: Charles Loomis
18 % Redefinitions which save some space in the output file. These are also
19 % the same as the PDF operators.
30 dup 0 exch rlineto exch 0 rlineto
31 neg 0 exch rlineto closepath} def
35 /F {gsave vg&FC fill grestore} def
36 /F* {gsave vg&FC eofill grestore} def
38 /s {closepath stroke} def
41 /b {closepath gsave vg&FC fill grestore
42 gsave stroke grestore newpath} def
43 /B {gsave vg&FC fill grestore gsave stroke grestore newpath} def
44 /b* {closepath gsave vg&FC eofill grestore
45 gsave stroke grestore newpath} def
46 /B* {gsave vg&FC eofill grestore gsave stroke grestore newpath} def
48 /g {1 array astore /vg&fcolor exch def} def
50 /k {4 array astore /vg&fcolor exch def} def
52 /rg {3 array astore /vg&fcolor exch def} def
55 % Initialize the fill color.
58 /vg&FC {mark vg&fcolor aload pop
59 counttomark 1 eq {G} if
60 counttomark 3 eq {RG} if
61 counttomark 4 eq {K} if
64 /vg&DFC {/vg&fcolor exch def} def
66 /vg&C {mark exch aload pop
67 counttomark 1 eq {G} if
68 counttomark 3 eq {RG} if
69 counttomark 4 eq {K} if
75 /M {setmiterlimit} def
82 % Setup the default graphics state.
83 % (black; 1 pt. linewidth; miter join; butt-ends; solid)
84 /defaultGraphicsState {0 g 1 w 0 j 0 J [] 0 d} def
86 % Emulation of the rectangle operators for PostScript implementations
87 % which do not implement all Level 2 features. This is an INCOMPLETE
88 % emulation; only the "x y width height rect..." form is emulated.
89 /*rf {gsave newpath re fill grestore} def
90 /*rs {gsave newpath re stroke grestore} def
91 /*rc {newpath re clip} def
92 /rf /rectfill where {pop /rectfill}{/*rf} ifelse load def
93 /rs /rectstroke where {pop /rectstroke}{/*rs} ifelse load def
94 /rc /rectclip where {pop /rectclip}{/*rc} ifelse load def
96 % Emulation of the selectfont operator. This includes a 20% increase in
97 % the fontsize which is necessary to get sizes similar to the Java fonts.
98 /*sf {exch findfont exch
99 dup type /arraytype eq {makefont}{scalefont} ifelse setfont} bind def
100 /sf /selectfont where {pop {1.2 mul selectfont}}{{1.2 mul *sf}} ifelse def
102 % Special version of stroke which allows the dash pattern to continue
103 % across path segments. (This may be needed for PostScript although
104 % modern printers seem to do this correctly.)
106 currentdash pop length 0 eq
109 currentdash /vg&doffset exch def pop
114 3 -1 roll sub dup mul
118 currentdash 3 -1 roll add setdash}
126 /vg&resetdash {currentdash pop vg&doffset setdash} def
128 % Initialize variables for safety.
130 /xv 0 def /yv 0 def /width 0 def /height 0 def
132 % Initialize to portrait INTERNATIONAL (Letter-height, A4-width) page.
133 /pw 595 def /ph 791 def /po true def /ftp false def
135 % Initialize margins to 20 points.
136 /ml 20 def /mr 20 def /mt 20 def /mb 20 def
138 % Temporary matrices.
139 /smatrix 0 def /nmatrix 0 def
141 % set page size (usage: <page width><page height> setpagesize)
142 /setpagesize {/ph exch def /pw exch def} def
144 % set page orientation (usage: portrait or landscape)
145 /portrait {/po true def} def
146 /landscape {/po false def} def
148 % force natural size for image (usage: naturalsize)
149 /naturalsize {/ftp false def} def
151 % resize image to fill page (usage: fittopage)
152 /fittopage {/ftp true def} def
154 % set margins of the page (usage: <left><bottom><top><right> setmargins)
155 /setmargins {/mr exch def /mt exch def /mb exch def /ml exch def} def
157 % set the graphic's size (usage: <width><height> setsize)
158 /setsize {/gh exch def /gw exch def} def
160 % set the graphic's origin (usage: <x0><y0> setorigin)
161 /setorigin {/gy exch def /gx exch def} def
163 % calculate image center
164 /imagecenter {pw ml sub mr sub 2 div ml add
165 ph mt sub mb sub 2 div mb add} def
167 % calculate the necessary scaling
168 /imagescale {po {gw}{gh} ifelse pw ml sub mr sub div
169 po {gh}{gw} ifelse ph mt sub mb sub div
170 2 copy lt {exch} if pop
171 ftp not {1 2 copy lt {exch} if pop} if
172 1 exch div /sfactor exch def
173 /gw gw sfactor mul def /gh gh sfactor mul def} def
175 % calculate image origin
176 /imageorigin {pw ml sub mr sub 2 div ml add
177 po {gw}{gh} ifelse 2 div sub
178 ph mt sub mb sub 2 div mb add
179 po {gh}{gw} ifelse 2 div po {add}{sub} ifelse} def
181 % calculate the clipping origin
182 /cliporigin {pw ml sub mr sub 2 div ml add
183 po {gw}{gh} ifelse 2 div sub floor
184 ph mt sub mb sub 2 div mb add
185 po {gh}{gw} ifelse 2 div sub floor} def
187 % Set the clipping region to the bounding box.
188 /cliptobounds {cliporigin po {gw}{gh} ifelse 1 add
189 po {gh}{gw} ifelse 1 add rc} def
191 % set the base transformation matrix (usage: setbasematrix)
192 /setbasematrix {imageorigin translate
193 po {0}{90} ifelse rotate
194 sfactor sfactor neg scale
195 /defaultmatrix matrix currentmatrix def} def
197 % The lower-right bias in drawing 1 pt. wide lines.
198 /bias {q 0.5 0.5 translate} def
201 % Define the composite fonts used to print Unicode strings.
202 % Undefine particular values in an encoding array.
203 /vg&undef { {exch dup 3 -1 roll /.notdef put} forall } def
204 /vg&redef { {3 -1 roll dup 4 2 roll put} forall } def
206 % usage: key encoding basefontname vg&newbasefont font
208 findfont dup length dict copy
210 currentdict /FID undef
212 dup /FontName exch def
218 % usage: key encoding basefontname vg&newskewedbasefont font
219 /vg&newskewedbasefont {
220 findfont dup length dict copy
222 currentdict /FID undef
224 dup /FontName exch def
225 exch FontMatrix exch matrix concatmatrix /FontMatrix exch def
231 % usage: basekey suffix vg&nconcat name
233 2 {dup length string cvs exch} repeat
234 dup length 3 -1 roll dup length 3 -1 roll add string
235 dup 0 4 -1 roll dup length 5 1 roll putinterval
236 dup 4 -2 roll exch putinterval cvn
239 %usage: fontname vg&skewmatrix matrix
241 findfont dup /FontInfo known
243 /FontInfo get dup /ItalicAngle known
245 [ 1 0 4 -1 roll /ItalicAngle get neg dup sin exch cos div 1 0 0 ]
252 % usage: newfontname basefontname vg&newcompositefont --
253 /vg&newcompositefont {
258 /FontStyleBits vg&fstyle
263 /Encoding [ 0 1 255 {pop 6} for ]
264 dup 16#00 0 put % Latin
265 dup 16#03 1 put % Greek
266 dup 16#20 2 put % Punctuation
267 dup 16#21 3 put % Arrows
268 dup 16#22 4 put % MathOps
269 dup 16#27 5 put % Dingbats
272 vg&bfont /-UC-Latin vg&nconcat UCLatinEncoding
273 vg&bfont vg&newbasefont
275 vg&bfont vg&skewmatrix
276 vg&bfont /-UC-Greek vg&nconcat UCGreekEncoding
277 /Symbol vg&newskewedbasefont
279 vg&bfont /-UC-Punctuation vg&nconcat UCPunctuationEncoding
280 vg&bfont vg&newbasefont
284 /Dingbats-UC findfont
285 /Undefined-UC findfont ]
287 vg&fname exch definefont pop
290 % Null encoding vector (all elements set to .notdef)
291 /NullEncoding [ 256 {/.notdef} repeat ] def
293 % Unicode Latin encoding (unicode codes \u0000-\u00ff)
295 ISOLatin1Encoding dup length array copy
297 [ 16#90 16#91 16#92 16#93 16#94 16#95 16#96
298 16#97 16#98 16#9a 16#9b 16#9d 16#9e 16#9f
302 % Unicode Greek encoding (unicode codes \u0370-\u03ff)
304 NullEncoding dup length array copy
305 << 16#91 /Alpha 16#92 /Beta 16#93 /Gamma 16#94 /Delta
306 16#95 /Epsilon 16#96 /Zeta 16#97 /Eta 16#98 /Theta
307 16#99 /Iota 16#9a /Kappa 16#9b /Lambda 16#9c /Mu
308 16#9d /Nu 16#9e /Xi 16#9f /Omicron 16#a0 /Pi
309 16#a1 /Rho 16#a3 /Sigma 16#a4 /Tau 16#a5 /Upsilon
310 16#a6 /Phi 16#a7 /Chi 16#a8 /Psi 16#a9 /Omega
311 16#b1 /alpha 16#b2 /beta 16#b3 /gamma 16#b4 /delta
312 16#b5 /epsilon 16#b6 /zeta 16#b7 /eta 16#b8 /theta
313 16#b9 /iota 16#ba /kappa 16#bb /lambda 16#bc /mu
314 16#bd /nu 16#be /xi 16#bf /omicron 16#c0 /pi
315 16#c1 /rho 16#c2 /sigma1 16#c3 /sigma 16#c4 /tau
316 16#c5 /upsilon 16#c6 /phi1 16#c7 /chi 16#c8 /psi
317 16#c9 /omega 16#7e /semicolon 16#87 /dotmath 16#d1 /theta1
318 16#d2 /Upsilon1 16#d5 /phi 16#d6 /omega1
322 % Unicode punctuation encoding (unicode codes \u2000-\u206f)
323 /UCPunctuationEncoding
324 NullEncoding dup length array copy
325 << 16#10 /hyphen 16#11 /hyphen 16#12 /endash
326 16#13 /emdash 16#18 /quoteleft 16#19 /quoteright
327 16#1a /quotesinglbase 16#1b /quotesingle 16#1c /quotedblleft
328 16#1d /quotedblright 16#1e /quotedblbase 16#1f /quotedbl
329 16#20 /dagger 16#21 /daggerdbl 16#22 /bullet
330 16#24 /period 16#26 /ellipsis 16#27 /periodcentered
331 16#30 /perthousand 16#44 /fraction
332 16#70 /zerosuperior 16#74 /foursuperior 16#75 /fivesuperior
333 16#76 /sixsuperior 16#77 /sevensuperior 16#78 /eightsuperior
334 16#79 /ninesuperior 16#7b /hyphensuperior 16#7d /parenleftsuperior
335 16#7e /parenrightsuperior
336 16#80 /zeroinferior 16#84 /fourinferior 16#85 /fiveinferior
337 16#81 /oneinferior 16#82 /twoinferior 16#83 /threeinferior
338 16#86 /sixinferior 16#87 /seveninferior 16#88 /eightinferior
339 16#89 /nineinferior 16#8b /hypheninferior 16#8d /parenleftinferior
340 16#8e /parenrightinferior
344 % Unicode mathematical operators encoding (unicode codes \u2200-\u22ff)
346 NullEncoding dup length array copy
347 << 16#00 /universal 16#02 /partialdiff 16#03 /existential
348 16#05 /emptyset 16#06 /Delta 16#07 /gradient
349 16#08 /element 16#09 /notelement 16#0b /suchthat
350 16#0f /product 16#11 /summation 16#12 /minus
351 16#15 /fraction 16#17 /asteriskmath 16#19 /bullet
352 16#1a /radical 16#1d /proportional 16#1e /infinity
353 16#20 /angle 16#23 /bar 16#27 /logicaland
354 16#28 /logicalor 16#29 /intersection 16#2a /union
355 16#2b /integral 16#34 /therefore 16#36 /colon
356 16#3c /similar 16#45 /congruent 16#48 /approxequal
357 16#60 /notequal 16#61 /equivalence 16#64 /lessequal
358 16#65 /greaterequal 16#82 /propersubset 16#83 /propersuperset
359 16#86 /reflexsubset 16#87 /reflexsuperset 16#95 /circleplus
360 16#97 /circlemultiply 16#a5 /perpendicular 16#03 /existential
361 16#c0 /logicaland 16#c1 /logicalor 16#c2 /intersection
362 16#c3 /union 16#c4 /diamond 16#c5 /dotmath
366 % Unicode arrows encoding (unicode codes \u2190-\u21ff)
367 % Also includes those "Letterlike" unicode characters
368 % which are available in the symbol font. (unicode codes \u2100-\u214f)
370 NullEncoding dup length array copy
371 << 16#11 /Ifraktur 16#1c /Rfraktur 16#22 /trademarkserif
373 16#90 /arrowleft 16#91 /arrowup 16#92 /arrowright
374 16#93 /arrowdown 16#94 /arrowboth 16#d0 /arrowdblleft
375 16#d1 /arrowdblup 16#d2 /arrowdblright 16#d3 /arrowdbldown
380 /ZapfDingbats findfont /Encoding get
381 dup length array copy /UCDingbatsEncoding exch def
384 UCDingbatsEncoding exch get
385 UCDingbatsEncoding 3 1 roll put
389 UCDingbatsEncoding exch get
390 UCDingbatsEncoding 3 1 roll put
392 UCDingbatsEncoding [ 16#c0 1 16#ff {} for ] vg&undef
393 [ 16#00 16#05 16#0a 16#0b 16#28 16#4c 16#4e 16#53 16#54 16#55 16#57 16#5f
394 16#60 16#68 16#69 16#6a 16#6b 16#6c 16#6d 16#6e 16#6f 16#70 16#71 16#72
395 16#73 16#74 16#75 16#95 16#96 16#97 16#b0 16#bf
398 % Define the base fonts which don't change.
399 /Undefined-UC NullEncoding /Helvetica vg&newbasefont pop
400 /MathOps-UC UCMathOpsEncoding /Symbol vg&newbasefont pop
401 /Arrows-UC UCArrowsEncoding /Symbol vg&newbasefont pop
402 /Dingbats-UC UCDingbatsEncoding /ZapfDingbats vg&newbasefont pop
404 % Make the SansSerif composite fonts.
405 /SansSerif /Helvetica 16#00 vg&newcompositefont
406 /SansSerif-Bold /Helvetica-Bold 16#01 vg&newcompositefont
407 /SansSerif-Italic /Helvetica-Oblique 16#02 vg&newcompositefont
408 /SansSerif-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont
410 % Make the Serif composite fonts.
411 /Serif /Times-Roman 16#00 vg&newcompositefont
412 /Serif-Bold /Times-Bold 16#01 vg&newcompositefont
413 /Serif-Italic /Times-Italic 16#02 vg&newcompositefont
414 /Serif-BoldItalic /Times-BoldItalic 16#03 vg&newcompositefont
416 % Make the Monospaced composite fonts.
417 /Monospaced /Courier 16#00 vg&newcompositefont
418 /Monospaced-Bold /Courier-Bold 16#01 vg&newcompositefont
419 /Monospaced-Italic /Courier-Oblique 16#02 vg&newcompositefont
420 /Monospaced-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont
422 % Make the Dialog composite fonts.
423 /Dialog /Helvetica 16#00 vg&newcompositefont
424 /Dialog-Bold /Helvetica-Bold 16#01 vg&newcompositefont
425 /Dialog-Italic /Helvetica-Oblique 16#02 vg&newcompositefont
426 /Dialog-BoldItalic /Helvetica-BoldOblique 16#03 vg&newcompositefont
428 % Make the DialogInput composite fonts.
429 /DialogInput /Courier 16#00 vg&newcompositefont
430 /DialogInput-Bold /Courier-Bold 16#01 vg&newcompositefont
431 /DialogInput-Italic /Courier-Oblique 16#02 vg&newcompositefont
432 /DialogInput-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont
434 % Make the Typewriter composite fonts (JDK 1.1 only).
435 /Typewriter /Courier 16#00 vg&newcompositefont
436 /Typewriter-Bold /Courier-Bold 16#01 vg&newcompositefont
437 /Typewriter-Italic /Courier-Oblique 16#02 vg&newcompositefont
438 /Typewriter-BoldItalic /Courier-BoldOblique 16#03 vg&newcompositefont
442 dup /fontsize exch def /SansSerif exch sf
443 /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def
446 dup /fontsize exch def /SansSerif-Bold exch sf
447 /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def
450 dup /fontsize exch def /SansSerif-Italic exch sf
451 /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def
454 dup /fontsize exch def /SansSerif-BoldItalic exch sf
455 /vg&fontstyles [{cfontH} {cfontHB} {cfontHI} {cfontHBI}] def
459 dup /fontsize exch def /Serif exch sf
460 /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def
463 dup /fontsize exch def /Serif-Bold exch sf
464 /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def
467 dup /fontsize exch def /Serif-Italic exch sf
468 /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def
471 dup /fontsize exch def /Serif-BoldItalic exch sf
472 /vg&fontstyles [{cfontT} {cfontTB} {cfontTI} {cfontTBI}] def
476 dup /fontsize exch def /Typewriter exch sf
477 /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def
480 dup /fontsize exch def /Typewriter-Bold exch sf
481 /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def
484 dup /fontsize exch def /Typewriter-Italic exch sf
485 /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def
488 dup /fontsize exch def /Typewriter-BoldItalic exch sf
489 /vg&fontstyles [{cfontC} {cfontCB} {cfontCI} {cfontCBI}] def
492 % Darken or lighten the current color.
493 /darken {0.7 exch exp 3 copy
495 currentrgbcolor 3 {4 -2 roll mul} repeat
496 3 array astore Q} def
499 << /Cr [1.00 0.00 0.00] /Cg [0.00 1.00 0.00]
500 /Cb [0.00 0.00 1.00] /Cc [1.00 0.00 0.00 0.00]
501 /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00]
502 /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67]
503 /Cw [1 ] /Cgrl [0.75]
504 /Cgr [0.50] /Cgrd [0.25]
506 /CGr [1.00 0.00 0.00] /CGg [0.00 1.00 0.00]
507 /CGb [0.00 0.00 1.00] /CGc [1.00 0.00 0.00 0.00]
508 /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00]
509 /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67]
510 /CGw [1 ] /CGgrl [0.75]
511 /CGgr [0.50] /CGgrd [0.25]
513 /CIr [1.00 0.00 0.00] /CIg [0.00 1.00 0.00]
514 /CIb [0.00 0.00 1.00] /CIc [1.00 0.00 0.00 0.00]
515 /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00]
516 /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67]
517 /CIw [1 ] /CIgrl [0.75]
518 /CIgr [0.50] /CIgrd [0.25]
523 << /Cr [1.00 0.33 0.33] /Cg [0.33 1.00 0.33]
524 /Cb [0.33 0.33 1.00] /Cc [1.00 0.00 0.00 0.00]
525 /Cm [0.00 1.00 0.00 0.00] /Cy [0.00 0.00 1.00 0.00]
526 /Co [1.00 0.78 0.00] /Cp [1.00 0.67 0.67]
527 /Cw [1 ] /Cgrl [0.75]
528 /Cgr [0.50] /Cgrd [0.25]
530 /CGr [1.00 0.33 0.33] /CGg [0.33 1.00 0.33]
531 /CGb [0.33 0.33 1.00] /CGc [1.00 0.00 0.00 0.00]
532 /CGm [0.00 1.00 0.00 0.00] /CGy [0.00 0.00 1.00 0.00]
533 /CGo [1.00 0.78 0.00] /CGp [1.00 0.67 0.67]
534 /CGw [1 ] /CGgrl [0.75]
535 /CGgr [0.50] /CGgrd [0.25]
537 /CIr [1.00 0.33 0.33] /CIg [0.33 1.00 0.33]
538 /CIb [0.33 0.33 1.00] /CIc [1.00 0.00 0.00 0.00]
539 /CIm [0.00 1.00 0.00 0.00] /CIy [0.00 0.00 1.00 0.00]
540 /CIo [1.00 0.78 0.00] /CIp [1.00 0.67 0.67]
541 /CIw [1 ] /CIgrl [0.75]
542 /CIgr [0.50] /CIgrd [0.25]
554 /CGr [0.75] /CGg [1 ]
555 /CGb [0.50] /CGc [0.75]
556 /CGm [0.50] /CGy [1 ]
557 /CGo [0.75] /CGp [1 ]
558 /CGw [0 ] /CGgrl [0.25]
559 /CGgr [0.50] /CGgrd [0.75]
565 /CIw [1 ] /CIgrl [1 ]
566 /CIgr [1 ] /CIgrd [1 ]
582 /CGw [0 ] /CGgrl [1 ]
583 /CGgr [1 ] /CGgrd [1 ]
589 /CIw [1 ] /CIgrl [1 ]
590 /CIgr [1 ] /CIgrd [1 ]
595 % The following routines handle the alignment of and printing of
599 % Predefine the bounding box values.
600 /bbllx 0 def /bblly 0 def /bburx 0 def /bbury 0 def
602 % This routine pops the first unicode character off of a string and returns
603 % the remainder of the string, the character code of first character,
604 % and a "true" if the string was non-zero length.
605 % <string> popfirst <remaining string> <true>
606 % <null string> popfirst <false>
609 {dup 0 get /vg&fbyte exch def
610 dup 1 get /vg&cbyte exch def
611 dup length 2 sub 2 exch getinterval true}
615 % This routine shows a single unicode character given the font and
617 % <font code> <char code> unicharshow --
625 % This is an internal routine to alternate between determining the
626 % bounding box for stringsize and showing the string for recshow.
627 % <string> internalshow --
628 /internalshow {show} def
630 % This is an internal routine to alternate between determining the
631 % bounding box for stringsize and stroking various ornaments.
632 % <string> internalstroke --
633 /internalstroke {S} def
635 % Sets up internalshow to use the null device to determine string size.
636 % -- nullinternalshow --
637 /nullinternalshow {/internalshow {false charpath flattenpath
638 pathbbox updatebbox} def} def
640 % Sets up internalstroke to use the null device to determine string size.
641 % -- nullinternalstroke --
642 /nullinternalstroke {
643 /internalstroke {flattenpath pathbbox updatebbox} def} def
645 % This routine tests to see if the character code matches the first
646 % character of a string.
647 % <char code> <string> testchar <char code> <true or false>
648 /testchar {exch dup 3 -1 roll 0 get eq} def
650 % Raise the text baseline for superscripts.
653 0 fontsize 2 div rmoveto
654 /fontsize fontsize 2 mul 3 div def
655 currentfont /FontName get fontsize sf
658 % Un-raise the text baseline for superscripts.
661 /fontsize fontsize 1.5 mul def
662 0 fontsize 2 div neg rmoveto
665 % Lower the text baseline for subscripts.
668 0 fontsize 3 div neg rmoveto
669 /fontsize fontsize 2 mul 3 div def
670 currentfont /FontName get fontsize sf
673 % Un-lower the text baseline for subscripts.
676 /fontsize fontsize 1.5 mul def
677 0 fontsize 3 div rmoveto
680 % Compare the top two elements on the stack and leave only the
682 /maxval {2 copy gt {pop} {exch pop} ifelse} def
684 % Tokenize a string. Do not use the usual PostScript token because
685 % parentheses will not be interpreted correctly because of rescanning
687 /vg&token {/vg&string exch def /vg&index -1 def /vg&level 0 def
688 0 2 vg&string length 2 sub {
689 dup dup 1 add exch vg&string exch get 8 bitshift vg&string 3 -1 roll get or
690 dup 16#f0fe eq {pop 1}{16#f0ff eq {-1}{0} ifelse} ifelse
691 /vg&level exch vg&level add def
692 vg&level 0 eq {/vg&index exch def exit} if pop
695 vg&string vg&index 2 add dup vg&string length exch sub getinterval
696 vg&index 2 gt {vg&string 2 vg&index 2 sub getinterval}{()} ifelse
701 % Recursively show an unicode string.
702 % <string> recshow --
706 % Test to see if this is a string attribute.
707 vg&fbyte 16#f0 and 16#e0 eq
712 currentfont dup /FontStyleBits known {/FontStyleBits get}{pop 0} ifelse
713 vg&cbyte or vg&fontstyles exch get fontsize exch exec
715 vg&token pop recshow currentpoint Q m recshow
718 vg&fbyte 16#F8 and 16#F0 eq {
720 % Superscript and/or subscript.
722 vg&token pop exch vg&token pop 3 -1 roll
723 q raise recshow unraise currentpoint pop Q exch
724 q lower recshow unlower currentpoint pop Q
725 maxval currentpoint exch pop m recshow } if
729 vg&token pop currentpoint 3 -1 roll recshow
730 q 0 J vg&underline vg&uthick w
731 currentpoint 4 -2 roll fontsize 3 div add moveto
732 fontsize 3 div add lineto internalstroke Q
737 vg&token pop currentpoint 3 -1 roll recshow
738 q 0 J vg&underline vg&uthick w
739 currentpoint 4 -2 roll vg&uoffset add moveto
740 vg&uoffset add lineto internalstroke Q
745 vg&token pop currentpoint 3 -1 roll recshow
746 q 0 J [ vg&uthick 5 mul vg&uthick 2 mul] 0 d
747 vg&underline vg&uthick w
748 currentpoint 4 -2 roll vg&uoffset add moveto
749 vg&uoffset add lineto internalstroke Q
754 vg&token pop currentpoint 3 -1 roll recshow
755 q 1 J [ 0 vg&uthick 3 mul] 0 d
756 vg&underline vg&uthick w
757 currentpoint 4 -2 roll vg&uoffset add moveto
758 vg&uoffset add lineto internalstroke Q
763 vg&token pop currentpoint 3 -1 roll recshow
764 q 0 J vg&underline vg&uthick 2 mul w
765 currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto
766 vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q
769 % Gray thick underline.
771 vg&token pop currentpoint 3 -1 roll recshow
772 q 0 J vg&underline vg&uthick 2 mul w 0.5 setgray
773 currentpoint 4 -2 roll vg&uoffset vg&uthick 2 div sub add moveto
774 vg&uoffset vg&uthick 2 div sub add lineto internalstroke Q
779 vg&token pop dup stringsize relative 4 1 roll pop pop exch
781 q 0 J vg&underline vg&uthick w
782 vg&uoffset neg add dup currentpoint pop exch m l internalstroke Q
786 vg&fbyte vg&cbyte unicharshow recshow
792 % Get the underline position and thickness from the current font.
795 currentfont dup /FontType get 0 eq {/FDepVector get 0 get} if
796 dup dup /FontInfo known {
798 dup /UnderlinePosition known {
799 /UnderlinePosition get /vg&uoffset exch def
802 pop /vg&uoffset 0 def
804 dup /UnderlineThickness known {
805 /UnderlineThickness get /vg&uthick exch def
812 pop /vg&uoffset 0 def /vg&uthick 0 def
815 currentfont dup /FontType get 0 eq
816 {/FontMatrix get matrix concatmatrix}{pop} ifelse
817 dup 0 vg&uoffset 3 -1 roll transform /vg&uoffset exch def pop
818 0 vg&uthick 3 -1 roll transform /vg&uthick exch def pop
821 % Make a frame with the coordinates on the stack.
822 % <llx> <lly> <urx> <ury> frame --
823 /frame {4 copy m 3 1 roll exch l 4 -2 roll l l h} def
825 % Resets the accumulated bounding box to a degenerate box at the
836 % Update the accumulated bounding box.
837 % <llx'> <lly'> <urx'> <ury'> updatebbox --
839 dup bbury gt {/bbury exch def} {pop} ifelse
840 dup bburx gt {/bburx exch def} {pop} ifelse
841 dup bblly lt {/bblly exch def} {pop} ifelse
842 dup bbllx lt {/bbllx exch def} {pop} ifelse
845 % Set the bounding box to the values on the stack.
846 % <llx'> <lly'> <urx'> <ury'> updatebbox --
848 /bbury exch def /bburx exch def /bblly exch def /bbllx exch def
851 % Push the accumulated bounding box onto the stack.
852 % -- pushbbox <llx> <lly> <urx> <ury>
853 /pushbbox {bbllx bblly bburx bbury} def
855 % Make the relative bounding box relative to the currentpoint.
856 % <llx'> <lly'> <urx'> <ury'> inflate <llx> <lly> <urx> <ury>
858 2 {fontsize 0.2 mul add 4 1 roll} repeat
859 2 {fontsize 0.2 mul sub 4 1 roll} repeat
862 % Make the relative bounding box relative to the currentpoint.
863 % <llx'> <lly'> <urx'> <ury'> relative <llx> <lly> <urx> <ury>
865 currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll
866 currentpoint 3 -1 roll add 3 1 roll add exch 4 2 roll
869 % Returns the size of a string appropriate for recshow.
870 % <string> stringsize <llx> <lly> <urx> <ury>
872 pushbbox /internalshow load /internalstroke load 7 -1 roll
875 nullinternalshow nullinternalstroke
878 /internalstroke exch def /internalshow exch def
879 pushbbox 8 -4 roll restorebbox
883 % Calculate values for string positioning.
885 3 -1 roll sub /widy exch def sub neg /widx exch def
886 pop pop /dy exch def /dx exch def} def
888 % Utilities to position a string.
889 % First letter (U=upper, C=center, B=baseline, L=lower)
890 % Second letter (L=left, C=center, R=right)
892 {calcval dx neg widy dy add neg rmoveto} % UL
893 {calcval dx neg widy 2 div dy add neg rmoveto} % CL
894 {calcval dx neg 0 rmoveto} % BL
895 {calcval dx neg dy neg rmoveto} % LL
896 {calcval widx dx add neg widy dy add neg rmoveto} % UR
897 {calcval widx dx add neg widy 2 div dy add neg rmoveto} % CR
898 {calcval widx dx add neg 0 rmoveto} % BR
899 {calcval widx dx add neg dy neg rmoveto} % LR
900 {calcval widx 2 div dx add neg widy dy add neg rmoveto} % UC
901 {calcval widx 2 div dx add neg widy 2 div dy add neg rmoveto} % CC
902 {calcval widx 2 div dx add neg 0 rmoveto} % BC
903 {calcval widx 2 div dx add neg dy neg rmoveto} % LC
906 /vg&str {m q 1 -1 scale dup stringsize 4 copy align 11 -1 roll get exec
907 q inflate relative frame exch exec Q recshow Q} def
909 end /procDict exch def
917 20 20 20 20 setmargins
929 0.00000 0.00000 0.00000 RG
930 [ 1.00000 0.00000 0.00000 1.00000 0.00000 0.00000 ] defaultmatrix matrix concatmatrix setmatrix
932 1.00000 1.00000 1.00000 RG
941 0.00000 0.00000 0.00000 RG
942 0.00000 0.00000 0.00000 RG
943 [ 1.00000 0.00000 0.00000 1.00000 0.00000 0.00000 ] defaultmatrix matrix concatmatrix setmatrix
945 1.00000 1.00000 1.00000 RG
954 0.00000 0.00000 0.00000 RG
957 1.00000 1.00000 1.00000 RG
968 [ 1.00000 0.00000 0.00000 1.00000 910.000 579.000 ] concat
969 .258824 .658824 .282353 RG
975 -760.773 -477.068 -759.999 -477.588 -758.982 -477.588 c
976 -758.846 -477.588 -758.702 -477.576 -758.552 -477.554 c
978 -758.784 -476.373 -758.989 -476.412 -759.167 -476.412 c
979 -760.019 -476.412 -760.732 -475.906 -761.307 -474.895 c
983 -752.386 -469.966 -753.158 -469.829 -753.801 -469.829 c
984 -754.895 -469.829 -755.787 -470.193 -756.477 -470.919 c
985 -757.167 -471.646 -757.513 -472.589 -757.513 -473.746 c
986 -757.513 -474.872 -757.208 -475.795 -756.600 -476.515 c
987 -755.992 -477.235 -755.214 -477.595 -754.266 -477.595 c
988 -753.368 -477.595 -752.674 -477.276 -752.184 -476.638 c
989 -751.694 -476.000 -751.449 -475.093 -751.449 -473.917 c
992 -755.943 -471.736 -755.079 -470.854 -753.548 -470.854 c
993 -752.987 -470.854 -752.299 -471.005 -751.483 -471.306 c
997 -752.803 -475.893 -753.318 -476.583 -754.348 -476.583 c
998 -755.382 -476.583 -755.959 -475.893 -756.077 -474.512 c
1002 -748.161 -468.332 -747.393 -468.147 -746.637 -468.147 c
1003 -745.119 -468.147 -744.360 -468.952 -744.360 -470.561 c
1005 -744.857 -470.690 -745.673 -470.171 -746.808 -470.171 c
1006 -747.696 -470.171 -748.403 -470.494 -748.927 -471.142 c
1007 -749.451 -471.789 -749.713 -472.661 -749.713 -473.760 c
1008 -749.713 -474.890 -749.414 -475.811 -748.817 -476.521 c
1009 -748.220 -477.232 -747.448 -477.588 -746.500 -477.588 c
1010 -745.671 -477.588 -744.957 -477.251 -744.360 -476.576 c
1014 -743.007 -470.861 -743.067 -470.001 -743.188 -469.443 c
1015 -743.309 -468.885 -743.535 -468.428 -743.868 -468.072 c
1016 -744.456 -467.448 -745.370 -467.136 -746.609 -467.136 c
1017 -747.475 -467.136 -748.305 -467.268 -749.098 -467.532 c
1021 -744.953 -476.269 -745.598 -476.576 -746.295 -476.576 c
1022 -746.915 -476.576 -747.400 -476.328 -747.751 -475.831 c
1023 -748.102 -475.334 -748.277 -474.653 -748.277 -473.787 c
1024 -748.277 -472.160 -747.705 -471.347 -746.562 -471.347 c
1025 -745.782 -471.347 -745.049 -471.755 -744.360 -472.570 c
1038 -734.995 -469.829 -735.743 -469.973 -736.622 -470.260 c
1040 -735.743 -471.060 -734.977 -470.841 -734.325 -470.841 c
1041 -733.938 -470.841 -733.617 -470.946 -733.361 -471.155 c
1042 -733.106 -471.365 -732.979 -471.627 -732.979 -471.941 c
1043 -732.979 -472.402 -733.336 -472.782 -734.052 -473.083 c
1045 -736.000 -473.901 -736.581 -474.596 -736.581 -475.503 c
1046 -736.581 -476.150 -736.352 -476.659 -735.894 -477.031 c
1047 -735.436 -477.402 -734.808 -477.588 -734.011 -477.588 c
1048 -733.596 -477.588 -733.083 -477.531 -732.473 -477.417 c
1051 -732.944 -476.465 -733.541 -476.576 -733.983 -476.576 c
1052 -734.849 -476.576 -735.282 -476.262 -735.282 -475.633 c
1053 -735.282 -475.227 -734.954 -474.885 -734.298 -474.607 c
1055 -732.915 -474.024 -732.395 -473.697 -732.090 -473.353 c
1056 -731.785 -473.009 -731.632 -472.579 -731.632 -472.064 c
1057 -731.632 -471.413 -731.889 -470.877 -732.404 -470.458 c
1058 -732.919 -470.039 -733.578 -469.829 -734.380 -469.829 c
1061 -727.667 -469.829 -728.200 -470.025 -728.583 -470.417 c
1062 -728.966 -470.809 -729.157 -471.354 -729.157 -472.051 c
1074 -727.811 -471.326 -727.391 -470.841 -726.553 -470.841 c
1075 -726.375 -470.841 -726.159 -470.870 -725.903 -470.930 c
1077 -726.318 -469.886 -726.678 -469.829 -726.983 -469.829 c
1080 -719.437 -469.966 -720.209 -469.829 -720.852 -469.829 c
1081 -721.945 -469.829 -722.837 -470.193 -723.528 -470.919 c
1082 -724.218 -471.646 -724.563 -472.589 -724.563 -473.746 c
1083 -724.563 -474.872 -724.259 -475.795 -723.651 -476.515 c
1084 -723.042 -477.235 -722.264 -477.595 -721.316 -477.595 c
1085 -720.419 -477.595 -719.725 -477.276 -719.235 -476.638 c
1086 -718.745 -476.000 -718.500 -475.093 -718.500 -473.917 c
1089 -722.993 -471.736 -722.130 -470.854 -720.599 -470.854 c
1090 -720.038 -470.854 -719.350 -471.005 -718.534 -471.306 c
1094 -719.854 -475.893 -720.368 -476.583 -721.398 -476.583 c
1095 -722.433 -476.583 -723.009 -475.893 -723.128 -474.512 c
1101 -714.296 -477.068 -713.521 -477.588 -712.505 -477.588 c
1102 -712.368 -477.588 -712.225 -477.576 -712.074 -477.554 c
1104 -712.307 -476.373 -712.512 -476.412 -712.689 -476.412 c
1105 -713.542 -476.412 -714.255 -475.906 -714.829 -474.895 c
1109 -705.908 -469.966 -706.681 -469.829 -707.323 -469.829 c
1110 -708.417 -469.829 -709.309 -470.193 -710.000 -470.919 c
1111 -710.690 -471.646 -711.035 -472.589 -711.035 -473.746 c
1112 -711.035 -474.872 -710.731 -475.795 -710.123 -476.515 c
1113 -709.514 -477.235 -708.736 -477.595 -707.788 -477.595 c
1114 -706.890 -477.595 -706.196 -477.276 -705.707 -476.638 c
1115 -705.217 -476.000 -704.972 -475.093 -704.972 -473.917 c
1118 -709.465 -471.736 -708.602 -470.854 -707.070 -470.854 c
1119 -706.510 -470.854 -705.822 -471.005 -705.006 -471.306 c
1123 -706.325 -475.893 -706.840 -476.583 -707.870 -476.583 c
1124 -708.905 -476.583 -709.481 -475.893 -709.600 -474.512 c
1128 -698.430 -470.351 -699.255 -469.829 -700.357 -469.829 c
1129 -701.251 -469.829 -701.954 -470.155 -702.466 -470.807 c
1130 -702.979 -471.458 -703.235 -472.349 -703.235 -473.479 c
1131 -703.235 -474.715 -702.945 -475.708 -702.364 -476.460 c
1132 -701.783 -477.212 -701.018 -477.588 -700.070 -477.588 c
1133 -699.191 -477.588 -698.462 -477.251 -697.883 -476.576 c
1139 -698.580 -476.269 -699.241 -476.576 -699.865 -476.576 c
1140 -701.155 -476.576 -701.800 -475.590 -701.800 -473.616 c
1141 -701.800 -471.880 -701.226 -471.012 -700.077 -471.012 c
1142 -699.330 -471.012 -698.598 -471.420 -697.883 -472.235 c
1176 .258824 .627451 .658824 RG
1182 -829.773 -554.068 -828.999 -554.588 -827.982 -554.588 c
1183 -827.846 -554.588 -827.702 -554.576 -827.552 -554.554 c
1185 -827.784 -553.373 -827.989 -553.412 -828.167 -553.412 c
1186 -829.019 -553.412 -829.732 -552.906 -830.307 -551.895 c
1190 -821.386 -546.966 -822.158 -546.829 -822.801 -546.829 c
1191 -823.895 -546.829 -824.787 -547.193 -825.477 -547.919 c
1192 -826.167 -548.646 -826.513 -549.589 -826.513 -550.746 c
1193 -826.513 -551.872 -826.208 -552.795 -825.600 -553.515 c
1194 -824.992 -554.235 -824.214 -554.595 -823.266 -554.595 c
1195 -822.368 -554.595 -821.674 -554.276 -821.184 -553.638 c
1196 -820.694 -553.000 -820.449 -552.093 -820.449 -550.917 c
1199 -824.943 -548.736 -824.079 -547.854 -822.548 -547.854 c
1200 -821.987 -547.854 -821.299 -548.005 -820.483 -548.306 c
1204 -821.803 -552.893 -822.318 -553.583 -823.348 -553.583 c
1205 -824.382 -553.583 -824.959 -552.893 -825.077 -551.512 c
1209 -817.161 -545.332 -816.393 -545.147 -815.637 -545.147 c
1210 -814.119 -545.147 -813.360 -545.952 -813.360 -547.561 c
1212 -813.857 -547.690 -814.673 -547.171 -815.808 -547.171 c
1213 -816.696 -547.171 -817.403 -547.494 -817.927 -548.142 c
1214 -818.451 -548.789 -818.713 -549.661 -818.713 -550.760 c
1215 -818.713 -551.890 -818.414 -552.811 -817.817 -553.521 c
1216 -817.220 -554.232 -816.448 -554.588 -815.500 -554.588 c
1217 -814.671 -554.588 -813.957 -554.251 -813.360 -553.576 c
1221 -812.007 -547.861 -812.067 -547.001 -812.188 -546.443 c
1222 -812.309 -545.885 -812.535 -545.428 -812.868 -545.072 c
1223 -813.456 -544.448 -814.370 -544.136 -815.609 -544.136 c
1224 -816.475 -544.136 -817.305 -544.268 -818.098 -544.532 c
1228 -813.953 -553.269 -814.598 -553.576 -815.295 -553.576 c
1229 -815.915 -553.576 -816.400 -553.328 -816.751 -552.831 c
1230 -817.102 -552.334 -817.277 -551.653 -817.277 -550.787 c
1231 -817.277 -549.160 -816.705 -548.347 -815.562 -548.347 c
1232 -814.782 -548.347 -814.049 -548.755 -813.360 -549.570 c
1241 -809.033 -550.940 -808.698 -551.758 -808.028 -552.523 c
1243 -806.882 -553.843 -806.524 -554.515 -806.524 -555.039 c
1244 -806.524 -555.445 -806.682 -555.766 -806.996 -556.003 c
1245 -807.311 -556.240 -807.734 -556.358 -808.268 -556.358 c
1246 -808.965 -556.358 -809.705 -556.190 -810.489 -555.853 c
1248 -809.646 -557.249 -808.858 -557.377 -808.124 -557.377 c
1249 -807.194 -557.377 -806.456 -557.168 -805.909 -556.751 c
1250 -805.362 -556.334 -805.089 -555.771 -805.089 -555.060 c
1251 -805.089 -554.659 -805.167 -554.313 -805.325 -554.024 c
1252 -805.482 -553.735 -805.784 -553.378 -806.230 -552.954 c
1254 -807.078 -552.157 -807.356 -551.820 -807.488 -551.549 c
1255 -807.620 -551.278 -807.687 -550.912 -807.687 -550.452 c
1259 .647059 .686275 .803922 RG
1262 -464.000 -452.373 -469.373 -447.000 -476.000 -447.000 c
1263 -482.627 -447.000 -488.000 -452.373 -488.000 -459.000 c
1264 -488.000 -465.627 -482.627 -471.000 -476.000 -471.000 c
1265 -469.373 -471.000 -464.000 -465.627 -464.000 -459.000 c
1268 0.00000 0.00000 0.00000 RG
1271 -464.000 -452.373 -469.373 -447.000 -476.000 -447.000 c
1272 -482.627 -447.000 -488.000 -452.373 -488.000 -459.000 c
1273 -488.000 -465.627 -482.627 -471.000 -476.000 -471.000 c
1274 -469.373 -471.000 -464.000 -465.627 -464.000 -459.000 c
1277 .647059 .686275 .803922 RG
1280 -651.000 -443.373 -656.373 -438.000 -663.000 -438.000 c
1281 -669.627 -438.000 -675.000 -443.373 -675.000 -450.000 c
1282 -675.000 -456.627 -669.627 -462.000 -663.000 -462.000 c
1283 -656.373 -462.000 -651.000 -456.627 -651.000 -450.000 c
1286 0.00000 0.00000 0.00000 RG
1289 -651.000 -443.373 -656.373 -438.000 -663.000 -438.000 c
1290 -669.627 -438.000 -675.000 -443.373 -675.000 -450.000 c
1291 -675.000 -456.627 -669.627 -462.000 -663.000 -462.000 c
1292 -656.373 -462.000 -651.000 -456.627 -651.000 -450.000 c
1295 .647059 .686275 .803922 RG
1298 -770.000 -443.373 -775.373 -438.000 -782.000 -438.000 c
1299 -788.627 -438.000 -794.000 -443.373 -794.000 -450.000 c
1300 -794.000 -456.627 -788.627 -462.000 -782.000 -462.000 c
1301 -775.373 -462.000 -770.000 -456.627 -770.000 -450.000 c
1304 0.00000 0.00000 0.00000 RG
1307 -770.000 -443.373 -775.373 -438.000 -782.000 -438.000 c
1308 -788.627 -438.000 -794.000 -443.373 -794.000 -450.000 c
1309 -794.000 -456.627 -788.627 -462.000 -782.000 -462.000 c
1310 -775.373 -462.000 -770.000 -456.627 -770.000 -450.000 c
1315 -774.000 -445.582 -777.582 -442.000 -782.000 -442.000 c
1316 -786.418 -442.000 -790.000 -445.582 -790.000 -450.000 c
1317 -790.000 -454.418 -786.418 -458.000 -782.000 -458.000 c
1318 -777.582 -458.000 -774.000 -454.418 -774.000 -450.000 c
1321 .258824 .258824 .658824 RG
1327 -905.773 -571.068 -904.999 -571.588 -903.982 -571.588 c
1328 -903.846 -571.588 -903.702 -571.576 -903.552 -571.554 c
1330 -903.784 -570.373 -903.989 -570.412 -904.167 -570.412 c
1331 -905.019 -570.412 -905.732 -569.906 -906.307 -568.895 c
1335 -897.386 -563.966 -898.158 -563.829 -898.801 -563.829 c
1336 -899.895 -563.829 -900.787 -564.193 -901.477 -564.919 c
1337 -902.167 -565.646 -902.513 -566.589 -902.513 -567.746 c
1338 -902.513 -568.872 -902.208 -569.795 -901.600 -570.515 c
1339 -900.992 -571.235 -900.214 -571.595 -899.266 -571.595 c
1340 -898.368 -571.595 -897.674 -571.276 -897.184 -570.638 c
1341 -896.694 -570.000 -896.449 -569.093 -896.449 -567.917 c
1344 -900.943 -565.736 -900.079 -564.854 -898.548 -564.854 c
1345 -897.987 -564.854 -897.299 -565.005 -896.483 -565.306 c
1349 -897.803 -569.893 -898.318 -570.583 -899.348 -570.583 c
1350 -900.382 -570.583 -900.959 -569.893 -901.077 -568.512 c
1354 -893.161 -562.332 -892.393 -562.147 -891.637 -562.147 c
1355 -890.119 -562.147 -889.360 -562.952 -889.360 -564.561 c
1357 -889.857 -564.690 -890.673 -564.171 -891.808 -564.171 c
1358 -892.696 -564.171 -893.403 -564.494 -893.927 -565.142 c
1359 -894.451 -565.789 -894.713 -566.661 -894.713 -567.760 c
1360 -894.713 -568.890 -894.414 -569.811 -893.817 -570.521 c
1361 -893.220 -571.232 -892.448 -571.588 -891.500 -571.588 c
1362 -890.671 -571.588 -889.957 -571.251 -889.360 -570.576 c
1366 -888.007 -564.861 -888.067 -564.001 -888.188 -563.443 c
1367 -888.309 -562.885 -888.535 -562.428 -888.868 -562.072 c
1368 -889.456 -561.448 -890.370 -561.136 -891.609 -561.136 c
1369 -892.475 -561.136 -893.305 -561.268 -894.098 -561.532 c
1373 -889.953 -570.269 -890.598 -570.576 -891.295 -570.576 c
1374 -891.915 -570.576 -892.400 -570.328 -892.751 -569.831 c
1375 -893.102 -569.334 -893.277 -568.653 -893.277 -567.787 c
1376 -893.277 -566.160 -892.705 -565.347 -891.562 -565.347 c
1377 -890.782 -565.347 -890.049 -565.755 -889.360 -566.570 c
1390 -879.995 -563.829 -880.743 -563.973 -881.622 -564.260 c
1392 -880.743 -565.060 -879.977 -564.841 -879.325 -564.841 c
1393 -878.938 -564.841 -878.617 -564.946 -878.361 -565.155 c
1394 -878.106 -565.365 -877.979 -565.627 -877.979 -565.941 c
1395 -877.979 -566.402 -878.336 -566.782 -879.052 -567.083 c
1397 -881.000 -567.901 -881.581 -568.596 -881.581 -569.503 c
1398 -881.581 -570.150 -881.352 -570.659 -880.894 -571.031 c
1399 -880.436 -571.402 -879.808 -571.588 -879.011 -571.588 c
1400 -878.596 -571.588 -878.083 -571.531 -877.473 -571.417 c
1403 -877.944 -570.465 -878.541 -570.576 -878.983 -570.576 c
1404 -879.849 -570.576 -880.282 -570.262 -880.282 -569.633 c
1405 -880.282 -569.227 -879.954 -568.885 -879.298 -568.607 c
1407 -877.915 -568.024 -877.395 -567.697 -877.090 -567.353 c
1408 -876.785 -567.009 -876.632 -566.579 -876.632 -566.064 c
1409 -876.632 -565.413 -876.889 -564.877 -877.404 -564.458 c
1410 -877.919 -564.039 -878.578 -563.829 -879.380 -563.829 c
1413 -872.667 -563.829 -873.200 -564.025 -873.583 -564.417 c
1414 -873.966 -564.809 -874.157 -565.354 -874.157 -566.051 c
1426 -872.811 -565.326 -872.391 -564.841 -871.553 -564.841 c
1427 -871.375 -564.841 -871.159 -564.870 -870.903 -564.930 c
1429 -871.318 -563.886 -871.678 -563.829 -871.983 -563.829 c
1432 -864.437 -563.966 -865.209 -563.829 -865.852 -563.829 c
1433 -866.945 -563.829 -867.837 -564.193 -868.528 -564.919 c
1434 -869.218 -565.646 -869.563 -566.589 -869.563 -567.746 c
1435 -869.563 -568.872 -869.259 -569.795 -868.651 -570.515 c
1436 -868.042 -571.235 -867.264 -571.595 -866.316 -571.595 c
1437 -865.419 -571.595 -864.725 -571.276 -864.235 -570.638 c
1438 -863.745 -570.000 -863.500 -569.093 -863.500 -567.917 c
1441 -867.993 -565.736 -867.130 -564.854 -865.599 -564.854 c
1442 -865.038 -564.854 -864.350 -565.005 -863.534 -565.306 c
1446 -864.854 -569.893 -865.368 -570.583 -866.398 -570.583 c
1447 -867.433 -570.583 -868.009 -569.893 -868.128 -568.512 c
1453 -859.296 -571.068 -858.521 -571.588 -857.505 -571.588 c
1454 -857.368 -571.588 -857.225 -571.576 -857.074 -571.554 c
1456 -857.307 -570.373 -857.512 -570.412 -857.689 -570.412 c
1457 -858.542 -570.412 -859.255 -569.906 -859.829 -568.895 c
1461 -850.908 -563.966 -851.681 -563.829 -852.323 -563.829 c
1462 -853.417 -563.829 -854.309 -564.193 -855.000 -564.919 c
1463 -855.690 -565.646 -856.035 -566.589 -856.035 -567.746 c
1464 -856.035 -568.872 -855.731 -569.795 -855.123 -570.515 c
1465 -854.514 -571.235 -853.736 -571.595 -852.788 -571.595 c
1466 -851.890 -571.595 -851.196 -571.276 -850.707 -570.638 c
1467 -850.217 -570.000 -849.972 -569.093 -849.972 -567.917 c
1470 -854.465 -565.736 -853.602 -564.854 -852.070 -564.854 c
1471 -851.510 -564.854 -850.822 -565.005 -850.006 -565.306 c
1475 -851.325 -569.893 -851.840 -570.583 -852.870 -570.583 c
1476 -853.905 -570.583 -854.481 -569.893 -854.600 -568.512 c
1480 -843.430 -564.351 -844.255 -563.829 -845.357 -563.829 c
1481 -846.251 -563.829 -846.954 -564.155 -847.466 -564.807 c
1482 -847.979 -565.458 -848.235 -566.349 -848.235 -567.479 c
1483 -848.235 -568.715 -847.945 -569.708 -847.364 -570.460 c
1484 -846.783 -571.212 -846.018 -571.588 -845.070 -571.588 c
1485 -844.191 -571.588 -843.462 -571.251 -842.883 -570.576 c
1491 -843.580 -570.269 -844.241 -570.576 -844.865 -570.576 c
1492 -846.155 -570.576 -846.800 -569.590 -846.800 -567.616 c
1493 -846.800 -565.880 -846.226 -565.012 -845.077 -565.012 c
1494 -844.330 -565.012 -843.598 -565.420 -842.883 -566.235 c
1520 -812.538 -571.068 -811.763 -571.588 -810.747 -571.588 c
1521 -810.610 -571.588 -810.467 -571.576 -810.316 -571.554 c
1523 -810.549 -570.373 -810.754 -570.412 -810.932 -570.412 c
1524 -811.784 -570.412 -812.497 -569.906 -813.071 -568.895 c
1528 -804.150 -563.966 -804.923 -563.829 -805.565 -563.829 c
1529 -806.659 -563.829 -807.551 -564.193 -808.242 -564.919 c
1530 -808.932 -565.646 -809.277 -566.589 -809.277 -567.746 c
1531 -809.277 -568.872 -808.973 -569.795 -808.365 -570.515 c
1532 -807.756 -571.235 -806.978 -571.595 -806.030 -571.595 c
1533 -805.132 -571.595 -804.439 -571.276 -803.949 -570.638 c
1534 -803.459 -570.000 -803.214 -569.093 -803.214 -567.917 c
1537 -807.707 -565.736 -806.844 -564.854 -805.312 -564.854 c
1538 -804.752 -564.854 -804.064 -565.005 -803.248 -565.306 c
1542 -804.567 -569.893 -805.082 -570.583 -806.112 -570.583 c
1543 -807.147 -570.583 -807.723 -569.893 -807.842 -568.512 c
1547 -799.926 -562.332 -799.158 -562.147 -798.401 -562.147 c
1548 -796.884 -562.147 -796.125 -562.952 -796.125 -564.561 c
1550 -796.622 -564.690 -797.438 -564.171 -798.572 -564.171 c
1551 -799.461 -564.171 -800.167 -564.494 -800.691 -565.142 c
1552 -801.215 -565.789 -801.478 -566.661 -801.478 -567.760 c
1553 -801.478 -568.890 -801.179 -569.811 -800.582 -570.521 c
1554 -799.985 -571.232 -799.213 -571.588 -798.265 -571.588 c
1555 -797.435 -571.588 -796.722 -571.251 -796.125 -570.576 c
1559 -794.771 -564.861 -794.832 -564.001 -794.953 -563.443 c
1560 -795.073 -562.885 -795.300 -562.428 -795.633 -562.072 c
1561 -796.221 -561.448 -797.134 -561.136 -798.374 -561.136 c
1562 -799.240 -561.136 -800.069 -561.268 -800.862 -561.532 c
1566 -796.717 -570.269 -797.362 -570.576 -798.060 -570.576 c
1567 -798.679 -570.576 -799.165 -570.328 -799.516 -569.831 c
1568 -799.867 -569.334 -800.042 -568.653 -800.042 -567.787 c
1569 -800.042 -566.160 -799.470 -565.347 -798.326 -565.347 c
1570 -797.547 -565.347 -796.813 -565.755 -796.125 -566.570 c
1583 -786.760 -563.829 -787.507 -563.973 -788.387 -564.260 c
1585 -787.507 -565.060 -786.742 -564.841 -786.090 -564.841 c
1586 -785.702 -564.841 -785.381 -564.946 -785.126 -565.155 c
1587 -784.871 -565.365 -784.743 -565.627 -784.743 -565.941 c
1588 -784.743 -566.402 -785.101 -566.782 -785.816 -567.083 c
1590 -787.765 -567.901 -788.346 -568.596 -788.346 -569.503 c
1591 -788.346 -570.150 -788.117 -570.659 -787.659 -571.031 c
1592 -787.201 -571.402 -786.573 -571.588 -785.775 -571.588 c
1593 -785.361 -571.588 -784.848 -571.531 -784.237 -571.417 c
1596 -784.709 -570.465 -785.306 -570.576 -785.748 -570.576 c
1597 -786.614 -570.576 -787.047 -570.262 -787.047 -569.633 c
1598 -787.047 -569.227 -786.719 -568.885 -786.062 -568.607 c
1600 -784.679 -568.024 -784.160 -567.697 -783.854 -567.353 c
1601 -783.549 -567.009 -783.396 -566.579 -783.396 -566.064 c
1602 -783.396 -565.413 -783.654 -564.877 -784.169 -564.458 c
1603 -784.684 -564.039 -785.342 -563.829 -786.145 -563.829 c
1606 -779.432 -563.829 -779.965 -564.025 -780.348 -564.417 c
1607 -780.730 -564.809 -780.922 -565.354 -780.922 -566.051 c
1619 -779.575 -565.326 -779.156 -564.841 -778.317 -564.841 c
1620 -778.140 -564.841 -777.923 -564.870 -777.668 -564.930 c
1622 -778.083 -563.886 -778.443 -563.829 -778.748 -563.829 c
1625 -771.201 -563.966 -771.974 -563.829 -772.616 -563.829 c
1626 -773.710 -563.829 -774.602 -564.193 -775.292 -564.919 c
1627 -775.983 -565.646 -776.328 -566.589 -776.328 -567.746 c
1628 -776.328 -568.872 -776.024 -569.795 -775.416 -570.515 c
1629 -774.807 -571.235 -774.029 -571.595 -773.081 -571.595 c
1630 -772.183 -571.595 -771.489 -571.276 -771.000 -570.638 c
1631 -770.510 -570.000 -770.265 -569.093 -770.265 -567.917 c
1634 -774.758 -565.736 -773.895 -564.854 -772.363 -564.854 c
1635 -771.803 -564.854 -771.115 -565.005 -770.299 -565.306 c
1639 -771.618 -569.893 -772.133 -570.583 -773.163 -570.583 c
1640 -774.198 -570.583 -774.774 -569.893 -774.893 -568.512 c
1646 -766.061 -571.068 -765.286 -571.588 -764.270 -571.588 c
1647 -764.133 -571.588 -763.989 -571.576 -763.839 -571.554 c
1649 -764.071 -570.373 -764.276 -570.412 -764.454 -570.412 c
1650 -765.306 -570.412 -766.020 -569.906 -766.594 -568.895 c
1654 -757.673 -563.966 -758.445 -563.829 -759.088 -563.829 c
1655 -760.182 -563.829 -761.074 -564.193 -761.764 -564.919 c
1656 -762.455 -565.646 -762.800 -566.589 -762.800 -567.746 c
1657 -762.800 -568.872 -762.496 -569.795 -761.887 -570.515 c
1658 -761.279 -571.235 -760.501 -571.595 -759.553 -571.595 c
1659 -758.655 -571.595 -757.961 -571.276 -757.471 -570.638 c
1660 -756.981 -570.000 -756.736 -569.093 -756.736 -567.917 c
1663 -761.230 -565.736 -760.366 -564.854 -758.835 -564.854 c
1664 -758.274 -564.854 -757.586 -565.005 -756.771 -565.306 c
1668 -758.090 -569.893 -758.605 -570.583 -759.635 -570.583 c
1669 -760.669 -570.583 -761.246 -569.893 -761.364 -568.512 c
1673 -750.194 -564.351 -751.019 -563.829 -752.122 -563.829 c
1674 -753.015 -563.829 -753.718 -564.155 -754.231 -564.807 c
1675 -754.744 -565.458 -755.000 -566.349 -755.000 -567.479 c
1676 -755.000 -568.715 -754.709 -569.708 -754.128 -570.460 c
1677 -753.547 -571.212 -752.783 -571.588 -751.835 -571.588 c
1678 -750.955 -571.588 -750.226 -571.251 -749.647 -570.576 c
1684 -750.345 -570.269 -751.006 -570.576 -751.630 -570.576 c
1685 -752.920 -570.576 -753.564 -569.590 -753.564 -567.616 c
1686 -753.564 -565.880 -752.990 -565.012 -751.842 -565.012 c
1687 -751.094 -565.012 -750.363 -565.420 -749.647 -566.235 c
1717 -639.436 -440.351 -640.260 -439.829 -641.363 -439.829 c
1718 -642.257 -439.829 -642.959 -440.155 -643.472 -440.807 c
1719 -643.985 -441.458 -644.241 -442.349 -644.241 -443.479 c
1720 -644.241 -444.715 -643.951 -445.708 -643.370 -446.460 c
1721 -642.789 -447.212 -642.024 -447.588 -641.076 -447.588 c
1722 -640.197 -447.588 -639.467 -447.251 -638.889 -446.576 c
1728 -639.586 -446.269 -640.247 -446.576 -640.871 -446.576 c
1729 -642.161 -446.576 -642.806 -445.590 -642.806 -443.616 c
1730 -642.806 -441.880 -642.231 -441.012 -641.083 -441.012 c
1731 -640.336 -441.012 -639.604 -441.420 -638.889 -442.235 c
1734 -632.998 -439.829 -633.846 -440.181 -634.479 -440.885 c
1735 -635.113 -441.589 -635.430 -442.532 -635.430 -443.712 c
1736 -635.430 -444.906 -635.112 -445.850 -634.476 -446.545 c
1737 -633.840 -447.240 -632.978 -447.588 -631.889 -447.588 c
1738 -630.799 -447.588 -629.937 -447.240 -629.301 -446.545 c
1739 -628.666 -445.850 -628.348 -444.910 -628.348 -443.726 c
1740 -628.348 -442.513 -628.667 -441.561 -629.305 -440.868 c
1741 -629.943 -440.175 -630.820 -439.829 -631.937 -439.829 c
1744 -630.490 -440.841 -629.776 -441.802 -629.776 -443.726 c
1745 -629.776 -445.626 -630.480 -446.576 -631.889 -446.576 c
1746 -633.292 -446.576 -633.994 -445.621 -633.994 -443.712 c
1747 -633.994 -441.798 -633.301 -440.841 -631.916 -440.841 c
1753 -624.185 -447.068 -623.314 -447.588 -622.284 -447.588 c
1754 -621.642 -447.588 -621.129 -447.384 -620.746 -446.976 c
1755 -620.363 -446.568 -620.172 -446.020 -620.172 -445.332 c
1759 -621.519 -445.446 -621.599 -445.839 -621.761 -446.074 c
1760 -621.923 -446.308 -622.191 -446.426 -622.564 -446.426 c
1761 -623.389 -446.426 -624.166 -445.886 -624.896 -444.806 c
1765 -613.015 -439.966 -613.787 -439.829 -614.430 -439.829 c
1766 -615.523 -439.829 -616.416 -440.193 -617.106 -440.919 c
1767 -617.796 -441.646 -618.142 -442.589 -618.142 -443.746 c
1768 -618.142 -444.872 -617.837 -445.795 -617.229 -446.515 c
1769 -616.621 -447.235 -615.842 -447.595 -614.895 -447.595 c
1770 -613.997 -447.595 -613.303 -447.276 -612.813 -446.638 c
1771 -612.323 -446.000 -612.078 -445.093 -612.078 -443.917 c
1774 -616.572 -441.736 -615.708 -440.854 -614.177 -440.854 c
1775 -613.616 -440.854 -612.928 -441.005 -612.112 -441.306 c
1779 -613.432 -445.893 -613.947 -446.583 -614.977 -446.583 c
1780 -616.011 -446.583 -616.588 -445.893 -616.706 -444.512 c
1814 .258824 .627451 .658824 RG
1817 -761.300 -452.829 -762.047 -452.973 -762.927 -453.260 c
1819 -762.047 -454.060 -761.282 -453.841 -760.630 -453.841 c
1820 -760.243 -453.841 -759.921 -453.946 -759.666 -454.155 c
1821 -759.411 -454.365 -759.283 -454.627 -759.283 -454.941 c
1822 -759.283 -455.402 -759.641 -455.782 -760.356 -456.083 c
1824 -762.305 -456.901 -762.886 -457.596 -762.886 -458.503 c
1825 -762.886 -459.150 -762.657 -459.659 -762.199 -460.031 c
1826 -761.741 -460.402 -761.113 -460.588 -760.315 -460.588 c
1827 -759.901 -460.588 -759.388 -460.531 -758.777 -460.417 c
1830 -759.249 -459.465 -759.846 -459.576 -760.288 -459.576 c
1831 -761.154 -459.576 -761.587 -459.262 -761.587 -458.633 c
1832 -761.587 -458.227 -761.259 -457.885 -760.603 -457.607 c
1834 -759.219 -457.024 -758.700 -456.697 -758.395 -456.353 c
1835 -758.089 -456.009 -757.937 -455.579 -757.937 -455.064 c
1836 -757.937 -454.413 -758.194 -453.877 -758.709 -453.458 c
1837 -759.224 -453.039 -759.882 -452.829 -760.685 -452.829 c
1840 -753.972 -452.829 -754.505 -453.025 -754.888 -453.417 c
1841 -755.271 -453.809 -755.462 -454.354 -755.462 -455.051 c
1853 -754.115 -454.326 -753.696 -453.841 -752.857 -453.841 c
1854 -752.680 -453.841 -752.463 -453.870 -752.208 -453.930 c
1856 -752.623 -452.886 -752.983 -452.829 -753.288 -452.829 c
1859 -747.259 -453.201 -748.036 -452.829 -748.783 -452.829 c
1860 -749.398 -452.829 -749.909 -453.022 -750.314 -453.407 c
1861 -750.720 -453.792 -750.923 -454.278 -750.923 -454.866 c
1862 -750.923 -455.677 -750.582 -456.301 -749.901 -456.736 c
1863 -749.220 -457.171 -748.243 -457.389 -746.972 -457.389 c
1866 -746.650 -459.146 -747.092 -459.576 -747.977 -459.576 c
1867 -748.688 -459.576 -749.455 -459.357 -750.280 -458.920 c
1869 -749.373 -460.403 -748.523 -460.588 -747.730 -460.588 c
1870 -746.901 -460.588 -746.289 -460.401 -745.895 -460.027 c
1871 -745.501 -459.654 -745.304 -459.073 -745.304 -458.284 c
1873 -745.304 -454.151 -745.067 -453.766 -744.593 -453.766 c
1874 -744.534 -453.766 -744.447 -453.775 -744.333 -453.793 c
1876 -744.543 -452.902 -744.880 -452.829 -745.249 -452.829 c
1877 -745.878 -452.829 -746.279 -453.201 -746.452 -453.943 c
1882 -747.840 -456.609 -748.437 -456.469 -748.893 -456.189 c
1883 -749.348 -455.909 -749.576 -455.541 -749.576 -455.085 c
1884 -749.576 -454.761 -749.462 -454.488 -749.234 -454.265 c
1885 -749.007 -454.041 -748.729 -453.930 -748.400 -453.930 c
1886 -747.840 -453.930 -747.257 -454.178 -746.650 -454.675 c
1892 -740.669 -460.068 -739.894 -460.588 -738.878 -460.588 c
1893 -738.741 -460.588 -738.598 -460.576 -738.447 -460.554 c
1895 -738.680 -459.373 -738.885 -459.412 -739.062 -459.412 c
1896 -739.915 -459.412 -740.628 -458.906 -741.202 -457.895 c
1900 -735.275 -452.829 -735.809 -453.025 -736.191 -453.417 c
1901 -736.574 -453.809 -736.766 -454.354 -736.766 -455.051 c
1913 -735.419 -454.326 -735.000 -453.841 -734.161 -453.841 c
1914 -733.983 -453.841 -733.767 -453.870 -733.512 -453.930 c
1916 -733.926 -452.886 -734.286 -452.829 -734.592 -452.829 c
1940 -610.400 -472.081 -609.594 -472.965 -607.980 -472.965 c
1941 -607.529 -472.965 -607.017 -472.890 -606.442 -472.739 c
1943 -607.049 -471.860 -607.534 -471.953 -607.898 -471.953 c
1944 -608.340 -471.953 -608.642 -471.847 -608.804 -471.635 c
1945 -608.966 -471.423 -609.047 -471.030 -609.047 -470.456 c
1964 -599.401 -469.068 -598.531 -469.588 -597.501 -469.588 c
1965 -596.858 -469.588 -596.346 -469.384 -595.963 -468.976 c
1966 -595.580 -468.568 -595.389 -468.020 -595.389 -467.332 c
1970 -596.735 -467.446 -596.816 -467.839 -596.978 -468.074 c
1971 -597.140 -468.308 -597.408 -468.426 -597.781 -468.426 c
1972 -598.606 -468.426 -599.383 -467.886 -600.112 -466.806 c
1986 -587.370 -461.829 -588.118 -461.973 -588.997 -462.260 c
1988 -588.118 -463.060 -587.352 -462.841 -586.700 -462.841 c
1989 -586.313 -462.841 -585.992 -462.946 -585.736 -463.155 c
1990 -585.481 -463.365 -585.354 -463.627 -585.354 -463.941 c
1991 -585.354 -464.402 -585.711 -464.782 -586.427 -465.083 c
1993 -588.375 -465.901 -588.956 -466.596 -588.956 -467.503 c
1994 -588.956 -468.150 -588.727 -468.659 -588.269 -469.031 c
1995 -587.811 -469.402 -587.183 -469.588 -586.386 -469.588 c
1996 -585.971 -469.588 -585.458 -469.531 -584.848 -469.417 c
1999 -585.319 -468.465 -585.916 -468.576 -586.358 -468.576 c
2000 -587.224 -468.576 -587.657 -468.262 -587.657 -467.633 c
2001 -587.657 -467.227 -587.329 -466.885 -586.673 -466.607 c
2003 -585.290 -466.024 -584.770 -465.697 -584.465 -465.353 c
2004 -584.160 -465.009 -584.007 -464.579 -584.007 -464.064 c
2005 -584.007 -463.413 -584.264 -462.877 -584.779 -462.458 c
2006 -585.294 -462.039 -585.953 -461.829 -586.755 -461.829 c
2012 -579.529 -469.068 -578.659 -469.588 -577.629 -469.588 c
2013 -576.986 -469.588 -576.474 -469.384 -576.091 -468.976 c
2014 -575.708 -468.568 -575.517 -468.020 -575.517 -467.332 c
2018 -576.863 -467.446 -576.944 -467.839 -577.106 -468.074 c
2019 -577.268 -468.308 -577.535 -468.426 -577.909 -468.426 c
2020 -578.734 -468.426 -579.511 -467.886 -580.240 -466.806 c
2030 -572.536 -465.940 -572.201 -466.758 -571.531 -467.523 c
2032 -570.385 -468.843 -570.027 -469.515 -570.027 -470.039 c
2033 -570.027 -470.445 -570.185 -470.766 -570.499 -471.003 c
2034 -570.813 -471.240 -571.237 -471.358 -571.771 -471.358 c
2035 -572.468 -471.358 -573.208 -471.190 -573.992 -470.853 c
2037 -573.149 -472.249 -572.361 -472.377 -571.627 -472.377 c
2038 -570.697 -472.377 -569.959 -472.168 -569.412 -471.751 c
2039 -568.865 -471.334 -568.592 -470.771 -568.592 -470.060 c
2040 -568.592 -469.659 -568.670 -469.313 -568.828 -469.024 c
2041 -568.985 -468.735 -569.287 -468.378 -569.733 -467.954 c
2043 -570.581 -467.157 -570.859 -466.820 -570.991 -466.549 c
2044 -571.123 -466.278 -571.189 -465.912 -571.189 -465.452 c
2050 0.00000 0.00000 0.00000 RG
2080 -871.721 -466.401 -872.815 -469.518 -868.446 -474.553 c
2082 -818.185 -532.482 -812.766 -534.192 -806.299 -532.575 c
2084 -751.234 -518.808 -749.491 -515.019 -752.472 -509.056 c
2094 [ 1.00000 0.00000 0.00000 1.00000 0.00000 0.00000 ] defaultmatrix matrix concatmatrix setmatrix