%!PS-Adobe-2.0 EPSF-2.0 %%Title: /export/home/goualard/TEMP/green-bullet-on-blue.ps %%Creator: XV Version 3.10 Rev: 12/16/94 - by John Bradley %%BoundingBox: 276 376 336 416 %%Pages: 1 %%DocumentFonts: %%EndComments %%EndProlog %%Page: 1 1 % remember original state /origstate save def % build a temporary dictionary 20 dict begin % define space for color conversions /grays 60 string def % space for gray scale line /npixls 0 def /rgbindx 0 def % lower left corner 276 376 translate % size of image (on paper, in 1/72inch coords) 59.97600 40.03200 scale % define 'colorimage' if it isn't defined % ('colortogray' and 'mergeprocs' come from xwd2ps % via xgrab) /colorimage where % do we know about 'colorimage'? { pop } % yes: pop off the 'dict' returned { % no: define one /colortogray { % define an RGB->I function /rgbdata exch store % call input 'rgbdata' rgbdata length 3 idiv /npixls exch store /rgbindx 0 store 0 1 npixls 1 sub { grays exch rgbdata rgbindx get 20 mul % Red rgbdata rgbindx 1 add get 32 mul % Green rgbdata rgbindx 2 add get 12 mul % Blue add add 64 idiv % I = .5G + .31R + .18B put /rgbindx rgbindx 3 add store } for grays 0 npixls getinterval } bind def % Utility procedure for colorimage operator. % This procedure takes two procedures off the % stack and merges them into a single procedure. /mergeprocs { % def dup length 3 -1 roll dup length dup 5 1 roll 3 -1 roll add array cvx dup 3 -1 roll 0 exch putinterval dup 4 2 roll putinterval } bind def /colorimage { % def pop pop % remove 'false 3' operands {colortogray} mergeprocs image } bind def } ifelse % end of 'false' case % define the colormap /cmap 687 string def % load up the colormap currentfile cmap readhexstring 040e24 248a0c 1c4e14 2c5074 142e15 2cc80c 1c6f0c 24ab0c 1c2e61 2c6a6c 0c2024 2c4ea3 1c4e44 143e21 0c1e44 2ce804 2cba0c 243e78 345a9c 1c5e0d 1c7e0c 0c1e2c 249a0c 0c3244 2cd60a 34ae47 345abb 2c669c 0c1622 24428d 24626c 24b20c 1c3574 2c9a44 1c6224 1c770c 34f60a 1c5612 14264c 248a2c 143617 34be2c 0c2634 34ca24 247278 2c54b4 1c4613 247e3c 3c5aa4 345e8f 142618 348a6c 2cee04 1c660c 041a3c 2cce08 1c3660 1c466c 247e2c 2ca62c 2cde08 3462b5 2cb22c 24920d 2cc20c 143834 247628 1c5628 142a5e 0c0e24 2c56ac 1c5844 24860d 24a20d 3c5eb4 2c66a8 2c4a99 2cb210 245e54 1c3614 144627 246e0c 1c316c 141e19 3452a8 2c964c 247254 2c62ac 141e30 345ec4 0c172c 144634 2c5c8c 1c3a7c 24760c 142634 246a17 2cd214 2c4678 1c4e2c 1c3214 2caa0c 2c668c 2c8c54 141e44 34e60c 34b63c 34a45c 1c682c 1c5a1c 1c461c 2c7e64 3c62a9 34ee07 248a1c 1c521c 2c4e8c 2c945c 246664 1c2e4c 245064 1c4854 1c3e54 2c3a64 246a3c 2c863c 349e5c 24467c 248664 34be3c 1c4014 24800c 2c5e7c 24664c 2c824c 34a23c 2ca61c 34926c 34fe0c 2cc219 2c628c 2c7264 243a7b 34669c 2c4694 3456b8 3c5c94 0c1837 34688c 345294 143224 2c52ac 1c5254 24724c 2cbe14 345eac 1c5e34 142654 34c634 24921c 143944 0c122c 1c5654 24721c 141f3c 24761c 14263c 142254 1c2a54 1c2a5c 3466a4 3462aa 34d21c 243e84 0c1e3c 24861c 2c4aa4 2c4684 34b64c 243a84 041229 248e0d 1c5210 143214 1c3261 2c52a4 2c8e48 247644 2cbe0a 345ea4 1c620f 249e0d 2cda07 34b24c 345eba 2c6a96 0c1a20 244694 34fa0c 1c5a0e 142a44 143a1c 0c2a2c 247678 1c4a13 3c5eab 142a15 1c6a0f 2cd20a 1c4a64 248224 2ce208 2cb624 24960c 1c5a2c 0c1222 24a60c 2cb60c 1c3a15 24720d 142219 247a0d 142a30 2cae0d 2c6a84 14224b 34ea09 34f207 2c6274 pop pop % lose return values from readhexstring % rlecmapimage expects to have 'w h bits matrix' on stack /rlecmapimage { /buffer 1 string def /rgbval 3 string def /block 384 string def % proc to read a block from file, and return RGB data { currentfile buffer readhexstring pop /bcount exch 0 get store bcount 128 ge { % it's a non-run block 0 1 bcount 128 sub { currentfile buffer readhexstring pop pop % look up value in color map /rgbval cmap buffer 0 get 3 mul 3 getinterval store % and put it in position i*3 in block block exch 3 mul rgbval putinterval } for block 0 bcount 127 sub 3 mul getinterval } { % else it's a run block currentfile buffer readhexstring pop pop % look up value in colormap /rgbval cmap buffer 0 get 3 mul 3 getinterval store 0 1 bcount { block exch 3 mul rgbval putinterval } for block 0 bcount 1 add 3 mul getinterval } ifelse } % end of proc false 3 colorimage } bind def 60 40 8 % dimensions of data [60 0 0 -40 0 40] % mapping matrix rlecmapimage 84591a591a5982591a5982591a5982591a5982591a5982591a5982591a5982591a598259 1a5982591a5982591a5982591a5982591a5982591a5982591a5982591a5982591a598259 1a5982591a590059 3a59001a 015981915989591a591a591a591a591a011a90591a591a591a591a591a591a591a591a59 82592d5982591a5992591a591a591a591a591a591a591a591a591a590159 8191590159891a591a591a591a591a590259811a5982591a59015982573d5786571b4b1b 4b1b4b824b57590159871a591a591a591a598c591a591a591a591a591a591a59 0159811a590859831a591a5982591a598b591a5957947656bb2f7d27ba87ba676f2cc357 1a590559811a590859811a590059 8c591a591a591a591a591a591a590159831a591a598c59c2ab8c1e85423aaf3f16bf4989 493b877e33cb4b57591a831a591a598a591a591a591a591a591a5982591a59 0159811a590159812d590159812d5982591a5901598e1a59c21b4e9c6ca53a48b5d5bf88 df89df1fd43ed419752c575982591a5982592d590159812d590159812d5982591a590059 82591a59825991590159812d590159812d5995591a591ac25ca2d6a35e1448b5d5bf6507 1f10bc400586058b6a6bcb4b5982592d590159812d590159812d590359811a59 82591a590659811a590159812d599159c2840cd622512383013f1649071f10bc05890537 d0376181c1804b590159811a590159811a590159832d592d5981591a 82591a5984592d592d5982592d5982591a59015985c25c5b4313068e068348b5d5bfd84d 1fbc0537d018c089c018612bc1cb57591a5982591a590159811a590259811a590059 82591a590759812d5981591a901a8f7963c7be605e1448b51649df4dbc05830518c0d38b d369d33cac9e6b2c57591a5984592d592d5982591a590159811a59 811a590159812d5984592d59915901598f1a59cdd15073c7be062383013fbf491f901fbc 05d0c0d30fe234e269d3618175c35982591a590359812d5984591a591a59 82591a590759991a591a595ca06eb6c760065e83013fbf6507104037d03c0fe2248d2434 71d3182bb2cb57591a591a590359812d590159001a 811a5988591a5991591a592d5993591a59cd390dccb6c7be51238301d5bfd80710059105 183ce234c68a240f69c0d02989c3591a590159832d592d590259811a59 82591a590259832d591a59a7591a591a31170dccb61335065e8301d5bf6507104005183c 0f7124c6e334d3c0378b6bcb57591a590459842d591a591a 82591a5982592d590359811a599759c262410dccb6c735062383013f16d81f104005d0c0 6934013489e20f6918378b19804b5986592d591a5991590459 82591a590259832d591a59a7591a591a7a96822eb6c7be512383013f1649df1fbc053718 c0690fe20f3cc0d0058b3e67c3591a590459842d591a591a 811a590159812d5902599b1a591a59cda0b7822e02c7becfdb1448b5d5bf071f104005d0 18c03c813cc089c0d037059adf554b1a590159832d592d590259811a59 82591a590359811a590159991a5930c8b7c92e0225136006dd83b5d516d8071fbc400537 d0188118d081d0058805bcd90721c3591a590459812d5982591a59 811a5982592d5982592d5996591a591a59cdca642882ccb6133506231401b5d5bf071f83 1fbc400581053781370501058d40101f07214b1a591a591a5991590259811a59 82591a590459812d590159011a910a04da82cc02c7be605edd83013f1649651f831f10bc 40034081bc1f851f076527c35982591a590359812d590159001a 82591a59845991592d590259851a59cd2ace288e282e0225133506238348b53fbf490781 071f811f10021081d91f881fdfd8bfba4b591a5984592d592d590259811a59 0159811a590259831a591a5996591ac2c832642882ccb6c7be60db238301b53f16bf6507 0107831f071f0787076549169f861b5982591a590359842d591a591a 811a590159821a591a811a590159871a59cd38dcce28828b8202251335065edd8348b5d5 83d516bfd801d88165d801d886bf16d527564b1a811a590259812d590459 84591a591a590259812d5981591a011a926215ce044f82cc022513355106dd144801b5d5 81d5168116bf01bf011686d53f722f8d4b5984591a592d5901598491591a591a 82591a590159021a8b591a2d59914a9236dc04b782898202b625be355106dd83828348b5 85b53fd53fd53f813fb586b501d299e0571a811a590259812d590259811a59 84591a592d1a821a2d1a831a2d912d882d9154b80a32044f8289820225c7be3551062383 018301480301024885834209aac2590159812d590259812d5982591a59 041a842d912d912d972d912d975462c4dcceb728822e02b6c71335cfdb0623dd14831483 1483028385dda57c66575982591a5902598191590259811a59 81592d042d03b094c590c54cb1770adcceb728822e02b62513be35510681065e815e238c 23dd235e23067c76abc2591a5982592d590259812d590159001a 842d912d97b081b0c58ac51dad5dad5db3208e7b538e5332ceb728822ecc0225c713be35 cf83cf06db06820651cf89cf6c4e94c2591a591a590259812d590259811a59 87912db0c51d5db35201528ea9440844a944a8261c5332ce6428828482cc02b625812513 8113be81be35023586be22478cabc25982591a5982592d590259842d591a591a 840bb0c55d5281529d8b9da7e10e68ae68aea493585301538332ce64288528822ecc02b6 82b625c703c7866dd60ce4ab1a5984591a591a5902598191590459 880b1db35244a7680e93019383b4a1b4a182a15aa189a1d71c53dc3264b7da82018201cc 020201b68673639831abc2590159811a590159812d590259842d591a591a 864c1d2044a70e938793a1b400d70045000100824500d701d78853dc32ce046428da8281 822e012e866e635b78319b590259811a5982592d590259812d590259811a59 8b4c1d2044a70e93b4a1b4d70084004500450083004500d785d71cc453dcce85ceb74f28 4fc987c941a0d15cab3d5982591a590159811a590159812d590259812d5982591a59 88b0c55d529da7680e930193875aa1b4a1d7a1d71c861c5a931558a65f835fde32ca88ca 96a0790331cdc2590559811a5982591a5902598191590259811a59 880bb01db32052449de188e10e68ae68ae0eae0e830e680e9d8d9d44b8208e7f74951230 cdbd70c201c282591a5984591a591a5982591a5982592d590259812d590159001a 86542db0c51d5d208820520844a944a944a901a98c4408b852205d8e1dc5b00b2d1a011a 0159831a591a590259811a5982591a5982592d590259812d590259811a59 831a2d540b830b4cc51d811dad81ad5d845d8e5d8e5d885d115dad1d901d4c0b830b9791 1a811a590759011a82591a5904598191590259842d591a591a 011a0191832d97540b810b4c014c82907490839074904c024c890bb99746912d1a592d59 82592d590159831a591a590159811a5984592d592d5984591a5991590459 % % Compression made this file 35.35% of the uncompressed size. % showpage % stop using temporary dictionary end % restore original state origstate restore %%Trailer