%!PS-Adobe-3.0 EPSF-3.0 DM100/PK0X_FRAME_A4_F1_PK80.PS 20120401
%%BoundingBox: 70 82 786 592

/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:2012040112000)
  /ModDate (D:2012040112000)
/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*de382Fi
%***************** for 362 elementary hue angles
/hab*de382Fi 382 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*de382Fi im30 habe put %floating point
          } for %i=30,389
0 1 20 {/i exch def %i=0,20
        hab*de382Fi 360 i add hab*de382Fi i get 360 add put
       } for %i=0,20

%***************** 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*de382Fi 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_OUTLIN1Y_PK8000**********************************************************
%BEG DM10/OUTLIN1Y2_PK8000.PS Emty 20101101

%END DM10/OUTLIN1Y2_PK8000.PS Emty 20101101
%END_OUTLIN1Y_PK8000**********************************************************

%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 2 def /lanind2f 2 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-12,13-28
/xchart3f 01 def /xchart4f 3 def /xchart5f 00 def /xchart6f 01 def
/pchart1f 03 def /pchart2f 03 def /pchartdf 01 def %=3 for sRGB, Lr=0
/colsep1f 00 def /colsep2f 00 def /colsepdf 01 def
/pmetam1f 00 def /pmetam2f 00 def /pmetamdf 01 def

%/lanindf lanind1f def %
/lanindf lanind1f def %lanind1f laninddf lanind2f {/lanindf exch def

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

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

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

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

%/pchartf pchart1f def %
/pchartf pchart1f def %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 /xchart3P11 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 24600 0 rlineto 0 17220 rlineto
          -24600 0 rlineto closepath stroke
1800 -240 moveto
240 /Times-ISOL1 FS
lanindf cvishow (-) show
colormf cvishow
deintpf cvishow
xcolorf cvishow
xchartf cvishow
pchartf cvishow
colsepf cvishow (-F) show pmetamf cvishow
grestore
gsave

xchart xchart3P11 le {%BEG xchart<=xchart3P11

BeginEPSFF
 0 MM 0 MM translate
%%BeginDocument:
%***************************************
%line 199 %BEG INCLUDE TEST FILE at line 200

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

%%EndDocument
EndEPSFF grestore gsave

} if %xchart<=xchart3P11

%**************************************************
xchart xchart3P11 gt {%BEG xchart>xchart3P11

/n00 xchart3P11 1 add def    %rgb-LabCh*-tables at pages 3-12
/n01 n00 1 add def           %DE*-tables for 1080 colours at pages 13-28
/n02 n00 2 add def

xchart n00 eq {/n1 0 def /n2 57 def} if
xchart n01 eq {/n1 0 def /n2 53 def} if
xchart n02 ge {/n1 xchart n02 sub 81 mul def
               /n2 n1 80 add def
               n2 1079 ge {/n2 1079 def} if
              } if

72 90 translate
0.01 MM dup scale
0 0 0 setrgbcolor
0 0 moveto 24600 0 rlineto 0 17220 rlineto
          -24600 0 rlineto closepath stroke

240 /Times-ISOL1 FS
0 0 0 setrgbcolor
3600 -180 moveto
(DM100-7A, ) show
lanind 0 eq {(Seite ) show} if
lanind 1 ge {(Page ) show} if
xchart 1 add cvishow (/) show
xchartm cvishow
(-F) show %pmetam cvishow

/prog_rgb_dyF_LAB*'dyF
{%BEG prog_rgb_dyF_LAB*'dyF

/R01000 r_dyF 1000 mul def
/G01000 g_dyF 1000 mul def
/B01000 b_dyF 1000 mul def

R01000 0.04045 le  %equations of IEC 61966-2-1:2003
{/RsRGB R01000 12.92 div def}
{/RsRGB R01000 0.001 mul 0.055 add
  1.055 div 2.4 exp def} ifelse
G01000 0.04045 le
{/GsRGB G01000 12.92 div def}
{/GsRGB G01000 0.001 mul 0.055 add
  1.055 div 2.4 exp def} ifelse
B01000 0.04045 le
{/BsRGB B01000 12.92 div def}
{/BsRGB B01000 0.001 mul 0.055 add
  1.055 div 2.4 exp def} ifelse

/X*'dyF 0.4124 RsRGB mul 
        0.3576 GsRGB mul add
        0.1805 BsRGB mul add 88.59 mul def
/Y*'dyF 0.2126 RsRGB mul
        0.7152 GsRGB mul add
        0.0722 BsRGB mul add 88.59 mul def
/Z*'dyF 0.0193 RsRGB mul
        0.1192 GsRGB mul add
        0.9505 BsRGB mul add 88.59 mul def

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

/XQ X*'dyF XLWD65100 div def
/YQ Y*'dyF YLWD65100 div def
/ZQ Z*'dyF 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
/L*'dyF YQ 0.008856 lt {903.3 YQ mul}
        {YQ 0.33333333 exp 116 mul 16 sub} ifelse def
/a*'dyF 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 def
/b*'dyF 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 def
/C*'dyF a*'dyF dup mul
        b*'dyF dup mul add 0.0001 add sqrt def
/h*'dyF b*'dyF a*'dyF 0.0001 add atan def

} bind def %END prog_rgb_dyF_LAB*'dyF

%************************************************
/prog_rgb'*dyF_LAB'*dyF
{%BEG prog_rgb'*dyF_LAB'*dyF

/R01000 r'*dyF 1000 mul def
/G01000 g'*dyF 1000 mul def
/B01000 b'*dyF 1000 mul def

R01000 0.04045 le  %equations of IEC 61966-2-1:2003
{/RsRGB R01000 12.92 div def}
{/RsRGB R01000 0.001 mul 0.055 add
  1.055 div 2.4 exp def} ifelse
G01000 0.04045 le
{/GsRGB G01000 12.92 div def}
{/GsRGB G01000 0.001 mul 0.055 add
  1.055 div 2.4 exp def} ifelse
B01000 0.04045 le
{/BsRGB B01000 12.92 div def}
{/BsRGB B01000 0.001 mul 0.055 add
  1.055 div 2.4 exp def} ifelse

/X'*dyF 0.4124 RsRGB mul 
        0.3576 GsRGB mul add
        0.1805 BsRGB mul add 88.59 mul def
/Y'*dyF 0.2126 RsRGB mul
        0.7152 GsRGB mul add
        0.0722 BsRGB mul add 88.59 mul def
/Z'*dyF 0.0193 RsRGB mul
        0.1192 GsRGB mul add
        0.9505 BsRGB mul add 88.59 mul def

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

/XQ X'*dyF XLWD65100 div def
/YQ Y'*dyF YLWD65100 div def
/ZQ Z'*dyF 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
/L'*dyF YQ 0.008856 lt {903.3 YQ mul}
        {YQ 0.33333333 exp 116 mul 16 sub} ifelse def
/a'*dyF 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 def
/b'*dyF 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 def

/C'*dyF a'*dyF dup mul
        b'*dyF dup mul add 0.0001 add sqrt def
/h'*dyF b'*dyF a'*dyF 0.0001 add atan def

} bind def %END prog_rgb'*dyF_LAB'*dyF

%*****************************************************
/fakt 1.0 def
/fakt2 0.74 def %0.2
/iyt  250 fakt2 mul def %text size
/iyd  277 fakt2 mul def %line difference

/ixs0  00 fakt2 mul def
/ixs1 -10 fakt2 mul def
/ixs2  10 fakt2 mul def
/iys1 -25 fakt2 mul def
/iys2  25 fakt2 mul def
/iys3  35 fakt2 mul def
/iys4 -35 fakt2 mul def
/iytie iyt 50 fakt2 mul sub def


/nshow {iyt /Times-ISOL1 FS show} def
/kshow {iyt /TimesI-ISOL1 FS show} def
/bshow {iyt /TimesB-ISOL1 FS show} def
/jshow {iyt /TimesBI-ISOL1 FS show} def
/sshow {iyt /Symbol FS show} def

/nishow  {ixs1 iys1 rmoveto iytie /Times-ISOL1  FS show ixs2 iys2 rmoveto} def
/nishow0 {  00 iys1 rmoveto iytie /Times-ISOL1  FS show   00 iys2 rmoveto} def
/neshow  {ixs1 iys3 rmoveto iytie /Times-ISOL1  FS show ixs2 iys4 rmoveto} def
/neshow0 {  00 iys3 rmoveto iytie /Times-ISOL1  FS show   00 iys4 rmoveto} def
/ishow   {ixs1 iys1 rmoveto iytie /TimesB-ISOL1 FS show ixs2 iys2 rmoveto} def
/ishow0  {  00 iys1 rmoveto iytie /TimesB-ISOL1 FS show   00 iys2 rmoveto} def
/eshow   {  00 iys3 rmoveto iytie /TimesB-ISOL1 FS show   00 iys4 rmoveto} def

0 0 0 setrgbcolor

/imaxym 17220 def
/iymax  16700 def
/imaxy0 17000 def

colorm 0 eq deintp 0 eq and {/Txx (d) def} if %colorm=0, deintp=0
colorm 0 eq deintp 1 eq and {/Txx (e) def} if %colorm=0, deintp=1
colorm 1 eq deintp 0 eq and {/Txx (dd) def} if %colorm=1, deintp=0
colorm 1 eq deintp 1 eq and {/Txx (de) def} if %colorm=1, deintp=1
xchart 0 eq {/Txx (d) def} if %always independent of intended output

/RGB58M1_F 174 array def %58x3=174
/RGB58M1_F [%rgb data of 48+1 step colour circle + 9 step gray series = 58
1.000 0.000 0.000 %00 R00Y %R
1.000 0.125 0.000 %01 R13Y
1.000 0.250 0.000 %02 R25Y
1.000 0.375 0.000 %03 R38Y
1.000 0.500 0.000 %04 R50Y
1.000 0.625 0.000 %05 R63Y
1.000 0.750 0.000 %06 R75Y
1.000 0.875 0.000 %07 R88Y

1.000 1.000 0.000 %08 Y00G %Y
0.875 1.000 0.000 %09 Y13G
0.750 1.000 0.000 %10 Y25G
0.625 1.000 0.000 %11 Y38G
0.500 1.000 0.000 %12 Y50G
0.375 1.000 0.000 %13 Y63G
0.250 1.000 0.000 %14 Y75G
0.125 1.000 0.000 %15 Y88G

0.000 1.000 0.000 %16 G00C %G
0.000 1.000 0.125 %17 G13C
0.000 1.000 0.250 %18 G25C
0.000 1.000 0.375 %19 G38C
0.000 1.000 0.500 %20 G50C
0.000 1.000 0.625 %21 G63C
0.000 1.000 0.750 %22 G75C
0.000 1.000 0.875 %23 G88C

0.000 1.000 1.000 %24 C00B %C
0.000 0.875 1.000 %25 C13B
0.000 0.750 1.000 %26 C25B
0.000 0.625 1.000 %27 C38B
0.000 0.500 1.000 %28 C50B
0.000 0.375 1.000 %29 C63B
0.000 0.250 1.000 %30 C75B
0.000 0.125 1.000 %31 C88B

0.000 0.000 1.000 %32 B00M %B
0.125 0.000 1.000 %33 B13M
0.250 0.000 1.000 %34 B25M
0.375 0.000 1.000 %35 B38M
0.500 0.000 1.000 %36 B50M
0.625 0.000 1.000 %37 B63M
0.750 0.000 1.000 %38 B75M
0.875 0.000 1.000 %39 B88M

1.000 0.000 1.000 %40 M00R %M
1.000 0.000 0.875 %41 M13R
1.000 0.000 0.750 %42 M25R
1.000 0.000 0.625 %43 M38R
1.000 0.000 0.500 %44 M50R
1.000 0.000 0.375 %45 M63R
1.000 0.000 0.250 %46 M75R
1.000 0.000 0.125 %47 M88R

1.000 0.000 0.000 %48 R00Y %R

0.000 0.000 0.000 %49 N00Wd %ncolors
0.125 0.125 0.125 %50 N13Wd
0.250 0.250 0.250 %51 N25Md
0.375 0.375 0.375 %52 N38Wd
0.500 0.500 0.500 %53 N50Wd
0.625 0.625 0.625 %54 N63Wd
0.750 0.750 0.750 %55 N75Wd
0.875 0.875 0.875 %56 N88Wd
1.000 1.000 1.000 %57 W00Nd = W
] def

/RGB58M1t_F 58 array def %48+1 step colour circle and 9 step grey steps = 58
/RGB58M1t_F [%high chromatic series:
%relative hue h*, brillance i*, and chroma c*
%range 0 ... 100
(R00Y_100_100) (R13Y_100_100) (R25Y_100_100) (R38Y_100_100)
(R50Y_100_100) (R63Y_100_100) (R75Y_100_100) (R88Y_100_100)
(Y00G_100_100) (Y13G_100_100) (Y25G_100_100) (Y38G_100_100)
(Y50G_100_100) (Y63G_100_100) (Y75G_100_100) (Y88G_100_100)
(G00C_100_100) (G13C_100_100) (G25C_100_100) (G38C_100_100)
(G50C_100_100) (G63C_100_100) (G75C_100_100) (G88C_100_100)
(C00B_100_100) (C13B_100_100) (C25B_100_100) (C38B_100_100)
(C50B_100_100) (C63B_100_100) (C75B_100_100) (C88B_100_100)
(B00M_100_100) (B13M_100_100) (B25M_100_100) (B38M_100_100)
(B50M_100_100) (B63M_100_100) (B75M_100_100) (B88M_100_100)
(M00R_100_100) (M13R_100_100) (M25R_100_100) (M38R_100_100)
(M50R_100_100) (M63R_100_100) (M75R_100_100) (M88R_100_100)
(R00Y_100_100)
%gray series
(NW_000) (NW_013) (NW_025) (NW_038)
(NW_050) (NW_063) (NW_075) (NW_088)
(NW_100)
] def

/RGB54CR_F 162 array def %54x3=162
/RGB54CR_F [%54 colours of colour rendering (CR) test chart
1.000   0.000   0.000  %01 R00Yd %RGB54CR
1.000   0.250   0.000  %02 R25Yd
1.000   0.500   0.000  %03 R50Yd
1.000   0.750   0.000  %04 R75Yd
1.000   1.000   0.000  %05 Y00Gd
0.750   1.000   0.000  %06 Y25Gd
0.500   1.000   0.000  %07 Y50Gd
0.250   1.000   0.000  %08 Y75Gd
0.000   1.000   0.000  %09 G00Bd = 10
          
0.000   1.000   0.000  %10 G00Bd
0.000   1.000   0.500  %11 G25Bd
0.000   1.000   1.000  %12 G50Bd
0.000   0.500   1.000  %13 G75Bd
0.000   0.000   1.000  %14 B00Rd
0.500   0.000   1.000  %15 B25Rd
1.000   0.000   1.000  %16 B50Rd
1.000   0.000   0.500  %17 B75Rd
1.000   0.000   0.000  %18 R00Yd = 01

1.000   0.500   0.500  %19 R00Yd %lcolors
1.000   0.750   0.500  %20 R50Yd
1.000   1.000   0.500  %21 Y00Gd
0.750   1.000   0.500  %22 Y50Gd
0.500   1.000   0.500  %23 G00Bd
0.500   1.000   1.000  %24 G50Bd
0.500   0.500   1.000  %25 B00Rd
1.000   0.500   1.000  %26 B50Rd
1.000   0.500   0.500  %27 R00Yd = 19

0.750   0.250   0.250  %28 R00Yd %zcolors
0.750   0.500   0.250  %29 R50Yd
0.750   0.750   0.250  %30 Y00Gd
0.500   0.750   0.250  %31 Y50Gd
0.250   0.750   0.250  %32 G00Bd
0.250   0.750   0.750  %33 G50Bd
0.250   0.250   0.750  %34 B00Rd
0.750   0.250   0.750  %35 B50Rd
0.750   0.250   0.250  %36 R00Yd = 28

0.500   0.000   0.000  %37 R00Yd %dcolors
0.500   0.250   0.000  %38 R50Yd
0.500   0.500   0.000  %38 Y00Gd
0.250   0.500   0.000  %40 Y50Gd
0.000   0.500   0.000  %41 G00Bd
0.000   0.500   0.500  %42 G50Bd
0.000   0.000   0.500  %43 B00Rd
0.500   0.000   0.500  %44 B50Rd
0.500   0.000   0.000  %45 R00Yd = 37

0.000   0.000   0.000  %46 N00Wd %ncolors
0.125   0.125   0.125  %47 N13Wd
0.250   0.250   0.250  %48 N25Md
0.375   0.375   0.375  %49 N38Wd
0.500   0.500   0.500  %50 N50Wd
0.625   0.625   0.625  %51 N63Wd
0.750   0.750   0.750  %52 N75Wd
0.875   0.875   0.875  %53 N88Wd
1.000   1.000   1.000  %54 W00Nd = W
] def %54 colours of colour rendering test chart

/RGB54CRt_F 54 array def
/RGB54CRt_F [%high chromatic series:
%relative hue h*, brillance i*, and chroma c*, range 0 ... 100
(R00Y_100_100) (R25Y_100_100) (R50Y_100_100) (R75Y_100_100)
(Y00G_100_100) (Y25G_100_100) (Y50G_100_100) (Y75G_100_100)
(G00B_100_100)
(G00B_100_100) (G25B_100_100) (G50B_100_100) (G75B_100_100)
(B00M_100_100) (B25R_100_100) (B50R_100_100) (B75R_100_100)
(R00Y_100_100)
%whitetish series
(R00Y_100_050) (R50Y_100_050) (Y00G_100_050) (Y50G_100_050)
(G00B_100_050) (G50B_100_050) (B00R_100_050) (B50R_100_050) 
(R00Y_100_050)
%grayish series
(R00Y_075_050) (R50Y_075_050) (Y00G_075_050) (Y50G_075_050)
(G00B_075_050) (G50B_075_050) (B00R_075_050) (B50R_075_050) 
(R00Y_075_050)
%blackish series
(R00Y_050_050) (R50Y_050_050) (Y00G_050_050) (Y50G_050_050)
(G00B_050_050) (G50B_050_050) (B00R_050_050) (B50R_050_050) 
(R00Y_050_050)
%gray series
(NW_000) (NW_013) (NW_025) (NW_038)
(NW_050) (NW_063) (NW_075) (NW_088)
(NW_100)
] def

/jCRi 54 array def
/jCRi %jCRi
[ 648 %R00Y_100_100 1.00 0.00 0.00 01 %chromatic 16 step hue
  666 %R25Y_100_100 1.00 0.25 0.00 02
  684 %R50Y_100_100 1.00 0.50 0.00 03
  702 %R75Y_100_100 1.00 0.75 0.00 04

  720 %Y00G_100_100 1.00 1.00 0.00 05
  558 %Y25G_100_100 0.75 1.00 0.00 06
  396 %Y50G_100_100 0.50 1.00 0.00 07
  234 %Y75G_100_100 0.25 1.00 0.00 08

  072 %G00B_100_100 0.00 1.00 0.00 09=10

  072 %G00B_100_100 0.00 1.00 0.00 10 %chromatic 16 step hue
  076 %G25B_100_100 0.00 1.00 0.50 11
  080 %G50B_100_100 0.00 1.00 1.00 12
  044 %G75B_100_100 0.00 0.50 1.00 13

  008 %B00R_100_100 0.00 0.00 1.00 14
  332 %B25R_100_100 0.50 0.00 1.00 15
  656 %B50R_100_100 1.00 0.00 1.00 16
  652 %B75R_100_100 1.00 0.00 0.50 17

  648 %R00Y_100_100 1.00 0.00 0.00 18=01

  688 %R00Y_100_050 1.00 0.50 0.50 19 %whitish 8 step hue
  706 %R50Y_100_050 1.00 0.75 0.50 20
  724 %Y00G_100_050 1.00 1.00 0.50 21
  562 %Y50G_100_050 0.75 1.00 0.50 22

  400 %G00B_100_050 0.50 1.00 0.50 23
  404 %G50B_100_050 0.50 1.00 1.00 24
  368 %B00R_100_050 0.50 0.50 1.00 25
  692 %B50R_100_050 1.00 0.50 1.00 26

  688 %R00Y_100_050 1.00 0.50 0.50 27=19

  506 %R00Y_075_050 0.75 0.25 0.25 28 %greyish 8 step hue
  524 %R50Y_075_050 0.75 0.50 0.25 29
  542 %Y00G_075_050 0.75 0.75 0.25 30
  380 %Y50G_075_050 0.50 0.75 0.25 31

  218 %G00B_075_050 0.25 0.75 0.25 32
  222 %G50B_075_050 0.25 0.75 0.75 33
  186 %B00R_075_050 0.25 0.25 0.75 34
  510 %B50R_075_050 0.75 0.25 0.75 35

  506 %R00Y_075_050 0.75 0.25 0.25 36=28

  324 %R00Y_050_050 0.50 0.00 0.00 37 %blackish 8 step hue
  342 %R50Y_050_050 0.50 0.25 0.00 38
  360 %Y00G_050_050 0.50 0.50 0.00 39
  198 %Y50G_050_050 0.25 0.50 0.00 40

  036 %G00B_050_050 0.00 0.50 0.00 41
  040 %G50B_050_050 0.00 0.50 0.50 42
  004 %B00R_050_050 0.00 0.00 0.50 43
  328 %B50R_050_050 0.50 0.00 0.50 44
  
  324 %R00Y_050_050 0.50 0.00 0.00 45=37
  
  000 %NW_000    0.000 0.000 0.000 46 %grey 9 steps
  091 %NW_013    0.125 0.125 0.125 47
  182 %NW_025    0.250 0.250 0.250 48
  273 %NW_038    0.375 0.375 0.375 49
  364 %NW_050    0.500 0.500 0.500 50
  455 %NW_063    0.625 0.625 0.625 51
  546 %NW_075    0.750 0.750 0.750 52
  637 %NW_088    0.875 0.875 0.875 53
  728 %NW_100    1.000 1.000 1.000 54
] def %END jCRi

/SUMDE*' 0 def
/SUMDE'* 0 def

n1 1 n2 {/n exch def %n=n1,n2
         /n30 n 3 mul def /n31 n30 1 add def /n32 n30 2 add def
         xchart n00 eq {%48+1=49 step colour circle + 9 gray steps=58 steps
                        /hcolort RGB58M1t_F n get def
                        RGB58M1_F n30 get %real
                        RGB58M1_F n31 get
                        RGB58M1_F n32 get
                       } if %48 step colour circle
         xchart n01 eq {%45 colour rendering (CR) + 9 grey steps = 54 steps
                        /hcolort RGB54CRt_F n get def
                        RGB54CR_F n30 get %real
                        RGB54CR_F n31 get
                        RGB54CR_F n32 get
                       } if %54 colour rendering colours
         xchart n02 ge {%1080 standard colours
                        /r_RGBF RGB0_F n30 get 1000 div def
                        /g_RGBF RGB0_F n31 get 1000 div def
                        /b_RGBF RGB0_F n32 get 1000 div def
                        
                        /hsiRGBF r_RGBF 030 sin mul
                                 g_RGBF 150 sin mul add
                                 b_RGBF 270 sin mul add %y_e
                                 r_RGBF 030 cos mul
                                 g_RGBF 150 cos mul add %x_e
                                 0.0001 add atan 0.5 add cvi def %range 0..360
                        hsiRGBF 30 lt 
                        {/hsiRGBF hsiRGBF 30 add def} if %range 30..390

                        hsiRGBF 030 ge hsiRGBF 090 le and 
                           {/u_100 hsiRGBF 030 sub 060 div 100 mul def
                            /u1_RGYB (R) def /u2_RGYB (Y) def} if
                        hsiRGBF 090 ge hsiRGBF 150 le and 
                           {/u_100 hsiRGBF 090 sub 060 div 100 mul def
                            /u1_RGYB (Y) def /u2_RGYB (G) def} if
                        hsiRGBF 150 ge hsiRGBF 270 le and 
                           {/u_100 hsiRGBF 150 sub 120 div 100 mul def
                            /u1_RGYB (G) def /u2_RGYB (B) def} if
                        hsiRGBF 270 ge hsiRGBF 390 le and 
                           {/u_100 hsiRGBF 270 sub 120 div 100 mul def
                            /u1_RGYB (B) def /u2_RGYB (R) def} if

                        %calculation of i_RGBF, c_RGBF, and t_RGBF
                         /maxd r_RGBF def
                         g_RGBF maxd gt {/maxd g_RGBF def} if
                         b_RGBF maxd gt {/maxd b_RGBF def} if
                         /mind r_RGBF def
                         g_RGBF mind lt {/mind g_RGBF def} if
                         b_RGBF mind lt {/mind b_RGBF def} if
                         /I_RGBF maxd 100 mul def
                         /C_RGBF maxd mind sub 100 mul def
                         /T_RGBF I_RGBF C_RGBF 0.5 mul sub def                        

                        r_RGBF g_RGBF b_RGBF %for setrgbcolor
                       } if %1080 standard colours

         setrgbcolor %default to create data
%setrgbcolor calculates data for output in "FF_LM_de_setrgbcolor_F"
%colorm=0 calculates: rgb_dyF, rgb*dyF, LAB*dyF,      ,cmyk*dyF      and more
%colorm=1 calculates: rgb_dyF, rgb*dyF, LAB*dyF', rgb'*dyF, cmyk*dyF and more

       /r_xF r_dyF def
       /g_xF g_dyF def
       /b_xF b_dyF def

       /i_xF i_dyF def
       /c_xF c_dyF def
       /t_xF t_dyF def
       
       /r*xF r*dyF def
       /g*xF g*dyF def
       /b*xF b*dyF def

       /LAB*LxF LAB*LdyF def
       /LAB*axF LAB*adyF def
       /LAB*bxF LAB*bdyF def
       /LAB*CxF LAB*adyF dup mul
                LAB*bdyF dup mul add 0.0001 add sqrt def
       /LAB*hxF LAB*bdyF LAB*adyF 0.0001 add atan def

       colorm 0 eq {%colorm=0
                    %prog_rgb_dyF_LAB*'dyF uses rgb_dyF by default
                    %calculates output data according to IEC 61966-2-1
                    prog_rgb_dyF_LAB*'dyF
                    
                    /LAB*'LxF L*'dyF def
                    /LAB*'axF a*'dyF def
                    /LAB*'bxF b*'dyF def
                    /LAB*'CxF C*'dyF def
                    /LAB*'hxF h*'dyF def

                    /DE*' LAB*'LxF LAB*LxF sub dup mul
                          LAB*'axF LAB*axF sub dup mul add
                          LAB*'bxF LAB*bxF sub dup mul add
                          0.0001 add sqrt def
                   /SUMDE*' SUMDE*' DE*' add def
                   } if %colorm=0
                   
       colorm 1 eq {%colorm=1
                    /r'*xF r'*dyF def
                    /g'*xF g'*dyF def
                    /b'*xF b'*dyF def
                    
                    %calculates output data according to IEC 61966-2-1
                    prog_rgb'*dyF_LAB'*dyF
                    
                    /LAB'*LxF L'*dyF def
                    /LAB'*axF a'*dyF def
                    /LAB'*bxF b'*dyF def
                    /LAB'*CxF C'*dyF def
                    /LAB'*hxF h'*dyF def

                    /DE'* LAB'*LxF LAB*LxF sub dup mul
                          LAB'*axF LAB*axF sub dup mul add
                          LAB'*bxF LAB*bxF sub dup mul add
                          0.0001 add sqrt def
                    /SUMDE'* SUMDE'* DE'* add def
                    
                   } if %colorm=1
       
       /hsi_xF hsiF def
       
%       /c4*F c4*Fa def
%       /m4*F m4*Fa def
%       /y4*F y4*Fa def
%       /n4*F n4*Fa def
       
       /r*xM r*dyM def
       /g*xM g*dyM def
       /b*xM b*dyM def

       /LAB*LxM LAB*LdyM def
       /LAB*axM LAB*adyM def
       /LAB*bxM LAB*bdyM def
       /LAB*CxM LAB*adyM dup mul
                LAB*bdyM dup mul add 0.0001 add sqrt def
       /LAB*hxM LAB*bdyM LAB*adyM 0.0001 add atan def
       
       /hsi_xM hsiM def
       
       0 setgray

       xchart n00 eq {/nx n 8 idiv def
                      n 49 ge {/nx nx 1 add def} if
                      n 56 ge {/nx nx 1 sub def} if
                     } if
       xchart n01 eq {/nx n 9 idiv def} if
       xchart n02 ge {/nx 0 def} if

       /iydn iymax n n1 sub nx add iyd mul sub def
       n n1 eq {%n=n1
               00050 imaxy0 moveto (n) jshow
               xchart n00 eq {(/j) show} if
               xchart n01 eq {(/j) show} if
               xchart n02 eq {(=j) show} if
               00700 imaxy0 moveto (HIC*) bshow (F) ishow0 Txx ishow0
               02300 imaxy0 moveto (rgb) jshow (_F) ishow0 
                                               Txx ishow0
               04200 imaxy0 moveto (ict) jshow (_F) ishow0 Txx ishow0
               06100 imaxy0 moveto (h) jshow (si_F,) ishow0 Txx ishow0
               06700 imaxym moveto 0 imaxym neg rlineto stroke
               06800 imaxy0 moveto (rgb*) jshow (F) ishow0 Txx ishow0
               08700 imaxy0 moveto (LabCh*) jshow (F) ishow0
                                             Txx ishow0
               12100 imaxym moveto 0 imaxym neg rlineto stroke
               colorm 0 eq {%colorm=1
                            12200 imaxy0 moveto (rgb*') jshow 
                                                (F) ishow0 Txx ishow0
                            14100 imaxy0 moveto (LabCh*') jshow (F) ishow0
                                                Txx ishow0
                            17600 imaxy0 moveto (DE*') jshow (F) ishow0
                                                Txx ishow0
                           } if %colorm=0
               colorm 1 eq {%colorm=1
                            12200 imaxy0 moveto (rgb'*) jshow 
                                                (F) ishow0 Txx ishow0
                            14100 imaxy0 moveto (LabCh'*) jshow (F) ishow0
                                                Txx ishow0
                            17600 imaxy0 moveto (DE'*) jshow (F) ishow0
                                                Txx ishow0
                           } if %colorm=1

%               15100 imaxy0 moveto (cmyn*) jshow (sep,) ishow0
%                                   (F) ishow0 Txx ishow0

               18300 imaxy0 moveto (h) jshow (siM,) ishow0 Txx ishow0
               18900 imaxym moveto 0 imaxym neg rlineto stroke
               19000 imaxy0 moveto (rgb*) jshow (M) ishow0 Txx ishow0
               20900 imaxy0 moveto (LabCh*) jshow (M) ishow0 
                                   Txx ishow0
               () nshow
               } if %n=n1

             00050 iydn moveto n cvishow
             xchart n00 eq {%xchart=n00
                            n 48 le {%n<=48
                                     (/) show M1jx n get cvishow
                                    }%n<=48
                                    {%n>48
                                     (/) show jCRi n 4 sub get cvishow
                                    } ifelse
                           } if %xchart=n00
             xchart n01 eq {(/) show jCRi n get cvishow} if
             00700 iydn moveto 
             xchart n01 le 
             {hcolort show Txx ishow0 () nshow} if

             xchart n02 ge 
             {%xchart>n02

              C_RGBF 0 eq
              {%ifelse achromatic
               (NW) show
               (_) show I_RGBF cvi 9 le {(00) show} if %filling cero
                        I_RGBF cvi  9 gt
                        I_RGBF cvi 99 le and {(0) show } if %range 0..100
                        I_RGBF cvi 6 string cvs show
              }%ifelse achromatic           

              {%ifelse chromatic
               u1_RGYB show
               %filling cero range 0..99
               u_100 cvi 9 le {(0) show} if %filling cero 
               u_100 cvi cvi 6 string cvs show
               u2_RGYB show 
               (_) show I_RGBF cvi 9 le {(00) show} if %filling cero
                        I_RGBF cvi  9 gt
                        I_RGBF cvi 99 le and {(0) show } if %range 0..100
                        I_RGBF cvi 6 string cvs show
               (_) show C_RGBF 9 le          {(00) show} if %filling cero
                        C_RGBF cvi  9 gt 
                        C_RGBF cvi 99 le and {(0) show } if %range 0..100
                        C_RGBF cvi 6 string cvs show
              } ifelse %ifelse chromatic
             Txx ishow0 () nshow

             } if %xchart>n02

             02300 iydn moveto r_xF cvsshow3
             02900 iydn moveto g_xF cvsshow3
             03500 iydn moveto b_xF cvsshow3

             04200 iydn moveto i_xF cvsshow3
             04800 iydn moveto c_xF cvsshow3
             05400 iydn moveto t_xF cvsshow3

             06100 iydn moveto hsi_xF cvishow

             06800 iydn moveto r*xF cvsshow3
             07400 iydn moveto g*xF cvsshow3
             08000 iydn moveto b*xF cvsshow3

             08700 iydn moveto LAB*LxF cvsshow1
             09400 iydn moveto LAB*axF cvsshow1
             10100 iydn moveto LAB*bxF cvsshow1
             10800 iydn moveto LAB*CxF cvsshow1
             11500 iydn moveto LAB*hxF cvsshow1

             colorm 0 eq {%colorm=0
                          12200 iydn moveto r_xF cvsshow3
                          12800 iydn moveto g_xF cvsshow3
                          13400 iydn moveto b_xF cvsshow3

                          14100 iydn moveto LAB*'LxF cvsshow1
                          14800 iydn moveto LAB*'axF cvsshow1
                          15500 iydn moveto LAB*'bxF cvsshow1
                          16200 iydn moveto LAB*'CxF cvsshow1
                          16900 iydn moveto LAB*'hxF cvsshow1

                          17600 iydn moveto DE*' cvsshow1

                         } if %colorm=0

             colorm 1 eq {%colorm=1
                          12200 iydn moveto r'*xF cvsshow3
                          12800 iydn moveto g'*xF cvsshow3
                          13400 iydn moveto b'*xF cvsshow3

                          14100 iydn moveto LAB'*LxF cvsshow1
                          14800 iydn moveto LAB'*axF cvsshow1
                          15500 iydn moveto LAB'*bxF cvsshow1
                          16200 iydn moveto LAB'*CxF cvsshow1
                          16900 iydn moveto LAB'*hxF cvsshow1

                          17600 iydn moveto DE'* cvsshow1

                         } if %colorm=1

             18300 iydn moveto hsi_xM cvishow

             19000 iydn moveto r*xM cvsshow3
             19600 iydn moveto g*xM cvsshow3
             20200 iydn moveto b*xM cvsshow3

             20900 iydn moveto LAB*LxM cvsshow1
             21600 iydn moveto LAB*axM cvsshow1
             22300 iydn moveto LAB*bxM cvsshow1
             23000 iydn moveto LAB*CxM cvsshow1
             23700 iydn moveto LAB*hxM cvsshow1


} for %n=n1,n2

n2 57 eq
n2 53 eq or
n2 80 ge n2 1079 lt and or
n2 1079 eq or {%n2=57,53,80,161,...,1052,1079

/iydn iymax n 1 add n1 sub nx add iyd mul sub def
12500 iydn moveto
lanind 1 eq {(Mean color difference of this page:) bshow} if
lanind 0 eq {(Mitttlere Farbdifferenz dieser Seite: ) bshow} if
16600 iydn moveto (delta )  bshow
                  colorm 0 eq {(E*' =) jshow}
                              {(E'* =) jshow} ifelse () bshow
colorm 0 eq {%colorm=0
             17600 iydn moveto SUMDE*' n2 n1 sub 1 add div cvsshow1
            }%colorm=0
            {%colorm=1
             17600 iydn moveto SUMDE'* n2 n1 sub 1 add div cvsshow1
            } ifelse %colorm=1

} if %n2=57,53,80,161, ...,1052,1079

} if %END xchart>xchart3P11
%*****************************************************

%} 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