home *** CD-ROM | disk | FTP | other *** search
/ VRML Tools for 3D Cyberspace / VRML_Tools_For_3D_Cyberspace.iso / t_space2 / set56 < prev    next >
Text File  |  1996-07-01  |  22KB  |  1,632 lines

  1. %%BeginResource: procset Adobe_blend_AI5 1.3 0
  2. %%Title: (Adobe Illustrator (R) Version 5.0 Blend ProcSet)
  3. %%Version: 1.3 0
  4. %%CreationDate: (11/19/93) ()
  5. %%Copyright: ((C) 1987-1993 Adobe Systems Incorporated All Rights Reserved)
  6. userdict /defaultpacking currentpacking put true setpacking
  7. userdict /Adobe_blend_AI5 68 dict dup begin
  8. put
  9. /bd
  10. {
  11.     bind def
  12. } bind def
  13. /xs
  14. {
  15.     exch store
  16. } bd
  17. /nullProc
  18. {
  19.     {
  20.     }
  21. } def
  22. /initialize
  23. {
  24.     pop pop
  25.     Adobe_blend_AI5 begin
  26.     Adobe_blend_AI5_vars begin
  27.     /invertXfer
  28.     {
  29.         [
  30.         {
  31.             1 exch sub
  32.         } /exec load systemdict /currenttransfer get exec /exec load
  33.         ] cvx systemdict /settransfer get exec
  34.     } bd
  35. } bd
  36. /terminate
  37. {
  38.     currentdict Adobe_blend_AI5_vars eq
  39.     {
  40.      end
  41.         currentdict Adobe_blend_AI5 eq
  42.         {
  43.          end
  44.         } if
  45.     } if
  46. } bd
  47. /nullString () def
  48. /zeroStringAry 256 string def
  49. /dpiThreshold 600 def
  50. /tRectOK? deviceDPI dpiThreshold le currentscreen pop pop 150 le and def
  51. /d255 256 array def
  52. 0 1 255
  53. {
  54.     d255 exch dup 255 div put
  55. } bind for
  56. /dUserSpace matrix defaultmatrix def
  57. currentdict /Adobe_blend_AI5_vars 75 dict dup begin
  58. put
  59. {
  60.     /f /F /s /S /b /B
  61. }
  62. {
  63.     null def
  64. } bind forall
  65. /byte 1 string def
  66. /sSave null def
  67. /setSSave
  68. {
  69.     save /sSave exch store
  70. } bind def
  71. /Bm null def
  72. /doBlend null def
  73. /startC? false def
  74. /endC? false def
  75. /fCMYK? null def
  76. /startTint 0 def
  77. /endTint 0 def
  78. /bSMatrix matrix def
  79. /bUMatrix matrix def
  80. /dMatrix matrix def
  81. /inLine? true def
  82. /pTState? false def
  83. %/white? false def
  84. /bHi? false def
  85. /yHi 0 def
  86. /xHi 0 def
  87. /noImg /lv1Fix where {pop lv1Fix} {false} ifelse def
  88. [
  89. /tint1Data
  90. /tint2Data
  91. /bAxis
  92. /ubAxis
  93. /pChange
  94. /optimize?
  95. /nSamples
  96. /sInc
  97. /blendProc
  98. /_bn
  99. /xBCInc
  100. /yBCInc
  101. /bInc
  102. /bRender
  103. /cBName
  104. /cBType
  105. /nColors
  106. /color?
  107. /blend?
  108. /colorType
  109. /cData
  110. /cDataLen
  111. /bDataLen
  112. /rampPoint
  113. /midPoint
  114. /endPoint
  115. /blendLength
  116. /blackData
  117. /yeData
  118. /mgData
  119. /cyData
  120. /cnt1
  121. /ndx
  122. /_fill
  123. /tmp
  124. counttomark
  125. {
  126.     null def
  127. } bind
  128. repeat
  129. pop
  130. currentdict
  131. end
  132. currentdict
  133. end
  134. exch
  135. begin
  136. begin
  137. /unitSq
  138. {
  139.     0 0 moveto 0 1 lineto 1 1 lineto 1 0 lineto closepath
  140. } bd
  141. /gMark
  142. {
  143.     counttomark 2 add -1 roll
  144. } bd
  145. /ccAry1 5 array def
  146. /setCustomColor
  147. {
  148.     1 exch sub 6 1 roll
  149.     ccAry1 astore
  150.     exch setcustomcolor
  151. } bd
  152. /setBSpace
  153. {
  154.     newpath bUMatrix astore concat unitSq
  155. } bd
  156. /setCStop
  157. {
  158.     dup 0 eq
  159.     {
  160.         pop
  161.         setgray
  162.     }
  163.     {
  164.         1 eq
  165.         {
  166.             setcmykcolor
  167.         }
  168.         {
  169.             composite? not colorType 2 lt and
  170.             {
  171.                 forceCMYK
  172.             }
  173.             {
  174.                 setCustomColor
  175.             } ifelse
  176.         } ifelse
  177.     } ifelse
  178. } bd
  179. /makeByte
  180. {
  181.     /tmp 0 store
  182.     255 mul cvi
  183.     8 string 8
  184.     {
  185.         dup tmp 3 index put /tmp tmp 1 add store
  186.     } repeat
  187.     exch pop
  188. } bd
  189. /setImgSpace
  190. {
  191.     cDataLen 1 8
  192.     2 index 0 0 1 0 0 dMatrix astore
  193. } bd
  194. /blendImg
  195. {
  196.     setImgSpace cData systemdict /image get
  197.     {
  198.         exec
  199.     } stopped
  200.     {
  201.         $error /errorname get /undefinedresult ne
  202.         {
  203.             stop
  204.         }
  205.         {
  206.             pop pop pop pop pop
  207.         } ifelse
  208.     } if
  209. } bd
  210. level2?
  211. {
  212.     /bFill
  213.     {
  214.         _fill
  215.     } def
  216.     /bCImg
  217.     {
  218.         /cDataLen bDataLen store
  219.         setImgSpace
  220.         cyData mgData yeData cData
  221.         mCMYKData
  222.         true 4
  223.         {
  224.             doCImg
  225.         } stopped
  226.         {
  227.             $error /errorname get /undefinedresult ne
  228.             {
  229.                 stop
  230.             }
  231.             {
  232.                 10
  233.                 {
  234.                     pop
  235.                 } repeat
  236.             } ifelse
  237.         } if
  238.     } bd
  239. } if
  240. /colorimage where dup
  241. {
  242.     exch pop
  243.     /doCImg /colorimage load def
  244.     /mCMYKData
  245.     {
  246.         4
  247.         {
  248.             dup type /stringtype ne
  249.             {
  250.                 cDataLen string
  251.                 exch
  252.                 dup 0 ne
  253.                 {
  254.                     255 mul cvi
  255.                     0 1 cDataLen 1 sub
  256.                     {
  257.                         3 copy
  258.                         exch put pop
  259.                     } for
  260.                 } if
  261.                 pop
  262.             } if
  263.             4 1 roll
  264.         } repeat
  265.     } bd
  266. } if
  267. not
  268. {
  269.     /mCMYKData nullProc def
  270.     /doCImg
  271.     {
  272.         pop pop
  273.         setSSave
  274.         /blackData xs
  275.         /yeData xs
  276.         /mgData xs
  277.         /cyData xs
  278.         /cnt1 0 store
  279.         [
  280.         byte dup 0
  281.         cyData dup type /stringtype eq
  282.         {
  283.             /cnt1 cvx /get cvx d255 /exch cvx /get cvx .3 /mul cvx
  284.         }
  285.         {
  286.             .3 mul
  287.         } ifelse
  288.         mgData dup type /stringtype eq
  289.         {
  290.             /cnt1 cvx /get cvx d255 /exch cvx /get cvx .59 /mul cvx
  291.         }
  292.         {
  293.             .59 mul
  294.         } ifelse
  295.         yeData dup type /stringtype eq
  296.         {
  297.             /cnt1 cvx /get cvx d255 /exch cvx /get cvx .11 /mul cvx
  298.         }
  299.         {
  300.             .11 mul
  301.         } ifelse
  302.         blackData dup type /stringtype eq
  303.         {
  304.             /cnt1 cvx /get cvx d255 /exch cvx /get cvx
  305.         } if
  306.         /add cvx /add cvx /add cvx 1 /exch cvx /sub cvx
  307.         /dup cvx 0 /lt cvx
  308.         {
  309.             pop 0
  310.         } /if cvx
  311.         /dup cvx 1 /gt cvx
  312.         {
  313.             pop 1
  314.         } /if cvx
  315.         255 /mul cvx /cvi cvx
  316.         256 /mod cvx
  317.         /dup cvx 0 /lt cvx
  318.         {
  319.             pop 0
  320.         } /if cvx
  321.         /put cvx
  322.         /cnt1 dup cvx 1 /add cvx /store cvx
  323.         ] cvx
  324.         bind
  325.         systemdict /image get exec
  326.         sSave restore
  327.     } bd
  328. } if
  329. level2? not
  330. {
  331.     /bCImg
  332.     {
  333.         /cDataLen bDataLen store
  334.         setImgSpace
  335.         cyData mgData yeData cData
  336.         setSSave
  337.         mCMYKData
  338.         true 4
  339.         {
  340.             doCImg
  341.         } stopped
  342.         {
  343.             $error /errorname get /undefinedresult ne
  344.             {
  345.                 stop
  346.             }
  347.             {
  348.                 10
  349.                 {
  350.                     pop
  351.                 } repeat
  352.             } ifelse
  353.         } if
  354.         sSave restore
  355.     } bd
  356.     /bwFill
  357.     {
  358.         setSSave
  359.         /cDataLen 8 store
  360.         /cData currentgray makeByte store
  361.         blendImg
  362.         sSave restore
  363.     } bd
  364.     /c1ImgFill
  365.     {
  366.         setSSave
  367.         /cDataLen 8 store
  368.         setImgSpace
  369.         currentcmykcolor
  370.         4
  371.         {
  372.             makeByte 8 string copy 4 1 roll
  373.         } repeat
  374.         true 4
  375.         {
  376.             doCImg
  377.         } stopped
  378.         {
  379.             $error /errorname get /undefinedresult ne
  380.             {
  381.                 stop
  382.             }
  383.             {
  384.                 10
  385.                 {
  386.                     pop
  387.                 } repeat
  388.             } ifelse
  389.         } if
  390.         sSave restore
  391.     } bd
  392.     /bFill
  393.     noImg
  394.     {
  395.         {
  396.             _fill
  397.         }
  398.     }
  399.     {
  400.         {
  401.             color?
  402.             {
  403.                 c1ImgFill
  404.             }
  405.             {
  406.                 bwFill
  407.             } ifelse
  408.         }
  409.     } ifelse
  410.     bd
  411. } if
  412. composite?
  413. {
  414.     /bCFun
  415.     {
  416.         color?
  417.         {
  418.             cyData dup type /stringtype eq
  419.             {
  420.                 /ndx cvx /get cvx d255 /exch cvx /get cvx
  421.             } if
  422.             mgData dup type /stringtype eq
  423.             {
  424.                 /ndx cvx /get cvx d255 /exch cvx /get cvx
  425.             } if
  426.             yeData dup type /stringtype eq
  427.             {
  428.                 /ndx cvx /get cvx d255 /exch cvx /get cvx
  429.             } if
  430.             cData dup type /stringtype eq
  431.             {
  432.                 /ndx cvx /get cvx d255 /exch cvx /get cvx
  433.             } if
  434.             /setcmykcolor cvx
  435.         }
  436.         {
  437.             cData /ndx cvx /get cvx
  438.             d255 /exch cvx /get cvx
  439.             /setgray cvx
  440.         } ifelse
  441.     } bd
  442.     /Bc
  443.     {
  444.         newpath
  445.         gsave
  446.         setBSpace
  447.         nColors 1 eq
  448.         {
  449.             pop pop
  450.             setCStop
  451.         } if
  452.         bFill
  453.         grestore
  454.     } bd
  455.     /linealBm
  456.     {
  457.         /nColors dup load 1 sub store
  458.         newpath
  459.         gsave
  460.         setBSpace
  461.         blend?
  462.         {
  463.             linImg
  464.         }
  465.         {
  466.             bFill
  467.         } ifelse
  468.         grestore
  469.         nColors 1 gt
  470.         {
  471.             getRData
  472.         } if
  473.     } bd
  474.     /rdBm
  475.     {
  476.         /nColors dup load 1 sub store
  477.         _fill
  478.         gsave
  479.         bUMatrix astore concat
  480.         bHi?
  481.         {
  482.             xHi yHi bUMatrix idtransform /yHi exch store /xHi exch store
  483.             rampPoint 1 lt
  484.             {
  485.                 1 rampPoint sub dup xHi mul exch yHi mul translate
  486.             } if
  487.         } if
  488.         nColors
  489.         {
  490.             0 0 rampPoint 0 360 arc
  491.             _fill
  492.             blend? bHi? or
  493.             {
  494.                 rdBlend
  495.             } if
  496.             nColors 1 gt
  497.             {
  498.                 getRData
  499.             } if
  500.             /nColors dup load 1 sub store
  501.         } repeat
  502.         /nColors 1 store
  503.         grestore
  504.     } bd
  505.     /cGetRData
  506.     {
  507.         setCStop
  508.         /blend?
  509.         cData type /stringtype eq
  510.         dup not color? and
  511.         {
  512.             pop
  513.             cyData type /stringtype eq
  514.             mgData type /stringtype eq
  515.             yeData type /stringtype eq
  516.             or or
  517.         } if
  518.         store
  519.     } def
  520.     /cGetRData
  521. } if
  522. /eCStop
  523. {
  524.     mark
  525.     1 index 3 mul 3 add dup 8 gt
  526.     {
  527.         pop 8
  528.     } if
  529.     1 roll
  530.     cleartomark
  531. } bd
  532. composite? not
  533. {
  534.     /knockOut
  535.     level2?
  536.     {
  537.         {
  538.             0 0 0 0 setcmykcolor _fill
  539.         }
  540.     }
  541.     {
  542.         /bFill noImg {{_fill}}
  543.             {{_of true eq {currentgray 1 ne {bwFill} if} {bwFill} ifelse}} ifelse def
  544.         /whiteByte 1 makeByte def
  545.         noImg
  546.         {
  547.             {
  548.                 0 0 0 0 setcmykcolor _fill
  549.             }
  550.         }
  551.         {
  552.             {
  553.                 cBType 0 eq    
  554.                 {
  555.                     setSSave
  556.                     /cData whiteByte store
  557.                     /cDataLen 8 store
  558.                     blendImg
  559.                     sSave restore
  560.                 }
  561.                 {
  562.                     _fill
  563.                 } ifelse
  564.             }
  565.         } ifelse
  566.     } ifelse
  567.     bd
  568.     /d255- 256 array def
  569.     0 1 255
  570.     {
  571.         d255- exch 1 d255 2 index get sub put
  572.     } bind for
  573.     /bCFun
  574.     {
  575.         cData dup type /stringtype ne
  576.         {
  577.             color?
  578.             {
  579.                 1 exch sub
  580.             } if
  581.         }
  582.         {
  583.             /ndx cvx /get cvx
  584.             color? customColor? not and
  585.             {
  586.                 d255-
  587.             }
  588.             {
  589.                 d255
  590.             } ifelse
  591.             /exch cvx /get cvx
  592.         } ifelse
  593.         systemdict /setgray get
  594.     } bd
  595.     /eCCBlend
  596.     {
  597.         dup 3 eq
  598.         {
  599.             pop
  600.             mark 7 1 roll
  601.             6 copy ccThrough? dup /blend? xs
  602.             {
  603.                 /startC? true store
  604.                 setCustomColor
  605.                 customColor?
  606.                 {
  607.                     /cData tint1Data store
  608.                     setCDataLen
  609.                 } if
  610.                 /endC?
  611.                 3 index 3 eq
  612.                 {
  613.                     4 index 1 ne
  614.                 }
  615.                 {
  616.                     false
  617.                 } ifelse
  618.                 store
  619.             } if
  620.             cleartomark
  621.             stop
  622.         } if
  623.         1 eq
  624.         {
  625.             pop pop pop
  626.         } if
  627.         pop
  628.         /startC? false store
  629.         6
  630.         {
  631.             8 index
  632.         } repeat
  633.         ccThrough? dup /blend? xs
  634.         {
  635.             /endC? true store
  636.             blend? not
  637.             {
  638.                 stop
  639.             } if
  640.             customColor?
  641.             {
  642.                 /cData tint1Data store
  643.                 setCDataLen
  644.             } if
  645.         } if
  646.     } bd
  647.     /handleOP
  648.     {
  649.         _of not
  650.         {
  651.             knockOut
  652.         } if
  653.         
  654.     } bd
  655.     /handleROP
  656.     {
  657.         _of not
  658.         {
  659.             0 0 0 0 setcmykcolor _fill
  660.         }
  661.         {
  662.             newpath    
  663.         } ifelse
  664.         
  665.     } bd
  666.     /rdBm
  667.     {
  668.         /nColors dup load 1 sub store
  669.         blend? 
  670.         {
  671.             _fill
  672.         }
  673.         {
  674.             handleROP
  675.         } ifelse
  676.         gsave
  677.         bUMatrix astore concat
  678.         bHi?
  679.         {
  680.             xHi yHi bUMatrix idtransform /yHi exch store /xHi exch store
  681.             rampPoint 1 lt
  682.             {
  683.                 1 rampPoint sub dup xHi mul exch yHi mul translate
  684.             } if
  685.         } if
  686.         nColors
  687.         {
  688.             0 0 rampPoint 0 360 arc
  689.             blend?
  690.             {
  691.                 cData type /stringtype ne bHi? not and
  692.                 {
  693.                     cData color?
  694.                     {
  695.                         1 exch sub
  696.                     } if
  697.                     systemdict /setgray get exec
  698.                     systemdict /fill get exec
  699.                 }
  700.                 {
  701.                     cData type /stringtype ne
  702.                     {
  703.                         /cDataLen 1 store
  704.                         /bDataLen 1 store
  705.                     } if
  706.                     rdBlend
  707.                 } ifelse
  708.             }
  709.             {
  710.                 
  711.                 handleROP
  712.                 
  713.                 pTState?
  714.                 {
  715.                     /bAxis rampPoint endPoint sub store
  716.                     xHi bAxis mul yHi bAxis mul translate
  717.                 } if
  718.             } ifelse
  719.                 
  720. %
  721. %
  722.             nColors 1 gt
  723.             {
  724.                 getRData
  725.             } if
  726.             /nColors dup load 1 sub store
  727.         } repeat
  728.         /nColors 1 store
  729.         grestore
  730.     } bd
  731.     /ccThrough?
  732.     {
  733.         gsave
  734.         pop 0 setCustomColor
  735.         currentcmykcolor
  736.         grestore
  737.         anyColor?
  738.     } bd
  739.     /forceCMYK
  740.     {
  741.         exch pop
  742.         1 exch sub 5 1 roll
  743.         4
  744.         {
  745.             4 index mul 4 1 roll
  746.         } repeat
  747.         0
  748.         cCMYKData dup /cData ne
  749.         {
  750.             dup /yeData eq
  751.             {
  752.                 pop 1 add
  753.             }
  754.             {
  755.                 /mgData eq
  756.                 {
  757.                     2
  758.                 }
  759.                 {
  760.                     3
  761.                 } ifelse
  762.                 add
  763.             } ifelse
  764.             0
  765.         } if
  766.         pop
  767.         index
  768.         0 eq
  769.         {
  770.             pop pop pop pop 0 0 0 0
  771.         } if
  772.         setcmykcolor
  773.         pop
  774.         /fCMYK? true store
  775.     } bd
  776.     /endCapSepBc
  777.     {
  778.         pop pop
  779.         dup 0 eq
  780.         {
  781.             pop
  782.             setgray
  783.         }
  784.         {
  785.             1 eq
  786.             {
  787.                 setcmykcolor
  788.             }
  789.             {
  790.                 colorType 1 eq
  791.                 {
  792.                     forceCMYK
  793.                 }
  794.                 {
  795.                     fCMYK?
  796.                     {
  797.                         forceCMYK
  798.                     }
  799.                     {
  800.                         setCustomColor
  801.                     } ifelse
  802.                 } ifelse
  803.             } ifelse
  804.         } ifelse
  805.         currentcmykcolor anyColor? 
  806.         blend? and
  807.         {
  808.             bFill
  809.         }
  810.         {
  811.             handleOP
  812.         } ifelse
  813.         
  814.     } bd
  815. } if
  816. /cCMYKData 0 def
  817. composite? dup not
  818. {
  819.     pop customColor?
  820. } if
  821. not
  822. {
  823.     /cCMYKData
  824.     /cyData /mgData /yeData /cData
  825.     black? not
  826.     {
  827.         yellow?
  828.         {
  829.             exch
  830.         }
  831.         {
  832.             magenta?
  833.             {
  834.                 3
  835.             }
  836.             {
  837.                 4
  838.             } ifelse
  839.             -1 roll
  840.         } ifelse
  841.     } if
  842.     4 1 roll pop pop pop
  843.     store
  844.     /Bc
  845.     {
  846.         gsave
  847.         setBSpace
  848.         nColors 1 gt
  849.         {
  850.             
  851.             blend? currentcmykcolor anyColor? and
  852.             {
  853.                 bFill
  854.             }
  855.             {
  856.                 handleOP
  857.             } ifelse
  858.         }
  859.         {
  860.             endCapSepBc
  861.         } ifelse
  862.         grestore
  863.         newpath
  864.     } bd
  865.     /linealBm
  866.     {
  867.         /nColors dup load 1 sub store
  868.         newpath
  869.         gsave
  870.         setBSpace
  871.         blend?
  872.         {
  873.             cCMYKData load dup type /stringtype eq
  874.             {
  875.                 dup length /cDataLen xs
  876.                 /cData xs
  877.                 gsave
  878.                 colorType 0 ne noImg not and
  879.                 {
  880.                     invertXfer
  881.                 } if
  882.                 linImg
  883.                 grestore
  884.             }
  885.             {
  886.                 pop bFill
  887.             } ifelse
  888.         }
  889.         {
  890.             handleOP
  891.         } ifelse
  892.         grestore
  893.         nColors 1 gt
  894.         {
  895.             getRData
  896.         } if
  897.     } bd
  898.     /cmykGetRData
  899.     {
  900.         /fCMYK? false store
  901.         blend?
  902.         {
  903.             {
  904.                 cmykDataProcs colorType get exec
  905.             } stopped
  906.             pop
  907.             blend?
  908.             {
  909.                 /cData cCMYKData load store
  910.                 setCDataLen
  911.             } if
  912.         } if
  913.     } def
  914.     /cmykDataProcs
  915.     [
  916.     {
  917.         pop
  918.         black? dup /blend? xs
  919.         {
  920.             setgray
  921.             0
  922.         } if
  923.         pop
  924.     }
  925.     {
  926.         cCMYKData load dup type /stringtype ne
  927.         {
  928.             0 0 0
  929.             cyan? not
  930.             {
  931.                 4 magenta?
  932.                 {
  933.                     1
  934.                 }
  935.                 {
  936.                     yellow?
  937.                     {
  938.                         2
  939.                     }
  940.                     {
  941.                         3
  942.                     } ifelse
  943.                 } ifelse
  944.                 roll
  945.             } if
  946.             4 copy add add add 0 eq {/blend? false store} if
  947.             
  948.             setcmykcolor
  949.             /startC? true store
  950.             /endC? true store
  951.             eCStop
  952.             stop
  953.         } if
  954.         pop
  955.         dup 0 eq
  956.         {
  957.             pop
  958.             setgray
  959.         }
  960.         {
  961.             1 eq
  962.             {
  963.                 setcmykcolor
  964.             }
  965.             {
  966.                 forceCMYK
  967.             } ifelse
  968.         } ifelse
  969.     } bind
  970.     /eCCBlend load
  971.     {
  972.         cBType 1 eq
  973.         {
  974.             tint1Data tint2Data
  975.             /tint1Data xs
  976.             /tint2Data xs
  977.         } if
  978.         0 eq
  979.         {
  980.             black?
  981.             {
  982.                 setgray
  983.             }
  984.             {
  985.                 0 0 0 4 -1 roll 1 exch sub setcmykcolor
  986.             } ifelse
  987.             black?
  988.             {
  989.                 /blend? true store
  990.             } if
  991.             6
  992.             {
  993.                 8 index
  994.             } repeat
  995.             ccThrough?
  996.             {
  997.                 /blend? true store
  998.             }
  999.             {
  1000.                 black?
  1001.                 {
  1002.                     /cData tint1Data store
  1003.                     setCDataLen
  1004.                 }
  1005.                 {
  1006.                     /blend? false store
  1007.                 } ifelse
  1008.             } ifelse
  1009.         }
  1010.         {
  1011.             mark 7 1 roll
  1012.             6 copy ccThrough?
  1013.             {
  1014.                 forceCMYK
  1015.                 pop
  1016.                 stop
  1017.             } if
  1018.             9 index 0 eq
  1019.             {
  1020.                 black? dup /blend? xs
  1021.                 {
  1022.                     pop 1 setgray
  1023.                     /cData tint2Data store
  1024.                     setCDataLen
  1025.                     0
  1026.                 } if
  1027.                 pop
  1028.             }
  1029.             {
  1030.                 /blend?
  1031.                 6
  1032.                 {
  1033.                     16 index
  1034.                 } repeat
  1035.                 ccThrough?
  1036.                 store
  1037.                 blend?
  1038.                 {
  1039.                     forceCMYK
  1040.                 } if
  1041.             } ifelse
  1042.             cleartomark
  1043.         } ifelse
  1044.     } bind
  1045.     ] def
  1046.     /cmykGetRData
  1047. } if
  1048. composite? dup not
  1049. {
  1050.     pop isCMYKSep?
  1051. } if
  1052. not
  1053. {
  1054.     /endCapSepBc
  1055.     {
  1056.         /white? false store
  1057.         pop pop
  1058.         dup 0 eq
  1059.         {
  1060.             pop
  1061.             /white? 1 index 1 eq store
  1062.             setgray
  1063.         }
  1064.         {
  1065.             1 eq
  1066.             {
  1067.                 setcmykcolor
  1068.             }
  1069.             {
  1070.                 setCustomColor
  1071.             } ifelse
  1072.         } ifelse
  1073. %
  1074.         currentcmykcolor anyColor?
  1075.         endC? or
  1076.         blend? and
  1077.         {
  1078.             bFill
  1079.         }
  1080.         {
  1081.             handleOP
  1082.         } ifelse
  1083. %
  1084.     } bd
  1085.     /Bc
  1086.     {
  1087.         gsave
  1088.         setBSpace
  1089.         nColors 1 gt
  1090.         {
  1091.             blend? startC? and
  1092.             {
  1093.                 bFill
  1094.             }
  1095.             {
  1096.                 handleOP
  1097.             } ifelse
  1098.         }
  1099.         {
  1100.             endCapSepBc
  1101.         } ifelse
  1102.         grestore
  1103.         newpath
  1104.     } bd
  1105.     /linealBm
  1106.     {
  1107.         /nColors dup load 1 sub store
  1108.         newpath
  1109.         gsave
  1110.         setBSpace
  1111.         blend?
  1112.         {
  1113.             cData type /stringtype eq
  1114.             {
  1115.                 linImg
  1116.             }
  1117.             {
  1118.                 bFill
  1119.             } ifelse
  1120.         }
  1121.         {
  1122.             handleOP
  1123.         } ifelse
  1124.         grestore
  1125.         nColors 1 gt
  1126.         {
  1127.             getRData
  1128.         } if
  1129.     } bd
  1130.     /discardCMY
  1131.     {
  1132.         counttomark 4 add -3 roll pop pop pop
  1133.     } bd
  1134.     /testTopCC
  1135.     {
  1136.         6 copy ccThrough?
  1137.     } bd
  1138.     /getCRamp
  1139.     {
  1140.         {
  1141.             ccDataProcs colorType 2 sub get exec
  1142.         } stopped pop
  1143.         blend? cDataLen 0 eq and
  1144.         {
  1145.             /cDataLen bDataLen store
  1146.         } if
  1147.     } bd
  1148.     /ccGetRData
  1149.     {
  1150.         /fCMYK? false store
  1151.         /startC? false store
  1152.         /endC? false store
  1153.         colorType 2 lt {/blend? false def} if
  1154.         blend?
  1155.         
  1156. %
  1157.         {
  1158.             getCRamp
  1159.         }
  1160.         {
  1161.             setCStop
  1162.         } ifelse
  1163.         blend?
  1164.         {
  1165.             /blend? cData 1 ne store
  1166.             blend?
  1167.             {
  1168.                 cData dup type /stringtype ne
  1169.                 {
  1170.                     1 exch sub /cData xs 0
  1171.                 } if
  1172.                 pop
  1173.             } if
  1174.         } if
  1175.     } def
  1176.     /ccDataProcs
  1177.     [
  1178.     /eCCBlend load
  1179.     {
  1180.         cBType 1 eq
  1181.         {
  1182.             tint1Data tint2Data
  1183.             /tint1Data xs
  1184.             /tint2Data xs
  1185.         } if
  1186.         0 eq
  1187.         {
  1188.             /blend? false store
  1189.             pop
  1190.         }
  1191.         {
  1192.             mark 7 1 roll
  1193.             testTopCC
  1194.             {
  1195.                 /blend? 1 index 1 ne store
  1196.                 /startC? blend? store
  1197.                 /endC? false store
  1198.                 blend? not
  1199.                 {
  1200.                     cleartomark stop
  1201.                 } if
  1202.                 /cData tint1Data store
  1203.                 setCDataLen
  1204.                 setCustomColor
  1205.                 pop
  1206.                 stop
  1207.             } if
  1208.             cleartomark
  1209.         } ifelse
  1210.         2 index 0 eq
  1211.         {
  1212.             /blend? false store
  1213.         }
  1214.         {
  1215.             mark 6
  1216.             {
  1217.                 9 index
  1218.             } repeat
  1219.             testTopCC dup /blend? xs
  1220.             {
  1221.                 /blend? 1 index 1 ne store
  1222.                 /endC? blend? store
  1223.                 /startC? false store
  1224.                 blend? not
  1225.                 {
  1226.                     cleartomark stop
  1227.                 } if
  1228.                 /cData tint2Data store
  1229.                 setCDataLen
  1230.             } if
  1231.             cleartomark
  1232.         } ifelse
  1233.     } bind
  1234.     ] def
  1235.     /ccGetRData
  1236. } if
  1237. load Adobe_blend_AI5_vars /getData 3 -1 roll put
  1238. /setCDataLen
  1239. {
  1240.     /cDataLen 0 cData dup type /stringtype eq
  1241.     {
  1242.         length exch
  1243.     } if
  1244.     pop store
  1245. } bd
  1246. /getRData
  1247. {
  1248.     /blend? true store
  1249.     0 0 0 0 setcmykcolor
  1250.     100 div /rampPoint xs
  1251. % (between 13 and 87%) 
  1252.     100 div /midPoint xs
  1253.     dup 0 eq
  1254.     {
  1255.         2
  1256.     }
  1257.     {
  1258.         dup 1 eq
  1259.         {
  1260.             5
  1261.         }
  1262.         {
  1263.             7
  1264.         } ifelse
  1265.     } ifelse
  1266.     index 100 div /endPoint xs
  1267.     /colorType gMark store
  1268.     /color? colorType 0 gt store
  1269.     colorType dup 3 eq
  1270.     {
  1271.         /tint2Data gMark store
  1272.     } if
  1273.     dup 1 gt
  1274.     {
  1275.         /tint1Data gMark store
  1276.     } if
  1277.     /cData gMark store
  1278.     setCDataLen
  1279.     0 gt
  1280.     {
  1281.         counttomark 4 add -3 roll
  1282.         /yeData xs
  1283.         /mgData xs
  1284.         /cyData xs
  1285.     } if
  1286.     blend?
  1287.     {
  1288.         /bDataLen
  1289.         cDataLen dup 0 eq color? and
  1290.         {
  1291.             [
  1292.             cyData mgData yeData
  1293.             ]
  1294.             {
  1295.                 dup type /stringtype eq
  1296.                 {
  1297.                     length exch pop exit
  1298.                 } if
  1299.                 pop
  1300.             } forall
  1301.         } if
  1302.         store
  1303.         bDataLen 0 eq
  1304.         {
  1305.             /bDataLen 1 store
  1306.         } if
  1307.         getData
  1308.         blend?
  1309.         {
  1310.             composite? cDataLen 0 eq and
  1311.             {
  1312.                 /cDataLen bDataLen store
  1313.             } if
  1314.         } if
  1315.     }
  1316.     {
  1317.         setCStop
  1318.     } ifelse
  1319. } bd
  1320. /Bg
  1321. {
  1322.     0 0 0 0 setcmykcolor
  1323.     6
  1324.     {
  1325.         pop
  1326.     } repeat
  1327.     /blendLength xs
  1328.     pop pop pop
  1329.     /cBName xs
  1330.     /bRender xs
  1331.     bRender 2 ne
  1332.     {
  1333.         composite? not
  1334.         {
  1335.             _of setoverprint
  1336.         } if
  1337.         clip
  1338.         _bn cBName 2 copy known
  1339.         {
  1340.             get
  1341.             mark exch aload pop
  1342.             /cBType xs
  1343.             /nColors xs
  1344.             mark exch aload pop
  1345.             0 0
  1346.         } if
  1347.         pop pop
  1348.         getRData
  1349.         cBType 0 eq
  1350.         {
  1351.             /linealBm
  1352.         }
  1353.         {
  1354.             bHi?
  1355.             {
  1356.                 /pTState? nColors 2 gt store
  1357.             } if
  1358.             /doBlend /rdBlend load store
  1359.             /rdBm
  1360.         } ifelse
  1361.     }
  1362.     {
  1363.         inLine? not
  1364.         {
  1365.             mark mark
  1366.         } if
  1367.         /Bc dup
  1368.         {
  1369.             cleartomark mark
  1370.         } bd
  1371.         /nullProc
  1372.     } ifelse
  1373.     load /Bm xs
  1374. } bd
  1375. /linImg
  1376. noImg
  1377. {
  1378.     {
  1379.         newpath doRctBlend
  1380.     }
  1381. }
  1382. {
  1383.     {
  1384.         /doBlend
  1385.         color? composite? and
  1386.         {
  1387.             /bCImg
  1388.         }
  1389.         {
  1390.             /blendImg
  1391.         } ifelse
  1392.         load
  1393.         store
  1394.     
  1395.         0 0 moveto
  1396.         tRectOK? composite? and
  1397.         {
  1398.             {
  1399.                 mark
  1400.                 0 1 dtransform atan cvi 90 mod 0 eq
  1401.                 1 0 dtransform atan cvi 90 mod 0 eq
  1402.             } stopped
  1403.             {
  1404.                 cleartomark
  1405.             }
  1406.             {
  1407.                 and exch pop
  1408.                 {
  1409.                     newpath
  1410.                     doRctBlend
  1411.                 }
  1412.                 {
  1413.                     doBlend
  1414.                 } ifelse
  1415.             } ifelse
  1416.         }
  1417.         {
  1418.             doBlend
  1419.         } ifelse
  1420.     } 
  1421. } ifelse
  1422. bd
  1423. /doRctBlend
  1424. {
  1425.     gsave
  1426.     /sInc 1 store
  1427.     /nSamples bDataLen store
  1428.     /bInc 1 bDataLen div store
  1429.     /ubAxis 1 0 dtransform dUserSpace idtransform dup mul exch dup mul add sqrt store
  1430.     /pChange ubAxis 0 eq {0} {bDataLen ubAxis div} ifelse store
  1431.     pChange .5 gt noImg not and dup /optimize? xs
  1432.     {
  1433.         /nSamples ubAxis 2 div round cvi dup 1 le
  1434.         {
  1435.             pop 2
  1436.         } if
  1437.         store
  1438.         /bInc 1 nSamples div store
  1439.         /sInc bDataLen 1 sub nSamples 1 sub div store
  1440.     } if
  1441.     0
  1442.     nSamples
  1443.     [
  1444.     /dup cvx
  1445.     optimize?
  1446.     {
  1447.         /round cvx /cvi cvx
  1448.     } if
  1449.     /ndx /exch cvx /store cvx
  1450.     bCFun
  1451.     /rectfill where
  1452.     {
  1453.         pop 0 0 bInc 1 /rectfill cvx
  1454.     }
  1455.     {
  1456.         0 0 /moveto cvx
  1457.         bInc 0 /lineto cvx
  1458.         bInc 1 /lineto cvx
  1459.         0 1 /lineto cvx
  1460.         /closepath cvx
  1461.         systemdict /fill get
  1462.     } ifelse
  1463.     bInc 0 /translate cvx
  1464.     sInc /add cvx
  1465.     ] cvx
  1466.     bind
  1467.     repeat
  1468.     pop
  1469.     grestore
  1470. } bd
  1471. /rdPrep
  1472. {
  1473.     /nSamples bDataLen dup 0 eq
  1474.     {
  1475.         pop 1
  1476.     } if
  1477.     store
  1478.     /sInc -1 store
  1479.     /bAxis rampPoint endPoint sub store
  1480.     /bInc bAxis bDataLen div neg store
  1481.     /optimize? false store
  1482.     tRectOK?
  1483.     {
  1484.         /ubAxis
  1485.         bAxis 0 dtransform dUserSpace idtransform dup mul exch dup mul add sqrt
  1486.         0 bAxis dtransform dUserSpace idtransform dup mul exch dup mul add sqrt
  1487.         2 copy lt {exch} if pop store
  1488.         
  1489.         /pChange ubAxis 0 eq {0} {bDataLen ubAxis div} ifelse store
  1490.         pChange .5 gt dup /optimize? xs
  1491.         {
  1492.             /nSamples ubAxis 2 div round cvi dup 1 le
  1493.             {
  1494.                 pop 2
  1495.             } if
  1496.             store
  1497.             /bInc bAxis nSamples div neg store
  1498.             /sInc bDataLen 1 sub nSamples 1 sub div neg store
  1499.         } if
  1500.     } if
  1501.     bHi?
  1502.     {
  1503.         /xBCInc xHi bAxis mul nSamples div store
  1504.         /yBCInc yHi bAxis mul nSamples div store
  1505.     } if
  1506. } bd
  1507. /rdBlend
  1508. {
  1509.     newpath
  1510.     gsave
  1511.     rdPrep
  1512.     rampPoint
  1513.     bDataLen 1 sub
  1514.     nSamples
  1515.     [
  1516.     /dup cvx
  1517.     optimize?
  1518.     {
  1519.         /round cvx /cvi cvx
  1520.     } if
  1521.     /ndx /exch cvx /store cvx
  1522.     bCFun
  1523.     0 0 3 /index cvx 0 360 /arc cvx systemdict /fill get
  1524.     /exch cvx bInc /add cvx /exch cvx
  1525.     sInc /add cvx
  1526.     bHi?
  1527.     {
  1528.         xBCInc yBCInc /translate cvx
  1529.     } if
  1530.     ] cvx
  1531.     bind
  1532.     repeat
  1533.     pop pop
  1534.     grestore
  1535.     pTState?
  1536.     {
  1537.         xHi bAxis mul yHi bAxis mul translate
  1538.     } if
  1539. } bd
  1540. /Bh
  1541. {
  1542.     pop pop
  1543.     /pTState? false store
  1544.     2 copy 0 ne exch 0 ne or dup /bHi? xs
  1545.     {
  1546.         /yHi xs
  1547.         /xHi xs
  1548.         0 0
  1549.     } if
  1550.     pop pop
  1551. } bd
  1552. /BD
  1553. {
  1554.     inLine? not
  1555.     {
  1556.         ] nColors cBType
  1557.         ] _bn cBName 3 -1 roll put
  1558.      end
  1559.     } if
  1560. } bd
  1561. /Bn
  1562. {
  1563.     1 add dict
  1564.     dup nullString null put
  1565.     /_bn xs
  1566. } bd
  1567. /Bd
  1568. {
  1569.     Adobe_blend_AI5_vars begin
  1570.     3 -1 roll dup nullString eq dup
  1571.     {
  1572.         setSSave
  1573.     } if
  1574.     /inLine? exch def
  1575.     /cBName exch def
  1576.     /nColors exch def
  1577.     /cBType exch def
  1578. } bd
  1579. /Bb
  1580. {
  1581.     sSave null eq
  1582.     {
  1583.         Adobe_blend_AI5_vars begin
  1584.         setSSave
  1585.     } if
  1586.     composite?
  1587.     {
  1588.         /_fill /fill load store
  1589.     }
  1590.     {
  1591.         /__fill /fill load store
  1592.         /_fill {_of true eq {currentgray 1 ne {__fill} if} {__fill} ifelse} def
  1593.     } ifelse
  1594.     /fill
  1595.     {
  1596.     } def
  1597. } bd
  1598. /BB
  1599. {
  1600.     /cBType xs
  1601.     cleartomark cleartomark
  1602.     cBType dup
  1603.     bRender
  1604.     sSave dup type /savetype eq
  1605.     {
  1606.         restore 0
  1607.     } if
  1608.     pop
  1609.     currentdict Adobe_blend_AI5_vars eq
  1610.     {
  1611.      end
  1612.     } if
  1613.     2 ne exch 0 gt and
  1614.     {
  1615.         2 eq
  1616.         {
  1617.             s
  1618.         }
  1619.         {
  1620.             S
  1621.         } ifelse
  1622.     }
  1623.     {
  1624.         pop newpath
  1625.     } ifelse
  1626. } bd
  1627. currentdict readonly pop
  1628. end
  1629. end
  1630. defaultpacking setpacking
  1631. %%EndResource
  1632.