%!PS-Adobe-3.0 EPSF-3.0 http://130.149.60.45/~farbmetrik/TF33/TF33L00XX.PS 20130201
%%BoundingBox: 14 08 828 584

/pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: www.ps.bam.de/TF33/TF33.HTM)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013020112000)
  /ModDate (D:20130210112000)
/DOCINFO pdfmark
[ /View [ /Fit ]
/DOCVIEW pdfmark
/sfgray {setgray} bind def %Early Frame File (f) definition
/sfrgbcolor {setrgbcolor} bind def /sfcmykcolor {setcmykcolor} bind def
%line 20******************************************************
%BEG TF33/OUTLIN10.PS Emty 20120301

%END TF33/OUTLIN10.PS Emty 20120301
                                                                         
%****************************************************
%BEG 'TF33'OUTLIN1X.PS Other procedures for sRGB output linearization
%****************************************************
%BEG COLDATA_SRGB_00.PS
%BEG TRANSFER_EARLY_F.TXT **********************************2012-02-01
%Early definition of FF_LM_setgray_F0 identical to former setgray

/FF_LM_setgray_F0 {setgray} bind def
/FF_LM_setrgbcolor_F0 {setrgbcolor} bind def
/FF_LM_setcmykcolor_F0 {setcmykcolor} bind def
/FF_LM_transfer_F0 {settransfer} bind def
/FF_LM_colortransfer_F0 {setcolortransfer} bind def
%END TRANSFER_EARLY_F.TXT **********************************2012-02-01

%*****************************************************************************

/setcolortrans_F {%BEG procedure setcolortrans_F
%1MR-Transform of setgray and setcmykcolor to FF_LM_de_setrgbcolor_F
%Three procedures and use of the procedure FF_LM_de_setrgbcolor_F of main FF

/setgray {%BEG procedure setgray_F
          dup dup FF_LM_de_setrgbcolor_F
          %STOPs
         } def %END procedure setgray_F

/setcmykcolor {%BEG procedure setcmykcolor_F
               /FF_LM_k exch def /FF_LM_y exch def
               /FF_LM_m exch def /FF_LM_c exch def
               FF_LM_k 0 eq {%FF_LM_k=0
                             1 FF_LM_c sub 1 FF_LM_m sub
                             1 FF_LM_y sub FF_LM_de_setrgbcolor_F
                            }%FF_LM_k=0
                            {%FF_LM_k#0
                             FF_LM_c 0 eq
                             FF_LM_m 0 eq and
                             FF_LM_y 0 eq and 
                                {%FF_LM_k#0 and c=m=y=0 achromatic
                                 1 FF_LM_k sub dup dup
                                 FF_LM_de_setrgbcolor_F
                                }%FF_LM_k#0 and c=m=y=0 achromatic
                                {%FF_LM_k#0 and c or m or y#0 chromatic
                                 1 FF_LM_c sub 1 FF_LM_k sub mul
                                 1 FF_LM_m sub 1 FF_LM_k sub mul
                                 1 FF_LM_y sub 1 FF_LM_k sub mul
                                 FF_LM_de_setrgbcolor_F
                                } ifelse %FF_LM_k#0 and c or m or y#0 chromatic
                            } ifelse %FF_LM_k#0
              } def %END procedure setcmykcolor_F

/setrgbcolor {%BEG procedure setrgbcolor_F
              /FF_LM_b exch def /FF_LM_g exch def /FF_LM_r exch def
              FF_LM_r FF_LM_g FF_LM_b
              FF_LM_de_setrgbcolor_F
              %STOPr
             } def %BEG procedure setrgbcolor_F

/settransfer {FF_LM_transfer_F} def

/setcolortransfer {FF_LM_colortransfer_F} def

%*******************************************************************
/FF_LM_de_setrgbcolor_F {
%BEG FF_LM_de_setrgbcolor_F

%assumes input of rgb, which is called rgb_dyF
%calculation of intended rgb*dyF, LABCh*dyF
%Lab2RGBinterpolation for colorm=1
%calculation of inverse  rgb'*dyF, LABCh'*dyF, which produces rgb*dyF, LABCh*dyF

%requires /hab*dy362Mi 362 array def  %(y=s,d,e)
%requires /rgb*dy362Mi 362 array def  %(y=s,d,e)
%requires /LAB*dyx362Mi 362 array def %(y=s,d,e, x=LabCh)
 
 /b_dyF exch def
 /g_dyF exch def
 /r_dyF exch def

 %calculation of i_dyF, c_dyF, and t_dyF
 /maxd r_dyF def
 g_dyF maxd gt {/maxd g_dyF def} if
 b_dyF maxd gt {/maxd b_dyF def} if
 /mind r_dyF def
 g_dyF mind lt {/mind g_dyF def} if
 b_dyF mind lt {/mind b_dyF def} if
 /i_dyF maxd def
 /c_dyF maxd mind sub def
 /t_dyF i_dyF c_dyF 0.5 mul sub def

 /hsiF r_dyF 030 sin mul
       g_dyF 150 sin mul add
       b_dyF 270 sin mul add %y_e
       r_dyF 030 cos mul
       g_dyF 150 cos mul add %x_e
       0.0001 add atan 0.5 add cvi def        %range 30 ... 390

  %perhaps change
  %to decide hab*dyF/dsF/deF !
  hsiF hab*ds362Mi 0 get sub 0 le {/hsiF hsiF 360 add def} if
  /hsiFm30 hsiF 30 sub def                    %range 00 ... 360

 %test grey
 r_dyF g_dyF sub abs 0.002 le
 g_dyF b_dyF sub abs 0.002 le and 
 {%grey, not grey
 
  /r*dyM 1 def
  /g*dyM 1 def
  /b*dyM 1 def
  
  /hsiM r*dyM 030 sin mul
        g*dyM 150 sin mul add
        b*dyM 270 sin mul add %y_d
        r*dyM 030 cos mul
        g*dyM 150 cos mul add %x_d
        0.0001 add atan def
  hsiM hab*ds362Mi 0 get sub 0 le {/hsiM hsiM 360 add def} if
  /hsiMm30 hsiM 30 sub def
 
  /LAB*LdyM L*Wioa def
  /LAB*adyM 0 def
  /LAB*bdyM 0 def

  /LAB*LdyF L*Nioa r_dyF L*Wioa L*Nioa sub mul add def
  /LAB*adyF 0 def
  /LAB*bdyF 0 def

  /r*dyF r_dyF def
  /g*dyF g_dyF def
  /b*dyF b_dyF def

  /r'*dyF r_dyF def
  /g'*dyF g_dyF def
  /b'*dyF b_dyF def
 }%grey

 {%color

  hsiFm30 0 lt {/hsiFm30 0 def} if     %for correction to be deleted!
  hsiFm30 360 gt {/hsiFm30 360 def} if

  %calculation of intended rgb*dyM, LAB*LabdyM

  deintp 0 eq {%deintp=0
  /r*dyM r*dd362Mi hsiFm30 get def
  /g*dyM g*dd362Mi hsiFm30 get def
  /b*dyM b*dd362Mi hsiFm30 get def

  /LAB*LdyM LAB*Ldd362Mi hsiFm30 get def
  /LAB*adyM LAB*add362Mi hsiFm30 get def
  /LAB*bdyM LAB*bdd362Mi hsiFm30 get def
  } if %deintp=0

  deintp 1 eq {%deintp=1
  /r*dyM r*de362Mi hsiFm30 get def
  /g*dyM g*de362Mi hsiFm30 get def
  /b*dyM b*de362Mi hsiFm30 get def

  /LAB*LdyM LAB*Lde362Mi hsiFm30 get def
  /LAB*adyM LAB*ade362Mi hsiFm30 get def
  /LAB*bdyM LAB*bde362Mi hsiFm30 get def
  } if %deintp=1

  %calculation of intended rgb*dyF, LAB*LabdyF
  c_dyF 1 eq {%c_dy=1,#1

              /r*dyF r*dyM def
              /g*dyF g*dyM def
              /b*dyF b*dyM def

              /LAB*LdyF LAB*LdyM def
              /LAB*adyF LAB*adyM def
              /LAB*bdyF LAB*bdyM def

            }%c_dyF=1

            {%c_dyF#1
             /t00 1.0 c_dyF 0.5 mul sub def
             /t0x 0.5
                  t_dyF 0.5 sub 0.5 mul t00 0.5 sub div add def
             /r*dyF t0x r*dyM t0x sub c_dyF mul add def
             /g*dyF t0x g*dyM t0x sub c_dyF mul add def
             /b*dyF t0x b*dyM t0x sub c_dyF mul add def

             /L*Xioa L*Nioa t0x L*Wioa L*Nioa sub mul add def
             /LAB*LdyF L*Xioa LAB*LdyM L*Xioa sub c_dyF mul add def
             /LAB*adyF 0      LAB*adyM 0      sub c_dyF mul add def
             /LAB*bdyF 0      LAB*bdyM 0      sub c_dyF mul add def

            } ifelse %c_dyF=1,#1

} ifelse %grey or color

%only for control, not used: calculation of hsiM
  /hsiM r*dyM 030 sin mul
        g*dyM 150 sin mul add
        b*dyM 270 sin mul add %y_d
        r*dyM 030 cos mul
        g*dyM 150 cos mul add %x_d
        0.0001 add atan def
  hsiM hab*ds362Mi 0 get sub 0 le {/hsiM hsiM 360 add def} if
  /hsiMm30 hsiM 30 sub def
  
%only for control, not used: calculation of ict*dyM and ict*dyF
%calculation of i*dyM, c*dyM, and t*dyM
 /maxd r*dyM def
 g*dyM maxd gt {/maxd g*dyM def} if
 b*dyM maxd gt {/maxd b*dyM def} if
 /mind r*dyM def
 g*dyM mind lt {/mind g*dyM def} if
 b*dyM mind lt {/mind b*dyM def} if
 /i*dyM maxd def
 /c*dyM maxd mind sub def
 /t*dyM i*dyM c*dyM 0.5 mul sub def


%%only for control, not used: calculation of i*dyF, c*dyF, and t*dyF
 /maxd r*dyF def
 g*dyF maxd gt {/maxd g*dyF def} if
 b*dyF maxd gt {/maxd b*dyF def} if
 /mind r*dyF def
 g*dyF mind lt {/mind g*dyF def} if
 b*dyF mind lt {/mind b*dyF def} if
 /i*dyF maxd def
 /c*dyF maxd mind sub def
 /t*dyF i*dyF c*dyF 0.5 mul sub def

colorm 0 eq {%colorm=0
             r*dyF g*dyF b*dyF
            }%colorm=0
            {%colorm=1
             LAB*LdyF LAB*adyF LAB*bdyF
             Lab2RGBinterpolation
             /b'*dyF exch def /g'*dyF exch def /r'*dyF exch def
             r'*dyF g'*dyF b'*dyF
            } ifelse %colorm=1

FF_LM_setrgbcolor_F

} bind def %END FF_LM_de_setrgbcolor_F


/FF_LM_xchart_gamma_F {/xchart where {pop /xchartN xchart 8 idiv def
                                         /xchartP xchart
                                         xchart 8 idiv 8 mul sub def}
                                    {/xchartN 2.0 def %default
                                     /xchartP 0.5 def} ifelse
                      /gamma_F 2.4 xchartP 0.18 mul sub 2.4 div
                            1 2.4 xchartN 0.18 mul sub 2.4 div div mul def
                       gamma_F exp
                      } def

/FF_LM_setrgbcolor_F {%FF_LM_setrgbcolor_F
                     /FF_LM_b0L exch def /FF_LM_g0L exch def
                     /FF_LM_r0L exch def
                     FF_LM_r0L 0 le {/FF_LM_r0L 0.0001 def} if
                     FF_LM_g0L 0 le {/FF_LM_g0L 0.0001 def} if
                     FF_LM_b0L 0 le {/FF_LM_b0L 0.0001 def} if
                     /FF_LM_r1F FF_LM_r0L FF_LM_xchart_gamma_F def
                     /FF_LM_g1F FF_LM_g0L FF_LM_xchart_gamma_F def
                     /FF_LM_b1F FF_LM_b0L FF_LM_xchart_gamma_F def
                     FF_LM_r1F FF_LM_g1F FF_LM_b1F
                     FF_LM_setrgbcolor_F0
                    } def %FF_LM_setrgbcolor_F

/FF_LM_transfer_F {{FF_LM_xchart_gamma_F} FF_LM_transfer_F0} def

/FF_LM_colortransfer_F {{FF_LM_xchart_gamma_F} {FF_LM_xchart_gamma_F}
                       {FF_LM_xchart_gamma_F} FF_LM_colortransfer_F0} def

} def %END procedure setcolortrans_F

%*******************************************************************
/Colordata_sRGB_F {%BEG procedure Colordata_sRGB_F

/Xrx089   729 array def
/Yrx089   729 array def
/Zrx089   729 array def
/Xrx100   729 array def
/Yrx100   729 array def
/Zrx100   729 array def
/R0 729 array def
/G0 729 array def
/B0 729 array def

%/RGB0_to_XYZj_F { %BEG procedure RGB0_to_XYZj_F
%transfers standard sRGB data (IEC 61966-2-1) to XYZ data for 9x9x9=729 colours
%normalized XYZ data with Y=88.59 for display white, compare ISO 9241-306:2008.

%requires /(XYZ)rx089   729 array def
%         /(XYZ)rx100   729 array def
%requires in addition /RGB0_F 1080 array def

%/Xrx089   729 array def
%/Yrx089   729 array def
%/Zrx089   729 array def
%/Xrx100   729 array def
%/Yrx100   729 array def
%/Zrx100   729 array def
%/R0 729 array def
%/G0 729 array def
%/B0 729 array def


%row no.1 and 2: 9xrgb
/imax 08 def
/jmax 08 def
/kmax 08 def
0 1 kmax {/k exch def %beg k=0,08
0 1 jmax {/j exch def %beg j=0,jmax
0 1 imax {/i exch def %beg i=0,imax
          /n i j 9 mul add k 81 mul add def
          R0 n k kmax div 1000 mul put
          G0 n j jmax div 1000 mul put
          B0 n i imax div 1000 mul put
         } for %end i=0,jmax
         } for %end j=0,jmax
         } for %end k=0,kmax

/IM0 729 def
/IM1 IM0       1 sub def
0 1 IM1 {/i exch def %i=0,IM1
         R0 i get 0.04045 le           %equations of IEC 61966-2-1:2003
         {/RsRGB R0 i get 12.92 div def}
         {/RsRGB R0 i get 0.001 mul 0.055 add
                    1.055 div 2.4 exp def} ifelse
         G0 i get 0.04045 le
         {/GsRGB G0 i get 12.92 div def}
         {/GsRGB G0 i get 0.001 mul 0.055 add
                    1.055 div 2.4 exp def} ifelse
         B0 i get 0.04045 le
         {/BsRGB B0 i get 12.92 div def}
         {/BsRGB B0 i get 0.001 mul 0.055 add
                    1.055 div 2.4 exp def} ifelse

         Xrx100 i 0.4124 RsRGB mul 
                  0.3576 GsRGB mul add
                  0.1805 BsRGB mul add 100 mul put
         Yrx100 i 0.2126 RsRGB mul
                  0.7152 GsRGB mul add
                  0.0722 BsRGB mul add 100 mul put
         Zrx100 i 0.0193 RsRGB mul
                  0.1192 GsRGB mul add
                  0.9505 BsRGB mul add 100 mul put
        } for %i=0,IM1

0 1 IM1 {/i exch def %i=0,IM1
         Xrx089 i Xrx100 i get 0.8859 mul put
         Yrx089 i Yrx100 i get 0.8859 mul put
         Zrx089 i Zrx100 i get 0.8859 mul put
        } for %i=0,IM1

/iN 0 def
/iW 728 def

/XLN100 Xrx100 iN get def
/YLN100 Yrx100 iN get def
/ZLN100 Zrx100 iN get def

/XLW100 Xrx100 iW get def
/YLW100 Yrx100 iW get def
/ZLW100 Zrx100 iW get def

/XLN089 Xrx089 iN get def
/YLN089 Yrx089 iN get def
/ZLN089 Zrx089 iN get def

/XLW089 Xrx089 iW get def
/YLW089 Yrx089 iW get def
/ZLW089 Zrx089 iW get def

% achromatic (D65) colours
/XLWD65100  95.04 def
/YLWD65100 100.00 def
/ZLWD65100 108.88 def

/XLWD65089  95.04 0.8859 mul def
/YLWD65089 100.00 0.8859 mul def
/ZLWD65089 108.88 0.8859 mul def

/XLN001 XLWD65100 100 div def
/YLN001 YLWD65100 100 div def
/ZLN001 ZLWD65100 100 div def

%} bind def %END procedure RGB0_to_XYZj_F

%/xchartj_XYZj_FAB729a_F { %BEG Procedure xchartj_FAB729a_F
%transfer from XYZj data to LAB729a CIELAB data for 9x9x9=729 colours

%requires 0<= xchartj <=10 (11 luminance reflections)
%requires             /(XYZ)x089 3240 array def (x=rc,ra,na,la)
%requires             /(Lab)x089 3240 array def (x=rc,ra,na,la)


%requires             /x729  729 array def (x=X,Y,Z) %not adapted

%requires             /x729  729 array def (x=L,a,b) %not adapted
%requires             /x729a 729 array def (x=L,a,b) %adapted


/Lrc089 729 array def
/arc089 729 array def
/brc089 729 array def
/Xrc089  729 array def
/Yrc089  729 array def
/Zrc089  729 array def

/Lra089 729 array def
/ara089 729 array def
/bra089 729 array def
/Xra089  729 array def
/Yra089  729 array def
/Zra089  729 array def

/Lna089 729 array def
/ana089 729 array def
/bna089 729 array def
/Xna089  729 array def
/Yna089  729 array def
/Zna089  729 array def

/Lla089 729 array def
/ala089 729 array def
/bla089 729 array def
/Xla089  729 array def
/Yla089  729 array def
/Zla089  729 array def

/Xj 729 array def
/Yj 729 array def
/Zj 729 array def

/LAB*Lj 729 array def %not adapted
/LAB*aj 729 array def
/LAB*bj 729 array def

/LAB*Lja 729 array def %adapted
/LAB*aja 729 array def
/LAB*bja 729 array def

/DecodeXYZ* {dup 6 29 div ge {dup dup mul mul}
            {4 29 div sub 108 841 div mul} ifelse} bind def

/XD65W  95.04 def /YD65W 100.00 def /ZD65W 108.88 def
/XD50W  96.42 def /YD50W 100.00 def /ZD50W  82.51 def
/DAKTE [(D65) (D50)] def

/ilf 8 array def
/ilf [0.00 0.25 0.50 1.00 2.00 4.00 8.00 16.00] def

/Lrefl 11 array def
/Lrefl [(0%) (0%) (0%)
        (0%) (0,6%) (1,2%) (2,5%)
        (5%) (10%) (20%) (40%)] def

xchartj 2 le {/il 0 def}
             {/il xchartj 3 sub def} ifelse

%Reference black and factors
/YrN 2.52 def

/Xtref089 YrN ilf il get mul XLN001 mul def
/Ytref089 YrN ilf il get mul def
/Ztref089 YrN ilf il get mul ZLN001 mul def

/YNil Ytref089 def
/YNil001 YNil 100 div def

YNil001 6 29 div 3 exp ge
{/FYYn YNil001 0.3333 exp def}
{/FYYn 841 108 div YNil001 mul 4 29 div add def} ifelse

/L*Nil 116 FYYn mul 16 sub def

/IM1 728 def

0 1 IM1 {/i exch def %i=0,IM1
         Xrc089 i Xrx089 i get put
         Yrc089 i Yrx089 i get put
         Zrc089 i Zrx089 i get put
         /XQ Xrc089 i get XLWD65100 div def
         /YQ Yrc089 i get YLWD65100 div def
         /ZQ Zrc089 i get ZLWD65100 div def
         XQ 0 lt {/XQ 0.00000001 def} if
         YQ 0 lt {/YQ 0.00000001 def} if
         ZQ 0 lt {/ZQ 0.00000001 def} if
         Lrc089 i YQ 0.008856 lt {903.3 YQ mul}
                  {YQ 0.33333333 exp 116 mul 16 sub} ifelse put
         arc089 i XQ 0.008856 lt {7.787 XQ mul 16 116 div add}
                  {XQ 0.33333333 exp} ifelse
                  YQ 0.008856 lt {7.787 YQ mul 16 116 div add}
                  {YQ 0.33333333 exp} ifelse sub 500 mul put
         brc089 i YQ 0.008856 lt {7.787 YQ mul 16 116 div add}
                  {YQ 0.33333333 exp} ifelse
                  ZQ 0.008856 lt {7.787 ZQ mul 16 116 div add}
                  {ZQ 0.33333333 exp} ifelse sub 200 mul put
       } for %i=0,IM1

/L*N Lrc089 0 get def
/A*N arc089 0 get def
/B*N brc089 0 get def

/L*W Lrc089 728 get def
/A*W arc089 728 get def
/B*W brc089 728 get def

0 1 IM1 {/i exch def %i=0,IM1
        Lra089 i Lrc089 i get put
        /l*CIE Lrc089 i get L*N sub L*W L*N sub div def
                                                       %system rel. lightn.
        /a*s A*W A*N sub l*CIE mul def
        /b*s B*W B*N sub l*CIE mul def
        ara089  i arc089 i get A*N sub a*s sub put
        bra089  i brc089 i get B*N sub b*s sub put
       } for %i=0,IM1

0 1 IM1 {/i exch def %i=0,IM1
       /X* {Lra089  i get 16 add 116 div
            ara089  i get 500 div add} bind def
       /Y* {Lra089  i get 16 add 116 div} bind def
       /Z* {Lra089  i get 16 add 116 div
            bra089  i get 200 div sub} bind def
       Xra089 i X* DecodeXYZ* XLWD65100 mul put
       Yra089 i Y* DecodeXYZ* YLWD65100 mul put
       Zra089 i Z* DecodeXYZ* ZLWD65100 mul put
      } for %i=0,IM1

xchartj 2 ge {%xchartj>=2

%for white X data
/Xwref089 Xra089 728 get def
/Ywref089 Yra089 728 get def
/Zwref089 Zra089 728 get def

%for black X data
/YrN Yra089 0 get def

/Xnref089 YrN XLN001 mul def
/Ynref089 YrN def
/Znref089 YrN ZLN001 mul def

/IM1 728 def
0 1 IM1 {/i exch def %i=1,IM1
         Xna089 i Xra089 i get Xnref089 sub
                  Xwref089 Xwref089 Xnref089 sub div mul put
         Yna089 i Yra089 i get Ynref089 sub
                  Ywref089 Ywref089 Ynref089 sub div mul put
         Zna089 i Zra089 i get Znref089 sub
                  Zwref089 Zwref089 Znref089 sub div mul put
        } for %i=1,IM1

0 1 IM1 {/i exch def %i=1,IM1
       /XQ Xna089 i get XLWD65100 div def
       /YQ Yna089 i get YLWD65100 div def
       /ZQ Zna089 i get ZLWD65100 div def
       XQ 0 lt {/XQ 0.00000001 def} if
       YQ 0 lt {/YQ 0.00000001 def} if
       ZQ 0 lt {/ZQ 0.00000001 def} if
       Lna089 i YQ 0.008856 lt {903.3 YQ mul}
                {YQ 0.33333333 exp 116 mul 16 sub} ifelse put
       ana089 i XQ 0.008856 lt {7.787 XQ mul 16 116 div add}
                {XQ 0.33333333 exp} ifelse
                YQ 0.008856 lt {7.787 YQ mul 16 116 div add}
                {YQ 0.33333333 exp} ifelse sub 500 mul put
       bna089 i YQ 0.008856 lt {7.787 YQ mul 16 116 div add}
                {YQ 0.33333333 exp} ifelse
                ZQ 0.008856 lt {7.787 ZQ mul 16 116 div add}
                {ZQ 0.33333333 exp} ifelse sub 200 mul put
     } for %i=1,IM1

} if %xchart>=2

xchartj 3 ge {%xchart>=3

%for white X data
/Xwref089 Xra089 728 get def
/Ywref089 Yra089 728 get def
/Zwref089 Zra089 728 get def

/kn Ywref089 Ywref089 Ytref089 sub div def

0 1 IM1 {/i exch def %i=1,IM1
         Xla089 i Xna089 i get kn div Xtref089 add put
         Yla089 i Yna089 i get kn div Ytref089 add put
         Zla089 i Zna089 i get kn div Ztref089 add put
        } for %i=1,IM1

0 1 IM1 {/i exch def %i=1,IM1
         /XQ Xla089 i get XLWD65100 div def
         /YQ Yla089 i get YLWD65100 div def
         /ZQ Zla089 i get ZLWD65100 div def
         XQ 0 lt {/XQ 0.00000001 def} if
         YQ 0 lt {/YQ 0.00000001 def} if
         ZQ 0 lt {/ZQ 0.00000001 def} if
         Lla089 i YQ 0.008856 lt {903.3 YQ mul}
                  {YQ 0.33333333 exp 116 mul 16 sub} ifelse put
         ala089 i XQ 0.008856 lt {7.787 XQ mul 16 116 div add}
                  {XQ 0.33333333 exp} ifelse
                  YQ 0.008856 lt {7.787 YQ mul 16 116 div add}
                  {YQ 0.33333333 exp} ifelse sub 500 mul put
         bla089 i YQ 0.008856 lt {7.787 YQ mul 16 116 div add}
                  {YQ 0.33333333 exp} ifelse
                  ZQ 0.008856 lt {7.787 ZQ mul 16 116 div add}
                  {ZQ 0.33333333 exp} ifelse sub 200 mul put
     } for %i=1,IM1

} if %xchart>=3

xchartj 0 eq {%xchartj=0 (1x)
0 1 IM1 {/i exch def %i=0,IM1
         LAB*Lj i Lrc089 i get put
         LAB*aj i arc089 i get put
         LAB*bj i brc089 i get put
         Xj i Xrc089 i get put
         Yj i Yrc089 i get put
         Zj i Zrc089 i get put
        } for %i=0,IM1
} if %xchartj=0 (1x)

xchartj 1 eq {%xchartj=1 (1x)
0 1 IM1 {/i exch def %i=0,IM1
         LAB*Lj i Lra089 i get put
         LAB*aj i ara089 i get put
         LAB*bj i bra089 i get put
         Xj i Xra089 i get put
         Yj i Yra089 i get put
         Zj i Zra089 i get put
        } for %i=0,IM1
} if %xchartj=1 (1x)

xchartj 2 eq {%xchartj=2 (1x)
0 1 IM1 {/i exch def %i=0,IM1
         LAB*Lj i Lna089 i get put
         LAB*aj i ana089 i get put
         LAB*bj i bna089 i get put
         Xj i Xna089 i get put
         Yj i Yna089 i get put
         Zj i Zna089 i get put
        } for %i=0,IM1
} if %xchartj=2 (1x)

xchartj 3 ge {%xchartj=3,4,5,6,7,8,9,10 (8x)
0 1 728 {/i exch def %i=0,IM1
         LAB*Lj i Lla089 i get put
         LAB*aj i ala089 i get put
         LAB*bj i bla089 i get put
         Xj i Xla089 i get put
         Yj i Yla089 i get put
         Zj i Zla089 i get put
        } for %i=0,IM1
} if %xchartj=3,4,5,6,7,8,9,10 (8x)

%Adaptation
/L*Nio LAB*Lj 000 get def
/A*Nio LAB*aj 000 get def
/B*Nio LAB*bj 000 get def

/L*Wio LAB*Lj 728 get def
/A*Wio LAB*aj 728 get def
/B*Wio LAB*bj 728 get def

/A*Dio A*Wio A*Nio sub def
/B*Dio B*Wio B*Nio sub def

0 1 728 {/j exch def %j=0,728
         LAB*Lja j LAB*Lj j get put
         /l*CIE LAB*Lj j get L*Nio sub L*Wio L*Nio sub div def
                                                      %system rel. lightn.
         /a*s A*Wio A*Nio sub l*CIE mul def
         /b*s B*Wio B*Nio sub l*CIE mul def
         LAB*aja j LAB*aj j get A*Nio sub a*s sub put
         LAB*bja j LAB*bj j get B*Nio sub b*s sub put
        } for %j=0,728

/L*Nioa LAB*Lja 0 get def
/A*Nioa LAB*aja 0 get def
/B*Nioa LAB*bja 0 get def

/L*Wioa LAB*Lja 728 get def
/A*Wioa LAB*aja 728 get def
/B*Wioa LAB*bja 728 get def

/nR 9 def  %lut size
/nG 9 def
/nB 9 def
/nges nR nG nB mul mul def

/lut 2187 array def %729x3=2187 (only 9x9x9 used)
0 1 728 {/i exch def %i=0,728
         /i3 i 3 mul def
         lut i3       LAB*Lja i get put
         lut i3 1 add LAB*aja i get put
         lut i3 2 add LAB*bja i get put
         } for %i=0,729

%} bind def %END xchartj_XYZj_FAB729a_F

} bind def %END procedure Colordata_sRGB_F

%*****************************************************************************
%BEG Procedure PROC_SPEC_IOF Colour special for NP-file 20120401
%*****************************************************************************
%different procedures:
% proc_LAB729a_to_LAB*LabCh64M and proc_LAB*LabCh64M_to_tab362_dy

%***********************************************************
/proc_LAB729a_to_LAB*LabCh64M {
%BEG Procedure proc_LAB729a_to_LAB*LabCh64M
%transfer from proc_LAB729a_to_LAB*LabCh64M, %9x9x9=729 steps used for LAB729a

%requires             /LAB*LabCh64M  64 array def
%requires in addition /LAB729a 729 array def

/LAB*Ldd64M 64 array def
/LAB*add64M 64 array def
/LAB*bdd64M 64 array def
/LAB*Cdd64M 64 array def
/LAB*hdd64M 64 array def
/hab*dd64M  64 array def
/M1jx 49 array def

0 1 5 {/xtonj exch def %xtonj=0,5
0 1 7 {/j exch def %j=0,7
       /ja xtonj 8 mul j add def
       xtonj 0 eq {/jx 648 j 09 mul add def} if %see O00Y-O83Y, -0
       xtonj 1 eq {/jx 720 j 81 mul sub def} if %see Y00L-Y83L, -81
       xtonj 2 eq {/jx 072 j        add def} if %see L00C-L83C, +01
       xtonj 3 eq {/jx 080 j 09 mul sub def} if %see C00V-C83V, -09
       xtonj 4 eq {/jx 008 j 81 mul add def} if %see V00M-V83M, -81
       xtonj 5 eq {/jx 656 j        sub def} if %see M00O-M83O, +01
       
       LAB*Ldd64M ja LAB*Lja jx get put
       LAB*add64M ja LAB*aja jx get put
       LAB*bdd64M ja LAB*bja jx get put
       LAB*Cdd64M ja LAB*add64M ja get dup mul
                     LAB*bdd64M ja get dup mul add sqrt put
       LAB*hdd64M ja LAB*bdd64M ja get
                     LAB*add64M ja get 0.0001 add atan put
       xtonj 5 eq    LAB*hdd64M ja get 90 le and
       {LAB*hdd64M ja LAB*hdd64M ja get 360 add put} if
       M1jx ja jx put
      } for %j=0,7
      } for %xtonj=0,5

M1jx 48 M1jx 0 get put

0 1 15 {/i exch def %i=0,15
        LAB*Ldd64M 48 i add LAB*Ldd64M i get put
        LAB*add64M 48 i add LAB*add64M i get put
        LAB*bdd64M 48 i add LAB*bdd64M i get put
        LAB*Cdd64M 48 i add LAB*Cdd64M i get put
        LAB*hdd64M 48 i add LAB*hdd64M i get 360 add put
       } for %i=1,15

0 1 63 {/i exch def %i=0,63
        hab*dd64M i LAB*hdd64M i get put
       } for %i=0,63

%data test according to increasing hue angle and appropriate correction
/xtesthuea -1 def
/xtesthuei 64 array def
0 1 48 {/i exch def %i=0,49
        hab*dd64M i get 
        hab*dd64M i 1 add get gt {/xtesthuea xtesthuea 1 add def
                                  xtesthuei xtesthuea i put 
                                  hab*dd64M  i 1 add hab*dd64M  i get put
                                  LAB*Ldd64M i 1 add LAB*Ldd64M i get put
                                  LAB*add64M i 1 add LAB*add64M i get put
                                  LAB*bdd64M i 1 add LAB*bdd64M i get put
                                  LAB*Cdd64M i 1 add LAB*Cdd64M i get put
                                  LAB*hdd64M i 1 add LAB*hdd64M i get put
                                 } if
       } for %i=0,49

} bind def %END proc_LAB729a_to_LAB*LabCh64M

%***********************************************************
/proc_LAB*LabCh64M_to_tab362_dy {
%BEG procedure proc_LAB*LabCh64M_to_tab362_dy
/LAB*e 40 array def %8x5=40 LabCh*
/LAB*e [39.92  58.74  27.99 0.0 0.0 %0 00_04 R CIE No.09 elementary in LAB
        81.26  -2.89  71.56 0.0 0.0 %1 05_09 J CIE No.10
        52.23 -42.42  13.60 0.0 0.0 %2 10_14 G CIE No.11
         0.0    0.0    0.0  0.0 0.0 %3 15_19 Cgb to be calculated
        30.57   1.41 -46.47 0.0 0.0 %4 20_24 B CIE No.12
         0.0    0.0    0.0  0.0 0.0 %5 25_29 Mbr to be calculated
        39.92  58.74  27.99 0.0 0.0 %6 30_34 Re+360 to be calculated
        81.26  -2.89  71.56 0.0 0.0 %7 35_39 Ye+360 to be calculated
      ] def

%add no. 03_04 Re
               LAB*e 03 LAB*e 01 get dup mul
                        LAB*e 02 get dup mul add sqrt put
               LAB*e 04 LAB*e 02 get LAB*e 01 get 0.0001 add atan put
%add no. 08_09 Ye
               LAB*e 08 LAB*e 06 get dup mul
                        LAB*e 07 get dup mul add sqrt put
               LAB*e 09 LAB*e 07 get LAB*e 06 get 0.0001 add atan put
%add no. 13_14 Ge
               LAB*e 13 LAB*e 11 get dup mul
                        LAB*e 12 get dup mul add sqrt put
               LAB*e 14 LAB*e 12 get LAB*e 11 get 0.0001 add atan put
%add no. 23_24 Be
               LAB*e 23 LAB*e 21 get dup mul
                        LAB*e 22 get dup mul add sqrt put
               LAB*e 24 LAB*e 22 get LAB*e 21 get 0.0001 add atan put
%add no. 33_34 Re+360
               LAB*e 33 LAB*e 31 get dup mul
                        LAB*e 32 get dup mul add sqrt put
               LAB*e 34 LAB*e 32 get LAB*e 31 get 0.0001 add atan 
               360 add put
%add no. 38_39 Ye+360
               LAB*e 38 LAB*e 36 get dup mul
                        LAB*e 37 get dup mul add sqrt put
               LAB*e 39 LAB*e 37 get LAB*e 36 get 0.0001 add atan
               360 add put
%new no. 15_19 Cgb with Ge_Be
               LAB*e 19 LAB*e 14 get LAB*e 24 get add 0.5 mul put %hab
               LAB*e 18 LAB*e 13 get LAB*e 23 get add 0.5 mul put %C*ab
               LAB*e 15 LAB*e 10 get LAB*e 20 get add 0.5 mul put %L*
               LAB*e 16 LAB*e 18 get LAB*e 19 get cos mul put     %a*
               LAB*e 17 LAB*e 18 get LAB*e 19 get sin mul put     %b*
%new no. 25_29 Mbr with Be_Re+360
               LAB*e 29 LAB*e 24 get LAB*e 34 get add 0.5 mul put %hab
               LAB*e 28 LAB*e 23 get LAB*e 33 get add 0.5 mul put %C*ab
               LAB*e 25 LAB*e 20 get LAB*e 00 get add 0.5 mul put %L*
               LAB*e 26 LAB*e 28 get LAB*e 29 get cos mul put     %a*
               LAB*e 27 LAB*e 28 get LAB*e 29 get sin mul put     %b*

/LAB*He     8 array def
0 1 7 {/i exch def %i=0,7
       LAB*He i LAB*e i 5 mul 4 add get put
      } for %i=0,7

/hab*de64M 50 array def
0 1 47 {/i exch def %i=0,47
        /i8 i 8 idiv def
        /i8d i i8 8 mul sub def
        /dLAB*He LAB*He i8 1 add get LAB*He i8 get sub 8 div def
        hab*de64M i  LAB*He i8 get dLAB*He i8d mul add put
       } for %i=0,47
hab*de64M 48 hab*de64M 0 get 360 add put
hab*de64M 49 hab*de64M 1 get 360 add put

/LAB*Hs     8 array def
/LAB*Hs [30. 90. 150. 210. 270. 330. 390. 450.] def
/hab*ds64M 50 array def
0 1 47 {/i exch def %i=0,47
        /i8 i 8 idiv def
        /i8d i i8 8 mul sub def
        /dLAB*Hs LAB*Hs i8 1 add get LAB*Hs i8 get sub 8 div def
        hab*ds64M i  LAB*Hs i8 get dLAB*Hs i8d mul add put
       } for %i=0,47
hab*ds64M 48 hab*ds64M 0 get 360 add put
hab*ds64M 49 hab*ds64M 1 get 360 add put

%***************** calculation of LAB*LabChd362Mi and rgb*dd362Mi
%***************** for 362 elementary hue angles
/LAB*Ldd362Mi 362 array def
/LAB*add362Mi 362 array def
/LAB*bdd362Mi 362 array def
/LAB*Cdd362Mi 362 array def
/LAB*hdd362Mi 362 array def

/r*dd362Mi 362 array def
/g*dd362Mi 362 array def
/b*dd362Mi 362 array def

%******default rgb-input data for output of device colours
/r*dd64M 64 array def
/r*dd64M [1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %R
          1.000 0.875 0.750 0.625 0.500 0.375 0.250 0.125 %J
          0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %G
          0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %C
          0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 %B
          1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %M
          1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %R
          1.000 0.875 0.750 0.625 0.500 0.375 0.250 0.125 %J
         ] def
/g*dd64M 64 array def
/g*dd64M [0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 %R
          1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %J
          1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %G
          1.000 0.875 0.750 0.625 0.500 0.375 0.250 0.125 %C
          0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %B
          0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %M
          0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 %R
          1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %J
         ] def
/b*dd64M 64 array def
/b*dd64M [0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %R
          0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %J
          0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 %G
          1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %C
          1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %B
          1.000 0.875 0.750 0.625 0.500 0.375 0.250 0.125 %M
          0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %R
          0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %J
         ] def

%calculate all data of 16+1=17 step elementary colour circle

/ind64M 17 array def
/ind64M 
%R00Y R25Y R50Y R75Y Y00G Y25G Y50G Y75G
[0    2    4    6    8    10   12   14
%G00B G25B G50B G75G B00R B25R B50R B75R R00Y
 16   20   24   28   32   36   40   44   0
] def

%actual 16 step device circle + N + W
/r*dd18M 18 array def
/g*dd18M 18 array def
/b*dd18M 18 array def

0 1 15 {/i exch def %i=0,15
        /indi ind64M i get def
        r*dd18M i r*dd64M indi get put %16 device colours
        g*dd18M i g*dd64M indi get put
        b*dd18M i b*dd64M indi get put
       } for %i=0,15

r*dd18M 16 0 put %N
g*dd18M 16 0 put
b*dd18M 16 0 put

r*dd18M 17 1 put %W
g*dd18M 17 1 put
b*dd18M 17 1 put

%actual 6 step device circle + N + W
/r*dd08M 08 array def
/g*dd08M 08 array def
/b*dd08M 08 array def

0 1 5 {/i exch def %i=0,5
        r*dd08M i r*dd64M i 8 mul get put %6 device colours
        g*dd08M i g*dd64M i 8 mul get put
        b*dd08M i b*dd64M i 8 mul get put
       } for %i=0,5

r*dd08M 6 0 put %N
g*dd08M 6 0 put
b*dd08M 6 0 put
r*dd08M 7 1 put %W
g*dd08M 7 1 put
b*dd08M 7 1 put

0 1 361 {/i exch def %i=0,361     %default only for test
         r*dd362Mi i 0 put        %of irregularities
         g*dd362Mi i 0 put
         b*dd362Mi i 0 put
         LAB*Ldd362Mi i 0.0001 put
         LAB*add362Mi i 0 put
         LAB*bdd362Mi i 0 put
         LAB*Cdd362Mi i 0 put
         LAB*hdd362Mi i 0 put
        } for %i=0,361

% s-data 030,0 -> LAB*hdd64M 0 get -> LAB*Ldd362Mi 30,0 put: LAB*hdd362Mi=40
% s-data 037,5 -> LAB*hdd64M 1 get -> LAB*Ldd362Mi 37,5 put: LAB*hdd362Mi=41,3
% s-data 045,0 -> LAB*hdd64M 2 get -> LAB*Ldd362Mi 45,0 put: LAB*hdd362Mi=44,6
% s-data 052,5 -> LAB*hdd64M 3 get -> LAB*Ldd362Mi 52,5 put: LAB*hdd362Mi=50,7
%...
% s-data 090,0 -> LAB*hdd64M 8 get -> LAB*Ldd362Mi 90,0 put: LAB*hdd362Mi=102,8

% s-data 330,0 -> LAB*hdd64M 41 get -> LAB*Ldd362Mi 330,0 put: LAB*hdd362Mi=328
% s-data 337,5 -> LAB*hdd64M 42 get -> LAB*Ldd362Mi 337,5 put: LAB*hdd362Mi=334
% s-data 345,0 -> LAB*hdd64M 43 get -> LAB*Ldd362Mi 345,0 put: LAB*hdd362Mi=341
% s-data 352,5 -> LAB*hdd64M 44 get -> LAB*Ldd362Mi 352,5 put: LAB*hdd362Mi=351
% s-data 360,0 -> LAB*hdd64M 45 get -> LAB*Ldd362Mi 360,0 put: LAB*hdd362Mi=352
%...
% s-data 390,0 -> LAB*hdd64M 49 get -> LAB*Ldd362Mi 390,0 put: LAB*hdd362Mi=400

0 15 345 {/i exch def %i=0,15,345
          /ix00 i 15 idiv 2 mul def
          /ix01 ix00 1 add def
          /ix02 ix00 2 add def
          0 1 14 {/j exch def %j=0,14
                  j 07 le {%j<=7
                           /XIE j 7.5 div def
                           /i0 i j add def
                           /ix0 ix00 def
                           /ix1 ix01 def
                          }%j<=7
                          {%j>7
                           /XIE j 8 sub 0.5 add 7.5 div def
                           /i0 i j add def
                           /ix0 ix01 def
                           /ix1 ix02 def
                          } ifelse %j>7
                  LAB*Ldd362Mi i0 LAB*Ldd64M ix0 get
                                  LAB*Ldd64M ix1 get LAB*Ldd64M ix0 get sub
                                  XIE mul add put
                  LAB*Cdd362Mi i0 LAB*Cdd64M ix0 get
                                  LAB*Cdd64M ix1 get LAB*Cdd64M ix0 get sub
                                  XIE mul add put
                  LAB*hdd362Mi i0 LAB*hdd64M ix0 get
                                  LAB*hdd64M ix1 get LAB*hdd64M ix0 get sub
                                  XIE mul add
                                  dup 90 gt i0 45 le and {360 sub} if
                                  put
                  LAB*add362Mi i0 LAB*Cdd362Mi i0 get LAB*hdd362Mi i0 get
                                  cos mul put
                  LAB*bdd362Mi i0 LAB*Cdd362Mi i0 get LAB*hdd362Mi i0 get
                                  sin mul put
                  r*dd362Mi i0 r*dd64M ix0 get
                               r*dd64M ix1 get r*dd64M ix0 get sub
                               XIE mul add put
                  g*dd362Mi i0 g*dd64M ix0 get
                               g*dd64M ix1 get g*dd64M ix0 get sub
                               XIE mul add put
                  b*dd362Mi i0 b*dd64M ix0 get
                               b*dd64M ix1 get b*dd64M ix0 get sub
                               XIE mul add put

                 } for %j=0,14

         } for %i0=0,15,345

0 1 1 {/i exch def %i=0,1
       LAB*Ldd362Mi 360 i add LAB*Ldd362Mi i get put
       LAB*add362Mi 360 i add LAB*add362Mi i get put
       LAB*bdd362Mi 360 i add LAB*bdd362Mi i get put
       LAB*Cdd362Mi 360 i add LAB*Cdd362Mi i get put
       LAB*hdd362Mi 360 i add LAB*hdd362Mi i get 360 add put
       r*dd362Mi 360 i add r*dd362Mi i get put
       g*dd362Mi 360 i add g*dd362Mi i get put
       b*dd362Mi 360 i add b*dd362Mi i get put
       } for %i=0,1

/hab*dd362Fi 362 array def
0 1 361 {/i exch def %i=0,361
         hab*dd362Fi i LAB*hdd362Mi i get put %floating point F
        } for %i=0,361

%***************** calculation of hab*ds362Mi %integer
%***************** for 362 standard hue angles
/hab*ds362Mi 362 array def
0 1 361 {/i exch def %i=0,361 %range 30..391
         hab*ds362Mi i 30 i add put %always integer
        } for %i=0,361

%***************** calculation of LAB*LabChs362Mi and rgb*ds362Mi
%***************** for 362 device hue angles
/LAB*Lds362Mi 362 array def
/LAB*ads362Mi 362 array def
/LAB*bds362Mi 362 array def
/LAB*Cds362Mi 362 array def
/LAB*hds362Mi 362 array def

/r*ds362Mi 362 array def
/g*ds362Mi 362 array def
/b*ds362Mi 362 array def

0 1 361 {/i exch def %i=0,361     %default only for test
         r*ds362Mi i 0 put        %of irregularities
         g*ds362Mi i 0 put
         b*ds362Mi i 0 put
         LAB*Lds362Mi i 0.0001 put
         LAB*ads362Mi i 0 put
         LAB*bds362Mi i 0 put
         LAB*Cds362Mi i 0 put
         LAB*hds362Mi i 0 put
        } for %i=0,361

0 1 359 {/i0 exch def %i=0,359
         /i0i hab*ds362Mi i0 get def              %integer range 30...390
          i0i hab*dd362Fi 0 get lt {/i0i i0i 360 add def} if
          0 1 47 {/ix0 exch def %ix0=0,48
                  /ix1 ix0 1 add def
                  i0i LAB*hdd64M ix0 get sub 0 ge
                  i0i LAB*hdd64M ix1 get sub 0 lt and {%ge..lt
                  
                  /XIE i0i LAB*hdd64M ix0 get sub
                       LAB*hdd64M ix1 get LAB*hdd64M ix0 get sub div def
                  LAB*Lds362Mi i0 LAB*Ldd64M ix0 get
                                  LAB*Ldd64M ix1 get LAB*Ldd64M ix0 get sub
                                  XIE mul add put
                  LAB*Cds362Mi i0 LAB*Cdd64M ix0 get
                                  LAB*Cdd64M ix1 get LAB*Cdd64M ix0 get sub
                                  XIE mul add put
                  LAB*hds362Mi i0 LAB*hdd64M ix0 get
                                  LAB*hdd64M ix1 get LAB*hdd64M ix0 get sub
                                  XIE mul add
                                  dup 90 gt i0 45 le and {360 sub} if
                                  put
                  LAB*ads362Mi i0 LAB*Cds362Mi i0 get LAB*hds362Mi i0 get
                                  cos mul put
                  LAB*bds362Mi i0 LAB*Cds362Mi i0 get LAB*hds362Mi i0 get
                                  sin mul put
                  r*ds362Mi i0 r*dd64M ix0 get
                               r*dd64M ix1 get r*dd64M ix0 get sub
                               XIE mul add put
                  g*ds362Mi i0 g*dd64M ix0 get
                               g*dd64M ix1 get g*dd64M ix0 get sub
                               XIE mul add put
                  b*ds362Mi i0 b*dd64M ix0 get
                               b*dd64M ix1 get b*dd64M ix0 get sub
                               XIE mul add put
                  exit
                                               } if %ge..lt
                 } for %ix0=0,47
} for %i=0,359

0 1 1 {/i exch def %i=0,1
       LAB*Lds362Mi 360 i add LAB*Lds362Mi i get put
       LAB*ads362Mi 360 i add LAB*ads362Mi i get put
       LAB*bds362Mi 360 i add LAB*bds362Mi i get put
       LAB*Cds362Mi 360 i add LAB*Cds362Mi i get put
       LAB*hds362Mi 360 i add LAB*hds362Mi i get 360 add put
       r*ds362Mi 360 i add r*ds362Mi i get put
       g*ds362Mi 360 i add g*ds362Mi i get put
       b*ds362Mi 360 i add b*ds362Mi i get put
       } for %i=0,1

%***************** calculation of hab*de362Fi
%***************** for 362 elementary hue angles
/hab*de362Fi 362 array def %floating point %range 26..386

30 1 389 {/i exch def %i=30,389
          /im30 i 30 sub def
          /hab*sM i def

%alphas = [habs - LAB*Hs(h)]/[LAB*Hs(n+1) - LAB*Hs(n)]
%       = [habs - LAB*Hs(h)]/60
%habe   = LAB*He(n) + alphas [LAB*He(n+1) - LAB*He(n)]
%use of LAB*He 0..7 Re_to_Ye

i 030 ge i 089 le and {/ipan0 0 def /ipan1 1 def} if
i 090 ge i 149 le and {/ipan0 1 def /ipan1 2 def} if
i 150 ge i 209 le and {/ipan0 2 def /ipan1 3 def} if
i 210 ge i 269 le and {/ipan0 3 def /ipan1 4 def} if
i 270 ge i 329 le and {/ipan0 4 def /ipan1 5 def} if
i 330 ge i 359 le and {/ipan0 5 def /ipan1 6 def} if
i 360 ge i 389 le and {/ipan0 6 def /ipan1 7 def} if

/alphas {hab*sM LAB*Hs ipan0 get sub 60 div} bind def

/habe {LAB*He ipan0 get
       LAB*He ipan1 get LAB*He ipan0 get sub alphas mul
       add} bind def

hab*de362Fi im30 habe put %floating point
          } for %i=30,389

hab*de362Fi 360 hab*de362Fi 0 get 360 add put
hab*de362Fi 361 hab*de362Fi 1 get 360 add put

%***************** calculation LAB*LabChe32Mi and rgb*de362Mi
%***************** for 362 elementary hue angles
/LAB*Lde362Mi 362 array def
/LAB*ade362Mi 362 array def
/LAB*bde362Mi 362 array def
/LAB*Cde362Mi 362 array def
/LAB*hde362Mi 362 array def

/r*de362Mi 362 array def
/g*de362Mi 362 array def
/b*de362Mi 362 array def

0 1 361 {/i exch def %i=0,361     %default only for test
         r*de362Mi i 0 put        %of irregularities
         g*de362Mi i 0 put
         b*de362Mi i 0 put
         LAB*Lde362Mi i 0.0001 put
         LAB*ade362Mi i 0 put
         LAB*bde362Mi i 0 put
         LAB*Cde362Mi i 0 put
         LAB*hde362Mi i 0 put
        } for %i=0,361

0 1 359 {/i0 exch def %i=0,359
         /i0i hab*de362Fi i0 get def              %range 26...386
          i0i hab*dd362Fi 0 get lt {/i0i i0i 360 add def} if
          0 1 47 {/ix0 exch def %ix0=0,48
                  /ix1 ix0 1 add def
                  i0i LAB*hdd64M ix0 get sub 0 ge
                  i0i LAB*hdd64M ix1 get sub 0 lt and {%ge..lt
                  
                  /XIE i0i LAB*hdd64M ix0 get sub
                       LAB*hdd64M ix1 get LAB*hdd64M ix0 get sub div def
                  LAB*Lde362Mi i0 LAB*Ldd64M ix0 get
                                  LAB*Ldd64M ix1 get LAB*Ldd64M ix0 get sub
                                  XIE mul add put
                  LAB*Cde362Mi i0 LAB*Cdd64M ix0 get
                                  LAB*Cdd64M ix1 get LAB*Cdd64M ix0 get sub
                                  XIE mul add put
                  LAB*hde362Mi i0 LAB*hdd64M ix0 get
                                  LAB*hdd64M ix1 get LAB*hdd64M ix0 get sub
                                  XIE mul add
                                  dup 90 gt i0 45 le and {360 sub} if
                                  put
                  LAB*ade362Mi i0 LAB*Cde362Mi i0 get LAB*hde362Mi i0 get
                                  cos mul put
                  LAB*bde362Mi i0 LAB*Cde362Mi i0 get LAB*hde362Mi i0 get
                                  sin mul put
                  r*de362Mi i0 r*dd64M ix0 get
                               r*dd64M ix1 get r*dd64M ix0 get sub
                               XIE mul add put
                  g*de362Mi i0 g*dd64M ix0 get
                               g*dd64M ix1 get g*dd64M ix0 get sub
                               XIE mul add put
                  b*de362Mi i0 b*dd64M ix0 get
                               b*dd64M ix1 get b*dd64M ix0 get sub
                               XIE mul add put
                  exit
                                               } if %ge..lt
                 } for %ix0=0,47
} for %i=0,359

0 1 1 {/i exch def %i=0,1
       LAB*Lde362Mi 360 i add LAB*Lde362Mi i get put
       LAB*ade362Mi 360 i add LAB*ade362Mi i get put
       LAB*bde362Mi 360 i add LAB*bde362Mi i get put
       LAB*Cde362Mi 360 i add LAB*Cde362Mi i get put
       LAB*hde362Mi 360 i add LAB*hde362Mi i get 360 add put
       r*de362Mi 360 i add r*de362Mi i get put
       g*de362Mi 360 i add g*de362Mi i get put
       b*de362Mi 360 i add b*de362Mi i get put
       } for %i=0,1


%special LAB* data calculation of 17 step colour circle
%needs LAB*LabCh64M, hab*dd64M

/ind64M 17 array def
/ind64M 
%R00Y R25Y R50Y R75Y Y00G Y25G Y50G Y75G
[0    2    4    6    8    10   12   14
%G00B G25B G50B G75G B00R B25R B50R B75R R00Y
 16   20   24   28   32   36   40   44   0
] def

/LAB*Ldd18M 17 array def
/LAB*add18M 17 array def
/LAB*bdd18M 17 array def
/LAB*Cdd18M 17 array def
/LAB*hdd18M 17 array def
/hab*dd18M  17 array def

0 1 16 {/i exch def %i=0,16
        /indi ind64M i get def
        LAB*Ldd18M i LAB*Ldd64M indi get put
        LAB*add18M i LAB*add64M indi get put
        LAB*bdd18M i LAB*bdd64M indi get put
        LAB*Cdd18M i LAB*Cdd64M indi get put
        LAB*hdd18M i LAB*hdd64M indi get put
        hab*dd18M  i hab*dd64M  indi get put
       } for %i=0,16

} bind def %END proc_LAB*LabCh64M_to_tab362_dy
%*****************************************************************************
%END Procedure PROC_SPEC_IOF Colour special for NP-file 20120401
%*****************************************************************************

/FileDaten (sRGB standard device; no separation, D65) def
/FileDatde (sRGB Norm\255Ger\344t; keine Separation, D65) def

/RGB0_F 3240 array def %1080*3

/RGB0_F
[%1000 x rgb*    nr.  pos  1080 colours
 0000 0000 0000 %0000 A01
 0000 0000 0125 %0001 A02
 0000 0000 0250 %0002 A03
 0000 0000 0375 %0003 A04
 0000 0000 0500 %0004 A05
 0000 0000 0625 %0005 A06
 0000 0000 0750 %0006 A07
 0000 0000 0875 %0007 A08
 0000 0000 1000 %0008 A09
 0000 0125 0000 %0009 B01
 0000 0125 0125 %0010 B02
 0000 0125 0250 %0011 B03
 0000 0125 0375 %0012 B04
 0000 0125 0500 %0013 B05
 0000 0125 0625 %0014 B06
 0000 0125 0750 %0015 B07
 0000 0125 0875 %0016 B08
 0000 0125 1000 %0017 B09
 0000 0250 0000 %0018 C01
 0000 0250 0125 %0019 C02
 0000 0250 0250 %0020 C03
 0000 0250 0375 %0021 C04
 0000 0250 0500 %0022 C05
 0000 0250 0625 %0023 C06
 0000 0250 0750 %0024 C07
 0000 0250 0875 %0025 C08
 0000 0250 1000 %0026 C09
 0000 0375 0000 %0027 D01
 0000 0375 0125 %0028 D02
 0000 0375 0250 %0029 D03
 0000 0375 0375 %0030 D04
 0000 0375 0500 %0031 D05
 0000 0375 0625 %0032 D06
 0000 0375 0750 %0033 D07
 0000 0375 0875 %0034 D08
 0000 0375 1000 %0035 D09
 0000 0500 0000 %0036 E01
 0000 0500 0125 %0037 E02
 0000 0500 0250 %0038 E03
 0000 0500 0375 %0039 E04
 0000 0500 0500 %0040 E05
 0000 0500 0625 %0041 E06
 0000 0500 0750 %0042 E07
 0000 0500 0875 %0043 E08
 0000 0500 1000 %0044 E09
 0000 0625 0000 %0045 F01
 0000 0625 0125 %0046 F02
 0000 0625 0250 %0047 F03
 0000 0625 0375 %0048 F04
 0000 0625 0500 %0049 F05
 0000 0625 0625 %0050 F06
 0000 0625 0750 %0051 F07
 0000 0625 0875 %0052 F08
 0000 0625 1000 %0053 F09
 0000 0750 0000 %0054 G01
 0000 0750 0125 %0055 G02
 0000 0750 0250 %0056 G03
 0000 0750 0375 %0057 G04
 0000 0750 0500 %0058 G05
 0000 0750 0625 %0059 G06
 0000 0750 0750 %0060 G07
 0000 0750 0875 %0061 G08
 0000 0750 1000 %0062 G09
 0000 0875 0000 %0063 H01
 0000 0875 0125 %0064 H02
 0000 0875 0250 %0065 H03
 0000 0875 0375 %0066 H04
 0000 0875 0500 %0067 H05
 0000 0875 0625 %0068 H06
 0000 0875 0750 %0069 H07
 0000 0875 0875 %0070 H08
 0000 0875 1000 %0071 H09
 0000 1000 0000 %0072 I01
 0000 1000 0125 %0073 I02
 0000 1000 0250 %0074 I03
 0000 1000 0375 %0075 I04
 0000 1000 0500 %0076 I05
 0000 1000 0625 %0077 I06
 0000 1000 0750 %0078 I07
 0000 1000 0875 %0079 I08
 0000 1000 1000 %0080 I09
 0125 0000 0000 %0081 J01
 0125 0000 0125 %0082 J02
 0125 0000 0250 %0083 J03
 0125 0000 0375 %0084 J04
 0125 0000 0500 %0085 J05
 0125 0000 0625 %0086 J06
 0125 0000 0750 %0087 J07
 0125 0000 0875 %0088 J08
 0125 0000 1000 %0089 J09
 0125 0125 0000 %0090 K01
 0125 0125 0125 %0091 K02
 0125 0125 0250 %0092 K03
 0125 0125 0375 %0093 K04
 0125 0125 0500 %0094 K05
 0125 0125 0625 %0095 K06
 0125 0125 0750 %0096 K07
 0125 0125 0875 %0097 K08
 0125 0125 1000 %0098 K09
 0125 0250 0000 %0099 L01
 0125 0250 0125 %0100 L02
 0125 0250 0250 %0101 L03
 0125 0250 0375 %0102 L04
 0125 0250 0500 %0103 L05
 0125 0250 0625 %0104 L06
 0125 0250 0750 %0105 L07
 0125 0250 0875 %0106 L08
 0125 0250 1000 %0107 L09
 0125 0375 0000 %0108 M01
 0125 0375 0125 %0109 M02
 0125 0375 0250 %0110 M03
 0125 0375 0375 %0111 M04
 0125 0375 0500 %0112 M05
 0125 0375 0625 %0113 M06
 0125 0375 0750 %0114 M07
 0125 0375 0875 %0115 M08
 0125 0375 1000 %0116 M09
 0125 0500 0000 %0117 N01
 0125 0500 0125 %0118 N02
 0125 0500 0250 %0119 N03
 0125 0500 0375 %0120 N04
 0125 0500 0500 %0121 N05
 0125 0500 0625 %0122 N06
 0125 0500 0750 %0123 N07
 0125 0500 0875 %0124 N08
 0125 0500 1000 %0125 N09
 0125 0625 0000 %0126 O01
 0125 0625 0125 %0127 O02
 0125 0625 0250 %0128 O03
 0125 0625 0375 %0129 O04
 0125 0625 0500 %0130 O05
 0125 0625 0625 %0131 O06
 0125 0625 0750 %0132 O07
 0125 0625 0875 %0133 O08
 0125 0625 1000 %0134 O09
 0125 0750 0000 %0135 P01
 0125 0750 0125 %0136 P02
 0125 0750 0250 %0137 P03
 0125 0750 0375 %0138 P04
 0125 0750 0500 %0139 P05
 0125 0750 0625 %0140 P06
 0125 0750 0750 %0141 P07
 0125 0750 0875 %0142 P08
 0125 0750 1000 %0143 P09
 0125 0875 0000 %0144 Q01
 0125 0875 0125 %0145 Q02
 0125 0875 0250 %0146 Q03
 0125 0875 0375 %0147 Q04
 0125 0875 0500 %0148 Q05
 0125 0875 0625 %0149 Q06
 0125 0875 0750 %0150 Q07
 0125 0875 0875 %0151 Q08
 0125 0875 1000 %0152 Q09
 0125 1000 0000 %0153 R01
 0125 1000 0125 %0154 R02
 0125 1000 0250 %0155 R03
 0125 1000 0375 %0156 R04
 0125 1000 0500 %0157 R05
 0125 1000 0625 %0158 R06
 0125 1000 0750 %0159 R07
 0125 1000 0875 %0160 R08
 0125 1000 1000 %0161 R09
 0250 0000 0000 %0162 S01
 0250 0000 0125 %0163 S02
 0250 0000 0250 %0164 S03
 0250 0000 0375 %0165 S04
 0250 0000 0500 %0166 S05
 0250 0000 0625 %0167 S06
 0250 0000 0750 %0168 S07
 0250 0000 0875 %0169 S08
 0250 0000 1000 %0170 S09
 0250 0125 0000 %0171 T01
 0250 0125 0125 %0172 T02
 0250 0125 0250 %0173 T03
 0250 0125 0375 %0174 T04
 0250 0125 0500 %0175 T05
 0250 0125 0625 %0176 T06
 0250 0125 0750 %0177 T07
 0250 0125 0875 %0178 T08
 0250 0125 1000 %0179 T09
 0250 0250 0000 %0180 U01
 0250 0250 0125 %0181 U02
 0250 0250 0250 %0182 U03
 0250 0250 0375 %0183 U04
 0250 0250 0500 %0184 U05
 0250 0250 0625 %0185 U06
 0250 0250 0750 %0186 U07
 0250 0250 0875 %0187 U08
 0250 0250 1000 %0188 U09
 0250 0375 0000 %0189 V01
 0250 0375 0125 %0190 V02
 0250 0375 0250 %0191 V03
 0250 0375 0375 %0192 V04
 0250 0375 0500 %0193 V05
 0250 0375 0625 %0194 V06
 0250 0375 0750 %0195 V07
 0250 0375 0875 %0196 V08
 0250 0375 1000 %0197 V09
 0250 0500 0000 %0198 W01
 0250 0500 0125 %0199 W02
 0250 0500 0250 %0200 W03
 0250 0500 0375 %0201 W04
 0250 0500 0500 %0202 W05
 0250 0500 0625 %0203 W06
 0250 0500 0750 %0204 W07
 0250 0500 0875 %0205 W08
 0250 0500 1000 %0206 W09
 0250 0625 0000 %0207 X01
 0250 0625 0125 %0208 X02
 0250 0625 0250 %0209 X03
 0250 0625 0375 %0210 X04
 0250 0625 0500 %0211 X05
 0250 0625 0625 %0212 X06
 0250 0625 0750 %0213 X07
 0250 0625 0875 %0214 X08
 0250 0625 1000 %0215 X09
 0250 0750 0000 %0216 Y01
 0250 0750 0125 %0217 Y02
 0250 0750 0250 %0218 Y03
 0250 0750 0375 %0219 Y04
 0250 0750 0500 %0220 Y05
 0250 0750 0625 %0221 Y06
 0250 0750 0750 %0222 Y07
 0250 0750 0875 %0223 Y08
 0250 0750 1000 %0224 Y09
 0250 0875 0000 %0225 Z01
 0250 0875 0125 %0226 Z02
 0250 0875 0250 %0227 Z03
 0250 0875 0375 %0228 Z04
 0250 0875 0500 %0229 Z05
 0250 0875 0625 %0230 Z06
 0250 0875 0750 %0231 Z07
 0250 0875 0875 %0232 Z08
 0250 0875 1000 %0233 Z09
 0250 1000 0000 %0234 a01
 0250 1000 0125 %0235 a02
 0250 1000 0250 %0236 a03
 0250 1000 0375 %0237 a04
 0250 1000 0500 %0238 a05
 0250 1000 0625 %0239 a06
 0250 1000 0750 %0240 a07
 0250 1000 0875 %0241 a08
 0250 1000 1000 %0242 a09
 0375 0000 0000 %0243 A10
 0375 0000 0125 %0244 A11
 0375 0000 0250 %0245 A12
 0375 0000 0375 %0246 A13
 0375 0000 0500 %0247 A14
 0375 0000 0625 %0248 A15
 0375 0000 0750 %0249 A16
 0375 0000 0875 %0250 A17
 0375 0000 1000 %0251 A18
 0375 0125 0000 %0252 B10
 0375 0125 0125 %0253 B11
 0375 0125 0250 %0254 B12
 0375 0125 0375 %0255 B13
 0375 0125 0500 %0256 B14
 0375 0125 0625 %0257 B15
 0375 0125 0750 %0258 B16
 0375 0125 0875 %0259 B17
 0375 0125 1000 %0260 B18
 0375 0250 0000 %0261 C10
 0375 0250 0125 %0262 C11
 0375 0250 0250 %0263 C12
 0375 0250 0375 %0264 C13
 0375 0250 0500 %0265 C14
 0375 0250 0625 %0266 C15
 0375 0250 0750 %0267 C16
 0375 0250 0875 %0268 C17
 0375 0250 1000 %0269 C18
 0375 0375 0000 %0270 D10
 0375 0375 0125 %0271 D11
 0375 0375 0250 %0272 D12
 0375 0375 0375 %0273 D13
 0375 0375 0500 %0274 D14
 0375 0375 0625 %0275 D15
 0375 0375 0750 %0276 D16
 0375 0375 0875 %0277 D17
 0375 0375 1000 %0278 D18
 0375 0500 0000 %0279 E10
 0375 0500 0125 %0280 E11
 0375 0500 0250 %0281 E12
 0375 0500 0375 %0282 E13
 0375 0500 0500 %0283 E14
 0375 0500 0625 %0284 E15
 0375 0500 0750 %0285 E16
 0375 0500 0875 %0286 E17
 0375 0500 1000 %0287 E18
 0375 0625 0000 %0288 F10
 0375 0625 0125 %0289 F11
 0375 0625 0250 %0290 F12
 0375 0625 0375 %0291 F13
 0375 0625 0500 %0292 F14
 0375 0625 0625 %0293 F15
 0375 0625 0750 %0294 F16
 0375 0625 0875 %0295 F17
 0375 0625 1000 %0296 F18
 0375 0750 0000 %0297 G10
 0375 0750 0125 %0298 G11
 0375 0750 0250 %0299 G12
 0375 0750 0375 %0300 G13
 0375 0750 0500 %0301 G14
 0375 0750 0625 %0302 G15
 0375 0750 0750 %0303 G16
 0375 0750 0875 %0304 G17
 0375 0750 1000 %0305 G18
 0375 0875 0000 %0306 H10
 0375 0875 0125 %0307 H11
 0375 0875 0250 %0308 H12
 0375 0875 0375 %0309 H13
 0375 0875 0500 %0310 H14
 0375 0875 0625 %0311 H15
 0375 0875 0750 %0312 H16
 0375 0875 0875 %0313 H17
 0375 0875 1000 %0314 H18
 0375 1000 0000 %0315 I10
 0375 1000 0125 %0316 I11
 0375 1000 0250 %0317 I12
 0375 1000 0375 %0318 I13
 0375 1000 0500 %0319 I14
 0375 1000 0625 %0320 I15
 0375 1000 0750 %0321 I16
 0375 1000 0875 %0322 I17
 0375 1000 1000 %0323 I18
 0500 0000 0000 %0324 J10
 0500 0000 0125 %0325 J11
 0500 0000 0250 %0326 J12
 0500 0000 0375 %0327 J13
 0500 0000 0500 %0328 J14
 0500 0000 0625 %0329 J15
 0500 0000 0750 %0330 J16
 0500 0000 0875 %0331 J17
 0500 0000 1000 %0332 J18
 0500 0125 0000 %0333 K10
 0500 0125 0125 %0334 K11
 0500 0125 0250 %0335 K12
 0500 0125 0375 %0336 K13
 0500 0125 0500 %0337 K14
 0500 0125 0625 %0338 K15
 0500 0125 0750 %0339 K16
 0500 0125 0875 %0340 K17
 0500 0125 1000 %0341 K18
 0500 0250 0000 %0342 L10
 0500 0250 0125 %0343 L11
 0500 0250 0250 %0344 L12
 0500 0250 0375 %0345 L13
 0500 0250 0500 %0346 L14
 0500 0250 0625 %0347 L15
 0500 0250 0750 %0348 L16
 0500 0250 0875 %0349 L17
 0500 0250 1000 %0350 L18
 0500 0375 0000 %0351 M10
 0500 0375 0125 %0352 M11
 0500 0375 0250 %0353 M12
 0500 0375 0375 %0354 M13
 0500 0375 0500 %0355 M14
 0500 0375 0625 %0356 M15
 0500 0375 0750 %0357 M16
 0500 0375 0875 %0358 M17
 0500 0375 1000 %0359 M18
 0500 0500 0000 %0360 N10
 0500 0500 0125 %0361 N11
 0500 0500 0250 %0362 N12
 0500 0500 0375 %0363 N13
 0500 0500 0500 %0364 N14
 0500 0500 0625 %0365 N15
 0500 0500 0750 %0366 N16
 0500 0500 0875 %0367 N17
 0500 0500 1000 %0368 N18
 0500 0625 0000 %0369 O10
 0500 0625 0125 %0370 O11
 0500 0625 0250 %0371 O12
 0500 0625 0375 %0372 O13
 0500 0625 0500 %0373 O14
 0500 0625 0625 %0374 O15
 0500 0625 0750 %0375 O16
 0500 0625 0875 %0376 O17
 0500 0625 1000 %0377 O18
 0500 0750 0000 %0378 P10
 0500 0750 0125 %0379 P11
 0500 0750 0250 %0380 P12
 0500 0750 0375 %0381 P13
 0500 0750 0500 %0382 P14
 0500 0750 0625 %0383 P15
 0500 0750 0750 %0384 P16
 0500 0750 0875 %0385 P17
 0500 0750 1000 %0386 P18
 0500 0875 0000 %0387 Q10
 0500 0875 0125 %0388 Q11
 0500 0875 0250 %0389 Q12
 0500 0875 0375 %0390 Q13
 0500 0875 0500 %0391 Q14
 0500 0875 0625 %0392 Q15
 0500 0875 0750 %0393 Q16
 0500 0875 0875 %0394 Q17
 0500 0875 1000 %0395 Q18
 0500 1000 0000 %0396 R10
 0500 1000 0125 %0397 R11
 0500 1000 0250 %0398 R12
 0500 1000 0375 %0399 R13
 0500 1000 0500 %0400 R14
 0500 1000 0625 %0401 R15
 0500 1000 0750 %0402 R16
 0500 1000 0875 %0403 R17
 0500 1000 1000 %0404 R18
 0625 0000 0000 %0405 S10
 0625 0000 0125 %0406 S11
 0625 0000 0250 %0407 S12
 0625 0000 0375 %0408 S13
 0625 0000 0500 %0409 S14
 0625 0000 0625 %0410 S15
 0625 0000 0750 %0411 S16
 0625 0000 0875 %0412 S17
 0625 0000 1000 %0413 S18
 0625 0125 0000 %0414 T10
 0625 0125 0125 %0415 T11
 0625 0125 0250 %0416 T12
 0625 0125 0375 %0417 T13
 0625 0125 0500 %0418 T14
 0625 0125 0625 %0419 T15
 0625 0125 0750 %0420 T16
 0625 0125 0875 %0421 T17
 0625 0125 1000 %0422 T18
 0625 0250 0000 %0423 U10
 0625 0250 0125 %0424 U11
 0625 0250 0250 %0425 U12
 0625 0250 0375 %0426 U13
 0625 0250 0500 %0427 U14
 0625 0250 0625 %0428 U15
 0625 0250 0750 %0429 U16
 0625 0250 0875 %0430 U17
 0625 0250 1000 %0431 U18
 0625 0375 0000 %0432 V10
 0625 0375 0125 %0433 V11
 0625 0375 0250 %0434 V12
 0625 0375 0375 %0435 V13
 0625 0375 0500 %0436 V14
 0625 0375 0625 %0437 V15
 0625 0375 0750 %0438 V16
 0625 0375 0875 %0439 V17
 0625 0375 1000 %0440 V18
 0625 0500 0000 %0441 W10
 0625 0500 0125 %0442 W11
 0625 0500 0250 %0443 W12
 0625 0500 0375 %0444 W13
 0625 0500 0500 %0445 W14
 0625 0500 0625 %0446 W15
 0625 0500 0750 %0447 W16
 0625 0500 0875 %0448 W17
 0625 0500 1000 %0449 W18
 0625 0625 0000 %0450 X10
 0625 0625 0125 %0451 X11
 0625 0625 0250 %0452 X12
 0625 0625 0375 %0453 X13
 0625 0625 0500 %0454 X14
 0625 0625 0625 %0455 X15
 0625 0625 0750 %0456 X16
 0625 0625 0875 %0457 X17
 0625 0625 1000 %0458 X18
 0625 0750 0000 %0459 Y10
 0625 0750 0125 %0460 Y11
 0625 0750 0250 %0461 Y12
 0625 0750 0375 %0462 Y13
 0625 0750 0500 %0463 Y14
 0625 0750 0625 %0464 Y15
 0625 0750 0750 %0465 Y16
 0625 0750 0875 %0466 Y17
 0625 0750 1000 %0467 Y18
 0625 0875 0000 %0468 Z10
 0625 0875 0125 %0469 Z11
 0625 0875 0250 %0470 Z12
 0625 0875 0375 %0471 Z13
 0625 0875 0500 %0472 Z14
 0625 0875 0625 %0473 Z15
 0625 0875 0750 %0474 Z16
 0625 0875 0875 %0475 Z17
 0625 0875 1000 %0476 Z18
 0625 1000 0000 %0477 a10
 0625 1000 0125 %0478 a11
 0625 1000 0250 %0479 a12
 0625 1000 0375 %0480 a13
 0625 1000 0500 %0481 a14
 0625 1000 0625 %0482 a15
 0625 1000 0750 %0483 a16
 0625 1000 0875 %0484 a17
 0625 1000 1000 %0485 a18
 0750 0000 0000 %0486 A19
 0750 0000 0125 %0487 A20
 0750 0000 0250 %0488 A21
 0750 0000 0375 %0489 A22
 0750 0000 0500 %0490 A23
 0750 0000 0625 %0491 A24
 0750 0000 0750 %0492 A25
 0750 0000 0875 %0493 A26
 0750 0000 1000 %0494 A27
 0750 0125 0000 %0495 B19
 0750 0125 0125 %0496 B20
 0750 0125 0250 %0497 B21
 0750 0125 0375 %0498 B22
 0750 0125 0500 %0499 B23
 0750 0125 0625 %0500 B24
 0750 0125 0750 %0501 B25
 0750 0125 0875 %0502 B26
 0750 0125 1000 %0503 B27
 0750 0250 0000 %0504 C19
 0750 0250 0125 %0505 C20
 0750 0250 0250 %0506 C21
 0750 0250 0375 %0507 C22
 0750 0250 0500 %0508 C23
 0750 0250 0625 %0509 C24
 0750 0250 0750 %0510 C25
 0750 0250 0875 %0511 C26
 0750 0250 1000 %0512 C27
 0750 0375 0000 %0513 D19
 0750 0375 0125 %0514 D20
 0750 0375 0250 %0515 D21
 0750 0375 0375 %0516 D22
 0750 0375 0500 %0517 D23
 0750 0375 0625 %0518 D24
 0750 0375 0750 %0519 D25
 0750 0375 0875 %0520 D26
 0750 0375 1000 %0521 D27
 0750 0500 0000 %0522 E19
 0750 0500 0125 %0523 E20
 0750 0500 0250 %0524 E21
 0750 0500 0375 %0525 E22
 0750 0500 0500 %0526 E23
 0750 0500 0625 %0527 E24
 0750 0500 0750 %0528 E25
 0750 0500 0875 %0529 E26
 0750 0500 1000 %0530 E27
 0750 0625 0000 %0531 F19
 0750 0625 0125 %0532 F20
 0750 0625 0250 %0533 F21
 0750 0625 0375 %0534 F22
 0750 0625 0500 %0535 F23
 0750 0625 0625 %0536 F24
 0750 0625 0750 %0537 F25
 0750 0625 0875 %0538 F26
 0750 0625 1000 %0539 F27
 0750 0750 0000 %0540 G19
 0750 0750 0125 %0541 G20
 0750 0750 0250 %0542 G21
 0750 0750 0375 %0543 G22
 0750 0750 0500 %0544 G23
 0750 0750 0625 %0545 G24
 0750 0750 0750 %0546 G25
 0750 0750 0875 %0547 G26
 0750 0750 1000 %0548 G27
 0750 0875 0000 %0549 H19
 0750 0875 0125 %0550 H20
 0750 0875 0250 %0551 H21
 0750 0875 0375 %0552 H22
 0750 0875 0500 %0553 H23
 0750 0875 0625 %0554 H24
 0750 0875 0750 %0555 H25
 0750 0875 0875 %0556 H26
 0750 0875 1000 %0557 H27
 0750 1000 0000 %0558 I19
 0750 1000 0125 %0559 I20
 0750 1000 0250 %0560 I21
 0750 1000 0375 %0561 I22
 0750 1000 0500 %0562 I23
 0750 1000 0625 %0563 I24
 0750 1000 0750 %0564 I25
 0750 1000 0875 %0565 I26
 0750 1000 1000 %0566 I27
 0875 0000 0000 %0567 J19
 0875 0000 0125 %0568 J20
 0875 0000 0250 %0569 J21
 0875 0000 0375 %0570 J22
 0875 0000 0500 %0571 J23
 0875 0000 0625 %0572 J24
 0875 0000 0750 %0573 J25
 0875 0000 0875 %0574 J26
 0875 0000 1000 %0575 J27
 0875 0125 0000 %0576 K19
 0875 0125 0125 %0577 K20
 0875 0125 0250 %0578 K21
 0875 0125 0375 %0579 K22
 0875 0125 0500 %0580 K23
 0875 0125 0625 %0581 K24
 0875 0125 0750 %0582 K25
 0875 0125 0875 %0583 K26
 0875 0125 1000 %0584 K27
 0875 0250 0000 %0585 L19
 0875 0250 0125 %0586 L20
 0875 0250 0250 %0587 L21
 0875 0250 0375 %0588 L22
 0875 0250 0500 %0589 L23
 0875 0250 0625 %0590 L24
 0875 0250 0750 %0591 L25
 0875 0250 0875 %0592 L26
 0875 0250 1000 %0593 L27
 0875 0375 0000 %0594 M19
 0875 0375 0125 %0595 M20
 0875 0375 0250 %0596 M21
 0875 0375 0375 %0597 M22
 0875 0375 0500 %0598 M23
 0875 0375 0625 %0599 M24
 0875 0375 0750 %0600 M25
 0875 0375 0875 %0601 M26
 0875 0375 1000 %0602 M27
 0875 0500 0000 %0603 N19
 0875 0500 0125 %0604 N20
 0875 0500 0250 %0605 N21
 0875 0500 0375 %0606 N22
 0875 0500 0500 %0607 N23
 0875 0500 0625 %0608 N24
 0875 0500 0750 %0609 N25
 0875 0500 0875 %0610 N26
 0875 0500 1000 %0611 N27
 0875 0625 0000 %0612 O19
 0875 0625 0125 %0613 O20
 0875 0625 0250 %0614 O21
 0875 0625 0375 %0615 O22
 0875 0625 0500 %0616 O23
 0875 0625 0625 %0617 O24
 0875 0625 0750 %0618 O25
 0875 0625 0875 %0619 O26
 0875 0625 1000 %0620 O27
 0875 0750 0000 %0621 P19
 0875 0750 0125 %0622 P20
 0875 0750 0250 %0623 P21
 0875 0750 0375 %0624 P22
 0875 0750 0500 %0625 P23
 0875 0750 0625 %0626 P24
 0875 0750 0750 %0627 P25
 0875 0750 0875 %0628 P26
 0875 0750 1000 %0629 P27
 0875 0875 0000 %0630 Q19
 0875 0875 0125 %0631 Q20
 0875 0875 0250 %0632 Q21
 0875 0875 0375 %0633 Q22
 0875 0875 0500 %0634 Q23
 0875 0875 0625 %0635 Q24
 0875 0875 0750 %0636 Q25
 0875 0875 0875 %0637 Q26
 0875 0875 1000 %0638 Q27
 0875 1000 0000 %0639 R19
 0875 1000 0125 %0640 R20
 0875 1000 0250 %0641 R21
 0875 1000 0375 %0642 R22
 0875 1000 0500 %0643 R23
 0875 1000 0625 %0644 R24
 0875 1000 0750 %0645 R25
 0875 1000 0875 %0646 R26
 0875 1000 1000 %0647 R27
 1000 0000 0000 %0648 S19
 1000 0000 0125 %0649 S20
 1000 0000 0250 %0650 S21
 1000 0000 0375 %0651 S22
 1000 0000 0500 %0652 S23
 1000 0000 0625 %0653 S24
 1000 0000 0750 %0654 S25
 1000 0000 0875 %0655 S26
 1000 0000 1000 %0656 S27
 1000 0125 0000 %0657 T19
 1000 0125 0125 %0658 T20
 1000 0125 0250 %0659 T21
 1000 0125 0375 %0660 T22
 1000 0125 0500 %0661 T23
 1000 0125 0625 %0662 T24
 1000 0125 0750 %0663 T25
 1000 0125 0875 %0664 T26
 1000 0125 1000 %0665 T27
 1000 0250 0000 %0666 U19
 1000 0250 0125 %0667 U20
 1000 0250 0250 %0668 U21
 1000 0250 0375 %0669 U22
 1000 0250 0500 %0670 U23
 1000 0250 0625 %0671 U24
 1000 0250 0750 %0672 U25
 1000 0250 0875 %0673 U26
 1000 0250 1000 %0674 U27
 1000 0375 0000 %0675 V19
 1000 0375 0125 %0676 V20
 1000 0375 0250 %0677 V21
 1000 0375 0375 %0678 V22
 1000 0375 0500 %0679 V23
 1000 0375 0625 %0680 V24
 1000 0375 0750 %0681 V25
 1000 0375 0875 %0682 V26
 1000 0375 1000 %0683 V27
 1000 0500 0000 %0684 W19
 1000 0500 0125 %0685 W20
 1000 0500 0250 %0686 W21
 1000 0500 0375 %0687 W22
 1000 0500 0500 %0688 W23
 1000 0500 0625 %0689 W24
 1000 0500 0750 %0690 W25
 1000 0500 0875 %0691 W26
 1000 0500 1000 %0692 W27
 1000 0625 0000 %0693 X19
 1000 0625 0125 %0694 X20
 1000 0625 0250 %0695 X21
 1000 0625 0375 %0696 X22
 1000 0625 0500 %0697 X23
 1000 0625 0625 %0698 X24
 1000 0625 0750 %0699 X25
 1000 0625 0875 %0700 X26
 1000 0625 1000 %0701 X27
 1000 0750 0000 %0702 Y19
 1000 0750 0125 %0703 Y20
 1000 0750 0250 %0704 Y21
 1000 0750 0375 %0705 Y22
 1000 0750 0500 %0706 Y23
 1000 0750 0625 %0707 Y24
 1000 0750 0750 %0708 Y25
 1000 0750 0875 %0709 Y26
 1000 0750 1000 %0710 Y27
 1000 0875 0000 %0711 Z19
 1000 0875 0125 %0712 Z20
 1000 0875 0250 %0713 Z21
 1000 0875 0375 %0714 Z22
 1000 0875 0500 %0715 Z23
 1000 0875 0625 %0716 Z24
 1000 0875 0750 %0717 Z25
 1000 0875 0875 %0718 Z26
 1000 0875 1000 %0719 Z27
 1000 1000 0000 %0720 a19
 1000 1000 0125 %0721 a20
 1000 1000 0250 %0722 a21
 1000 1000 0375 %0723 a22
 1000 1000 0500 %0724 a23
 1000 1000 0625 %0725 a24
 1000 1000 0750 %0726 a25
 1000 1000 0875 %0727 a26
 1000 1000 1000 %0728 a27
 1000 1000 1000 %0729 b01
 0875 1000 1000 %0730 b02
 0750 1000 1000 %0731 b03
 0625 1000 1000 %0732 b04
 0500 1000 1000 %0733 b05
 0375 1000 1000 %0734 b06
 0250 1000 1000 %0735 b07
 0125 1000 1000 %0736 b08
 0000 1000 1000 %0737 b09
 1000 0875 0875 %0738 c01
 0875 0875 0875 %0739 c02
 0750 0875 0875 %0740 c03
 0625 0875 0875 %0741 c04
 0500 0875 0875 %0742 c05
 0375 0875 0875 %0743 c06
 0250 0875 0875 %0744 c07
 0125 0875 0875 %0745 c08
 0000 0875 0875 %0746 c09
 1000 0750 0750 %0747 d01
 0875 0750 0750 %0748 d02
 0750 0750 0750 %0749 d03
 0625 0750 0750 %0750 d04
 0500 0750 0750 %0751 d05
 0375 0750 0750 %0752 d06
 0250 0750 0750 %0753 d07
 0125 0750 0750 %0754 d08
 0000 0750 0750 %0755 d09
 1000 0625 0625 %0756 e01
 0875 0625 0625 %0757 e02
 0750 0625 0625 %0758 e03
 0625 0625 0625 %0759 e04
 0500 0625 0625 %0760 e05
 0375 0625 0625 %0761 e06
 0250 0625 0625 %0762 e07
 0125 0625 0625 %0763 e08
 0000 0625 0625 %0764 e09
 1000 0500 0500 %0765 f01
 0875 0500 0500 %0766 f02
 0750 0500 0500 %0767 f03
 0625 0500 0500 %0768 f04
 0500 0500 0500 %0769 f05
 0375 0500 0500 %0770 f06
 0250 0500 0500 %0771 f07
 0125 0500 0500 %0772 f08
 0000 0500 0500 %0773 f09
 1000 0375 0375 %0774 g01
 0875 0375 0375 %0775 g02
 0750 0375 0375 %0776 g03
 0625 0375 0375 %0777 g04
 0500 0375 0375 %0778 g05
 0375 0375 0375 %0779 g06
 0250 0375 0375 %0780 g07
 0125 0375 0375 %0781 g08
 0000 0375 0375 %0782 g09
 1000 0250 0250 %0783 h01
 0875 0250 0250 %0784 h02
 0750 0250 0250 %0785 h03
 0625 0250 0250 %0786 h04
 0500 0250 0250 %0787 h05
 0375 0250 0250 %0788 h06
 0250 0250 0250 %0789 h07
 0125 0250 0250 %0790 h08
 0000 0250 0250 %0791 h09
 1000 0125 0125 %0792 i01
 0875 0125 0125 %0793 i02
 0750 0125 0125 %0794 i03
 0625 0125 0125 %0795 i04
 0500 0125 0125 %0796 i05
 0375 0125 0125 %0797 i06
 0250 0125 0125 %0798 i07
 0125 0125 0125 %0799 i08
 0000 0125 0125 %0800 i09
 1000 0000 0000 %0801 j01
 0875 0000 0000 %0802 j02
 0750 0000 0000 %0803 j03
 0625 0000 0000 %0804 j04
 0500 0000 0000 %0805 j05
 0375 0000 0000 %0806 j06
 0250 0000 0000 %0807 j07
 0125 0000 0000 %0808 j08
 0000 0000 0000 %0809 j09
 1000 1000 1000 %0810 b10
 0875 0875 1000 %0811 b11
 0750 0750 1000 %0812 b12
 0625 0625 1000 %0813 b13
 0500 0500 1000 %0814 b14
 0375 0375 1000 %0815 b15
 0250 0250 1000 %0816 b16
 0125 0125 1000 %0817 b17
 0000 0000 1000 %0818 b18
 1000 1000 0875 %0819 c10
 0875 0875 0875 %0820 c11
 0750 0750 0875 %0821 c12
 0625 0625 0875 %0822 c13
 0500 0500 0875 %0823 c14
 0375 0375 0875 %0824 c15
 0250 0250 0875 %0825 c16
 0125 0125 0875 %0826 c17
 0000 0000 0875 %0827 c18
 1000 1000 0750 %0828 d10
 0875 0875 0750 %0829 d11
 0750 0750 0750 %0830 d12
 0625 0625 0750 %0831 d13
 0500 0500 0750 %0832 d14
 0375 0375 0750 %0833 d15
 0250 0250 0750 %0834 d16
 0125 0125 0750 %0835 d17
 0000 0000 0750 %0836 d18
 1000 1000 0625 %0837 e10
 0875 0875 0625 %0838 e11
 0750 0750 0625 %0839 e12
 0625 0625 0625 %0840 e13
 0500 0500 0625 %0841 e14
 0375 0375 0625 %0842 e15
 0250 0250 0625 %0843 e16
 0125 0125 0625 %0844 e17
 0000 0000 0625 %0845 e18
 1000 1000 0500 %0846 f10
 0875 0875 0500 %0847 f11
 0750 0750 0500 %0848 f12
 0625 0625 0500 %0849 f13
 0500 0500 0500 %0850 f14
 0375 0375 0500 %0851 f15
 0250 0250 0500 %0852 f16
 0125 0125 0500 %0853 f17
 0000 0000 0500 %0854 f18
 1000 1000 0375 %0855 g10
 0875 0875 0375 %0856 g11
 0750 0750 0375 %0857 g12
 0625 0625 0375 %0858 g13
 0500 0500 0375 %0859 g14
 0375 0375 0375 %0860 g15
 0250 0250 0375 %0861 g16
 0125 0125 0375 %0862 g17
 0000 0000 0375 %0863 g18
 1000 1000 0250 %0864 h10
 0875 0875 0250 %0865 h11
 0750 0750 0250 %0866 h12
 0625 0625 0250 %0867 h13
 0500 0500 0250 %0868 h14
 0375 0375 0250 %0869 h15
 0250 0250 0250 %0870 h16
 0125 0125 0250 %0871 h17
 0000 0000 0250 %0872 h18
 1000 1000 0125 %0873 i10
 0875 0875 0125 %0874 i11
 0750 0750 0125 %0875 i12
 0625 0625 0125 %0876 i13
 0500 0500 0125 %0877 i14
 0375 0375 0125 %0878 i15
 0250 0250 0125 %0879 i16
 0125 0125 0125 %0880 i17
 0000 0000 0125 %0881 i18
 1000 1000 0000 %0882 j10
 0875 0875 0000 %0883 j11
 0750 0750 0000 %0884 j12
 0625 0625 0000 %0885 j13
 0500 0500 0000 %0886 j14
 0375 0375 0000 %0887 j15
 0250 0250 0000 %0888 j16
 0125 0125 0000 %0889 j17
 0000 0000 0000 %0890 j18
 1000 1000 1000 %0891 b19
 1000 0875 1000 %0892 b20
 1000 0750 1000 %0893 b21
 1000 0625 1000 %0894 b22
 1000 0500 1000 %0895 b23
 1000 0375 1000 %0896 b24
 1000 0250 1000 %0897 b25
 1000 0125 1000 %0898 b26
 1000 0000 1000 %0899 b27
 0875 1000 0875 %0900 c19
 0875 0875 0875 %0901 c20
 0875 0750 0875 %0902 c21
 0875 0625 0875 %0903 c22
 0875 0500 0875 %0904 c23
 0875 0375 0875 %0905 c24
 0875 0250 0875 %0906 c25
 0875 0125 0875 %0907 c26
 0875 0000 0875 %0908 c27
 0750 1000 0750 %0909 d19
 0750 0875 0750 %0910 d20
 0750 0750 0750 %0911 d21
 0750 0625 0750 %0912 d22
 0750 0500 0750 %0913 d23
 0750 0375 0750 %0914 d24
 0750 0250 0750 %0915 d25
 0750 0125 0750 %0916 d26
 0750 0000 0750 %0917 d27
 0625 1000 0625 %0918 e19
 0625 0875 0625 %0919 e20
 0625 0750 0625 %0920 e21
 0625 0625 0625 %0921 e22
 0625 0500 0625 %0922 e23
 0625 0375 0625 %0923 e24
 0625 0250 0625 %0924 e25
 0625 0125 0625 %0925 e26
 0625 0000 0625 %0926 e27
 0500 1000 0500 %0927 f19
 0500 0875 0500 %0928 f20
 0500 0750 0500 %0929 f21
 0500 0625 0500 %0930 f22
 0500 0500 0500 %0931 f23
 0500 0375 0500 %0932 f24
 0500 0250 0500 %0933 f25
 0500 0125 0500 %0934 f26
 0500 0000 0500 %0935 f27
 0375 1000 0375 %0936 g19
 0375 0875 0375 %0937 g20
 0375 0750 0375 %0938 g21
 0375 0625 0375 %0939 g22
 0375 0500 0375 %0940 g23
 0375 0375 0375 %0941 g24
 0375 0250 0375 %0942 g25
 0375 0125 0375 %0943 g26
 0375 0000 0375 %0944 g27
 0250 1000 0250 %0945 h19
 0250 0875 0250 %0946 h20
 0250 0750 0250 %0947 h21
 0250 0625 0250 %0948 h22
 0250 0500 0250 %0949 h23
 0250 0375 0250 %0950 h24
 0250 0250 0250 %0951 h25
 0250 0125 0250 %0952 h26
 0250 0000 0250 %0953 h27
 0125 1000 0125 %0954 i19
 0125 0875 0125 %0955 i20
 0125 0750 0125 %0956 i21
 0125 0625 0125 %0957 i22
 0125 0500 0125 %0958 i23
 0125 0375 0125 %0959 i24
 0125 0250 0125 %0960 i25
 0125 0125 0125 %0961 i26
 0125 0000 0125 %0962 i27
 0000 1000 0000 %0963 j19
 0000 0875 0000 %0964 j20
 0000 0750 0000 %0965 j21
 0000 0625 0000 %0966 j22
 0000 0500 0000 %0967 j23
 0000 0375 0000 %0968 j24
 0000 0250 0000 %0969 j25
 0000 0125 0000 %0970 j26
 0000 0000 0000 %0971 j27
 0000 0000 0000 %0972 k01
 0125 0125 0125 %0973 k02
 0250 0250 0250 %0974 k03
 0375 0375 0375 %0975 k04
 0500 0500 0500 %0976 k05
 0625 0625 0625 %0977 k06
 0750 0750 0750 %0978 k07
 0875 0875 0875 %0979 k08
 1000 1000 1000 %0980 k09
 0000 0000 0000 %0981 l01
 0125 0125 0125 %0982 l02
 0250 0250 0250 %0983 l03
 0375 0375 0375 %0984 l04
 0500 0500 0500 %0985 l05
 0625 0625 0625 %0986 l06
 0750 0750 0750 %0987 l07
 0875 0875 0875 %0988 l08
 1000 1000 1000 %0989 l09
 0000 0000 0000 %0990 m01
 0125 0125 0125 %0991 m02
 0250 0250 0250 %0992 m03
 0375 0375 0375 %0993 m04
 0500 0500 0500 %0994 m05
 0625 0625 0625 %0995 m06
 0750 0750 0750 %0996 m07
 0875 0875 0875 %0997 m08
 1000 1000 1000 %0998 m09
 0000 0000 0000 %0999 n01
 0125 0125 0125 %1000 n02
 0250 0250 0250 %1001 n03
 0375 0375 0375 %1002 n04
 0500 0500 0500 %1003 n05
 0625 0625 0625 %1004 n06
 0750 0750 0750 %1005 n07
 0875 0875 0875 %1006 n08
 1000 1000 1000 %1007 n09
 0000 0000 0000 %1008 k10
 0066 0066 0066 %1009 k11
 0133 0133 0133 %1010 k12
 0200 0200 0200 %1011 k13
 0266 0266 0266 %1012 k14
 0333 0333 0333 %1013 k15
 0400 0400 0400 %1014 k16
 0466 0466 0466 %1015 k17
 0533 0533 0533 %1016 k18
 0600 0600 0600 %1017 k19
 0666 0666 0666 %1018 k20
 0734 0734 0734 %1019 k21
 0800 0800 0800 %1020 k22
 0866 0866 0866 %1021 k23
 0933 0933 0933 %1022 k24
 1000 1000 1000 %1023 k25
 0000 0000 0000 %1024 l10
 0066 0066 0066 %1025 l11
 0133 0133 0133 %1026 l12
 0200 0200 0200 %1027 l13
 0266 0266 0266 %1028 l14
 0333 0333 0333 %1029 l15
 0400 0400 0400 %1030 l16
 0466 0466 0466 %1031 l17
 0533 0533 0533 %1032 l18
 0600 0600 0600 %1033 l19
 0666 0666 0666 %1034 l20
 0734 0734 0734 %1035 l21
 0800 0800 0800 %1036 l22
 0866 0866 0866 %1037 l23
 0933 0933 0933 %1038 l24
 1000 1000 1000 %1039 l25
 0000 0000 0000 %1040 m10
 0066 0066 0066 %1041 m11
 0133 0133 0133 %1042 m12
 0200 0200 0200 %1043 m13
 0266 0266 0266 %1044 m14
 0333 0333 0333 %1045 m15
 0400 0400 0400 %1046 m16
 0466 0466 0466 %1047 m17
 0533 0533 0533 %1048 m18
 0600 0600 0600 %1049 m19
 0666 0666 0666 %1050 m20
 0734 0734 0734 %1051 m21
 0800 0800 0800 %1052 m22
 0866 0866 0866 %1053 m23
 0933 0933 0933 %1054 m24
 1000 1000 1000 %1055 m25
 0000 0000 0000 %1056 n10
 0066 0066 0066 %1057 n11
 0133 0133 0133 %1058 n12
 0200 0200 0200 %1059 n13
 0266 0266 0266 %1060 n14
 0333 0333 0333 %1061 n15
 0400 0400 0400 %1062 n16
 0466 0466 0466 %1063 n17
 0533 0533 0533 %1064 n18
 0600 0600 0600 %1065 n19
 0666 0666 0666 %1066 n20
 0734 0734 0734 %1067 n21
 0800 0800 0800 %1068 n22
 0866 0866 0866 %1069 n23
 0933 0933 0933 %1070 n24
 1000 1000 1000 %1071 n25
 0000 0000 0000 %1072 k26
 1000 1000 1000 %1073 k27
 1000 0000 0000 %1074 l26
 0000 1000 1000 %1075 l27
 1000 1000 0000 %1076 m26
 0000 0000 1000 %1077 m27
 0000 1000 0000 %1078 n26
 1000 0000 1000 %1079 n27

 0000 1000 0000 %1078 nx6
 1000 0000 1000 %1079 nx7
] def %END RGB0_F

%*****************************************************************
%} def %END PROC_SPEC_IOF.PS
%END COLDATA-SRGB_00.PS
%****************************************************
%END 'TF33'OUTLIN1X.PS Other procedures for sRGB output linearization
%****************************************************

%BEG TF33/OUTLIN1Y.PS Emty 20101101

%END TF33/OUTLIN1Y.PS Emty 20101101
                                                                         
/BeginEPSF {% def               % Prepare for EPS file
/b4_Inc_state save def          % Save state for cleanup
/dict_count countdictstack def
/op_count count 1 sub def       % Count objects on op stack
userdict begin                  % Make userdict current dict
/showpage {} def
0 setgray 0 setlinecap
1 setlinewidth 0 setlinejoin
10 setmiterlimit [] 0 setdash newpath
/languagelevel where            % If level not equal to 1 then
 {pop languagelevel where       % If level not equal to 1 then
 1 ne
 {false setstrokeadjust false setoverprint
 } if
} if
} bind def

/EndEPSF  {% def              % End for EPS file
 count op_count sub {pop} repeat
 countdictstack dict_count sub {end} repeat	% Clean up dict stack
 b4_Inc_state restore
} bind def

/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def
/languagelevel where {pop languagelevel} {1} ifelse
                     /PSL12 exch def
/dictende {counttomark 2 idiv dup dict begin {def}
           repeat pop currentdict end} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/TK {250 /Times-ISOL1 FS} bind def
/TM {300 /Times-ISOL1 FS} bind def
/TG {350 /Times-ISOL1 FS} bind def
 
/TIK {250 /TimesI-ISOL1 FS} bind def
/TIM {300 /TimesI-ISOL1 FS} bind def
/TIG {350 /TimesI-ISOL1 FS} bind def
 
/TBK {250 /TimesB-ISOL1 FS} bind def
/TBM {300 /TimesB-ISOL1 FS} bind def
/TBG {350 /TimesB-ISOL1 FS} bind def
 
/TBIK {250 /TimesBI-ISOL1 FS} bind def
/TBIM {300 /TimesBI-ISOL1 FS} bind def
/TBIG {350 /TimesBI-ISOL1 FS} bind def
 
%ANFA CMYKDEF
%CMYKDEA0 (A0=Standard-Drucker-CMYKDEF) 15.3.97
/tzac [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533
       0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000
       1.000 0.750 0.500 0.250 0.000] def
/tzam [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533
       0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000
       1.000 0.750 0.500 0.250 0.000] def
/tzay [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533
       0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000
       1.000 0.750 0.500 0.250 0.000] def
/tzan [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533
       0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000
       1.000 0.750 0.500 0.250 0.000] def
/tza0 [0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
       0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
       0.000 0.000 0.000 0.000 0.000] def
/tza1 [1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
       1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
       1.000 1.000 1.000 1.000 1.000] def
%ENDE CMYKD
 
/rec %x, y width heigth
  {/heigth exch def /width exch def
   moveto width 0 rlineto 0 heigth rlineto width neg 0 rlineto
   closepath } bind def
 
/colrecfiLAB* %x y width heigth LAB*
  { setcolor rec fill} bind def

/colrecstLAB* %x y width heigth LAB*
  { setcolor rec stroke} bind def

/colrecficmyn* %x y width heigth cmy0* or 000n*
  { setcmykcolor rec fill} bind def
 
/colrecstcmyn* %x y width heigth cmy0* or 000n*
  { setcmykcolor rec stroke} bind def

/colrecfiw* %x y width heigth w*
  { setgray rec fill} bind def

/colrecstw* %x y width heigth w*
  { setgray rec stroke} bind def

/colrecfiolv* %x y width heigth olv*
  { setrgbcolor rec fill} bind def

/colrecstolv* %x y width heigth olv*
  { setrgbcolor rec stroke} bind def
 
/tzocmy0* {0.0 1.0 1.0 0.0} bind def %Reproduction colours
/tzlcmy0* {1.0 0.0 1.0 0.0} bind def %cmyn* setcmykcolor
/tzvcmy0* {1.0 1.0 0.0 0.0} bind def
/tzccmy0* {1.0 0.0 0.0 0.0} bind def
/tzmcmy0* {0.0 1.0 0.0 0.0} bind def
/tzycmy0* {0.0 0.0 1.0 0.0} bind def

/tzoolv* {1.0 0.0 0.0} bind def %Reproduction colours
/tzlolv* {0.0 1.0 0.0} bind def %olv* setrgbcolor
/tzvolv* {0.0 0.0 1.0} bind def
/tzcolv* {0.0 1.0 1.0} bind def
/tzmolv* {1.0 0.0 1.0} bind def
/tzyolv* {1.0 1.0 0.0} bind def
 
/tzoLAB* [53.34  72.46  50.66] def %Reproduction colours
/tzlLAB* [84.93 -79.83  74.80] def %LAB* setcolor
/tzvLAB* [32.20  24.88 -37.89] def
/tzcLAB* [88.10 -44.88 -13.36] def
/tzmLAB* [59.66  90.32 -19.65] def
/tzyLAB* [93.76 -20.24  85.93] def

/tzncmy0* {1.00 1.00 1.00 0.00} bind def %grey series
/tzdcmy0* {0.75 0.75 0.75 0.00} bind def %cmy0* setcmykcolor
/tzzcmy0* {0.50 0.50 0.50 0.00} bind def
/tzhcmy0* {0.25 0.25 0.25 0.00} bind def
/tzwcmy0* {0.00 0.00 0.00 0.00} bind def
 
/tzn000n* {0.00 0.00 0.00 1.00} bind def %grey series 000n*
/tzd000n* {0.00 0.00 0.00 0.75} bind def %000n* setcmykcolor
/tzz000n* {0.00 0.00 0.00 0.50} bind def
/tzh000n* {0.00 0.00 0.00 0.25} bind def
/tzw000n* {0.00 0.00 0.00 0.00} bind def

/tznw* {0.00} bind def %grey series
/tzdw* {0.25} bind def %w* setgray
/tzzw* {0.50} bind def
/tzhw* {0.75} bind def
/tzww* {1.00} bind def

/tznolv* {0.00 0.00 0.00} bind def %grey series
/tzdolv* {0.25 0.25 0.25} bind def %olv* setrgbcolor
/tzzolv* {0.50 0.50 0.50} bind def
/tzholv* {0.75 0.75 0.75} bind def
/tzwolv* {1.00 1.00 1.00} bind def

/tznLAB* [18.01 0.00 0.00] def %grey series
/tzdLAB* [37.36 0.00 0.00] def %LAB* setcolor
/tzzLAB* [56.71 0.00 0.00] def
/tzhLAB* [76.06 0.00 0.00] def
/tzwLAB* [95.41 0.00 0.00] def

/tfn {0 setgray} bind def
/tfw {1 setgray} bind def
 
/A4quer {598 0 translate 90 rotate} def
/cvishow {cvi 6 string cvs show} def
/cvsshow1 {10 mul cvi 0.1 mul 7 string cvs show} def
/cvsshow2 {100 mul cvi 0.01 mul 7 string cvs show} def
/cvsshow3 {1000 mul cvi 0.001 mul 7 string cvs show} def

%%EndProlog

%***********************************************************
%%BeginPageSetup
/#copies 1 def
%A4querF
1.0 1.0 scale
/pgsave save def
%%EndPageSetup

/SS$ [(G) (E) (S) (F) (I) (J) (M)] def
/SC$ [(N) (F) (S) (D) (T) (E) (C)] def
/SX$ [(0) (1) (2) (3) (4) (5) (6) (7) (8) (9) (A) (B) (C) (D) (E) (F)] def
/SY$ [(0) (1) (2) (3) (4) (5) (6) (7) (8) (9) (A) (B) (C) (D) (E) (F)] def
%       0           1            2            3            4            5
%       6           7            8
/EX$ [(A.TXT /.PS) (B.BMP /.PS) (G.GIF /.PS) (H.HTM /.PS) (I.HTM /.PS)
      (J.JPE /.PS) (P.PDF /.PS) (T.TIF /.PS)] def
/EY$ [(A.DAT) (B.DAT) (G.DAT) (H.DAT) (I.DAT) (J.DAT)
      (P.DAT) (T.DAT)] def

%*******************************************************************
/lanind1f 03 def /lanind2f 03 def /laninddf 01 def
/colorm1f 00 def /colorm2f 00 def /colormdf 01 def
/deintp1f 00 def /deintp2f 00 def /deintpdf 01 def
/xcolor1f 00 def /xcolor2f 00 def /xcolordf 01 def
/xchart1f 00 def /xchart2f 00 def /xchartdf 01 def
/xchart3f 01 def /xchart4f 00 def /xchart5f 00 def
/pchart1f 03 def /pchart2f 03 def /pchartdf 01 def %=3 for sRGB, Lr=0
/colsep1f 00 def /colsep2f 00 def /colsepdf 01 def
/pmetam1f 00 def /pmetam2f 00 def /pmetamdf 01 def
%/lanindf lanind1f def %
/lanindf lanind1f def %lanind1f laninddf lanind2f {/lanindf exch def

%/colormf colorm1f def %
/colormf colorm1f def %colorm1f colormdf colorm2f {/colormf exch def

%/deintpf deintp1f def %
/deintpf deintp1f def %deintp1f deintpdf deintp2f {/deintpf exch def

%/xcolorf xcolor1f def %
/xcolorf xcolor1f def %xcolor1f xcolordf xcolor2f {/xcolorf exch def

%/xchartf xchart1f def %
/xchartf xchart1f def %xchart1f xchartdf xchart2f {/xchartf exch def

%/pchartf pchart1f def %
/pchartf pchart1f def %/pchartf pchart1f def %pchart1f pchartdf pchart2f {/pchartf exch def

%/colsepf colsep1f def %
/colsepf colsep1f def %colsep1f colsepdf colsep2f {/colsepf exch def

/lanind lanindf def
/colorm colormf def
/deintp deintpf def
/xcolor xcolorf def
/xchart xchartf def   /xchartm xchart2f xchart1f sub 1 add def
/xchart3 xchart3f def /xchart4 xchart4f def
/pchart pchartf def
/colsep colsepf def

%/pmetamf pmetam1f def %
/pmetamf pmetam1f def %pmetam1f pmetamdf pmetam2f {/pmetamf exch def

/pmetam pmetamf def

%*************************************************************
/setgray {sfgray} bind def
/setrgbcolor {sfrgbcolor} bind def
/setcmykcolor {sfcmykcolor} bind def

%72 90 translate

%0.01 MM dup scale
%0 0 moveto 24600 0 rlineto 0 17220 rlineto
%          -24600 0 rlineto closepath stroke
%000 -240 moveto
%240 /Times-ISOL1 FS
%lanindf cvishow (-) show
%colormf cvishow
%deintpf cvishow
%xcolorf cvishow
%xchartf cvishow
%pchartf cvishow
%colsepf cvishow (-F) show pmetamf cvishow

%grestore
gsave

/GSS$ SS$ lanind get def
/GSC$ SC$ colorm get def
/GSX$ SX$ xcolor xcolor 16 idiv 16 mul sub get def
/GSY$ SY$ xchart xchart 16 idiv 16 mul sub get def
/GEX$ EX$ 6 get def
/GEY$ EY$ 6 get def

%01
%02
%03
%04
%05
%06
%07
%08
%09
%10
%11
%12
%13
%14
%15
%16
%17
%18

%gsave
BeginEPSF
 28 MM 197 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 10

%line 329

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
 28 MM 152 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 11

%line 339
%!PS-Adobe-3.0 EPSF-3.0 TF330-1N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark01 where {pop} {userdict /pdfmark01 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark01
[ /View [ /FitB ]
/DOCVIEW pdfmark01
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF330-1) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

00 1 00 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
 86 MM 152 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 12

%line 349
%!PS-Adobe-3.0 EPSF-3.0 TF330-2N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark02 where {pop} {userdict /pdfmark02 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark02
[ /View [ /FitB ]
/DOCVIEW pdfmark02
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF330-2) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

01 1 01 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
 28 MM 108 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 13

%line 359
%!PS-Adobe-3.0 EPSF-3.0 TF330-3N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark03 where {pop} {userdict /pdfmark03 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark03
[ /View [ /FitB ]
/DOCVIEW pdfmark03
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF330-3) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

02 1 02 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
 86 MM 108 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 14

%line 369
%!PS-Adobe-3.0 EPSF-3.0 TF330-4N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark04 where {pop} {userdict /pdfmark04 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark04
[ /View [ /FitB ]
/DOCVIEW pdfmark04
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF330-4) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

03 1 03 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
 28 MM 064 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 15

%line 379
%!PS-Adobe-3.0 EPSF-3.0 TF330-5N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark05 where {pop} {userdict /pdfmark05 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark05
[ /View [ /FitB ]
/DOCVIEW pdfmark05
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF330-5) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

04 1 04 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
 86 MM 064 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 16

%line 389
%!PS-Adobe-3.0 EPSF-3.0 TF330-6N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark06 where {pop} {userdict /pdfmark06 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark06
[ /View [ /FitB ]
/DOCVIEW pdfmark06
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF330-6) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

05 1 05 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave
BeginEPSF
 /xc1 16 def /yc1 12 def /xt 1 def xchart 1 eq {/xt 1 def} if
 28 MM xt 0 eq {16 MM sub} if 20 MM xt 0 eq {12 MM sub} if translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 17

%line 399
%!PS-Adobe-3.0 EPSF-3.0 TF330-7N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark07 where {pop} {userdict /pdfmark07 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark07
[ /View [ /FitB ]
/DOCVIEW pdfmark07
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF330-7) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

06 1 06 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF  86 MM 020 MM translate 12 /Times-ISOL1 FS -9 MM -7 MM  moveto
( ) show
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 18

%line 409
%!PS-Adobe-3.0 EPSF-3.0 TF330-8N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark08 where {pop} {userdict /pdfmark08 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark08
[ /View [ /FitB ]
/DOCVIEW pdfmark08
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF330-8) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

07 1 07 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
161 MM 197 MM translate
  10 /Times-ISOL1 FS  1 1 scale  -77 -91 translate
%%BeginDocument: Bild 12

%line 419

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
161 MM 152 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 21

%line 429
%!PS-Adobe-3.0 EPSF-3.0 TF331-1N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark11 where {pop} {userdict /pdfmark11 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark11
[ /View [ /FitB ]
/DOCVIEW pdfmark11
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF331-1) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

08 1 08 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
219 MM 152 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 22

%line 439
%!PS-Adobe-3.0 EPSF-3.0 TF331-2N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark12 where {pop} {userdict /pdfmark12 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark12
[ /View [ /FitB ]
/DOCVIEW pdfmark12
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF331-2) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

09 1 09 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
161 MM 108 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 23

%line 449
%!PS-Adobe-3.0 EPSF-3.0 TF331-3N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark13 where {pop} {userdict /pdfmark13 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark13
[ /View [ /FitB ]
/DOCVIEW pdfmark13
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF331-3) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

10 1 10 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
219 MM 108 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 24

%line 459
%!PS-Adobe-3.0 EPSF-3.0 TF331-4N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark14 where {pop} {userdict /pdfmark14 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark14
[ /View [ /FitB ]
/DOCVIEW pdfmark14
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF331-4) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

11 1 11 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
161 MM 064 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 25

%line 469
%!PS-Adobe-3.0 EPSF-3.0 TF331-5N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark15 where {pop} {userdict /pdfmark15 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark15
[ /View [ /FitB ]
/DOCVIEW pdfmark15
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF331-5) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

12 1 12 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
219 MM 064 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 26

%line 479
%!PS-Adobe-3.0 EPSF-3.0 TF331-6N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark16 where {pop} {userdict /pdfmark16 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark16
[ /View [ /FitB ]
/DOCVIEW pdfmark16
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF331-6) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

13 1 13 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
161 MM 020 MM translate
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 27

%line 489
%!PS-Adobe-3.0 EPSF-3.0 TF331-7N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark17 where {pop} {userdict /pdfmark17 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark17
[ /View [ /FitB ]
/DOCVIEW pdfmark17
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF331-7) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

14 1 14 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
219 MM 020 MM translate 12 /Times-ISOL1 FS -9 MM -7 MM  moveto ( ) show
  10 /Times-ISOL1 FS  53 MM 1 MM moveto ( ) show 1 1 scale  -77 -91 translate
%%BeginDocument: Bild 28

%line 499
%!PS-Adobe-3.0 EPSF-3.0 TF331-8N
%%BoundingBox: 70 83 226 206

%START PDFDE011.EPS
/pdfmark18 where {pop} {userdict /pdfmark18 /cleartomark load put} ifelse
/languagelevel where {pop languagelevel} {1} ifelse
2 lt { userdict (<<) cvn ([) cvn load put
       userdict (>>) cvn (]) cvn load put} if
[ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/SE68/)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik)
  /Keywords (image reproduction, colour devices, colour vision)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2013090112000)
  /ModDate (D:2013090112000)
/DOCINFO pdfmark18
[ /View [ /FitB ]
/DOCVIEW pdfmark18
%END  PDFDE011

%SETCMYK_OLV.PS
/setcmyk_olvcolor %transfer cmyk to olv
{/ncolor exch def /ycolor exch def
 /mcolor exch def /ccolor exch def
 ncolor 0 eq {1 ccolor sub
              1 mcolor sub
              1 ycolor sub setrgbcolor
             }
             {ccolor 0 eq 
              mcolor 0 eq and
              ycolor 0 eq and {%only black n
                               1 ncolor sub 
                               dup
                               dup
                               setrgbcolor
                              }
                              {%cmy and black n
                               1 ccolor sub 1 ncolor sub mul
                               1 mcolor sub 1 ncolor sub mul
                               1 ycolor sub 1 ncolor sub mul
                               setrgbcolor
                              } ifelse
             } ifelse
} bind def

% !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I
 
/Times-Roman findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/Times-ISOL1 exch definefont pop
 
/Times-Italic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesI-ISOL1 exch definefont pop
 
/Times-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesB-ISOL1 exch definefont pop
 
/Times-BoldItalic findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
 
/TimesBI-ISOL1 exch definefont pop
 
/FS {findfont exch scalefont setfont} bind def
/MM {72 25.4 div mul} def /str {8 string } bind def

/TS {160 /Times-ISOL1 FS} bind def 
/TK {200 /Times-ISOL1 FS} bind def
/TM {250 /Times-ISOL1 FS} bind def
/TG {300 /Times-ISOL1 FS} bind def

/TIS {160 /TimesI-ISOL1 FS} bind def
/TIK {200 /TimesI-ISOL1 FS} bind def
/TIM {250 /TimesI-ISOL1 FS} bind def
/TIG {300 /TimesI-ISOL1 FS} bind def

/TBS {160 /TimesB-ISOL1 FS} bind def
/TBK {200 /TimesB-ISOL1 FS} bind def
/TBM {250 /TimesB-ISOL1 FS} bind def
/TBG {300 /TimesB-ISOL1 FS} bind def

/TBIS {160 /TimesBI-ISOL1 FS} bind def
/TBIK {200 /TimesBI-ISOL1 FS} bind def
/TBIM {250 /TimesBI-ISOL1 FS} bind def
/TBIG {300 /TimesBI-ISOL1 FS} bind def

/SS {160 10 sub /Symbol FS} bind def
/SK {200 10 sub /Symbol FS} bind def
/SM {250 12 sub /Symbol FS} bind def
/SG {300 14 sub /Symbol FS} bind def

/nshowG {TG  show} bind def
/kshowG {TIG show} bind def
/bshowG {TBG show} bind def
/bishowG {TBIG show} bind def
/ishowG {TM 0 -60 rmoveto show 0 60 rmoveto} bind def
/ebshowG {TBM 0 80 rmoveto show 0 -80 rmoveto} bind def
/sshowG {SG show} bind def

/nshowM {TM  show} bind def
/kshowM {TIM show} bind def
/bshowM {TBM show} bind def
/bishowM {TBIM show} bind def
/ishowM {TK 0 -40 rmoveto show 0 40 rmoveto} bind def
/ebshowM {TBK 0 70 rmoveto show 0 -70 rmoveto} bind def
/sshowM {SM show} bind def

/nshowK {TK  show} bind def
/kshowK {TIK show} bind def
/bshowK {TBK show} bind def
/bishowK {TBIK show} bind def
/ishowK {TS 0 -30 rmoveto show 0 30 rmoveto} bind def
/ebshowK {TBS 0 60 rmoveto show 0 -60 rmoveto} bind def
/sshowK {SS show} bind def

/tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzl {1.0 0.0 1.0 0.0} bind def
/tzv {1.0 1.0 0.0 0.0} bind def
/tzc {1.0 0.0 0.0 0.0} bind def
/tzm {0.0 1.0 0.0 0.0} bind def
/tzy {0.0 0.0 1.0 0.0} bind def

/tzn {0.0 0.0 0.0 1.00} bind def %Graureihe
/tzd {0.0 0.0 0.0 0.75} bind def
/tzz {0.0 0.0 0.0 0.50} bind def
/tzh {0.0 0.0 0.0 0.25} bind def
/tzw {0.0 0.0 0.0 0.00} bind def

/tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben
/tzg {1.0 0.0 0.5 0.0} bind def
/tzb {1.0 0.5 0.0 0.0} bind def
/tzj {0.0 0.0 1.0 0.0} bind def

/tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut
/tzgz {1.0 0.0 0.5 0.5} bind def
/tzbz {1.0 0.5 0.0 0.5} bind def
/tzjz {0.0 0.0 1.0 0.5} bind def

/tfo {tzo setcmykcolor} bind def
/tfl {tzl setcmykcolor} bind def
/tfv {tzv setcmykcolor} bind def
/tfc {tzc setcmykcolor} bind def
/tfm {tzm setcmykcolor} bind def
/tfy {tzy setcmykcolor} bind def

/tfn {tzn setcmykcolor} bind def
/tfd {tzd setcmykcolor} bind def
/tfz {tzz setcmykcolor} bind def
/tfh {tzh setcmykcolor} bind def
/tfw {tzw setcmykcolor} bind def

/tfr {tzr setcmykcolor} bind def
/tfg {tzg setcmykcolor} bind def
/tfb {tzb setcmykcolor} bind def
/tfj {tzj setcmykcolor} bind def

/tfrz {tzrz setcmykcolor} bind def
/tfgz {tzgz setcmykcolor} bind def
/tfbz {tzbz setcmykcolor} bind def
/tfjz {tzjz setcmykcolor} bind def
 
/A4quer {598 0 tl 90 rotate} def
/setcmyknew {setcmykcolor} def
/outSM {sshowM} def
/outSK {sshowK} def
/outxshowf {setcmykcolor show} def

%for output test only
/tspace {dup abs 1.0 le {(   ) show} if
         dup dup -1.0 le exch -10 gt and {(  ) show} if
         dup dup 1.0 gt exch  10 lt and {(   ) show} if
         dup dup 1.0 gt exch  10 ge and {( ) show} if
            } bind def

/trushow {tspace 0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def

/troshow {0.005 add 100 mul truncate 100 div
          10 string cvs show} bind def
           
/trushow4 {0.00005 add 10000 mul truncate 10000 div
           10 string cvs show} bind def

/YIXL 88 array def
/YIXM 88 array def
/YIXS 88 array def

/YEXP0 88 array def
/YEXP1 88 array def
/YEXP2 88 array def
/YEXP3 88 array def
/YEXP4 88 array def
/YEXP5 88 array def
/YEXP6 88 array def
/YEXP7 88 array def

/Xi 88 array def
/Yi 88 array def

/KURV$1 8 array def %8 curves, Sensitivity
/KURV$2 8 array def %8 curves, Saturation
/KURV$1 [(U") (L") (M") (S") (N") (J") (B") (J")] def
/KURV$2 [(U") (L") (M") (S") (N") (J") (B") (J")] def

/KURVA 8 array def %8 actual curves
/KURVA1 8 array def %8 curves, Sensitivity, one or two colours
/KURVA2 8 array def %8 curves, Saturation, one or two colours
/KURVA1 [2 1 1 2 2 0 0 0 0] def
/KURVA2 [2 1 1 2 2 0 0 0 0] def

/IDAI1 8 array def %8 curves, Sensitivity, actual setdash data, first curve
/IDAI2 8 array def %8 curves, Saturation,  actual setdash data, second curve
/IDAI00 8 array def %8 curves, Sensitivity, setdash data, first curve
/IDAI01 8 array def %8 curves, Saturation,  setdash data, first curve
/IDAI10 8 array def %8 curves, Sensitivity, setdash data, second curve
/IDAI11 8 array def %8 curves, Saturation,  setdash data, second curve
/IDAI00 [100 000 000 000 100 300 000 300] def
/IDAI01 [100 000 000 000 000 000 000 000] def
/IDAI10 [100 000 000 000 100 100 000 100] def
/IDAI11 [100 000 000 000 000 000 100 000] def

/FKUC1 8 array def %Actual colour C, Sensitivity
/FKUC2 8 array def %Actual colour C, Saturation
/FKUM1 8 array def %Actual colour M, Sensitivity
/FKUM2 8 array def %Actual colour M, Saturation
/FKUY1 8 array def %Actual colour Y, Sensitivity
/FKUY2 8 array def %Actual colour Y, Saturation
/FKUN1 8 array def %Actual colour N, Sensitivity
/FKUN2 8 array def %Actual colour N, Saturation

/tf445 {1.0 0.0 1.0 setrgbcolor} bind def %B50R
/tf457 {0.5 0.0 1.0 setrgbcolor} bind def %B25R
/tf470 {0.0 0.0 1.0 setrgbcolor} bind def %B00R
/tf482 {0.0 0.5 1.0 setrgbcolor} bind def %G75B
/tf495 {0.0 1.0 1.0 setrgbcolor} bind def %G50B
/tf507 {0.0 1.0 0.5 setrgbcolor} bind def %G25B
/tf520 {0.0 1.0 0.0 setrgbcolor} bind def %G00B
/tf532 {0.3 1.0 0.0 setrgbcolor} bind def %Y75G
/tf545 {0.5 1.0 0.0 setrgbcolor} bind def %Y50G
/tf557 {0.7 1.0 0.0 setrgbcolor} bind def %Y25G
/tf570 {1.0 1.0 0.0 setrgbcolor} bind def %Y00G
/tf582 {1.0 0.7 0.0 setrgbcolor} bind def %R75Y
/tf595 {1.0 0.5 0.0 setrgbcolor} bind def %R50Y
/tf607 {1.0 0.3 0.0 setrgbcolor} bind def %R25Y
/tf620 {1.0 0.0 0.0 setrgbcolor} bind def %R00Y

/FKUCI00 8 array def %Cyan, Colour 1, Sensitivity
/FKUCI01 8 array def %Cyan, Colour 2 on top, Sensitivity
/FKUCI10 8 array def %Cyan, Colour 1, Saturation
/FKUCI11 8 array def %Cyan, Colour 2 on top, Saturation

/FKUMI00 8 array def %Magenta, Colour 1, Sensitivity
/FKUMI01 8 array def %Magenta, Colour 2 on top, Sensitivity
/FKUMI10 8 array def %Magenta, Colour 1, Saturation
/FKUMI11 8 array def %Magenta, Colour 2 on top, Saturation

/FKUYI00 8 array def %Yellow, Colour 1, Sensitivity
/FKUYI01 8 array def %Yellow, Colour 2 on top, Sensitivity
/FKUYI10 8 array def %Yellow, Colour 1, Saturation
/FKUYI11 8 array def %Yellow, Colour 2 on top, Saturation

/FKUNI00 8 array def %Black, Colour 1, Sensitivity
/FKUNI01 8 array def %Black, Colour 2 on top, Sensitivity
/FKUNI10 8 array def %Black, Colour 1, Saturation
/FKUNI11 8 array def %Black, Colour 2 on top, Saturation

/XRGAI 8 array def
/XRG$I 8 array def
/XBJAI 8 array def
/XBJ$I 8 array def
%/XRGAI [ 570   557   520   495   570   570   570   570 ] def
%/XRG$I [(570) (557) (520) (495) (570) (570) (570) (570)] def
/XRGAI [ 520   557   520   495   570   570   570   570 ] def
/XRG$I [(520) (557) (520) (495) (570) (570) (570) (570)] def
/XBJAI [ 495   495   495   495   520   505   470   445 ] def
/XBJ$I [(495) (495) (495) (495) (520) (505) (470) (445)] def

/MULX 0600 def
/MULY 1200 0.8 mul def
/JPPM 4 def
/CY 0.35 def
/CX  50 def

%%EndProlog
gsave

/lanind 0 def
/lantex [(G) (E) (S) (F) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def
 
/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 3 def /lanind2 3 def} ifelse
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def}
               {/colorm1 0 def} ifelse
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def}
               {/deintp1 0 def} ifelse
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def}
               {/xcolor1 0 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 def /xchart2 1 def /xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 0 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def}
               {/pchart1 3 def} ifelse
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def}
               {/colsep1 0 def} ifelse
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def}
               {/pmetam1 0 def} ifelse

%either defaul values for xchart=0 or values for xchart=1
/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES where {pop %/IMES IMES def
            }
            {/IMES 0 def} ifelse

5 /Times-ISOL1 FS
200 85 moveto
    ( TF331-8) show
xchart 0 ge {(N) show} if

%(change of LMS in volour vision) showea
%(\304nderung von LMS beim Farbensehen) showde

72 90 translate

15 1 15 {/xchart exch def %xchart=0,15
gsave

xchart  0 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if %ILT=0 NO threshold
xchart  1 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  2 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  3 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  4 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  5 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if
xchart  6 eq {/ILK 0 def /ILS 0 def /ILT 0 def/ILU 1 def} if
xchart  7 eq {/ILK 0 def /ILS 1 def /ILT 0 def/ILU 1 def} if

xchart  8 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if %ILT=1 threshold
xchart  9 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 10 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 11 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 12 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 13 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if
xchart 14 eq {/ILK 0 def /ILS 0 def /ILT 1 def/ILU 1 def} if
xchart 15 eq {/ILK 0 def /ILS 1 def /ILT 1 def/ILU 1 def} if

/IKOM 3 def %N curve, not used
/ILN  0 def %R&M
/JPPM 3 def %three curves
ILT 0 eq {/ta 0.0 def   /taT (0,0) def   /ltaT (-) def   } if
ILT 1 eq {/ta 0.025 def /taT (0,025) def /lTaT (-1,6) def} if

0.01 MM 0.01 MM scale
 
30 setlinewidth
[ ] 0 setdash

0.0 0.0 0.0 0.5 setcmykcolor
0 0  moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto
closepath fill

/W 9 array def

/Xa {(a) ishowM} def
/Xo {(o) ishowM} def
/XU  {tf557 (U) bishowM} def
ILN 0 eq {%Y,R,G,570,545, N=NAMES
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf595 (O)  bishowM} def
%          /X2 {tf545 (M)  bishowM} def
%          /X3 {tf595 (O)   ishowK} def
%          /X4 {tf545 (M)   ishowK} def
%          /X5 {tf595 (595) ishowK} def
%          /X6 {tf545 (545) ishowK} def
          
%          /X0 {tf570 (Y)  bishowM} def
%          /X1 {tf620 (R)  bishowM} def
%          /X2 {tf520 (G)  bishowM} def
%          /X3 {tf620 (R)   ishowK} def
%          /X4 {tf520 (G)   ishowK} def
%          /X5 {tf620 (620) ishowK} def
%          /X6 {tf520 (520) ishowK} def

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
          /X0 {tf570 (L)  bishowM} def
          /X1 {tf620 (R)  bishowM} def
          /X2 {tf520 (G)  bishowM} def
          /X3 {tf620 (R)   ishowK} def
          /X4 {tf520 (G)   ishowK} def
          /X5 {tf620 (620) ishowK} def
          /X6 {tf520 (520) ishowK} def
          /X7 {tf520 (520)} def
          /X8 {tf570 (570)} def
          /X9 {tf620 (620)} def
          /W [570 620 520 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         570 620 520 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 1.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                            } if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
          /X0 {tf545 (M)  bishowM} def
          /X1 {tf595 (O)  bishowM} def
          /X2 {tf495 (C)  bishowM} def
          /X3 {tf595 (O)   ishowK} def
          /X4 {tf495 (C)   ishowK} def
          /X5 {tf595 (595) ishowK} def
          /X6 {tf495 (495) ishowK} def
          /X7 {tf495 (495)} def
          /X8 {tf545 (545)} def
          /X9 {tf595 (595)} def
          /W [545 595 495 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         545 595 495 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [0.5 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [0.5 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
          /X0 {tf520 (G)  bishowM} def
          /X1 {tf570 (L)  bishowM} def
          /X2 {tf470 (B)  bishowM} def
          /X3 {tf570 (L)   ishowK} def
          /X4 {tf470 (B)   ishowK} def
          /X5 {tf570 (570) ishowK} def
          /X6 {tf470 (470) ishowK} def
          /X7 {tf470 (470)} def
          /X8 {tf520 (520)} def
          /X9 {tf570 (570)} def
          /W [520 570 470 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         520 570 470 557
/FKUCI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
          /X0 {tf495 (C)  bishowM} def
          /X1 {tf545 (M)  bishowM} def
          /X2 {tf445 (S)  bishowM} def
          /X3 {tf545 (M)   ishowK} def
          /X4 {tf445 (S)   ishowK} def
          /X5 {tf545 (545) ishowK} def
          /X6 {tf445 (445) ishowK} def
          /X7 {tf445 (445)} def
          /X8 {tf495 (495)} def
          /X9 {tf545 (545)} def
          /W [495 545 445 557 575 550 525 505 475] def
%/tf557 {0.3 0.0 1.0 0.0 setcmykcolor} bind def %Y25G
%         495 545 445 557
/FKUCI00 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI01 [1.0 0.0 0.0 0.3 1.0 1.0 0.0 1.0] def
/FKUCI10 [0.0 0.5 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUCI11 [1.0 0.0 0.0 0.3 0.0 0.0 0.0 0.0] def

/FKUMI00 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def
/FKUMI10 [0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0] def
/FKUMI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def

/FKUYI00 [0.0 1.0 0.0 0.0 0.0 1.0 0.0 1.0] def
/FKUYI01 [0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUYI10 [0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0] def
/FKUYI11 [0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0] def

/FKUNI00 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def
/FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
/FKUNI10 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def
/FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def
                           } if %xchart=6,7,14,15
          
          } if %Y,R,G,570,545, N=NAMES
          
ILN 1 eq {%V,L,S,570,445
          /X0 {tfn (V)  bishowM} def
          /X1 {tfo (L)  bishowM} def
          /X2 {tfv (S)  bishowM} def
          /X3 {tfo (L)   ishowK} def
          /X4 {tfv (S)   ishowK} def
          /X5 {tfy (570) ishowK} def
          /X6 {tfv (445) ishowK} def} if
ILN 2 eq {%W,S,M,450,538
          /X0 {tfn (W)  bishowM} def
          /X1 {tfv (S)  bishowM} def
          /X2 {tfl (M)  bishowM} def
          /X3 {tfv (S)   ishowK} def
          /X4 {tfl (M)   ishowK} def
          /X5 {tfv (445) ishowK} def
          /X6 {tfl (545) ishowK} def} if

/AF1 0.5 def
/AF2 0.5 def
/XRGA {XRGAI ILK get} def
/XBJA {XBJAI ILK get} def
/XRG$ {XRG$I ILK get} def
/XBJ$ {XBJ$I ILK get} def

/W0 {W 0 get} def
/W1 {W 1 get ILK 1 eq { 10 add} if
             ILK 2 eq { 20 add} if  ILK 3 eq { 30 add} if} def
/W2 {W 2 get ILK 1 eq {-10 add} if
             ILK 2 eq {-20 add} if  ILK 3 eq {-30 add} if} def
/W3 {W 3 get} def
/W4 {W 4 get} def
/W5 {W 5 get} def
/W6 {W 6 get} def
/W7 {W 7 get} def
/W8 {W 8 get} def

%function value for curve U normalized to 1 at 9 wavelengths
%XRGA, XJBA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YU1 {XRGA W0 sub CX div dup mul CY mul neg} def
/YU2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YUL {W1 W0 sub CX div dup mul CY mul neg} def
/YUM {W2 W0 sub CX div dup mul CY mul neg} def
/YUT {W3 W0 sub CX div dup mul CY mul neg} def
/YUJ {W4 W0 sub CX div dup mul CY mul neg} def
/YUU {W5 W0 sub CX div dup mul CY mul neg} def
/YUM {W6 W0 sub CX div dup mul CY mul neg} def
/YUG {W7 W0 sub CX div dup mul CY mul neg} def
/YUB {W8 W0 sub CX div dup mul CY mul neg} def

%function value for curve P normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YP1 {XRGA W1 sub CX div dup mul CY mul neg} def
/YP2 {XBJA W0 sub CX div dup mul CY mul neg} def
/YPP {W1 W1 sub CX div dup mul CY mul neg} def
/YPD {W2 W1 sub CX div dup mul CY mul neg} def
/YPT {W3 W1 sub CX div dup mul CY mul neg} def
/YPJ {W4 W1 sub CX div dup mul CY mul neg} def
/YPU {W5 W1 sub CX div dup mul CY mul neg} def
/YPM {W6 W1 sub CX div dup mul CY mul neg} def
/YPG {W7 W1 sub CX div dup mul CY mul neg} def
/YPB {W8 W1 sub CX div dup mul CY mul neg} def

%function value for curve D normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YD1 {XRGA W2 sub CX div dup mul CY mul neg} def
/YD2 {XBJA W2 sub CX div dup mul CY mul neg} def
/YDP {W1 W2 sub CX div dup mul CY mul neg} def
/YDD {W2 W2 sub CX div dup mul CY mul neg} def
/YDT {W3 W2 sub CX div dup mul CY mul neg} def
/YDJ {W4 W2 sub CX div dup mul CY mul neg} def
/YDU {W5 W2 sub CX div dup mul CY mul neg} def
/YDM {W6 W2 sub CX div dup mul CY mul neg} def
/YDG {W7 W2 sub CX div dup mul CY mul neg} def
/YDB {W8 W2 sub CX div dup mul CY mul neg} def

%function value for curve T normalized to 1 at 9 wavelengths
%XRGA, XBJA, 570(L), 545(M), 445(S), 570(Y), 557(U), 520(G), 495(N), 470(B)
/YT1 {XRGA W3 sub CX div dup mul CY mul neg} def
/YT2 {XBJA W3 sub CX div dup mul CY mul neg} def
/YTP {W1 W3 sub CX div dup mul CY mul neg} def
/YTD {W2 W3 sub CX div dup mul CY mul neg} def
/YTT {W3 W3 sub CX div dup mul CY mul neg} def
/YTJ {W4 W3 sub CX div dup mul CY mul neg} def
/YTU {W5 W3 sub CX div dup mul CY mul neg} def
/YTM {W6 W3 sub CX div dup mul CY mul neg} def
/YTG {W7 W3 sub CX div dup mul CY mul neg} def
/YTB {W8 W3 sub CX div dup mul CY mul neg} def

0 1 76 {/i exch def %i=0,1,76
        /XEXI i 5 mul 380 add def
        YIXL i XEXI W1 sub CX div dup mul CY mul neg put
        YIXM i XEXI W2 sub CX div dup mul CY mul neg put
        YIXS i XEXI W3 sub CX div dup mul CY mul neg put
%        ILT 1 eq {%ILT=1
%                  /EYIXL 10 YIXL i get exec exp ta add def
%                  YIXL i EYIXL log put
%                  /EYIXM 10 YIXM i get exec exp ta add def
%                  YIXM i EYIXM log put
%                  /EYIXS 10 YIXS i get exec exp ta add def
%                  YIXS i EYIXS log put
%                 } if %ILT=1
} for %i=0,1,76

%ILT 1 eq {%ILT=1
%          /EYU1 10 YU1 exp ta add def
%          /YU1 EYU1 log def
%          /EYP1 10 YP1 exp ta add def
%          /YP1 EYP1 log def
%          /EYD1 10 YD1 exp ta add def
%          /YD1 EYD1 log def
%          /EYT1 10 YT1 exp ta add def
%          /YT1 EYT1 log def
%         } if %ILT=1

/YM5X5 YIXM 19 get YU1 YD1 sub add def
/YS5X5 YIXS 19 get def

0 1 76 {/i exch def %i=0,1,76
/YEXL {YIXL i get} def
/YEXM {YIXM i get} def
/YEXS {YIXS i get} def

        ILT 1 eq {%ILT=1
                  /EYEXL 10 YEXL exp ta add def
                  /YEXL EYEXL log def
                  YIXL i YEXL put
                  /EYEXM 10 YEXM exp ta add def
                  /YEXM EYEXM log def
                  YIXM i YEXM put
                  /EYEXS 10 YEXS exp ta add def
                  /YEXS EYEXS log def
                  YIXS i YEXS put
                 } if %ILT=1

/YEXU {YEXL AF1 mul YEXM AF2 mul add} def
/YEXN {YEXS YEXU add 0.5 mul} def
/YEXJ {YEXN YEXU YEXN sub 0.3333 mul add} def
/YEXB {YEXN YEXS YEXN sub 0.3333 mul add} def

0 1 JPPM {/j exch def %j=0,JPPM
          IKOM 0 eq {/YEXA YEXN def} if
          IKOM 1 eq {/YEXA YEXJ def} if
          IKOM 2 eq {/YEXA YEXB def} if
          IKOM 3 eq {/YEXA YEXN def} if
          ILS 0 eq {%ILS=0
                    j 0 eq {YEXP0 i YEXU put} if
                    j 1 eq {YEXP1 i YEXL put} if
                    j 2 eq {YEXP2 i YEXM put} if
                    j 3 eq {YEXP3 i YEXS put} if
                    j 4 eq {YEXP4 i YEXA put} if
                   } if %ILS=0
          ILS 1 ge {%ILS>=1
                    j 0 eq {YEXP0 i YEXU YEXS sub put} if
                    j 1 eq {YEXP1 i YEXL YEXS sub put} if
                    j 2 eq {YEXP2 i YEXM YEXS sub put} if
                    j 3 eq {YEXP3 i 0.0 put} if
                    j 4 eq {YEXP4 i YEXN YEXA sub put} if
                   } if %ILS>=1

         } for %j=0,JPPM

} for %i=0,1,76

xchart 0 eq xchart 1 eq or xchart 8 eq or xchart 9 eq or {%xchart=0,1,8,9
2050 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
3250 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=0,1,8,9

xchart 2 eq xchart 3 eq or xchart 10 eq or xchart 11 eq or {%xchart=2,3,10,11
1750 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2350 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2950 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=2,3,10,11

xchart 4 eq xchart 5 eq or xchart 12 eq or xchart 13 eq or {%xchart=4,5,12,13
1450 2600 ILS 1 eq {100 sub} if moveto X7 bshowM
2050 2600 ILS 1 eq {100 sub} if moveto X8 bshowM
2650 2600 ILS 1 eq {100 sub} if moveto X9 bshowM
} if %xchart=4,5,12,13

xchart 6 eq xchart 7 eq or xchart 14 eq or xchart 15 eq or {%xchart=6,7,14,15
1150 2600 ILS 1 eq {100 sub} if  moveto X7 bshowM
1750 2600 ILS 1 eq {100 sub} if  moveto X8 bshowM
2350 2600 ILS 1 eq {100 sub} if  moveto X9 bshowM
} if %xchart=6,7,14,15

4700 050 moveto tfw
(l) outSM 30 0 rmoveto (/nm) bshowM
ILU 1 eq {4900 550 moveto (u) bishowM} if

050 3800 moveto
%ILS 1 le {%ILS=0,1
%          tfw TBM (logarithm. ) showde (logarithmic ) showea
%          X0 Xa tfw (, ) bshowM XU Xo TBM} if %ILS=0,1
ILS 0 eq {%ILS=0
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          X0 Xa tfw (, ) bshowM XU Xo TBM
          tfw TBM (\255Daten) showde (\255data) showea
         } if %ILS=0
ILS 1 eq {%ILS=1
          tfw TBM (logarithm. ) showde (logarithmic ) showea
          XU Xo TBM
          tfw TBM (\255S\344ttigung) showde (\255saturation) showea
         } if %ILS=1
ILS 2 eq {%ILS=2
          tfw TBM (Empfindlichkeitsverh\344ltnis) showde
          (Cone sensitivity ratio) showea
         } if %ILS=2

050 3500 moveto X0 Xa
tfw ( = \050 ) bshowM X1 Xo
tfw 0 50 rmoveto 120 /Symbol FS ( \267 ) show 0 -50 rmoveto 
X2 Xo tfw ( \051) bshowM 20 100 rmoveto (0,5) bshowK 0 -100 rmoveto
 
010 3200 moveto
tfw (log) bshowM 50 0 rmoveto X0 Xa
tfw ( = \050) bshowM 30 0 rmoveto (log) bshowM 50 0 rmoveto
X1 Xo 30 0 rmoveto tfw (+ log) bshowM 50 0 rmoveto X2 Xo
tfw (\051/2) bshowM

010 2900 moveto
ILS 0 eq {%ILS=0
          (log [ ) bshowM X0 Xa tfw (, ) bshowM X1 Xo
          tfw (, ) bshowM X2 Xo
          tfw (, ) bshowM XU Xo ( ]) bshowM} if %ILS=0
ILS 1 eq {(log [) bshowM X1 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM XU Xo tfw (, ) bshowM X0 Xa
          tfw (/) bshowM XU Xo tfw ( ]) bshowM} if %ILS=1
ILS 2 eq {(0,5 log [) bshowM X1 Xo
          tfw (/) bshowM X2 Xo tfw (, ) bshowM X2 Xo
          tfw (/) bshowM X1 Xo ( ]) bshowM} if %ILS=2

%3350 3800 moveto tfw (u) bishowM 0 -60 rmoveto (l) outSK 0 60 rmoveto 
%( = \050) bshowM (l) outSM ( - 555\051 / 50) bshowM

2900 3800 moveto tfw (log) bshowM 30 0 rmoveto XU Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {tf557 (557)} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X7} if
ILK 1 eq {(580)} if
ILK 2 eq {(590)} if
ILK 3 eq {(600)} if 
ishowK 
(]) TBM tfw show (2) ebshowM

2900 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xo 50 0 rmoveto
tfw (= -0,35[) bshowM (u) bishowM
0 -60 rmoveto (l) outSK 0 60 rmoveto (-) bshowM (u) bishowM
ILK 0 eq {X9} if
ILK 1 eq {(530)} if
ILK 2 eq {(520)} if
ILK 3 eq {(510)} if
ishowK
(]) TBM tfw show (2) ebshowM

2900 2900 moveto tfw (Adaptation: ) bshowM
tfw (l) outSM X3 X4
tfw (=) bshowM
X8 bshowM

%3100 3500 moveto tfw (log) bshowM 30 0 rmoveto X1 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X1 Xo tfw 
%YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow

%3100 3200 moveto tfw (log) bshowM 30 0 rmoveto X2 Xa 50 0 rmoveto
%tfw (= log) bshowM 50 0 rmoveto X2 Xo tfw
%YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow

tfw
550 350 translate
50 setlinewidth
 0 0 moveto  340 12 mul 0 rlineto  stroke
 0 0 moveto 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul rlineto  stroke
 0 ILS 0 eq {2700} {3000} ifelse 0.8 mul moveto 340 12 mul 0 rlineto stroke
 
TBG
/tx [ (400) (500) (600) (700)] def
/tye [(-2) () (-1) () (  0)] def
/tys [(-1) (  ) (  0) (  ) (  1) ] def
/tu [ (    -3,1) (-1,1) (  0,9)  (  2,9)] def
 
%!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten

ILU 1 eq {%ILU=1 
          0 1 3 {/i exch def %i=0,3
                 /ixt {-180 i 1200 mul add} def
                 /ixl {240 i 1200 mul add} def
                 ixt 150 moveto tu i get exec show
                } for %i=0,3
% 550 nm; u=0.0
          /ixt -180 1.55 1200 mul add def
          /ixl  240 1.55 1200 mul add def
          %0.25 0.0 1.0 0.0 setcmykcolor
          tf557
          ixt 150 moveto (   0,0) show
          /ixt  20  1860 add def
          ixt -320 moveto (555) show
          ixl 75 moveto 0 -150 rlineto stroke
         } if %ILU=1
 
%!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten
tfw
0 1 3 {/i exch def
       /ixt { 20 i 1200 mul add} def
       /ixl {240 i 1200 mul add} def
        ixt -320 moveto tx i get exec show
        ixl 75 moveto 0 -150 rlineto stroke } for
 
%!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten
 
0 1 4 {/i exch def
       /iyt {100 i 0480 mul add} def
       /iyl {240 i 0480 mul add} def
        -500 iyt moveto ILS 0 eq {tye} {tys} ifelse i get exec show
         -75 iyl moveto 150 0 rlineto stroke } for

/yta 0 def
%ILS 0 ne ILT 1 eq and {/yta 650 def} if
ILS 1 eq {/yta 250 def} if
/xts 250 3 1200 mul add def
/yts 700 2 0480 mul add yta add def
xts yts 250 add moveto TBK (Threshold) showea (Schwelle) showde
xts yts  25 add moveto (S) bshowK (a) ishowK (=) bshowK taT bshowK
ILT 1 eq {xts yts 180 sub moveto (log S) bshowK (a) ishowK (=) bshowM lTaT bshowK} if

50 setlinewidth

%Cero point at 550 nm
/X0 {550 380 sub 12 mul} def
X0 0 translate

0 setlinewidth % fuer clip
0.0 0.0 0.0 0.5 setcmykcolor
ILU 1 eq {/Y0C 450 def /Y1C 2000 def} {/Y0C 050 def /Y1C 2400 def} ifelse
X0 neg 100 add Y0C moveto 4650 0 rlineto 0 Y1C rlineto
                         -4650 0 rlineto 0 Y1C neg rlineto clip stroke

0 1 JPPM {/j exch def %j=0,JPPM
          ILS 0 eq {/IORY 2700 0.8 mul def} {/IORY 1500 0.8 mul def} ifelse

0 1 76 {/i exch def %i=0,1,76
        Xi i i 5 mul 380 add put
        j 0 eq {Yi i YEXP0 i get put} if
        j 1 eq {Yi i YEXP1 i get put} if
        j 2 eq {Yi i YEXP2 i get put} if
        j 3 eq {Yi i YEXP3 i get put} if
        j 4 eq {Yi i YEXP4 i get put} if
        j 5 eq {Yi i YEXP5 i get put} if
        j 6 eq {Yi i YEXP6 i get put} if
        j 7 eq {Yi i YEXP7 i get put} if
       } for %i=0,1,76

j 3 le {%j<=3
ILS 0 eq {%ILS=0
          FKUC1 j FKUCI00 j get put
          FKUM1 j FKUMI00 j get put
          FKUY1 j FKUYI00 j get put
          FKUN1 j FKUNI00 j get put
          FKUC2 j FKUCI01 j get put
          FKUM2 j FKUMI01 j get put
          FKUY2 j FKUYI01 j get put
          FKUN2 j FKUNI01 j get put
          IDAI1 j IDAI00 j get put
          IDAI2 j IDAI01 j get put
          KURVA j KURVA1 j get put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 j FKUCI10 j get put
          FKUM1 j FKUMI10 j get put
          FKUY1 j FKUYI10 j get put
          FKUN1 j FKUNI10 j get put
          FKUC2 j FKUCI11 j get put
          FKUM2 j FKUMI11 j get put
          FKUY2 j FKUYI11 j get put
          FKUN2 j FKUNI11 j get put
          IDAI1 j IDAI10 j get put
          IDAI2 j IDAI11 j get put
          KURVA j KURVA2 j get put
         } if %ILS>=1
} if %j<=3

j 4 eq {%j=4
ILS 0 eq {%ILS=0
          FKUC1 4 FKUCI00 4 IKOM add get  put
          FKUM1 4 FKUMI00 4 IKOM add get  put
          FKUY1 4 FKUYI00 4 IKOM add get  put
          FKUN1 4 FKUNI00 4 IKOM add get  put
          FKUC2 4 FKUCI01 4 IKOM add get  put
          FKUM2 4 FKUMI01 4 IKOM add get  put
          FKUY2 4 FKUYI01 4 IKOM add get  put
          FKUN2 4 FKUNI01 4 IKOM add get  put
          IDAI1 4 IDAI00 4 IKOM add get  put
          IDAI2 4 IDAI01 4 IKOM add get  put
          KURVA 4 KURVA1 4 IKOM add get  put
         } if %ILS=0
ILS 1 ge {%ILS>=1
          FKUC1 4 FKUCI10 4 IKOM add get  put
          FKUM1 4 FKUMI10 4 IKOM add get  put
          FKUY1 4 FKUYI10 4 IKOM add get  put
          FKUN1 4 FKUNI10 4 IKOM add get  put
          FKUC2 4 FKUCI11 4 IKOM add get  put
          FKUM2 4 FKUMI11 4 IKOM add get  put
          FKUY2 4 FKUYI11 4 IKOM add get  put
          FKUN2 4 FKUNI11 4 IKOM add get  put
          IDAI1 4 IDAI10 4 IKOM add get  put
          IDAI2 4 IDAI11 4 IKOM add get  put
          KURVA 4 KURVA2 4 IKOM add get  put
         } if %ILS>=1
} if %j=4

/KURVM {KURVA j get} def

KURVM 0 gt {%if KURVM>0 then KURVE

1 1 KURVM {/KURV exch def %KURV=1,KURVM

/IDA1 {IDAI1 j get cvi} def
/IDA2 {IDAI2 j get cvi} def 

KURV 1 eq {[ ] 0 setdash} if
KURV 2 eq j 0 eq and {%KURV=2
           /IDA1 {IDAI1 j get} def
           /IDA2 {IDAI2 j get} def 
          [ IDA1 IDA2] 0 setdash
          } if %KURV=2

%/TKk {100 /Times-ISOL1 FS} bind def
%TKk
%          100 ILS 1600 mul add 2000 200 j mul sub moveto
%          KURVM trushow4 (  ) show
%          j trushow4 (  ) show
%          IDA1 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC1 j get trushow4 (  ) show
%          FKUM1 j get trushow4 (  ) show
%          FKUY1 j get trushow4 (  ) show
%          FKUN1 j get trushow4 (  ) show
%          IDA2 trushow4 (  ) show
%          KURVA j get trushow4 (  ) show
%          FKUC2 j get trushow4 (  ) show
%          FKUM2 j get trushow4 (  ) show
%          FKUY2 j get trushow4 (  ) show
%          FKUN2 j get trushow4 (  ) show

KURV 1 eq {%KURV=1
           /FKUC {FKUC1 j get} def
           /FKUM {FKUM1 j get} def
           /FKUY {FKUY1 j get} def
           /FKUN {FKUN1 j get} def
          } if %KURV=1
KURV 2 eq {%KURV=2
           /FKUC {FKUC2 j get} def
           /FKUM {FKUM2 j get} def
           /FKUY {FKUY2 j get} def
           /FKUN {FKUN2 j get} def
          } if %KURV=2

%FKUC FKUM FKUY FKUN setcmykcolor
1 FKUC sub 1 FKUM sub 1 FKUY sub setrgbcolor
FKUN 1 eq {0 0 0 setrgbcolor} if
          
50 setlinewidth
/xst {Xi 0       get 550 sub CX div MULX mul} bind def
/yst {IORY Yi 0 get MULY mul add} bind def
xst yst moveto
1 3 71 {/i exch def  %i=0,75 ab 380nm bis 710nm
        %i 0 eq {
                 %100 ILS 300 mul add 1900 200 KURV mul sub moveto (Xi=) show
                 %Xi i get trushow4 ( Yi=) show
                 %Yi i get trushow4
        %         } if
        /xst {Xi i       get 550 sub CX div MULX mul} bind def
        /yst {IORY Yi i get MULY mul add} bind def
        /x20 {Xi i 1 add get 550 sub CX div MULX mul} bind def
        /y20 {IORY Yi i 1 add get MULY mul add} bind def
        /x21 {Xi i 2 add get 550 sub CX div MULX mul} bind def
        /y21 {IORY Yi i 2 add get MULY mul add} bind def
        /x22 {Xi i 3 add get 550 sub CX div MULX mul} bind def
        /y22 {IORY Yi i 3 add get MULY mul add} bind def
        x21 y21 x21 y21 x22 y22 curveto
        } for %i=0,75 ab 380nm bis 710nm
stroke

} for %KURV=1,KURVM

} if %if KURVM>0 then KURVE

} for %j=0,JPPM

X0 neg 0 translate

-550 -400 translate

showpage
grestore

} for %xchart=0,15

%%Trailor

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
219 MM 080 MM add 008 MM translate %80 MM Breite von TestStreifen
  10 /Times-ISOL1 FS  53 MM 1 MM moveto () show 1 1 scale -77 21 MM sub -91 translate
%%BeginDocument: Bild 29 Teststreifen Ueberlaenge

%line 509

%%EndDocument
EndEPSF grestore gsave

BeginEPSF
-0.0 MM -0.0 MM translate %xy-Verschiebung Rechteckrahmen nach innen%

%%BeginDocument: Bild 30 %Rechteckrahmen

%line 519
%!PS-Adobe-3.0 EPSF-3.0 Frame arround with Internet text DG02 20070101
%%BoundingBox: 0 0 598 845

%%EndProlog
gsave

/lanind 1 def
/lantex [(G) (E) (S) (N) (I) (J) (M)] def
/showde {0 lanind eq {show} {pop} ifelse} bind def
/showen {1 lanind eq {show} {pop} ifelse} bind def
/showes {2 lanind eq {show} {pop} ifelse} bind def
/showfr {3 lanind eq {show} {pop} ifelse} bind def
/showit {4 lanind eq {show} {pop} ifelse} bind def
/showjp {5 lanind eq {show} {pop} ifelse} bind def
/showea {1 lanind le {show} {pop} ifelse} bind def

/lanind1 01 def /lanind2 01 def /lanindd 01 def
/colorm1 00 def /colorm2 00 def /colormd 01 def
/deintp1 00 def /deintp2 00 def /deintpd 01 def
/xcolor1 03 def /xcolor2 03 def /xcolord 01 def
/xchart1 00 def /xchart2 00 def /xchartd 01 def
/pchart1 00 def /pchart2 00 def /pchartd 01 def
/colsep1 00 def /colsep2 00 def /colsepd 01 def
/pmetam1 00 def /pmetam2 00 def /pmetamd 01 def

/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def} if
/colormf where {pop /colorm1 colormf def /colorm2 colormf def
                    /colormd colormdf def} if
/deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def
                    /deintpd deintpdf def} if
/xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def
                    /xcolord xcolordf def} if
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchartm 1 def} ifelse
/xchart3f where {pop /xchart3 xchart3f def}
                {/xchart3 1 def} ifelse
/xchart4f where {pop /xchart4 xchart4f def}
                {/xchart4 0 def} ifelse
/pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def
                    /pchartd pchartdf def} if
/colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def
                    /colsepd colsepdf def} if
/pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def
                    /pmetamd pmetamdf def} if

/lanind lanind1 def %
/colorm colorm1 def %
/deintp deintp1 def %
/xcolor xcolor1 def %
/xchart xchart1 def %
/pchart pchart1 def %
/colsep colsep1 def %
/pmetam pmetam1 def %

/GSS$ where {pop /LSS$ GSS$ def}
            {/LSS$ (1) def} ifelse
/GSC$ where {pop /LSC$ GSC$ def}
            {/LSC$ (N) def} ifelse
/GSX$ where {pop /LSX$ GSX$ def}
            {/LSX$ (0) def} ifelse
/GSY$ where {pop /LSY$ GSY$ def}
            {/LSY$ (0) def} ifelse
/GEX$ where {pop /LEX$ GEX$ def}
            {/LEX$ (P.PS./PDF) def} ifelse
/GEY$ where {pop /LEY$ GEY$ def}
            {/LEY$ (P.DAT) def} ifelse
/IMES 0 def
/i*ptrsc 0 def

gsave

0 setgray

1.0 1.0  scale

0.0 MM 0.0 MM translate

0.15 MM setlinewidth

/x 20 array def
/y 20 array def
/d 20 array def

/x [000 296 296 000  002 294 294 002  005 291 291 005 %speziell
    006 290 290 006  008 288 288 008 ] def
/y [000 000 210 210  002 002 208 208  005 005 205 205 %speziell
    006 006 204 204  008 008 202 202 ] def
/d [060 017 -60 -17  058 015 -58 -15  056 013 -56 -13
    054 011 -54 -11  052 009 -52 -09 ] def

colorm 0 eq deintp 0 eq and {/Txx (d) def  /Fxx (d) def} if %colorm=0, deintp=0
colorm 0 eq deintp 1 eq and {/Txx (e) def  /Fxx (e) def} if %colorm=0, deintp=1
colorm 1 eq deintp 0 eq and {/Txx (dd) def /Fxx (d) def} if %colorm=1, deintp=0
colorm 1 eq deintp 1 eq and {/Txx (de) def /Fxx (e) def} if %colorm=1, deintp=1
xchart 0 eq {/Txx (-) def /Fxx (-) def} if

xchart 1 ge {%xchart>=1

/i0 12 def
/i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def
2.5 MM /Times-ISOL1 FS
x i0 get MM 40 MM add y i0 get MM 1 MM sub moveto
lanind cvishow (-) show
colorm cvishow
deintp cvishow
xcolor cvishow
xchart cvishow
pchart cvishow
colsep cvishow (-F) show pmetam cvishow

} if %xchart>=1

/xt 1 def
xchart 1 eq {/xt 1 def} if

xt 0 eq {%xt=0,1 ifelse

/i0 12 def
/i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def
2.5 MM /Times-ISOL1 FS
x i0 get MM 110 MM add y i0 get MM 1 MM sub moveto
(http://130.149.60.45/~farbmetrik/TF33/TF33) show
colorm cvishow deintp cvishow
colorm 0 eq {(N) show} {(F) show} ifelse (P.PDF  & ) show
(http://130.149.60.45/~farbmetrik/TF33/TF33) show
colorm cvishow deintp cvishow
colorm 0 eq {(N) show} {(F) show} ifelse (P.TXT  & ) show
(http://130.149.60.45/~farbmetrik/TF33/TF33.HTM) show

} %xt=0

{ %xt=1
/xlu 017 MM def /ylu 017 MM def
/xro 279 MM def /yro 193 MM def
/xlo 017 MM def /ylo 193 MM def
/xru 279 MM def /yru 017 MM def

xlu 8 MM sub ylu moveto  16 MM 0 rlineto stroke
xlu ylu 8 MM sub moveto 0  16 MM rlineto stroke
xro 8 MM add yro moveto -16 MM 0 rlineto stroke
xro yro 8 MM add moveto 0 -16 MM rlineto stroke

xru 8 MM sub yru moveto  16 MM 0 rlineto stroke
xru yru 8 MM sub moveto 0  16 MM rlineto stroke
xlo 8 MM add ylo moveto -16 MM 0 rlineto stroke
xlo ylo 8 MM add moveto 0 -16 MM rlineto stroke

1 2 7 {/i exch def %Zentrierkreise
xlu ylu i MM 0 360 arc stroke
xro yro i MM 0 360 arc stroke
xru yru i MM 0 360 arc stroke
xlo ylo i MM 0 360 arc stroke
      } for %i

12 4 16 {/i exch def /i0 i def %i=0,16
%0 4 16 {/i exch def /i0 i def %i=0,16
        /i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def

i 16 eq {0.30 MM setlinewidth} {0.15 MM setlinewidth} ifelse

0 setgray
x i0 get MM y i0 get MM moveto x i1 get MM y i1 get MM lineto
x i2 get MM y i2 get MM lineto x i3 get MM y i3 get MM lineto
x i0 get MM y i0 get MM lineto stroke

i 16 eq {6 /Times-ISOL1 FS
         /x00 67 def /xdif 32 def /y0o 202.3 def /y0u 6.3 def
         /x0l 6.1 def /x0r 288 def /y00 22 def /ydif 32 def
         x00 xdif 0 mul add MM y0o MM moveto (V) show
         x00 xdif 0 mul add MM y0u MM moveto (C) show
         x00 xdif 1 mul add MM y0o MM moveto (L) show
         x00 xdif 1 mul add MM y0u MM moveto (M) show
         x00 xdif 2 mul add MM y0o MM moveto (O) show
         x00 xdif 2 mul add MM y0u MM moveto (Y) show
         x00 xdif 3 mul add MM y0o MM moveto (Y) show
         x00 xdif 3 mul add MM y0u MM moveto (O) show
         x00 xdif 4 mul add MM y0o MM moveto (M) show
         x00 xdif 4 mul add MM y0u MM moveto (L) show
         x00 xdif 5 mul add MM y0o MM moveto (C) show
         x00 xdif 5 mul add MM y0u MM moveto (V) show

         x0l MM y00 ydif 0 mul add MM moveto (V) show
         x0r MM y00 ydif 0 mul add MM moveto (C) show
         x0l MM y00 ydif 1 mul add MM moveto (L) show
         x0r MM y00 ydif 1 mul add MM moveto (M) show
         x0l MM y00 ydif 2 mul add MM moveto (O) show
         x0r MM y00 ydif 2 mul add MM moveto (Y) show
         x0l MM y00 ydif 3 mul add MM moveto (Y) show
         x0r MM y00 ydif 3 mul add MM moveto (O) show
         x0l MM y00 ydif 4 mul add MM moveto (M) show
         x0r MM y00 ydif 4 mul add MM moveto (L) show
         x0l MM y00 ydif 5 mul add MM moveto (C) show
         x0r MM y00 ydif 5 mul add MM moveto (V) show
        } if

       } for %i=0,16

0 1 10 {/j0 exch def /j1 j0 1 add def %j0

         j0 0 eq {tzccmy0* setcmykcolor} if
         j0 1 eq {0 setgray} if
         j0 2 eq {tzmcmy0* setcmykcolor} if
         j0 3 eq {0 setgray} if
         j0 4 eq {tzycmy0* setcmykcolor} if
         j0 5 eq {0 setgray} if
         j0 6 eq {tzocmy0* setcmykcolor} if
         j0 7 eq {0 setgray} if
         j0 8 eq {tzlcmy0* setcmykcolor} if
         j0 9 eq {0 setgray} if
         j0 10 eq {tzvcmy0* setcmykcolor} if

12 4 16 {/i exch def /i0 i def %i=0,16
%0 4 16 {/i exch def /i0 i def %i=0,16
        /i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def

i 16 eq {0.30 MM setlinewidth} {0.15 MM setlinewidth} ifelse

x i0 get d i0 get add 16 j0 mul add MM y i0 get MM moveto
x i0 get d i0 get add 16 j1 mul add MM y i0 get MM lineto stroke

x i1 get MM y i1 get d i1 get add 16 j0 mul add MM moveto
x i1 get MM y i1 get d i1 get add 16 j1 mul add MM lineto stroke

x i2 get d i2 get add 16 j0 mul sub MM y i2 get MM moveto
x i2 get d i2 get add 16 j1 mul sub MM y i2 get MM lineto stroke

x i3 get MM y i3 get d i3 get add 16 j0 mul sub MM moveto
x i3 get MM y i3 get d i3 get add 16 j1 mul sub MM lineto stroke

       } for %i=0,16

       } for %j0

0.15 MM setlinewidth
/s 7 MM def /s1 8 MM def /s5 36 MM def
16 1 20 {/j exch def /j0 j 16 sub def %j=16,20
         /ix0 xlu  8 MM add j0 7 MM mul add def /iy0 ylu 8 MM sub def

0 1 3 {/ij exch def %ij=0,3

 ij 0 eq {/ix0 xlu  8 MM add j0 7 MM mul add def /iy0 ylu 8 MM sub def} if
 ij 1 eq {/ix0 xru 43 MM sub j0 7 MM mul add def /iy0 yru 8 MM sub def} if
 ij 2 eq {/ix0 xlo  8 MM add j0 7 MM mul add def /iy0 ylo 1 MM add def} if
 ij 3 eq {/ix0 xro 43 MM sub j0 7 MM mul add def /iy0 yro 1 MM add def} if

i*ptrsc 0 eq i*ptrsc 2 eq or {%i*ptrsc=0,2 cmy0* setcmykcolor
              j 16 eq {tzan j get dup dup 0 setcmykcolor
                       ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if
              tzan j get dup dup 0 setcmykcolor
              ix0 iy0 s s  rec fill
             } if %i*ptrsc=0,2

i*ptrsc 1 eq i*ptrsc 3 eq or {%i*ptrsc=1,3 www* setrgbcolor
              j 16 eq {1 tzan j get 1 sub dup dup setrgbcolor %N
                       ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if
              1 tzan j get sub dup dup setrgbcolor %N
              ix0 iy0 s s  rec fill
             } if %i*ptrsc=1,3

i*ptrsc 4 eq i*ptrsc 5 eq or {%i*ptrsc=4,5
  [/CIEBasedABC <<    %Farbraum und Grenzen fuer D65
  /RangeABC [0 100 -128 127 -128 127]
  /DecodeABC [{16 add 116 div} bind {500 div} bind {200 div} bind]
  /MatrixABC [1 1 1 1 0 0 0 0 -1]
  /DecodeLMN
    [{dup 6 29 div ge {dup dup mul mul}
     {4 29 div sub 108 841 div mul} ifelse 0.9505 mul} bind
     {dup 6 29 div ge {dup dup mul mul}
     {4 29 div sub 108 841 div mul} ifelse} bind
     {dup 6 29 div ge {dup dup mul mul}
     {4 29 div sub 108 841 div mul} ifelse 1.0890 mul} bind]
    /WhitePoint  [0.9505 1 1.089]                %CIEXYZ fuer D65
 >>] setcolorspace

 j 16 eq {tznLAB* 0 get tzwLAB* 0 get tznLAB* 0 get sub 0.25 j0 mul mul add
          tznLAB* 1 get tzwLAB* 1 get tznLAB* 1 get sub 0.25 j0 mul mul add
          tznLAB* 2 get tzwLAB* 2 get tznLAB* 2 get sub 0.25 j0 mul mul add
          setcolor %N
          ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if
          tznLAB* 0 get tzwLAB* 0 get tznLAB* 0 get sub 0.25 j0 mul mul add
          tznLAB* 1 get tzwLAB* 1 get tznLAB* 1 get sub 0.25 j0 mul mul add
          tznLAB* 2 get tzwLAB* 2 get tznLAB* 2 get sub 0.25 j0 mul mul add
          setcolor %N
          ix0 iy0 s s  rec fill
             } if %i*ptrsc=4,5

i*ptrsc 6 eq {%i*ptrsc=6 000n* setcmykcolor
              j 16 eq {0 0 0 tzan j get setcmykcolor
                       ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if
              0 0 0 tzan j get setcmykcolor
              ix0 iy0 s s  rec fill
             } if %i*ptrsc=6

i*ptrsc 7 eq {%i*ptrsc=7 w* setgray
              j 16 eq {1 tzan j get sub setgray
                       ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if
              1 tzan j get sub setgray
              ix0 iy0 s s  rec fill
             } if %i*ptrsc=7

      } for %ij=0,3

        } for %j=16,20

0 setgray
018 MM 008.2 MM moveto 6 /Times-Roman FS (-8) show
018 MM 006.2 MM moveto 6 /Times-Roman FS (-6) show

276 MM 008.2 MM moveto 6 /Times-Roman FS (-8) show
276 MM 006.2 MM moveto 6 /Times-Roman FS (-6) show

018 MM 202.2 MM moveto 6 /Times-Roman FS (-8) show
018 MM 204.2 MM moveto 6 /Times-Roman FS (-6) show

276 MM 202.2 MM moveto 6 /Times-Roman FS (-8) show
276 MM 204.2 MM moveto 6 /Times-Roman FS (-6) show

0 setgray
12 /Times-ISOL1 FS
61 MM 13.5 MM  moveto
(TUB\255Pr\374fvorlage TF33; ) showde                           %0TF33X-Y 0000#
(TUB\255test chart TF33; ) showen                               %1TF33X-Y 0000#
(gr\341fico TUB\255TF33; ) showes                               %2TF33X-Y 0000#
(TUB\255test graphique TF33; ) showfr                           %3TF33X-Y 0000#
(grafico TUB\255TF33; ) showit                                  %4TF33X-Y 0000#
(TUB\255test chart TF33; ) showjp                               %5TF33X-Y 0000#

(Farbensehen und farbmetrik ) showde                            %0TF33X-Y 0100#
(colour vision and colorimetry ) showea                         %1TF33X-Y 0100#

61 MM 09.5 MM  moveto
12 /Times-ISOL1 FS
xchart4 0 eq {%xchart4=0
12 /Times-ISOL1 FS
(Zapfen\255Empfindlichkeit und \255S\344ttigung ) showde        %0TF33X-Y 0200#
(cone sensitivity and saturation ) showea                       %1TF33X-Y 0200#
(f\374r Abstand )showde
(for distance ) showea
12 /Symbol FS
(Dl) show
12 /Times-ISOL1 FS
(=100) show
             } if %xchart4=0

xchart4 1 eq {
12 /Times-ISOL1 FS
(Zapfen\255Empfindlichkeit und \255S\344ttigung ) showde        %0TF33X-Y 0300#
(cone sensitivity and saturation ) showea                       %1TF33X-Y 0300#
(f\374r Abstand )showde
(for distance ) showea
12 /Symbol FS
(Dl) show
12 /Times-ISOL1 FS
(=50) show
             } if %xchart4=1

xchart4 2 eq {
12 /Times-ISOL1 FS
12 /Times-ISOL1 FS
(Zapfen\255Empfindlichkeit und \255S\344ttigung ) showde        %0TF33X-Y 0400#
(cone sensitivity and saturation ) showea                       %1TF33X-Y 0400#
(f\374r Abstand )showde
(for distance ) showea
12 /Symbol FS
(Dl) show
12 /Times-ISOL1 FS
(=25) show
             } if %xchart4=2

xchart 1 ge {%xchart>=1
12 /Times-ISOL1 FS
(, 3D=) show colorm cvishow
(, de=) show deintp cvishow

12 /TimesI-ISOL1 FS
xchart5f 0 eq {(, sRGB) show} if
xchart5f 1 eq {(, cmyk) show} if
xchart5f 2 eq {(, cmy0)  show} if
xchart5f 3 eq {(, cmyk) show} if
colorm 1 eq {(*) show} if
} if %xchart>=1

12 /Times-ISOL1 FS
165 MM 13 MM moveto
(Eingabe: ) showde                                              %0TF33X-Y 0500#
(input: ) showen                                                %1TF33X-Y 0500#
(entrada: ) showes                                              %2TF33X-Y 0500#
(entr\351e: ) showfr                                            %3TF33X-Y 0500#
(immettere: ) showit                                            %4TF33X-Y 0500#
(input: ) showjp                                                %5TF33X-Y 0500#
12 /TimesI-ISOL1 FS
(w/rgb/cmyk -> ) show
xchart xchart3 lt {(w/rgb/cmyk) show
                  } if
xchart xchart3 ge {%xchart>=xchart3
                   (rgb) show
                  } if %xchart>=xchart3

10 /Times-ISOL1 FS
0 -2 rmoveto Txx show 0 2 rmoveto
12 /Times-ISOL1 FS

12 /Times-ISOL1 FS
165 MM 9 MM moveto
(Ausgabe: ) showde                                              %0TF33X-Y 0600#
(output: ) showen                                               %1TF33X-Y 0600#
(salida: ) showes                                               %2TF33X-Y 0600#
(sortie: ) showfr                                               %3TF33X-Y 0600#
(uscita: ) showit                                               %4TF33X-Y 0600#
(output: ) showjp                                               %5TF33X-Y 0600#

%colorm=0,1!
12 /Times-ISOL1 FS
xchart 0 eq {%xchart=0,#0
             12 /Times-ISOL1 FS
(keine \304nderung) showde                                      %0TF33X-Y 0700#
(no change) showen                                              %1TF33X-Y 0700#
(ning\372n cambio) showes                                       %2TF33X-Y 0700#
(aucun changement) showfr                                       %3TF33X-Y 0700#
(nessun cambiamento) showit                                     %4TF33X-Y 0700#
(no change compared) showjp                                     %5TF33X-Y 0700#
            }%xchart=0

            {%xchart#0
             12 /Times-ISOL1 FS
             colorm 0 eq {%colorm=0
(Transfer nach ) showde                                         %0TF33X-Y 0800#
(transfer to ) showen                                           %1TF33X-Y 0800#
(transfiera a ) showes                                          %2TF33X-Y 0800#
(transf\351rer \340 ) showfr                                    %3TF33X-Y 0800#
(trasferire a ) showit                                          %4TF33X-Y 0800#
(transfer to ) showjp                                           %5TF33X-Y 0800#
                         }%colorm=0
                         {%colorm=1
(3D\255Linearisierung ) showde                                  %0TF33X-Y 0900#
(3D\255linearization to ) showen                                %1TF33X-Y 0900#
(3D\255linealizaci\363n a ) showes                              %2TF33X-Y 0900#
(linearisation 3D selon ) showfr                                %3TF33X-Y 0900#
(3D\255linearizzazione a ) showit                               %4TF33X-Y 0900#
(3D\255linearization to ) showjp                                %5TF33X-Y 0900#
                         } ifelse %colorm=1
12 /TimesI-ISOL1 FS
xchart5f 0 eq {(rgb)  show} if
xchart5f 1 eq {(cmyk) show} if
xchart5f 2 eq {(cmy0) show} if
xchart5f 3 eq {(cmyk) show} if
colorm 1 eq {(*) show} if
10 /Times-ISOL1 FS
0 -2 rmoveto Txx show 0 2 rmoveto
12 /Times-ISOL1 FS
} ifelse %xchart=0,#0

%0 setgray %end white and unvisible

12 /Times-ISOL1 FS

 62 MM 198.5 MM  moveto
(http://130.149.60.45/~farbmetrik/TF33/TF33L) show
(0) show
LSC$ show LEX$ show

%1 setgray %start white and unvisible
(; ) show
xchart 0 eq {
(Start\255Ausgabe) showde                                       %0TF33X-Y 1000#
(start output) showen                                           %1TF33X-Y 1000#
(comience salida) showes                                        %2TF33X-Y 1000#
(sortie de production) showfr                                   %3TF33X-Y 1000#
(cominciare l'uscita) showit                                    %4TF33X-Y 1000#
(start output) showjp                                           %5TF33X-Y 1000#
           } if
LSC$ (C) eq {
(Start\255Ausgabe) showde                                       %0TF33X-Y 1100#
(start output) showen                                           %1TF33X-Y 1100#
(comience salida) showes                                        %2TF33X-Y 1100#
(sortie de production) showfr                                   %3TF33X-Y 1100#
(cominciare l'uscita) showit                                    %4TF33X-Y 1100#
(start output) showjp                                           %5TF33X-Y 1100#
           } if
xchart 1 ge {%xchart>=1
colorm 0 eq {%colorm=0,1
(Transfer Ausgabe) showde                                       %0TF33X-Y 1200#
(transfer output) showen                                        %1TF33X-Y 1200#
(salida de transferencia) showes                                %2TF33X-Y 1200#
(sortie de transfert) showfr                                    %3TF33X-Y 1200#
(uscita di trasferimento) showit                                %4TF33X-Y 1200#
(transfer output) showjp                                        %5TF33X-Y 1200#
            }%colorm=0
            {%colorm=1
(3D\255Linearisierung) showde                                   %0TF33X-Y 1300#
(3D\255linearization) showen                                    %1TF33X-Y 1300#
(3D\255linealizaci\363n) showes                                 %2TF33X-Y 1300#
(linearisation 3D) showfr                                       %3TF33X-Y 1300#
(3D\255linearizzzazione) showit                                 %4TF33X-Y 1300#
(3D\255linearization) showjp                                    %5TF33X-Y 1300#
            } ifelse %colorm=0,1
            } if %xchart>=1

 62 MM 194 MM  moveto
LSC$ (N) eq LSC$ (C) eq or {
(N: Keine 3D\255Linearisierung (OL) ) showde                    %0TF33X-Y 1400#
(N: no 3D\255linearization (OL) ) showen                        %1TF33X-Y 1400#
(N: ninguna 3D\255linealizaci\363n (OL) ) showes                %2TF33X-Y 1400#
(N: aucun linearisation 3D (OL) ) showfr                        %3TF33X-Y 1400#
(N: nessun 3D\255linearizzazione (OL) ) showit                  %4TF33X-Y 1400#
(N: no 3D\255linearization (OL) ) showjp                        %5TF33X-Y 1400#

(in Datei (F) oder PS\255Startup (S)) showde                    %0TF33X-Y 1500#
(in file (F) or PS\255startup (S)) showen                       %1TF33X-Y 1500#
(en archivo (F) o PS\255startup (S)) showes                     %2TF33X-Y 1500#
(dans fichier (F) ou PS\255startup (S)) showfr                  %3TF33X-Y 1500#
(nel file (F) o PS\255startup (S)) showit                       %4TF33X-Y 1500#
(in file (F) or PS\255startup (S)) showjp                       %5TF33X-Y 1500#
           }
           {LSC$ show (: ) show
(3D\255Linearisierung) showde                                   %0TF33X-Y 1600#
(3D\255linearization) showen                                    %1TF33X-Y 1600#
(3D\255linealizaci\363n) showes                                 %2TF33X-Y 1600#
(linearisation 3D) showfr                                       %3TF33X-Y 1600#
(3D\255linearizzzazione) showit                                 %4TF33X-Y 1600#
(3D\255linearization) showjp                                    %5TF33X-Y 1600#
( TF33/TF33L) show
LSS$ show LSX$ show (0) show
LSC$ show LEY$ show
          } ifelse
LSC$ (F) eq {
( in Datei (F)) showde                                          %0TF33X-Y 1700#
( in file (F)) showen                                           %1TF33X-Y 1700#
( en archivo (F)) showes                                        %2TF33X-Y 1700#
( dans fichier (F)) showfr                                      %3TF33X-Y 1700#
( nel file (F)) showit                                          %4TF33X-Y 1700#
( in file (F)) showjp                                           %5TF33X-Y 1700#
           } if
LSC$ (S) eq {
( im Distiller Startup (S) Directory) showde                    %0TF33X-Y 1800#
( in Distiller Startup (S) Directory) showen                    %1TF33X-Y 1800#
( en el Distiller Startup (S) Directory) showes                 %2TF33X-Y 1800#
( dans le Distiller Startup (S) Directory) showfr               %3TF33X-Y 1800#
( nel Distiller Startup (S) Directory) showit                   %4TF33X-Y 1800#
( in Distiller Startup (S) Directory) showjp                    %5TF33X-Y 1800#
           } if
LSC$ (D) eq {
( in PS\255Device (D)) showde                                   %0TF33X-Y 1900#
( in PS\255device (D)) showen                                   %1TF33X-Y 1900#
( en el PS\255device (D)) showes                                %2TF33X-Y 1900#
( dans l'appareil PS (D)) showfr                                %3TF33X-Y 1900#
( nel PS\255dispositivo (D)) showit                             %4TF33X-Y 1900#
( in PS\255Device (D)) showjp                                   %5TF33X-Y 1900#
           } if
LSC$ (T) eq {
( im Distiller Startup (S) Directory) showde                    %0TF33X-Y 2000#
( in Distiller Startup (S) Directory) showen                    %1TF33X-Y 2000#
( en el Distiller Startup (S) Directory) showes                 %2TF33X-Y 2000#
( dans le Distiller Startup (S) Directory) showfr               %3TF33X-Y 2000#
( nel Distiller Startup (S) Directory) showit                   %4TF33X-Y 2000#
( in Distiller Startup (S) Directory) showjp                    %5TF33X-Y 2000#
           } if
LSC$ (E) eq {
( in PS\255Device (D)) showde                                   %0TF33X-Y 2100#
( in PS\255device (D)) showen                                   %1TF33X-Y 2100#
( en el PS\255device (D)) showes                                %2TF33X-Y 2100#
( dans appareil PS (D)) showfr                                  %3TF33X-Y 2100#
( nel PS\255dispositivo (D)) showit                             %4TF33X-Y 2100#
( in PS\255Device (D)) showjp                                   %5TF33X-Y 2100#
           } if
%0 setgray %end white and unvisible

(, Seite ) showde                                               %0TF33X-Y 2200#
(, page ) showen                                                %1TF33X-Y 2200#
(, p\341gina ) showes                                           %2TF33X-Y 2200#
(, page ) showfr                                                %3TF33X-Y 2200#
(, pagina ) showit                                              %4TF33X-Y 2200#
(, page ) showjp                                                %5TF33X-Y 2200#
xchart 1 add cvishow (/) show
xchartm cvishow

 16 MM 185 MM moveto
-90 rotate
(Siehe \344hnliche Dateien: ) showde                            %0TF33X-Y 2300#
(see similar files: ) showen                                    %1TF33X-Y 2300#
(vea archivos semejantes: ) showes                              %2TF33X-Y 2300#
(voir des fichiers similaires: ) showfr                         %3TF33X-Y 2300#
(vedere dei file simili: ) showit                               %4TF33X-Y 2300#
(see similar files: ) showjp                                    %5TF33X-Y 2300#
(http://130.149.60.45/~farbmetrik/TF33/TF33.HTM) show
%(0) show
%LSC$ show LEX$ show
90 rotate

 12 MM 185 MM moveto
-90 rotate
(Technische Information: ) showde                               %0TF33X-Y 2400#
(technical information: ) showen                                %1TF33X-Y 2400#
(informaci\363n t\351cnica: ) showes                            %2TF33X-Y 2400#
(informations techniques: ) showfr                              %3TF33X-Y 2400#
(informazioni tecniche: ) showit                                %4TF33X-Y 2400#
(technical information: ) showjp                                %5TF33X-Y 2400#
(http://www.ps.bam.de) show
( oder ) showde                                                 %0TF33X-Y 2500#
( or ) showen                                                   %1TF33X-Y 2500#
( o ) showes                                                    %2TF33X-Y 2500#
( ou ) showfr                                                   %3TF33X-Y 2500#
( o ) showit                                                    %4TF33X-Y 2500#
( or ) showjp                                                   %5TF33X-Y 2500#
(http://130.149.60.45/~farbmetrik) show
 90 rotate

281 MM 185 MM moveto
-90 rotate
(TUB\255Registrierung: 20130201\255TF33/TF33L) showde           %0TF33X-Y 2600#
(TUB registration: 20130201\255TF33/TF33L) showen               %1TF33X-Y 2600#
(TUB matr\355cula: 20130201\255TF33/TF33L) showes               %2TF33X-Y 2600#
(TUB enregistrement: 20130201\255TF33/TF33L) showfr             %3TF33X-Y 2600#
(TUB iscrizione: 20130201\255TF33/TF33L) showit                 %4TF33X-Y 2600#
(TUB registration: 20130201\255TF33/TF33L) showjp               %5TF33X-Y 2600#
(0) show
LSC$ show LEX$ show
90 rotate

281 MM 74 MM moveto
-90 rotate
(TUB\255Material: Code=rha4ta) showde                           %0TF33X-Y 2700#
(TUB material: code=rha4ta) showen                              %1TF33X-Y 2700#
(TUB material: code=rha4ta) showes                              %2TF33X-Y 2700#
(TUB mat\351riel: code=rha4ta) showfr                           %3TF33X-Y 2700#
(TUB materiale: code=rha4ta) showit                             %4TF33X-Y 2700#
(TUB material: code=rha4ta) showjp                              %5TF33X-Y 2700#
90 rotate

277 MM 185 MM moveto
-90 rotate
/cvishow {cvi 6 string cvs show} def
/cvsshow1 {10 mul cvi 0.1 mul 7 string cvs show} def

( Anwendung f\374r Messung ) showde                             %0TF33X-Y 2800#
( application for measurement ) showen                          %1TF33X-Y 2800#
( aplicaci\363n para la medida ) showes                         %2TF33X-Y 2800#
( application pour la mesure ) showfr                           %3TF33X-Y 2800#
( la domanda per la misura ) showit                             %4TF33X-Y 2800#
( application for measurement ) showjp                          %5TF33X-Y 2800#

xchart5f 0 eq {%xchart5f=0
(von Display-Ausgabe) showde                                    %0TF33X-Y 2900#
(of display output) showen                                      %1TF33X-Y 2900#
(de display output) showes                                      %2TF33X-Y 2900#
(de sortie sur \350cran) showfr                                 %3TF33X-Y 2900#
(di stampa di display) showit                                   %4TF33X-Y 2900#
(of display output) showjp                                      %5TF33X-Y 2900#
} if %xchart5f=0

xchart5f 1 eq xchart5f 2 eq or {%xchart5f=1,2
(von Offsetdruck\255Ausgabe) showde                             %0TF33X-Y 3000#
(of offset print output) showen                                 %1TF33X-Y 3000#
(salida en la impressi\363n offset) showes                      %2TF33X-Y 3000#
(des sorties sur offset) showfr                                 %3TF33X-Y 3000#
(uscita nella stampa di offset) showit                          %4TF33X-Y 3000#
(of offset print output) showjp                                 %5TF33X-Y 3000#
} if %xchart5f=1,2

xchart5f 3 eq {%xchart5f=3
(von Laserdrucker\255Ausgabe) showde                            %0TF33X-Y 3100#
(of laser printer output) showen                                %1TF33X-Y 3100#
(salida de impresora l\341ser) showes                           %2TF33X-Y 3100#
(des sorties sur imprimante laser) showfr                       %3TF33X-Y 3100#
(di uscita della stampante laser) showit                        %4TF33X-Y 3100#
(of laser printer output) showjp                                %5TF33X-Y 3100#
} if %xchart5f=3

xchart 1 ge {%xchart>=1
xchart5f 0 eq {%xchart5f=0
(, keine Separation) showde                                     %0TF33X-Y 3200#
(, no separation) showen                                        %1TF33X-Y 3200#
(, ninguna separaci\363n) showes                                %2TF33X-Y 3200#
(, aucune s\351paration) showfr                                 %3TF33X-Y 3200#
(, nessuna separazione) showit                                  %4TF33X-Y 3200#
(, no separation) showjp                                        %5TF33X-Y 3200#
} if %chart5f=0

xchart5f 1 ge {%xchart5f>=1
(, Separation) showde                                           %0TF33X-Y 3300#
(, separation) showen                                           %1TF33X-Y 3300#
(, separaci\363n) showes                                        %2TF33X-Y 3300#
(, s\351paration) showfr                                        %3TF33X-Y 3300#
(, separazione) showit                                          %4TF33X-Y 3300#
(, separation) showjp                                           %5TF33X-Y 3300#
xchart5f 1 eq xchart5f 3 eq or {(cmyn6) show} if
xchart5f 2 eq                  {(cmy0)  show} if
colorm 1 eq {(*) show} if
colsep 0 eq {( (CMYK))}{( (CMY0))} ifelse show
} if %xchart5f>=1

            } if %xchart>=1

IMES 1 eq LSC$ (N) ne and { %IMES=1
             (, Yr=) show Yre cvsshow1 (, XYZ) show
          } if %IMES=1
90 rotate

/i0 8 def
/i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def
0.30 MM setlinewidth
0 setgray
x i0 get MM y i0 get MM moveto x i1 get MM y i1 get MM lineto
x i2 get MM y i2 get MM lineto x i3 get MM y i3 get MM lineto
x i0 get MM y i0 get MM lineto stroke

%/xlu1 013 MM def /ylu1 010 MM def
%/xro1 283 MM def /yro1 200 MM def
%/xlo1 013 MM def /ylo1 200 MM def
%/xru1 283 MM def /yru1 010 MM def

%xlu1 4 MM sub ylu1 moveto  8 MM 0 rlineto stroke
%xlu1 ylu1 4 MM sub moveto 0  8 MM rlineto stroke
%xro1 4 MM add yro1 moveto -8 MM 0 rlineto stroke
%xro1 yro1 4 MM add moveto 0 -8 MM rlineto stroke

%xru1 4 MM sub yru1 moveto  8 MM 0 rlineto stroke
%xru1 yru1 4 MM sub moveto 0  8 MM rlineto stroke
%xlo1 4 MM add ylo1 moveto -8 MM 0 rlineto stroke
%xlo1 ylo1 4 MM add moveto 0 -8 MM rlineto stroke
} ifelse %xt=1

grestore
gsave

%**********************************************************

%%Trailer

%%EndDocument
EndEPSF grestore gsave

showpage
grestore

%} for %colsepf=0,1

%} for %pchartf=0,0

%} for %xchartf=0,1

%} for %xcolorf=3,3

%} for %deintpf=0,1

%} for %colormf=0,1

%} for %lanindf=0,0

%%Trailer