# HG changeset patch # User tobaru # Date 1526803194 -32400 # Node ID c456e4d68e1acc12eca511b1c10fd1b932dd3874 # Parent 7f5c0330e711d9cb5336adfb8a11d347796e97c9 add image file diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/00.graffle Binary file Slide/image/00.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/03.graffle Binary file Slide/image/03.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/06.eps --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/06.eps Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,2719 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%HiResBoundingBox: 0.000000 0.000000 886.000000 652.000000 +%APL_DSC_Encoding: UTF8 +%%Title: (Unknown) +%%Creator: (Unknown) +%%CreationDate: (Unknown) +%%For: (Unknown) +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%Pages: 1 +%%BoundingBox: 0 0 886 652 +%%EndComments +%%BeginProlog +%%BeginFile: cg-pdf.ps +%%Copyright: Copyright 2000-2004 Apple Computer Incorporated. +%%Copyright: All Rights Reserved. +currentpacking true setpacking +/cg_md 141 dict def +cg_md begin +/L3? languagelevel 3 ge def +/bd{bind def}bind def +/ld{load def}bd +/xs{exch store}bd +/xd{exch def}bd +/cmmtx matrix def +mark +/sc/setcolor +/scs/setcolorspace +/dr/defineresource +/fr/findresource +/T/true +/F/false +/d/setdash +/w/setlinewidth +/J/setlinecap +/j/setlinejoin +/M/setmiterlimit +/i/setflat +/rc/rectclip +/rf/rectfill +/rs/rectstroke +/f/fill +/f*/eofill +/sf/selectfont +/s/show +%/as/ashow +/xS/xshow +/yS/yshow +/xyS/xyshow +/S/stroke +/m/moveto +/l/lineto +/c/curveto +/h/closepath +/n/newpath +/q/gsave +/Q/grestore +counttomark 2 idiv +%dup (number of ld's = )print == flush % *** how many +{ld}repeat pop +/SC{ % CSname + /ColorSpace fr scs +}bd +/sopr /setoverprint where{pop/setoverprint}{/pop}ifelse ld +/soprm /setoverprintmode where{pop/setoverprintmode}{/pop}ifelse ld +/cgmtx matrix def +/sdmtx{cgmtx currentmatrix pop}bd +/CM {cgmtx setmatrix}bd % pop the ctm: our gstate ctm on host is now identity +/cm {cmmtx astore CM concat}bd % reset the matrix and then concat +/W{clip newpath}bd +/W*{eoclip newpath}bd + +statusdict begin product end dup (HP) anchorsearch{ + pop pop pop % pop off the search results + true +}{ + pop % previous search result + (hp) anchorsearch{ + pop pop true + }{ + pop false + }ifelse +}ifelse + +{ % HP is the product: we use this method of stroking because of a bug in their clone printers with certain T3 fonts + { + { % charCode Wx Wy + pop pop % charCode + (0)dup 0 4 -1 roll put + F charpath + }cshow + } +}{ + {F charpath} +}ifelse +/cply exch bd +/cps {cply stroke}bd +/pgsave 0 def +/bp{/pgsave save store}bd +/ep{pgsave restore showpage}def % dont' bind +/re{4 2 roll m 1 index 0 rlineto 0 exch rlineto neg 0 rlineto h}bd + +/scrdict 10 dict def +/scrmtx matrix def +/patarray 0 def +/createpat{patarray 3 1 roll put}bd +/makepat{ +scrmtx astore pop +gsave +initgraphics +CM +patarray exch get +scrmtx +makepattern +grestore +setpattern +}bd + +/cg_BeginEPSF{ + userdict save/cg_b4_Inc_state exch put + userdict/cg_endepsf/cg_EndEPSF load put + count userdict/cg_op_count 3 -1 roll put + countdictstack dup array dictstack userdict/cg_dict_array 3 -1 roll put + 3 sub{end}repeat + /showpage {} def + 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin + 10 setmiterlimit [] 0 setdash newpath + false setstrokeadjust false setoverprint % don't use F +}bd +/cg_EndEPSF{ + countdictstack 3 sub { end } repeat + cg_dict_array 3 1 index length 3 sub getinterval + {begin}forall + count userdict/cg_op_count get sub{pop}repeat + userdict/cg_b4_Inc_state get restore + F setpacking +}bd + +/cg_biproc{currentfile/RunLengthDecode filter}bd +/cg_aiproc{currentfile/ASCII85Decode filter/RunLengthDecode filter}bd +/ImageDataSource 0 def +L3?{ + /cg_mibiproc{pop pop/ImageDataSource{cg_biproc}def}bd + /cg_miaiproc{pop pop/ImageDataSource{cg_aiproc}def}bd +}{ + /ImageBandMask 0 def + /ImageBandData 0 def + /cg_mibiproc{ + string/ImageBandMask xs + string/ImageBandData xs + /ImageDataSource{[currentfile/RunLengthDecode filter dup ImageBandMask/readstring cvx + /pop cvx dup ImageBandData/readstring cvx/pop cvx]cvx bind}bd + }bd + /cg_miaiproc{ + string/ImageBandMask xs + string/ImageBandData xs + /ImageDataSource{[currentfile/ASCII85Decode filter/RunLengthDecode filter + dup ImageBandMask/readstring cvx + /pop cvx dup ImageBandData/readstring cvx/pop cvx]cvx bind}bd + }bd +}ifelse +/imsave 0 def +/BI{save/imsave xd mark}bd +/EI{imsave restore}bd +/ID{ +counttomark 2 idiv +dup 2 add % leave room for imagetype and imagematrix +dict begin +{def} repeat +pop % remove mark +/ImageType 1 def +/ImageMatrix[Width 0 0 Height neg 0 Height]def +currentdict dup/ImageMask known{ImageMask}{F}ifelse exch +% currentdict on stack +L3?{ + dup/MaskedImage known + { + pop + << + /ImageType 3 + /InterleaveType 2 + /DataDict currentdict + /MaskDict + << /ImageType 1 + /Width Width + /Height Height + /ImageMatrix ImageMatrix + /BitsPerComponent 1 + /Decode [0 1] + currentdict/Interpolate known + {/Interpolate Interpolate}if + >> + >> + }if +}if +exch +{imagemask}{image}ifelse +end % pop imagedict from dict stack +}bd + +/cguidfix{statusdict begin mark version end +{cvr}stopped{cleartomark 0}{exch pop}ifelse +2012 lt{dup findfont dup length dict begin +{1 index/FID ne 2 index/UniqueID ne and +{def} {pop pop} ifelse}forall +currentdict end definefont pop +}{pop}ifelse +}bd +/t_array 0 def +/t_i 0 def +/t_c 1 string def +/x_proc{ % x y + exch t_array t_i get add exch moveto + /t_i t_i 1 add store +}bd +/y_proc{ % x y + t_array t_i get add moveto + /t_i t_i 1 add store +}bd +/xy_proc{ + % x y + t_array t_i 2 copy 1 add get 3 1 roll get + 4 -1 roll add 3 1 roll add moveto + /t_i t_i 2 add store +}bd +/sop 0 def % don't bind sop +/cp_proc/x_proc ld % default moveto proc is for xwidths only +/base_charpath % string array +{ + /t_array xs + /t_i 0 def + { % char + t_c 0 3 -1 roll put + currentpoint + t_c cply sop + cp_proc + }forall + /t_array 0 def +}bd +/sop/stroke ld % default sop is stroke. Done here so we don't bind in /base_charpath + +% default sop is stroke +/nop{}def +/xsp/base_charpath ld +/ysp{/cp_proc/y_proc ld base_charpath/cp_proc/x_proc ld}bd +/xysp{/cp_proc/xy_proc ld base_charpath/cp_proc/x_proc ld}bd +/xmp{/sop/nop ld /cp_proc/x_proc ld base_charpath/sop/stroke ld}bd +/ymp{/sop/nop ld /cp_proc/y_proc ld base_charpath/sop/stroke ld}bd +/xymp{/sop/nop ld /cp_proc/xy_proc ld base_charpath/sop/stroke ld}bd +/refnt{ % newname encoding fontname +findfont dup length dict copy dup +/Encoding 4 -1 roll put +definefont pop +}bd +/renmfont{ % newname fontname +findfont dup length dict copy definefont pop +}bd + +L3? dup dup{save exch}if + +% languagelevel2 ONLY code goes here + +/Range 0 def +/DataSource 0 def +/val 0 def +/nRange 0 def +/mulRange 0 def +/d0 0 def +/r0 0 def +/di 0 def +/ri 0 def +/a0 0 def +/a1 0 def +/r1 0 def +/r2 0 def +/dx 0 def +/Nsteps 0 def +/sh3tp 0 def +/ymax 0 def +/ymin 0 def +/xmax 0 def +/xmin 0 def + +/setupFunEval % funDict -- % this calculates and sets up a function dict for evaulation. +{ + begin + /nRange Range length 2 idiv store + /mulRange % precompute the range data needed to map a sample value from the table to a range value + % this data looks like [ range0mul range0min range1mul range1min ... rangeN-1mul rangeN-1min ] + [ + 0 1 nRange 1 sub + { % index + 2 mul/nDim2 xd % 2*dimension# we are dealing with + Range nDim2 get % ymin + Range nDim2 1 add get % ymin ymax + 1 index sub % ymin (ymax-ymin) + % xmin = 0, xmax = 255 (2^bitspersample - 1) + 255 div % ymin (ymax-ymin)/(xmax - xmin) + exch % (ymax-ymin)/(xmax - xmin) ymin + }for + ]store + end +}bd + +/FunEval % val1 fundict -> comp1 comp2 ... compN +{ + begin + % the value passed in is the base index into the table + nRange mul /val xd % compute the actual index to the table + % since there are nRange entries per base index + 0 1 nRange 1 sub + { + dup 2 mul/nDim2 xd % dim + val % base value to use to do our lookup + add DataSource exch get % lookedupval + mulRange nDim2 get mul % lookedupval*(ymax-ymin)/(xmax-xmin) + mulRange nDim2 1 add get % lookedupval*(ymax-ymin)/(xmax-xmin) ymin + add % interpolated result + }for % comp1 comp2 ... compN + end +}bd + +/max % a b -> max(a, b) +{ + 2 copy lt + {exch pop}{pop}ifelse +}bd + +/sh2 +{ % emulation of shading type 2. Assumes shading dictionary is top dictionary on the dict stack + /Coords load aload pop % x0 y0 x1 y1 + 3 index 3 index translate % origin is now at beginning point of shading + % x0 y0 x1 y1 + 3 -1 roll sub % x0 x1 y1-y0 + 3 1 roll exch % y1-y0 x1 x0 + sub % y1-y0 x1-x0 + 2 copy + dup mul exch dup mul add sqrt % length of segment between two points + dup + scale + atan % atan (dy/dx) + %dup (rotation angle = )print == + rotate % now line between 0,0 and 1,0 is the line perpendicular to which the axial lines are drawn + + /Function load setupFunEval % may need to setup function dictionary by calling setupFunEval + + % this is now specific to axial shadings. Compute the maximum bounds to fill + clippath {pathbbox}stopped {0 0 0 0}if newpath % x0 y0 x1 y1 + /ymax xs + /xmax xs + /ymin xs + /xmin xs + currentdict/Extend known + { + /Extend load 0 get + { + 0/Function load FunEval sc % evaluate the function to get a color and set it + xmin ymin xmin abs ymax ymin sub rectfill + }if + }if + % paint the rects. The sampling frequency is that of our table + /Nsteps/Function load/Size get 0 get 1 sub store + /dx 1 Nsteps div store + gsave + /di ymax ymin sub store + /Function load + % loop Nsteps + 1 times, incrementing the index by 1 each time + 0 1 Nsteps + { + 1 index FunEval sc + 0 ymin dx di rectfill + dx 0 translate + }for + pop % pop our function + grestore % origin is back to start point + currentdict/Extend known + { + /Extend load 1 get + { + Nsteps/Function load FunEval sc % last element + 1 ymin xmax 1 sub abs ymax ymin sub rectfill + }if + }if +}bd + +/shp % this paints our shape for shading type 3 +{ % x1 r1 x0 r0 - + 4 copy + + % fill interior arc + dup 0 gt{ + 0 exch a1 a0 arc + }{ + pop 0 moveto + }ifelse + + dup 0 gt{ + 0 exch a0 a1 arcn + }{ + pop 0 lineto + }ifelse + + fill + + % fill exterior arc + dup 0 gt{ + 0 exch a0 a1 arc + }{ + pop 0 moveto + }ifelse + + dup 0 gt{ + 0 exch a1 a0 arcn + }{ + pop 0 lineto + }ifelse + + fill +}bd + +/calcmaxs +{ % calculate maximum distance vector from origin to corner points + % of bbox + xmin dup mul ymin dup mul add sqrt % (xmin2 + ymin2) + xmax dup mul ymin dup mul add sqrt % (xmax2 + ymin2) + xmin dup mul ymax dup mul add sqrt % (xmin2 + ymax2) + xmax dup mul ymax dup mul add sqrt % (xmax2 + ymax2) + max max max % maximum value +}bd + +/sh3 +{ % emulation of shading type 3. Assumes shading dictionary is top dictionary on the dict stack + /Coords load aload pop % x0 y0 r1 x1 y1 r2 + 5 index 5 index translate % origin is now at first circle origin + 3 -1 roll 6 -1 roll sub % y0 r1 y1 r2 dx + 3 -1 roll 5 -1 roll sub % r1 r2 dx dy + 2 copy dup mul exch dup mul add sqrt + /dx xs % r1 r2 dx dy + 2 copy 0 ne exch 0 ne or + { + % r1 r2 dx dy + exch atan rotate % we are now rotated so dy is zero and positive values of dx move us as expected + }{ + pop pop + }ifelse + % r1 r2 + /r2 xs + /r1 xs + /Function load + dup/Size get 0 get 1 sub % this is the size of our table minus 1 + /Nsteps xs % at some point we should optimize this better so NSteps is based on needed steps for the device + setupFunEval % may need to setup function dictionary by calling setupFunEval + % determine the case: + % case 0: circle1 inside circle2 + % case 1: circle 2 inside circle 1 + % case 2: r1 = r2 + % case 3: r1 != r2 + dx r2 add r1 lt{ + % circle 2 inside of circle 1 + 0 + }{ + dx r1 add r2 le + { % circle 1 inside of circle 2 + 1 + }{ % circles don't contain each other + r1 r2 eq + { % equal + 2 + }{ % r1 != r2 + 3 + }ifelse + }ifelse + }ifelse + /sh3tp xs % sh3tp has the number of our different cases + clippath {pathbbox}stopped {0 0 0 0}if + newpath % x0 y0 x1 y1 + /ymax xs + /xmax xs + /ymin xs + /xmin xs + + % Arc angle atan( sqrt((dx*dx + dy*dy) - dr*dr), dr) + dx dup mul r2 r1 sub dup mul sub dup 0 gt + { + sqrt r2 r1 sub atan + /a0 exch 180 exch sub store + /a1 a0 neg store + }{ + pop + /a0 0 store + /a1 360 store + }ifelse + + currentdict/Extend known + { + /Extend load 0 get r1 0 gt and % no need to extend if the radius of the first end is 0 + { + 0/Function load FunEval sc % evaluate the function to get a color and set it + % case 0: circle1 inside circle2 + % case 1: circle 2 inside circle 1 + % case 2: circles don't contain each other and r1 == r2 + % case 3: circles don't contain each other and r1 != r2 + { + { % case 0 + dx 0 r1 360 0 arcn + xmin ymin moveto + xmax ymin lineto + xmax ymax lineto + xmin ymax lineto + xmin ymin lineto + eofill % for the bigger radius we fill everything except our circle + } + { % case 1 + r1 0 gt{0 0 r1 0 360 arc fill}if + } + { % case 2 + % r1 == r2, extend 0 + % r3 = r, x3 = -(abs(minx) + r), x1 = 0 + + % x(i+1) r(i+1) x(i) r(i) shp + 0 r1 xmin abs r1 add neg r1 shp + } + { % case 3 + % no containment, r1 != r2 + + r2 r1 gt{ % the endpoint we are drawing is that with a circle of zero radius + % x(i+1) r(i+1) x(i) r(i) shp + 0 r1 + r1 neg r2 r1 sub div dx mul % this is point of beginning circle + 0 % point of ending circle + shp % takes x(i+1) r(i+1) x(i) r(i) + }{ % the first circle is the bigger of the two + % we find a circle on our line which is outside the bbox in the + % negative direction + % x(i+1) r(i+1) x(i) r(i) shp + 0 r1 calcmaxs % 0 r1 maxs + dup + % calculating xs: (-(maxs+r2)*x2)/(x2-(r1-r2)) + r2 add dx mul dx r1 r2 sub sub div + neg % maxs xs' + exch 1 index % xs' maxs xs' + abs exch sub + shp + }ifelse + } + }sh3tp get exec % execute the extend at beginning proc for our shading type + }if + }if + + % now do the shading + /d0 0 store + /r0 r1 store + /di dx Nsteps div store + /ri r2 r1 sub Nsteps div store + /Function load + 0 1 Nsteps + { % function t(i) + 1 index FunEval sc + d0 di add r0 ri add d0 r0 shp + { + % fill interior arc + d0 0 r0 a1 a0 arc + d0 di add 0 r0 ri add a0 a1 arcn + fill + + % fill exterior arc + d0 0 r0 a0 a1 arc + d0 di add 0 r0 ri add a1 a0 arcn + fill + }pop + + % advance to next + /d0 d0 di add store + /r0 r0 ri add store + }for + pop % pop our function dict + + % handle Extend + currentdict/Extend known + { + /Extend load 1 get r2 0 gt and % no need to extend if the radius of the last end is 0 + { + Nsteps/Function load FunEval sc % last element + % case 0: circle1 inside circle2 + % case 1: circle 2 inside circle 1 + % case 2: circles don't contain each other and r1 == r2 + % case 3: circles don't contain each other and r1 != r2 + { + { + dx 0 r2 0 360 arc fill + } + { + dx 0 r2 360 0 arcn + xmin ymin moveto + xmax ymin lineto + xmax ymax lineto + xmin ymax lineto + xmin ymin lineto + eofill % for the bigger radius we fill everything except our circle + } + { % r1 == r2, extend 1 + % r3 = r, x3 = (abs(xmax) + r), x1 = dx + % x(i+1) r(i+1) x(i) r(i) shp + xmax abs r1 add r1 dx r1 shp + } + { % no containment, r1 != r2 + + r2 r1 gt{ + % we find a circle on our line which is outside the bbox in the + % positive direction + % x(i+1) r(i+1) x(i) r(i) shp + calcmaxs dup % maxs maxs + % calculating xs: ((maxs+r1)*x2)/(x2-(r2-r1)) + r1 add dx mul dx r2 r1 sub sub div % maxs xs + exch 1 index % xs maxs xs + exch sub + dx r2 + shp + }{ % the endpoint we are drawing is that with a circle of zero radius + % x(i+1) r(i+1) x(i) r(i) shp + r1 neg r2 r1 sub div dx mul % this is point of ending circle + 0 % radius of ending circle + dx % point of starting circle + r2 % radius of starting circle + shp + }ifelse + } + } + sh3tp get exec % execute the extend at end proc for our shading type + }if + }if +}bd +/sh % emulation of shfill operator for type 2 and type 3 shadings based on type 0 functions +{ % shadingDict -- + begin + /ShadingType load dup dup 2 eq exch 3 eq or + { % shadingtype + gsave + newpath + /ColorSpace load scs + currentdict/BBox known + { + /BBox load aload pop % llx lly urx ury + 2 index sub % llx lly urx ury-lly + 3 index % llx lly urx ury-lly llx + 3 -1 roll exch sub + exch rectclip + }if + 2 eq + {sh2}{sh3}ifelse + grestore + }{ + % shadingtype + pop + (DEBUG: shading type unimplemented\n)print flush + }ifelse + end +}bd + +% end of language level 2 ONLY code + +{restore}if not dup{save exch}if +% languagelevel3 ONLY code goes here + L3?{ % we do these loads conditionally or else they will fail on a level 2 printer + /sh/shfill ld + /csq/clipsave ld + /csQ/cliprestore ld + }if +{restore}if + +%currentdict dup maxlength exch length sub (number of extra slots in md = )print == flush % *** how many entries are free +end +setpacking +% count 0 ne { pstack(***extras on stack during prolog execution***\n)print flush}if % *** BARK if anything is left on stack +%%EndFile +%%EndProlog +%%BeginSetup +%%EndSetup +%%Page: 1 1 +%%PageBoundingBox: 0 0 886 652 +%%BeginPageSetup +cg_md begin +bp +sdmtx +[ /CIEBasedABC 4 dict dup begin +/WhitePoint [ 0.9505 1.0000 1.0891 ] def +/DecodeABC [ { 1.8008 exp } bind { 1.8008 exp } bind { 1.8008 exp } bind ] def +/MatrixABC [ 0.4295 0.2318 0.0204 0.3278 0.6722 0.1111 0.1933 0.0960 0.9578 ] def +/RangeLMN [ 0.0 0.9505 0.0 1.0000 0.0 1.0891 ] def +end ] /Cs1 exch/ColorSpace dr pop +[ /CIEBasedABC 4 dict dup begin +/WhitePoint [ 0.9505 1.0000 1.0891 ] def +/DecodeABC [ { 1.8008 exp } bind { 1.8008 exp } bind { 1.8008 exp } bind ] def +/MatrixABC [ 0.4295 0.2318 0.0204 0.3278 0.6722 0.1111 0.1933 0.0960 0.9578 ] def +/RangeLMN [ 0.0 0.9505 0.0 1.0000 0.0 1.0891 ] def +end ] /Cs2 exch/ColorSpace dr pop +[ /CIEBasedABC 4 dict dup begin +/WhitePoint [ 0.9505 1.0000 1.0891 ] def +/DecodeABC [ +{ 1.0 0.0 3 -1 roll 1 index 1 index le { exch pop} { pop } ifelse + 1 index 1 index ge { exch pop } { pop } ifelse < +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000001010101010101010101010101 +0101010101010101010101010101010101010101010101020202020202020202 +0202020202020202020202020202020202030303030303030303030303030303 +0303030303030304040404040404040404040404040404040404050505050505 +0505050505050505050506060606060606060606060606060607070707070707 +0707070707070708080808080808080808080808090909090909090909090909 +0a0a0a0a0a0a0a0a0a0a0a0b0b0b0b0b0b0b0b0b0b0b0c0c0c0c0c0c0c0c0c0c +0d0d0d0d0d0d0d0d0d0d0e0e0e0e0e0e0e0e0e0f0f0f0f0f0f0f0f0f10101010 +1010101010111111111111111112121212121212121313131313131313141414 +1414141414151515151515151616161616161616171717171717171818181818 +18181919191919191a1a1a1a1a1a1a1b1b1b1b1b1b1c1c1c1c1c1c1c1d1d1d1d +1d1d1e1e1e1e1e1e1f1f1f1f1f1f202020202020212121212121222222222223 +2323232323242424242425252525252526262626262727272727282828282829 +292929292a2a2a2a2a2b2b2b2b2b2c2c2c2c2c2d2d2d2d2d2e2e2e2e2e2f2f2f +2f2f303030303131313131323232323333333333343434343535353535363636 +36373737373838383839393939393a3a3a3a3b3b3b3b3c3c3c3c3d3d3d3d3e3e +3e3e3f3f3f3f4040404041414141424242424343434444444445454545464646 +4647474748484848494949494a4a4a4b4b4b4b4c4c4c4d4d4d4d4e4e4e4f4f4f +4f50505051515151525252535353535454545555555656565657575758585859 +59595a5a5a5a5b5b5b5c5c5c5d5d5d5e5e5e5f5f5f6060606061616162626263 +63636464646565656666666767676868686969696a6a6a6b6b6b6c6c6d6d6d6e +6e6e6f6f6f707070717171727273737374747475757576767677777878787979 +797a7a7b7b7b7c7c7c7d7d7e7e7e7f7f7f808081818182828283838484848585 +86868687878888888989898a8a8b8b8b8c8c8d8d8d8e8e8f8f90909091919292 +9293939494949595969697979798989999999a9a9b9b9c9c9c9d9d9e9e9f9f9f +a0a0a1a1a2a2a3a3a3a4a4a5a5a6a6a6a7a7a8a8a9a9aaaaabababacacadadae +aeafafb0b0b0b1b1b2b2b3b3b4b4b5b5b6b6b6b7b7b8b8b9b9bababbbbbcbcbd +bdbebebebfbfc0c0c1c1c2c2c3c3c4c4c5c5c6c6c7c7c8c8c9c9cacacbcbcccc +cdcdcececfcfd0d0d1d1d2d2d3d3d4d4d5d5d6d6d7d7d8d8d9d9dadadbdcdcdd +dddededfdfe0e0e1e1e2e2e3e3e4e4e5e6e6e7e7e8e8e9e9eaeaebebecededee +eeefeff0f0f1f1f2f3f3f4f4f5f5f6f6f7f8f8f9f9fafafbfcfcfdfdfefeffff +> dup length 1 sub 3 -1 roll mul dup dup floor cvi exch ceiling + cvi 3 index exch get 4 -1 roll 3 -1 roll get + dup 3 1 roll sub 3 -1 roll dup floor cvi sub mul add 255 div } bind + +{ 1.0 0.0 3 -1 roll 1 index 1 index le { exch pop} { pop } ifelse + 1 index 1 index ge { exch pop } { pop } ifelse < +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000001010101010101010101010101 +0101010101010101010101010101010101010101010101020202020202020202 +0202020202020202020202020202020202030303030303030303030303030303 +0303030303030304040404040404040404040404040404040404050505050505 +0505050505050505050506060606060606060606060606060607070707070707 +0707070707070708080808080808080808080808090909090909090909090909 +0a0a0a0a0a0a0a0a0a0a0a0b0b0b0b0b0b0b0b0b0b0b0c0c0c0c0c0c0c0c0c0c +0d0d0d0d0d0d0d0d0d0d0e0e0e0e0e0e0e0e0e0f0f0f0f0f0f0f0f0f10101010 +1010101010111111111111111112121212121212121313131313131313141414 +1414141414151515151515151616161616161616171717171717171818181818 +18181919191919191a1a1a1a1a1a1a1b1b1b1b1b1b1c1c1c1c1c1c1c1d1d1d1d +1d1d1e1e1e1e1e1e1f1f1f1f1f1f202020202020212121212121222222222223 +2323232323242424242425252525252526262626262727272727282828282829 +292929292a2a2a2a2a2b2b2b2b2b2c2c2c2c2c2d2d2d2d2d2e2e2e2e2e2f2f2f +2f2f303030303131313131323232323333333333343434343535353535363636 +36373737373838383839393939393a3a3a3a3b3b3b3b3c3c3c3c3d3d3d3d3e3e +3e3e3f3f3f3f4040404041414141424242424343434444444445454545464646 +4647474748484848494949494a4a4a4b4b4b4b4c4c4c4d4d4d4d4e4e4e4f4f4f +4f50505051515151525252535353535454545555555656565657575758585859 +59595a5a5a5a5b5b5b5c5c5c5d5d5d5e5e5e5f5f5f6060606061616162626263 +63636464646565656666666767676868686969696a6a6a6b6b6b6c6c6d6d6d6e +6e6e6f6f6f707070717171727273737374747475757576767677777878787979 +797a7a7b7b7b7c7c7c7d7d7e7e7e7f7f7f808081818182828283838484848585 +86868687878888888989898a8a8b8b8b8c8c8d8d8d8e8e8f8f90909091919292 +9293939494949595969697979798989999999a9a9b9b9c9c9c9d9d9e9e9f9f9f +a0a0a1a1a2a2a3a3a3a4a4a5a5a6a6a6a7a7a8a8a9a9aaaaabababacacadadae +aeafafb0b0b0b1b1b2b2b3b3b4b4b5b5b6b6b6b7b7b8b8b9b9bababbbbbcbcbd +bdbebebebfbfc0c0c1c1c2c2c3c3c4c4c5c5c6c6c7c7c8c8c9c9cacacbcbcccc +cdcdcececfcfd0d0d1d1d2d2d3d3d4d4d5d5d6d6d7d7d8d8d9d9dadadbdcdcdd +dddededfdfe0e0e1e1e2e2e3e3e4e4e5e6e6e7e7e8e8e9e9eaeaebebecededee +eeefeff0f0f1f1f2f3f3f4f4f5f5f6f6f7f8f8f9f9fafafbfcfcfdfdfefeffff +> dup length 1 sub 3 -1 roll mul dup dup floor cvi exch ceiling + cvi 3 index exch get 4 -1 roll 3 -1 roll get + dup 3 1 roll sub 3 -1 roll dup floor cvi sub mul add 255 div } bind + +{ 1.0 0.0 3 -1 roll 1 index 1 index le { exch pop} { pop } ifelse + 1 index 1 index ge { exch pop } { pop } ifelse < +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000001010101010101010101010101 +0101010101010101010101010101010101010101010101020202020202020202 +0202020202020202020202020202020202030303030303030303030303030303 +0303030303030304040404040404040404040404040404040404050505050505 +0505050505050505050506060606060606060606060606060607070707070707 +0707070707070708080808080808080808080808090909090909090909090909 +0a0a0a0a0a0a0a0a0a0a0a0b0b0b0b0b0b0b0b0b0b0b0c0c0c0c0c0c0c0c0c0c +0d0d0d0d0d0d0d0d0d0d0e0e0e0e0e0e0e0e0e0f0f0f0f0f0f0f0f0f10101010 +1010101010111111111111111112121212121212121313131313131313141414 +1414141414151515151515151616161616161616171717171717171818181818 +18181919191919191a1a1a1a1a1a1a1b1b1b1b1b1b1c1c1c1c1c1c1c1d1d1d1d +1d1d1e1e1e1e1e1e1f1f1f1f1f1f202020202020212121212121222222222223 +2323232323242424242425252525252526262626262727272727282828282829 +292929292a2a2a2a2a2b2b2b2b2b2c2c2c2c2c2d2d2d2d2d2e2e2e2e2e2f2f2f +2f2f303030303131313131323232323333333333343434343535353535363636 +36373737373838383839393939393a3a3a3a3b3b3b3b3c3c3c3c3d3d3d3d3e3e +3e3e3f3f3f3f4040404041414141424242424343434444444445454545464646 +4647474748484848494949494a4a4a4b4b4b4b4c4c4c4d4d4d4d4e4e4e4f4f4f +4f50505051515151525252535353535454545555555656565657575758585859 +59595a5a5a5a5b5b5b5c5c5c5d5d5d5e5e5e5f5f5f6060606061616162626263 +63636464646565656666666767676868686969696a6a6a6b6b6b6c6c6d6d6d6e +6e6e6f6f6f707070717171727273737374747475757576767677777878787979 +797a7a7b7b7b7c7c7c7d7d7e7e7e7f7f7f808081818182828283838484848585 +86868687878888888989898a8a8b8b8b8c8c8d8d8d8e8e8f8f90909091919292 +9293939494949595969697979798989999999a9a9b9b9c9c9c9d9d9e9e9f9f9f +a0a0a1a1a2a2a3a3a3a4a4a5a5a6a6a6a7a7a8a8a9a9aaaaabababacacadadae +aeafafb0b0b0b1b1b2b2b3b3b4b4b5b5b6b6b6b7b7b8b8b9b9bababbbbbcbcbd +bdbebebebfbfc0c0c1c1c2c2c3c3c4c4c5c5c6c6c7c7c8c8c9c9cacacbcbcccc +cdcdcececfcfd0d0d1d1d2d2d3d3d4d4d5d5d6d6d7d7d8d8d9d9dadadbdcdcdd +dddededfdfe0e0e1e1e2e2e3e3e4e4e5e6e6e7e7e8e8e9e9eaeaebebecededee +eeefeff0f0f1f1f2f3f3f4f4f5f5f6f6f7f8f8f9f9fafafbfcfcfdfdfefeffff +> dup length 1 sub 3 -1 roll mul dup dup floor cvi exch ceiling + cvi 3 index exch get 4 -1 roll 3 -1 roll get + dup 3 1 roll sub 3 -1 roll dup floor cvi sub mul add 255 div } bind +] def +/MatrixABC [ 0.4124 0.2126 0.0193 0.3576 0.7151 0.1192 0.1805 0.0722 0.9508 ] def +/RangeLMN [ 0.0 0.9505 0.0 1.0000 0.0 1.0891 ] def +end ] /Cs3 exch/ColorSpace dr pop +%%EndPageSetup +/Cs1 SC +1 1 1 sc +q +0 0 886 652 rc +-423 1152 m +890 1152 l +890 -4 l +-423 -4 l +h +-423 1152 m +f +Q +0.60000002 i +/Cs2 SC +1 1 1 sc +q +0.11275324 592.76953 m +844.05194 651.78351 l +885.4873 59.230465 l +41.5481 0.21648867 l +h +0.11275324 592.76953 m +W +41.747593 0.23043863 m +885.68677 59.244415 l +844.2514 651.79749 l +0.31224689 592.78351 l +h +W +41.747593 0.23043863 m +885.68677 59.244415 l +844.2514 651.79749 l +0.31224689 592.78351 l +h +W +0 0 886 652 rc +41.747593 0.23043863 m +885.68677 59.244415 l +844.2514 651.79749 l +0.31224689 592.78351 l +h +f +1 j +0 0 0 sc +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +92.400002 577.20001 m +99.400002 577.20001 l +S +CM +83.715683 580.64484 m +83.914536 581.39435 83.965485 582.46228 83.868523 583.84894 c +83.791275 584.95361 83.654594 585.83032 83.458473 586.479 c +83.090767 587.68683 82.5205 588.26361 81.74765 588.20959 c +80.974792 588.15552 80.489349 587.48663 80.291313 586.20282 c +80.188332 585.51947 80.175316 584.62769 80.252251 583.52747 c +80.324417 582.49548 80.459396 581.67578 80.657204 581.0683 c +81.028908 579.9339 81.614815 579.39478 82.414955 579.45068 c +83.083244 579.49744 83.516815 579.89545 83.715683 580.64484 c +h +84.305397 587.10699 m +84.826561 586.25262 85.12735 585.25037 85.207779 584.10016 c +85.271042 583.19543 85.189713 582.33319 84.963799 581.51331 c +84.537109 579.97137 83.669136 579.15454 82.359825 579.06299 c +81.464218 579.00037 80.699295 579.35577 80.065018 580.12921 c +79.386017 580.95428 78.994385 582.11237 78.890106 583.60352 c +78.80809 584.77649 78.944374 585.80017 79.298943 586.67474 c +79.777695 587.86401 80.596703 588.49921 81.755989 588.58026 c +82.80162 588.65338 83.651413 588.16229 84.305397 587.10699 c +h +86.074097 579.45294 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +825 577.20001 m +818 577.20001 l +S +92.400002 524.09998 m +99.400002 524.09998 l +S +CM +78.139099 526.48053 m +78.580132 526.21661 78.914291 526.09271 79.141602 526.10864 c +79.664421 526.1452 80.105164 526.4079 80.463882 526.89661 c +80.822586 527.38538 80.978409 527.96619 80.931358 528.63904 c +80.84903 529.81647 80.162369 530.62054 78.871376 531.05103 c +78.155777 531.28876 77.49794 531.38672 76.897835 531.34479 c +76.797821 531.33777 76.735077 531.33679 76.709587 531.3418 c +76.68412 531.34686 76.651756 531.36865 76.612526 531.40704 c +76.619072 531.44397 76.624886 531.47522 76.629951 531.50073 c +76.635033 531.52618 76.641304 531.55066 76.648819 531.57397 c +77.907486 534.93756 l +80.832962 535.14209 l +80.978447 535.15228 81.089211 535.18518 81.165268 535.24072 c +81.241325 535.29639 81.338234 535.39679 81.455986 535.54205 c +81.571777 535.45422 l +81.128098 534.1554 l +81.11277 534.11322 81.06459 534.08362 80.983559 534.06653 c +80.902512 534.04938 80.81427 534.03754 80.718788 534.03082 c +78.079735 533.84631 l +77.583534 532.61249 l +78.33802 532.53723 78.891975 532.45496 79.245445 532.36542 c +79.827072 532.21423 80.321846 531.96564 80.729805 531.61951 c +81.079697 531.31964 81.352806 530.97443 81.549164 530.58386 c +81.745514 530.19324 81.859406 529.77295 81.890877 529.32281 c +81.961128 528.31818 81.661781 527.45428 80.992798 526.73145 c +80.323822 526.00854 79.441536 525.6087 78.345894 525.5321 c +77.900368 525.50098 77.538193 525.51904 77.259392 525.58636 c +76.794907 525.6955 76.549957 525.93188 76.524529 526.29559 c +76.514992 526.43201 76.555511 526.55481 76.646103 526.66388 c +76.736702 526.77301 76.884285 526.83472 77.088852 526.84906 c +77.347992 526.86719 77.698074 526.74426 78.139099 526.48053 c +h +87.74025 527.69659 m +87.93911 528.44611 87.990059 529.51404 87.893097 530.9007 c +87.815849 532.00537 87.679169 532.88208 87.483047 533.53076 c +87.115341 534.73859 86.545074 535.31537 85.772224 535.26135 c +84.999359 535.20734 84.513931 534.53839 84.31588 533.25458 c +84.212906 532.57123 84.199898 531.67944 84.276833 530.57922 c +84.348991 529.54724 84.483971 528.7276 84.681778 528.12012 c +85.05349 526.98566 85.639389 526.44653 86.439529 526.50244 c +87.107819 526.54919 87.541389 526.9472 87.74025 527.69659 c +h +88.329979 534.15881 m +88.851135 533.30438 89.151924 532.30212 89.232353 531.15192 c +89.295616 530.24719 89.214287 529.38495 88.988373 528.56506 c +88.561684 527.02319 87.69371 526.2063 86.384399 526.11475 c +85.488792 526.05212 84.723869 526.40753 84.089592 527.18097 c +83.410599 528.00604 83.018959 529.16412 82.914688 530.65527 c +82.832664 531.82825 82.968948 532.85193 83.323517 533.7265 c +83.802269 534.91577 84.621277 535.55096 85.780563 535.63202 c +86.826195 535.70514 87.675995 535.21405 88.329979 534.15881 c +h +90.098679 526.5047 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +825 524.09998 m +818 524.09998 l +S +92.400002 470.95001 m +99.400002 470.95001 l +S +CM +77.473663 481.70621 m +77.476738 481.69501 77.479698 481.66895 77.482559 481.62805 c +78.056686 473.41769 l +78.081169 473.06754 78.189941 472.85132 78.383011 472.76889 c +78.57608 472.68643 78.927826 472.65399 79.438286 472.67136 c +79.451637 472.48041 l +75.605553 472.21149 l +75.591248 472.41608 l +76.139427 472.48187 76.49334 472.58191 76.652962 472.71646 c +76.812592 472.85092 76.878098 473.12277 76.84948 473.53195 c +76.407921 479.84665 l +76.392662 480.06482 76.353775 480.22888 76.291283 480.33871 c +76.228775 480.44852 76.106598 480.4971 75.924751 480.48441 c +75.806549 480.47614 75.655418 480.43246 75.471359 480.35333 c +75.2873 480.2742 75.11599 480.19257 74.957413 480.1084 c +74.944061 480.29932 l +77.357567 481.74951 l +77.4394 481.75525 l +77.459183 481.73376 77.470596 481.71744 77.473663 481.70621 c +h +85.569588 474.26505 m +85.76844 475.01453 85.819389 476.08249 85.722427 477.46909 c +85.64518 478.57379 85.508499 479.4505 85.312378 480.09921 c +84.944672 481.30701 84.374405 481.88382 83.601555 481.82977 c +82.828705 481.77573 82.343262 481.10684 82.145233 479.82291 c +82.042244 479.13965 82.029228 478.24786 82.106163 477.14764 c +82.178322 476.11566 82.313301 475.29599 82.511108 474.68851 c +82.88282 473.55408 83.468727 473.01492 84.26886 473.07089 c +84.937149 473.11761 85.37072 473.51562 85.569588 474.26505 c +h +86.159309 480.7272 m +86.680466 479.87277 86.981255 478.87051 87.061684 477.72034 c +87.124947 476.81564 87.043617 475.95337 86.817711 475.13351 c +86.391014 473.59158 85.523041 472.77475 84.213737 472.6832 c +83.318123 472.62057 82.5532 472.97598 81.918922 473.74942 c +81.239929 474.57446 80.848289 475.73257 80.744019 477.22372 c +80.661995 478.39667 80.798279 479.42035 81.152855 480.29492 c +81.631599 481.48422 82.450607 482.11938 83.609901 482.20047 c +84.655525 482.27359 85.505325 481.78247 86.159309 480.7272 c +h +92.552536 474.75333 m +92.751389 475.50284 92.802338 476.57077 92.705376 477.9574 c +92.628128 479.0621 92.491447 479.93878 92.295326 480.58749 c +91.92762 481.79529 91.357353 482.3721 90.584503 482.31808 c +89.811653 482.26404 89.32621 481.59512 89.128181 480.31119 c +89.025192 479.62796 89.012177 478.73618 89.089111 477.63596 c +89.16127 476.60397 89.296249 475.7843 89.494057 475.17682 c +89.865768 474.04239 90.451675 473.50323 91.251808 473.55917 c +91.920097 473.60593 92.353668 474.00394 92.552536 474.75333 c +h +93.142258 481.21552 m +93.663414 480.36108 93.964203 479.35883 94.044632 478.20862 c +94.107895 477.30392 94.026566 476.44165 93.800659 475.6218 c +93.373962 474.0799 92.505989 473.26306 91.196686 473.17151 c +90.301071 473.10886 89.536148 473.46426 88.901871 474.2377 c +88.222878 475.06274 87.831238 476.22086 87.726967 477.71201 c +87.644943 478.88495 87.781227 479.90866 88.135803 480.78323 c +88.614548 481.9725 89.433556 482.6077 90.59285 482.68875 c +91.638474 482.76187 92.488274 482.27075 93.142258 481.21552 c +h +94.910957 473.56143 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +825 470.95001 m +818 470.95001 l +S +92.400002 417.85001 m +99.400002 417.85001 l +S +CM +81.177734 428.73557 m +81.180809 428.72437 81.183769 428.6983 81.18663 428.65738 c +81.760757 420.44705 l +81.78524 420.09689 81.894005 419.88065 82.087074 419.79822 c +82.280151 419.71579 82.631897 419.68335 83.142349 419.70071 c +83.155701 419.50977 l +79.309624 419.24081 l +79.295319 419.44543 l +79.843491 419.51123 80.197411 419.61127 80.357033 419.74582 c +80.516663 419.88028 80.582169 420.1521 80.553551 420.56131 c +80.111984 426.87598 l +80.096733 427.09415 80.057838 427.25824 79.995346 427.36804 c +79.932846 427.47787 79.810669 427.52646 79.628822 427.51373 c +79.51062 427.50546 79.359489 427.46182 79.17543 427.38269 c +78.991371 427.30356 78.820061 427.22192 78.661484 427.13776 c +78.648132 427.32867 l +81.06163 428.77887 l +81.143471 428.78461 l +81.163246 428.76312 81.174667 428.74677 81.177734 428.73557 c +h +86.655449 420.56656 m +87.096481 420.3027 87.430634 420.1788 87.657951 420.1947 c +88.180763 420.23126 88.621513 420.49393 88.980225 420.98267 c +89.338936 421.47147 89.494759 422.05225 89.447708 422.7251 c +89.365379 423.90253 88.678711 424.7066 87.387733 425.13708 c +86.672134 425.37485 86.01429 425.47281 85.414185 425.43085 c +85.314163 425.42383 85.251419 425.42285 85.225937 425.42789 c +85.200462 425.43292 85.168106 425.45471 85.128876 425.49307 c +85.135422 425.53003 85.141235 425.56131 85.146309 425.58682 c +85.151375 425.61224 85.157661 425.63675 85.165169 425.66003 c +86.423843 429.02362 l +89.349304 429.22818 l +89.494789 429.23834 89.60556 429.27127 89.681618 429.32681 c +89.757675 429.38245 89.854584 429.48285 89.972351 429.62811 c +90.088127 429.54028 l +89.644447 428.24146 l +89.62912 428.19931 89.58094 428.16968 89.499908 428.15256 c +89.418869 428.13547 89.330612 428.1236 89.235146 428.11691 c +86.596085 427.93237 l +86.099884 426.69855 l +86.85437 426.62329 87.408325 426.54105 87.761795 426.45148 c +88.343414 426.30029 88.838203 426.0517 89.246147 425.7056 c +89.596054 425.40567 89.869171 425.06049 90.065506 424.66995 c +90.261856 424.2793 90.375763 423.85901 90.407234 423.40891 c +90.477486 422.40427 90.178131 421.54037 89.509155 420.81754 c +88.840172 420.0946 87.957886 419.69479 86.862251 419.61819 c +86.416718 419.58704 86.05455 419.6051 85.775742 419.67242 c +85.311264 419.78159 85.066307 420.01797 85.040871 420.38168 c +85.031334 420.51807 85.071861 420.6409 85.16246 420.74997 c +85.253052 420.85907 85.400635 420.92081 85.605209 420.93512 c +85.864342 420.95322 86.214424 420.83035 86.655449 420.56656 c +h +96.256607 421.78268 m +96.45546 422.53217 96.506409 423.60013 96.409447 424.98676 c +96.332199 426.09143 96.195518 426.96814 95.999397 427.61685 c +95.631691 428.82465 95.061424 429.40146 94.288574 429.34741 c +93.515717 429.29337 93.030273 428.62448 92.832237 427.34064 c +92.729256 426.65729 92.71624 425.7655 92.793175 424.66531 c +92.865341 423.63333 93.00032 422.81363 93.198128 422.20615 c +93.569832 421.07172 94.155739 420.53259 94.955879 420.58853 c +95.624168 420.63525 96.057739 421.03326 96.256607 421.78268 c +h +96.846321 428.24484 m +97.367485 427.39041 97.668274 426.38815 97.748703 425.23798 c +97.811966 424.33328 97.730637 423.47101 97.504723 422.65115 c +97.078033 421.10922 96.21006 420.29239 94.900757 420.20084 c +94.005142 420.13821 93.240219 420.49362 92.605942 421.26706 c +91.926941 422.0921 91.535309 423.25021 91.43103 424.74136 c +91.349014 425.91431 91.485298 426.93802 91.839874 427.81256 c +92.318619 429.00186 93.137627 429.63702 94.296913 429.71811 c +95.342545 429.79123 96.192337 429.30011 96.846321 428.24484 c +h +98.615021 420.59079 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +825 417.85001 m +818 417.85001 l +S +92.400002 364.70001 m +99.400002 364.70001 l +S +CM +80.646729 366.21222 m +82.18985 368.05606 83.230873 369.40344 83.769844 370.25433 c +84.308807 371.10519 84.551422 371.91479 84.497696 372.68311 c +84.450645 373.35596 84.232956 373.8558 83.844627 374.18271 c +83.456284 374.50961 83.009819 374.65543 82.50518 374.62015 c +81.882355 374.5766 81.393631 374.31396 81.038994 373.83234 c +80.842804 373.56732 80.665092 373.16885 80.505844 372.63693 c +80.208328 372.6778 l +80.362511 373.73932 80.697021 374.49249 81.211838 374.93738 c +81.726662 375.38229 82.295471 375.62646 82.918312 375.67001 c +83.686615 375.72375 84.325233 375.52521 84.83416 375.07422 c +85.343102 374.6232 85.62204 374.04776 85.671005 373.34756 c +85.723137 372.60199 85.51651 371.86578 85.051102 371.13885 c +84.585701 370.41193 83.555618 369.10406 81.960808 367.21542 c +85.090866 367.4343 l +85.527306 367.46481 85.830521 367.53854 86.000496 367.65561 c +86.170494 367.77255 86.352715 368.04111 86.547188 368.4613 c +86.730209 368.39188 l +86.106316 366.43631 l +80.6577 366.0553 l +h +91.849205 368.1947 m +92.048058 368.94418 92.099014 370.01215 92.00206 371.39877 c +91.924805 372.50345 91.788116 373.38016 91.592003 374.02887 c +91.224304 375.23666 90.654037 375.81348 89.881172 375.75943 c +89.108322 375.70538 88.622879 375.0365 88.42485 373.75256 c +88.321869 373.06931 88.308846 372.17752 88.38578 371.07733 c +88.457947 370.04535 88.592934 369.22565 88.790741 368.61816 c +89.162437 367.48373 89.748344 366.94461 90.548477 367.00055 c +91.216774 367.04727 91.650352 367.44528 91.849205 368.1947 c +h +92.438927 374.65686 m +92.960091 373.80243 93.260872 372.80017 93.341301 371.64999 c +93.404564 370.7453 93.32325 369.88303 93.097328 369.06317 c +92.670647 367.52124 91.802673 366.70441 90.493362 366.61285 c +89.597755 366.55023 88.832832 366.90564 88.198555 367.67908 c +87.519547 368.50412 87.127914 369.66223 87.023643 371.15338 c +86.941628 372.32632 87.077896 373.35004 87.432472 374.22458 c +87.911232 375.41388 88.73024 376.04907 89.889519 376.13013 c +90.93515 376.20325 91.784943 375.71213 92.438927 374.65686 c +h +98.832153 368.68298 m +99.031006 369.4325 99.081963 370.50043 98.985008 371.88705 c +98.907753 372.99176 98.771065 373.86847 98.574951 374.51715 c +98.207253 375.72495 97.636986 376.30179 96.86412 376.24774 c +96.09127 376.1937 95.605827 375.52481 95.407799 374.24084 c +95.304817 373.55762 95.291794 372.66583 95.368729 371.56561 c +95.440895 370.53363 95.575882 369.71396 95.773689 369.10648 c +96.145386 367.97205 96.731293 367.43289 97.531425 367.48883 c +98.199722 367.53558 98.633301 367.93359 98.832153 368.68298 c +h +99.421875 375.14517 m +99.943039 374.29074 100.24382 373.28848 100.32425 372.13828 c +100.38751 371.23361 100.3062 370.37134 100.08028 369.55148 c +99.653595 368.00955 98.785622 367.19272 97.476311 367.10117 c +96.580704 367.03854 95.815781 367.39395 95.181503 368.16739 c +94.502495 368.99243 94.110863 370.15051 94.006592 371.64169 c +93.924576 372.81461 94.060844 373.83832 94.415421 374.71289 c +94.89418 375.90216 95.713188 376.53735 96.872467 376.61841 c +97.918098 376.69153 98.767891 376.20041 99.421875 375.14517 c +h +101.19057 367.49109 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +825 364.70001 m +818 364.70001 l +S +92.400002 311.60001 m +99.400002 311.60001 l +S +CM +84.3508 313.24158 m +85.893921 315.08539 86.934944 316.4328 87.473915 317.28366 c +88.012871 318.13455 88.255493 318.94412 88.201759 319.71246 c +88.154709 320.38531 87.937027 320.88516 87.548698 321.21207 c +87.160355 321.53897 86.71389 321.68478 86.209251 321.64948 c +85.586418 321.60593 85.097702 321.34329 84.743065 320.86169 c +84.546867 320.59665 84.369164 320.19818 84.209908 319.66629 c +83.912399 319.70712 l +84.066582 320.76868 84.401085 321.52185 84.915909 321.96674 c +85.430725 322.41165 85.999542 322.65582 86.622383 322.69937 c +87.390686 322.75308 88.029297 322.55457 88.538231 322.10355 c +89.047165 321.65256 89.326111 321.07712 89.375069 320.37692 c +89.427208 319.63135 89.220581 318.89514 88.755173 318.16821 c +88.289764 317.44125 87.259689 316.13342 85.664879 314.24478 c +88.794937 314.46365 l +89.231369 314.49417 89.534584 314.5679 89.704567 314.68494 c +89.874565 314.80188 90.056786 315.07047 90.251251 315.49063 c +90.43428 315.42123 l +89.810387 313.46567 l +84.361771 313.08466 l +h +92.935066 314.49625 m +93.376099 314.23236 93.710266 314.10846 93.937569 314.12436 c +94.460396 314.16092 94.901146 314.42361 95.259857 314.91232 c +95.618561 315.40112 95.774391 315.9819 95.727341 316.65475 c +95.645004 317.83218 94.958344 318.63626 93.667351 319.06674 c +92.951752 319.3045 92.293907 319.40247 91.69381 319.3605 c +91.593796 319.35352 91.531044 319.35251 91.505569 319.35754 c +91.480087 319.36258 91.447723 319.3844 91.408493 319.42273 c +91.415054 319.45969 91.420853 319.49097 91.425926 319.51648 c +91.431007 319.5419 91.437286 319.56641 91.444794 319.58969 c +92.703461 322.95328 l +95.628937 323.15784 l +95.774414 323.16803 95.885178 323.20093 95.96125 323.25647 c +96.0373 323.3121 96.134216 323.41251 96.251968 323.55777 c +96.36776 323.46994 l +95.924065 322.17114 l +95.908737 322.12897 95.860558 322.09933 95.779526 322.08224 c +95.698494 322.06512 95.610237 322.05325 95.514771 322.04657 c +92.875702 321.86203 l +92.379509 320.6282 l +93.133995 320.55295 93.687958 320.4707 94.041412 320.38113 c +94.623047 320.22995 95.117821 319.98135 95.525772 319.63525 c +95.875671 319.33536 96.148788 318.99014 96.345131 318.59961 c +96.541481 318.20895 96.65538 317.78867 96.686859 317.33856 c +96.757111 316.33392 96.457764 315.47003 95.788773 314.74722 c +95.119789 314.02429 94.237503 313.62445 93.141869 313.54785 c +92.696335 313.51669 92.334175 313.53476 92.055359 313.60208 c +91.590881 313.71124 91.345932 313.94763 91.320503 314.31134 c +91.310966 314.44772 91.351486 314.57056 91.442078 314.67963 c +91.532669 314.78873 91.680252 314.85046 91.884834 314.86478 c +92.143967 314.8829 92.494041 314.76001 92.935066 314.49625 c +h +102.53622 315.71234 m +102.73508 316.46182 102.78603 317.52979 102.68907 318.91641 c +102.61182 320.02112 102.47514 320.8978 102.27901 321.54651 c +101.91132 322.7543 101.34106 323.33112 100.56819 323.27707 c +99.795341 323.22305 99.309898 322.55414 99.111862 321.27029 c +99.008888 320.58694 98.995865 319.69519 99.0728 318.59497 c +99.144958 317.56299 99.279945 316.74332 99.477753 316.13583 c +99.849457 315.00137 100.43536 314.46225 101.2355 314.51819 c +101.90379 314.56494 102.33736 314.96295 102.53622 315.71234 c +h +103.12595 322.17453 m +103.6471 321.3201 103.94789 320.31784 104.02832 319.16763 c +104.09158 318.26294 104.01026 317.40067 103.78435 316.58081 c +103.35767 315.03891 102.48969 314.22205 101.18037 314.13049 c +100.28477 314.06787 99.519844 314.42328 98.885567 315.19672 c +98.206566 316.02176 97.814934 317.17987 97.710663 318.67102 c +97.628647 319.84396 97.764915 320.86768 98.119492 321.74222 c +98.598251 322.93152 99.417252 323.56671 100.57654 323.64777 c +101.62217 323.72089 102.47196 323.22977 103.12595 322.17453 c +h +104.89465 314.52045 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +825 311.60001 m +818 311.60001 l +S +92.400002 258.45001 m +99.400002 258.45001 l +S +CM +89.864975 260.99142 m +90.294525 260.76114 90.652504 260.65594 90.938919 260.67599 c +91.575386 260.72049 92.033173 260.96832 92.312263 261.41959 c +92.59137 261.87076 92.713272 262.34872 92.677986 262.85339 c +92.643974 263.33981 92.489059 263.75842 92.21328 264.10913 c +91.746925 264.70245 91.011406 264.9639 90.006699 264.89362 c +89.947594 264.8895 89.890839 264.88443 89.836449 264.87833 c +89.782051 264.87231 89.718803 264.86218 89.646698 264.8479 c +89.620659 265.02432 l +90.32962 265.33884 90.881287 265.68124 91.275703 266.05148 c +91.670105 266.42169 91.847763 266.88632 91.808655 267.44556 c +91.77401 267.94104 91.582817 268.30688 91.235107 268.54291 c +90.887383 268.77902 90.502129 268.88229 90.07933 268.85275 c +89.579239 268.81778 89.151146 268.60278 88.795013 268.20789 c +88.599876 267.99326 88.396461 267.66837 88.184753 267.23325 c +87.970016 267.26614 l +88.103554 267.96988 88.40361 268.54599 88.870216 268.99435 c +89.33683 269.44269 89.89518 269.68954 90.545296 269.73499 c +91.240852 269.78363 91.791794 269.63028 92.198097 269.27496 c +92.604416 268.91965 92.825058 268.492 92.860031 267.99182 c +92.890862 267.5509 92.762306 267.13531 92.474373 266.74518 c +92.311691 266.52359 92.053024 266.27023 91.698349 265.98511 c +92.147827 265.82916 92.513138 265.63547 92.794296 265.40384 c +93.323219 264.96115 93.613258 264.37384 93.664452 263.64185 c +93.724846 262.77814 93.438263 261.99283 92.80471 261.28613 c +92.171143 260.57941 91.226997 260.18219 89.972252 260.09442 c +89.413063 260.05533 89.015152 260.1109 88.778519 260.26108 c +88.541878 260.41122 88.416885 260.58182 88.403534 260.77277 c +88.395264 260.89096 88.42482 261.0072 88.492203 261.12158 c +88.559586 261.23596 88.677376 261.29904 88.845581 261.31082 c +89.095627 261.32828 89.435417 261.22183 89.864975 260.99142 c +h +99.451775 262.21686 m +99.650627 262.96637 99.701576 264.03433 99.604614 265.42093 c +99.527367 266.52563 99.390686 267.40234 99.194572 268.05103 c +98.826866 269.25882 98.256599 269.83566 97.483742 269.78162 c +96.710892 269.72757 96.225449 269.05869 96.02742 267.77472 c +95.924438 267.09149 95.911415 266.19971 95.98835 265.09949 c +96.060509 264.0675 96.195488 263.24783 96.393295 262.64035 c +96.765007 261.50592 97.350914 260.96677 98.151047 261.02274 c +98.819336 261.06946 99.252907 261.46747 99.451775 262.21686 c +h +100.0415 268.67905 m +100.56266 267.82462 100.86344 266.82236 100.94387 265.67218 c +101.00713 264.76749 100.9258 263.90521 100.6999 263.08536 c +100.27322 261.54343 99.405228 260.72659 98.095924 260.63504 c +97.200325 260.57242 96.435387 260.92783 95.801109 261.70126 c +95.122116 262.52631 94.730484 263.68439 94.626213 265.17557 c +94.544197 266.34848 94.680466 267.37219 95.035042 268.24677 c +95.513802 269.43607 96.332794 270.07123 97.492088 270.15228 c +98.537712 270.2254 99.387512 269.73428 100.0415 268.67905 c +h +106.43472 262.70517 m +106.63358 263.45465 106.68452 264.52261 106.58756 265.90924 c +106.51031 267.01392 106.37363 267.89062 106.17752 268.53934 c +105.80981 269.74713 105.23955 270.32394 104.46669 270.2699 c +103.69384 270.21585 103.2084 269.54697 103.01037 268.26303 c +102.90739 267.57977 102.89436 266.68799 102.9713 265.5878 c +103.04346 264.55582 103.17844 263.73611 103.37624 263.12863 c +103.74796 261.9942 104.33386 261.45508 105.134 261.51102 c +105.80228 261.55774 106.23586 261.95575 106.43472 262.70517 c +h +107.02444 269.16733 m +107.54561 268.3129 107.84639 267.31064 107.92682 266.16046 c +107.99008 265.25577 107.90875 264.39349 107.68285 263.57364 c +107.25616 262.03171 106.38818 261.21487 105.07887 261.12332 c +104.18327 261.0607 103.41833 261.41611 102.78406 262.18954 c +102.10506 263.01459 101.71343 264.1727 101.60916 265.66385 c +101.52715 266.83679 101.66341 267.86047 102.01799 268.73505 c +102.49675 269.92435 103.31574 270.55951 104.47504 270.64059 c +105.52066 270.71371 106.37046 270.2226 107.02444 269.16733 c +h +108.79314 261.51328 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +825 258.45001 m +818 258.45001 l +S +92.400002 205.35001 m +99.400002 205.35001 l +S +CM +93.569046 208.02078 m +93.998596 207.7905 94.356575 207.6853 94.642982 207.70534 c +95.279449 207.74983 95.737236 207.99768 96.016327 208.44894 c +96.295441 208.90012 96.417343 209.37808 96.38205 209.88275 c +96.348038 210.36916 96.19313 210.78778 95.917343 211.13849 c +95.450989 211.73181 94.715477 211.99324 93.71077 211.92297 c +93.651665 211.91884 93.59491 211.91377 93.54052 211.90767 c +93.486115 211.90166 93.422867 211.89153 93.350769 211.87726 c +93.32473 212.05367 l +94.033684 212.36819 94.585358 212.7106 94.979774 213.08083 c +95.374176 213.45103 95.551826 213.91566 95.512726 214.4749 c +95.478073 214.97038 95.286888 215.33624 94.939178 215.57225 c +94.591454 215.80838 94.2062 215.91165 93.783401 215.8821 c +93.28331 215.84712 92.855217 215.63214 92.499084 215.23723 c +92.30394 215.0226 92.100525 214.69771 91.888824 214.26259 c +91.674088 214.29549 l +91.807625 214.99922 92.107674 215.57535 92.574287 216.0237 c +93.040901 216.47203 93.599251 216.71889 94.249359 216.76434 c +94.944923 216.81299 95.495865 216.65964 95.902168 216.30432 c +96.308487 215.94899 96.529121 215.52135 96.564102 215.02116 c +96.594933 214.58025 96.466377 214.16466 96.178444 213.77452 c +96.015762 213.55293 95.757095 213.29958 95.40242 213.01443 c +95.851891 212.85852 96.217201 212.66483 96.498367 212.43318 c +97.027283 211.99049 97.317329 211.4032 97.368515 210.67119 c +97.428909 209.8075 97.142334 209.02219 96.508781 208.31548 c +95.875214 207.60875 94.931061 207.21153 93.676315 207.12378 c +93.117134 207.08469 92.719215 207.14026 92.48259 207.29042 c +92.245949 207.44058 92.120949 207.61118 92.107597 207.80211 c +92.099335 207.92032 92.128883 208.03656 92.196274 208.15094 c +92.263657 208.26532 92.381447 208.3284 92.549652 208.34015 c +92.79969 208.35764 93.139488 208.25119 93.569046 208.02078 c +h +100.53764 208.5184 m +100.97867 208.25453 101.31283 208.13063 101.54014 208.14653 c +102.06296 208.18309 102.50372 208.44577 102.86242 208.93448 c +103.22112 209.42329 103.37695 210.00409 103.3299 210.67694 c +103.24757 211.85437 102.56091 212.65843 101.26992 213.08891 c +100.55432 213.32668 99.896477 213.42464 99.296371 213.38266 c +99.196358 213.37567 99.133614 213.37469 99.108139 213.37973 c +99.082657 213.38477 99.050293 213.40656 99.011063 213.44492 c +99.017609 213.48186 99.023422 213.51314 99.028496 213.53867 c +99.033569 213.56407 99.039856 213.58858 99.047356 213.61185 c +100.30603 216.97545 l +103.2315 217.18002 l +103.37698 217.19019 103.48775 217.2231 103.5638 217.27864 c +103.63987 217.33427 103.73677 217.43468 103.85454 217.57996 c +103.97031 217.49211 l +103.52663 216.1933 l +103.51131 216.15112 103.46313 216.12149 103.3821 216.1044 c +103.30106 216.08731 103.21281 216.07542 103.11734 216.06874 c +100.47827 215.8842 l +99.982071 214.65039 l +100.73656 214.57513 101.29051 214.49287 101.64398 214.40332 c +102.22561 214.25212 102.72039 214.00352 103.12833 213.65744 c +103.47824 213.35751 103.75136 213.01233 103.9477 212.62178 c +104.14405 212.23112 104.25795 211.81084 104.28943 211.36073 c +104.35968 210.35609 104.06032 209.4922 103.39134 208.76938 c +102.72236 208.04645 101.84007 207.64664 100.74444 207.57002 c +100.2989 207.53886 99.936745 207.55695 99.657928 207.62427 c +99.193451 207.73343 98.948494 207.96982 98.923058 208.33353 c +98.913528 208.46989 98.954048 208.59271 99.044647 208.7018 c +99.135239 208.81088 99.282822 208.87263 99.487404 208.88695 c +99.746529 208.90506 100.09661 208.78218 100.53764 208.5184 c +h +110.13879 209.73451 m +110.33765 210.48401 110.3886 211.55196 110.29163 212.93857 c +110.21439 214.04327 110.07771 214.91998 109.88158 215.56868 c +109.51388 216.77647 108.94361 217.3533 108.17076 217.29926 c +107.39791 217.24521 106.91247 216.57632 106.71444 215.29237 c +106.61146 214.60913 106.59843 213.71735 106.67537 212.61714 c +106.74753 211.58516 106.88251 210.76547 107.08031 210.15799 c +107.45203 209.02356 108.03793 208.48442 108.83807 208.54036 c +109.50636 208.5871 109.93993 208.98511 110.13879 209.73451 c +h +110.72852 216.19669 m +111.24967 215.34225 111.55046 214.34 111.63089 213.1898 c +111.69415 212.28513 111.61282 211.42285 111.38691 210.60298 c +110.96024 209.06107 110.09225 208.24423 108.78294 208.15268 c +107.88734 208.09006 107.12241 208.44545 106.48813 209.2189 c +105.80914 210.04395 105.4175 211.20204 105.31323 212.69321 c +105.23121 213.86613 105.36749 214.88983 105.72206 215.7644 c +106.20081 216.95369 107.01981 217.58887 108.1791 217.66994 c +109.22473 217.74306 110.07453 217.25194 110.72852 216.19669 c +h +112.49722 208.54262 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +825 205.35001 m +818 205.35001 l +S +92.400002 152.2 m +99.400002 152.2 l +S +CM +98.32 162.27536 m +95.302666 157.30869 l +98.650932 157.54282 l +h +98.671837 163.71161 m +99.319672 163.75691 l +99.74884 157.6196 l +101.17406 157.71925 l +101.23749 156.81227 l +99.812263 156.7126 l +99.974869 154.38719 l +98.890594 154.31137 l +98.727989 156.6368 l +94.800079 156.36212 l +94.736656 157.2691 l +h +106.41333 156.19421 m +106.61218 156.94371 106.66313 158.01166 106.56617 159.39828 c +106.48892 160.50298 106.35224 161.37968 106.15613 162.02838 c +105.78841 163.23618 105.21815 163.813 104.4453 163.75896 c +103.67243 163.70491 103.187 163.03603 102.98898 161.75208 c +102.88599 161.06883 102.87297 160.17705 102.94991 159.07684 c +103.02206 158.04486 103.15704 157.22517 103.35485 156.61769 c +103.72656 155.48326 104.31247 154.94412 105.1126 155.00008 c +105.78089 155.0468 106.21446 155.44481 106.41333 156.19421 c +h +107.00305 162.65639 m +107.52421 161.80196 107.825 160.7997 107.90543 159.64951 c +107.96869 158.74483 107.88736 157.88255 107.66145 157.0627 c +107.23476 155.52077 106.36678 154.70393 105.05747 154.61238 c +104.16187 154.54976 103.39694 154.90517 102.76266 155.6786 c +102.08367 156.50365 101.69203 157.66174 101.58776 159.15291 c +101.50574 160.32584 101.64202 161.34955 101.99659 162.22411 c +102.47534 163.41339 103.29435 164.04857 104.45364 164.12964 c +105.49927 164.20276 106.34907 163.71164 107.00305 162.65639 c +h +113.39628 156.68251 m +113.59513 157.43201 113.64608 158.49995 113.54912 159.88658 c +113.47187 160.99127 113.33519 161.86798 113.13908 162.51668 c +112.77136 163.72447 112.2011 164.3013 111.42825 164.24725 c +110.65538 164.19321 110.16995 163.52432 109.97192 162.24037 c +109.86893 161.55713 109.85592 160.66534 109.93285 159.56514 c +110.00501 158.53316 110.13999 157.71347 110.3378 157.10599 c +110.70951 155.97156 111.29542 155.43242 112.09555 155.48836 c +112.76384 155.5351 113.19741 155.93311 113.39628 156.68251 c +h +113.986 163.14468 m +114.50716 162.29025 114.80795 161.28799 114.88837 160.1378 c +114.95164 159.23312 114.87031 158.37085 114.6444 157.55099 c +114.2177 156.00906 113.34973 155.19223 112.04042 155.10068 c +111.14482 155.03806 110.37989 155.39345 109.74561 156.1669 c +109.06662 156.99194 108.67498 158.15004 108.57071 159.6412 c +108.48869 160.81413 108.62497 161.83783 108.97954 162.7124 c +109.45829 163.90169 110.2773 164.53687 111.43659 164.61794 c +112.48222 164.69106 113.33202 164.19994 113.986 163.14468 c +h +115.7547 155.49062 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +825 152.2 m +818 152.2 l +S +92.400002 99.099998 m +99.400002 99.099998 l +S +CM +102.02406 109.30471 m +99.006737 104.33801 l +102.355 104.57214 l +h +102.37591 110.74095 m +103.02374 110.78625 l +103.45291 104.64891 l +104.87814 104.74857 l +104.94156 103.84161 l +103.51633 103.74194 l +103.67894 101.41656 l +102.59467 101.34074 l +102.43206 103.66613 l +98.50415 103.39146 l +98.440727 104.29842 l +h +107.49919 102.49574 m +107.94022 102.23191 108.27438 102.10795 108.50169 102.12385 c +109.02451 102.16041 109.46526 102.42307 109.82397 102.91185 c +110.18268 103.40063 110.3385 103.98143 110.29145 104.65428 c +110.20912 105.83171 109.52246 106.63577 108.23146 107.06627 c +107.51586 107.30402 106.85803 107.40198 106.25793 107.36002 c +106.15791 107.35302 106.09516 107.35204 106.06968 107.35708 c +106.0442 107.36211 106.01185 107.3839 105.97262 107.42226 c +105.97916 107.45921 105.98498 107.49049 105.99004 107.51601 c +105.99512 107.54142 106.0014 107.56593 106.00891 107.5892 c +107.26758 110.9528 l +110.19305 111.15736 l +110.33854 111.16754 110.4493 111.20045 110.52536 111.25599 c +110.60142 111.31163 110.69833 111.41203 110.81609 111.5573 c +110.93187 111.46946 l +110.48819 110.17065 l +110.47286 110.12848 110.42468 110.09885 110.34365 110.08175 c +110.26261 110.06466 110.17435 110.05277 110.07889 110.0461 c +107.43983 109.86155 l +106.94363 108.62773 l +107.69811 108.55248 108.25207 108.47022 108.60554 108.38066 c +109.18716 108.22946 109.68194 107.98087 110.08989 107.63479 c +110.4398 107.33486 110.71291 106.98968 110.90926 106.59912 c +111.1056 106.20847 111.21951 105.78819 111.25098 105.33809 c +111.32124 104.33339 111.02187 103.4696 110.3529 102.74669 c +109.68391 102.02378 108.80162 101.62402 107.70598 101.54741 c +107.26046 101.51625 106.89829 101.53432 106.61948 101.60163 c +106.155 101.71077 105.91005 101.94719 105.88461 102.31088 c +105.87508 102.44727 105.9156 102.57003 106.0062 102.67915 c +106.09679 102.78828 106.24438 102.84999 106.44894 102.8643 c +106.70808 102.88242 107.05817 102.75957 107.49919 102.49574 c +h +117.10034 103.71191 m +117.2992 104.46133 117.35015 105.52932 117.25319 106.91592 c +117.17594 108.02062 117.03926 108.89732 116.84314 109.54603 c +116.47543 110.75382 115.90517 111.33064 115.13232 111.2766 c +114.35945 111.22256 113.87402 110.55367 113.67599 109.26972 c +113.573 108.58648 113.55998 107.69469 113.63692 106.59448 c +113.70908 105.5625 113.84406 104.7428 114.04187 104.13533 c +114.41357 103.00094 114.99949 102.46172 115.79962 102.51768 c +116.46791 102.56441 116.90148 102.96248 117.10034 103.71191 c +h +117.69006 110.17403 m +118.21123 109.31961 118.51202 108.31734 118.59245 107.16716 c +118.65571 106.26247 118.57438 105.40022 118.34846 104.58038 c +117.92178 103.03838 117.05379 102.22163 115.74448 102.13007 c +114.84888 102.06744 114.08396 102.42282 113.44968 103.19622 c +112.77068 104.02132 112.37904 105.17942 112.27477 106.67055 c +112.19276 107.84348 112.32904 108.86719 112.68361 109.74175 c +113.16236 110.93105 113.98137 111.56622 115.14066 111.64729 c +116.18629 111.72041 117.03608 111.22929 117.69006 110.17403 c +h +119.45876 102.52 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +825 99.099998 m +818 99.099998 l +S +92.400002 67.199997 m +92.400002 74.199997 l +S +CM +132.56599 51.764194 m +132.76486 52.513611 132.81581 53.581608 132.71886 54.968201 c +132.6416 56.072933 132.50491 56.949646 132.30879 57.598354 c +131.9411 58.806118 131.37083 59.382973 130.59798 59.32893 c +129.82512 59.274883 129.33968 58.605934 129.14163 57.32206 c +129.03867 56.638733 129.02565 55.746983 129.10258 54.646801 c +129.17474 53.614811 129.30972 52.79509 129.50754 52.187618 c +129.87924 51.053223 130.46515 50.514011 131.26527 50.569962 c +131.93358 50.616692 132.36714 51.014767 132.56599 51.764194 c +h +133.15572 58.226341 m +133.67688 57.371937 133.97766 56.369656 134.05809 55.219463 c +134.12135 54.314762 134.04004 53.452511 133.81413 52.632664 c +133.38744 51.090675 132.51945 50.273918 131.21014 50.182362 c +130.31454 50.119736 129.54962 50.475113 128.91534 51.248512 c +128.23634 52.073605 127.84471 53.231709 127.74044 54.722866 c +127.65842 55.895794 127.7947 56.919502 128.14928 57.794025 c +128.62802 58.983322 129.44704 59.618488 130.60632 59.699554 c +131.65195 59.772671 132.50174 59.281605 133.15572 58.226341 c +h +134.92442 50.572285 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +92.400002 577.20001 m +92.400002 570.20001 l +S +194.14999 67.199997 m +194.14999 74.199997 l +S +CM +226.68481 66.352921 m +226.68791 66.341713 226.69083 66.315651 226.6937 66.274734 c +227.26782 58.064316 l +227.2923 57.714252 227.40115 57.498016 227.59418 57.415581 c +227.78729 57.333141 228.13902 57.300636 228.64944 57.318054 c +228.6628 57.127113 l +224.8167 56.858166 l +224.80238 57.062744 l +225.35063 57.12849 225.70451 57.228619 225.86412 57.363129 c +226.02373 57.497631 226.08922 57.769463 226.06061 58.178623 c +225.61905 64.493286 l +225.60379 64.711502 225.56494 64.875534 225.50244 64.985367 c +225.43993 65.095207 225.31773 65.143768 225.13588 65.13105 c +225.01776 65.122795 224.86665 65.079109 224.68251 64.999992 c +224.49849 64.920876 224.32716 64.839233 224.16855 64.755043 c +224.1552 64.945984 l +226.56871 66.396194 l +226.65062 66.401924 l +226.67036 66.380455 226.68173 66.36412 226.68481 66.352921 c +h +234.78072 58.911743 m +234.97961 59.661163 235.03055 60.729156 234.93358 62.115753 c +234.85634 63.220486 234.71965 64.097191 234.52351 64.745903 c +234.15587 65.953667 233.58554 66.530518 232.81273 66.476479 c +232.03992 66.42244 231.5544 65.753479 231.35637 64.469612 c +231.25339 63.786282 231.24036 62.894531 231.31729 61.79435 c +231.38945 60.76236 231.52446 59.942638 231.72232 59.335171 c +232.09396 58.200771 232.6799 57.661564 233.48004 57.717514 c +234.14832 57.764244 234.58191 58.162319 234.78072 58.911743 c +h +235.37047 65.373894 m +235.89165 64.519485 236.19238 63.517204 236.27281 62.367016 c +236.33607 61.462315 236.25484 60.600063 236.02887 59.780216 c +235.60219 58.238228 234.73425 57.421471 233.42496 57.329918 c +232.52934 57.267288 231.76439 57.622665 231.1301 58.396061 c +230.45108 59.221157 230.05945 60.379257 229.95517 61.870419 c +229.87315 63.043343 230.00948 64.067055 230.36403 64.941582 c +230.84274 66.130867 231.66182 66.766045 232.82109 66.847107 c +233.86674 66.920227 234.71646 66.429153 235.37047 65.373894 c +h +241.76366 59.40004 m +241.96257 60.14946 242.01349 61.217453 241.91653 62.604046 c +241.83928 63.708778 241.70259 64.585487 241.50645 65.2342 c +241.13881 66.441963 240.56848 67.018814 239.79567 66.964775 c +239.02286 66.910736 238.53734 66.241776 238.33932 64.957909 c +238.23633 64.274582 238.22331 63.382828 238.30025 62.282646 c +238.37241 61.250656 238.50742 60.430935 238.70528 59.823467 c +239.0769 58.689068 239.66286 58.149857 240.463 58.205811 c +241.13127 58.252541 241.56485 58.650616 241.76366 59.40004 c +h +242.35342 65.86219 m +242.87459 65.007782 243.17534 64.005501 243.25577 62.855309 c +243.31903 61.950607 243.23778 61.08836 243.01181 60.268513 c +242.58514 58.726521 241.71721 57.909767 240.4079 57.818211 c +239.51228 57.755585 238.74733 58.110958 238.11304 58.884357 c +237.43402 59.709454 237.04239 60.867554 236.93811 62.358711 c +236.85609 63.531639 236.99242 64.555351 237.34698 65.429878 c +237.82568 66.619164 238.64478 67.254341 239.80405 67.335403 c +240.84969 67.408524 241.69942 66.91745 242.35342 65.86219 c +h +244.12215 58.208134 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +194.14999 577.20001 m +194.14999 570.20001 l +S +295.89999 67.199997 m +295.89999 74.199997 l +S +CM +324.51443 63.987324 m +326.05759 65.831238 327.09851 67.178604 327.63748 68.029472 c +328.17654 68.880348 328.41916 69.689934 328.36545 70.458237 c +328.31839 71.131081 328.10068 71.630936 327.71234 71.957848 c +327.32397 72.284744 326.87753 72.430542 326.37286 72.395256 c +325.75009 72.351707 325.26132 72.089111 324.90665 71.607468 c +324.71045 71.342476 324.53281 70.944031 324.37354 70.412086 c +324.07605 70.452965 l +324.23019 71.514481 324.56476 72.267677 325.07959 72.712555 c +325.59439 73.157425 326.16315 73.401634 326.78604 73.44519 c +327.55435 73.498917 328.19296 73.300301 328.70187 72.84935 c +329.21075 72.398392 329.48978 71.822876 329.53873 71.122765 c +329.59088 70.377182 329.38422 69.64093 328.91879 68.913979 c +328.45337 68.187035 327.42331 66.87925 325.82846 64.990608 c +328.95853 65.209488 l +329.39496 65.240005 329.69824 65.313751 329.86819 65.430702 c +330.03815 65.547661 330.22037 65.816238 330.41492 66.236435 c +330.5979 66.167 l +329.974 64.211479 l +324.52542 63.830479 l +h +335.71695 65.969894 m +335.91574 66.719307 335.96667 67.7873 335.86972 69.173897 c +335.79245 70.278625 335.65576 71.155334 335.45975 71.804054 c +335.09198 73.01181 334.52176 73.588669 333.74884 73.534622 c +332.97604 73.480583 332.49063 72.81163 332.29251 71.527756 c +332.18961 70.844429 332.17657 69.952682 332.25351 68.852501 c +332.32568 67.820511 332.4606 67.000778 332.65845 66.393311 c +333.03009 65.258911 333.61603 64.719704 334.41617 64.775658 c +335.08444 64.822388 335.51804 65.220459 335.71695 65.969894 c +h +336.30658 72.432037 m +336.82776 71.577629 337.1286 70.575356 337.20905 69.425163 c +337.27231 68.520462 337.19095 67.658203 336.965 66.838356 c +336.53833 65.296364 335.67038 64.479614 334.36108 64.388062 c +333.46545 64.325432 332.7005 64.680809 332.06622 65.454201 c +331.38721 66.279297 330.99557 67.437401 330.8913 68.928558 c +330.80927 70.101486 330.94559 71.125198 331.30017 71.999718 c +331.77896 73.189018 332.59796 73.824188 333.75723 73.905251 c +334.80286 73.978371 335.65259 73.487297 336.30658 72.432037 c +h +342.69989 66.458183 m +342.89868 67.207603 342.94962 68.275597 342.85266 69.662186 c +342.77539 70.766922 342.6387 71.643631 342.44269 72.292351 c +342.07495 73.500107 341.5047 74.076965 340.73181 74.022919 c +339.95898 73.96888 339.47357 73.299927 339.27545 72.016052 c +339.17255 71.332726 339.15955 70.440979 339.23648 69.34079 c +339.30862 68.3088 339.44354 67.489075 339.64139 66.881607 c +340.01303 65.747208 340.59897 65.208 341.39911 65.263954 c +342.06738 65.310684 342.50098 65.708755 342.69989 66.458183 c +h +343.28955 72.920334 m +343.8107 72.065926 344.11157 71.063652 344.19199 69.91346 c +344.25525 69.008759 344.17389 68.1465 343.94794 67.326653 c +343.52127 65.78466 342.65332 64.967911 341.34402 64.87635 c +340.44843 64.813728 339.68347 65.169098 339.04916 65.942497 c +338.37015 66.767593 337.97852 67.925697 337.87424 69.416855 c +337.79224 70.589783 337.92856 71.613495 338.28311 72.488014 c +338.7619 73.677315 339.5809 74.312477 340.74017 74.393547 c +341.78583 74.46666 342.63553 73.975594 343.28955 72.920334 c +h +345.05826 65.266273 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +295.89999 577.20001 m +295.89999 570.20001 l +S +397.64999 67.199997 m +397.64999 74.199997 l +S +CM +427.72766 71.848846 m +428.15729 71.618484 428.5152 71.513313 428.8017 71.533348 c +429.43814 71.57785 429.89587 71.825714 430.17496 72.276947 c +430.45407 72.72818 430.57602 73.206116 430.54074 73.710739 c +430.50674 74.197182 430.35187 74.615784 430.07602 74.966545 c +429.60968 75.559807 428.87415 75.821312 427.86942 75.751053 c +427.81036 75.746918 427.75357 75.741806 427.69916 75.735718 c +427.64478 75.72963 427.58151 75.719498 427.50943 75.705315 c +427.48337 75.881668 l +428.19235 76.196213 428.74402 76.538589 429.13846 76.908791 c +429.53287 77.279007 429.71051 77.743698 429.67139 78.302887 c +429.63675 78.798424 429.44556 79.16423 429.09784 79.400322 c +428.75012 79.636398 428.3649 79.739662 427.94202 79.710091 c +427.44196 79.675117 427.01389 79.460175 426.65778 79.065224 c +426.46259 78.850563 426.25925 78.525696 426.04749 78.090599 c +425.83276 78.12355 l +425.96628 78.827286 426.26633 79.40332 426.733 79.851685 c +427.19955 80.300041 427.7579 80.546944 428.40802 80.592407 c +429.10361 80.641045 429.65454 80.487701 430.06082 80.132355 c +430.46719 79.777031 430.68777 79.349312 430.72275 78.849236 c +430.75357 78.408249 430.62506 77.992683 430.33707 77.602493 c +430.17444 77.380981 429.91577 77.127617 429.5611 76.842415 c +430.01056 76.686539 430.37589 76.492798 430.65701 76.261192 c +431.18597 75.818497 431.47595 75.231186 431.52716 74.499245 c +431.58755 73.63546 431.30103 72.85022 430.66748 72.143494 c +430.03384 71.43676 429.08975 71.039536 427.83502 70.951797 c +427.27579 70.912697 426.87793 70.968246 426.64127 71.118446 c +426.40463 71.268654 426.27963 71.439217 426.26627 71.630165 c +426.258 71.74836 426.28757 71.864639 426.35495 71.978989 c +426.42233 72.093346 426.54013 72.156395 426.70831 72.168159 c +426.9584 72.185646 427.29816 72.079208 427.72766 71.848846 c +h +437.31454 73.074287 m +437.51334 73.8237 437.56427 74.891693 437.46732 76.27829 c +437.39008 77.383018 437.25339 78.259735 437.05734 78.908447 c +436.68961 80.116211 436.11938 80.693069 435.34647 80.639015 c +434.57364 80.584976 434.08823 79.916031 433.89011 78.632149 c +433.78723 77.94883 433.7742 77.057076 433.85114 75.956894 c +433.92328 74.924904 434.0582 74.105179 434.25604 73.497711 c +434.62781 72.363319 435.21362 71.824104 436.01379 71.880051 c +436.68204 71.926781 437.11563 72.32486 437.31454 73.074287 c +h +437.90421 79.53643 m +438.42538 78.68203 438.72623 77.679749 438.80664 76.529556 c +438.8699 75.624855 438.78857 74.762604 438.56259 73.942757 c +438.13593 72.400764 437.26797 71.584007 435.95868 71.492455 c +435.06308 71.429825 434.29813 71.785202 433.66382 72.558601 c +432.9848 73.383698 432.59317 74.541794 432.48889 76.032959 c +432.40689 77.205879 432.54321 78.229591 432.89777 79.104118 c +433.37656 80.293411 434.19556 80.928581 435.35483 81.009644 c +436.40048 81.082764 437.25031 80.591698 437.90421 79.53643 c +h +444.29749 73.562584 m +444.49631 74.311996 444.54721 75.37999 444.45026 76.766586 c +444.37302 77.871315 444.23633 78.748032 444.04028 79.396744 c +443.67255 80.6045 443.10233 81.181358 442.32941 81.127312 c +441.55661 81.073273 441.07117 80.40432 440.87305 79.120445 c +440.77017 78.437126 440.75714 77.545372 440.83408 76.44519 c +440.90625 75.4132 441.04114 74.593475 441.23901 73.986008 c +441.61075 72.851616 442.19659 72.312393 442.99673 72.368347 c +443.66501 72.415077 444.09857 72.813156 444.29749 73.562584 c +h +444.88715 80.024727 m +445.40833 79.170319 445.70917 78.168045 445.78961 77.017853 c +445.85287 76.113152 445.77151 75.2509 445.54556 74.431046 c +445.11887 72.889061 444.25095 72.072304 442.94162 71.980751 c +442.04602 71.918121 441.28107 72.273499 440.64676 73.046898 c +439.96777 73.871994 439.57611 75.03009 439.47186 76.521248 c +439.38983 77.694176 439.52615 78.717888 439.88071 79.592415 c +440.35953 80.781708 441.1785 81.416878 442.33777 81.49794 c +443.38342 81.57106 444.23325 81.079994 444.88715 80.024727 c +h +446.65588 72.370674 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +397.64999 577.20001 m +397.64999 570.20001 l +S +499.39999 67.199997 m +499.39999 74.199997 l +S +CM +530.49835 86.237381 m +527.48096 81.27066 l +530.82928 81.504799 l +h +530.8501 87.673622 m +531.49799 87.718925 l +531.92719 81.581573 l +533.35242 81.681236 l +533.41583 80.774269 l +531.9906 80.674606 l +532.1532 78.349228 l +531.06885 78.273399 l +530.90625 80.598785 l +526.97833 80.32412 l +526.91492 81.231087 l +h +538.59161 80.156273 m +538.79047 80.905685 538.84149 81.973686 538.74451 83.360283 c +538.66724 84.465012 538.53058 85.341721 538.33441 85.990433 c +537.96667 87.198189 537.39648 87.775047 536.62354 87.721001 c +535.85077 87.666962 535.3653 86.998009 535.1673 85.714142 c +535.06433 85.030815 535.05127 84.139061 535.12823 83.038879 c +535.20038 82.006889 535.33527 81.187164 535.53314 80.579697 c +535.90491 79.445305 536.49072 78.906082 537.29089 78.962036 c +537.95917 79.008766 538.3927 79.406845 538.59161 80.156273 c +h +539.18127 86.618416 m +539.70245 85.764008 540.0033 84.761734 540.08374 83.611542 c +540.14703 82.706841 540.06567 81.844589 539.83972 81.024734 c +539.41302 79.48275 538.5451 78.665993 537.23578 78.57444 c +536.34015 78.51181 535.5752 78.867188 534.94092 79.640587 c +534.26202 80.465683 533.87036 81.623787 533.76611 83.114944 c +533.68408 84.287872 533.82031 85.311577 534.17487 86.186104 c +534.65369 87.375397 535.47266 88.010567 536.6319 88.091629 c +537.67755 88.164749 538.5274 87.673683 539.18127 86.618416 c +h +545.57458 80.644569 m +545.77338 81.393982 545.8244 82.461983 545.72748 83.848579 c +545.65021 84.953308 545.51349 85.830017 545.31738 86.478729 c +544.94965 87.686485 544.37939 88.263344 543.60651 88.209297 c +542.83368 88.155258 542.34827 87.486305 542.15027 86.202438 c +542.04724 85.519112 542.03424 84.627357 542.11115 83.527176 c +542.18335 82.495186 542.31824 81.675461 542.51611 81.067993 c +542.88782 79.933601 543.47369 79.394379 544.2738 79.450333 c +544.94208 79.497063 545.37567 79.895134 545.57458 80.644569 c +h +546.16425 87.106712 m +546.68542 86.252304 546.98627 85.250031 547.06671 84.099838 c +547.12994 83.195137 547.04858 82.332886 546.82263 81.513031 c +546.396 79.971046 545.52802 79.154289 544.21875 79.062737 c +543.32312 79.000107 542.55817 79.355484 541.92389 80.128883 c +541.24493 80.953979 540.85333 82.112083 540.74902 83.603241 c +540.66705 84.776169 540.80322 85.799873 541.15778 86.6744 c +541.6366 87.863693 542.45563 88.498863 543.61487 88.579926 c +544.66052 88.653046 545.51031 88.16198 546.16425 87.106712 c +h +547.93298 79.45266 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +499.39999 577.20001 m +499.39999 570.20001 l +S +601.15002 67.199997 m +601.15002 74.199997 l +S +CM +630.6358 86.047836 m +631.07684 85.784012 631.41101 85.660049 631.63837 85.675949 c +632.16119 85.712509 632.60193 85.975174 632.96063 86.463951 c +633.31927 86.952736 633.47516 87.533531 633.4281 88.206383 c +633.34576 89.383842 632.65912 90.187836 631.36816 90.618362 c +630.65253 90.856125 629.99469 90.954025 629.39453 90.912064 c +629.29456 90.905075 629.23181 90.904114 629.2063 90.909187 c +629.18085 90.914253 629.1485 90.935974 629.10919 90.97435 c +629.11584 91.011353 629.12158 91.042603 629.12671 91.068077 c +629.13171 91.093567 629.13806 91.117981 629.14557 91.14135 c +630.40417 94.504921 l +633.32965 94.709496 l +633.47516 94.719666 633.58594 94.752533 633.66199 94.808105 c +633.7381 94.863678 633.83502 94.964111 633.95276 95.109406 c +634.06848 95.021553 l +633.62476 93.722786 l +633.6095 93.680611 633.56134 93.650963 633.48022 93.633881 c +633.39923 93.616791 633.31091 93.604904 633.21545 93.598228 c +630.57642 93.413689 l +630.08026 92.179787 l +630.83478 92.10463 631.38867 92.022301 631.74213 91.932808 c +632.32379 91.781609 632.81854 91.532967 633.2265 91.186874 c +633.57635 90.886986 633.84955 90.541756 634.04584 90.151176 c +634.24219 89.760605 634.35614 89.340279 634.38763 88.890213 c +634.45789 87.88549 634.15851 87.021698 633.4895 86.29879 c +632.8205 85.575882 631.93823 85.176125 630.84265 85.09951 c +630.39709 85.068352 630.03485 85.086418 629.7561 85.153725 c +629.29169 85.262878 629.04669 85.49929 629.02124 85.862984 c +629.01172 85.999374 629.05225 86.122124 629.14282 86.231255 c +629.23346 86.340378 629.38098 86.402092 629.58563 86.416397 c +629.84467 86.434517 630.19482 86.311668 630.6358 86.047836 c +h +640.23694 87.264 m +640.43585 88.013428 640.48676 89.081421 640.38977 90.46801 c +640.31256 91.572746 640.17584 92.449455 639.97974 93.098167 c +639.61206 94.305931 639.04175 94.882782 638.26892 94.828743 c +637.49603 94.774696 637.01062 94.105743 636.81256 92.821869 c +636.70959 92.138542 636.69659 91.246796 636.7735 90.146606 c +636.8457 89.114616 636.98071 88.294899 637.17853 87.687431 c +637.55017 86.553032 638.13611 86.013824 638.93628 86.069778 c +639.60455 86.116508 640.03815 86.51458 640.23694 87.264 c +h +640.82666 93.726158 m +641.34784 92.87175 641.64862 91.869469 641.72906 90.719276 c +641.7923 89.814575 641.71106 88.952324 641.48511 88.132477 c +641.05841 86.590485 640.19049 85.773735 638.88104 85.682167 c +637.98553 85.619553 637.22058 85.974922 636.5863 86.748322 c +635.90729 87.573418 635.51569 88.731522 635.41138 90.222679 c +635.32935 91.395607 635.4657 92.419319 635.82025 93.293839 c +636.29895 94.483131 637.11804 95.118301 638.27728 95.199371 c +639.32294 95.272484 640.17267 94.781418 640.82666 93.726158 c +h +647.21985 87.752296 m +647.41876 88.501717 647.46973 89.56971 647.37274 90.956306 c +647.29547 92.061043 647.15881 92.937752 646.96271 93.586456 c +646.59503 94.794228 646.02472 95.371078 645.25189 95.317039 c +644.479 95.262993 643.99359 94.59404 643.79553 93.310165 c +643.69257 92.626839 643.6795 91.735092 643.75647 90.634903 c +643.82861 89.602913 643.96362 88.783195 644.1615 88.175728 c +644.53314 87.041328 645.11908 86.502121 645.91919 86.558067 c +646.58746 86.604797 647.02106 87.002876 647.21985 87.752296 c +h +647.80963 94.214447 m +648.33081 93.360046 648.63153 92.357758 648.71198 91.207573 c +648.77527 90.302872 648.69397 89.44062 648.46802 88.620773 c +648.04138 87.078781 647.1734 86.262032 645.86401 86.170464 c +644.96851 86.107841 644.20355 86.463219 643.56927 87.236618 c +642.89026 88.061714 642.4986 89.219818 642.39435 90.710976 c +642.31232 91.883896 642.44861 92.907616 642.80322 93.782135 c +643.28192 94.971428 644.10101 95.606598 645.26025 95.68766 c +646.30591 95.76078 647.15564 95.269707 647.80963 94.214447 c +h +649.57837 86.560394 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +601.15002 577.20001 m +601.15002 570.20001 l +S +702.90002 67.199997 m +702.90002 74.199997 l +S +CM +735.82074 93.447624 m +735.33325 92.741982 734.66223 92.359283 733.8075 92.299515 c +733.00739 92.243561 732.25262 92.567673 731.54327 93.271866 c +730.8338 93.976051 730.43561 94.950966 730.34851 96.196632 c +730.23633 97.801445 730.77643 99.223419 731.96887 100.46263 c +733.03815 101.50591 734.28192 102.07713 735.70026 102.1763 c +735.75012 101.95366 l +735.18909 101.80936 734.70923 101.63304 734.31036 101.42469 c +733.91144 101.21635 733.56189 100.9395 733.26178 100.59415 c +732.95276 100.24361 732.67041 99.80587 732.41473 99.280884 c +732.15912 98.755913 731.99408 98.241859 731.91956 97.738686 c +732.18933 97.931152 732.42365 98.075447 732.6225 98.171585 c +732.97601 98.342491 733.33698 98.440826 733.70514 98.466576 c +734.42798 98.51712 735.05237 98.309525 735.57837 97.843781 c +736.10431 97.378021 736.39972 96.681442 736.4646 95.754021 c +736.52277 94.922058 736.30811 94.153267 735.82074 93.447624 c +h +734.85443 96.730995 m +734.48151 97.490685 733.91321 97.843834 733.14935 97.790421 c +732.44476 97.74115 731.99115 97.499275 731.78845 97.064812 c +731.66925 96.809784 731.62976 96.395859 731.6698 95.823036 c +731.72162 95.082008 731.93024 94.367943 732.29584 93.680832 c +732.66138 92.993713 733.18518 92.674004 733.86713 92.721687 c +734.40808 92.759521 734.78516 93.017731 734.99841 93.496346 c +735.21167 93.974953 735.29657 94.523384 735.25336 95.141678 c +735.21106 95.746315 735.07812 96.276085 734.85443 96.730995 c +h +741.7561 94.362915 m +741.95502 95.112335 742.00598 96.180336 741.909 97.566925 c +741.83173 98.671661 741.69507 99.54837 741.4989 100.19707 c +741.13129 101.40485 740.56097 101.9817 739.78815 101.92766 c +739.01526 101.87361 738.52979 101.20466 738.33179 99.920784 c +738.22882 99.237457 738.21576 98.345711 738.29272 97.245522 c +738.36487 96.213531 738.49988 95.393814 738.69763 94.786339 c +739.0694 93.651947 739.65533 93.11274 740.45544 93.168686 c +741.12372 93.215416 741.55731 93.613495 741.7561 94.362915 c +h +742.34589 100.82507 m +742.86707 99.970665 743.16779 98.968384 743.24823 97.818192 c +743.31152 96.91349 743.23016 96.051231 743.00427 95.231392 c +742.57764 93.6894 741.70959 92.872643 740.40027 92.781082 c +739.50464 92.71846 738.73981 93.073837 738.10553 93.847237 c +737.42651 94.672333 737.03485 95.830437 736.9306 97.321594 c +736.84857 98.494514 736.98486 99.518234 737.33948 100.39275 c +737.81818 101.58205 738.63715 102.21721 739.79651 102.29828 c +740.84204 102.37139 741.69189 101.88033 742.34589 100.82507 c +h +748.73907 94.851212 m +748.93799 95.600632 748.98889 96.668625 748.89197 98.055222 c +748.8147 99.15995 748.67798 100.03667 748.48187 100.68537 c +748.11426 101.89314 747.54388 102.46999 746.77112 102.41595 c +745.99817 102.3619 745.51276 101.69296 745.31476 100.40908 c +745.21173 99.725754 745.19873 98.834 745.27563 97.733818 c +745.34784 96.701828 745.48285 95.882111 745.6806 95.274635 c +746.05231 94.140244 746.63824 93.601036 747.43842 93.656982 c +748.10669 93.703712 748.54028 94.101791 748.73907 94.851212 c +h +749.32886 101.31336 m +749.85004 100.45896 750.15076 99.456673 750.2312 98.30648 c +750.29443 97.401787 750.21307 96.539528 749.98724 95.719688 c +749.56055 94.177696 748.6925 93.360931 747.38324 93.269379 c +746.48761 93.206749 745.72278 93.562134 745.08844 94.335533 c +744.40942 95.160629 744.01782 96.318726 743.91351 97.809891 c +743.83154 98.982811 743.96783 100.00652 744.32239 100.88105 c +744.80109 102.07034 745.62012 102.70551 746.77948 102.78658 c +747.82501 102.85969 748.6748 102.36862 749.32886 101.31336 c +h +751.09753 93.659309 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +702.90002 577.20001 m +702.90002 570.20001 l +S +804.65002 67.199997 m +804.65002 74.199997 l +S +CM +837.16925 108.96335 m +837.185 108.7383 l +834.86487 99.386696 l +833.96478 99.323753 l +836.14343 107.85686 l +833.17023 107.64896 l +832.72919 107.61812 832.41724 107.52321 832.23419 107.36422 c +832.05115 107.20523 831.82806 106.88354 831.565 106.39917 c +831.31873 106.49159 l +831.56335 107.23965 831.7149 107.70138 831.77344 107.87679 c +831.83203 108.0522 831.90765 108.29389 832.00031 108.6019 c +h +843.15601 101.45349 m +843.3548 102.2029 843.40582 103.2709 843.3089 104.6575 c +843.23163 105.76223 843.09497 106.63894 842.8988 107.28765 c +842.53107 108.49541 841.96088 109.07227 841.18793 109.01822 c +840.4151 108.96418 839.92969 108.29523 839.73169 107.01136 c +839.62872 106.32803 839.61566 105.43628 839.69263 104.3361 c +839.76477 103.30411 839.89978 102.48438 840.09753 101.87691 c +840.4693 100.74252 841.05511 100.2033 841.85529 100.25925 c +842.52362 100.30599 842.95709 100.70406 843.15601 101.45349 c +h +843.74567 107.91563 m +844.26685 107.06123 844.56769 106.05895 844.64813 104.90876 c +844.71136 104.00406 844.63007 103.14181 844.40417 102.32196 c +843.97742 100.77997 843.10944 99.963211 841.80017 99.871658 c +840.90454 99.809029 840.13959 100.16441 839.50537 100.93781 c +838.82642 101.7629 838.43475 102.92101 838.33051 104.41216 c +838.24847 105.58509 838.3847 106.6088 838.73926 107.48331 c +839.21802 108.67262 840.03705 109.30779 841.19629 109.38885 c +842.24194 109.46197 843.0918 108.9709 843.74567 107.91563 c +h +850.13898 101.94179 m +850.33777 102.6912 850.38879 103.7592 850.29187 105.14579 c +850.2146 106.25053 850.07788 107.12724 849.88177 107.77595 c +849.51404 108.9837 848.94379 109.56056 848.1709 109.50652 c +847.39807 109.45248 846.91266 108.78352 846.7146 107.49966 c +846.61163 106.81632 846.59863 105.92458 846.67554 104.82439 c +846.74774 103.7924 846.88275 102.97268 847.08051 102.3652 c +847.45221 101.23081 848.03809 100.6916 848.8382 100.74755 c +849.50659 100.79429 849.94006 101.19235 850.13898 101.94179 c +h +850.72864 108.40393 m +851.24982 107.54952 851.55066 106.54725 851.6311 105.39706 c +851.69434 104.49236 851.61298 103.6301 851.38715 102.81026 c +850.96033 101.26826 850.09241 100.45151 848.78308 100.35995 c +847.88751 100.29733 847.12256 100.6527 846.48834 101.4261 c +845.80933 102.2512 845.41772 103.4093 845.31342 104.90046 c +845.23138 106.07339 845.36761 107.09709 845.72217 107.97161 c +846.20099 109.16091 847.01996 109.79607 848.17926 109.87714 c +849.22491 109.95026 850.07471 109.4592 850.72864 108.40393 c +h +852.49738 100.74987 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +804.65002 577.20001 m +804.65002 570.20001 l +S +CM +49.391197 302.32791 m +49.189964 305.20569 l +49.401367 305.22049 l +49.421803 304.99344 49.454025 304.82669 49.498028 304.72009 c +49.571743 304.51514 49.694981 304.4187 49.867741 304.43079 c +49.931385 304.43524 49.99538 304.45114 50.059708 304.47849 c +50.124043 304.50574 50.220055 304.55365 50.347763 304.62195 c +53.775391 306.46512 l +50.119259 307.4978 l +50.081936 307.50882 49.998592 307.52475 49.869228 307.54538 c +49.739876 307.56601 49.652466 307.57474 49.607006 307.57156 c +49.488804 307.56329 49.405285 307.51636 49.356449 307.43073 c +49.30761 307.34512 49.283108 307.23825 49.282921 307.11032 c +49.284065 306.89798 l +49.072662 306.88321 l +48.941525 308.75851 l +49.152927 308.77332 l +49.188683 308.58856 49.262108 308.45312 49.373188 308.36728 c +49.484268 308.28143 49.635387 308.21088 49.826553 308.1557 c +55.66404 306.40533 l +56.672092 306.1012 57.408516 305.79413 57.873341 305.48401 c +58.338169 305.17386 58.588863 304.75732 58.625423 304.23453 c +58.643227 303.97995 58.596268 303.73688 58.484543 303.50522 c +58.372837 303.27347 58.178318 303.14798 57.900993 303.1286 c +57.719147 303.11588 57.565575 303.17249 57.440266 303.29855 c +57.314964 303.42453 57.245152 303.58987 57.23085 303.79437 c +57.222584 303.91257 57.25346 304.09177 57.323467 304.33194 c +57.393475 304.57211 57.424973 304.74222 57.417976 304.84225 c +57.400177 305.09683 57.085926 305.34433 56.475208 305.5849 c +55.864487 305.8255 55.459122 305.93869 55.259083 305.92471 c +55.21817 305.92184 55.168636 305.91156 55.110489 305.89377 c +55.052349 305.87598 55.001175 305.85645 54.956985 305.83511 c +50.390629 303.32297 l +50.065025 303.14481 49.852856 302.99405 49.75412 302.87067 c +49.655399 302.74728 49.598064 302.57083 49.582142 302.34128 c +h +47.36747 311.08118 m +46.594837 311.61188 45.958118 312.25714 45.457268 313.01706 c +45.673248 313.16235 l +46.306335 312.47113 46.908894 311.98788 47.48093 311.71262 c +48.478642 311.22964 49.775341 311.04395 51.371056 311.15555 c +52.55307 311.23819 53.520908 311.41092 54.274601 311.67374 c +55.594521 312.13614 56.553013 312.89987 57.150101 313.9649 c +57.387539 313.80338 l +57.158409 313.22537 56.67561 312.58405 55.939121 311.87924 c +54.7188 310.71118 53.283512 310.06949 51.633244 309.9541 c +50.051155 309.84348 48.62925 310.21909 47.36747 311.08118 c +h +54.102482 316.92804 m +54.238407 317.17282 54.295254 317.45425 54.272999 317.77249 c +54.238667 318.26349 53.964989 318.66577 53.451935 318.97946 c +52.938904 319.29303 52.245968 319.41928 51.373089 319.35825 c +50.536591 319.29977 49.924122 319.07541 49.535702 318.68494 c +49.147263 318.29462 48.969746 317.86075 49.00312 317.38342 c +49.026646 317.04706 49.151527 316.74744 49.377766 316.48456 c +49.604012 316.22171 49.817154 316.09729 50.017185 316.11127 c +53.447289 316.35114 l +53.748158 316.49094 53.966553 316.68326 54.102482 316.92804 c +h +57.67004 314.46719 m +57.612885 314.89264 57.50296 315.15793 57.340282 315.26303 c +57.177597 315.36826 56.930328 315.40918 56.598457 315.38599 c +50.051945 314.92822 l +49.706429 314.90405 49.487755 314.84647 49.395882 314.75552 c +49.30402 314.66458 49.266201 314.50317 49.282413 314.27133 c +49.285908 314.22134 49.291439 314.17493 49.299007 314.13205 c +49.306568 314.08917 49.320038 314.02725 49.339394 313.94641 c +49.114365 313.93066 l +48.857662 314.56372 l +48.851521 314.58615 48.662735 315.03204 48.291286 315.90146 c +48.289696 315.92419 48.298737 315.94199 48.31839 315.95477 c +48.338055 315.96759 48.36153 315.97495 48.388805 315.97684 c +49.309406 316.04123 l +48.988384 316.32022 48.747173 316.56839 48.585808 316.78546 c +48.302605 317.17685 48.145912 317.58844 48.115707 318.02039 c +48.071838 318.64774 48.301174 319.2063 48.803722 319.69595 c +49.306263 320.1857 50.021244 320.46295 50.948669 320.5278 c +51.857922 320.59137 52.702042 320.37744 53.48106 319.88599 c +54.260078 319.39453 54.678356 318.7374 54.735901 317.91452 c +54.7537 317.65994 54.737297 317.43726 54.68668 317.24637 c +54.611561 316.9487 54.455288 316.6683 54.217865 316.405 c +56.447773 316.56094 l +56.90694 316.59305 57.183556 316.68777 57.277618 316.84512 c +57.3717 317.00235 57.419273 317.33469 57.420361 317.8418 c +57.659039 317.85849 l +57.895081 314.48294 l +h +44.966927 321.89114 m +44.81646 322.01776 44.73423 322.18103 44.720242 322.38104 c +44.70657 322.57657 44.764225 322.74841 44.893188 322.89676 c +45.022144 323.0451 45.186642 323.12628 45.386677 323.14029 c +45.582169 323.15396 45.754089 323.09631 45.902435 322.96735 c +46.050793 322.83838 46.131802 322.67624 46.145473 322.48071 c +46.159458 322.2807 46.101891 322.10767 45.972771 321.96149 c +45.843655 321.81543 45.681347 321.73563 45.485855 321.72195 c +45.290371 321.70828 45.117397 321.76465 44.966927 321.89114 c +h +54.159649 321.45132 m +54.080177 321.93457 53.975754 322.23563 53.846378 322.35449 c +53.716999 322.47336 53.386368 322.51419 52.854454 322.47699 c +49.601658 322.24954 l +49.30616 322.22888 49.103008 322.19412 48.992218 322.14526 c +48.810593 322.064 48.727402 321.91434 48.742664 321.69608 c +48.746159 321.64609 48.754124 321.59753 48.766556 321.55048 c +48.778988 321.50333 48.824978 321.36832 48.90451 321.14551 c +48.693119 321.13074 l +48.577141 321.41724 l +48.262375 322.19476 48.028107 322.73566 47.874329 323.04016 c +47.810883 323.16364 47.777878 323.24353 47.77533 323.27994 c +47.806519 323.29126 47.840294 323.29822 47.876667 323.30075 c +52.772911 323.64316 l +53.291183 323.67938 53.611862 323.76456 53.734962 323.89877 c +53.858051 324.03308 53.922367 324.32199 53.927906 324.76544 c +54.118851 324.77881 l +54.350594 321.46469 l +h +47.605389 327.86615 m +47.796333 327.87952 l +47.812962 327.70706 47.847073 327.56219 47.898693 327.4447 c +47.950306 327.32721 48.044308 327.27322 48.180695 327.28278 c +48.267063 327.28882 48.501865 327.42633 48.885082 327.69522 c +49.085308 327.83713 49.330875 328.01648 49.621799 328.23331 c +49.234802 328.4758 48.932129 328.65564 48.713787 328.77289 c +48.361794 328.97211 48.135792 329.06818 48.035774 329.06119 c +47.917576 329.05292 47.841354 328.99969 47.80711 328.90137 c +47.772865 328.80304 47.754974 328.66696 47.753418 328.49323 c +47.562473 328.47986 l +47.408928 330.67569 l +47.599869 330.68906 l +47.634266 330.4585 47.711876 330.24689 47.832703 330.05435 c +47.953518 329.86182 48.106876 329.71033 48.292763 329.59995 c +50.058666 328.55167 l +52.660488 330.54269 l +52.998878 330.79935 53.214718 331.01202 53.307987 331.18073 c +53.401264 331.34946 53.445145 331.53867 53.43961 331.74838 c +53.630554 331.76175 l +53.827492 328.94543 l +53.636547 328.93207 l +53.609085 329.12885 l +53.592686 329.23276 53.554737 329.31812 53.495258 329.3847 c +53.435776 329.45132 53.365112 329.48187 53.283283 329.47617 c +53.196903 329.47012 53.012012 329.37036 52.728584 329.17694 c +52.588829 329.08496 52.399658 328.94833 52.161049 328.76724 c +52.043716 328.68134 51.88126 328.5546 51.673695 328.38702 c +51.466122 328.21954 51.288712 328.078 51.141453 327.96265 c +52.929867 326.98444 l +53.143661 326.86694 53.285774 326.79459 53.356194 326.76755 c +53.426613 326.74048 53.484543 326.72861 53.53001 326.73178 c +53.61639 326.73782 53.67075 326.77701 53.693108 326.84933 c +53.71545 326.92178 53.734268 327.07727 53.749557 327.31592 c +53.940502 327.32925 l +54.081654 325.3107 l +53.890713 325.29733 l +53.823536 325.53934 53.747173 325.71677 53.661629 325.82956 c +53.576069 325.94238 53.385532 326.08664 53.09 326.26245 c +50.667145 327.6897 l +48.774296 326.24164 l +48.397217 325.95023 48.175804 325.75201 48.110062 325.64697 c +48.044315 325.54181 48.00729 325.32001 47.998997 324.98129 c +47.808052 324.96793 l +h +47.537006 336.5368 m +47.946568 337.04974 48.558224 337.33459 49.371998 337.39151 c +49.674797 333.06128 l +50.726341 333.18051 51.477947 333.47287 51.929649 333.93851 c +52.381344 334.40405 52.586533 334.93234 52.545208 335.52328 c +52.511822 336.00073 52.358665 336.39432 52.085739 336.70413 c +51.812813 337.01395 51.437065 337.2915 50.958504 337.53671 c +51.023647 337.78107 l +51.614048 337.6351 52.172623 337.32349 52.699379 336.84637 c +53.226135 336.36926 53.515411 335.76025 53.567234 335.01917 c +53.626995 334.16455 53.350399 333.4816 52.737419 332.97049 c +52.124439 332.45938 51.397442 332.17438 50.556393 332.11557 c +49.642605 332.05167 48.834923 332.26706 48.133354 332.76163 c +47.431778 333.2562 47.050632 333.93765 46.989914 334.80594 c +46.945091 335.44696 47.12746 336.0239 47.537006 336.5368 c +h +48.287094 333.30685 m +48.542767 333.17859 48.859219 333.09555 49.236458 333.05798 c +49.035225 335.93576 l +48.584099 335.854 48.25145 335.74393 48.037277 335.60553 c +47.652782 335.3548 47.478821 334.96802 47.515377 334.44522 c +47.551617 333.92697 47.808853 333.54749 48.287094 333.30685 c +h +52.965622 338.52673 m +52.895142 338.94675 52.789871 339.2272 52.649807 339.36816 c +52.509754 339.50912 52.251057 339.56644 51.873726 339.54004 c +45.211285 339.07416 l +44.911228 339.05319 44.706135 339.01367 44.595978 338.95575 c +44.411396 338.85141 44.3288 338.66071 44.34819 338.38336 c +44.352642 338.31973 44.364304 338.25089 44.383186 338.17682 c +44.402077 338.10275 44.429127 338.0098 44.464355 337.8981 c +44.239315 337.88235 l +44.032742 338.48462 43.762863 339.20816 43.429691 340.05276 c +43.427467 340.08459 43.439751 340.10489 43.466553 340.11368 c +43.493351 340.12238 43.552219 340.12991 43.643139 340.13626 c +51.819462 340.70801 l +52.214985 340.73566 52.465931 340.82178 52.572323 340.96625 c +52.678722 341.11072 52.73288 341.3978 52.734825 341.82727 c +52.92577 341.84064 l +53.156567 338.5401 l +h +51.131973 345.7377 m +51.749012 345.60272 52.337685 345.38345 52.897976 345.07999 c +53.495911 344.76093 54.063625 344.31863 54.601124 343.75327 c +54.9561 343.38062 55.208889 343.06479 55.359493 342.80576 c +55.143517 342.66043 l +54.562641 343.32343 53.98362 343.79678 53.406414 344.08081 c +52.384377 344.58496 51.066429 344.78061 49.452518 344.66772 c +48.147755 344.57651 47.090904 344.37018 46.281929 344.04868 c +45.139309 343.59866 44.267551 342.86847 43.66666 341.85788 c +43.429218 342.01953 l +43.779057 342.76575 44.336971 343.47629 45.102959 344.15118 c +46.282173 345.18845 47.644627 345.76108 49.190342 345.86917 c +49.867729 345.91653 50.514927 345.87277 51.131973 345.7377 c +h +52.580048 346.78467 m +f +479.78537 49.407963 m +479.79874 49.217022 l +479.62628 49.20039 479.48129 49.166275 479.36392 49.114658 c +479.24643 49.063049 479.19244 48.969044 479.202 48.832657 c +479.20804 48.746288 479.34555 48.51149 479.61444 48.128273 c +479.75635 47.928043 479.9357 47.682476 480.15253 47.391552 c +480.39493 47.778545 480.57486 48.081223 480.69202 48.299557 c +480.89124 48.651554 480.9874 48.87756 480.98041 48.977577 c +480.97214 49.095779 480.91879 49.171993 480.82047 49.206238 c +480.72214 49.240482 480.58615 49.258381 480.41245 49.259933 c +480.39908 49.450878 l +482.59491 49.604427 l +482.60828 49.413483 l +482.37772 49.379086 482.16611 49.301476 481.97357 49.180649 c +481.78091 49.05983 481.62955 48.906475 481.51917 48.720592 c +480.47089 46.954685 l +482.46191 44.352867 l +482.71857 44.014473 482.93124 43.798634 483.09995 43.705364 c +483.26855 43.61208 483.45789 43.568211 483.6676 43.573742 c +483.68097 43.382801 l +480.86453 43.185856 l +480.8512 43.376801 l +481.04807 43.40427 l +481.15195 43.420666 481.23721 43.458607 481.30392 43.518097 c +481.37054 43.577576 481.401 43.648232 481.39526 43.730064 c +481.38922 43.816441 481.28949 44.001335 481.09616 44.284767 c +481.00409 44.424515 480.86755 44.613693 480.68637 44.852295 c +480.60056 44.969639 480.47382 45.132092 480.30624 45.339657 c +480.13864 45.547222 479.99722 45.72464 479.88187 45.871902 c +478.90366 44.083488 l +478.78607 43.869686 478.71381 43.727577 478.68677 43.657158 c +478.6597 43.586742 478.64771 43.528805 478.65091 43.483334 c +478.65695 43.396954 478.69623 43.342602 478.76855 43.320244 c +478.84088 43.297897 478.99649 43.279083 479.23505 43.263786 c +479.24838 43.072842 l +477.22992 42.931698 l +477.21655 43.122643 l +477.45856 43.189816 477.63599 43.266178 477.74878 43.351727 c +477.86157 43.437283 478.00586 43.627819 478.18155 43.923347 c +479.60883 46.346199 l +478.16077 48.239048 l +477.86945 48.616135 477.67123 48.837547 477.56607 48.903282 c +477.46103 48.969036 477.23911 49.006058 476.90051 49.014359 c +476.88715 49.205299 l +h +485.49716 51.219009 m +486.02786 51.991642 486.67322 52.628368 487.43301 53.129211 c +487.57834 52.913231 l +486.88712 52.280144 486.40387 51.677586 486.12872 51.105556 c +485.64563 50.107838 485.45993 48.811138 485.57153 47.215424 c +485.65417 46.033409 485.8269 45.065571 486.08981 44.311886 c +486.55212 42.991959 487.31586 42.03347 488.38089 41.436378 c +488.21936 41.198944 l +487.64136 41.428066 487.00003 41.91087 486.29523 42.647362 c +485.12717 43.867683 484.48547 45.302967 484.37009 46.953236 c +484.25946 48.535324 484.63519 49.957237 485.49716 51.219009 c +h +491.34402 44.483997 m +491.58881 44.348072 491.87024 44.291229 492.18848 44.31348 c +492.67947 44.347813 493.08176 44.621494 493.39545 45.134544 c +493.70901 45.647575 493.83527 46.340515 493.77423 47.21339 c +493.71576 48.049889 493.49136 48.662361 493.10104 49.050785 c +492.71069 49.439224 492.27686 49.616745 491.79941 49.583359 c +491.46304 49.559837 491.16342 49.434952 490.90054 49.208714 c +490.6377 48.982468 490.51328 48.769329 490.52725 48.569298 c +490.76709 45.139191 l +490.90692 44.838322 491.09924 44.619926 491.34402 44.483997 c +h +488.88327 40.916447 m +489.30872 40.973606 489.57401 41.083523 489.67911 41.246201 c +489.78421 41.408878 489.82516 41.656151 489.80197 41.988022 c +489.34418 48.534534 l +489.32004 48.880051 489.26245 49.098728 489.17151 49.190598 c +489.08057 49.282459 488.91916 49.320278 488.68732 49.30407 c +488.63733 49.300575 488.59091 49.29504 488.54803 49.287472 c +488.50516 49.279911 488.44324 49.266441 488.3624 49.247086 c +488.34665 49.472115 l +488.97971 49.728817 l +489.00214 49.734959 489.44803 49.923744 490.31744 50.295197 c +490.34018 50.296787 490.35797 50.287743 490.37076 50.268089 c +490.38358 50.248425 490.39093 50.224949 490.39282 50.197678 c +490.45721 49.277073 l +490.7363 49.598103 490.98438 49.839306 491.20154 50.000679 c +491.59283 50.283875 492.00452 50.440575 492.43637 50.470772 c +493.06372 50.514641 493.62228 50.285305 494.11194 49.782757 c +494.60168 49.280216 494.87894 48.565235 494.94379 47.63781 c +495.00735 46.728558 494.79343 45.884438 494.30197 45.105419 c +493.81052 44.326401 493.15338 43.908123 492.33051 43.850578 c +492.07593 43.832779 491.85324 43.849186 491.66235 43.899803 c +491.36478 43.974926 491.08429 44.131191 490.82098 44.368614 c +490.97693 42.13871 l +491.00903 41.679539 491.10376 41.402927 491.26111 41.308857 c +491.41846 41.214783 491.75067 41.167206 492.25787 41.166126 c +492.27457 40.927452 l +488.89902 40.69141 l +h +496.30725 53.61956 m +496.43375 53.770023 496.59702 53.852249 496.79703 53.866238 c +496.99255 53.87991 497.16449 53.822262 497.31284 53.693298 c +497.46121 53.564342 497.54239 53.399845 497.55637 53.19981 c +497.57004 53.004318 497.51239 52.832397 497.38342 52.684052 c +497.25446 52.535694 497.09222 52.454678 496.8967 52.441006 c +496.69669 52.427021 496.52365 52.484589 496.37756 52.613716 c +496.23141 52.742825 496.15161 52.905132 496.13794 53.100624 c +496.12427 53.296108 496.18063 53.469082 496.30725 53.61956 c +h +495.86731 44.42683 m +496.35056 44.506302 496.65161 44.610725 496.77048 44.740105 c +496.88934 44.86948 496.93018 45.200115 496.89297 45.732025 c +496.66553 48.984821 l +496.64487 49.280319 496.61011 49.483471 496.56125 49.594265 c +496.48007 49.775894 496.33032 49.859077 496.11215 49.843822 c +496.06207 49.840321 496.01352 49.832355 495.96646 49.819923 c +495.91931 49.807495 495.78439 49.761509 495.56149 49.681969 c +495.54672 49.89336 l +495.83331 50.009346 l +496.61075 50.324104 497.15173 50.55838 497.45615 50.712151 c +497.57962 50.7756 497.65961 50.808609 497.69592 50.81115 c +497.70724 50.779961 497.7142 50.746185 497.71674 50.709816 c +498.05911 45.813572 l +498.09537 45.295296 498.18054 44.974617 498.31485 44.851524 c +498.44907 44.728428 498.73798 44.664112 499.18143 44.658573 c +499.19479 44.467632 l +495.88068 44.235886 l +h +502.28214 50.981091 m +502.2955 50.790146 l +502.12314 50.773525 501.97815 50.739407 501.86069 50.687786 c +501.74319 50.636177 501.68933 50.542179 501.69885 50.405792 c +501.7049 50.319424 501.84232 50.084618 502.1113 49.701405 c +502.2532 49.501179 502.43259 49.255611 502.64929 48.96468 c +502.89178 49.351677 503.07162 49.65435 503.18887 49.872692 c +503.38809 50.224686 503.48416 50.450687 503.47717 50.550705 c +503.4689 50.668907 503.41568 50.745129 503.31735 50.779369 c +503.21902 50.813614 503.08292 50.831505 502.9093 50.833069 c +502.89594 51.024014 l +505.09167 51.177555 l +505.10504 50.98661 l +504.87448 50.952213 504.66287 50.874603 504.47034 50.753777 c +504.2778 50.632961 504.12631 50.479603 504.01602 50.293724 c +502.96765 48.527813 l +504.95868 45.925995 l +505.21533 45.587601 505.42801 45.371761 505.59671 45.278492 c +505.76544 45.185215 505.95465 45.141338 506.16437 45.14687 c +506.17773 44.955925 l +503.36142 44.758991 l +503.34805 44.949932 l +503.54483 44.977394 l +503.64883 44.993801 503.7341 45.031742 503.80069 45.091221 c +503.8674 45.150711 503.89786 45.221367 503.89215 45.303196 c +503.88611 45.389576 503.78635 45.574471 503.59293 45.857895 c +503.50095 45.99765 503.36432 46.186821 503.18323 46.42543 c +503.09732 46.542763 502.97058 46.705219 502.8031 46.912792 c +502.63553 47.120358 502.49411 47.297775 502.37863 47.44503 c +501.40051 45.65662 l +501.28293 45.442818 501.21066 45.300713 501.18362 45.230293 c +501.15659 45.159874 501.14459 45.101936 501.14777 45.056469 c +501.15381 44.970089 501.19299 44.91573 501.26541 44.893379 c +501.33777 44.871029 501.49326 44.852211 501.7319 44.836922 c +501.74524 44.645977 l +499.72678 44.504833 l +499.71344 44.695774 l +499.95532 44.762943 500.13275 44.839306 500.24554 44.924854 c +500.35834 45.01041 500.50262 45.200947 500.67844 45.496483 c +502.10568 47.919334 l +500.65762 49.812183 l +500.3663 50.18927 500.16809 50.410683 500.06296 50.476418 c +499.95779 50.542164 499.73599 50.579189 499.39737 50.58749 c +499.38403 50.778435 l +h +510.95279 51.049473 m +511.46573 50.639912 511.75058 50.028255 511.8075 49.214481 c +507.47726 48.911682 l +507.5965 47.860138 507.88882 47.108532 508.35449 46.656834 c +508.82004 46.205135 509.34833 45.99995 509.93939 46.041279 c +510.41672 46.074657 510.8103 46.227818 511.12012 46.500744 c +511.43002 46.773674 511.70749 47.149418 511.9527 47.627975 c +512.19714 47.56284 l +512.05109 46.972431 511.73956 46.413864 511.26245 45.887108 c +510.78534 45.360352 510.17624 45.071068 509.43524 45.019253 c +508.58054 44.959488 507.89758 45.23608 507.38647 45.84906 c +506.87537 46.46204 506.59036 47.189041 506.53156 48.030087 c +506.46765 48.943874 506.68304 49.751556 507.17761 50.453125 c +507.67215 51.154701 508.35364 51.535847 509.22192 51.596565 c +509.86295 51.641392 510.43997 51.459026 510.95279 51.049473 c +h +507.72284 50.299385 m +507.59457 50.043713 507.51166 49.727268 507.47406 49.350029 c +510.35175 49.551254 l +510.26999 50.00238 510.15991 50.335033 510.02164 50.54921 c +509.7709 50.933704 509.38412 51.107666 508.8613 51.07111 c +508.34296 51.034863 507.96356 50.777634 507.72284 50.299385 c +h +512.94281 45.620865 m +513.36273 45.691338 513.64319 45.796608 513.78412 45.936672 c +513.92511 46.076729 513.98242 46.335423 513.95605 46.712753 c +513.49011 53.375195 l +513.46918 53.675251 513.42969 53.880344 513.3717 53.990501 c +513.2674 54.175083 513.07666 54.257683 512.79938 54.238289 c +512.73572 54.233837 512.66687 54.222176 512.59277 54.203285 c +512.51874 54.184402 512.42578 54.157352 512.31409 54.122124 c +512.29834 54.347164 l +512.90057 54.553741 513.62415 54.82362 514.46887 55.156796 c +514.50067 55.159019 514.52087 55.146729 514.52966 55.119926 c +514.53833 55.093128 514.5459 55.03426 514.55225 54.94334 c +515.12396 46.767017 l +515.15167 46.371494 515.23773 46.120548 515.3822 46.014156 c +515.52673 45.907757 515.81378 45.8536 516.24335 45.851662 c +516.25671 45.660717 l +512.95618 45.42992 l +h +520.15381 47.454514 m +520.01868 46.837467 519.7995 46.248802 519.49609 45.688511 c +519.17688 45.090572 518.73462 44.522858 518.16925 43.985359 c +517.79657 43.630379 517.48077 43.377586 517.22174 43.22699 c +517.07654 43.44297 l +517.73944 44.023838 518.21289 44.602867 518.49683 45.180069 c +519.00104 46.20211 519.19666 47.520058 519.0838 49.133968 c +518.99255 50.438732 518.78613 51.495575 518.46466 52.30455 c +518.01465 53.44717 517.28442 54.318932 516.27399 54.919827 c +516.43549 55.157261 l +517.1817 54.807423 517.8924 54.249519 518.56726 53.483528 c +519.60443 52.304306 520.17719 50.94186 520.28528 49.396145 c +520.33264 48.718758 520.28876 48.071552 520.15381 47.454514 c +h +521.20062 46.006432 m +f +0.99756408 0.069756471 -0.069756471 0.99756408 42.211494 0.76409888 cm +92.400002 577.20001 m +92.400002 67.199997 l +825 67.199997 l +825 577.20001 l +92.400002 577.20001 l +h +92.400002 577.20001 m +S +1 0 0 sc +625.54999 168.14999 m +625.54999 168.14999 l +623.54999 172.39999 l +621.5 175.60001 l +620.5 178.75 l +618.45001 181.95 l +617.45001 186.2 l +616.40002 189.39999 l +614.40002 193.64999 l +613.34998 196.85001 l +612.34998 200 l +611.34998 204.25 l +610.29999 207.45 l +608.25 211.7 l +607.25 214.89999 l +605.20001 219.14999 l +602.15002 223.39999 l +599.09998 228.7 l +596.04999 232.95 l +593 237.2 l +589.95001 242.5 l +586.90002 246.75 l +583.84998 252.10001 l +580.79999 257.39999 l +578.75 261.64999 l +576.75 265.89999 l +575.70001 270.14999 l +574.70001 274.39999 l +572.65002 278.64999 l +571.65002 283.95001 l +570.65002 288.20001 l +569.59998 291.39999 l +568.59998 296.70001 l +566.54999 302 l +565.54999 306.25 l +565.54999 307.35001 l +566.54999 307.35001 l +566.54999 308.39999 l +566.54999 309.45001 l +566.54999 312.64999 l +567.54999 310.5 l +565.54999 312.64999 l +565.54999 313.70001 l +568.59998 313.70001 l +567.54999 314.75 l +563.5 313.70001 l +566.54999 314.75 l +566.54999 314.75 l +562.5 314.75 l +562.5 314.75 l +562.5 314.75 l +559.45001 314.75 l +555.34998 314.75 l +552.29999 315.85001 l +549.25 315.85001 l +547.20001 315.85001 l +544.15002 316.89999 l +542.15002 316.89999 l +539.09998 316.89999 l +537.04999 316.89999 l +534 316.89999 l +531.95001 316.89999 l +529.95001 317.95001 l +527.90002 317.95001 l +S +527.90002 317.95001 m +524.84998 317.95001 l +521.79999 317.95001 l +519.75 317.95001 l +515.70001 317.95001 l +512.65002 316.89999 l +507.54999 316.89999 l +503.45001 315.85001 l +500.39999 315.85001 l +494.29999 312.64999 l +491.25 310.5 l +486.14999 309.45001 l +482.10001 306.25 l +477 304.14999 l +471.95001 300.95001 l +467.85001 297.75 l +463.79999 293.5 l +460.75 290.35001 l +457.70001 287.14999 l +453.60001 283.95001 l +450.54999 281.85001 l +446.5 278.64999 l +443.45001 275.45001 l +440.39999 274.39999 l +436.29999 272.25 l +432.25 271.20001 l +428.20001 269.10001 l +424.10001 268 l +419 265.89999 l +414.95001 264.85001 l +411.89999 262.70001 l +406.79999 261.64999 l +400.70001 258.45001 l +397.64999 256.35001 l +392.54999 253.14999 l +388.5 249.95 l +384.39999 246.75 l +381.35001 243.60001 l +377.29999 240.39999 l +373.25 237.2 l +S +0 0 0 sc +92.400002 577.20001 m +92.400002 67.199997 l +825 67.199997 l +825 577.20001 l +92.400002 577.20001 l +h +92.400002 577.20001 m +S +Q +0 i +/Cs3 SC +0.64349812 0.64019811 0.64679807 sc +q +0 0 886 652 rc +110.60001 371.39999 m +843 371.39999 l +843 355.89999 l +110.60001 355.89999 l +h +110.60001 371.39999 m +f +1 J +1 j +0.60000002 i +/Cs1 SC +0 0 0 sc +1 0 0 -1 -423 1152 cm +533.60004 780.60004 m +1266 780.60004 l +1266 796.10004 l +533.60004 796.10004 l +h +533.60004 780.60004 m +S +ep +end diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/MetaGear.graffle Binary file Slide/image/MetaGear.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/MetaGear.pdf Binary file Slide/image/MetaGear.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/bitonicNetwork.pdf Binary file Slide/image/bitonicNetwork.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/bitonicNetwork.xbb --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/bitonicNetwork.xbb Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,8 @@ +%%Title: fig/bitonicNetwork.pdf +%%Creator: extractbb 20170318 +%%BoundingBox: 0 0 591 422 +%%HiResBoundingBox: 0.000000 0.000000 591.000000 422.000000 +%%PDFVersion: 1.3 +%%Pages: 1 +%%CreationDate: Sat Feb 3 19:57:43 2018 + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/bitonicSort.pdf Binary file Slide/image/bitonicSort.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/bitonicSort.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/bitonicSort.svg Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,204 @@ + + + +Gnuplot +Produced by GNUPLOT 5.2 patchlevel 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + 5 + + + + + 10 + + + + + 15 + + + + + 20 + + + + + 25 + + + + + 30 + + + + + 35 + + + + + 40 + + + + + 45 + + + + + 1 cpu + + + + + 2 cpus + + + + + 4 cpus + + + + + 8 cpus + + + + + 16 cpus + + + + + 32 cpus + + + + + gpu + + + + + gpu(kernel only) + + + + + + + + + time(s) + + + + + bitonicSort benchmark + + + gnuplot_plot_1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/bitonicSort.xbb --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/bitonicSort.xbb Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,8 @@ +%%Title: fig/bitonicSort.pdf +%%Creator: extractbb 20170318 +%%BoundingBox: 0 0 600 480 +%%HiResBoundingBox: 0.000000 0.000000 600.000000 480.000000 +%%PDFVersion: 1.5 +%%Pages: 1 +%%CreationDate: Sat Feb 3 22:27:55 2018 + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/cbc_goto.graffle --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/cbc_goto.graffle Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,1037 @@ + + + + + ActiveLayerIndex + 0 + ApplicationVersion + + com.omnigroup.OmniGraffle6 + 167.2.0.244490 + + AutoAdjust + + BackgroundGraphic + + Bounds + {{0, 0}, {558.99997329711914, 783}} + Class + SolidGraphic + ID + 2 + Style + + stroke + + Draws + NO + + + + BaseZoom + 0 + CanvasOrigin + {0, 0} + ColumnAlign + 1 + ColumnSpacing + 36 + CreationDate + 2011-11-12 11:03:25 +0000 + Creator + Nobuyasu Oshiro + DisplayScale + 1 in = 1.00000 in + GraphDocumentVersion + 12 + GraphicsList + + + Bounds + {{315.5, 89.625}, {45.933593999999999, 18.375}} + Class + ShapedGraphic + ID + 32 + Magnets + + {1, 1} + {1, -1} + {-1, -1} + {-1, 1} + {0, 1} + {0, -1} + {1, 0} + {-1, 0} + {-0.5, -0.233518} + {-0.49144199, 0.26006298999999999} + {0.50711799000000002, -0.22408600000000001} + {0.50711799000000002, 0.26717900999999999} + {-0.27430999, -0.47402799000000001} + {0.27977999999999997, -0.47847801000000001} + {0.29393801000000003, 0.54304397000000004} + {-0.28623198999999999, 0.55380397999999997} + + Style + + fill + + Draws + NO + + shadow + + Draws + NO + + stroke + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1348\cocoasubrtf170 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 goto} + VerticalPad + 0.0 + + + + Bounds + {{315.5, 171}, {45.933593999999999, 18.375}} + Class + ShapedGraphic + ID + 31 + Magnets + + {1, 1} + {1, -1} + {-1, -1} + {-1, 1} + {0, 1} + {0, -1} + {1, 0} + {-1, 0} + {-0.5, -0.233518} + {-0.49144199, 0.26006298999999999} + {0.50711799000000002, -0.22408600000000001} + {0.50711799000000002, 0.26717900999999999} + {-0.27430999, -0.47402799000000001} + {0.27977999999999997, -0.47847801000000001} + {0.29393801000000003, 0.54304397000000004} + {-0.28623198999999999, 0.55380397999999997} + + Style + + fill + + Draws + NO + + shadow + + Draws + NO + + stroke + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1348\cocoasubrtf170 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 goto} + VerticalPad + 0.0 + + + + Bounds + {{190.20312000000001, 167}, {45.933593999999999, 18.375}} + Class + ShapedGraphic + ID + 30 + Magnets + + {1, 1} + {1, -1} + {-1, -1} + {-1, 1} + {0, 1} + {0, -1} + {1, 0} + {-1, 0} + {-0.5, -0.233518} + {-0.49144199, 0.26006298999999999} + {0.50711799000000002, -0.22408600000000001} + {0.50711799000000002, 0.26717900999999999} + {-0.27430999, -0.47402799000000001} + {0.27977999999999997, -0.47847801000000001} + {0.29393801000000003, 0.54304397000000004} + {-0.28623198999999999, 0.55380397999999997} + + Style + + fill + + Draws + NO + + shadow + + Draws + NO + + stroke + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1348\cocoasubrtf170 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 goto} + VerticalPad + 0.0 + + + + Bounds + {{405.93358999999998, 125}, {54, 18}} + Class + ShapedGraphic + ID + 29 + Magnets + + {1, 1} + {1, -1} + {-1, -1} + {-1, 1} + {0, 1} + {0, -1} + {1, 0} + {-1, 0} + {-0.5, -0.233518} + {-0.49144199, 0.26006298999999999} + {0.50711799000000002, -0.22408600000000001} + {0.50711799000000002, 0.26717900999999999} + {-0.27430999, -0.47402799000000001} + {0.27977999999999997, -0.47847801000000001} + {0.29393801000000003, 0.54304397000000004} + {-0.28623198999999999, 0.55380397999999997} + + Style + + fill + + Draws + NO + + shadow + + Draws + NO + + stroke + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1348\cocoasubrtf170 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 goto} + VerticalPad + 0.0 + + + + AllowLabelDrop + + Class + LineGraphic + ID + 28 + Points + + {412.93358999999998, 143.02043} + {462.43358999999998, 143} + + Style + + shadow + + Draws + NO + + stroke + + HeadArrow + FilledArrow + HeadScale + 1.4285709857940674 + Legacy + + TailArrow + 0 + TailScale + 0.5 + + + + + Bounds + {{90, 126}, {54, 18}} + Class + ShapedGraphic + ID + 27 + Magnets + + {1, 1} + {1, -1} + {-1, -1} + {-1, 1} + {0, 1} + {0, -1} + {1, 0} + {-1, 0} + {-0.5, -0.233518} + {-0.49144199, 0.26006298999999999} + {0.50711799000000002, -0.22408600000000001} + {0.50711799000000002, 0.26717900999999999} + {-0.27430999, -0.47402799000000001} + {0.27977999999999997, -0.47847801000000001} + {0.29393801000000003, 0.54304397000000004} + {-0.28623198999999999, 0.55380397999999997} + + Style + + fill + + Draws + NO + + shadow + + Draws + NO + + stroke + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1348\cocoasubrtf170 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 goto} + VerticalPad + 0.0 + + + + Bounds + {{252, 134.3125}, {45.933593999999999, 18.375}} + Class + ShapedGraphic + ID + 26 + Magnets + + {1, 1} + {1, -1} + {-1, -1} + {-1, 1} + {0, 1} + {0, -1} + {1, 0} + {-1, 0} + {-0.5, -0.233518} + {-0.49144199, 0.26006298999999999} + {0.50711799000000002, -0.22408600000000001} + {0.50711799000000002, 0.26717900999999999} + {-0.27430999, -0.47402799000000001} + {0.27977999999999997, -0.47847801000000001} + {0.29393801000000003, 0.54304397000000004} + {-0.28623198999999999, 0.55380397999999997} + + Style + + fill + + Draws + NO + + shadow + + Draws + NO + + stroke + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1348\cocoasubrtf170 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 goto} + VerticalPad + 0.0 + + + + AllowLabelDrop + + Class + LineGraphic + Head + + ID + 3 + + ID + 23 + Points + + {97, 144.03550999999999} + {146.49998746293761, 144.0150711098278} + + Style + + shadow + + Draws + NO + + stroke + + HeadArrow + FilledArrow + HeadScale + 1.4285709857940674 + Legacy + + TailArrow + 0 + TailScale + 0.5 + + + + + Class + LineGraphic + Head + + ID + 5 + + ID + 11 + Points + + {307.06832644961662, 99.005708590904717} + {348.41386755785959, 126.00973315833174} + + Style + + shadow + + Draws + NO + + stroke + + HeadArrow + FilledArrow + Legacy + + LineType + 1 + TailArrow + 0 + + + Tail + + ID + 1 + + + + Class + LineGraphic + Head + + ID + 5 + + ID + 38 + Points + + {307.26186045457405, 188.16336426740673} + {348.23813954515032, 161.83663573235037} + + Style + + shadow + + Draws + NO + + stroke + + HeadArrow + FilledArrow + Legacy + + LineType + 1 + TailArrow + 0 + + + Tail + + ID + 34 + + + + Class + LineGraphic + Head + + ID + 34 + + ID + 37 + Points + + {210.76185637532367, 161.83663311602177} + {251.73814361460188, 188.16336689285151} + + Style + + shadow + + Draws + NO + + stroke + + HeadArrow + FilledArrow + Legacy + + LineType + 1 + TailArrow + 0 + + + Tail + + ID + 3 + + + + Class + LineGraphic + Head + + ID + 1 + + ID + 8 + Points + + {210.56036004631343, 125.98738390291257} + {251.89396917594394, 98.972989609515338} + + Style + + shadow + + Draws + NO + + stroke + + HeadArrow + FilledArrow + Legacy + + LineType + 1 + TailArrow + 0 + + + Tail + + ID + 3 + + + + Class + LineGraphic + Head + + ID + 34 + + ID + 36 + Points + + {293.55569627859614, 106.37834050302079} + {315.5, 146} + {294.53436892560063, 180.94271845733229} + + Style + + shadow + + Draws + NO + + stroke + + HeadArrow + FilledArrow + Legacy + + LineType + 1 + TailArrow + 0 + + + Tail + + ID + 1 + + + + Class + LineGraphic + Head + + ID + 1 + + ID + 35 + Points + + {263.99039783562887, 181.10804590903402} + {239, 141} + {262.95578718585557, 105.50994490984354} + + Style + + shadow + + Draws + NO + + stroke + + HeadArrow + FilledArrow + Legacy + + LineType + 1 + TailArrow + 0 + + + Tail + + ID + 34 + + + + Bounds + {{340, 117}, {72, 54}} + Class + ShapedGraphic + ID + 5 + Shape + Circle + Style + + shadow + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1348\cocoasubrtf170 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 code segment\ +D} + VerticalPad + 0.0 + + + + Bounds + {{243.5, 179}, {72, 54}} + Class + ShapedGraphic + ID + 34 + Shape + Circle + Style + + shadow + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1348\cocoasubrtf170 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 code segment\ +C} + VerticalPad + 0.0 + + + + Bounds + {{147, 117}, {72, 54}} + Class + ShapedGraphic + ID + 3 + Shape + Circle + Style + + shadow + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1348\cocoasubrtf170 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 code segment A} + VerticalPad + 0.0 + + + + Bounds + {{243.5, 54}, {72, 54}} + Class + ShapedGraphic + ID + 1 + Shape + Circle + Style + + shadow + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1348\cocoasubrtf170 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 code segment\ +B} + VerticalPad + 0.0 + + + + Bounds + {{197.56640999999999, 98.625}, {45.933593999999999, 18.375}} + Class + ShapedGraphic + ID + 25 + Magnets + + {1, 1} + {1, -1} + {-1, -1} + {-1, 1} + {0, 1} + {0, -1} + {1, 0} + {-1, 0} + {-0.5, -0.233518} + {-0.49144199, 0.26006298999999999} + {0.50711799000000002, -0.22408600000000001} + {0.50711799000000002, 0.26717900999999999} + {-0.27430999, -0.47402799000000001} + {0.27977999999999997, -0.47847801000000001} + {0.29393801000000003, 0.54304397000000004} + {-0.28623198999999999, 0.55380397999999997} + + Style + + fill + + Draws + NO + + shadow + + Draws + NO + + stroke + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1348\cocoasubrtf170 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 goto} + VerticalPad + 0.0 + + + + GridInfo + + GuidesLocked + NO + GuidesVisible + YES + HPages + 1 + ImageCounter + 1 + KeepToScale + + Layers + + + Lock + NO + Name + Layer 1 + Print + YES + View + YES + + + LayoutInfo + + Animate + NO + circoMinDist + 18 + circoSeparation + 0.0 + layoutEngine + dot + neatoLineLength + 0.20000000298023224 + neatoSeparation + 0.0 + twopiSeparation + 0.0 + + LinksVisible + NO + MagnetsVisible + NO + MasterSheets + + ModificationDate + 2015-10-27 21:38:00 +0000 + Modifier + Tatsuki IHA + NotesVisible + NO + Orientation + 2 + OriginVisible + NO + PageBreaks + YES + PrintInfo + + NSBottomMargin + + float + 41 + + NSHorizonalPagination + + coded + BAtzdHJlYW10eXBlZIHoA4QBQISEhAhOU051bWJlcgCEhAdOU1ZhbHVlAISECE5TT2JqZWN0AIWEASqEhAFxlwCG + + NSLeftMargin + + float + 18 + + NSPaperSize + + size + {594.99997329711914, 842} + + NSPrintReverseOrientation + + coded + BAtzdHJlYW10eXBlZIHoA4QBQISEhAhOU051bWJlcgCEhAdOU1ZhbHVlAISECE5TT2JqZWN0AIWEASqEhAFxlwCG + + NSRightMargin + + float + 18 + + NSTopMargin + + float + 18 + + + PrintOnePage + + ReadOnly + NO + RowAlign + 1 + RowSpacing + 36 + SheetTitle + Canvas 1 + SmartAlignmentGuidesActive + YES + SmartDistanceGuidesActive + YES + UniqueID + 1 + UseEntirePage + + VPages + 1 + WindowInfo + + CurrentSheet + 0 + Expanded_Canvases + + Frame + {{4, -0}, {1913, 983}} + ShowInfo + + ShowRuler + + Sidebar + + SidebarWidth + 200 + TopSlabHeight + 250 + VisibleRegion + {{-420, -21}, {1399, 826}} + Zoom + 1 + ZoomValues + + + Canvas 1 + 1 + 1 + + + + + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/cbc_goto.pdf Binary file Slide/image/cbc_goto.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/codeGear_dataGear.graffle Binary file Slide/image/codeGear_dataGear.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/codeGear_dataGear.pdf Binary file Slide/image/codeGear_dataGear.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/codeGear_dataGear.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/codeGear_dataGear.svg Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,201 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/codeGear_dataGear_dependency.graffle Binary file Slide/image/codeGear_dataGear_dependency.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/codeGear_dataGear_dependency.pdf Binary file Slide/image/codeGear_dataGear_dependency.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/codesegment.pdf Binary file Slide/image/codesegment.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/codesegment.xbb --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/codesegment.xbb Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,8 @@ +%%Title: ./pic/codesegment.pdf +%%Creator: extractbb 20140317 +%%BoundingBox: 0 0 393 201 +%%HiResBoundingBox: 0.000000 0.000000 393.000000 201.000000 +%%PDFVersion: 1.3 +%%Pages: 1 +%%CreationDate: Fri Nov 24 17:30:26 2017 + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/env.pdf Binary file Slide/image/env.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/env1.pdf Binary file Slide/image/env1.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/env1_1.pdf Binary file Slide/image/env1_1.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/env2.pdf Binary file Slide/image/env2.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/env3.pdf Binary file Slide/image/env3.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/gears_structure.graffle Binary file Slide/image/gears_structure.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/gears_structure.pdf Binary file Slide/image/gears_structure.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/gears_structure.xbb --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/gears_structure.xbb Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,8 @@ +%%Title: ./pic/gears_structure.pdf +%%Creator: extractbb 20140317 +%%BoundingBox: 0 0 713 418 +%%HiResBoundingBox: 0.000000 0.000000 713.000000 418.000000 +%%PDFVersion: 1.3 +%%Pages: 1 +%%CreationDate: Fri Nov 24 17:30:26 2017 + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/gearsos.graffle Binary file Slide/image/gearsos.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/gearsos.pdf Binary file Slide/image/gearsos.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/generate_context.graffle Binary file Slide/image/generate_context.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/generate_context.pdf Binary file Slide/image/generate_context.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/generate_context2.pdf Binary file Slide/image/generate_context2.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/generate_context3.pdf Binary file Slide/image/generate_context3.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/generate_context3.xbb --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/generate_context3.xbb Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,8 @@ +%%Title: ./pic/generate_context3.pdf +%%Creator: extractbb 20140317 +%%BoundingBox: 0 0 706 265 +%%HiResBoundingBox: 0.000000 0.000000 706.000000 265.000000 +%%PDFVersion: 1.3 +%%Pages: 1 +%%CreationDate: Fri Nov 24 17:30:33 2017 + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/generate_context_2.graffle Binary file Slide/image/generate_context_2.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/metaCS.pdf Binary file Slide/image/metaCS.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/metaCS.xbb --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/metaCS.xbb Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,8 @@ +%%Title: ./fig/metaCS.pdf +%%Creator: extractbb 20140317 +%%BoundingBox: 31 511 515 732 +%%HiResBoundingBox: 30.601520 511.100000 515.413800 732.012800 +%%PDFVersion: 1.3 +%%Pages: 1 +%%CreationDate: Mon Feb 15 05:21:55 2016 + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/meta_cg_dg.graffle Binary file Slide/image/meta_cg_dg.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/meta_cg_dg.pdf Binary file Slide/image/meta_cg_dg.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/meta_gear.graffle Binary file Slide/image/meta_gear.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/meta_gear.pdf Binary file Slide/image/meta_gear.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/persistent_date_tree.graffle Binary file Slide/image/persistent_date_tree.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/persistent_date_tree.pdf Binary file Slide/image/persistent_date_tree.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/persistent_date_tree_2.graffle Binary file Slide/image/persistent_date_tree_2.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/persistent_date_tree_2.pdf Binary file Slide/image/persistent_date_tree_2.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/sigos.png Binary file Slide/image/sigos.png has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/taskManager.graffle Binary file Slide/image/taskManager.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/taskManager.pdf Binary file Slide/image/taskManager.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/twice.eps --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/twice.eps Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,1332 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%HiResBoundingBox: 0.000000 0.000000 600.000000 480.000000 +%APL_DSC_Encoding: UTF8 +%APLProducer: (Version 10.12.6 (Build 16G29) Quartz PS Context) +%%Title: (Unknown) +%%Creator: (Unknown) +%%CreationDate: (Unknown) +%%For: (Unknown) +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%Pages: 1 +%%BoundingBox: 0 0 600 480 +%%EndComments +%%BeginProlog +%%BeginFile: cg-pdf.ps +%%Copyright: Copyright 2000-2004 Apple Computer Incorporated. +%%Copyright: All Rights Reserved. +currentpacking true setpacking +/cg_md 141 dict def +cg_md begin +/L3? languagelevel 3 ge def +/bd{bind def}bind def +/ld{load def}bd +/xs{exch store}bd +/xd{exch def}bd +/cmmtx matrix def +mark +/sc/setcolor +/scs/setcolorspace +/dr/defineresource +/fr/findresource +/T/true +/F/false +/d/setdash +/w/setlinewidth +/J/setlinecap +/j/setlinejoin +/M/setmiterlimit +/i/setflat +/rc/rectclip +/rf/rectfill +/rs/rectstroke +/f/fill +/f*/eofill +/sf/selectfont +/s/show +%/as/ashow +/xS/xshow +/yS/yshow +/xyS/xyshow +/S/stroke +/m/moveto +/l/lineto +/c/curveto +/h/closepath +/n/newpath +/q/gsave +/Q/grestore +counttomark 2 idiv +%dup (number of ld's = )print == flush % *** how many +{ld}repeat pop +/SC{ % CSname + /ColorSpace fr scs +}bd +/sopr /setoverprint where{pop/setoverprint}{/pop}ifelse ld +/soprm /setoverprintmode where{pop/setoverprintmode}{/pop}ifelse ld +/cgmtx matrix def +/sdmtx{cgmtx currentmatrix pop}bd +/CM {cgmtx setmatrix}bd % pop the ctm: our gstate ctm on host is now identity +/cm {cmmtx astore CM concat}bd % reset the matrix and then concat +/W{clip newpath}bd +/W*{eoclip newpath}bd + +statusdict begin product end dup (HP) anchorsearch{ + pop pop pop % pop off the search results + true +}{ + pop % previous search result + (hp) anchorsearch{ + pop pop true + }{ + pop false + }ifelse +}ifelse + +{ % HP is the product: we use this method of stroking because of a bug in their clone printers with certain T3 fonts + { + { % charCode Wx Wy + pop pop % charCode + (0)dup 0 4 -1 roll put + F charpath + }cshow + } +}{ + {F charpath} +}ifelse +/cply exch bd +/cps {cply stroke}bd +/pgsave 0 def +/bp{/pgsave save store}bd +/ep{pgsave restore showpage}def % dont' bind +/re{4 2 roll m 1 index 0 rlineto 0 exch rlineto neg 0 rlineto h}bd + +/scrdict 10 dict def +/scrmtx matrix def +/patarray 0 def +/createpat{patarray 3 1 roll put}bd +/makepat{ +scrmtx astore pop +gsave +initgraphics +CM +patarray exch get +scrmtx +makepattern +grestore +setpattern +}bd + +/cg_BeginEPSF{ + userdict save/cg_b4_Inc_state exch put + userdict/cg_endepsf/cg_EndEPSF load put + count userdict/cg_op_count 3 -1 roll put + countdictstack dup array dictstack userdict/cg_dict_array 3 -1 roll put + 3 sub{end}repeat + /showpage {} def + 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin + 10 setmiterlimit [] 0 setdash newpath + false setstrokeadjust false setoverprint % don't use F +}bd +/cg_EndEPSF{ + countdictstack 3 sub { end } repeat + cg_dict_array 3 1 index length 3 sub getinterval + {begin}forall + count userdict/cg_op_count get sub{pop}repeat + userdict/cg_b4_Inc_state get restore + F setpacking +}bd + +/cg_biproc{currentfile/RunLengthDecode filter}bd +/cg_aiproc{currentfile/ASCII85Decode filter/RunLengthDecode filter}bd +/ImageDataSource 0 def +L3?{ + /cg_mibiproc{pop pop/ImageDataSource{cg_biproc}def}bd + /cg_miaiproc{pop pop/ImageDataSource{cg_aiproc}def}bd +}{ + /ImageBandMask 0 def + /ImageBandData 0 def + /cg_mibiproc{ + string/ImageBandMask xs + string/ImageBandData xs + /ImageDataSource{[currentfile/RunLengthDecode filter dup ImageBandMask/readstring cvx + /pop cvx dup ImageBandData/readstring cvx/pop cvx]cvx bind}bd + }bd + /cg_miaiproc{ + string/ImageBandMask xs + string/ImageBandData xs + /ImageDataSource{[currentfile/ASCII85Decode filter/RunLengthDecode filter + dup ImageBandMask/readstring cvx + /pop cvx dup ImageBandData/readstring cvx/pop cvx]cvx bind}bd + }bd +}ifelse +/imsave 0 def +/BI{save/imsave xd mark}bd +/EI{imsave restore}bd +/ID{ +counttomark 2 idiv +dup 2 add % leave room for imagetype and imagematrix +dict begin +{def} repeat +pop % remove mark +/ImageType 1 def +/ImageMatrix[Width 0 0 Height neg 0 Height]def +currentdict dup/ImageMask known{ImageMask}{F}ifelse exch +% currentdict on stack +L3?{ + dup/MaskedImage known + { + pop + << + /ImageType 3 + /InterleaveType 2 + /DataDict currentdict + /MaskDict + << /ImageType 1 + /Width Width + /Height Height + /ImageMatrix ImageMatrix + /BitsPerComponent 1 + /Decode [0 1] + currentdict/Interpolate known + {/Interpolate Interpolate}if + >> + >> + }if +}if +exch +{imagemask}{image}ifelse +end % pop imagedict from dict stack +}bd + +/cguidfix{statusdict begin mark version end +{cvr}stopped{cleartomark 0}{exch pop}ifelse +2012 lt{dup findfont dup length dict begin +{1 index/FID ne 2 index/UniqueID ne and +{def} {pop pop} ifelse}forall +currentdict end definefont pop +}{pop}ifelse +}bd +/t_array 0 def +/t_i 0 def +/t_c 1 string def +/x_proc{ % x y + exch t_array t_i get add exch moveto + /t_i t_i 1 add store +}bd +/y_proc{ % x y + t_array t_i get add moveto + /t_i t_i 1 add store +}bd +/xy_proc{ + % x y + t_array t_i 2 copy 1 add get 3 1 roll get + 4 -1 roll add 3 1 roll add moveto + /t_i t_i 2 add store +}bd +/sop 0 def % don't bind sop +/cp_proc/x_proc ld % default moveto proc is for xwidths only +/base_charpath % string array +{ + /t_array xs + /t_i 0 def + { % char + t_c 0 3 -1 roll put + currentpoint + t_c cply sop + cp_proc + }forall + /t_array 0 def +}bd +/sop/stroke ld % default sop is stroke. Done here so we don't bind in /base_charpath + +% default sop is stroke +/nop{}def +/xsp/base_charpath ld +/ysp{/cp_proc/y_proc ld base_charpath/cp_proc/x_proc ld}bd +/xysp{/cp_proc/xy_proc ld base_charpath/cp_proc/x_proc ld}bd +/xmp{/sop/nop ld /cp_proc/x_proc ld base_charpath/sop/stroke ld}bd +/ymp{/sop/nop ld /cp_proc/y_proc ld base_charpath/sop/stroke ld}bd +/xymp{/sop/nop ld /cp_proc/xy_proc ld base_charpath/sop/stroke ld}bd +/refnt{ % newname encoding fontname +findfont dup length dict copy dup +/Encoding 4 -1 roll put +definefont pop +}bd +/renmfont{ % newname fontname +findfont dup length dict copy definefont pop +}bd + +L3? dup dup{save exch}if + +% languagelevel2 ONLY code goes here + +/Range 0 def +/DataSource 0 def +/val 0 def +/nRange 0 def +/mulRange 0 def +/d0 0 def +/r0 0 def +/di 0 def +/ri 0 def +/a0 0 def +/a1 0 def +/r1 0 def +/r2 0 def +/dx 0 def +/Nsteps 0 def +/sh3tp 0 def +/ymax 0 def +/ymin 0 def +/xmax 0 def +/xmin 0 def + +/setupFunEval % funDict -- % this calculates and sets up a function dict for evaulation. +{ + begin + /nRange Range length 2 idiv store + /mulRange % precompute the range data needed to map a sample value from the table to a range value + % this data looks like [ range0mul range0min range1mul range1min ... rangeN-1mul rangeN-1min ] + [ + 0 1 nRange 1 sub + { % index + 2 mul/nDim2 xd % 2*dimension# we are dealing with + Range nDim2 get % ymin + Range nDim2 1 add get % ymin ymax + 1 index sub % ymin (ymax-ymin) + % xmin = 0, xmax = 255 (2^bitspersample - 1) + 255 div % ymin (ymax-ymin)/(xmax - xmin) + exch % (ymax-ymin)/(xmax - xmin) ymin + }for + ]store + end +}bd + +/FunEval % val1 fundict -> comp1 comp2 ... compN +{ + begin + % the value passed in is the base index into the table + nRange mul /val xd % compute the actual index to the table + % since there are nRange entries per base index + 0 1 nRange 1 sub + { + dup 2 mul/nDim2 xd % dim + val % base value to use to do our lookup + add DataSource exch get % lookedupval + mulRange nDim2 get mul % lookedupval*(ymax-ymin)/(xmax-xmin) + mulRange nDim2 1 add get % lookedupval*(ymax-ymin)/(xmax-xmin) ymin + add % interpolated result + }for % comp1 comp2 ... compN + end +}bd + +/max % a b -> max(a, b) +{ + 2 copy lt + {exch pop}{pop}ifelse +}bd + +/sh2 +{ % emulation of shading type 2. Assumes shading dictionary is top dictionary on the dict stack + /Coords load aload pop % x0 y0 x1 y1 + 3 index 3 index translate % origin is now at beginning point of shading + % x0 y0 x1 y1 + 3 -1 roll sub % x0 x1 y1-y0 + 3 1 roll exch % y1-y0 x1 x0 + sub % y1-y0 x1-x0 + 2 copy + dup mul exch dup mul add sqrt % length of segment between two points + dup + scale + atan % atan (dy/dx) + %dup (rotation angle = )print == + rotate % now line between 0,0 and 1,0 is the line perpendicular to which the axial lines are drawn + + /Function load setupFunEval % may need to setup function dictionary by calling setupFunEval + + % this is now specific to axial shadings. Compute the maximum bounds to fill + clippath {pathbbox}stopped {0 0 0 0}if newpath % x0 y0 x1 y1 + /ymax xs + /xmax xs + /ymin xs + /xmin xs + currentdict/Extend known + { + /Extend load 0 get + { + 0/Function load FunEval sc % evaluate the function to get a color and set it + xmin ymin xmin abs ymax ymin sub rectfill + }if + }if + % paint the rects. The sampling frequency is that of our table + /Nsteps/Function load/Size get 0 get 1 sub store + /dx 1 Nsteps div store + gsave + /di ymax ymin sub store + /Function load + % loop Nsteps + 1 times, incrementing the index by 1 each time + 0 1 Nsteps + { + 1 index FunEval sc + 0 ymin dx di rectfill + dx 0 translate + }for + pop % pop our function + grestore % origin is back to start point + currentdict/Extend known + { + /Extend load 1 get + { + Nsteps/Function load FunEval sc % last element + 1 ymin xmax 1 sub abs ymax ymin sub rectfill + }if + }if +}bd + +/shp % this paints our shape for shading type 3 +{ % x1 r1 x0 r0 - + 4 copy + + % fill interior arc + dup 0 gt{ + 0 exch a1 a0 arc + }{ + pop 0 moveto + }ifelse + + dup 0 gt{ + 0 exch a0 a1 arcn + }{ + pop 0 lineto + }ifelse + + fill + + % fill exterior arc + dup 0 gt{ + 0 exch a0 a1 arc + }{ + pop 0 moveto + }ifelse + + dup 0 gt{ + 0 exch a1 a0 arcn + }{ + pop 0 lineto + }ifelse + + fill +}bd + +/calcmaxs +{ % calculate maximum distance vector from origin to corner points + % of bbox + xmin dup mul ymin dup mul add sqrt % (xmin2 + ymin2) + xmax dup mul ymin dup mul add sqrt % (xmax2 + ymin2) + xmin dup mul ymax dup mul add sqrt % (xmin2 + ymax2) + xmax dup mul ymax dup mul add sqrt % (xmax2 + ymax2) + max max max % maximum value +}bd + +/sh3 +{ % emulation of shading type 3. Assumes shading dictionary is top dictionary on the dict stack + /Coords load aload pop % x0 y0 r1 x1 y1 r2 + 5 index 5 index translate % origin is now at first circle origin + 3 -1 roll 6 -1 roll sub % y0 r1 y1 r2 dx + 3 -1 roll 5 -1 roll sub % r1 r2 dx dy + 2 copy dup mul exch dup mul add sqrt + /dx xs % r1 r2 dx dy + 2 copy 0 ne exch 0 ne or + { + % r1 r2 dx dy + exch atan rotate % we are now rotated so dy is zero and positive values of dx move us as expected + }{ + pop pop + }ifelse + % r1 r2 + /r2 xs + /r1 xs + /Function load + dup/Size get 0 get 1 sub % this is the size of our table minus 1 + /Nsteps xs % at some point we should optimize this better so NSteps is based on needed steps for the device + setupFunEval % may need to setup function dictionary by calling setupFunEval + % determine the case: + % case 0: circle1 inside circle2 + % case 1: circle 2 inside circle 1 + % case 2: r1 = r2 + % case 3: r1 != r2 + dx r2 add r1 lt{ + % circle 2 inside of circle 1 + 0 + }{ + dx r1 add r2 le + { % circle 1 inside of circle 2 + 1 + }{ % circles don't contain each other + r1 r2 eq + { % equal + 2 + }{ % r1 != r2 + 3 + }ifelse + }ifelse + }ifelse + /sh3tp xs % sh3tp has the number of our different cases + clippath {pathbbox}stopped {0 0 0 0}if + newpath % x0 y0 x1 y1 + /ymax xs + /xmax xs + /ymin xs + /xmin xs + + % Arc angle atan( sqrt((dx*dx + dy*dy) - dr*dr), dr) + dx dup mul r2 r1 sub dup mul sub dup 0 gt + { + sqrt r2 r1 sub atan + /a0 exch 180 exch sub store + /a1 a0 neg store + }{ + pop + /a0 0 store + /a1 360 store + }ifelse + + currentdict/Extend known + { + /Extend load 0 get r1 0 gt and % no need to extend if the radius of the first end is 0 + { + 0/Function load FunEval sc % evaluate the function to get a color and set it + % case 0: circle1 inside circle2 + % case 1: circle 2 inside circle 1 + % case 2: circles don't contain each other and r1 == r2 + % case 3: circles don't contain each other and r1 != r2 + { + { % case 0 + dx 0 r1 360 0 arcn + xmin ymin moveto + xmax ymin lineto + xmax ymax lineto + xmin ymax lineto + xmin ymin lineto + eofill % for the bigger radius we fill everything except our circle + } + { % case 1 + r1 0 gt{0 0 r1 0 360 arc fill}if + } + { % case 2 + % r1 == r2, extend 0 + % r3 = r, x3 = -(abs(minx) + r), x1 = 0 + + % x(i+1) r(i+1) x(i) r(i) shp + 0 r1 xmin abs r1 add neg r1 shp + } + { % case 3 + % no containment, r1 != r2 + + r2 r1 gt{ % the endpoint we are drawing is that with a circle of zero radius + % x(i+1) r(i+1) x(i) r(i) shp + 0 r1 + r1 neg r2 r1 sub div dx mul % this is point of beginning circle + 0 % point of ending circle + shp % takes x(i+1) r(i+1) x(i) r(i) + }{ % the first circle is the bigger of the two + % we find a circle on our line which is outside the bbox in the + % negative direction + % x(i+1) r(i+1) x(i) r(i) shp + 0 r1 calcmaxs % 0 r1 maxs + dup + % calculating xs: (-(maxs+r2)*x2)/(x2-(r1-r2)) + r2 add dx mul dx r1 r2 sub sub div + neg % maxs xs' + exch 1 index % xs' maxs xs' + abs exch sub + shp + }ifelse + } + }sh3tp get exec % execute the extend at beginning proc for our shading type + }if + }if + + % now do the shading + /d0 0 store + /r0 r1 store + /di dx Nsteps div store + /ri r2 r1 sub Nsteps div store + /Function load + 0 1 Nsteps + { % function t(i) + 1 index FunEval sc + d0 di add r0 ri add d0 r0 shp + { + % fill interior arc + d0 0 r0 a1 a0 arc + d0 di add 0 r0 ri add a0 a1 arcn + fill + + % fill exterior arc + d0 0 r0 a0 a1 arc + d0 di add 0 r0 ri add a1 a0 arcn + fill + }pop + + % advance to next + /d0 d0 di add store + /r0 r0 ri add store + }for + pop % pop our function dict + + % handle Extend + currentdict/Extend known + { + /Extend load 1 get r2 0 gt and % no need to extend if the radius of the last end is 0 + { + Nsteps/Function load FunEval sc % last element + % case 0: circle1 inside circle2 + % case 1: circle 2 inside circle 1 + % case 2: circles don't contain each other and r1 == r2 + % case 3: circles don't contain each other and r1 != r2 + { + { + dx 0 r2 0 360 arc fill + } + { + dx 0 r2 360 0 arcn + xmin ymin moveto + xmax ymin lineto + xmax ymax lineto + xmin ymax lineto + xmin ymin lineto + eofill % for the bigger radius we fill everything except our circle + } + { % r1 == r2, extend 1 + % r3 = r, x3 = (abs(xmax) + r), x1 = dx + % x(i+1) r(i+1) x(i) r(i) shp + xmax abs r1 add r1 dx r1 shp + } + { % no containment, r1 != r2 + + r2 r1 gt{ + % we find a circle on our line which is outside the bbox in the + % positive direction + % x(i+1) r(i+1) x(i) r(i) shp + calcmaxs dup % maxs maxs + % calculating xs: ((maxs+r1)*x2)/(x2-(r2-r1)) + r1 add dx mul dx r2 r1 sub sub div % maxs xs + exch 1 index % xs maxs xs + exch sub + dx r2 + shp + }{ % the endpoint we are drawing is that with a circle of zero radius + % x(i+1) r(i+1) x(i) r(i) shp + r1 neg r2 r1 sub div dx mul % this is point of ending circle + 0 % radius of ending circle + dx % point of starting circle + r2 % radius of starting circle + shp + }ifelse + } + } + sh3tp get exec % execute the extend at end proc for our shading type + }if + }if +}bd +/sh % emulation of shfill operator for type 2 and type 3 shadings based on type 0 functions +{ % shadingDict -- + begin + /ShadingType load dup dup 2 eq exch 3 eq or + { % shadingtype + gsave + newpath + /ColorSpace load scs + currentdict/BBox known + { + /BBox load aload pop % llx lly urx ury + 2 index sub % llx lly urx ury-lly + 3 index % llx lly urx ury-lly llx + 3 -1 roll exch sub + exch rectclip + }if + 2 eq + {sh2}{sh3}ifelse + grestore + }{ + % shadingtype + pop + (DEBUG: shading type unimplemented\n)print flush + }ifelse + end +}bd + +% end of language level 2 ONLY code + +{restore}if not dup{save exch}if +% languagelevel3 ONLY code goes here + L3?{ % we do these loads conditionally or else they will fail on a level 2 printer + /sh/shfill ld + /csq/clipsave ld + /csQ/cliprestore ld + }if +{restore}if + +%currentdict dup maxlength exch length sub (number of extra slots in md = )print == flush % *** how many entries are free +end +setpacking +% count 0 ne { pstack(***extras on stack during prolog execution***\n)print flush}if % *** BARK if anything is left on stack +%%EndFile +%%EndProlog +%%BeginSetup +%%EndSetup +%%Page: 1 1 +%%PageBoundingBox: 0 0 600 480 +%%BeginPageSetup +cg_md begin +bp +sdmtx +%RBIBeginFontSubset: ArialMT +%!FontType1-1.0: ArialMT 1.0000.5.0100 + /FontInfo 1 dict dup begin + /FSType 8 def + end readonly def + 14 dict begin/FontName /ArialMT def + /PaintType 0 def + /Encoding 256 array 0 1 255{1 index exch/.notdef put}for + dup 33 /zero put + dup 34 /two put + dup 35 /four put + dup 36 /six put + dup 37 /eight put + dup 38 /one put + dup 39 /c put + dup 40 /p put + dup 41 /u put + dup 42 /s put + dup 43 /three put + dup 44 /g put + dup 45 /parenleft put + dup 46 /k put + dup 47 /e put + dup 48 /r put + dup 49 /n put + dup 50 /l put + dup 51 /o put + dup 52 /y put + dup 53 /parenright put + dup 54 /t put + dup 55 /i put + dup 56 /m put + dup 57 /w put + dup 58 /b put + dup 59 /h put + dup 60 /a put + readonly def + 42/FontType resourcestatus{pop pop false}{true}ifelse + %APLsfntBegin + {currentfile 0(%APLsfntEnd\n)/SubFileDecode filter flushfile}if + /FontType 42 def + /FontMatrix matrix def + /FontBBox[2048 -1361 1 index div -665 2 index div 4096 3 index div 2060 5 -1 roll div]cvx def + /sfnts [< + 74727565000900000000000063767420000000000000009C000006546670676D00000000000006F0000005EE676C79660000000000000CE0000034546865616400000000000041340000003668686561000000000000416C00000024686D747800000000000041900000007C6C6F6361000000000000420C000000406D617870000000000000424C0000002070726570000000000000426C00000BBE05BA001905BA001A05A70019042600180000FFE70000FFE80000FFE7FE69FFE805BA0019FE69FFE802EA000000B8000000B80000000000A800AD016900AD00BF00C201F0001800AF00B900B400C800170044009C007C009400870006005A00C80089005200520005004400940119FFB4002F00A1000300A100CD00170057007E00BA00160118FFE9007F008503D300870085000D002200410050006F008D014CFF75005C00DF04830037004C006E00700180FF58FF8EFF92FFA400A500B903C8FFFD000B001A0063006300CDFFEE05D8FFDC002D005C0095009900DF019209B500400057008000B9039D0072009A035D0401FF67FFFA00030021007700CD0004004D00CD01C0022B004C006500E70118017C034305D8FFA3FFB0FFC40003001C005D0068009A00BA013501470221055CFF4DFFCD0016002D00780080009900B200B600B600B800BD00DA010C05F0FFA4FFF00019002C0049007F00B400CE01C003FEFD81FE3F000000050018002900390049006F00BE00C700D0012301C1026F050C05320540057AFFD4001400310055005700A700B400E601F7027E027E027F03C60446FF42000E0085009100BF00C200C500E1011A012F014F01560229026F029E03720008002C00310031006400690089009800C700DE012B01B6020C02CF03A304AB04FB061DFEE0FF0E00060026009B009D00C1010D011801200173018201D601E30243025F029B02E2039404A904D20761001C005E006D008D00AB00F7011201380151015B0168017C01870191019901CD01D001E802410254026B02EF0368037103BD044204420453047304830586058B06E8FE58FEC4FED1FEF7FF32FF860051007C008100910095009E00B400B900CF00D900D900DF00E20105010B010E010E012001210155017B017B017E018D01A201A801A901B401D001D001E201E901F201F501FB020002000206021B0221022202220223027202770294029C02CF02CF02D002EC02F903170322032B0335033C0359036F037103870390039003B503E1041A04CF04FF053205320596059F05A805AB05C205F0060C0782080008CCFCA3FD2AFDDEFE00FE88FE96FEB2FEB4FFE100150019001A001C001F003C005100610061006A0078009600A500AF00D3010C0118011A012A013E014C0151015F016A0171017801820184019A01A501A801A901AE01BC01CD01D701EF0200020D021C + 02210222022E02350242024F024F025E026502710290029202B402D602FA0307030B030F0315032A0347035D036503740379039603B003CC03DD03E203F603FC03FC03FF040A041F04220426042B0447045F0475049E04E704E7055C05CB05E5060A066D068606B806F10736073E07500751075D078F07B607D4086000B600C300B500B700000000000000000000000001E00381034503B5008E0233041902CE02CE002D005F0064034D023F000002A80188027D01B402240578063B023B014E00F00426029402C6029F02F6023B034D014B0153006A0231000000000000061404AA0000003C04C300ED04BC026502CE03B50078060C017E02EF060C00B201000239000001C50330042B03CB00DA03DF010704A100DB040A011701ED02A70350010B01BD043E05580021039C00AE0371017D00B5024500000AFB088C012B014E01AA00870054013201F803FF0003024E00B4003703E30083006B02D800ED00770088009701640467008E0033017C00E700A6029E0329056E062A061501C90269048A021301B4000204A9000002390124010305140084015D039A06EF02D9007500CF040A00DE03AC04BC02CF02AE034D04F005520168006D007D00860071FF810079055804D2016700030156002504E00094007C033204210094007F0072005C002F00B6001800BA00B80041034D00720018001F004C016A01550099009A009A009800B200040078006900140057006E00CE00B4065402B80067050E016500E7000004CBFE52005AFFA60099FF67006EFF92002DFFD40087FF7C00B800A800E5008F00A80185FE7B0070001E00D900DE014C054602CF0546FF2D028A02D90253029600B700000000000000000000000000000125011800EA00EA00AE0000003E05BB008A04D70053003FFF8CFFD500150028002200990062004A00E4006D00EE00E5004803C00033FE4E02B1FF460370007905DF0051FFA7FF1F010A0068FF6C004F00BC00A507050061072B00ED04B001D200B6007B00650252FF740365FE690094008F005C004000860075008900894043555441403F3E3D3C3B3A3938373534333231302F2E2D2C2B2A292827262524232221201F1E1D1C1B1A191817161514131211100F0E0D0C0B0A090807060504030201002C4523466020B02660B004262348482D2C452346236120B02661B004262348482D2C45234660B0206120B04660B004262348482D2C4523462361B0206020B02661B02061B004262348482D2C45234660B0406120B06660B004262348482D2C4523462361B0406020B02661B04061B004262348482D2C0110203C003C2D2C20452320B0CD442320B8015A51582320B08D44235920B0ED51582320B04D44235920B09051582320B00D44235921212D2C20204518684420B001602045B04676688A4560442D2C01B10B0A4323 + 43650A2D2C00B10A0B4323430B2D2C00B0172370B101173E01B0172370B10217453AB10200080D2D2C45B01A234445B01923442D2C2045B00325456164B050515845441B2121592D2CB00143632362B0002342B00F2B2D2C2045B0004360442D2C01B00643B00743650A2D2C2069B04061B0008B20B12CC08A8CB8100062602B0C642364615C58B00361592D2C45B0112BB0172344B0177AE4182D2C45B0112BB01723442D2CB01243588745B0112BB0172344B0177AE41B038A45186920B01723448A8A8720B0A05158B0112BB0172344B0177AE41B21B0177AE45959182D2C2D2CB0022546608A46B040618C482D2C4B53205C58B002855958B00185592D2C20B0032545B019234445B01A23444565234520B00325606A20B009234223688A6A606120B01A8AB000527921B21A1A40B9FFE0001A45208A54582321B03F1B235961441CB114008A5279B31940201945208A54582321B03F1B235961442D2CB110114323430B2D2CB10E0F4323430B2D2CB10C0D4323430B2D2CB10C0D432343650B2D2CB10E0F432343650B2D2CB11011432343650B2D2C4B525845441B2121592D2C0120B003252349B04060B0206320B000525823B002253823B002256538008A63381B212121212159012D2C4BB06451584569B00943608A103A1B212121592D2C01B005251023208AF500B0016023EDEC2D2C01B005251023208AF500B0016123EDEC2D2C01B0062510F500EDEC2D2C20B001600110203C003C2D2C20B001610110203C003C2D2CB02B2BB02A2A2D2C00B00743B006430B2D2C3EB02A2A2D2C352D2C76B8022323701020B802234520B0005058B00161593A2F182D2C21210C6423648BB84000622D2C21B08051580C6423648BB82000621BB200402F2B59B002602D2C21B0C051580C6423648BB81555621BB200802F2B59B002602D2C0C6423648BB84000626023212D2CB4000100000015B00826B00826B00826B008260F10161345683AB001162D2CB4000100000015B00826B00826B00826B008260F1016134568653AB001162D2C4B53234B515A5820458A60441B2121592D2C4B545820458A60441B2121592D2C4B53234B515A58381B2121592D2C4B5458381B2121592D2CB0134358031B02592D2CB0134358021B03592D2C4B54B012435C5A58381B2121592D2CB012435C580CB00425B00425060C6423646164B807085158B00425B00425012046B01060482046B0106048590A21211B2121592D2CB012435C580CB00425B00425060C6423646164B807085158B00425B00425012046B8FFF060482046B8FFF06048590A21211B2121592D2C4B53234B515A58B03A2B1B2121592D2C4B53234B515A58B03B2B1B2121592D2C4B53234B515AB012435C5A58381B2121592D2C0C8A034B54B00426024B545A8A8A0AB012435C5A58381B2121 + 592D2C4B5258B00425B0042549B00425B00425496120B0005458212043B0005558B00325B00325B8FFC038B8FFC038591BB04054582043B0005458B00225B8FFC038591B2043B0005458B00325B00325B8FFC038B8FFC0381BB00325B8FFC03859595959212121212D2C462346608A8A462320468A608A61B8FF8062232010238AB902C202C28A70456020B0005058B00161B8FFBA8B1BB0468C59B0106068013A2D2CB1020042B123018851B1400188535A58B910000020885458B202010243604259592D2CB0024354584B53234B515A58381B2121591B21212121592D000000020100000005000500000300070000211121112521112101000400FC2003C0FC400500FB002004C0000001007CFE51026005D30010003D400A270F0100101207081010B80133B3009F0E08B801334011079F0E5E0003100320030303AC119D8C182B10F65DFDF6ED10F6ED003F3C3F3C3130015D012602113437363733060706070615100101DF95CE4D5ABC8179273D232B012BFE51BC01F8010EEEDAFDFBD0598A96BBBDFE1FFE200001007CFE51026005D300100065400C2802281002090A1001001209B80133B30A9F0301B80133B4009F035E0EB8FFF0B4101002550EB8FFF8B40F0F02550EB8FFE4B40D0D02550EB8FFEC400F0A0A02550F0E1F0E020EAC129D8C182B10F65D2B2B2B2BFDF6ED10F6ED003F3C3F3C3130015D1323001134272627262733161716151002FD81012B2B223D277A81BC5A4DCFFE5101E001E1BCB9968A5AD2FBFDDAEEFEF2FE0800020055FFE7041105C00010001D0155B10202435458400A1A1E0405141E0D0D1709B8FFE8B40F0F025509B8FFE840190D0D02550911000C0F0F025500160C0C0255000C0D0D0255002F2B2B2BCD2F2B2BCD003FED3FED31301BB10602435458400A1A1E0405141E0D0D1709B8FFF4B40F0F065509B8FFE6B40D0D065509B8FFEE40190B0B0655091100100D0D065500100C0C065500100B0B0655002F2B2B2BCD2F2B2B2BCD003FED3FED31301BB4062019101CB8FFF0B202200BBEFFE00016FFE00012FFE0000FFFE0406204068702880B880FC90E0509070B180245134C154A19431B54135C155C19521B6B076B0B63136C156B19601B79027706760B7A0F870698079610C918DA02D606D60BDB0F1A1A1E0405141E0D0D17730940212334300901000910090209901F117300B8FFC0400E212334200040000200901EC78B182B10F65D2BED10F65D712BED003FED3FED3130015D71005D003838383838013838385959131012363332161612151002062322272613101633323611102623220706556BD3A076B274426AD3A1D47991B9A97C7CA9A97E7C4A5D02D30104013DAC5FB3FEFFDAFEFEFEC3AD98B7019DFE97EFF00168016AEE698600000100DF000002FB05C0000A00AF402003400D11 + 346B047F028F02990804AC04010900060502030905010C0201CA0A00B8FFC0400A21233430000120000100B8FFE0B41010025500B8FFEA40110F0F0255001C0C0C0255000E0D0D025500B8FFF040190F0F065500100C0C065500100D0D0655001A0C05400D0F3405B8FFC0400E212334300501200540050205190BBA013C018500182B4E10E45D712B2B10F62B2B2B2B2B2B2B5D712B3C4DFD3C003F3F17390111393130015D005D2B212311060607353636373302FBB441D35497E22F74047B3E7C1FAE47CA5F000001003C0000040705C0001E01C7B10602435458400911100D18131306550DB8FFF4B4111106550DB8FFEE4009101006550D1E14051EB8FFE84017131306551E1E111106551E1C0E1006551E0C0D0D06551EB802BB400C020A1717201F10110202201F1112392FD4CD1112392FCD002FED2B2B2B2B3FED2B2B2BC43231301BB10202435458400911100D0C121202550DB8FFF440090F1102550D1E14051EB8FFE0400B121302551E140F1102551EB802BBB2020A17B8FFE8B40B0B025517B8FFEC400E0D0D02551717201F10110202201F1112392FD4CD1112392F2B2BCD002FED2B2B3FED2B2BC43231301B40363B053B06BB05BF06BB07C708C91C07490C590C540E6B0C640E7A127A138912BC12E51AE51BF01A0CBF0BB713021B101C101D101E1006BEFFF00007FFE00008FFF00009FFF0401A1E0A10080606CA1C1A141C1C1A081C1A030102081A1C030D1E10B802A4B34F110111B80118B50D1E1405001EB802BB400F01020C0A7317D30000014021233401BB0281002000100138400C11B53F025F026F027F020402BA0224001F018FB18B182B10F65DF4ED10F62B3C10F4ED003F3CFD3C3FEDFD5DE4111217390111121739870E2E2B0E7D10C401111239313000383838380138383838005D015D725959251521263736363736363534262322060727363633321615140606070606070407FC37021725A39AEFA8997B829C01B913F8D1D3F648A7C2A25C1EADAD413C63C07EC4E5666B939C8A13CFD9EAAD58AABCA488613100010056FFE6041605C0002B0159B10202435458400B1918400D0D0255181C0001B8FFC0402B0C0D02550129230A0D0F0C0F1E0A0A29151E1C041E291C05290D230D0C181901001220100C0C0255200726B8FFE8B40C0D0255262F2BCD2F2BCD2FCD2FCD2F0012393F3F10ED10ED12392FEDC610C6123910C42B3210C42B3231301B4028050D160D450D860D0445115711761B0352166C106A146416750D7914860D8A14891BA50D0A052003B8FFE0400B0B0C0D0E040701230D0C01B802A4B340000100BB01180029000D0135B40C0C150418BA02A4001902684027151E1C05041E290D12735F206F200220180D0D0655208007732640212334302601002610260226B8FFF4B70D0D065526902D + 18B80138B219D301BA01380000FFC0400B212334200040000200902CB80192B18B182B10F65D2BEDF4ED10F62B5D712BEDF42B5DED003FED3FEDFDE41112392FED10FD5DE411123901111217393130013838015D005D017159133716163332363534262322073716333236353426232206072736363332161615140607161615140023222656B41F956B7FAFA27D334C14120B73B8866A698C14B421EAAE78CA6B66648290FEE8D6C1FF0183189987B0827CA1149E02787D6382848420B5C767B2645F9C2E1EBD8EC0FEF5E60002001A0000041005BA000A000D0126403612580C680C9A0CA90CC90C054C034C0D94040312010208000C060307050A0B0307000C0C0D0DCA030414030304030D00020C0D040703BB02BB0008000201A0400A000404000C0C00CA0A04B80266B705050A401D1F340AB8FFE0B4101002550AB8FFE6B40D0D02550AB8FFEEB40D0D06550AB80137400D07402223340780213507900F02B8FFC0400B0D14340002100220020302B8FFE0B40D0D025502B8FFE4B60D0D065502B50EB8018CB18B182B10EC2B2B5D2B10F62B2BF42B2B2B2B3C10E610FD3C003F3F10F43CF63C1139390111123939872E2B047D10C40F0F0F313001435C58B9000DFFDEB212390DB8FFD4400B333903222D3903041D1D3C2B2B2B2B595D005D435C5840140C400B390C8050390C4026390C221C390C402D392B2B2B2B2B5921112135013311331523110311010296FD84029D93C6C6B4FE35015FA503B6FC4AA5FEA102040295FD6B0002004DFFE7041505C0001D002A014FB10202435458401F0F011F015F0103011B281E400D010D0D14051E1B05221E140D0A1E01002510B8FFF440190D0D0255101E17100F0F025517100C0C0255170C0D0D0255172F2B2B2BCD2F2BCDD4CD10C5003FED3FED12392F5DED10C45D31301B402D6B190144074015441944205A1254206B03640764086A1264207408751C8508861CD608D4161107200D0D065527B8FFE0B40D0D065523B8FFE0400B0D0D065521200D0D065507B8FFE0B42720232021B8FFE04011281E400D500D020D0D141B01D35F000100B802684009051E1B05221E140D01B80138401200B525731040212334301001001010100210B8FFF0B70C0C065510902C0ABA0138001E013940163F175F176F177F170417160C0C065517160D0D065517B80224B32BC78B182B10F62B2B5DEDED10F62B5D712BEDF4ED003FED3FEDFD5DE41112392F5DED313001383838382B2B2B2B015D005D590107262726232207060607363633321215140606232200111037363332160114161633323635342623220603FBB3182C496B564155620241BC67B4FD77D084E1FEE49D89E8ADDDFD374F8E4E72A4A27B7AAA04530E6A304D303EEEDC6360FEF7D28AED7E014B017C01A9C1A8C2FCDD5DAA59B89E98 + AFAF00030053FFE7041905C00017002300300200B10202435458B40C001B1E2EB8FFC04017131302552E2E12211E0605281E120D1E090C0C0C025509B8FFF4B60D0D0255092B0FB8FFF0B40F0F02550FB8FFE8B40B0B02550FB8FFE8B60D0D02550F1803B8FFF0B41010025503B8FFF0B40F0F025503B8FFF440190D0D02550324150C0B0B0255150C0C0C0255150C0D0D0255152F2B2B2BCD2F2B2B2BCD2F2B2B2BCD2F2B2BCD003FED3FED12392F2BED393931301BB10602435458B71E090C0C0C065509B8FFF4B60D0D0655092B0FB8FFE4B40F0F06550FB8FFE4B60D0D06550F1803B8FFF0B40F0F065503B8FFFC40220D0D06550324150C0C0C0655150C0D0D0655150C001B1E2E2E12211E0605281E120D003FED3FED12392FED3939012F2B2BCD2F2B2BCD2F2B2BCD2F2B2BCD31301B4037351601291649164926E60CE930050930017D007D017C047408710B720C750D7A178B008A018C048608810B840C860D8D17CC11C6131222B8FFE0B21C201AB8FFE0B220202FB8FFE0B22D2026B8FFE0401E29200C001E18000C1B1E2EA02E012E12211E0605281E120D1E73BF090109B8026740102B730F40202334300F01000F100F020FB80191B6321873B0030103B80267B2247315B8FFC0400E2123342015401502159031C78B182B10F65D2BEDF45DED10F45D712BEDF45DED003FED3FED12395D2FED393901111239393130013838383838383838015D72710071595901262635343633321615140607161615140023220035343613141633323635342623220603141616333236353426232206016A706CE6BFC0EA6B6D878DFEF6D9D9FEF69162866B6885896667883A49905381A8AD827FA7031B29986AA0DADFA06697292CC488BCFF000101C08FC101546884835F638784FCFF4D904FA68082AAA8000002004AFFE8041C043E00280037022D402C090D092A190D1A2A290D2A2A390D3615371B3A2A492A5D0D5D2A6A0D692A60308A0D86299A169B1AA90D1528B8FFE8B40B0B065527B8FFE840190B0B0655A619AA28B619BB28C419CF28D215DD28084416011EB8FFF440110C0C065512120C0C0655050C0C0C065535B8FFE040550C0C06551F171F182B2C2A343904392C4904482C5608592B6608692B760C870CC90CF90DF92B1137340E0104102F243417322114185F296F2902291C2F0E3F0E8F0E9F0EFF0E059F0EAF0EEF0E030E0C0F0F02550EB8FFEAB4101002550EB8FFF44015101006550E0C0D0D06550E060F0F06550E0E1C0317B802AAB61895141C1C0700B8FFF4401A0C0C06550045270A321C030B2961106100060D0D025500252124B8FFECB41010025524B8FFEC400B0D0D025524040C0C025524B8FFE4B40B0B025524B8FFF4B40B0B065524B8FFDC400B1010065524060F0F065524B8FFFCB40C0C065524B8025B40 + 0E27400026102620263026AF260539B8FFC0B40E0E025526B8FFD6B60E0E0255263139B8FFC0400D1E23343039C03902A039013917B8FFF4404110100655172518222F24BF06CF06021F063F0602060E0F0F0255060C0D0D025506180C0C0255060C0B0B0255060C0B0B0655060E0D0D065506100C0C065506313810F62B2B2B2B2B2B2B5D71EDF4ED2B105D712BF62B2B5DEDF42B2B2B2B2B2B2B2B3CFD2BE5E5003FED3FE42B3FEDFDE41112392F2B2B2B2B2B5D71ED711112391112393901111217393130005D2B2B2B2B01715D2B2B0071250606232226353436363736373637363534272623220607273E02333216161716151514161723260306070E02151416333236373635033C64B96AAFBC477348356BDA67013345887F791DB0186ED08988AA5010091722BC1C1762C46F5C326D6968A2261D835546AB854E814E140E0D1A24250A6E2D3D597118718B4B40614A2E78F0FB853D3801DD281C10284D2F48605B4F3D7700020086FFE8041F05BA0010001D0180409B01050C0F240535054505053F1FB01F021F1F221C331C421C701F901F063A133C163C1A4C164C1A5D085D0D580F5D165E1A6A086C0D680F6E166E1AC01FD90CDA17DA19E213EC17EC19E31DE01FFF1F1920052F0F2F1430053F0F40054C0F50056605DA1DF504FA100C10150E040602001B1C0607010A151C0E0B1824D00B01100B400B600B800B041F400D0D02550B0C0F0F02550B180D0D02550BB8FFF6B40C0C02550BB8FFF0B40B0B06550BB8FFF4B40F0F06550BB8FFE0B40C0C06550BB8FFF4402F0D0D06550B7401113300040C0C025500040D0D0655003303250202C001019001A001B001F001041F013F014F010301B8FFFEB41010025501B8FFFC401D0E0E0255010C0D0D025501100C0C025501120B0B0255010C0B0B065501B8FFF8B41010065501B8FFFC40160F0F065501180C0C065501140D0D065501191E4737182B4E10F42B2B2B2B2B2B2B2B2B2B5D71723C4D10FDF42B2BE410FD2B2B2B2B2B2B2B2B5D71ED003FED3F3FED3F11391112393130005D015D7172007121231133113633321E0215100023222703141716333236353426232206012DA7B472B162AF7140FEF2BDBC6B0234559176ACA57576AC05BAFDF58F4F8FCA73FEEFFED69D0196BF558BCDCBD0C6CD00010050FFE803ED043E001A015AB1020243545840340E7F0F010F0B01400050007000030004121C0B07181C040B010E1507080E0E0255070C0D0D0255070C0C0C025507100B0B0255072F2B2B2B2BCDD4C6003FED3FED10C45D3210C45D3231301B4047090C011F1C4313431753135317601360179B029B039A0DA410A41A0C080D190A6A0269036A05750C700D800DA60CB509B60AB50C0C160C860CE302030E225F0F6F0F7F0F030F01B802AA407930004000500060007000 + 9000A000E000F00009000F0F0B000004121C0B07181C040B1C0F010F240E080D0D06550E221B000100240B2B1F010100010101400B0B065501401010065501480C0C0655011A0D0D065501491C1524CF07011F073F0702070E0B0B0655070A1010065507120C0C065507311B34C4182B10F62B2B2B5D71ED10F62B2B2B2B5D724B53234B515A58B90001FFC03859ED72F42BED72003FED3FED12392F11392F105DE4105DE43130005D71015D7159011706062322001134123633321617072626232206151416333236033CB11DEFAEDAFEF772E989ADDC1FAF197F5A88AAA4846A8E018517B7CF011D010AAC010281AFA11B6B6CC3D3D6C282000002004BFFE8041E043E0015001D015340171F001C150255035D055D09550B65036B056F09650B0815B8FFE4B40D0D065511B8FFE440520D0D06551D1C0D0D06552712D905FA14F61A0431123A19311C41124D1A411C51125C19521C61126D1A611C78067815F602F618100016010F0D171750166016701603161C0F9010A010021010041B1C0A0700BA02AA0001FFC0B41010025501B8FFC04010101006551001010195131C040B17400DB8FFDCB40D0D02550DB8FFEEB40D0D06550DB8FFEAB40C0C06550DB8FFC04009272A34B00D010D1A1FB8FFC0B32526341FB8FFC040411E2334301F011F163310240740242A341F073F074F070307200B0B025507180C0C0255071C0D0D0255070E0B0B0655071C0C0C065507160D0D065507191E3437182B4E10F42B2B2B2B2B2B5D2B4DFDE44E10712B2BF6712B2B2B2B4DED003FEDFD5D2B2BE43FED12392F5D3CFD713C011112393912393130015D005D2B2B2B017172011706062322001110003332001114072116163332360121262726232206035EBA2CEEB9E9FEEF0114DCD5010E01FCE80AB285638CFDDA02510C3856897CA9015617A3B4011F0103010C0128FEDEFEF91020AFBA680195864368A600020042FE5103EA043E001E002A016F40600B0B05142C0B25144C0B451406091D191D2C0B26142C23390B36144A0B46145607580B680BFA0AF5150E2E232C273E233E274C27902CA02C07362136293F2C460B4621452954215429690763216329602C802CDA27E821EE23EF271117160615B802B1B4281C130701B802AA401020003000600070008000C000D0000700B8027D4032051C1C0F0A45221C0C0A16153325330A251818D017011017401760178017042C400B0C02552C400D0D025517121010025517B8FFF440110F0F025517060E0E025517160D0D025517B8FFEA400B0B0B065517121010065517B8FFEEB40C0C065517B8FFFC404A0D0D065517740F012500221F24BF0FCF0FDF0FFF0F041F0F3F0F4F0F030F200B0B02550F1A0C0C02550F220D0D02550F1C0B0B06550F0C0D0D06550F1A0C0C06550F192B2C74213450182B2B4E + F42B2B2B2B2B2B5D714DEDF4ED10FD2B2B2B2B2B2B2B2B2B2B5D713C10FDE4F63C003FEDE43FEDFD5DE43FEDE43F3C3130015D71005D711717161716333236373627062322023534123633321735331114060623222613141633323635342623220666AF0B3243747D88180E0176B0DBF06ED18DBC7AA665DBA0BEEA99A67D7CA8AD7A78A8581A512532645A37B08B013CDD9801018C9880FC6AF8CF78AB032AD1C0BFCCC3C6C30000010087000003E805BA00140161B90016FFC0B315173403B8FFE0400E0D0D0655250435034503BA0D0403B8FFE0403A1719341708110C1114030501000F1C0507140B0A0C250940333634FF0901C0090116400B0B025516401010025509281010025509140E0E025509B8FFEC40110D0D025509040C0C0255091A0B0B025509B8FFF6400B0B0B065509141010065509B8FFF8400B0D0D0655090A0F0F065509B8FFF6B60C0C0655094E16B8FFC04017343634B016F016027016A016B016FF1604160214250100B8FFC04010333634F0000100002000D000E0000400B8FFFAB41010025500B8FFFA40170E0E025500040C0C025500080B0B025500040B0B065500B8FFFA40160F0F065500020C0C065500020D0D0655004E154750182B10F62B2B2B2B2B2B2B2B5D712B3CFD3C105D712BF42B2B2B2B2B2B2B2B2B2B2B2B5D712BED003F3C3FED3F1139113901123931304379400E060E07250E060C1B010D080F1B01002B012B2B81002B5D2B012B33113311363332161615112311342623220606151187B47EC076AE4BB4756B508D3C05BAFDF2925DA49CFD5F02A1877B538E7DFDBB000200880000013C05BA0003000700CD405E09360B0B02554F099009A009B009C009DF09F0090700091F09700980099F09B009C009DF09E009FF090A1F09010001070402030906037E0100060506040A0607250500049F04A004B004C004E00406C004F0040200042004D004E0040404B8FFF8B41010025504B8FFFA40170E0E025504040C0C0255040A0B0B025504140B0B065504B8FFEAB41010065504B8FFFEB40D0D065504B8FFFC400A0C0C0655044E084750182B10F62B2B2B2B2B2B2B2B5D71723CFD3C003F3F3C3FED0111123939111239393130015D72712B133533150311331188B4B4B404EBCFCFFB150426FBDA0000010088000003F805BA000B0261401B060C0D0D0655070656065A09030F0DF305F60603090C1010025506B8FFF4B40C0C02550AB8FFF4B40C0C025509B8FFF4B40C0C025503B8FFE840100D0D06555503770A0212062013213408B8FFF0B312273409B8FFF0B41227341205B8FFF0B312213409B8FFF04084122734060404050406370947040525062D0A580A7703750ADA03E30607A60601230626072508390638093F0D4F0D59045906580759097D0479059909C606D204D606E406E907F7 + 06F90815120A0A05030304020606070909080A0A050908082507061407070603040425050A1405050A0A09060304080102000405060708080B0B000A04B8010F400905040C0C0655052208B8010F402120073F070207100C0C0655071A900D010D0B2500022501019000013F004F000200B8FFFE40310E0E025500100D0D025500100C0C0255000A0B0B025500120B0B065500120C0C065500080D0D065500190C0DE1214766182B2B4EF42B2B2B2B2B2B2B5D713C4D10ED10ED4E1071F62B5D4DEDF42BED003F3C103C103C3F3C3F3C11173987052E2B047D10C487052E182B0E7D10C40710083C083C0310083C083CB10602435458400D4B09011F0984030209180D1134002B5D7159313001435C58400A092C1D3909081D1D3C06B8FFDEB21D3906B8FFD4B2203906B8FFD4B121392B2B2B2B2B595D00715D0171002B2B435C58B90006FFC0B2213903B8FFC0B2163903B8FFDEB2103906B8FFDEB2103903B8FFDEB20C3903B8FFDEB10B392B2B2B2B2B2B59012B2B2B435C584012DD040108141639090814143C090814143C06B8FFF6B2183906B8FFECB11B392B2B2B2B2B015D59005D2B2B2B2B2B015D712B33113311013301012301071188B401AAE9FE6A01BFDEFEA17F05BAFCBC01B0FE76FD64021F7AFE5B00000100830000013705BA000300E3B605360B0B025505B8FFC0B337383405B8FFC0B334353405B8FFC0B330313405B8FFC0B322253405B8FFC040251517340F051F059F05DF05044F05DF05F005031F0570058005FF05040100000A0203250100B8FFC0B337383400B8FFC040153335349F0001C000F0000200002000D000E0000400B8FFF8B41010025500B8FFFA401D0E0E025500040C0C0255000A0B0B025500140B0B065500081010065500B8FFFEB40D0D065500B8FFFFB40C0C065500B8FFFC400A0C0C0655004E044750182B10F62B2B2B2B2B2B2B2B2B5D71722B2B3CFD3C003F3F3130015D71722B2B2B2B2B2B3311331183B405BAFA46000001008700000626043E002301C7B9000DFFF4B40D0D065508B8FFF4B40D0D065509B8FFD8404D0B0D342504E404E409E117E52005D505F620021708202309181B20090303231E1C06151C0B0B06070106231A19100AD025019025A025022517171A0E2590110111041010025511180F0F025511B8FFEC400B0E0E025511140C0C025511B8FFE840170B0B025511020B0B0655110C1010065511060F0F065511B8FFFAB40C0C065511B8FFF8B40D0D065511B8015D400C1825901B011B180F0F02551BB8FFEC400B0E0E02551B140C0C02551BB8FFEE40110B0B02551B040B0B06551B0A101006551BB8FFFE400B0D0D06551B0C0F0F06551BB8FFFCB40C0C06551BB8015D4016000233232501D000019000A000021F003F004F000300B8FFFE401D0E0E025500100D0D0255 + 00100C0C0255000C0B0B025500160B0B065500B8FFFCB41010065500B8FFF440140F0F0655000A0C0C0655000E0D0D065500192425B80178B3214750182B2B4EF42B2B2B2B2B2B2B2B2B5D71723C4DFDE410F42B2B2B2B2B2B2B2B2B5DEDF42B2B2B2B2B2B2B2B2B2B5DFD4E456544E67172003F3C3C3C3F3F3C4D10ED10ED11173901111239123931304379400E0C141326140C111B01120D151B01002B012B2B81015D005D2B2B2B33113315363633321617363332161511231134262623220615112311342623220606151187A132A66A76971F7ECA9EAAB3235C3E7094B458644C813A0426954E5F6258BAAFB6FD27029D6C5F3A95A4FD9702B27878509A91FDD90000010087000003E6043E0016017D40130503061302A810B810E303E713F003F6130604B8FFF0403C0B0D347910019810D018E018FF18042008140E1416121C05070106160D0A0D0E0C0E2418401010025518400B0B02550B28101002550B140E0E02550BB8FFEC40110D0D02550B040C0C02550B220B0B02550BB8FFF4400B0B0B06550B14101006550BB8FFF9400B0D0D06550B0A0F0F06550BB8FFF640120C0C06550B40333634FF0B01FF0B010B4E18B8FFC0401A343634B018F018027018A018B018C01804180302331516250100B8FFF6B41111025500B8FFFAB41010025500B8FFFA40170E0E025500040C0C0255000A0B0B025500040B0B065500B8FFFA40110F0F065500020C0C065500040D0D065500B8FFC04012333634F0000100002000D000E00004004E1710F65D712B2B2B2B2B2B2B2B2B2B3CFD3CF43C105D712BF65D712B2B2B2B2B2B2B2B2B2B2B2B2BED3C103C003F3C3F3FED11390112393130437940160611090A080A070A0306102611060E1B010F0A121B01002B012B2B2A81015D71002B5D71331133153633321616171615112311342626232206151187A275DD60A150100AB42A6B4873A7042697AF45704D327DFD7302866E6D4192CCFDBC0000020044FFE80427043E000D0019016BB615180D0D065513B8FFE8B40D0D06550FB8FFE840730D0D065519180D0D065512070A190C4706480856065908670669080834103A123A16351845104B124B1645185C055C0952105D125D1652186D056D0964106D126D1664187701150906050D5B035405540A5B0C6C036505650A6C0C0A171C0407111C0B0B14241B400D0D02551B400B0B025507B8FFEA40110F0F025507180D0D025507100B0B025507B8FFF0B40B0B065507B8FFF0B40D0D065507B8FFF0B40F0F065507B8FFF0B40C0C065507B8FFC04013242534300701000710072007030731DF1B011BB8FFC040491E2334301B011B0E24000C0E0F025500120D0D0255000C0C0C0255001C0B0B0255000E0B0B0655000E0D0D0655000C1010065500160C0C065500402425341F003F000200311A + 3437182B10F65D2B2B2B2B2B2B2B2B2BED10712B5DF65D5D2B2B2B2B2B2B2B2B2B2BED003FED3FED313001715D0071435C584009530553096205620904015D59002B2B2B2B131037363332001514060623220013141633323635342623220644A489C5DB01167BEB8BDFFEEDB9B28786B2B38587B2021301278E76FEE1FDCDEB82011E010DCCCBCCD1C5CBCA00020087FE690421043E0012001E0162408E0C102D103D104B10043F20B020021F20290C231D3215321D421D70209020083A173A1B4A174A1B59085B0C5C175C1B6A086B0C69106D176B1BC020D314DD18DD1AD31EE414E41EE020FF201623042B102B1535043A1046044A105A10E50BEB1DFE100B110E03161C1C06070106161C0E0B000E1924D00A01100A400A600A800A0420400B0B025520400D0D02550AB8FFE6400B0F0F02550A180D0D02550AB8FFFAB40C0C02550AB8FFEEB40B0B06550AB8FFF4B40F0F06550AB8FFE840230C0C06550A74011333023312250000C001019001A001B001F001041F013F014F010301B8FFFC401D0E0E025501100D0D025501100C0C025501100B0B0255010C0B0B065501B8FFF6B41010065501B8FFFC40160F0F0655010C0C0C065501120D0D065501191F473718012B4E10F42B2B2B2B2B2B2B2B2B5D71723C4D10FDF4E410FD2B2B2B2B2B2B2B2B5D71ED003F3FED3F3FED113912393130005D015D717200711311331536363332161615140206232226271103141633323635342623220687A43A926888D06A75DF7B5A8F2E11A67678ABA77473B1FE6905BD8A51518CFF98A3FEFB8B4C3AFDFB03A4CDC4CBD5CBCAD70000010085000002C6043E001100C9403B2F1301100401230434044304530466047404060911080908090D1311090D000308010B1C06070106000A0928900801082220130113022211250100B8FFC04010333634F0000100002000D000E0000400B8FFF8B41010025500B8FFF840110E0E025500040C0C025500060B0B025500B8FFFCB41010065500B8FFF440160F0F065500060C0C065500080D0D0655004E1247C4182B10F62B2B2B2B2B2B2B2B5D712B3CFDE4105DF472E4003F3F3FED11393911393901111239390010C9870E7DC43130005D72015D33113315363633321707262322060706151185A23E693F5B5E3E42423B5E141E0426A171483AA727473F6072FDD4000001003FFFE803B1043E00300317407B042214223A094A094424562265227C098E098424A613AB2CC2030D09171A1817304B2CD617051B025502021032010A185C085C095C0A5C0B5C0C5C0D6A086A096A0A6A0B6A0C6A0DB426B4270F27262427242936245A0A590B64266428742374248024930A9C0C9228972C9530A40AA90CA327A428B326C5261628B8FFF4B40D0D065522B8FFF4B40D0D065523B8FFF4B40D0D065524B8FFF4B4 + 0D0D065528B8FFF4B40C0C065522B8FFF4B40C0C065523B8FFF4B40C0C065524B8FFF4B40C0C06551DB8FFDE40121E395A0827250C0A041A202615040B2E1D1AB802AA4022192C0B0B02551F193F194F195F19AF19CF19060F191F196F19DF19041F198F190219BD02550015000002AA0001FFC040140B0B025510014001021001D00102000110010201B8FFC0B314163401B8FFC040100E113401012E5C1D6C1D021D1C150704B8FFF4B40B0B025504B8FFE6B41010065504B8FFE640130F0F0655041C2E0B1F1A011A24194013183432B8FFC0402F0F0F025519180F0F025519180D0D025519160C0C025519201010065519200F0F065519100C0C065519160D0D065519B8025BB207242AB8FFC0B51C39D02A012AB8FFE6B40C0C02552AB8FFE8B40F0F02552AB8FFE8B40C0C06552AB8FFEAB60D0D06552A1A32B8FFC04021272A346032C032023F3280320232100101012400180D0D025500100D0D06550020B8FFF4B40D0D025520B8FFF4B41010065520B8FFF440190F0F065520240F100B0B02550F160C0C02550F200D0D02550FB8FFFA40200F0F02550F0E0C0C06550F0C0D0D06550F22DF00013F004F00020019313437182B4E10F45D714DF42B2B2B2B2B2BED2B2B2B102B2BED724E105D712BF62B2B2B2B712B4DEDF42B2B2B2B2B2B2B2B2BED72003FED2B2B2B3FED7112392F2B2B5D71722BE410FD5D71722BE41112391112390111121739313043794040272D1E2305142C261110121013100306220D201B000928071B01052D071B011E14201B00210E231B0022230D0C08290A1B012827090A062B041B001F101D1B01002B2B103C103C2B103C103C2B012B2B2B2B2A2B818181002B2B2B2B2B2B2B2B2B5D71015D72715D1337161633323635342726272E023534363736363332161617072626232206151417161716171E02151406062322263FB20F897B7C78352593C6994F41382A91537DBD5A11B00C73697C6A16162F1B84BF975669C67DCFD9013D1C6B7265443D2318253249814E4779281F2B487B6718525C5237231C1D130A2433417C5C5A9F57AC0000010024FFF2022A0599001700D8B9000AFFC0B323263409B8FFC0404123263480190100010C0D0A0103001610092B0F0A06161C030B0F10220022010D12250C01FF070845094560077007800790070400072007A007B007C007D0070607B8FFEEB41010025507B8FFF4B40F0F025507B8FFF2B40E0E025507B8FFF8B40D0D025507B8FFF8B40C0C025507B8FFFAB41010065507B8FFF0400B0F0F065507060C0C065507B8FFE8B40D0D065507BA026A00180136B166182B10F62B2B2B2B2B2B2B2B2B5D71F4E410ED3CFD3C10E4F43C003FED3F3CFD3C1139123911333310C93130015D2B2B25170623222626351123353311371133152311141616333202101A4C + 3C626C2C8484B3B5B5132B281EA19F103E65A202638C01076CFE8D8CFD934D2C1A0000010083FFE803E004260018014FB9001AFFC0400915173402201316340FB8FFF040331214342B1301240813160C0113160B06000A111C030B003316251817403336341A401010025517281010025517120E0E025517B8FFEC400B0D0D025517040C0C025517B8FFF4400B0B0B065517141010065517B8FFF8400B0D0D0655170C0F0F065517B8FFF6400D0C0C0655FF1701C01701174E1AB8FFC04015343634B01AF01A02701AA01AB01AFF1A041A0C2509B8FFC04010333634F0090100092009D009E0090409B8FFF8B41010025509B8FFF840110E0E025509040C0C0255090A0B0B065509B8FFF640160F0F065509020C0C065509020D0D0655094E194750182B10F62B2B2B2B2B2B2B5D712BED105D712BF65D712B2B2B2B2B2B2B2B2B2B2B3CFDE4003FED3F3F3C39390111123931304379401A04100E0D0F0D0206070806080508030610040C1B000D08111B00002B012B2A2A81005D012B2B2B21350623222626272635113311141716163332363635113311033F7CD55EA34F100BB40B116E51518E3BB49CB4486D4F35730292FDB38D314751538F880239FBDA00010006000005B704260012041DB10202435458B90012FFF440110D0D025507060D0D025500060D0D02550AB8FFD4B40C0D025504B8FFE8400B0C0D025511200C0D02550AB8FFC0B40E10025504B8FFC0402F0E10025511400E100255040A110301000C06070601060F0A000A0D0C060C0C02550C110102040A04110A0C0C025511B8FFF8B40D0D0255112F2B2BCDCD10D6CD10D42BCD003F3F3F3F3F111217393130002B2B2B2B2B2B012B2B2B1B40160F14012A04290A024A115B118E110311200D0D06550AB8FFE0B40D0D065504B8FFE0B40D0D065511B8FFF040091F2134101C1D273409B8FFF040B71F243404060C0913061B09191205040004060B090B0E08121000130314071C081B0B1D0E240025072A082B0E340035073A083B0E4403470640074D084B0B430F47114A125B0F52126B076408671279067A077408B906BA0FB612F506FB09280B112800280D270E280F27122F1438003712770886089803970CA701A802A80BA60CB500B606BA0EC804D606D909E804E80FE712F406FA091C0B060D0D06550C060D0D065510060D0D06550E060D0D06550F060D0D065512B10602435458401B0A0E0F0412001108070825070F250E122500000E07030D010C250DB8FFD640370B0B06550D0225012A0B0B0655010D011413060A0B11260A2B115404520A5C116C117C118A110A110A040300010F0A000A0C0607060106003F3F3F3F3F111217395D01111239392F2BF42F2BF41112173910E410E410E41112391112391112391B40140305050206070705090A0A080B0C0C0A1011 + 110FB8FF4BB305001220B8FF4940660A0F0E20C311070820071112122B0507140505070E0A0C0C250D0E140D0D0E08110F0F2B0A08140A0A080005020225010014010100000201071204080F110C0E0D0A110A0403120D0C0C0808070702020106120F0F0E0E000A14F6100D01600D700D800D030DB801A7400A204F0A016F0A7F0A020AB8025540094F11016F117F110211B80255400B1005016005700580050305B801A7B501F613F666182B4E10F4194DF45D5D18FD5D71FD5D711A19FD5D5D18E6003F3C103C103C3F3C103C103C103C103C1217390111123939123939113939123939874D2E2B877DC4872E182B877DC4872E182B877DC4872E182B877DC42B2B2B870E10C4070E103C070E103C870E10C4870E10C44BB01F5358B40D200C2002BCFFE00001FFE0000EFFD0B400300F2012B8FFE0013838383838383838594BB0345358B90008FFD0B10730013838594BB021534BB033515A58B90008FFE0B10720013838594BB012534BB01E515A58B9000EFFD0B60F200D200C2008B8FFD0B2073012B8FFE0B2003802BAFFE00001FFE00138383838383838383838594BB012534BB017515A58B90011FFE0B30A200420003838385959313001435C58B9000EFFD4B61239002C123900B8FFD4B113392B2B2B592B2B2B2B2B5D71722B2B2B002B2B2B715D015D5921013313173637133313173713330123032703014BFEBBBAA93F0433A9B99F353DB6AFFEB4BBA929D70426FD9BE411CA026EFD98CBCD0266FBDA027CB5FCCF00010021FE5103EE0426001A01F7B10202435458401D0A140F030B031C190F12060B061340120F200B400C200F180F0F02550F192F2B1ADD1A18CD1A1910DD1A18CD003F3F3FED12173931301BB30F1C010FB8FFDE406D1C392814560FAF0A03400D400F020F202830341020283034070C0912160D1812270B270C270D360C360D350E99110B2812281348165912591359156912691369157906760D79117A147A15850D8A118C128C138914980AA80BBC10BB11BA14EA0AE714F50DFD10F914FF1C1E12B106024354584016130B1C1B040F440F840F030F190B031C190F12060B06003F3F3FED1112395D01111239391B40370F0F0C101112120A00031914131325120A1412120A0F0C0F110C250B0A140B0B0A1312120C0C0B06031C190F001C101C022F1CBF1C021CB8023FB50F1340124014B80254400B3F124012025F12BF120212B80142B60F012200451B0AB8025440120F200B4040200C300C4F0C03500CFF0C020CB80142B32F0F010FB8023FB41B207C66182B1A1910FD71F45D711A18ED1A1910ED1810F4E41910E45D71ED1A1810ED1910E45D7100183FED3F3C103C103C87052E2B087D10C487052E182B0E7D10C400111239870E103C3C08C44BB00E534BB018515A58BB000CFFE8000BFFE8013838 + 5959313001435C58B90014FFDEB637390A2237390EB8FFE8B51539112215392B2B2B2B595D712B2B00715D2B015D591327163332363736373637013313161736371333010607060623227F143B2C3C48171126050BFE6DC2DD2B221F2BE3B4FE6C4124307C5634FE67A91028241B6B0F1D0428FD9975817C76026BFBC8AF42595300000100DE04AA024F05C200030065B90001FFC8B317193402B8FFC0B317193403B8FFC040261719347F018002DF01036F037F007F03036F006F01024F015002020000031003020387010401B80260B2028603B80253B5001904D9A7182B4E10F44DFDF4FD003FFD5D3C3130015D5D5D5D2B2B2B13133303DE85ECDC04AA0118FEE800FFFF0088000001FF072C0236001000000117001DFFB0016A0016400A02000808010141020108B902210029002B012B35000100000005028F92F28CF65F0F3CF5081B080000000000A2E3272A00000000C3047090FAAFFD671000080C00000009000100000000000000010000073EFE4E00431000FAAFFA7A100000010000000000000000000000000000001F0600010002AA007C02AA007C04730055047300DF0473003C047300560473001A0473004D047300530473004A04730086040000500473004B047300420473008701C700880400008801C7008306AA008704730087047300440473008702AA00850400003F023900240473008305C700060400002102AA00DE01C7008800000015005500A8018601F4030903F604A6059106DB084409330A0D0AEC0BE40CB60D300E7C0EFA101210F511D612B8133B150F15A1167018A519D11A121A2A00010000001F00F2003C009D000700020010002F005600000468041D00050002B900540328B326181FD0BC032900E0032900020329B22B1D1FB90327031DB23B1F40B80323B31215320F412D03200001002F0320000100200320006F032000AF032000BF03200004005F031E00010010031E007F031E0080031E00AF031E00BF031E00D0031E00060000031E0010031E0020031E006F031E009F031E00E0031E0006031D031CB2201F1041270319007F03190002000F031700EF031700FF03170003001F0317002F0317004F0317005F0317008F0317009F03170006000F0317005F0317006F0317007F031700BF031700F00317000600400317B2923340B80317B28B3340B80317B36A6C3240B80317B2613340B80317B35C5D3240B80317B357593240B80317B34D513240B80317B344493240B80317B23A3340B80317B331343240B80317B32E423240B80317B3272C3240B80317B312253280B80317B30A0D32C04116031600D00316000200700316000102C4000F0101001F00A0031500B0031500020306000F0101001F00400312B32426329FBF03040001030203010064001FFFC00301B20D1132410A02FF02EF001200 + 1F02EE02ED0064001FFFC002EDB30E11329F414A02E200AF02E200BF02E2000302E202E202E102E1007F02E00001001002E0003F02E0009F02E000BF02E000CF02E000EF02E0000602E002E002DF02DF02DE02DE000F02DD002F02DD003F02DD005F02DD009F02DD00BF02DD00EF02DD000702DD02DD001002DC0001000002DC0001001002DC003F02DC000202DC02DC001002DB000102DB02DB000F02DA000102DA02DAFFC002D3B2373932B9FFC002D3B22B2F32B9FFC002D3B21F2532B9FFC002D3B2171B32B9FFC002D3B2121632B802D2B2F9291FB90326031CB23B1F40BB0322003E00330322B225311FB80318B23C691FB802E3B3202B1FA0413002D400B002D40002000002D4001002D4002002D4005002D4006002D4007002D40006006002D6007002D6008002D6009002D600A002D600B002D60006000002D6001002D6002002CA002002CC002002D6003002D6004002D6005002D6000802D0B2202B1FB802CFB226421F411602CE02C70017001F02CD02C80017001F02CC02C60017001F02CB02C50017001F02C902C5001E001F02CA02C6B21E1F00410B02C6000002C7001002C6001002C7002F02C5000502C1B324121FFF411102BF0001001F02BF002F02BF003F02BF004F02BF005F02BF008F02BF000602BF0222B2641F12410B02BB00CA0800001F02B200E90800001F02A600A20800406A1F4026434932402043493240263A3D3240203A3D329F209F26024026969932402096993240268E923240208E92324026848C324020848C3240267A813240207A813240266C763240206C76324026646A324020646A3240265A5F3240205A5F3240264F543240204F5432B8029EB724271F374F6B0120410F0277003002770040027700500277000402770277027700F90400001F029BB22A2A1FB8029A402B292A1F80BA0180BC0180520180A201806501807E01808101803C01805E01802B01801C01801E0180400180BB0138000100800140B40180400180BB013800010080013940180180CA0180AD018073018026018025018024018020013740B80221B2493340B80221B2453340B80221B341423240B80221B33D3E320F410F0221003F0221007F0221000300BF022100CF022100FF0221000300400221B320223240B80221B3191E3240B80222B32A3F3240B80221B32E3A326F414802C3007F02C3008F02C300DF02C30004002F02C3006002C300CF02C30003000F02C3003F02C3005F02C300C002C300EF02C300FF02C3000600DF02220001008F02220001000F0222002F0222003F0222005F0222007F022200EF0222000600BF022100EF02210002006F0221007F022100AF02210003002F0221003F0221004F0221000302C302C30222022202210221401D101C102B1048038F1C010F1E014F1EFF1E02370016160000001211 + 0811B8010DB6F70DF8F70D00094109028E028F001D001F0290028F001D001F028FB2F91D1FB80198B226BB1F41150197001E0401001F013900260125001F013800730401001F0135001C0801001F0134001C02AB001F0132B21C561FB8010FB2262C1FBA010E001E0401B61FF91CE41FE91CB80201B61FE81CBB1FD720B80401B21FD51CB802ABB61FD41C891FC92FB80801B21FBC26B80101B21FBA20B80201B61FB91C381FADCAB80401B21F8126B8019AB21F7E26B8019AB61F7D1C471F6B1CB80401B21F6526B8019AB21F5E73B80401400F1F52265A1F481C891F441C621F4073B80801B61F3F1C5E1F3C26B8019AB21F351CB80401B61F301CBB1F2B1CB80401B61F2A1C561F291CB80101B21F231EB80401B21F5537B80168402C07960758074F07360732072C0721071F071D071B071408120810080E080C080A080808060804080208000814B8FFE0402B00000100140610000001000604000001000410000001001002000001000200000001000002010802004A00B013034B024B5342014BB0C063004B6220B0F65323B8010A515AB005234201B0124B004B5442B0382B4BB807FF52B0372B4BB007505B58B101018E59B0382BB00288B801005458B801FFB101018E851BB0124358B900010111858D1BB900010128858D5959001816763F183F123E113946443E113946443E113946443E113946443E11394660443E11394660442B2B2B2B2B2B2B2B2B2B2B182B2B2B2B2B2B2B2B2B2B2B182B1DB0964B5358B0AA1D59B0324B5358B0FF1D594BB09353205C58B901F201F04544B901F101F045445958B9033E01F2455258B901F2033E4459594BB8015653205C58B9002001F14544B9002601F145445958B9081E0020455258B90020081E4459594BB8019A53205C58B9002501F24544B9002401F245445958B909090025455258B9002509094459594BB8040153205C58B173244544B1242445445958B917200073455258B9007317204459594BB8040153205C58B1CA254544B1252545445958B9168000CA455258B900CA16804459594BB03E53205C58B11C1C4544B11E1C45445958B9011A001C455258B9001C011A4459594BB05653205C58B11C1C4544B12F1C45445958B90189001C455258B9001C01894459594BB8030153205C58B11C1C4544B11C1C45445958B90DE0001C455258B9001C0DE04459592B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B65422B2B01B33B59635C456523456023456560234560B08B766818B080622020B163594565234520B003266062636820B003266165B059236544B063234420B13B5C4565234520B003266062636820B003266165B05C236544B03B2344B1005C455458B15C406544B23B403B4523614459B3475034374565234560 + 23456560234560B089766818B080622020B134504565234520B003266062636820B003266165B050236544B034234420B147374565234520B003266062636820B003266165B037236544B0472344B10037455458B137406544B24740474523614459004B5342014B5058B108004259435C58B108004259B3020B0A124358601B2159421610703EB0124358B93B21187E1BBA040001A8000B2B59B00C2342B00D2342B0124358B92D412D411BBA04000400000B2B59B00E2342B00F2342B0124358B9187E3B211BBA01A80400000B2B59B0102342B0112342002B7475737500184569444569444569447373737374757374752B2B2B2B74752B2B2B2B2B737373737373737373737373737373737373737373737373732B2B2B45B0406144737400004BB02A534BB03F515A58B1070745B040604459004BB03A534BB03F515A58B10B0B45B8FFC0604459004BB02E534BB03A515A58B1030345B040604459004BB02E534BB03C515A58B1090945B8FFC06044592B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B752B2B2B2B2B2B2B435C58B9008002BBB301401E017400735903B01E4B5402B0124B545AB012435C5A58BA009F02220001007359002B7473012B01732B2B2B2B2B2B2B2B737373732B2B2B2B2B002B2B2B2B2B2B004569447345694473456944737475456944734569444569444569447374456944456944732B2B2B2B2B732B002B732B74752B2B2B2B2B2B2B2B2B2B2B2B2B2B737475732B7374757374752B2B2B742B2B0000 + 00>] def + /CharStrings 31 dict dup begin + /.notdef 0 def +/parenleft 1 def +/parenright 2 def +/zero 3 def +/one 4 def +/two 5 def +/three 6 def +/four 7 def +/six 8 def +/eight 9 def +/a 10 def +/b 11 def +/c 12 def +/e 13 def +/g 14 def +/h 15 def +/i 16 def +/k 17 def +/l 18 def +/m 19 def +/n 20 def +/o 21 def +/p 22 def +/r 23 def +/s 24 def +/t 25 def +/u 26 def +/w 27 def +/y 28 def +/acute 29 def +/glyph3380 30 def + end readonly def + currentdict dup/FontName get exch definefont pop end + %APLsfntEnd + 42/FontType resourcestatus{pop pop true}{false}ifelse + {currentfile 0(%APLT1End\n)/SubFileDecode filter flushfile}if + /FontInfo 1 dict dup begin + /FSType 8 def + end readonly def + /FontType 1 def + /FontMatrix [ 0.00048828125 0 0 0.00048828125 0 0 ] def + /FontBBox{-1361 -665 4096 2060}def + /UniqueID 4167158 def + currentdict currentfile eexec + 54544758EC884CF30C3CD503CEDBFF3839C47C3C3333173232E3FDBFF439491DB843E1924E63AA7726BBB0485AB56D93D8C0906F647A47162891E73FFC2A9873C4B1EAC5EEBDFFC4D06084FBD84139DF4583C6E259D10699944D1068C9C45667DCCCFB9B7EA01B606435EDCBD273ABAC093D14085CCBAC149BD7382E842CFE0D7FE4FD2EF589A2471F6074A80A8B675C2F7A50D63AC1EF90D787BADD11633CB01CF6EE3B37AAF9078A69AC4740E9B6525D78BBD839551A1CB80DB8682FA5E87591BBD6EE8B946063A2A58D9CA3685AB305495DC5FB5747EB8A9A059C4976C0FE4EEAB1D56FF47F1E9664ED9F4A7DAB763AF92B2F6CF2FA7DEC24710E0B9096E30F772BA7FEA9BDBE496C42ED2CEB58F54E80BDF57CE7B4DB6CCFE7182F43BF93CCA0767AF95D62C5D2C3DC6AE1E6D139F51A2C63432117F1714C5566572EE9967A715420ABDCD1D7BD74F8450B89965FCC81C6ACA565C5F3CCF91D430D1F953E4F1A645300A98DD8C47CD64555F08F422340A85404EAE0D3229C4F9336B9470CACBD6BBF3395104750A915CC6EAAC197668267B8C62D2764C8CD69FD937CA3C924D997A0EDE7964BEB9EA2F92EF70C5E5DA0AA5567765E71F2B911B3C55AC8266BDD340E521355EEF8582693491A2FA54E38FF421606F41F15594F07F865F909FE7990EC028684F89B0A24E822BAF31E7CC3C8F9602CCD6FB5E14C040606D60F5BAC95E033E33D144803E18FDE5B941C8EF32884D521EEF728E0B6E73DC2B176A161477B94FB44D4AC4E432E4AC6520108D0A1DC1D757895CECEBA20BDFD1A5A73D77B3B3714A6B96771ACE1EECCBA115B2CBC4F603166CDA6220546E23A814F229C4A5EAA684BE6E9DCB0E1E868ACA1CD1ED218B3D9F346756266D0FF7F7D7225FEA19973E5255699EE62E69BF828E3BE9C0DC28B1597AF56EA4C8547569624138ABA12CDBC8900F98C90EC4A41E5A2F41BCDEF568D6AFC811A0D58F96577019A2A3642BB93FF4312054E8E8F01D7A396A7736D2D5C27A18B30F1D26E0682A4B9AF2DC435B6A0F70176FD0D57852709979BF21DB628B3DD80A2B438A03F84C8A7F7962807A7DEE8D62EA3B15B36D0D829F942093024344995EDE5BCF3AF18F4B7E434C04CF8552EAC56D4236D59858E98B6B7745004783EAC23EEE53ED50AA54B88BBF736CC54BA325E054327F801567C3C6061638778DDC6293DCB94177FEEE86A70BB6A003D94E9665883B20FC879AA33F969384AB64EF3EA8723A241EA9C85717302809D3A7C234698A8EE21CA341E26B20F15DC4FC7FB3941690A4ABD672CB7AC767F9314C9002B54443C22B7F512B03411B779B2053F111A18B59884F9F11FED9421D40E35C9B10598540492321E09CF7569EEC69A27F770C054F3E3B3F2F236A1432206A0D7BD7C4EC1CD48E53C6B38809C2B15C607E62303B3AC3619 + CD663914403E9AC4DE3B733EE2F1496ACD95834D455B95EF6595356EB606A5FFC9ED533362958ECF4380941E1438DB32AA4643F59612E0E7D5DE4E467B865CDC838FAD93AEE84670F42174ECB95DCFBEEEE0B34A306FA514A0FE181C13C454E0AEAEB652DDF44F638EDC4F76F341F6F417E821B1A2F081C171B9B55D4CC3952AF4EC61166B50A18550D5BE017BDD934CAA57C9470E5C3EA500352AF9B1B2E239C0117E473EF5B3FD7BE9E88551410AD73645A710436B19EB129F12382DFC51782A64AACC98AA936D4E3E73E1868EC6851980D58D5386A2548A6918EF7058EA995D7A39E96EC7105722A4674F9ABBC3ACD42448E07E6162EEA9A63F03FF8DEDF5395746731F79CD53EB9481FF2080842745C24A964E30CDA92DECAAE928A5C440AC3CBC99CECCFB51AE5B18DFCD2AAA82821D513E08F841FA2DD6CFBAEAEA48DB5B0997E5F516E937107B5A3D030E48EEB52A0062EED999D4EEDD8C10E8BC9AA1554E4A5FA952A2CE1D41E17436B2D4D77157C123023C0548AA54F9B13AE3E41D13952F697519DDD6E23DF2A1F34BE176EA052FC765DA17C634AB8A4FC16367A070FB44811A8A86EEA51C1FE2244C5875CE076DDF2658BF919B9EE456D67C8E44B13B81F7ED87F35EB59922BE616EB69DAD5FB07E0DBB106D5265E80C857BE675D58D2B4541A50BA84FECFE84855EEF57FC22CCE627AB3FD064C81FEC03A4DAAD389B4F5CD133BF11C01BD6FB2C20D041EB3792C4ED7879481914E6651625C72B3AFC3CCDF63E8C14F6EB253D87719CFBA675928FA88B1CE4C22CE109AAE4B2F933CF6D7F1C60B1792BD6D0B5F53D7E9B0706482F362900526B29AA908133F0C77A0C4A1771C8B311EF7ABCAE39D22CEF7D2ACF73892CC8842602A8AC1AFA747D56840C844456176EB71E19E79EC016D43D1E1F998C9B6478DF7243D27C8E3B33C63FEAE71C972A388C49F3EC0EE6E3BAF9EEB2595A12AFB528DE61BBEB5F3B09BE107A4F3E24166E44F6C7CAF4169ABEE9CA6AC5918E33B1A3C9C005B5CF2CCEF4B8A313108A55137ACA51AFD48CA9EAB896EA981FB48AA846A0BC9D91FBCEE3E3E98879FB6C9316BDE0D19E8B0AFC0049AF9067F1BF105721270219C19C917ED99A90F39591332967F561281F2BEE773049306520E12626AEC2974CB97309AE4FA7B955CDF6E9AF7FDA07D920157D96A2AFAAC57C1E418F2CEE4AB2BECE7C00C9C403020D35F0F841A417E4A800D26A4F0EFDCB70768689ABE990E315B69E55FCCF0D39AD668ADFBD6F79F073F9C83A64D6E2A146F8C68B56B01369C098D05F8B4B8377F6C98D1D682E823A3BC9EA7B4A91B72875784E7FD46914EC3356358AC53E5016C45775B06D742B0C3EE316940E2F11D1D74543496D8CA97ABBDE67E79E356BA535DD012FB54820709CADCFA78D537CAB55A0002EF33195AB7768F23E + 77E6C21B37F002D7F2C53A8793F844A96DD7171B1BA4567C7F19981B6FB4983623FF9E612EC07BD67ABFC062D00EBEC0561C2096D49DC9775217A1FDB59728CE83B984986BDEF3C8D23609FBF10036A08658FF272B4C5B60C7F40861B4BACE7EB9CFAD1A6F6283D739B27676089CF97A9CE1017199A6A392A7559FFFE9AD1BF529FB960A895BA6E53CD50ACCCB76B69F0B645039BDBE9A7FEF588C404D2A40B1F544EF735FD4CE2C857D6F198B619D6AD04907C07DD21C6DC7B0DC109B6A1D697066DDBB53F1969460973FA44619F7887DE4E543D7C31EA984629C6A6E3983D7F858DCCA16781AFCBE2BD6BEC3DE8D950BC6F5F35978EBA46436796E0E7C9CE68EADCD8C233D80A32C7443C83BD7AEC54968870E20858CB7A883F8F14EF7DF6583DFD617C1A7A195B4A0238C516BE6DF236AC27EEDCCC9BD0F102977BE30FAF6BA9382E9D58ADC85619034359126FC4C028FB2C92EA945CF929E75EB2BABD202FEAD7E02F274CC761EB96F50BB99421376F9B38A9AF692FF9AEFAF3615459ED033C0806984E7BFFD7370860F0946D769C45F68DD72142D83492C167A7E0F51051D53DA72FF2540E6A268B00D3ABA0B1F40C44346543844E0F2F583FDCC45505D5387A93EAB9618A772DBADACEADADE474AB6D4A2F8F5B5974E4907BC905E99AE254D7817E884B7F454A7DE76EFB80991DCB9837F216FEDF520F94B8A8F03AB724ACE52D270F09F3B0CC472B6E969B3CDD69991592AAE98DC190E93EB07519A241D56016F26D5C0EA5DE8CBC8C60D6F81ED9B21E9696F3D039BA85A2DACDBD26C10CC190356F9E35A81D3D8A9E1E646CCD8DC1BC2E44F0FAD74314669320ECB7B5EFB64E694A52F24FE87F7693BF85F5FC8C06F39520450E07221EC278A836E95862407086E183FD1D46CC1E402CD65A566C46E88CC8F78A0A1F2223B7ED59EEB687AE3C4812A7802EDFE0DD8562D36105AA8AF142286D2B7C2E6BA44F578AAA1CAF79FB2CE735B34C739A95EF2EE6F841AEF4673568C6347A0AB347F566C647319BA629C134341BFEA728899DFDBE0FDA9F2ECA5C6FFF4639830BBE66A5FF8C2D54E79EE661A3120F6AFF5B1E14E4224683CF31F4A4899C3D675C84BEACBD0C8E401DA7BAB16E4E870EBA052FACD21EA506B53630CB9B7A1328040DEBCB093F0E14C55CD886505C8EB950264350F6CE71669F9A979C516A19E073D21DDB933ED07BADD60AFE5F1C0676C3D465132881131564549DFBAA5EAF3EE4EE37B0653A28A9AC3BAA9BA46A8E4F6B157896B6D919ECDF71D5DD6EEEBDD3CFEAF7609BEF47F7F19B1A850476E29DE7DFB552CD262EB17753F9C8100008D4BF06D58894E632AF5F8D9F36A100900D2541C32FEB4E6B3A857CE3A3B059C39E852FF6ECB32D55AA38E433E335C21C1A24322AF4249587F12FF2AAE78C0DC3C17BD453C4960BD + 893442B138841B5FC00C7DACA7F3D525CE05D99CC628522833E4C081C493EE6EE6C158032AFBC640C7A24D42F02D5B947DAF36B1196478D2F72A71CDC21BD9CB78F7E83F1348B61004E2E2CD83B025222D65E77AA54874DBC3251818829737CF33DA73FC6848732060F8DE1CA7D752CB1B5D3945F4BD721BB2E842370727B8D9FAB62D28794D8FF3FA43D1C5D978502789F232E5873BEB55D4899B16639C27234AA7E89AC965DBDF42ED7E0E52B415469B0BA12698F991DC6A0E720B02CF16460097201ABE4C6A14751100F5D55FF1143061EC632A7288C93B56428DAEFCFD723F25B8BDBDCEA4D77852B5E10DD1EC9FB8263FF81EACBD652DCFB4DDA848C9E0AFE6FB5935B6C3956897DCA18BF5372B689313E4422AB089F999781F8DB421135A2B7F29D669364A7AD72A2835B7925E0B80F88796843C242EEDB48D7D67240567A5E3C7BC4571235AC1725A0721E3AC269A1749E4317CD5A1C65B94DC96F30F8F28F9193246EAE25C83E4BD2A7D9CDCB76506EA56A697D863BD58B5E42EA914E52C1D70B9587025A955A163CCCCDDDD6F5E13EC0BC6D6F4976D978CD010357420A475E344084244C29BB48695BC94532D8AA2F809985D8F1B0D6D016042F8E9C4D80B48AFF3A0438718175082F3ADC0E24A0F5A9ECB2B03EBBA6599B37AC3912B8916122A8A10E2BB39229A9FF2C1F21603D8EC55CD14BDA0B3DDB7B974C793777D20139CB8EE2C98D085B40B34062FA4C3465470CA687D2C4891A75255602B4E6626A33A3534A9131956BB277EC195F967F90AB05B31FFC3BD6795536FE747ABE603E0D50A4ABDD6AC82A1BABDDDE8F885E3261A0F7446B193CFB3C17687AA85726557F8C37C92E224540B7D0A5A2A7E3586758EAF4BE687149733B25596189DDEA3EA53FC3778423079D90E571A51A9226851D7C65FA0E5CC13653D755F6C334B8D95FD4A794779731ABA9115D4EA4F4D5C2A3C6793487E1316B9B1E80F74BA2E576941BC2C6BC8D1F7493A49FAB0EFD3942CD501EAD08DD61EB28238DFF599F35BEB71E27EFE9964DBC3CAD4D386FC4C3F2142A4C422D269871DEDC96095F8EBA29EC5CDE6A729693A743EAEE12C830C833D212D09144FC311F0609BCB2A2A342E40B7844B928153B6D4386CFB2BE179B7A5DF229DB3A2B8D0584B5817A73AD2A8D42BFEDED6E68788B075EED6165E30F438B95A4F4AF84CD73DA6AB1AFF033833C76A02B4A246C6A87BB488A68B2730F4164B705BFB0F6A6C71D0F7F6BE0B50D931B81E39DC3FD7F63FF8250580788AC26C370DDE7AC4D2988B0FB378CBC8C063759E683392F60B32CCE63AA603AFFF975C0A1E49DE2BA2FD07519A554E670F2F0E621A76EC171579C3F7829FA4FAAFC54DBCF8C604769BD8BBD90993D6C4B8998B296FC7216574D19782F5BDF63CD8085ABE2A3A8D736810AA4441F899 + E97EF4ED43FEBC35B0AC8E4D5B0A469040E465BD99824C1FE27808B02845E694C6E391716B8D8906DCE3E14B46C9987FF2D7C242E6A7353176EB367386DFACE2402803C9053B17E88B32997DF698E24C622D088206073D2FFBFB3E6FED4BB4D5CD3B1850D5DD2E3076EBBCEE82A02651C97D1E9711D3BA14FF03CB0BA518A11D358C27430350AB761BD26707F9D1BB49751C033E5D733C6A36684236416C72B8F57B202168E5619C1264AD05C4960C22C4199A960A0EB077894F192A65F8DD2589CA4C06BC0E41AB17314C35B068D94A62C4D6E151C49B46814CA5EC1EBF3D1FD9A69ACBBEF80A50FBA63C406C309728A065611732A3F3B11F95848B3CB3C715373E0F88A35E5F8DE03BC7269D6E1065FE349D5A924FCB5C7743A5DC9FC680FDD5D0995040D6BEAA1ED62FF7BADDE46A81DE9F180C93162417B2962556533B2A7BB5B890E294175165A40A5F8DC4D57FD804E32C6A91D98A9045A8202A76D6FBEB4CD7ED7CACD685E918416AD8E05FDE5459A0DD30AC4162CC2E4882B9133C48E9D31427AD1D280C51AE0CFE9F0C09548674BA72D29A62A347FBD368296B2D552CDAA332AE2BDEDFF1CE9FED635D6BBC8F94DAF5C3805748EE5452FA5961548F39B7629FC67E0FF467D70070438065620C2255701F43821415345CDA8EF5ED648F6BECD55E5E7AAA86F0175182EE8237BE42B56284BC6EDBF53B0D11D93FE3FDA30732E38EBFF38E3CC2E5B474D142B5ABD8415E2C9CFE817E6ACEF73FB45996BECC0E4CC384E2595411226902C56A664EBCDC4C8AFE51C3106A238B1FF5A3A6EDCB89E6253DC52401AEB5A3BA90085D9F69665E317ABBA458319CACFE27C6F2C4896E7CEEFF56156572E9E0EE947D967C0C30CFCADB3315531BA52C6A28CAC86EAAC15AB55AB4C58198BEF03E6F67258CD87C51F03C0D499D00654870CA4B24936B4993AC3402B713367F0C835B052D6BFA1675C7B45068AF7A14CB6364B502FB4281F1F4E5BFDB21A03C897AA27D32C2260BEAD0A54336CB7ED18ED277EAF84B7B477BD7E85262AAAC2875701F62F2FD0070C7CADDDAC9B09537CC11C67ACE5546F750FBB91445FB8B7F06265E749BFE188CEFBD1EE026CA5E495B3568DBAB5572134FBE3C502626B7713EA09C053D788996EE8B358A06906C91C14658E35E7249E58E66F319536A2DCE02138D69DF8942FC31BF1C9A9CF344DFDD0FEE48288DD8CBEB21D48E6B777C2FEAE1C036673667C8ED7CB928067B40ACE1C55DC15CDC37C0ED53615EC0FE5ABA6FE0B5DC7DC0E78E6782BFD9AA9C993A2868D67FDDB615CA1DE031DEBFE5C93E550A81DA8B77E23CA712AFD4C04E66FADD1AD92FA4199C0338646C141124505A63DD9BA35F1FD842F9A1A23C694722CAFF35C01257B2159631EF8ADC7F62BBE300D9FA015BFD798450DD54590BD7865EE7D25483E8 + A0753F4C864A3FA76847A8D18210A4A12108BE4FB17994E947901638DC78A5B28973AD3B6171152556C69FF46119E796422822CBEAC5F181F555F60274BE356100E420DF6138D6C8191D3E0FD62A7C2BEF8F37AD80B9615DEA35D40D85997C7704637F979DC62385B7AB371DAADACA65F405 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + cleartomark end + %APLT1End + %RBIEndFontSubset +/ArialMT cguidfix +/F1.1/ArialMT renmfont +[ /CIEBasedABC 4 dict dup begin +/WhitePoint [ 0.9505 1.0000 1.0891 ] def +/DecodeABC [ { 1.8008 exp } bind { 1.8008 exp } bind { 1.8008 exp } bind ] def +/MatrixABC [ 0.4295 0.2318 0.0204 0.3278 0.6722 0.1111 0.1933 0.0960 0.9578 ] def +/RangeLMN [ 0.0 0.9505 0.0 1.0000 0.0 1.0891 ] def +end ] /Cs1 exch/ColorSpace dr pop +[ /CIEBasedABC 4 dict dup begin +/WhitePoint [ 0.9505 1.0000 1.0891 ] def +/DecodeABC [ +{ 1.0 0.0 3 -1 roll 1 index 1 index le { exch pop} { pop } ifelse + 1 index 1 index ge { exch pop } { pop } ifelse < +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000001010101010101010101010101 +0101010101010101010101010101010101010101010101020202020202020202 +0202020202020202020202020202020202030303030303030303030303030303 +0303030303030304040404040404040404040404040404040404050505050505 +0505050505050505050506060606060606060606060606060607070707070707 +0707070707070708080808080808080808080808090909090909090909090909 +0a0a0a0a0a0a0a0a0a0a0a0b0b0b0b0b0b0b0b0b0b0b0c0c0c0c0c0c0c0c0c0c +0d0d0d0d0d0d0d0d0d0d0e0e0e0e0e0e0e0e0e0f0f0f0f0f0f0f0f0f10101010 +1010101010111111111111111112121212121212121313131313131313141414 +1414141414151515151515151616161616161616171717171717171818181818 +18181919191919191a1a1a1a1a1a1a1b1b1b1b1b1b1c1c1c1c1c1c1c1d1d1d1d +1d1d1e1e1e1e1e1e1f1f1f1f1f1f202020202020212121212121222222222223 +2323232323242424242425252525252526262626262727272727282828282829 +292929292a2a2a2a2a2b2b2b2b2b2c2c2c2c2c2d2d2d2d2d2e2e2e2e2e2f2f2f +2f2f303030303131313131323232323333333333343434343535353535363636 +36373737373838383839393939393a3a3a3a3b3b3b3b3c3c3c3c3d3d3d3d3e3e +3e3e3f3f3f3f4040404041414141424242424343434444444445454545464646 +4647474748484848494949494a4a4a4b4b4b4b4c4c4c4d4d4d4d4e4e4e4f4f4f +4f50505051515151525252535353535454545555555656565657575758585859 +59595a5a5a5a5b5b5b5c5c5c5d5d5d5e5e5e5f5f5f6060606061616162626263 +63636464646565656666666767676868686969696a6a6a6b6b6b6c6c6d6d6d6e +6e6e6f6f6f707070717171727273737374747475757576767677777878787979 +797a7a7b7b7b7c7c7c7d7d7e7e7e7f7f7f808081818182828283838484848585 +86868687878888888989898a8a8b8b8b8c8c8d8d8d8e8e8f8f90909091919292 +9293939494949595969697979798989999999a9a9b9b9c9c9c9d9d9e9e9f9f9f +a0a0a1a1a2a2a3a3a3a4a4a5a5a6a6a6a7a7a8a8a9a9aaaaabababacacadadae +aeafafb0b0b0b1b1b2b2b3b3b4b4b5b5b6b6b6b7b7b8b8b9b9bababbbbbcbcbd +bdbebebebfbfc0c0c1c1c2c2c3c3c4c4c5c5c6c6c7c7c8c8c9c9cacacbcbcccc +cdcdcececfcfd0d0d1d1d2d2d3d3d4d4d5d5d6d6d7d7d8d8d9d9dadadbdcdcdd +dddededfdfe0e0e1e1e2e2e3e3e4e4e5e6e6e7e7e8e8e9e9eaeaebebecededee +eeefeff0f0f1f1f2f3f3f4f4f5f5f6f6f7f8f8f9f9fafafbfcfcfdfdfefeffff +> dup length 1 sub 3 -1 roll mul dup dup floor cvi exch ceiling + cvi 3 index exch get 4 -1 roll 3 -1 roll get + dup 3 1 roll sub 3 -1 roll dup floor cvi sub mul add 255 div } bind + +{ 1.0 0.0 3 -1 roll 1 index 1 index le { exch pop} { pop } ifelse + 1 index 1 index ge { exch pop } { pop } ifelse < +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000001010101010101010101010101 +0101010101010101010101010101010101010101010101020202020202020202 +0202020202020202020202020202020202030303030303030303030303030303 +0303030303030304040404040404040404040404040404040404050505050505 +0505050505050505050506060606060606060606060606060607070707070707 +0707070707070708080808080808080808080808090909090909090909090909 +0a0a0a0a0a0a0a0a0a0a0a0b0b0b0b0b0b0b0b0b0b0b0c0c0c0c0c0c0c0c0c0c +0d0d0d0d0d0d0d0d0d0d0e0e0e0e0e0e0e0e0e0f0f0f0f0f0f0f0f0f10101010 +1010101010111111111111111112121212121212121313131313131313141414 +1414141414151515151515151616161616161616171717171717171818181818 +18181919191919191a1a1a1a1a1a1a1b1b1b1b1b1b1c1c1c1c1c1c1c1d1d1d1d +1d1d1e1e1e1e1e1e1f1f1f1f1f1f202020202020212121212121222222222223 +2323232323242424242425252525252526262626262727272727282828282829 +292929292a2a2a2a2a2b2b2b2b2b2c2c2c2c2c2d2d2d2d2d2e2e2e2e2e2f2f2f +2f2f303030303131313131323232323333333333343434343535353535363636 +36373737373838383839393939393a3a3a3a3b3b3b3b3c3c3c3c3d3d3d3d3e3e +3e3e3f3f3f3f4040404041414141424242424343434444444445454545464646 +4647474748484848494949494a4a4a4b4b4b4b4c4c4c4d4d4d4d4e4e4e4f4f4f +4f50505051515151525252535353535454545555555656565657575758585859 +59595a5a5a5a5b5b5b5c5c5c5d5d5d5e5e5e5f5f5f6060606061616162626263 +63636464646565656666666767676868686969696a6a6a6b6b6b6c6c6d6d6d6e +6e6e6f6f6f707070717171727273737374747475757576767677777878787979 +797a7a7b7b7b7c7c7c7d7d7e7e7e7f7f7f808081818182828283838484848585 +86868687878888888989898a8a8b8b8b8c8c8d8d8d8e8e8f8f90909091919292 +9293939494949595969697979798989999999a9a9b9b9c9c9c9d9d9e9e9f9f9f +a0a0a1a1a2a2a3a3a3a4a4a5a5a6a6a6a7a7a8a8a9a9aaaaabababacacadadae +aeafafb0b0b0b1b1b2b2b3b3b4b4b5b5b6b6b6b7b7b8b8b9b9bababbbbbcbcbd +bdbebebebfbfc0c0c1c1c2c2c3c3c4c4c5c5c6c6c7c7c8c8c9c9cacacbcbcccc +cdcdcececfcfd0d0d1d1d2d2d3d3d4d4d5d5d6d6d7d7d8d8d9d9dadadbdcdcdd +dddededfdfe0e0e1e1e2e2e3e3e4e4e5e6e6e7e7e8e8e9e9eaeaebebecededee +eeefeff0f0f1f1f2f3f3f4f4f5f5f6f6f7f8f8f9f9fafafbfcfcfdfdfefeffff +> dup length 1 sub 3 -1 roll mul dup dup floor cvi exch ceiling + cvi 3 index exch get 4 -1 roll 3 -1 roll get + dup 3 1 roll sub 3 -1 roll dup floor cvi sub mul add 255 div } bind + +{ 1.0 0.0 3 -1 roll 1 index 1 index le { exch pop} { pop } ifelse + 1 index 1 index ge { exch pop } { pop } ifelse < +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000001010101010101010101010101 +0101010101010101010101010101010101010101010101020202020202020202 +0202020202020202020202020202020202030303030303030303030303030303 +0303030303030304040404040404040404040404040404040404050505050505 +0505050505050505050506060606060606060606060606060607070707070707 +0707070707070708080808080808080808080808090909090909090909090909 +0a0a0a0a0a0a0a0a0a0a0a0b0b0b0b0b0b0b0b0b0b0b0c0c0c0c0c0c0c0c0c0c +0d0d0d0d0d0d0d0d0d0d0e0e0e0e0e0e0e0e0e0f0f0f0f0f0f0f0f0f10101010 +1010101010111111111111111112121212121212121313131313131313141414 +1414141414151515151515151616161616161616171717171717171818181818 +18181919191919191a1a1a1a1a1a1a1b1b1b1b1b1b1c1c1c1c1c1c1c1d1d1d1d +1d1d1e1e1e1e1e1e1f1f1f1f1f1f202020202020212121212121222222222223 +2323232323242424242425252525252526262626262727272727282828282829 +292929292a2a2a2a2a2b2b2b2b2b2c2c2c2c2c2d2d2d2d2d2e2e2e2e2e2f2f2f +2f2f303030303131313131323232323333333333343434343535353535363636 +36373737373838383839393939393a3a3a3a3b3b3b3b3c3c3c3c3d3d3d3d3e3e +3e3e3f3f3f3f4040404041414141424242424343434444444445454545464646 +4647474748484848494949494a4a4a4b4b4b4b4c4c4c4d4d4d4d4e4e4e4f4f4f +4f50505051515151525252535353535454545555555656565657575758585859 +59595a5a5a5a5b5b5b5c5c5c5d5d5d5e5e5e5f5f5f6060606061616162626263 +63636464646565656666666767676868686969696a6a6a6b6b6b6c6c6d6d6d6e +6e6e6f6f6f707070717171727273737374747475757576767677777878787979 +797a7a7b7b7b7c7c7c7d7d7e7e7e7f7f7f808081818182828283838484848585 +86868687878888888989898a8a8b8b8b8c8c8d8d8d8e8e8f8f90909091919292 +9293939494949595969697979798989999999a9a9b9b9c9c9c9d9d9e9e9f9f9f +a0a0a1a1a2a2a3a3a3a4a4a5a5a6a6a6a7a7a8a8a9a9aaaaabababacacadadae +aeafafb0b0b0b1b1b2b2b3b3b4b4b5b5b6b6b6b7b7b8b8b9b9bababbbbbcbcbd +bdbebebebfbfc0c0c1c1c2c2c3c3c4c4c5c5c6c6c7c7c8c8c9c9cacacbcbcccc +cdcdcececfcfd0d0d1d1d2d2d3d3d4d4d5d5d6d6d7d7d8d8d9d9dadadbdcdcdd +dddededfdfe0e0e1e1e2e2e3e3e4e4e5e6e6e7e7e8e8e9e9eaeaebebecededee +eeefeff0f0f1f1f2f3f3f4f4f5f5f6f6f7f8f8f9f9fafafbfcfcfdfdfefeffff +> dup length 1 sub 3 -1 roll mul dup dup floor cvi exch ceiling + cvi 3 index exch get 4 -1 roll 3 -1 roll get + dup 3 1 roll sub 3 -1 roll dup floor cvi sub mul add 255 div } bind +] def +/MatrixABC [ 0.4124 0.2126 0.0193 0.3576 0.7151 0.1192 0.1805 0.0722 0.9508 ] def +/RangeLMN [ 0.0 0.9505 0.0 1.0000 0.0 1.0891 ] def +end ] /Cs2 exch/ColorSpace dr pop +%%EndPageSetup +/Cs1 SC +1 1 1 sc +q +0 0 600 480 rc +0 480 m +600 480 l +600 0 l +0 0 l +h +0 480 m +f +0.60000002 i +/Cs2 SC +0 0 0 sc +1 0 0 -1 0 480 cm +80.198997 444 m +89.198997 444 l +556.69897 444 l +547.69897 444 l +S +0 i +1 0 0 -1 65.390625 39.601562 cm +/F1.1[ 12 0 0 -12 0 0]sf +-3.5 3.8037109 m +(!)s +0.60000002 i +1 0 0 -1 0 480 cm +80.198997 379 m +89.198997 379 l +556.69897 379 l +547.69897 379 l +S +0 i +1 0 0 -1 59.042969 104.60156 cm +-10.5 3.8037109 m +("!!)[ 6.673828 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +80.198997 314 m +89.198997 314 l +556.69897 314 l +547.69897 314 l +S +0 i +1 0 0 -1 59.042969 169.60156 cm +-10.5 3.8037109 m +(#!!)[ 6.673828 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +80.198997 249 m +89.198997 249 l +556.69897 249 l +547.69897 249 l +S +0 i +1 0 0 -1 59.042969 234.60156 cm +-10.5 3.8037109 m +($!!)[ 6.673828 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +80.198997 184.10201 m +89.198997 184.10201 l +556.69897 184.10201 l +547.69897 184.10201 l +S +0 i +1 0 0 -1 59.042969 299.5 cm +-10.5 3.8037109 m +(%!!)[ 6.673828 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +80.198997 119.102 m +89.198997 119.102 l +556.69897 119.102 l +547.69897 119.102 l +S +0 i +1 0 0 -1 55.367188 364.5 cm +-13.5 3.8037109 m +(&!!!)[ 6.673828 6.673828 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +80.198997 54.102001 m +89.198997 54.102001 l +556.69897 54.102001 l +547.69897 54.102001 l +S +0 i +1 0 0 -1 55.367188 429.5 cm +-13.5 3.8037109 m +(&"!!)[ 6.673828 6.673828 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +110 444 m +110 435 l +110 54.102001 l +110 63.102001 l +S +0 i +1 0 0 -1 98.820312 21.601562 cm +-3.5 3.8037109 m +(&)s +1 0 0 -1 112.32031 21.601562 cm +-10 3.8037109 m +('\(\))[ 6.000000 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +169.5 444 m +169.5 435 l +169.5 54.102001 l +169.5 63.102001 l +S +0 i +1 0 0 -1 155.32031 21.601562 cm +-3.5 3.8037109 m +(")s +1 0 0 -1 171.82031 21.601562 cm +-13 3.8037109 m +('\(\)*)[ 6.000000 6.673828 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +229.10201 444 m +229.10201 435 l +229.10201 54.102001 l +229.10201 63.102001 l +S +0 i +1 0 0 -1 214.92188 21.601562 cm +-3.5 3.8037109 m +(#)s +1 0 0 -1 231.42188 21.601562 cm +-13 3.8037109 m +('\(\)*)[ 6.000000 6.673828 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +288.69901 444 m +288.69901 435 l +288.69901 54.102001 l +288.69901 63.102001 l +S +0 i +1 0 0 -1 274.51953 21.601562 cm +-3.5 3.8037109 m +(%)s +1 0 0 -1 291.01953 21.601562 cm +-13 3.8037109 m +('\(\)*)[ 6.000000 6.673828 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +348.19901 444 m +348.19901 435 l +348.19901 54.102001 l +348.19901 63.102001 l +S +0 i +1 0 0 -1 334.18359 21.601562 cm +-7 3.8037109 m +(&$)[ 6.673828 0.000000 ] xS +1 0 0 -1 354.18359 21.601562 cm +-13 3.8037109 m +('\(\)*)[ 6.000000 6.673828 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +407.80099 444 m +407.80099 435 l +407.80099 54.102001 l +407.80099 63.102001 l +S +0 i +1 0 0 -1 393.78516 21.601562 cm +-7 3.8037109 m +(+")[ 6.673828 0.000000 ] xS +1 0 0 -1 413.78516 21.601562 cm +-13 3.8037109 m +('\(\)*)[ 6.000000 6.673828 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +467.39801 444 m +467.39801 435 l +467.39801 54.102001 l +467.39801 63.102001 l +S +0 i +1 0 0 -1 467.88672 21.601562 cm +-10.5 3.8037109 m +(,\(\))[ 6.673828 6.673828 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +526.89801 444 m +526.89801 435 l +526.89801 54.102001 l +526.89801 63.102001 l +S +0 i +1 0 0 -1 512.375 21.601562 cm +-28.5 3.8037109 m +(,\(\)-./01/2)[ 6.673828 6.673828 6.673828 3.996094 6.000000 6.673828 3.996094 6.673828 6.673828 0.000000 ] xS +1 0 0 -1 554.375 21.601562 cm +-13.5 3.8037109 m +(31245)[ 6.673828 6.673828 2.666016 6.000000 0.000000 ] xS +0.60000002 i +1 0 0 -1 0 480 cm +80.198997 54.102001 m +556.69897 54.102001 l +556.69897 444 l +80.198997 444 l +h +80.198997 54.102001 m +S +0 i +1 0 0 -1 39.800781 215.07031 cm +-23.5 3.8037109 m +(678/-8*5)[ 3.333984 2.666016 9.996094 6.673828 3.996094 9.996094 6.000000 0.000000 ] xS +1 0 0 -1 287.38281 456.5 cm +-14 3.8037109 m +(697'/)[ 3.333984 8.666016 2.666016 6.000000 0.000000 ] xS +1 0 0 -1 331.38281 456.5 cm +-30 3.8037109 m +(:/1';8<0.)[ 6.673828 6.673828 6.673828 6.000000 6.673828 9.996094 6.673828 3.996094 0.000000 ] xS +0.87843102 1 1 sc +CM +95.101997 419.89801 m +125 419.89801 l +125 36 l +95.101997 36 l +h +95.101997 419.89801 m +f +2 J +0.60000002 i +0 0 0 sc +1 0 0 -1 0 480 cm +95.101997 60.199001 m +124.899 60.199001 l +124.899 444 l +95.101997 444 l +h +95.101997 60.199001 m +S +0 i +0.87843102 1 1 sc +CM +154.69901 240.10201 m +184.5 240.10201 l +184.5 36 l +154.69901 36 l +h +154.69901 240.10201 m +f +0.60000002 i +0 0 0 sc +1 0 0 -1 0 480 cm +154.69901 240 m +184.39799 240 l +184.39799 444 l +154.69901 444 l +h +154.69901 240 m +S +0 i +0.87843102 1 1 sc +CM +214.19901 141.39799 m +244.101 141.39799 l +244.101 36 l +214.19901 36 l +h +214.19901 141.39799 m +f +0.60000002 i +0 0 0 sc +1 0 0 -1 0 480 cm +214.19901 338.69901 m +244 338.69901 l +244 444 l +214.19901 444 l +h +214.19901 338.69901 m +S +0 i +0.87843102 1 1 sc +CM +273.80099 88.101997 m +303.69901 88.101997 l +303.69901 36 l +273.80099 36 l +h +273.80099 88.101997 m +f +0.60000002 i +0 0 0 sc +1 0 0 -1 0 480 cm +273.80099 392 m +303.60199 392 l +303.60199 444 l +273.80099 444 l +h +273.80099 392 m +S +0 i +0.87843102 1 1 sc +CM +333.30099 63.897999 m +363.19901 63.897999 l +363.19901 36 l +333.30099 36 l +h +333.30099 63.897999 m +f +0.60000002 i +0 0 0 sc +1 0 0 -1 0 480 cm +333.30099 416.19901 m +363.10199 416.19901 l +363.10199 444 l +333.30099 444 l +h +333.30099 416.19901 m +S +0 i +0.87843102 1 1 sc +CM +392.89801 50.199001 m +422.79999 50.199001 l +422.79999 36 l +392.89801 36 l +h +392.89801 50.199001 m +f +0.60000002 i +0 0 0 sc +1 0 0 -1 0 480 cm +392.89801 429.89801 m +422.69901 429.89801 l +422.69901 444 l +392.89801 444 l +h +392.89801 429.89801 m +S +0 i +0.87843102 1 1 sc +CM +452.5 77.398003 m +482.30099 77.398003 l +482.30099 36 l +452.5 36 l +h +452.5 77.398003 m +f +0.60000002 i +0 0 0 sc +1 0 0 -1 0 480 cm +452.5 402.69901 m +482.19901 402.69901 l +482.19901 444 l +452.5 444 l +h +452.5 402.69901 m +S +0 i +0.87843102 1 1 sc +CM +512 38.102001 m +541.89801 38.102001 l +541.89801 36 l +512 36 l +h +512 38.102001 m +f +0.60000002 i +0 0 0 sc +1 0 0 -1 0 480 cm +512 442 m +541.80103 442 l +541.80103 444 l +512 444 l +h +512 442 m +S +1 J +80.198997 54.102001 m +556.69897 54.102001 l +556.69897 444 l +80.198997 444 l +h +80.198997 54.102001 m +S +ep +end +%%Trailer +%%EOF diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/twice.pdf Binary file Slide/image/twice.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/twice.png Binary file Slide/image/twice.png has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/twice.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/twice.svg Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,189 @@ + + + +Gnuplot +Produced by GNUPLOT 5.2 patchlevel 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + 200 + + + + + 400 + + + + + 600 + + + + + 800 + + + + + 1000 + + + + + 1200 + + + + + 1 cpu + + + + + 2 cpus + + + + + 4 cpus + + + + + 8 cpus + + + + + 16 cpus + + + + + 32 cpus + + + + + gpu + + + + + gpu(kernel only) + + + + + + + + + time(ms) + + + + + twice benchmark + + + gnuplot_plot_1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/twice.xbb --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/twice.xbb Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,8 @@ +%%Title: fig/twice.pdf +%%Creator: extractbb 20170318 +%%BoundingBox: 0 0 600 480 +%%HiResBoundingBox: 0.000000 0.000000 600.000000 480.000000 +%%PDFVersion: 1.5 +%%Pages: 1 +%%CreationDate: Tue Feb 6 04:08:41 2018 + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/twice_640.pdf Binary file Slide/image/twice_640.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/verification.graffle Binary file Slide/image/verification.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/verification.pdf Binary file Slide/image/verification.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/vsgo.pdf Binary file Slide/image/vsgo.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/vsgo.png Binary file Slide/image/vsgo.png has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/vsgo.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/vsgo.svg Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,174 @@ + + + +Gnuplot +Produced by GNUPLOT 5.2 patchlevel 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + 200 + + + + + 400 + + + + + 600 + + + + + 800 + + + + + 1000 + + + + + 1200 + + + + + 1 + + + + + 2 + + + + + 4 + + + + + 8 + + + + + 16 + + + + + 32 + + + + + + + + + time(ms) + + + + + CPUs + + + + + twice + + + "gears_poweredge" + + + "gears_poweredge" + + + + + + + + + + + + + "go_poweredge" + + + "go_poweredge" + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/vsgo.xbb --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/vsgo.xbb Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,8 @@ +%%Title: fig/vsgo.pdf +%%Creator: extractbb 20170318 +%%BoundingBox: 0 0 600 480 +%%HiResBoundingBox: 0.000000 0.000000 600.000000 480.000000 +%%PDFVersion: 1.5 +%%Pages: 1 +%%CreationDate: Wed Feb 28 23:36:32 2018 + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/vsopenmp.pdf Binary file Slide/image/vsopenmp.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/vsopenmp.png Binary file Slide/image/vsopenmp.png has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/vsopenmp.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/vsopenmp.svg Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,174 @@ + + + +Gnuplot +Produced by GNUPLOT 5.2 patchlevel 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + 200 + + + + + 400 + + + + + 600 + + + + + 800 + + + + + 1000 + + + + + 1200 + + + + + 1 + + + + + 2 + + + + + 4 + + + + + 8 + + + + + 16 + + + + + 32 + + + + + + + + + time(ms) + + + + + CPUs + + + + + twice + + + "gears_poweredge" + + + "gears_poweredge" + + + + + + + + + + + + + "openmp_poweredge" + + + "openmp_poweredge" + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/vsopenmp.xbb --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/vsopenmp.xbb Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,8 @@ +%%Title: fig/vsopenmp.pdf +%%Creator: extractbb 20170318 +%%BoundingBox: 0 0 600 480 +%%HiResBoundingBox: 0.000000 0.000000 600.000000 480.000000 +%%PDFVersion: 1.5 +%%Pages: 1 +%%CreationDate: Wed Feb 28 23:36:32 2018 + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/worker.graffle Binary file Slide/image/worker.graffle has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/worker.pdf Binary file Slide/image/worker.pdf has changed diff -r 7f5c0330e711 -r c456e4d68e1a Slide/image/worker.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slide/image/worker.svg Sun May 20 16:59:54 2018 +0900 @@ -0,0 +1,409 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 7f5c0330e711 -r c456e4d68e1a Slide/prosym.html --- a/Slide/prosym.html Sun May 20 14:13:00 2018 +0900 +++ b/Slide/prosym.html Sun May 20 16:59:54 2018 +0900 @@ -86,7 +86,7 @@ @@ -286,7 +286,25 @@

Gears OS の評価

@@ -305,6 +323,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ProcessorTime(ms)
1 CPU1181.215
2 CPUs627.914
4 CPUs324.059
8 CPUs159.932
16 CPUs85.518
32 CPUs43.496
GPU127.018
GPU(kernel only)6.018
+
@@ -323,17 +382,12 @@

Go 言語との比較

- - -
-
- -

Go 言語との比較

- +
+ message +
diff -r 7f5c0330e711 -r c456e4d68e1a Slide/prosym.md --- a/Slide/prosym.md Sun May 20 14:13:00 2018 +0900 +++ b/Slide/prosym.md Sun May 20 16:59:54 2018 +0900 @@ -142,8 +142,15 @@ # Gears OS の評価 - CPU、GPU環境で Gears OS の測定を行う。 - 使用した環境は次のようになる。 - -% 表2つ持ってくる + - CPU 環境 + - Model : Dell PowerEdgeR630 + - Memory : 768GB + - CPU : 2 × 18-Core Intel Xeon 2.30GHz + - CPU 環境 + - GPU : GeForce GTX 1070 + - Cores : 1920 + - ClockSpeed : 1683MHZ + - Memory Size : 8GB GDDR5 # Twice - 評価には与えられた整数配列の全ての要素を2倍にする例題である Twice を使う。 @@ -151,7 +158,47 @@ - 要素数2^27のデータに対する Twice の実行結果を示す。 - CPU では2^27のデータを64個のデータに分割した。 - kernel only は 通信速度を除いた速度である。 -% グラフ2つ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ProcessorTime(ms)
1 CPU1181.215
2 CPUs627.914
4 CPUs324.059
8 CPUs159.932
16 CPUs85.518
32 CPUs43.496
GPU127.018
GPU(kernel only)6.018
# 評価の考察 - コア数が上がるごとに、処理速度が上がっている。 @@ -161,12 +208,12 @@ % なんでGo言語? # Go 言語との比較 - Go 言語でも Twice を用いた検証を行い、Gears OS との速度比較を行なった。 - -% グラフ1つ - -# Go 言語との比較 - 1CPU と 32CPU では約4.33倍の速度向上が見られた。 - CPU数による速度向上は、Gears OS の方が上だが、処理速度では Go言語の方が速い結果となった。 +
+ message +
+ # スライドの流れ - CbC diff -r 7f5c0330e711 -r c456e4d68e1a Slide/prosym.pdf.html --- a/Slide/prosym.pdf.html Sun May 20 14:13:00 2018 +0900 +++ b/Slide/prosym.pdf.html Sun May 20 16:59:54 2018 +0900 @@ -70,7 +70,7 @@ @@ -270,7 +270,25 @@

Gears OS の評価

@@ -289,6 +307,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ProcessorTime(ms)
1 CPU1181.215
2 CPUs627.914
4 CPUs324.059
8 CPUs159.932
16 CPUs85.518
32 CPUs43.496
GPU127.018
GPU(kernel only)6.018
+
@@ -307,17 +366,12 @@

Go 言語との比較

- - -
-
- -

Go 言語との比較

- +
+ message +
diff -r 7f5c0330e711 -r c456e4d68e1a sigos.pdf Binary file sigos.pdf has changed