H XdX __text__TEXTy&dP\__data__DATA& )j __cstring__TEXT(I+,__const__DATASPWk__literal4__TEXTT$hW__literal8__TEXT(T0W__picsymbolstub2__TEXTXTW(k__la_sym_ptr2__DATA@X[r((__nl_symbol_ptr__DATAXD\P__textcoal_nt__TEXTXH\ @,u6w` P (sQUWVS<EDDž@Dž<UtLHMtHLDžPDžTDž`DždSمݝhSمݝpDžxDž|Sم]EEEEEEEEEEED$E$VD$t$ED$ED$ o&D$DD$U $|VH P>uDA@PT>uDGDTHPXLT\`>t'hD$`D$E $U5 d>t'pD$dD$U $U x>t.ED$xD$M $wU *P6|>tt$D$ (OD$6OD$U $2M $yR>t,D$ OOD$aOD$} <$fR|$ED$E $Rƅ D$ zOD$t$U $QE<$Q} }>tjTD$ED$M $eQEt8T>u=D$|OD$ ED$OD$} <$QDžH EEpttF$;X>}aF,;H|VF(;\}KF0;L|@F x,>t6D$ t$UT$M $P,H} <$PHuvuE}>D$ OD$OD$E $PU $P>uLP$OD$OD$ OtBD$OD$M $POD$OD$ DG,D$OD$E $FPP$>OP$OD$ D$OD$U $ P}<T*YEXpZSX,D$@P*YEXhX,D$*<YEXp,D$ *@YEXh,@P*YEXpZSX,D$*<YEhf(\f(X,D$*@YEXp,D$ <T*YE\,D$ PD$$MD$OD$ D$PD$E $ND$ (PD$CPD$U $^ND$ }t:OP8D$oPD$X4$Lt$M $YLPD$PD$} <$MPD$E$LtdO8PD$8T$ }>u@D$t$M $M<$LuD$PD$} <$WMSS>t!D$D$E $.M>u߃}>t0U $KD$D$E$mKMA$YLED$ QD$4$KD$ t$QD$} <$LD$E$UKtXO4$QD$4L$ }>u@D$|$E $JL4$JuD$=QD$U $!LD$ JQD$PQD$M $KpD$hD$]QD$4$JD$t$} <$K}>tD$rQD$<$KED$D$}QD$<$9JD$|$E $NKt0U $HD$D$E$qHMA$]IDžH}wF$;X>F,;HF(;\F0;LF x,>~8D$RD$E $iIF D$ t$UT$M $P,H.D$RD$} <$I}>t'<$GD$D$E$hG<$ZHv }>t'D$ RD$5RD$E $H}>t0U $.GD$D$E$FMA$G`>t`$Fd>td$uFx>tx$]F|>t|$EF}>t E$3F}>t E$!F}>t E$F}>t E$E}t}>uED$} <$E}t E$EE$ELEtH<[^_]ÐU]u}}u ~LtD<$ED$ D$FLD$E$D…tD$ r?D$T$bG*ZC^G*^G *^D$L$\$AD$4$ED$t$E$F]u}]ÐUWVSL} $DH?E$CD$ D$GHD$E$CƅD$ D$t$E$vC>tTE$ZED$#AD$t$%AD$ D$*AD$E$EuD$@$BݝZBf..k8\D$D$$yB,$DCD$E$3BƉt$CAD$uȉ4$CD$FAD$t$RAD$ D$]AD$E$DD$_AD$$A>tD$fAD$E$lDD$qAD$E$ODD$D$Gd$$CL[^_]ÐUWVS#} uE>tD$ pD$lD$hD$dD$`D$ \D$t$$@D$D$lD$hD$D$ D$t$$2@XD$?D$E$/CDžHDžTE UDLE$UDP9ux8?DT$DD$@$3AD$@D$U$BBDžHTT;>~'D$ <D$E$BDžT;L7tUHT$DD$<$@D$ED$ ED$ED$ED$ED$ED$ ED$UT$U $=ED$ ED$5<D$u4$?D$t$<$@ED$ED$D$D$ED$ UT$E D$<$N>uD$<<D$<$:@Ћ]u}]ÐUE*@\EEEÐUWVS }uE >D$G$\$D$;D$$q>D$D$E$?~{(; E D$G$$\$D$D$ $=D$ D$E$? [^_]UWVS<} ED$<$-<]9}>u5D$9D$ |$+:D$E$>?EE8t-uD5@D$@$$;uNjEit1itMctlmt(pt5]EY6;Z;YE EY>;E؃E?EE8t9uD5@D$@$:uNjE8EE<[^_]ÐU]u}}u ?th#GO#WO #wO$O @D*Z9^EG RD*^EG 4vDDG vD*Z9^EG D*^EG D*^E]u}]ÐUWVSEDžDžPT> M E @ |x$8|B6DžыR AADžDžDžututut9v#,# ,,# , 9|&Dž9}v49|틕|zw Dž Dž|$ D$L$U $ 7ƒ!ШDu>u DžtD> t Zt;OE M IDž+E Dž`U RDž N`>~\M $9D$7D$4$P8D$t$U$e9$|7`ЙU$p<89MxDžttp>txD$ U T$58D$p $S7D$pD$U$xL$ E D$H8D$p$ 7D$pL$E$AxT$ M L$H8D$p$6D$pT$M $7+x9aHtEE 9NHlL$D$U$RHPL$LT$ T$D$$M8Y8YX9YXȉ Z8f.G>‰D$[8D$l $05D$lD$U$?6tt<>~'DžtD$4D$M $6EE 9E >`‰D$[8D$p $4D$pD$U$5ME 9DD$T$M $QHPT$LL$ T$D$$8Y8YX9YXZ8YZ8X$O1ݝ00,D$[8D$4$3D$t$E$4tt<>~'DžtD$4D$U$\4EE 9ME 9Dž`Dždo@DžXDž\?@TT$L$E$PHPL$LT$ T$D$$`YXX$0ݝ00,`YXX$/ݝ00,`YXX$/ݝ00,|$t$ D$`8D$T $1D$TD$U$2tt<>~'DžtD$4D$M $2EE 9+x9t5> t Mt,Bm8D$p$(m8D$p$x8D$p $0D$pD$U$1xL$8D$p$0D$pT$M $1)~$/[^_]((L((P((X((\((H(( ((@((4((0(()()()(D)()(!)(-colormap-colormode-file-channel-fontmap-height-pageanchor-pageheight-pagewidth-pagex-pagey-prolog-rotate-width-x-y%%BeginProlog 50 dict begin % This is a standard prolog for Postscript generated by Tk's canvas % widget. % RCS: @(#) $Id: tkCanvPs.c,v 1.6 1999/12/14 06:52:26 hobbs Exp $ % The definitions below just define all of the variables used in % any of the procedures here. This is needed for obscure reasons % explained on p. 716 of the Postscript manual (Section H.2.7, % "Initializing Variables," in the section on Encapsulated Postscript). /baseline 0 def /stipimage 0 def /height 0 def /justify 0 def /lineLength 0 def /spacing 0 def /stipple 0 def /strings 0 def /xoffset 0 def /yoffset 0 def /tmpstip null def % Define the array ISOLatin1Encoding (which specifies how characters are % encoded for ISO-8859-1 fonts), if it isn't already present (Postscript % level 2 is supposed to define it, but level 1 doesn't). systemdict /ISOLatin1Encoding known not { /ISOLatin1Encoding [ /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright /parenleft /parenright /asterisk /plus /comma /minus /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /space /dotlessi /grave /acute /circumflex /tilde /macron /breve /dotaccent /dieresis /space /ring /cedilla /space /hungarumlaut /ogonek /caron /space /exclamdown /cent /sterling /currency /yen /brokenbar /section /dieresis /copyright /ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron /degree /plusminus /twosuperior /threesuperior /acute /mu /paragraph /periodcentered /cedillar /onesuperior /ordmasculine /guillemotright /onequarter /onehalf /threequarters /questiondown /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla /Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis /Eth /Ntilde /Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply /Oslash /Ugrave /Uacute /Ucircumflex /Udieresis /Yacute /Thorn /germandbls /agrave /aacute /acircumflex /atilde /adieresis /aring /ae /ccedilla /egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis /eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide /oslash /ugrave /uacute /ucircumflex /udieresis /yacute /thorn /ydieresis ] def } if % font ISOEncode font % This procedure changes the encoding of a font from the default % Postscript encoding to ISOLatin1. It's typically invoked just % before invoking "setfont". The body of this procedure comes from % Section 5.6.1 of the Postscript book. /ISOEncode { dup length dict begin {1 index /FID ne {def} {pop pop} ifelse} forall /Encoding ISOLatin1Encoding def currentdict end % I'm not sure why it's necessary to use "definefont" on this new % font, but it seems to be important; just use the name "Temporary" % for the font. /Temporary exch definefont } bind def % StrokeClip % % This procedure converts the current path into a clip area under % the assumption of stroking. It's a bit tricky because some Postscript % interpreters get errors during strokepath for dashed lines. If % this happens then turn off dashes and try again. /StrokeClip { {strokepath} stopped { (This Postscript printer gets limitcheck overflows when) = (stippling dashed lines; lines will be printed solid instead.) = [] 0 setdash strokepath} if clip } bind def % desiredSize EvenPixels closestSize % % The procedure below is used for stippling. Given the optimal size % of a dot in a stipple pattern in the current user coordinate system, % compute the closest size that is an exact multiple of the device's % pixel size. This allows stipple patterns to be displayed without % aliasing effects. /EvenPixels { % Compute exact number of device pixels per stipple dot. dup 0 matrix currentmatrix dtransform dup mul exch dup mul add sqrt % Round to an integer, make sure the number is at least 1, and compute % user coord distance corresponding to this. dup round dup 1 lt {pop 1} if exch div mul } bind def % width height string StippleFill -- % % Given a path already set up and a clipping region generated from % it, this procedure will fill the clipping region with a stipple % pattern. "String" contains a proper image description of the % stipple pattern and "width" and "height" give its dimensions. Each % stipple dot is assumed to be about one unit across in the current % user coordinate system. This procedure trashes the graphics state. /StippleFill { % The following code is needed to work around a NeWSprint bug. /tmpstip 1 index def % Change the scaling so that one user unit in user coordinates % corresponds to the size of one stipple dot. 1 EvenPixels dup scale % Compute the bounding box occupied by the path (which is now % the clipping region), and round the lower coordinates down % to the nearest starting point for the stipple pattern. Be % careful about negative numbers, since the rounding works % differently on them. pathbbox 4 2 roll 5 index div dup 0 lt {1 sub} if cvi 5 index mul 4 1 roll 6 index div dup 0 lt {1 sub} if cvi 6 index mul 3 2 roll % Stack now: width height string y1 y2 x1 x2 % Below is a doubly-nested for loop to iterate across this area % in units of the stipple pattern size, going up columns then % across rows, blasting out a stipple-pattern-sized rectangle at % each position 6 index exch { 2 index 5 index 3 index { % Stack now: width height string y1 y2 x y gsave 1 index exch translate 5 index 5 index true matrix tmpstip imagemask grestore } for pop } for pop pop pop pop pop } bind def % -- AdjustColor -- % Given a color value already set for output by the caller, adjusts % that value to a grayscale or mono value if requested by the CL % variable. /AdjustColor { CL 2 lt { currentgray CL 0 eq { .5 lt {0} {1} ifelse } if setgray } if } bind def % x y strings spacing xoffset yoffset justify stipple DrawText -- % This procedure does all of the real work of drawing text. The % color and font must already have been set by the caller, and the % following arguments must be on the stack: % % x, y - Coordinates at which to draw text. % strings - An array of strings, one for each line of the text item, % in order from top to bottom. % spacing - Spacing between lines. % xoffset - Horizontal offset for text bbox relative to x and y: 0 for % nw/w/sw anchor, -0.5 for n/center/s, and -1.0 for ne/e/se. % yoffset - Vertical offset for text bbox relative to x and y: 0 for % nw/n/ne anchor, +0.5 for w/center/e, and +1.0 for sw/s/se. % justify - 0 for left justification, 0.5 for center, 1 for right justify. % stipple - Boolean value indicating whether or not text is to be % drawn in stippled fashion. If text is stippled, % procedure StippleText must have been defined to call % StippleFill in the right way. % % Also, when this procedure is invoked, the color and font must already % have been set for the text. /DrawText { /stipple exch def /justify exch def /yoffset exch def /xoffset exch def /spacing exch def /strings exch def % First scan through all of the text to find the widest line. /lineLength 0 def strings { stringwidth pop dup lineLength gt {/lineLength exch def} {pop} ifelse newpath } forall % Compute the baseline offset and the actual font height. 0 0 moveto (TXygqPZ) false charpath pathbbox dup /baseline exch def exch pop exch sub /height exch def pop newpath % Translate coordinates first so that the origin is at the upper-left % corner of the text's bounding box. Remember that x and y for % positioning are still on the stack. translate lineLength xoffset mul strings length 1 sub spacing mul height add yoffset mul translate % Now use the baseline and justification information to translate so % that the origin is at the baseline and positioning point for the % first line of text. justify lineLength mul baseline neg translate % Iterate over each of the lines to output it. For each line, % compute its width again so it can be properly justified, then % display it. strings { dup stringwidth pop justify neg mul 0 moveto stipple { % The text is stippled, so turn it into a path and print % by calling StippledText, which in turn calls StippleFill. % Unfortunately, many Postscript interpreters will get % overflow errors if we try to do the whole string at % once, so do it a character at a time. gsave /char (X) def { char 0 3 -1 roll put currentpoint gsave char true charpath clip StippleText grestore char stringwidth translate moveto } forall grestore } {show} ifelse 0 spacing neg translate } forall } bind def %%EndProlog monochromegraycolorgray, or color": must be monochrome, bad color mode " and -channelcan't specify both -file safe interpretercan't specify -file in aw" wasn't opened for writingchannel "%%Creator: Tk Canvas Widget %!PS-Adobe-3.0 EPSF-3.0 Unknown%%For: %%Title: Window %%CreationDate: %d %d %d %d%%BoundingBox: %%DocumentData: Clean7Bit %%Pages: 1 Landscape (generating Postscript for item %d)Portrait %%Orientation: %%DocumentNeededResources: font %%+ font %%EndComments /CL %d def %%BeginSetup %%IncludeResource: font %%EndSetup save %%Page: 1 1 %.1f %.1f translate 90 rotate %.4g %.4g scale %d %d translate %d %.15g moveto %d %.15g lineto %d %.15g lineto %d %.15g lineto closepath clip newpath gsave grestore %%Trailer end %%EOF restore showpage %.3f %.3f %.3f setrgbcolor AdjustColor "": "bad font map entry for "%d scalefont findfont /SymbolISOEncode setfont <%02x>%d %d StippleFill %.15g %.15g moveto %.15g %.15g lineto bad distance "Can't generate Postscript for images more than %d pixels wide%d %d 1 matrix { <%d %d 8 matrix { <%02X%02X%02X%02X> } image > } false 3 colorimage 0 %d translate @)@1 9AHCC?CBG?CjZ@bX<@jZ@333333?zG?)\(?裫⍀P鏫芫⍀Pvq⍀P]X⍀PD?⍀P+&z⍀zP e⍀ePP⍀PP۪;⍀;PǪª&⍀&P鮪詪⍀P镪萪⍀P|w⍀Pc^⍀PJE⍀P1,⍀P⍀P~⍀~Pi⍀iPͩȩT⍀TP鴩诩?⍀?P雩薩*⍀*P邩}⍀Pid⍀PPK⍀P72⍀P⍀P⍀P⍀PӨΨ⍀P麨赨m⍀mP顨蜨X⍀XP鈨胨C⍀CPoj.⍀.PVQ⍀P=8⍀P$⍀P ⍀P⍀P٧ԧ⍀PeT~TTTTTTU-UFU_UxUUUUUUV'V@VYVrVVVVVVW!W:WSWlWWWWWWXX4X$Ë$e&E&(&&SI&%%SI%SI%SIF%7%OI%$$SI$$S$1$|#m#OID#-#!#SI#" TI"$TI"PTI"HTI"@TI"=" ""SI!!OI!|!j!SIG! TI/!PTI!HTI!@TI SISIYG~SIs\J@SI:cE TdTd` X8TT0T{LX<-%SR hSX;#R Rz?+R |mR3OyRRD zRel]ReJ8Re*ReReReRecTeU'ReReRera =&`RwTwOws ;0pXJ3!FR1R'Ro` R     R  Q= !      Q s a QJ > Q)   nQ  aQ [Q  NQ  T 5QH O> )  'Q  Q     S S r Q` R  Q O  P  P P   P `Pz k TPa 9PS D )P0 O"  P T T POlO^YJO9O/O OO5&OOOrcrOY`OF/GO%9O(OOONyN?N`p\dXdTdPpLHD@p6@(TzLu&O TTT pdPD0$pdPD0$ 5 X,XX,X 5 XXXX 5 XWXW 5 XWXW 5 zXWrXWl g5 aXWYXWS N5 HXW@XW: 55 /X}W'X}W! 5 XdWXdW 5 XKWXKW 5 X2WX2W 5 XWXW 5 XWXW 5 XVXV 5 XVxXVr m5 gXV_XVY T5 NXVFXV@ ;5 5XV-XV' "5 XjVXjV 5 XQVXQV 5 X8VX8V 5 XVXV 5 XVXV 5 XUXU 5 |XU~|XUx s5 mxXUexXU_ Z5 TtXULtXUF A5 ;pXU3pXU- (5 "lXpUlXpU 5 hXWUhXWU 5 dX>UdX>U 5 `X%U`X%U 5 \X U\X U 5 XXTXXT 5 TXTTXT~ y5 sPXTkPXTe `5 ZLXTRLXTL G5 AHXT9HXT3 .5 (DXvT DXvT 5 @X]T@X]T |xtplhd`\XTPLHD@<840,($  .)+('2&3 %$ "1,4-/0!#.)+('2&3 %$ "1,4-/0!#*#&0S8MP8U.`BTj X Xd:'M2'WdnxN@w^_TkCanvPostscriptCmd___i686.get_pc_thunk.bx_Tk_PostscriptColor_Tk_PostscriptFont_Tk_PostscriptBitmap_Tk_PostscriptStipple_Tk_PostscriptY_Tk_PostscriptPath_TkPostscriptImage___i686.get_pc_thunk.axdyld_stub_binding_helper__DefaultRuneLocale_floor_XQueryColors_Tcl_Alloc___maskrune_XGetImage_XGetGeometry_strncasecmp_Tk_PostscriptFontName_Tcl_DStringAppend_strtod_Tcl_SplitList_Tk_NameOfFont_Tcl_DStringInit_Tcl_GetVar2_Tk_NameOfColor_Tcl_DeleteHashTable_Tcl_Close_Tcl_Free_Tcl_AddErrorInfo_Tcl_Write_Tcl_GetStringResult_Tcl_NextHashEntry_Tcl_FirstHashEntry_sprintf_ctime_time_endpwent_getpwuid_getuid_Tcl_ResetResult_Tcl_GetChannel_Tcl_DStringFree_Tcl_OpenFileChannel_Tcl_TranslateFileName_Tcl_IsSafe_Tcl_AppendResult_Tk_ConfigureWidget_Tcl_InitHashTable_configSpecs_prolog_GetPostscriptPoints_TkImageGetColor