% Copyright (c)1992-2005 Corel Corporation
% All rights reserved.     v13 r0.0
/$fst 128 def/$pad 0 def/$rox 0 def/$roy 0 def/$fmp 50 def/@dlt_hsb{$fco nff ge
{/$fco nff 1 sub def}if sub neg 2 div dup $fco div/kdb xd nff $fco sub div
/kdb2 xd sub neg 2 div dup $fco div/kds xd nff $fco sub div/kds2 xd sub neg dup
0 eq{pop $frb 2 eq{0.99}{-0.99}ifelse}if dup $frb 2 eq exch 0 lt and{1 add}if
dup $frb 1 eq exch 0 gt and{1 sub}if 2 div dup $fco div/kdh xd nff $fco sub div
/kdh2 xd}bd/@dlt{$fse $fss sub dup/nff xd $fmp mul $fmp add 100 div round cvi
dup 0 le{pop 1}if/$fco xd/$fi 0 def $frb dup 1 eq exch 2 eq or{grad_color_from
devicen_to_cmyk cmyk2rgb rgb2hsb 3 copy/myb xd/mys xd/myh xd grad_color_to
devicen_to_cmyk cmyk2rgb rgb2hsb 3 1 roll 4 1 roll 5 1 roll @dlt_hsb}{
bGradDeviceN{@dlt_devicen}{@dlt_cmyk}ifelse}ifelse}bd/@dlt_cmyk{$fmp 50 eq{
grad_color_to 1 get grad_color_from 1 get sub nff div/dC xd grad_color_to 2 get
grad_color_from 2 get sub nff div/dM xd grad_color_to 3 get grad_color_from 3
get sub nff div/dY xd grad_color_to 4 get grad_color_from 4 get sub nff div/dK
xd}{$fco nff ge{/$fco nff 1 sub def}if grad_color_to 1 get grad_color_from 1
get sub 2 div $fco div/dC xd grad_color_to 2 get grad_color_from 2 get sub 2
div $fco div/dM xd grad_color_to 3 get grad_color_from 3 get sub 2 div $fco div
/dY xd grad_color_to 4 get grad_color_from 4 get sub 2 div $fco div/dK xd
/co_steps nff $fco sub def grad_color_to 1 get grad_color_from 1 get sub 2 div
co_steps div/dC2 xd grad_color_to 2 get grad_color_from 2 get sub 2 div
co_steps div/dM2 xd grad_color_to 3 get grad_color_from 3 get sub 2 div
co_steps div/dY2 xd grad_color_to 4 get grad_color_from 4 get sub 2 div
co_steps div/dK2 xd}ifelse}bd/@dlt_devicen{$fmp 50 eq{grad_color_from length 6
idiv dup/devicen_deltas exch array def 0 1 3 -1 roll 1 sub{dup dup
grad_color_to exch get 2 1 roll grad_color_from exch get sub nff div
devicen_deltas 3 1 roll put}for}{$fco nff ge{/$fco nff 1 sub def}if
grad_color_from length 6 idiv dup dup/devicen_deltas exch array def
/devicen_deltas2 exch array def 0 1 3 -1 roll 1 sub{dup dup dup grad_color_to
exch get exch grad_color_from exch get sub 2 div dup 3 1 roll $fco div
devicen_deltas 3 1 roll put nff $fco sub div devicen_deltas2 3 1 roll put}for
}ifelse}bd/@ffnxt{/$fi $fi 1 add def $frb dup 1 eq exch 2 eq or{pop[1.0 myh mys
myb $fi $fco lt{kdb add 3 1 roll kds add 3 1 roll kdh add 3 1 roll}{kdb2 add 3
1 roll kds2 add 3 1 roll kdh2 add 3 1 roll}ifelse 3 copy/myb xd/mys xd/myh xd
hsb2rgb rgb2cmyk null]}{bGradDeviceN{dup length 6 idiv 1 sub 0 1 3 -1 roll{
exch dup dup 4 -1 roll dup $fi $fco lt $fmp 50 eq or{devicen_deltas exch get}{
devicen_deltas2 exch get}ifelse 4 1 roll dup 3 1 roll get 4 -1 roll add put
}for}{$fi $fco lt $fmp 50 eq or{[exch aload pop pop dK add 4 1 roll dY add 4 1
roll dM add 4 1 roll dC add 4 1 roll null]}{[exch aload pop pop dK2 add 4 1
roll dY2 add 4 1 roll dM2 add 4 1 roll dC2 add 4 1 roll null]}ifelse}ifelse}
ifelse}bd/@ffcol{set_fill_color}bd/@ff_strip_init{/$fil 0 def $frb dup 1 eq
exch 2 eq or{/strip_color[1.0 grad_color_from devicen_to_cmyk null]def}{
/strip_color grad_color_from def}ifelse}bd/@ftl{1 index 4 index sub dup $pad
mul dup/$pdw xd 2 mul sub $fst div/$wid xd 2 index sub/$hei xd pop Tl @dlt
@ff_strip_init strip_color @ffcol $fss 0 eq{n 0 0 m 0 $hei l $pdw $hei l $pdw 0
l @cp F}if $fss $wid mul $pdw add 0 Tl nff{n 0 0 m 0 $hei l $wid $hei l $wid 0
l @cp strip_color @ffcol F $wid 0 Tl strip_color @ffnxt/strip_color exch def}
repeat n 0 0 m 0 $hei l $pdw $hei l $pdw 0 l @cp strip_color @ffcol F}bd/@ftrs
{1 index 4 index sub dup $rox mul/$row xd 2 div 1 index 4 index sub dup $roy
mul/$roh xd 2 div 2 copy dup mul exch dup mul add sqrt $row dup mul $roh dup
mul add sqrt add dup/$hei xd $fst div/$wid xd 4 index add $roh add exch 5 index
add $row add exch Tl $fan rotate pop pop pop pop @dlt @ff_strip_init
strip_color @ffcol $fss 0 eq{$fty 3 eq{$hei dup neg dup m 2 mul @sqr}{0 0 m 0 0
$hei 0 360 arc}ifelse F}if 1.0 $pad 2 mul sub dup scale $hei $fss $wid mul sub
/$hei xd nff{$fty 3 eq{n $hei dup neg dup m 2 mul @sqr}{n 0 0 m 0 0 $hei 0 360
arc}ifelse strip_color @ffcol F/$hei $hei $wid sub def strip_color @ffnxt
/strip_color exch def}repeat}bd/@ftc{1 index 4 index sub dup $rox mul/$row xd 2
div 1 index 4 index sub dup $roy mul/$roh xd 2 div 2 copy dup mul exch dup mul
add sqrt $row dup mul $roh dup mul add sqrt add dup/$hei xd $fst div/$wid xd 4
index add $roh add exch 5 index add $row add exch Tl pop pop pop pop @dlt
@ff_strip_init strip_color @ffcol $fss 0 eq{F}{n}ifelse/$dang 180 $fst 1 sub
div def/$sang $dang -2 div 180 add def/$eang $dang 2 div 180 add def/$sang
$sang $dang $fss mul add def/$eang $eang $dang $fss mul add def/$sang $eang
$dang sub def nff{n 0 0 m 0 0 $hei $sang $fan add $eang $fan add arc
strip_color @ffcol F 0 0 m 0 0 $hei $eang neg $fan add $sang neg $fan add arc F
/$sang $eang def/$eang $eang $dang add def strip_color @ffnxt/strip_color exch
def}repeat}bd/@fstAdjust{72 0 matrix defaultmatrix dtransform exch dup mul exch
dup mul add sqrt currentscreen pop pop div dup mul 1 add cvi 2 256 InRange $fsc
1 sub dup 0 le{pop 1}if mul/opt$fst xd AutoSteps dup 1 eq exch 3 eq or{opt$fst
dup dup $fst dup 3 1 roll div exch 3 -1 roll gt{/$adj xd/$fst xd}{pop pop}
ifelse}if AutoSteps dup 2 eq exch 3 eq or{opt$fst dup dup $fst dup 3 1 roll div
exch 3 -1 roll lt{/$adj xd/$fst xd}{pop pop}ifelse}if}bd/@ff{/old$fst $fst def
/$adj 1 def/$fss 0 def $o 1 eq setoverprint grad_use_shading_dict{
CorelShfillDoFill}{AutoSteps 0 gt{@fstAdjust}if 1 1 $fsc 1 sub{dup 1 sub $fsa
exch 2 mul get/grad_color_from exch def dup $fsa exch 2 mul get/grad_color_to
exch def $fsa exch 2 mul 1 add get $adj mul cvi $fss add/$fse xd bGradDeviceN{
/grad_color_from[grad_color_from aload pop tint_params aload pop sNamesDeviceN
aload pop]bind def/grad_color_to[grad_color_to aload pop tint_params aload pop
sNamesDeviceN aload pop]bind def}if @sv $ctm setmatrix wclip Bbllx Bblly Bburx
Bbury $fty 2 eq{@ftc}{1 index 3 index m 2 copy l 3 index 1 index l 3 index 3
index l @cp $fty dup 1 eq exch 3 eq or{@ftrs}{pop pop pop pop $fan rotate
pathbbox @ftl}ifelse}ifelse @rs/$fss $fse def}for @np}ifelse/$fst old$fst def}
bd/set_gradient{/$fil 2 def/bGradDeviceN xd/$fmp xd/$roy xd/$rox xd/$pad xd
/$fty xd/$fan xd $fty 1 eq{/$fan 0 def}if/$frb xd/$fst xd/$fsc xd/$fsa xd}bd
/grad_use_shading_dict{$fty 0 eq $fty 1 eq or $fty 3 eq or level3 and $frb 1 ne
and $frb 2 ne and}bd
