%%BeginProlog
%
% Display a color image. The image is displayed in color on
% Postscript viewers or printers that support color, otherwise
% it is displayed as grayscale.
%
/DirectClassPacket
{
%
% Get a DirectClass packet.
%
% Parameters:
% red.
% green.
% blue.
% length: number of pixels minus one of this color (optional).
%
currentfile color_packet readhexstring pop pop
compression 0 eq
{
/number_pixels 3 def
}
{
currentfile byte readhexstring pop 0 get
/number_pixels exch 1 add 3 mul def
} ifelse
0 3 number_pixels 1 sub
{
pixels exch color_packet putinterval
} for
pixels 0 number_pixels getinterval
} bind def
/GrayDirectClassPacket
{
%
% Get a DirectClass packet; convert to grayscale.
%
% Parameters:
% red
% green
% blue
% length: number of pixels minus one of this color (optional).
%
currentfile color_packet readhexstring pop pop
color_packet 0 get 0.299 mul
color_packet 1 get 0.587 mul add
color_packet 2 get 0.114 mul add
cvi
/gray_packet exch def
compression 0 eq
{
/number_pixels 1 def
}
{
currentfile byte readhexstring pop 0 get
/number_pixels exch 1 add def
} ifelse
0 1 number_pixels 1 sub
{
pixels exch gray_packet put
} for
pixels 0 number_pixels getinterval
} bind def
/GrayPseudoClassPacket
{
%
% Get a PseudoClass packet; convert to grayscale.
%
% Parameters:
% index: index into the colormap.
% length: number of pixels minus one of this color (optional).
%
currentfile byte readhexstring pop 0 get
/offset exch 3 mul def
/color_packet colormap offset 3 getinterval def
color_packet 0 get 0.299 mul
color_packet 1 get 0.587 mul add
color_packet 2 get 0.114 mul add
cvi
/gray_packet exch def
compression 0 eq
{
/number_pixels 1 def
}
{
currentfile byte readhexstring pop 0 get
/number_pixels exch 1 add def
} ifelse
0 1 number_pixels 1 sub
{
pixels exch gray_packet put
} for
pixels 0 number_pixels getinterval
} bind def
/PseudoClassPacket
{
%
% Get a PseudoClass packet.
%
% Parameters:
% index: index into the colormap.
% length: number of pixels minus one of this color (optional).
%
currentfile byte readhexstring pop 0 get
/offset exch 3 mul def
/color_packet colormap offset 3 getinterval def
compression 0 eq
{
/number_pixels 3 def
}
{
currentfile byte readhexstring pop 0 get
/number_pixels exch 1 add 3 mul def
} ifelse
0 3 number_pixels 1 sub
{
pixels exch color_packet putinterval
} for
pixels 0 number_pixels getinterval
} bind def
/PseudoClassImage
{
%
% Display a PseudoClass image.
%
% Parameters:
% class: 0-PseudoClass or 1-Grayscale.
%
currentfile buffer readline pop
token pop /class exch def pop
class 0 gt
{
currentfile buffer readline pop
token pop /depth exch def pop
/grays columns 8 add depth sub depth mul 8 idiv string def
columns rows depth
[
columns 0 0
rows neg 0 rows
]
{ currentfile grays readhexstring pop } image
}
{
%
% Parameters:
% colors: number of colors in the colormap.
% colormap: red, green, blue color packets.
%
currentfile buffer readline pop
token pop /colors exch def pop
/colors colors 3 mul def
/colormap colors string def
currentfile colormap readhexstring pop pop
systemdict /colorimage known
{
columns rows 8
[
columns 0 0
rows neg 0 rows
]
{ PseudoClassPacket } false 3 colorimage
}
{
%
% No colorimage operator; convert to grayscale.
%
columns rows 8
[
columns 0 0
rows neg 0 rows
]
{ GrayPseudoClassPacket } image
} ifelse
} ifelse
} bind def
/DisplayImage
{
%
% Display a DirectClass or PseudoClass image.
%
% Parameters:
% x & y translation.
% x & y scale.
% label pointsize.
% image label.
% image columns & rows.
% class: 0-DirectClass or 1-PseudoClass.
% compression: 0-none or 1-RunlengthEncoded.
% hex color packets.
%
gsave
/buffer 512 string def
/byte 1 string def
/color_packet 3 string def
/pixels 768 string def
currentfile buffer readline pop
token pop /x exch def
token pop /y exch def pop
x y translate
currentfile buffer readline pop
token pop /x exch def
token pop /y exch def pop
currentfile buffer readline pop
token pop /pointsize exch def pop
/Times-Roman findfont pointsize scalefont setfont
x y scale
currentfile buffer readline pop
token pop /columns exch def
token pop /rows exch def pop
currentfile buffer readline pop
token pop /class exch def pop
currentfile buffer readline pop
token pop /compression exch def pop
class 0 gt { PseudoClassImage } { DirectClassImage } ifelse
grestore
} bind def
%%EndProlog
%%Page: 1 1
%%PageBoundingBox: 0 0 8 7
userdict begin
DisplayImage
0 0
8.1 7.2
12
45 40
0
0
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E3D7
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E3D7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFF7E3D7F7E3D7F7E3D7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E3D7
F7E3D7F7E3D7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E3D7F7E3D7F7E3D7F7E3D7
F7E3D7FFFFFFFFFFFFFFFFFFF7E3D7FFFBFFFFF3AEF7E3D7F7E3D7FFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFF7E3D7EFEBEFFFFBFFEFEBEFDFCBC7C7B2AEF7E3D7FFFFFFF7E3D7F7E3D7FFF3AEFFFBFF
FFF3AEF7E3D7F7E3D7F7E3D7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFF3EFFFF3EFFFF3EFFFFFFFFFFFFFFFFFFFF7E3D7EFEBEFFFFBFFEFEBEFC7B2AEC7B2AE968279
C7B2AEF7E3D7F7E3D7DFCBC7C7B2AEF7E3D7FFFBFFFFF3AEFFFBFFFFFBFFF7E3D7AE6149964930
AE6149AE6149FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEBEFFFFBFFFFFBFFFFFBFFFFF3EFF7E3D7F7E3D7C7B2AE
C7B2AEEFEBEFC7B2AEC7B2AEA68A8EFFFBFFFFFBFFC7B2AEDFCBC7FFFBFFFFFBFFDFCBC7C7B2AE
F7E3D7FFF3AEFFFBFFFFFBFFDFCBC78E7128C78A69AE6949FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E3D7FFFBFFFFFBFF
FFFBFFFFFBFFFFFBFFFFF3EFFFF3EFC7B2AE968279968279C7B2AE968279FFFBFFFFFBFFDFCBC7
968279FFFBFFFFFBFFFFFBFFFFFBFFDFCBC7C7B2AEF7E3D7FFF3AEFFFBFFFFFBFFDFCBC7DFCBC7
C78A69FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFF3E7EFEBEFFFFBFFFFFBFFFFFBFFFFFBFFFFFBFFFFFBFFC7B2AEE7D3CFAE9A96
968279FFFBFFFFFBFFFFFBFFDFCBC7968279A68A8EFFFBFFFFFBFFFFFBFFFFFBFFFFFBFFFFFBFF
DFCBC7FFFBFFFFF3AEFFFBFFC7B2AEFFFBFFDFCBC7DFCBC7AE6149964930AE6149AE6149FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEBEFEFEBEFFFFBFFFFFBFFFFFBFFFFFBFF
FFFBFFFFFBFFE7D3CFAE9A96C7B2AEFFFBFFF7E3D7C7B2AEDFCBC7DFCBC7A68A8EA68A8EFFFBFF
DFCBC7FFFBFFDFCBC7DFCBC7C7B2AEC7B2AEC7B2AEFFF3AE964930964930AE6149AE6149964930
965938AE61498E7128C78A69AE6949FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF864130AE6149
E7D3CFEFEBEFFFFBFFFFFBFFFFFBFFFFF3EFFFFBFFE7D3CFBEB2AE968279F7E3D7FFF3AEFFFBFF
F7E3D7C7B2AEAE9A96AE9A96FFFBFFDFCBC7DFCBC7B67149AE61498E49309E5941AE6149AE6149
8E4930964930964930965938965938AE6149AE6149EFB2598E7128FFD371C78A69FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFF864130A68A8EF7E3D7FFFBF7FFFBFFFFFBFFFFFBFFFFFBFFE7D3CF
AE9A96968279F7E3D7FFF3AEFFFBFFFFF3AE8641308E49307941289659388641308E4930AE6149
8E71288E71288E71288E4930EFB296C78A69AE61498E4930AE61499659388E4930964930964930
B67149BE7959AE6149965938FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF493830964930A68A8EF7E3D7
EFEBEFEFEBEFE7D3CFFFF3EFE7D3CFE7D3CFE7D3CF964930964938964930794128864130964930
513830864130AE6149965938964938AE6949FFF3BEEFBA49EFC3418E4930C78A69EFB296AE6149
8E49308E4930693830864130864130965938864130965938965938C78A69FFFFFFFFFFFFFFFFFF
FFFFFF383030202020383030A68A8EF7E3D7EFEBEFEFEBEF864130AE6149B67149AE61498E7128
D79A61DFA28ECF8261964930964930965938513830964930864130AE6149593830AE61498E7128
8E7128AE6149793828C78A69EFB296AE6149693830794128794128864130965938964938AE6149
AE6949B67149D79A79D79A79FFFFFFFFFFFFC78A69693830202020383030202020A68A8EA68A8E
A68A8E864130CF8261C78A69EFB2598E7128EFBA49B67149964930864130864130793828864130
282828964930864130AE6149303030303030282828282828282828965938EFB296C78A69794128
964930AE6149AE6149BE7159BE7159C78A69D79271EFB296D79A79D79A79FFFFFFFFFFFFBE7159
693830202020202020383030202020383030202020513830964930B67151BE7159B67149964930
8641305138303830302828202828202828202828282828288E4930864130AE6149303030303030
513830383030B67151EFB296B67149AE6149AE6149AE6149D79271D79271EFB296FFCBB6FFE3CF
FFE3CFEFBA9EEFBA9EFFFFFFFFFFFFAE6949965938202020513830202020383030202020383030
282828282828202020202020282828282828282828303030303030303030303030303030383030
4938305138309E5941965938C78A69C78A69C78A69C78A69C78A69B67151B67149AE6949B67149
C78A69D79271EFB296EFB296F7CBB6FFE3CFEFB296D79271EFB296FFFFFFFFFFFF9E59418E4930
8E4930513830493830282820202020202020303030282828282820282820493830383030493830
513830513830513830513830593830513830794128794128794128964930965938AE6949B67151
B67149AE6149AE6149B67149B67149D79271EFB296EFB296D79271C78A69D79271D79271CF9271
C78A69D79A79FFFFFFFFFFFF965938864130864130864130493830513830383030202020493830
383030493830513830513830513830513830513830613828713828713828713828713828794128
794128794128794128794128964930964930AE6149AE6149BE7159C78A69EFB296D79271D79271
C78A69C78A69C78261C78A69C78A69BE7959BE7159C78A69FFFFFFFFFFFF964930864130794128
713828713828513830383030202020693830513830693830693830713828713828713828713828
7138287138287138287938287938287941287138287138288E4930964930AE6149AE6149BE7159
CF9271D79271D79271D79271C78261C78261C78A69BE7159B67149C78A69BE7159B67149B67149
C78261FFFFFFFFFFFF8E4930794128713828693830693830613828513830383030864130864130
864130864130864130713828713828713828794128793828794128864130864130964930964930
9651419E5941BE7159BE7159BE7159C78261C78A69CF8A71C78261C78A69C78A69B67149AE6149
9E5941AE6149AE61499E5941AE6149AE6149BE7159FFFFFFFFFFFF864130793828713828693830
5138305138304938304938307941289649309649309E6141964930864130864130864130964930
964930964930964930B67149BE7159BE7959C78261BE7159BE7159B67149B67149B67149B67149
B67149B67149C78261B67149AE6149964930BE7959B671499649309649309E6141AE6149BE7159
FFFFFFFFFFFF864130794128793828613828513830493830493830282828794128964930BE7159
BE7159BE7159BE7159B67149B67149BE7159BE7959BE7159BE7959C78261C78261C78261BE7159
B67149B671499E59419E59419E59419E5941965938AE6149AE6149AE6149964930964930B67151
AE6149964930964930AE6149AE6149B67149FFFFFFFFFFFF864130713828713828613828513830
493830493830282828864130964930B67149B67149BE7159BE7159BE7159BE7159BE7159C78261
C78261C78261B67149AE6949AE61499649308641308641308641308E4930964930964930964930
964930964930964930964930964930B67151AE6149964930964930965938AE6149AE6149FFFFFF
FFFFFF794128713828613828513830493830383030493830282828693830864130964930AE6149
AE6149AE6149B67149B67149AE6949AE6149AE6949AE6149964938864130864130864130864130
8641308641308E4930964938864130864130964938964930864130864130964930B67151AE6149
864130964930965938A66141965938FFFFFFFFFFFF794128613828613828513830493830383030
383030303030493830613828864130964938965938864130964930964938BE7959B67149864130
864130713828713828793828793828794128864130864130864130864130864130864130864130
864130864130864130864130BE7959B67149864130964930965938965938964930FFFFFFFFFFFF
794128713828613828513830493830383030383030303030303030493830613828794128864130
864130794128713828B67151AE6149713828793828613828613828613828713828794128864130
864130864130864130864130864130864130864130864130864130864130B67151AE6149864130
864130965938964930864130FFFFFFFFFFFF613828713828613828613828513830383030383030
303030493830493830513830513830513830713828613828613828A66141965938613828613828
713828713828613828713828713828793828794128864130864130864130864130864130864130
864130864130AE6149864130AE6149AE6149864130964930964930965938FFFFFFFFFFFF613828
713828713828613828513830493830383030383030493830493830513830493830493830513830
513830383030A66141965938713828613828713828613828613828613828613828613828794128
794128793828793828793828864130864130864130794128B67149B67149AE6149AE6149864130
964930964930965938FFFFFFFFFFFF613828613828794128613828513830493830493830383030
383030383030493830493830513830513830513830493830964930965938613828513830693830
613828693830613828513830613828613828513830513830513830513830613828794128794128
613828AE6149B671498641308E4930964930864130964938965938FFFFFFFFFFFF613828493830
613828613828513830493830383030383030493830493830493830513830513830513830513830
513830A66141965938613828613828513830513830513830513830493830513830513830513830
513830513830513830693830613828713828613828864130B67149D79271864130864130864130
964930965938FFFFFFFFFFFF493830303030493830493830493830493830303030383030613828
5138305138304938305138305138307138288641307138288641308E4930613828493830493830
493830493830493830493830493830513830513830513830513830693830613828613828793828
613828AE6149B67149793828713828693830864130793828FFFFFFFFFFFF613828202020303030
493830383030303030303030303030513830383030383030493830493830513830794128964930
8E4930964930964930613828493830493830493830493830493830493830493830513830513830
5138305138306138286138287138287138285138309659389E5941793828793828FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFF613828202020383030303030493830282828513830793828613828
383030493830493830493830793828713828964930713828713828513830493830493830493830
493830493830493830493830493830493830493830493830493830493830282828202020282828
9E61419E6141FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF513830282820
493830383030282828713828864130864130713828493830383030493830613828793828D79271
AE6949383030493830493830383030493830493830493830493830493830493830493830493830
493830493830493830FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF693830282828303030383030794128864130793828613828
513830383030513830493830303030BE7959AE6149303030303030303030303030493830493830
303030303030303030303030FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF202020
303028493830864130864130864130613828513830513830513830493830303030AE6149964938
303028383030202020202020202020FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF202020303030864130964930864130613828493830
493830493830303030303030965938864130FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
202020713828864130793828613828513830693830FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF693830693830693830FFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF