%!PS-Adobe-3.0 EPSF-3.0 DM100/PK0X_FRAME_A6_F1_MK00.PS DM100-00 20120601
%%BoundingBox: 70 83 226 206

/pdfmarkF where {pop} {userdict /pdfmarkF /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.445/~farbmetrik/DM10)
  /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1)
  /Subject (goto: http://www.ps.bam.de or http://130.149.60.445/~farbmetrik)
  /Keywords (image reproduction, colour devices)
  /Creator (klaus.richter@mac.com)
  /CreationDate (D:2012060112000)
  /ModDate (D:2012060112000)
/DOCINFO pdfmarkF
[ /View [ /Fit ]
/DOCVIEW pdfmarkF

%************************************************************
%Early Frame File (f) definition
/sfgray {setgray} bind def
/sfrgbcolor {setrgbcolor} bind def
/sfcmykcolor {setcmykcolor} bind def

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


%line 29, %BEG Include Procedures for output linearization at line 30
%****************************************************
%BEG 'DM10'OUTLIN11.PS for output 3D-linearization
%****************************************************
/PROC_COLINT_IOF {%BEG procedure PROC_COLINT_IOF

/Lab2RGB {%BEG Procedure Lab2RGB
% --- Lab2RGB -----------------
% 
% --- Eingabe (stack): L* a* b*
% --- Ausgabe (stack): iR iG iB ; die Indizes des LUT-Wertes mit dem geringsten Delta-E bzgl. Eingabewert
% ----               :  delta-E ; und das Delta-E dazu
%
  /Zielb exch def
  /Ziela exch def
  /ZielL exch def

  /dE 1000 def
  /opt 0 def

  1 1 nges {
    1 sub 3 mul /ii exch def
    /dL lut ii get  ZielL sub  abs  def
    dE dL ge {   %dE>dL
      /da lut ii 1 add get  Ziela sub  abs  def
      dE da ge {   %dE>da
        /db lut ii 2 add get  Zielb sub  abs  def
        dE db ge {   %dE>db
          /dEneu dL dL mul da da mul db db mul add add sqrt def
          dE dEneu ge {               % test ob dEneu < dE
            /dE dEneu def
            /opt ii def
          } if 
        } if 
      } if
    } if   
  } for

  /opt opt 3 idiv def
  opt nG nB mul idiv    % R auf den stack (Wertebereich real: 0-(nr-1))
  opt nG nB mul mod nB idiv    % G auf den stack 
  opt nG nB mul mod nB mod    % B auf den stack

  dEneu
  
} def    %END Procedure Lab2RGB

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

/indexkonv {%BEG Procedure indexkonv
% --- indexkonv -----------------
% 
% --- Eingabe (stack): iR iG iB ; Indizes eines LUT-Wertes
% --- Ausgabe (stack): Position des LUT-Wertes im 1-dim Lut-Array
%
%errechnet aus r g b index auf stack den fortlaufenden index
  exch nB mul add exch nB nG mul mul add 3 mul
} def    %END Procedure indexkonv

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

/set_oktant {%BEG Procedure set_oktant
% --- set_oktant -----------------
% 
% --- Eingabe (stack): iR iG iB ; Indizes eines LUT-Wertes,
%     kennzeichnet die dem Ursprung entfernteste Ecke des ausgewaehlten Raumbereiches
%     sortierung v1->v8: RGB, RGB+1, RG+1B, RG+1B+1, usw..
% --- Ausgabe (stack): keine
%
  /B_index exch def
  /G_index exch def
  /R_index exch def
 
  R_index G_index B_index indexkonv /tempindex exch def
%  /eswird R_index G_index B_index /zu tempindex 
  /lin_v8L lut tempindex get def
  /lin_v8a lut tempindex 1 add get def
  /lin_v8b lut tempindex 2 add get def
  R_index G_index B_index 1 sub indexkonv /tempindex exch def
%  /eswird R_index G_index  B_index 1 sub /zu tempindex jens
  /lin_v7L lut tempindex get def
  /lin_v7a lut tempindex 1 add get def
  /lin_v7b lut tempindex 2 add get def
  R_index G_index 1 sub B_index indexkonv /tempindex exch def
  /lin_v6L lut tempindex get def
  /lin_v6a lut tempindex 1 add get def
  /lin_v6b lut tempindex 2 add get def
  R_index G_index 1 sub B_index 1 sub indexkonv /tempindex exch def
  /lin_v5L lut tempindex get def
  /lin_v5a lut tempindex 1 add get def
  /lin_v5b lut tempindex 2 add get def
  R_index 1 sub G_index B_index indexkonv /tempindex exch def
  /lin_v4L lut tempindex get def
  /lin_v4a lut tempindex 1 add get def
  /lin_v4b lut tempindex 2 add get def
  R_index 1 sub G_index B_index 1 sub indexkonv /tempindex exch def
  /lin_v3L lut tempindex get def
  /lin_v3a lut tempindex 1 add get def
  /lin_v3b lut tempindex 2 add get def
  R_index 1 sub G_index 1 sub B_index indexkonv /tempindex exch def
  /lin_v2L lut tempindex get def
  /lin_v2a lut tempindex 1 add get def
  /lin_v2b lut tempindex 2 add get def
  R_index 1 sub G_index 1 sub B_index 1 sub indexkonv /tempindex exch def
  /lin_v1L lut tempindex get def
  /lin_v1a lut tempindex 1 add get def
  /lin_v1b lut tempindex 2 add get def

} def    %END Procedure set_oktant

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

/L_abc {%BEG Procedure L_abc
% --- L_abc -----------------
% 
% --- Eingabe (stack): alpha (R-Richtung) beta (G-Richtung) gamma (B-Richtung)
% --- Ausgabe (stack): L* interpoliert aus LUT im aktuellen Oktanten
%
  /gamma exch def
  /beta exch def
  /alpha exch def

  /alpham 1 alpha sub def
  /betam 1 beta sub def
  /gammam 1 gamma sub def

  lin_v8L alpha  beta  gamma  mul mul mul 
  lin_v7L alpha  beta  gammam mul mul mul  add 
  lin_v6L alpha  betam gamma  mul mul mul  add
  lin_v5L alpha  betam gammam mul mul mul  add  
  lin_v4L alpham beta  gamma  mul mul mul  add
  lin_v3L alpham beta  gammam mul mul mul  add  
  lin_v2L alpham betam gamma  mul mul mul  add
  lin_v1L alpham betam gammam mul mul mul  add

} def   %END Procedure L_abc

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

/a_abc {%BEG Procedure a_abc
% --- a_abc -----------------
% 
% --- Eingabe (stack): alpha (R-Richtung) beta (G-Richtung) gamma (B-Richtung)
% --- Ausgabe (stack): L* interpoliert aus LUT im aktuellen Oktanten
%
  /gamma exch def
  /beta exch def
  /alpha exch def

  /alpham 1 alpha sub def
  /betam 1 beta sub def
  /gammam 1 gamma sub def

  lin_v8a alpha  beta  gamma  mul mul mul 
  lin_v7a alpha  beta  gammam mul mul mul  add 
  lin_v6a alpha  betam gamma  mul mul mul  add
  lin_v5a alpha  betam gammam mul mul mul  add  
  lin_v4a alpham beta  gamma  mul mul mul  add
  lin_v3a alpham beta  gammam mul mul mul  add  
  lin_v2a alpham betam gamma  mul mul mul  add
  lin_v1a alpham betam gammam mul mul mul  add

} def   %END Procedure a_abc

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

/b_abc {%BEG Procedure b_abc
% --- b_abc -----------------
% 
% --- Eingabe (stack): alpha (R-Richtung) beta (G-Richtung) gamma (B-Richtung)
% --- Ausgabe (stack): L* interpoliert aus LUT im aktuellen Oktanten
%
  /gamma exch def
  /beta exch def
  /alpha exch def

  /alpham 1 alpha sub def
  /betam 1 beta sub def
  /gammam 1 gamma sub def

  lin_v8b alpha  beta  gamma  mul mul mul 
  lin_v7b alpha  beta  gammam mul mul mul  add 
  lin_v6b alpha  betam gamma  mul mul mul  add
  lin_v5b alpha  betam gammam mul mul mul  add  
  lin_v4b alpham beta  gamma  mul mul mul  add
  lin_v3b alpham beta  gammam mul mul mul  add  
  lin_v2b alpham betam gamma  mul mul mul  add
  lin_v1b alpham betam gammam mul mul mul  add

} def   %END Procedure  b_abc

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

/Jacobi_abc {%BEG Procedure Jacobi_abc
% --- Jacobi_abc -----------------
% 
% --- Eingabe (stack): alpha (R-Richtung) beta (G-Richtung) gamma (B-Richtung)
% --- Ausgabe (stack): Jacobi Matrix an der stelle abc im aktuellen Oktanten
%     in der reihenfolge abcdefghi
%    (a b c) 
%    (d e f)
%    (g h i)
%
  /gamma exch def
  /beta exch def
  /alpha exch def

  /alpham 1 alpha sub def
  /betam 1 beta sub def
  /gammam 1 gamma sub def

  lin_v5L lin_v1L sub betam gammam mul mul
  lin_v6L lin_v2L sub betam gamma  mul mul add
  lin_v7L lin_v3L sub beta  gammam mul mul add
  lin_v8L lin_v4L sub beta  gamma  mul mul add

  lin_v3L lin_v1L sub alpham gammam mul mul
  lin_v4L lin_v2L sub alpham gamma  mul mul add
  lin_v7L lin_v5L sub alpha  gammam mul mul add
  lin_v8L lin_v6L sub alpha  gamma  mul mul add
 
  lin_v2L lin_v1L sub alpham betam mul mul
  lin_v4L lin_v3L sub alpham beta  mul mul add
  lin_v6L lin_v5L sub alpha  betam mul mul add
  lin_v8L lin_v7L sub alpha  beta  mul mul add

  lin_v5a lin_v1a sub betam gammam mul mul
  lin_v6a lin_v2a sub betam gamma  mul mul add
  lin_v7a lin_v3a sub beta  gammam mul mul add
  lin_v8a lin_v4a sub beta  gamma  mul mul add

  lin_v3a lin_v1a sub alpham gammam mul mul
  lin_v4a lin_v2a sub alpham gamma  mul mul add
  lin_v7a lin_v5a sub alpha  gammam mul mul add
  lin_v8a lin_v6a sub alpha  gamma  mul mul add

  lin_v2a lin_v1a sub alpham betam mul mul
  lin_v4a lin_v3a sub alpham beta  mul mul add
  lin_v6a lin_v5a sub alpha  betam mul mul add
  lin_v8a lin_v7a sub alpha  beta  mul mul add

  lin_v5b lin_v1b sub betam gammam mul mul
  lin_v6b lin_v2b sub betam gamma  mul mul add
  lin_v7b lin_v3b sub beta  gammam mul mul add
  lin_v8b lin_v4b sub beta  gamma  mul mul add

  lin_v3b lin_v1b sub alpham gammam mul mul
  lin_v4b lin_v2b sub alpham gamma  mul mul add
  lin_v7b lin_v5b sub alpha  gammam mul mul add
  lin_v8b lin_v6b sub alpha  gamma  mul mul add

  lin_v2b lin_v1b sub alpham betam mul mul
  lin_v4b lin_v3b sub alpham beta  mul mul add
  lin_v6b lin_v5b sub alpha  betam mul mul add
  lin_v8b lin_v7b sub alpha  beta  mul mul add

} def   %END Procedure  Jacobi_abc

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

/Inverse_mat {%BEG Procedure Inverse_mat
% --- Inverse_mat -----------------
% 
% --- Eingabe (stack): Matrix in der reihenfolge abcdefghi
%     invertiert die Matrix   (a b c) 
%     (d e f)
%     (g h i)
% --- Ausgabe (stack): Matrix 
%
  /i_i exch def
  /i_h exch def
  /i_g exch def
  /i_f exch def
  /i_e exch def
  /i_d exch def
  /i_c exch def
  /i_b exch def
  /i_a exch def

  /i_det i_a i_e i_i mul mul 
       i_b i_d i_i mul mul sub
       i_a i_f i_h mul mul sub
       i_c i_d i_h mul mul add
       i_b i_f i_g mul mul add
       i_c i_e i_g mul mul sub def

  i_e i_i mul i_f i_h mul sub i_det div   %a der inversen auf stack
  i_c i_h mul i_b i_i mul sub i_det div   %b der inversen auf stack
  i_b i_f mul i_c i_e mul sub i_det div   %c der inversen auf stack
  i_f i_g mul i_d i_i mul sub i_det div   %d der inversen auf stack
  i_a i_i mul i_c i_g mul sub i_det div   %e der inversen auf stack
  i_c i_d mul i_a i_f mul sub i_det div   %f der inversen auf stack
  i_d i_h mul i_e i_g mul sub i_det div   %g der inversen auf stack
  i_b i_g mul i_a i_h mul sub i_det div   %h der inversen auf stack
  i_a i_e mul i_b i_d mul sub i_det div   %i der inversen auf stack

} def   %END Procedure Inverse_mat

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

/linear_finden  {%BEG Procedure linear_finden
% --- linear_finden -----------------
% 
% --- Eingabe (stack): iR iG iB ; Indizes eines LUT-Wertes,
%     kennzeichnet die dem Ursprung entfernteste Ecke des ausgewaehlten Raumbereiches
%     L* a* b* ; danach der zielpunkt als lab wert
% --- Ausgabe (stack): Delta-E: Abstand zum Zielpunkt
%     alpha, beta, gamma die den kürzesten abstand zum gegebenen zielpunkt aufweisen
%
  /lin_zielb exch def
  /lin_ziela exch def
  /lin_zielL exch def

  set_oktant

  /akt_a 0.5 def
  /akt_b 0.5 def
  /akt_c 0.5 def

  /last_L akt_a akt_b akt_c L_abc def
  /last_a akt_a akt_b akt_c a_abc def
  /last_b akt_a akt_b akt_c b_abc def
  /diff_L last_L lin_zielL sub def
  /diff_a last_a lin_ziela sub def
  /diff_b last_b lin_zielb sub def

  0  %default rueckgabewert fuer delta-e (wird nie benutzt, aber fuer pop wichtig)
  1 1 10 {
    pop   %pop schleifenzaehler
    pop   %pop letzes Delta-E

    akt_a akt_b akt_c Jacobi_abc Inverse_mat
    diff_b mul exch
    diff_a mul add exch
    diff_L mul add /delta_c exch def
    diff_b mul exch
    diff_a mul add exch
    diff_L mul add /delta_b exch def
    diff_b mul exch
    diff_a mul add exch
    diff_L mul add /delta_a exch def

%    akt_a akt_b akt_c 
%    delta_a delta_b delta_c

    /akt_a akt_a delta_a sub def
    /akt_b akt_b delta_b sub def
    /akt_c akt_c delta_c sub def
 
    akt_a 0 lt {/akt_a 0 def} if
    akt_b 0 lt {/akt_b 0 def} if
    akt_c 0 lt {/akt_c 0 def} if
    1 akt_a lt {/akt_a 1 def} if
    1 akt_b lt {/akt_b 1 def} if
    1 akt_c lt {/akt_c 1 def} if
  
    /last_L akt_a akt_b akt_c L_abc def
    /last_a akt_a akt_b akt_c a_abc def
    /last_b akt_a akt_b akt_c b_abc def

    /diff_L last_L lin_zielL sub def
    /diff_a last_a lin_ziela sub def
    /diff_b last_b lin_zielb sub def
%/naechster
%akt_a
%akt_b
%akt_c
%last_L
%last_a
%last_b

    diff_L dup mul diff_a dup mul diff_b dup mul add add sqrt dup %Abbruch wenn Delta_e<0.1

    0.1 lt {exit} if

  } for

  akt_a akt_b akt_c
  
} def  %END Procedure linear_finden

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

/Lab2RGBinterpolation {%BEG Procedure Lab2RGBinterpolation

  /Ziel_b exch def
  /Ziel_a exch def
  /Ziel_L exch def

  Ziel_L Ziel_a Ziel_b Lab2RGB

  /now_delta_e exch def

  /B_next exch def
  /G_next exch def
  /R_next exch def

  /R_fin R_next nR 1 sub div def  % defaults falls kein besserer wert gefunden
  /G_fin G_next nG 1 sub div def
  /B_fin B_next nB 1 sub div def

    -1 1 2 {
      R_next add /R_now exch def
      -1 1 2 {
        G_next add /G_now exch def
        -1 1 2 {
          B_next add /B_now exch def
          B_now 0 gt G_now 0 gt R_now 0 gt nB B_now gt nG G_now gt nR R_now gt and and and and and {
            R_now G_now B_now 
            Ziel_L Ziel_a Ziel_b
            linear_finden
            /now_c exch def
            /now_b exch def
            /now_a exch def
            dup               %rueckgabe delta-e doppeln
            now_delta_e lt {

              /now_delta_e exch def

      /Bs0 B_now 1 sub nB 1 sub div 255 mul round 255 div def
      /Bs1 B_now       nB 1 sub div 255 mul round 255 div def
      /B_fin Bs0 1 now_c sub mul Bs1 now_c mul add def
      /Gs0 G_now 1 sub nG 1 sub div 255 mul round 255 div def
      /Gs1 G_now       nG 1 sub div 255 mul round 255 div def
      /G_fin Gs0 1 now_b sub mul Gs1 now_b mul add def
      /Rs0 R_now 1 sub nR 1 sub div 255 mul round 255 div def
      /Rs1 R_now       nR 1 sub div 255 mul round 255 div def
      /R_fin Rs0 1 now_a sub mul Rs1 now_a mul add def

            } 
            {
              pop
            } ifelse
          }  if
        } for
      } for
    } for
    
R_fin G_fin B_fin

} bind def  %END Procedure Lab2RGBinterpolation

} bind def %END procedure PROC_COLINT_IOF
%****************************************************
%END 'DM10'OUTLIN11.PS for output 3D-linearization
%****************************************************

%****************************************************
%BEG 'DM10'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 'DM10'OUTLIN1X.PS Other procedures for sRGB output linearization
%****************************************************

%BEG DM10/OUTLIN1Y.PS Emty 20101101

%END DM10/OUTLIN1Y.PS Emty 20101101
                                                                         

%END Include Procedures for output linearization at line 30

%***********************************************************
/BeginEPSFF {% def              % Prepare for EPS file Frame (F)
/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

/EndEPSFF {% def              % End for EPS file Frame (F)
 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
/A4querF {598 0 translate 90 rotate} def

/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

/Courier-Bold findfont dup length dict  begin
{1 index /FID ne {def} {pop pop} ifelse }forall
/Encoding ISOLatin1Encoding def
currentdict end
/CourierB-ISOL1 exch definefont pop

/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
%A4quer
1.0 1.0 scale
/pgsave save def
%%EndPageSetup

%**********************************************************
/lanind1f 02 def /lanind2f 02 def /laninddf 01 def
/colorm1f 00 def /colorm2f 00 def /colormdf 01 def
/deintp1f 00 def /deintp2f 00 def /deintpdf 01 def
/xcolor1f 03 def /xcolor2f 03 def /xcolordf 01 def
/xchart1f 01 def /xchart2f 01 def /xchartdf 01 def %0-1,2-11
/xchart3f 01 def /xchart4f 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 %
colorm1f colormdf colorm2f {/colormf exch 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 %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 /xchart3P10 xchart3 10 add def /xchart4 xchart4f def
/pchart pchartf def
/colsep colsepf def

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

%*****************************************************
xchart xchart3 lt {%xchart<xchart3 not for CM
/setgray {sfgray} bind def
/setrgbcolor {sfrgbcolor} bind def
/setcmykcolor {sfcmykcolor} bind def
            }%xchart<xchart3 not for CM

            {%xchart>=xchart3 for CM
%BEG special for ColorInterpolation
/xchartj pchart def %sRGB, Lr=0%, pchart=3
/hei -1 def /heM -1 def
/ausz 8 def /xchartt (F) def %necessary if separation
%                           PROC_LAB_IOF
%                           PROC_RX0F_IOF
%                           PROC_COLSEP_IOF
colorm 1 eq {PROC_COLINT_IOF} if
%                           PROC_COLINT_IOF
%                           PROC_SPEC_IOF
Colordata_sRGB_F %new
setcolortrans_F %new
proc_LAB729a_to_LAB*LabCh64M
proc_LAB*LabCh64M_to_tab362_dy

%END special for ColorInterpolation
%*************************************************
} ifelse %xchart>=xchart3 for CM

72 90 translate
0.01 MM dup scale
0 0 moveto 5330 0 rlineto 0 4000 rlineto
          -5330 0 rlineto closepath stroke
1500 -180 moveto
180 /Times-ISOL1 FS
lanindf cvishow (-) show
colormf cvishow
deintpf cvishow
xcolorf cvishow
xchartf cvishow
pchartf cvishow
colsepf cvishow (-F) show pmetamf cvishow
grestore
gsave

%xchart xchart3P10 le {%BEG xchart<=xchart3P10

BeginEPSFF
 0 MM 0 MM translate
%%BeginDocument:
%***************************************
%line 199 %BEG INCLUDE TEST FILE at line 200
%!PS-Adobe-3.0 EPSF-3.0 MS041-6
%%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/MS04/)
  /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@me.com)
  /CreationDate (D:2012050112000)
  /ModDate (D:2012050112000)
/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

/TK {250 16.67 div /Times-ISOL1 FS} bind def
/TM {300 16.67 div /Times-ISOL1 FS} bind def
/TG {350 16.67 div /Times-ISOL1 FS} bind def

/TIK {250 16.67 div /TimesI-ISOL1 FS} bind def
/TIM {300 16.67 div /TimesI-ISOL1 FS} bind def
/TIG {350 16.67 div /TimesI-ISOL1 FS} bind def

/TBK {250 16.67 div /TimesB-ISOL1 FS} bind def
/TBM {300 16.67 div /TimesB-ISOL1 FS} bind def
/TBG {350 16.67 div /TimesB-ISOL1 FS} bind def

/TBIK {250 16.67 div /TimesBI-ISOL1 FS} bind def
/TBIM {300 16.67 div /TimesBI-ISOL1 FS} bind def
/TBIG {350 16.67 div /TimesBI-ISOL1 FS} bind def

/SK {250 16.67 div 1 sub /Symbol FS} bind def
/SM {300 16.67 div 1 sub /Symbol FS} bind def
/SG {350 16.67 div 1 sub /Symbol FS} bind def

/tolvfcol    %Farbkreis-Reihenfolge
[ (000) (F00) (FF0) (0F0) (0FF) (00F) (F0F) (FFF)
  (777) (700) (770) (070) (077) (007) (707) (F07) %15=R
  (333) (F77) (FF7) (7F7) (7FF) (77F) (F7F) (07F) %23=B
  (BBB) (F70) (7F0) (0F7) (07F) (70F) (F07) (0F7) %31=G
] def

/tcmyfcol    %Farbkreis-Reihenfolge
[ (FFF) (0FF) (00F) (F0F) (F00) (FF0) (0F0) (000)
  (888) (8FF) (88F) (F8F) (F88) (FF8) (8F8) (0F8) %15=R
  (CCC) (088) (008) (808) (800) (880) (080) (F80) %23=B
  (444) (08F) (80F) (F08) (F80) (8F0) (0F8) (F08) %31=G
] def

/tcmykfcol   %Farbkreis-Reihenfolge
[ (000F) (0FF0) (00F0) (F0F0) (F000) (FF00) (0F00) (0000)
  (0008) (0FF8) (00F8) (F0F8) (F008) (FF08) (0F08) (0F80) %15=R
  (000C) (0880) (0080) (8080) (8000) (8800) (0800) (F800) %23=B
  (0004) (0F80) (80F0) (F080) (F800) (8F00) (0F80) (F080) %31=G
] def

/tolvfcols    %Farbkreis-Reihenfolge
[ (000*) (F00*) (FF0*) (0F0*) (0FF*) (00F*) (F0F*) (FFF*)
  (777*) (700*) (770*) (070*) (077*) (007*) (707*) (F07*) %15=R
  (333*) (F77*) (FF7*) (7F7*) (7FF*) (77F*) (F7F*) (07F*) %23=B
  (BBB*) (F70*) (7F0*) (0F7*) (07F*) (70F*) (F07*) (0F7*) %31=G
] def

/tcmyfcols    %Farbkreis-Reihenfolge
[ (FFF*) (0FF*) (00F*) (F0F*) (F00*) (FF0*) (0F0*) (000*)
  (888*) (8FF*) (88F*) (F8F*) (F88*) (FF8*) (8F8*) (0F8*) %15=R
  (CCC*) (088*) (008*) (808*) (800*) (880*) (080*) (F80*) %23=B
  (444*) (08F*) (80F*) (F08*) (F80*) (8F0*) (0F8*) (F08*) %31=G
] def

/tcmykfcols   %Farbkreis-Reihenfolge
[ (000F*) (0FF0*) (00F0*) (F0F0*) (F000*) (FF00*) (0F00*) (0000*)
  (0008*) (0FF8*) (00F8*) (F0F8*) (F008*) (FF08*) (0F08*) (0F80*) %15=R
  (000C*) (0880*) (0080*) (8080*) (8000*) (8800*) (0800*) (F800*) %23=B
  (0004*) (0F80*) (80F0*) (F080*) (F800*) (8F00*) (0F80*) (F080*) %31=G
] def

/fcolors     %CMYN 32 Testfarben Nr. 0 bis 31; Farbkreis-Reihenfolge
[{0.0 0.0 0.0 1.0}  {0.0 1.0 1.0 0.0}  {0.0 0.0 1.0 0.0}  {1.0 0.0 1.0 0.0}
 {1.0 0.0 0.0 0.0}  {1.0 1.0 0.0 0.0}  {0.0 1.0 0.0 0.0}  {0.0 0.0 0.0 0.0}

 {0.0 0.0 0.0 0.5}  {0.0 1.0 1.0 0.5}  {0.0 0.0 1.0 0.5}  {1.0 0.0 1.0 0.5}
 {1.0 0.0 0.0 0.5}  {1.0 1.0 0.0 0.5}  {0.0 1.0 0.0 0.5}  {0.0 1.0 0.5 0.0}

 {0.0 0.0 0.0 0.75} {0.0 0.5 0.5 0.0}  {0.0 0.0 0.5 0.0}  {0.5 0.0 0.5 0.0}
 {0.5 0.0 0.0 0.0}  {0.5 0.5 0.0 0.0}  {0.0 0.5 0.0 0.0}  {1.0 0.5 0.0 0.0}

 {0.0 0.0 0.0 0.25} {0.0 0.5 1.0 0.0}  {0.5 0.0 1.0 0.0}  {1.0 0.0 0.5 0.0}
 {1.0 0.5 0.0 0.0}  {0.5 1.0 0.0 0.0}  {0.0 1.0 0.5 0.0}  {1.0 0.0 0.5 0.0}
] def

/fak 0.5 def

/Far     %Farbkreis-Reihenfolge
 [ 0  1  2  3  4  5  6  7
   8  9 10 11 12 13 14 15 %R
  16 17 18 19 20 21 22 23 %B
  24 25 26 27 28 29 30 31 %G
 ] def

/cFar     %Kompensativ-Farbkreis-Reihenfolge
 [ 8  4  5  6  1  2  3  0
   0 20 21 22 17 18 19 31 %G
  24 12 13 14  9 10 11  2 %J
  16 28 29 30 25 26 27 15 %R
 ] def

/Btx    %Farbkreis- -> %Btx-Reihenfolge
 [ 0  1  3  2  5  6  4  7
   8  9 11 10 13 14 12 15  %R
  16 17 19 18 21 22 20 23  %B
  24 25 26 27 28 29 30 31  %G
 ] def

/cBtx    %Farbkreis- -> %Kompensativ-Btx-Reihenfolge
 [ 7  4  6  5  2  3  1  0
   8 20 22 21 18 19 17 31 %G
  24 12 14 13 10 11  9  2 %J
  16 25 26 27 28 29 30 15 %R
 ] def

%XCHA01.PS BEG
/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

/colrecfi %x y width heigth c m y k
  {setcmyk_olvcolor rec fill} bind def

/colrecst %x y width heigth c m y k
  {setcmyk_olvcolor rec stroke} bind def

/rem %x, y width heigth
  {/heigth exch 0.5 mul def /width exch 0.5 mul def
   /yleftb exch heigth 0.5 mul add def
   /xleftb exch width  0.5 mul add def
   xleftb yleftb
   moveto width 0 rlineto 0 heigth rlineto width neg 0 rlineto
   closepath } bind def

/colremfi %x y width heigth c m y k
  {setcmykcolor rem fill} bind def

/colremst %x y width heigth c m y k
  {setcmykcolor rem stroke} bind def

/tzr {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben
/tzg {1.0 0.0 1.0 0.0} bind def
/tzb {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

/tfr {0.0 1.0 1.0 0.0 setcmyk_olvcolor} bind def %Reproduktionsfarben
/tfg {1.0 0.0 1.0 0.0 setcmyk_olvcolor} bind def
/tfb {1.0 1.0 0.0 0.0 setcmyk_olvcolor} bind def
/tfc {1.0 0.0 0.0 0.0 setcmyk_olvcolor} bind def
/tfm {0.0 1.0 0.0 0.0 setcmyk_olvcolor} bind def
/tfy {0.0 0.0 1.0 0.0 setcmyk_olvcolor} bind def

/tfn {0.0 0.0 0.0 1.00 setcmyk_olvcolor} bind def %Graureihe
/tfd {0.0 0.0 0.0 0.75 setcmyk_olvcolor} bind def
/tfz {0.0 0.0 0.0 0.50 setcmyk_olvcolor} bind def
/tfh {0.0 0.0 0.0 0.25 setcmyk_olvcolor} bind def
/tfw {0.0 0.0 0.0 0.00 setcmyk_olvcolor} bind def

%%EndProlog
gsave

/lanind 1 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
/showm  {6 lanind eq {show} {pop} ifelse} bind def

/lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def
                    /lanindd laninddf def}
               {/lanind1 2 def /lanind2 2 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 3 def} ifelse
/xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def
                    /xchartd xchartdf def
                    /xchartm xchart2f xchart1f sub 1 add def}
               {/xchart1 0 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 %

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 %always independent of intended output

5 /Times-ISOL1 FS
/cvishow {cvi 6 string cvs show} def
75 85 moveto
lanind cvishow (-) show
colorm cvishow
deintp cvishow
xcolor cvishow
xchart cvishow
pchart cvishow
colsep cvishow (-L) show pmetam cvishow

gsave
%XCHA01.PS END

5 /Times-ISOL1 FS
175 85 moveto (MS041-6) show
xchart 0 eq {(N) show}
            {deintp colorm 2 mul add cvishow} ifelse
(, B2_45) show %    ( B8541_6, M8151-6, B2_45, N=2_45) show

72 90 translate

/pixf 1.0 def 0.1667 pixf div MM dup scale

     /ausz 8 def %Farbauszug 1=C, 2=M, 3=Y, 7=N, 8=F

0 0 319 239 0.0 0.0 0.0 0.5 colrecfi %Rechteck Mittelgrau
TBIM                                  %Schrift Times-Bold-Italic-Gross
0.0 0.0 0.0 0.0  setcmyk_olvcolor          %Schrift Weiss
05 217 moveto (D  ) show TBM
(Farbwert in der Digitaltechnik) showde                         %0MS041-6 00332
(colour value in digital technics) showen                       %1MS041-6 00332
(valor de color en tecnolog\355a digital) showes                %2MS041-6 00332
(valeur de couleur informatique) showfr                         %3MS041-6 00332
(valore di colore nel technics digitale) showit                 %4MS041-6 00332
(colour value in digital technics) showjp                       %5MS041-6 00332

 /xd 4.0 def  /ix0 45 def /iy0 30 def

/yy [150 37 75] def
/yv [150 37 20] def
/scolors [ {0.0 0.0 0.0 0.0} {0.0 0.0 0.0 0.5} {0.4 0.4 0.8 0.2} ] def
1 setlinewidth TBIM
0 1 2 {/j exch def % 3 Farbkombinationen
           /ix1 ix0 08 add j 90 mul add def
           /ixd 22 def
           /ix2 ix1 ixd add def
           /iy1 iy0 def
           /iyd yy j get exec def
           /iy2 iy0 iyd add def
           ix1 iy1 ixd  iyd fcolors 2 get exec
           colrecfi
           ix1 2 sub iy2 8 add moveto (Y)
           fcolors 2 get exec setcmyk_olvcolor show
           TBK -0 -4 rmoveto Fxx show 0 4 rmoveto TBIM

           /ix1 ix0 40 add j 90 mul add def /ix2 ix1 ixd add def
           /iy1 iy0 def /iyd yv j get exec def  /iy2 iy0 iyd add def
           ix1 iy1 ixd iyd fcolors 5 get exec
           colrecfi
           ix1 2 sub iy2 8 add moveto (B)
           fcolors 5 get exec setcmyk_olvcolor show
           TBK -0 -4 rmoveto Fxx show 0 4 rmoveto TBIM

           ix1 25 sub iy0 25 sub 40 20 scolors j get exec colrecfi
j 1 eq {ix1 25 sub iy0 25 sub 40 20 fcolors 07 get exec colrecst } if
           ix1 22 add iy0 22 sub moveto 0.0 0.0 0.0 0.0 setcmyk_olvcolor
j 0 eq { (W) show} if
j 1 eq { (Z) show } if
j 2 eq { (y) show } if
TBK -0 -3 rmoveto Fxx show 0 3 rmoveto TBIM

           fcolors 7 get exec setcmyk_olvcolor
           /x1 10 def
           ix2 x1 add       iy0       moveto  0 150 rlineto stroke
           ix2 x1 add 2 sub iy0 8 add moveto
           2 -8 rlineto  2 8 rlineto closepath fill
           ix2 x1 add 2 sub iy0 8 sub 150 add moveto
           2 8 rlineto  2 -8 rlineto
           closepath fill

j 0 eq {/itw iy0 iyd 2 idiv add def
             ix2 x1 add 4 add itw 6 sub moveto (W) show} if

j 1 eq {/iym iy0 iyd add def
             /itw iy0 iyd 2 idiv add def
             /itn iy0 150 iyd add 2 idiv add  def
             ix2 x1 add 4 add itw 6 sub moveto (W) show
             ix2 x1 add 4 add itn 6 sub moveto (N) show
             ix2 x1 add 2 sub iym 8 add moveto
             2 -8 rlineto  2 8 rlineto closepath fill
             ix2 x1 add 2 sub iym 8 sub moveto
             2 8 rlineto  2 -8 rlineto closepath fill } if

j 2 eq {/iym iy0 yy j get exec add def
            /iyv iy0 yv j get exec add def
            /itc iy0  yv j get exec  add  yy j get exec
                                          yv j get exec sub  2 idiv add def
            /itn iy0  yy j get exec add 150
                      yy j get exec sub 2 idiv add def
            /itw iy0 yv j get exec 2 idiv add def
             ix2 x1 add 4 add itn 6 sub moveto (N) show
             ix2 x1 add 4 add itc 6 sub moveto (C) show
             ix2 x1 add 4 add itw 6 sub moveto (W) show
             ix2 x1 add 2 sub iym 8 add moveto
             2 -8 rlineto 2 8 rlineto closepath fill
             ix2 x1 add 2 sub iym 8 sub moveto
             2  8 rlineto  2 -8 rlineto closepath fill
             ix2 x1 add 2 sub iyv 8 add moveto
             2 -8 rlineto 2 8 rlineto closepath fill
             ix2 x1 add 2 sub iyv 8 sub moveto
             2  8 rlineto  2 -8 rlineto closepath fill } if
} for

/ty [(    0) (  51) (102) (153) (204) (255) ] def
/ix0 45 def /iy0 30 def
2 setlinewidth TBM

0.0 0.0 0.0 0.0 setcmyk_olvcolor %W
0 1 5 {/i exch def  %y-Achsen-Beschriftung
08 iy0 05 sub i 30 mul add moveto ty i get exec show } for

ix0 3 sub iy0 1 sub 273 2 fcolors 7 get exec colrecfi
ix0 1 sub iy0 3 sub 2 153 fcolors 7 get exec colrecfi
ix0 3 sub iy0 1 sub 150 add 273 2 fcolors 7 get exec colrecfi

0 30 150 {/iyd exch def
ix0 4 sub  iy0 1 sub iyd add 8 2 fcolors 07 get exec colrecfi
 } for %Schleife iyd

showpage
grestore

%%Trailer


%END INCLUDE TEST FILE at line 200
%***************************************

%%EndDocument
EndEPSFF grestore gsave

%} if %END xchart<=xchart3P10

%} for %pmetamf=0,1

showpage
grestore

%} for %colsepf=0,1

%} for %pchartf=0,0

%} for %xchartf=0,15

%} for %xcolorf=3,3

} for %deintpf=0,1

} for %colormf=0,1

%} for %lanindf=0,0

%%Trailer