changeset 3:f281e372d8f2

update
author oc
date Wed, 29 Oct 2014 11:12:27 +0900
parents b59646b8471a
children f8cb6edde76f
files pic/MultiNetworkTree.eps pic/TreeVNC.eps report.aux report.dvi report.log report.pdf report.tex
diffstat 7 files changed, 2375 insertions(+), 113 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pic/MultiNetworkTree.eps	Wed Oct 29 11:12:27 2014 +0900
@@ -0,0 +1,1217 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%HiResBoundingBox: 0.000000 0.000000 462.000000 302.000000
+%APL_DSC_Encoding: UTF8
+%APLProducer: (Version 10.10 (Build 14A389) Quartz PS Context)
+%%Title: (Unknown)
+%%Creator: (Unknown)
+%%CreationDate: (Unknown)
+%%For: (Unknown)
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 2
+%%Pages: 1
+%%BoundingBox: 0 0 462 302
+%%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
+/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
+{ld}repeat pop
+/SC{	
+    /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		
+/cm {cmmtx astore CM concat}bd	
+/W{clip newpath}bd
+/W*{eoclip newpath}bd
+statusdict begin product end dup (HP) anchorsearch{
+    pop pop pop	
+    true
+}{
+    pop	
+   (hp) anchorsearch{
+	pop pop true
+    }{
+	pop false
+    }ifelse
+}ifelse
+{	
+    { 
+	{ 
+	    pop pop 
+	    (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		
+/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	
+}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	
+dict begin
+{def} repeat
+pop		
+/ImageType 1 def
+/ImageMatrix[Width 0 0 Height neg 0 Height]def
+currentdict dup/ImageMask known{ImageMask}{F}ifelse exch
+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	
+}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{ 
+    exch t_array t_i get add exch moveto
+    /t_i t_i 1 add store
+}bd
+/y_proc{ 
+    t_array t_i get add moveto
+    /t_i t_i 1 add store
+}bd
+/xy_proc{
+        
+	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		
+/cp_proc/x_proc ld 	
+/base_charpath		
+{
+    /t_array xs
+    /t_i 0 def
+    { 
+	t_c 0 3 -1 roll put
+        currentpoint
+	t_c cply sop
+        cp_proc
+    }forall
+    /t_array 0 def
+}bd
+/sop/stroke ld		
+/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{ 
+findfont dup length dict copy dup
+/Encoding 4 -1 roll put 
+definefont pop
+}bd
+/renmfont{ 
+findfont dup length dict copy definefont pop
+}bd
+L3? dup dup{save exch}if
+/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 
+{
+    begin
+	/nRange Range length 2 idiv store
+	/mulRange   
+		    
+	[ 
+	    0 1 nRange 1 sub
+	    { 
+		    2 mul/nDim2 xd		
+		    Range nDim2 get		
+		    Range nDim2 1 add get	
+		    1 index sub			
+						
+		    255 div			
+		    exch			
+	    }for
+	]store
+    end
+}bd
+/FunEval 
+{
+    begin
+	
+	nRange mul /val xd	
+				
+	0 1 nRange 1 sub
+	{
+	    dup 2 mul/nDim2 xd 
+	    val	
+	    add DataSource exch get 
+	    mulRange nDim2 get mul 	
+	    mulRange nDim2 1 add get 
+	    add 
+	}for	
+    end
+}bd
+/max 
+{
+	2 copy lt
+	{exch pop}{pop}ifelse
+}bd
+/sh2
+{	
+	/Coords load aload pop 	
+	3 index 3 index translate	
+					
+	3 -1 roll sub	
+	3 1 roll exch 	
+	sub				
+	2 copy
+	dup mul exch dup mul add sqrt	
+	dup
+	scale  
+	atan	
+	
+	rotate		
+	
+	/Function load setupFunEval	
+	
+	
+	clippath {pathbbox}stopped {0 0 0 0}if newpath 	
+	/ymax xs
+	/xmax xs
+	/ymin xs
+	/xmin xs
+	currentdict/Extend known
+	{
+		/Extend load 0 get
+		{	
+			0/Function load FunEval sc	
+			xmin ymin xmin abs ymax ymin sub rectfill
+		}if
+	}if
+	
+	/Nsteps/Function load/Size get 0 get 1 sub store
+	/dx 1 Nsteps div store
+	gsave
+		/di ymax ymin sub store
+		/Function load
+		
+		0 1 Nsteps
+		{
+			1 index FunEval sc
+			0 ymin dx di rectfill
+			dx 0 translate
+		}for
+		pop	
+	grestore	
+	currentdict/Extend known
+	{
+		/Extend load 1 get
+		{	
+			Nsteps/Function load FunEval sc	
+			1 ymin xmax 1 sub abs ymax ymin sub rectfill
+		}if
+	}if
+}bd
+/shp	
+{	
+	4 copy
+	
+	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
+	
+	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
+{	
+	
+	xmin dup mul ymin dup mul add sqrt		
+	xmax dup mul ymin dup mul add sqrt		
+	xmin dup mul ymax dup mul add sqrt		
+	xmax dup mul ymax dup mul add sqrt		
+	max max max								
+}bd
+/sh3
+{	
+	/Coords load aload pop 	
+	5 index 5 index translate	
+	3 -1 roll 6 -1 roll sub		
+	3 -1 roll 5 -1 roll sub		
+	2 copy dup mul exch dup mul add sqrt
+	/dx xs						
+	2 copy 0 ne exch 0 ne or
+	{
+		
+		exch atan rotate	
+	}{
+		pop pop
+	}ifelse
+	
+	/r2 xs
+	/r1 xs
+	/Function load 
+	dup/Size get 0 get 1 sub	
+	/Nsteps xs		
+	setupFunEval		
+	
+	
+	
+	
+	
+	dx r2 add r1 lt{
+		
+		0 
+	}{
+		dx r1 add r2 le
+		{ 
+			1
+		}{ 
+			r1 r2 eq
+			{	
+				2
+			}{ 
+				3
+			}ifelse		
+		}ifelse
+	}ifelse
+	/sh3tp xs		
+	clippath {pathbbox}stopped {0 0 0 0}if 
+	newpath 	
+	/ymax xs
+	/xmax xs
+	/ymin xs
+	/xmin xs
+	
+	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	
+		{	
+			0/Function load FunEval sc	
+			
+			
+			
+			
+			{ 
+				{	
+					dx 0 r1 360 0 arcn
+					xmin ymin moveto
+					xmax ymin lineto
+					xmax ymax lineto
+					xmin ymax lineto
+					xmin ymin lineto
+					eofill		
+				}
+				{	
+					r1 0 gt{0 0 r1 0 360 arc fill}if
+				}
+				{	
+					
+					
+				
+					
+					0 r1 xmin abs r1 add neg r1 shp
+				}
+				{	
+					
+				
+					r2 r1 gt{	
+						
+						0 r1
+						r1 neg r2 r1 sub div dx mul	
+						0	
+						shp	
+					}{	
+						
+						
+						
+						0 r1 calcmaxs	
+						dup
+						
+						r2 add dx mul dx r1 r2 sub sub div
+						neg				
+						exch 1 index	
+						abs exch sub
+						shp
+					}ifelse
+				} 
+			}sh3tp get exec	
+		}if
+	}if
+	
+	/d0 0 store
+	/r0 r1 store
+	/di dx Nsteps div store
+	/ri r2 r1 sub Nsteps div store 
+	/Function load 
+	0 1 Nsteps
+	{	
+		1 index FunEval sc
+		d0 di add r0 ri add d0 r0 shp
+		{
+		
+		d0 0 r0 a1 a0 arc
+		d0 di add 0 r0 ri add a0 a1 arcn
+		fill
+		
+		
+		d0 0 r0 a0 a1 arc
+		d0 di add 0 r0 ri add a1 a0 arcn
+		fill
+		}pop
+		
+		
+		/d0 d0 di add store
+		/r0 r0 ri add store
+	}for
+	pop	
+	
+	currentdict/Extend known
+	{
+		/Extend load 1 get r2 0 gt and	
+		{	
+			Nsteps/Function load FunEval sc	
+			
+			
+			
+			
+			{ 
+				{
+					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		
+				} 
+				{	
+					
+					
+					xmax abs r1 add r1 dx r1 shp
+				}	
+				{	
+			
+					r2 r1 gt{
+						
+						
+						
+						calcmaxs dup	
+						
+						r1 add dx mul dx r2 r1 sub sub div	
+						exch 1 index	
+						exch sub
+						dx r2
+						shp
+					}{	
+						
+						r1 neg r2 r1 sub div dx mul	
+						0		
+						dx 		
+						r2		
+						shp
+					}ifelse
+				}
+			}			
+			sh3tp get exec	
+		}if
+	}if
+}bd
+/sh		
+{	
+	begin
+		/ShadingType load dup dup 2 eq exch 3 eq or
+		{	
+			gsave
+				newpath
+				/ColorSpace load scs
+				currentdict/BBox known
+				{
+					/BBox load aload pop	
+					2 index sub				
+					3 index					
+					3 -1 roll exch sub 
+					exch rectclip
+				}if
+				2 eq
+				{sh2}{sh3}ifelse
+			grestore
+		}{
+			
+			pop 
+			(DEBUG: shading type unimplemented\n)print flush
+		}ifelse
+	end
+}bd
+{restore}if not dup{save exch}if
+	L3?{	
+		/sh/shfill ld
+		/csq/clipsave ld
+		/csQ/cliprestore ld
+	}if
+{restore}if
+end
+setpacking
+%%EndFile
+%%EndProlog
+%%BeginSetup
+%%EndSetup
+%%Page: 1 1
+%%PageBoundingBox: 0 0 462 302
+%%BeginPageSetup
+cg_md begin
+bp
+sdmtx
+%RBIBeginFontSubset: Helvetica
+%!FontType1-1.0: Helvetica 1.0000.0.0000
+
14 dict begin/FontName /Helvetica def
+
/PaintType 0 def
+
/Encoding 256 array 0 1 255{1 index exch/.notdef put}for
+
dup 33 /R put
+
dup 34 /o put
+
dup 35 /t put
+
dup 36 /N put
+
dup 37 /d put
+
dup 38 /e put
+
dup 39 /one put
+
dup 40 /two put
+
dup 41 /three put
+
dup 42 /four put
+
dup 43 /five 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 -1947 1 index div -985 2 index div 2961 3 index div 2297 5 -1 roll div]cvx def
+
/sfnts [<
+
74727565000900000000000063767420000000000000009C0000036C6670676D000000000000040800000A1D676C79660000000000000E2800000ADC6865616400000000000019040000003668686561000000000000193C00000024686D74780000000000001960000000346C6F636100000000000019940000001C6D61787000000000000019B0000000207072657000000000000019D0000003CF05C0001005BD00280580001A042F001F0000FFD90000FFDA0000FFD9FE55FFE605C70010FE6DFFF1033B000000B9000000B902FE3F3C00C0008D009B00AF000600A800C00028005E009800C9016A00B9015C00B400D6011E002E0080000400B8004C00CC01FFFFD1006600A400AF007400C2009500B1000C0028006D0015004C008E0125FF7A000C0040004C00620084FFA200240038008600BD0039005E008E00EDFFA9FFB300400052005500AA00AB00C200CB012302B10413FFAEFFE4000800510074008400AA00D1FF4CFFAF0012002C004200500051008400BE012503DAFF680018003B0098009C009F00A100C100EC018201B4FF68FF76FFD0FFE100020018001C00530053007D01B401E103AF0486FF9CFFEAFFFE001F0028002A00520060009300A300AA00AF00AF00C001000145016B0174019301950240028202B404850517FEFD00060029004700470048006F008800B400B900C400F200F901EF02180310037403C5FF35FFF3000B004B004C0052005500650076007600870087008E00AB00BB0106013001430150017D0194019501D3022A025502580277027802E6034E035C037903D3047304B2058C0598060BFEF5FFBBFFC7FFD50017001D005B0072007E009C00C200D000F400FA01030106011C0125013B0142015E015E0180019B02B901A101B9025001C001D002AA01DF01E301EF01FB0205020C0215022B0274029302AB02C202CE03690395039903DF03F5043E050205A105E5062507DBFE62FE89FECEFF3BFFE1FFF800030008002100390042004E005F0061006F00700034007F008E00AD00AD00AF00BD00C400C500C900C900C900E3011C00ED00F800F901000112011A0132014D014D014E014F01660169019E01BA01BA01BE01E301EF01F602000200020902110217021C02530262026D028002D50280031B032A034A035A03AF03AF03C803D603FB03FB04050413041504470449008C046D049A049A04A604A804B204CF0539053E054E055605800589058C036305D105D6067E068E06B206EF06F00728074C076F078C00B400C900C000C10000000000000000000000000004012400AF0032006E0063014401620096014301A10161008A00740064018801EF01700028FF5D037E0347023000AA00BE007B0062009A007D0089035C00A1FFD803AA00D70093006C0000008000A70442001D0597001D00820030002A
+
002A002A002A002A40292A292827262524232221201F1E1D1C1B1A191817161514131211100D0C0B0A090807060504030201002C4523466020B02660B004262348482D2C452346236120B02661B004262348482D2C45234660B0206120B04660B004262348482D2C4523462361B0206020B02661B02061B004262348482D2C45234660B0406120B06660B004262348482D2C4523462361B0406020B02661B04061B004262348482D2C0110203C003C2D2C20452320B0CD442320B8015A51582320B08D44235920B0ED51582320B04D44235920B09051582320B00D44235921212D2C20204518684420B001602045B04676688A4560442D2C01B9400000000A2D2C00B9000040000B2D2C2045B00043617D6818B0004360442D2C45B01A234445B01923442D2C2045B00325456164B050515845441B2121592D2C20B0032552582359212D2C69B04061B0008B0C6423648BB8400062600C642364615C58B0036159B002602D2C45B0112BB0172344B0177AE5182D2C45B0112BB01723442D2C45B0112BB017458CB0172344B0177AE5182D2CB002254661658A46B040608B482D2CB0022546608A46B040618C482D2C4B53205C58B002855958B00185592D2C20B0032545B019236A4445B01A23444565234520B00325606A20B009234223688A6A606120B0005258B21A401A4523614459B0005058B219401945236144592D2CB9187E3B210B2D2CB92D412D410B2D2CB93B21187E0B2D2CB93B21E7830B2D2CB92D41D2C00B2D2CB9187EC4E00B2D2C4B525845441B2121592D2C0120B003252349B04060B0206320B000525823B002253823B002256538008A63381B212121212159012D2C456920B00943B0022660B00325B005254961B0805358B21940194523616844B21A401A4523606A44B209191A45652345604259B00943608A103A2D2C01B005251023208AF500B0016023EDEC2D2C01B005251023208AF500B0016123EDEC2D2C01B0062510F500EDEC2D2C20B001600110203C003C2D2C20B001610110203C003C2D2C764520B003254523616818236860442D2C7645B00325452361682318456860442D2C7645B0032545616823452361442D2C4569B014B0324B505821B0205961442DB8002B2C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB8002C2C2020456944B001602DB8002D2CB8002C2A212DB8002E2C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB8002F2C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB800302C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800312C2020456944B0016020
+
20457D691844B001602DB800322CB800312A2DB800332C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB800342C4B535845441B2121592DB800352C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB800362C2020456944B001602DB800372CB800362A212DB800382C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800392C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB8003A2C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB8003B2C2020456944B001602020457D691844B001602DB8003C2CB8003B2A2DB8003D2C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB8003E2C4B535845441B2121592DB8003F2C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB800402C2020456944B001602DB800412CB800402A212DB800422C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800432C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB800442C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800452C2020456944B001602020457D691844B001602DB800462CB800452A2DB800472C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB800482C4B535845441B2121592DB800492C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB8004A2C2020456944B001602DB8004B2CB8004A2A212DB8004C2C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB8004D2C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB8004E2C4B20B0032650585158
+
B080441BB04044591B21212045B0C05058B0C0441B2159592DB8004F2C2020456944B001602020457D691844B001602DB800502CB8004F2A2DB800512C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB800522C4B535845441B2121592DB800532C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB800542C2020456944B001602DB800552CB800542A212DB800562C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800572C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB800582C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800592C2020456944B001602020457D691844B001602DB8005A2CB800592A2DB8005B2C4B20B003265358B0401BB000598A8A20B0032653582321B0808A8A1B8A235920B0032653582321B800C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB8005C2C4B535845441B2121592D00000000020042000004D005BD000300070043B800532BB800082FB800042FB8000810B80000D0B800002FB8000410B80003DCB8000010B80007DCB8000310B80009DC00BA0007000000562BBA0002000500562B3031331121112711211142048EB8FCE205BDFA43B8044DFBB30000000100C4000002D5059200080023B10801B80133400C0404070C04079605000A47091076C418C4D5FD39003F3FF4CD313013353E013733112311C4C39A268EC003F68A1359A6FA6E03F60000000100400000041E059D002200A6404E3604460457056B1D6E1E7A1E84018702082A085A196B197C197C1CB519050022010F041C0E1921071C19040100051F0F0F22130A351305201F7521220C217F0738166F220E270F811F38222447231076C418D4EDF4ED10F5EDE4003F3CFD3C3FED1112392F1217390111123912393911391239005D31304379401C04190C2511260B120E2800091407280119040D100A280108150A2801002B2B1010012B2B2B2B81005D36123F01363736353426232207060723363736213212151407060F01060706072115214A85C1C0813452967DB9472604B70342750128F6E37946B5896238641A030EFC29B90112706F4B35536B7D938C4B85BB76D0FEF6A3AC7A47654C3631576AAA000000010031FFD9041A
+
059A003100C4401F490C532D6529632D7529752D069626014B082B0A182B140D03F93114350D20B8012340141135107F0D0D311B3524050735310D1896274411B8014A400F0A382E6F021F2920810327023347321076C418D4EDF4ED10F5EDEDF4ED003FED3FED12392FF4FDE610ED10ED111239011112393130437940362F301926000905261D2522260600032800040308300A28011C231F28001A251828010401072800092F0728001E211B280119261B2801002B2B2B2B012B2B2B103C2B2B2B2B818181005D015D0402353316171633323635342623220607351E013332373635342623220706072334373621321615140706071E01151400230116E5BC0C2846B78EACB5A11225131C26166541729865B4452605B2406E0115DBF0472C46717FFEF2F8270117C88B3F719878947601019F03022038906B7478427AA070C8C3B98452331D1FB180CDFEFE000000000200340000042F059C0002000D005C402209020A080D010202BE12060607020601050708030106070A02750B05EF030C070403B80117B501960D08AC0AB80158B3050F470E1076C418D4F5F43CFDE4003F3FF43CFD3C1139390111123911123939872E2B047D10C50F3130011109011121350133113315231102A5FE3501CEFD8C029098D3D301FB0289FD77FE05015EB0038EFC5F9DFEA200000000010042FFDC041C0580002000BB402B4812881F02390C461357136713043A080C0D07000C0A0F0E0E75121313120E0F201213070013170A17350AB80122401A0D7F0E0E1D123A0F04043520C71D0D1107381A6F0038202247211076C418D4EDF5EDC4003FEDED3FFD12392FE4F4ED1112390111123939123939872E2B7D10C5001239011112393931301843794028181F01090226031E00280001001F20051C0728010918072801011F042800061B04280008190A2801002B2B2B012B2B103C103C2B2B8181005D5D131617163332363534262322060727132115210336373633320415140221222427FD127D4054A09AB7805D852F9C6D02E8FD9F3D322D5069C50112FBFEEDAFFEF310016D9A3B1ECC7C96A44840090303AEFE72261321FEC3CBFECAC5CC00000002009C0000052A05BD0009000A007640143701380602070117012701470158020507010202B8019B4017120606070207080301020806080A030A0A010608020302B8019BB505041A0C0708B8019B400A0900190B0CA0217670182B2B4EF43C4DFD3C4E10F63C4DFD3C11123939392F003F3F3C3F3C12393904872E2B877DC53130005D015D13330111331123011123019CEB02E6BDDFFD0FBE023A05BDFB5A04A6FA4304A5FB5B05BD0000000200B40000057805BD0009002700944012070D49014805590158056905641478050816BB01300119001B011C40422321202660127112751403121E1F141C15
+
03211E161404261224251E0009091B071E0B02261C1B082025151F251603310F691B1A29082625270A192829D6219566182B2B4EF43C4DFD3C4E10F64DF4EDD4EDD4ED003F3C3C3FFD12392F3CFD3C3911173901111239391239395D1112392B3130015D013236353427262321110321321716151406071E011F011617161715232E012F012627262321112303478CA3723D66FE1AC702A8A86DCF6D6256570507030B122EF40A0C040C0764397AFE3BC7031C70929D391EFE0A02A1315EFD84A833237280C55429461421133C56F590311BFD8A00020038FFDA03ED05C2000B001D00774032370E470E570EA704A91B05250814020F1D1000081D1D07130A021D170B052E132E102911121A1F0B271A191E1F87217242182B2B4EF44DED4E10F63C4DFDE4E4003FED3F3FED3F1139113931304379401A181C090A000101180B2600091C0B260000190226000A1B0826012B2B012B2B818181005D1216333236353426232206150017161711331123350E0123220035341233F692A17DA1A67A88A9018A53303DADA23FAC6FB3FEFAEFDE015FE8D7C9CBC3D0CA0237341E4B021DFA3E956358012DFAEA015700030048FFDA041A0449001C00240025010C40799708991AA71F03050E020F0514150E120F1514400C401408291A014B0BB603C701C603C71BD808D909D61FD823E817E8230BC711C712025C080521240F9A161D243906070716211D1C070A1D160B2507971CA71CB71CD71C0425160F251C05190A0C07110E270F1D27051A27242E072719192627D421A65D182B2B4EF44DFDE44E10F64DEDD4FD391239391112393912392F5D003F3FED3FED12392F3CFD3C10ED1112393130437940460023040503050205010504061F26111012101310141004060C25221B24260020001D26011E1D09170726000B150E26010D0E231A2126011E0521260108180A26000D100A2600002B2B2B2B01103C2B2B103C2B2B2B2A2B2A8101715D00715D5D00161716171615211E013332373637330E01070607062322001110003301262726232206070102B4D638361210FCEF0590978D543014B1074F3152794152C8FEEA0118E2011F0B284AAD7CA805012304476B55516C4AA2A3C55D36473B912E501C100123010601020142FE26754682B38A01DC0000000003003BFFD90421044E000C0018001900904033980896109916A504A808A610A916B808C808D704E50EE9140C3A08061D18070C1D120B190719191502270F1A1B092715191A1BB80109B321725D182B2B4EF44DED4E10F64DED12392F003F3FED3FED31304379402C001704260B1309260000110226010717092600050D0226010A140C260001100C26000816062601030E0626012B2B2B2B012B2B2B2B2B81005D241235342726232206151416331200111002212200351000330702E08530
+
4CBAA59696A3D6011EFCFEF7DDFEFC0112E70674010FA6965E94FCB2ABE403DAFEECFEF4FEFDFEAE012BFC010E01400500010017FFEF0209055A00180052B50D2E0AC00E01B8013F40250416391703060E0A111A17171A0301062900150E150F031F030203FC1619191AFC21677D182B2B4EF44DFD5D39C42F3CFD3C104E456544E6002F3F3F3C4DFD3CED10FDE431301333113315231114171633323637150E012322263511233533A8B6ABAB2615310D1E141F43277E5A9191055AFED593FD4538130B01028E0908816702C59300000002002F0000044205930007000B00001335211521112311013521152F0413FE4FB2FE50041303A6A8A8FC5A03A60146A7A70000000100000000000037422DFA5F0F3CF500110800000000005F4D8F0000000000CFF2EEF7F865FC270B9108F9000000090001000000000000000100000629FE2900000C01F865FCED0B9100010000000000000000000000000000000D05120042047300C40473004004730031047300340473004205C7009C05C700B404730038047300480473003B023900170473002F00000036005C00E8019401E2027602CC035603C2048C05040554056E00010000000D00920009006B0007000200100010005D000007E80A1D00040001B800532BB800492BB8003F2BB800352BB8002B2B4118008001A6009001A600A001A600030069018B0079018B0089018B0099018B00040089018B0099018B00A9018B00B9018BB2040840BA0179001A014A400B041F5414191F180A0B1FD2B80106B49E1FD918E3BB0119000D00E10119B20D0009410A01A0019F0064001F01A50025017A00480028019AB3296C1F60410A01A9007001A9008001A90003008001A9000101A9B21E321FBE012C00250401001F0126001E0401B61FE7312D1FE531B80201B21FC227B80401B21FC11EB80201400F1FC01D9E1FBF1D671FBE1D671FAB27B80401B21FAA29B80401B61FA91D6C1F931EB8019AB21F921DB80101B21F911DB80101B21F751DB80201B61F6D29961F6431B8019AB21F4C96B802ABB21F391DB80156400B1F3638211F351DE41F2F27B80801400B1F2D1D4C1F2A31CD1F241DB802ABB21F201EB8012540111F1C1D931F3A1D4C1F1E1D45273A1D4527BB01AA019B002A019BB2254A1FBA019B0025017AB349293896B8017BB348283125B8017A403648289629482725294C1F252946272729482756C80784075B07410732072B072807260721071B071408120810080E080C080A08080807B801ACB23F1F06BB01AB003F001F01ABB308060805B801AEB23F1F04BB01AD003F001F01ADB70804080208000814B8FFE0B40000010014B801ABB41000000100B801ABB606100000010006B801ADB300000100B801AD401F0400000100041000000100100200000100020000000100000201080200
+
4A00B0018DB806008516763F183F123E113946443E113946443E113946443E113946443E113946443E11394660443E11394660443E11394660442B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B18011DB0964B5358B0AA1D59B0324B5358B0FF1D592B2B2B2B2B2B2B2B182B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B74752B2B2B65422B2B4B5279B376706A66456523456023456560234560B08B766818B080622020B16A704565234520B003266062636820B003266165B070236544B06A234420B176664565234520B003266062636820B003266165B066236544B0762344B10066455458B166406544B27640764523614459B36242725D456523456023456560234560B089766818B080622020B172424565234520B003266062636820B003266165B042236544B072234420B1625D4565234520B003266062636820B003266165B05D236544B0622344B1005D455458B15D406544B262406245236144592B2B2B2B456953427374B8019A2045694B20B02853B049515A58B020615944B801A6204569447500
+
00>] def
+
/CharStrings 13 dict dup begin
+
/.notdef 0 def
+/one 1 def
+/two 2 def
+/three 3 def
+/four 4 def
+/five 5 def
+/N 6 def
+/R 7 def
+/d 8 def
+/e 9 def
+/o 10 def
+/t 11 def
+/u20B8 12 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
+
/FontType 1 def
+
/FontMatrix [ 0.00048828125 0 0 0.00048828125 0 0 ] def
+
/FontBBox{-1947 -985 2961 2297}def
+
/UniqueID 4142842 def
+
currentdict currentfile eexec
+
54544758EC884CF30C3CD503CEDBFF3839C47C3C3333173232E3FDBFF439491DB843E1924E63AA7726BBB0485AB56D93D8C0906F647A47162891E73FFC2A9873C4B1EAC5EEBDFFC4D06084FBD84139DF4583C6E259D10699944D1068C9C45667DCCCFB9B7EA01B606435EDCBD273ABAC093D14085CCBAC149BD7382E842CFE0D7FE4FD2EF589A2471F6074A80A8B675C2F7A50D63AC1EF90D787BADD11633CB01CF6EE3B37AAF9078A69AC4740E9B6525D78BBD839551A1CB80DB8682FA5E87591BBD6EE8B946063A2A58D9CA3685AB305495DC5FB5747EB8A9A059C4976C0FE4EEAB1D56FF47F1E9664ED9F4A7DAB763AF92B2F6CF2FA7DEC24710E0B9096E30F772BA7FEA9BDBE496C42ED2CEB58F54E80BDF57CE7B4DB6CCFE7182F43BF93CCA0767AF95D62C5D2C3DC6AE1E6D139F51A2C63432117F1714C5566572EE9967A715420ABDCD1D7BD74F8450B89965FCC81C6ACA565C5F3CCF91D430D1F953E4F1A645300A98DD8C47CD64555F08F422340A85404EAE0D3229C4F9336B9470CACBD6BBF3395104750A915CC6EAAC197668267B8C62D2764C8CD69FD937CA3C924D997A0EDE7964BEB9EA2F92EF70C5E5DA0AA5567765E71F2B911B3C5586B741EEB93F3C73016EC16BFF283758900903D203992EFC8BAFAF13579C602F38C91B71CCBEC8DADBFCB2CF6F614DCF0404E4678133CDA654CD39ADC4A8DD9DC9E199CA389B3097EA53D68A2728AA3C6C75ED53FA8420C021D872E28D46F54806A8A409E053FBF428B872BD7670370D1C6BC11C4F08B535F81FEC940563CFE5D6162C451D0FC54CD13F0E76EE66C6C691F59D7E1D76411BA35923408FF32A41EDAEFD9C8223423E4F8E8F49CB77789E4621FDD9B402F7117AA3A8A4DF27058EFB3FA57C7FE8AF2371B94F3C05D42507356404308AD679D29E11E5D42F4CDD8C20EBB42EFBADD3D34E312D9E54084794154DB6DFBF7696D2F5818B49E9EAEA976D142B7FB2BB74FD7E36A6174D3B6EC0C97CB75749C449B2BE23C4905727513D442A062A73B71A27242C2BCFF8DDA68A26178938A5343EBEB6E5442A468C6559540CBCAC4FD6F6394B30A90897D9A15CB5E84FD5C8816E180D6A84E36718158AF9E04EA2B44BE1DFF553B55FDD4359CA1B501F38A845A24A9859B04DB2E7209B2A4F1E2F5B263104AA1FBFE2E4D21831DE806C218F99F6378222728929BCCC7E9955FFB4EDB37A2119F3D176E971C1D36581EA86295311C136A23E73FAAC6BF814AE3191FA03A35F7E20004BBF80C623B423578B47D2434D0B7EC9357E435D59712806D8DFE92C5B1642655FCABC8BEF076F2B4DC2AEF04EBEE8DD2A3C547A22E0460648B92272AC22DFCC5F90796A42A7DDD373381858317E94543B528DA936391FC80D221EAA5937E45B24D21BA9FC4E9973BDAA7B40B6E574C38AE80C4667F1599
+
BBC60964BC9723DB86AA99FAAB28E327008CE8E679FC6047677ECD3F61DB280F20CF38638504161B4C7EC1977AC35AE40CE9F1395376F1C41890A1377D0B3BCBE7747C975A1E27A86BDBD0BD5FBC65CAE3EE967ABDC8B8BA7A4ABD4D72F12C455214CC58D16D0CEED6A51C490CC1C2B74A457F005E3053B3F231035D9C221993ACA5477FF502951DB2D4EB2FCE5D90952FDD1574BD880E0AE2881CB583737A0F6EB39794DCA1FB58C83628B990DE5AA9F2F1CDD8BAC53193BE876975062B919ED3F2F1B45DA8404AA4A28FA07A06E792647577C9245C82067A827526FC44B443469D18C1F7FFD199649BF1EAB513FD56B115EC41B9394A39E925EAFC5CC2A2B9F5935E67EFF85E783D59BE92E89E0A762088A941D286581101DBD7C73C9E01F6C89CC8125AC67A9564E1B18B6359D53D4BB4673ED8D14108A524C499CAD68D7FA38132F8DB4C1B2D660F37AD19A8B68F76062BD28A6DF860D9D71D5C3425459CA140EF32388427DA36A3153BABA585D51167EFE8689CF80A83D54B9A79AE73CC476E39492590664FD553D56C7782D4BF3B26180251AF7F31CD888A4BD59692F9E50D83C651C6BAF5C5164E77ED331A3D1688C8F77E700A616CE1D4C20BD1671127BAA6C3E74D450FC613292065FF4DE096DF88394E1D662C12C443D60F696A047F4419F3213D90036F48CA597234010A3B5FE6FE98BD6B026DF9D828D6D1155D4FE0C1711162B6E57148D03F733F4CE8481208C63C3F5389A5DF2FC721EA58D60ABFFED63A00D43610D4C045A8CFA53FA4433FA668387AB3C5CCBC9F9421EE7475CE26FE6D8EDC8ED0D6A0C9D9D9C4945D61D94913DBCFA810156A02A2EE6B9CBD18C2CAC6BB1C60104CFE59E7D6AF63F927EACA5E441F53680D72AB6B1BCEB4EB07C6E8C09EC0E3B57E5968676E412909EF56C2DF896FCCF6D36B9A18C73230661D128CCECB7ECB1F0BDD638370E7B9AECE85CB8971D2F26A2431BD188BC4EA012B72C195FA7B806C62B078E8F3A1BBCDF9DC0496A9552AC24CE95494750C38777408E6302183FE35EB46D3914D0D0BDD75A923C286692DEF0827A482B61D0135B2F01C88EB23E88FC608A094B2A3BA33A4EB1DAABCAC613BE55FC6A7A8A20969DB8340AC3A4AF8D28D638B57D2D664D8538D50DF005AE777FE7958A3E7AD507CBBD82D35EDA6986C7F657A20BEDEE84F09D7AF750C2D58667CE0370509FDB046F2351675882DFA6678F25F5DECBF827F7104FD79EFEB7A3E7501BDC4D7B3F1FA507507FD158E41D3D6BE66392AB194FFBD07378F500CDCCD235C93575D58CCF24A895EF1B77D3E90A2C632C4DA1BE15019DEE7E2801CECCB6C9D5E9F9C079580B53A757AE588F6C0216BC0B2A6F9C4AF3893833245DF5D6DBC0393C881149D501301A528F5A047363D3B29A17494D473355A088335D66EF8105313862F13EE
+
DF490422B4ED653B929F169BEF4F26C33BDBA8B13597D34DD1AC20ECE043BCA2EDF33316435F1A8E69EC9206EFDA842A363FFCC0B77C33B6F59C6DFDCDA35006489EC81488BBFC121D54D38977A978B256B52F8499597A98F8094A22C281061C9A4569BE4101B7CF9F01D50991D883A3F07A3883C149074D1480C8C440CB3DC7FA64D37BAA094C38B588AC5B071F0CAFFF2A7AAD3D8F9EED87C95BBE2A4AB166ECE45DA6B002633B060E11EEEF1CB694407149431B02BCF1BE0807FA863778DAE76D66563C557C3DFED0598AD47517B259F8AE7D756A4EA65B3FD70F5A138D9F4E72F5F817EC31D0AC205D3FA2CBA21B01A43D41445E304466EFE71340EC3D4289A858F2C3BF3F5A1C5CCEA899983065D1E9D66C0A659A9CFA8F20F20C3A0FE050D5EBEACE4EC9251F4D499ACA9E1BF9572D50A6A73B6EC7C1EFA6A8759C52EA1CE2363027FAE0FA37D55F1350D41B053CFEB27BDEA7FD4DFB4A297FACDF27387AB5D5188C20718D7B1118A67E508406AC90AEC316FB219E1ED5A9
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
cleartomark end
+
%APLT1End
+
%RBIEndFontSubset
+/Helvetica cguidfix
+/F1.1/Helvetica renmfont
+%RBIBeginFontSubset: HelveticaNeue
+%!FontType1-1.0: HelveticaNeue 1.0000.1.0000
+
14 dict begin/FontName /HelveticaNeue def
+
/PaintType 0 def
+
/Encoding 256 array 0 1 255{1 index exch/.notdef put}for
+
dup 33 /e put
+
dup 34 /n put
+
dup 35 /one put
+
dup 36 /zero 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[1000 -951 1 index div -481 2 index div 1987 3 index div 1077 5 -1 roll div]cvx def
+
/sfnts [<
+
74727565000900000000000063767420000000000000009C000000186670676D00000000000000B400000428676C796600000000000004DC000003EC6865616400000000000008C80000003668686561000000000000090000000024686D74780000000000000924000000186C6F6361000000000000093C0000000E6D617870000000000000094C0000002070726570000000000000096C0000004D14000014004B005A00000011FF3A000B0205000C02CA0011B800002C4BB800095058B101018E59B801FF85B844001DB9000900035F5E2DB800012C2020456944B001602DB800022CB800012A212DB800032C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800042C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB800052C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800062C2020456944B001602020457D691844B001602DB800072CB800062A2DB800082C4B20B003265358B0801BB040598A8A20B003265358B0022621B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B80003265358B0032545B8014050582321B8014023211BB003254523212321591B2159442DB800092C4B535845441B2121592DB8000A2C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB8000B2C2020456944B001602DB8000C2CB8000B2A212DB8000D2C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB8000E2C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB8000F2C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800102C2020456944B001602020457D691844B001602DB800112CB800102A2DB800122C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB800132C4B535845441B2121592DB800142C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB800152C2020456944B001602DB800162CB800152A212DB800172C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800182C2046B00425465258238A592046206A6164B0042546
+
206A61645258238A592FFD2DB800192C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB8001A2C2020456944B001602020457D691844B001602DB8001B2CB8001A2A2DB8001C2C4B20B003265358B0401BB000598A8A20B0032653582321B0808A8A1B8A235920B0032653582321B800C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB8001D2C4B535845441B2121592D00020033000101CC02C8000300070065B800142BB800082FB800002FB8000810B80006D0B800062FB900020003F4B8000010B900040003F4B80009DC00B800014558B800042F1BB90004000A3E59B800014558B800052F1BB9000500043E59B8000410B900000002F4B8000510B900020002F4303101211121131121110199FECD013333FE67029AFD950299FD3902C70002002AFFF5020202C50017003300CBB800342FB800352FB8003410B80018D0B800182FB80000DC411B0006000000160000002600000036000000460000005600000066000000760000008600000096000000A6000000B6000000C60000000D5D410500D5000000E5000000025DB8003510B80026DCB8000EDC410500DA000E00EA000E00025D411B0009000E0019000E0029000E0039000E0049000E0059000E0069000E0079000E0089000E0099000E00A9000E00B9000E00C9000E000D5D00BA0013001F00032BB8001310BA002D000700032BB8002D10303113343E0433321E0415140E0223222E0227141E0433323E0435342E0423220E0484010911213224243221110901051B3C36363C1B055A04101E344F37384E341E100404101E344F37374F341E1004015D1A3F3F3C2D1C1C2D3C3F3F1A2863573C3C57632727545047361F1F364750542727545048362020364850540000000100570000016402C5000A0023BA0001000900032BB800011000B800012FB800002FBA0007000800032BB800071030312111230E03231533110164410726374424B802C528341E0B44FE0400020024FFF502030211000A0026005BBA0014001F00032BB8001410BA0015000000032BB8001510B8001410B80001D0B8000010B8000CD0B8000C2F00BA000F002400032BB8000F10BA001A000600032BB8001A10BA0001001400032BB8000110B8002410B8000CDC303101213E0333321E0217230E0123222E023721362E0223220E02151E0333323601A7FED702162635212035271754540B45362A3E28120101830215375B4535594124021F3E5B3E587401341E352817172736AE33321C2F3D222F6858392848623B3B6448285800010040000001EC021100170045BA0003000000032BB8000310BA000E000B00
+
032BB8000E10B8000310B80015D0B800152FBA00160000000311123900B800012FB8000C2FBA0013000800032BB8001310303113113311343E0233321615113311342E022322072335405513263927313855112A44337335020205FDFB0124233B2C183830FEA201542A45321C5E52000001FF4F02D100B1035B000F001FB800142B00BB00070002000000182BB8000010B9000A0002F4B80003D0303113222627331E013332363733140E02014C63034D07302D2D30074D1B2F4002D146442C23232C1D332515000001000000010000615A24005F0F3CF5011103E800000000B643600000000000D00AB6E5FC49FE1F07C304350000000900020000000000000001000003B8FF2B001C08B1FC49FE8007C300010000000000000000000000000000000601F40033022C002A022C005702190024022C00400000FF4F0000004800F4011A018201CA01F600000001000000060096000900680004000200000000001E00000200042800030001B800142B01BA0002000200162B01BF0003003E0037002B001F00130000001C2B00BF0002004A0037002B001F00130000001C2B00BA00040004001B2BB8000120457D691844B8000A2BB800002B000000
+
00>] def
+
/CharStrings 6 dict dup begin
+
/.notdef 0 def
+/zero 1 def
+/one 2 def
+/e 3 def
+/n 4 def
+/cyrbreve.compact 5 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
+
/FontType 1 def
+
/FontMatrix [ 0.001 0 0 0.001 0 0 ] def
+
/FontBBox{-951 -481 1987 1077}def
+
/UniqueID 4140288 def
+
currentdict currentfile eexec
+
54544758EC884CF30C3CD503CEDBFF3839C47C3C3333173232E3FDBFF439491DB843E1924E63AA7726BBB0485AB56D93D8C0906F647A47162891E73FFC2A9873C4B1EAC5EEBDFFC4D06084FBD84139DF4583C6E259D10699944D1068C9C45667DCCCFB9B7EA01B606435EDCBD273ABAC093D14085CCBAC149BD7382E842CFE0D7FE4FD2EF589A2471F6074A80A8B675C2F7A50D63AC1EF90D787BADD11633CB01CF6EE3B37AAF9078A69AC4740E9B6525D78BBD839551A1CB80DB8682FA5E87591BBD6EE8B946063A2A58D9CA3685AB305495DC5FB5747EB8A9A059C4976C0FE4EEAB1D56FF47F1E9664ED9F4A7DAB763AF92B2F6CF2FA7DEC24710E0B9096E30F772BA7FEA9BDBE496C42ED2CEB58F54E80BDF57CE7B4DB6CCFE7182F43BF93CCA0767AF95D62C5D2C3DC6AE1E6D139F51A2C63432117F1714C5566572EE9967A715420ABDCD1D7BD74F8450B89965FCC81C6ACA565C5F3CCF91D430D1F953E4F1A645300A98DD8C47CD64555F08F422340A85404EAE0D3229C4F9336B9470CACBD6BBF3395104750A915CC6EAAC197668267B8C62D2764C8CD69FD937CA3C924D997A0EDE7964BEB9EA2F92EF70C5E5DA0AA5567765E71F2B911B3C5586B741EEB93F3C73016EC16BFF283758900903D203992EFC8BAFAF13579C602F38C96AC05D8620AE2086072F250ADD3256490B02A185DDD3083C39A0A31F6E9B7945802A86634A0D7B33F22EB292055D12A41AF44B29B9A88BC4AB2394D49852566138EE6947A087E55A7C2D6CBCA24216334F9D193EEE1B30EB9143FDADB0D85934399D417E6DC7B6C0FBB692FEAB50A2F48FD696A59EDF843146EEFC03D13FD73E8B3F92853C65E438A58C8DFEDF811E21D65B94745F27A6BCE196D042AA39F65F59CC385E4DA92D5181A0E0639003224E323E520F402FB22E5A900B2647BC8AEC2E1B55AF4DC90964F335926A1B7FC523AF8D6FFFB096BC888DAE2639ED32C899FC3B258209E764AD28F948304A36910BCAE7E266FF4425AC0B5840D05D8487A49065DFF709FDA32AE88FBECD57110ADAE26C55FD6E17ADB7D5544A9DCD3518F0D8FE88933332488158485994021B905A697F6768D7883A62B1F52A6EF1BDA3D8E32D368A9AE0A5EE9ADF665FFB274AA684DE60CA2C13F866D660A8F4F9DC221CA98AA0A71A06769655DF17C28E9C6AFF9E5397E23E8835B7A44670117F472A6C3809B6D02F25C9A83B71B583A490DE9AF3FEBD536E9CE8272496AA08AC242CA2FB5DDFC8AFBF486EAC1E891EE855ECE222E67A9902AC167933FE11E43DB23AEBA71B266768B2BDB4060B97D80CB9BFB322C5C27F03227F36D507D9C6208B2EF5A91F31AB0557FE1C277543D2230C40F228DC8DF464C4A649373567C6D51336179A0A6A997EC42F80AD505429F2511ECD3CFF7CFF8A2E7C21FA397F361637025BE
+
B1D3EFB125098046E4BC7ED3CD888DB24C3B628E71A9C39781C64F17FDDF33707FEC416C25781C52A040038210A6A1C4CA5ACEC72FCB2430F2A518D523BF01D56B1A77728D0668D891B4D64F734DACEC71716A72DAD50F53E33495F4C76997A4512E913BD97D15035FFCC05D584E078C4B5EC7096835D1034BBF0F8D73E6C9F82C744061C4013F0C8538FAFD47D5357C67404AAD7A1C1143F527FA4ADD21AE1575AF3BCEAF5CF98D7DE798207C14C85BC6351B54E5E5FDBFD3A4993853AA9791240B991805BC7785AC184449C3B90AB0E463E5F9B436F85035B9E1E343C38986E6D78C46B79DE0B64D3352A0B13C715DA5CAD51801CDBCD9FEA05367DDE44B23252FBE1BDAD5959E6345C3B462C076EEAA2893ACA1EAEF06DA8255E9C2FBAA0AC1A97461B13CA6EB8634CBE4C20B19A258339774DE7C2954A0C59E96889DECB4C374B5FEC5B3388B51BF404CE536A187A9C383AE249B59600BEDB2C4E3A6F6B1F721C6DA8F7453B5CF8AFE7414404FB3330FBBB80394BF2A6871A0DEA1B74429D75945C94854F90135BBCEBB386965B66EE8EF14097BF2980E9B65545362FB90A9367536DBE7A75B3A6BF9CA338E1A388C431798C7BD66867F3AB9D674C901FF8F4A52A67C72A54E2FD2153F60E0171E17A2352EAA55E1CFBE7E6A512195D9DB61F2978D1E80C07BE687749D9C5C3D0E50FDC22883DE1484C5D4F3B60083C1636CD08E230065
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
cleartomark end
+
%APLT1End
+
%RBIEndFontSubset
+/HelveticaNeue cguidfix
+/F2.1/HelveticaNeue 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
+[ /CIEBasedA 5 dict dup begin /WhitePoint [ 0.9505 1.0000 1.0891 ] def 
+/DecodeA { { 1.8008  exp } bind  exec} bind 
+def 
+/MatrixA [ 0.9642 1.0000 0.8249 ] def 
+/RangeLMN [ 0.0 2.0000 0.0 2.0000 0.0 2.0000 ] def 
+/DecodeLMN [ { 0.9857  mul} bind { 1.0000  mul} bind { 1.3202  mul} bind ] def 
+end ] /Cs2 exch/ColorSpace dr pop
+%%EndPageSetup
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+q
+0 0 462 302 rc
+-66 509 m
+493 509 l
+493 -274 l
+-66 -274 l
+h
+-66 509 m
+f
+149.85895 186.26938 m
+159.33403 177.61906 159.33403 163.59412 149.85895 154.9438 c
+140.38393 146.29343 125.02189 146.29343 115.54687 154.9438 c
+106.07179 163.59412 106.07179 177.61906 115.54687 186.26938 c
+125.02189 194.91975 140.38393 194.91975 149.85895 186.26938 c
+f
+1 J
+1 j
+[
+4
+4
+] 0 d
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+215.85895 322.73062 m
+225.33403 331.38095 225.33403 345.40588 215.85895 354.05621 c
+206.38393 362.70657 191.0219 362.70657 181.54686 354.05621 c
+172.07179 345.40588 172.07179 331.38095 181.54686 322.73062 c
+191.0219 314.08023 206.38393 314.08023 215.85895 322.73062 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 132.70291 170.6066 cm
+/F1.1[ 12 0 0 -12 0 0]sf
+-12.673828 -3 m
+(!""#)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-14.34375 11 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+93.463005 117.63781 m
+102.93808 108.98748 102.93808 94.962547 93.463005 86.312218 c
+83.987984 77.66185 68.625946 77.66185 59.150921 86.312218 c
+49.67585 94.962547 49.67585 108.98748 59.150921 117.63781 c
+68.625946 126.28818 83.987984 126.28818 93.463005 117.63781 c
+f
+[] 0 d
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+159.46301 391.36218 m
+168.93808 400.01251 168.93808 414.03745 159.46301 422.68777 c
+149.98798 431.33813 134.62595 431.33813 125.15092 422.68777 c
+115.67585 414.03745 115.67585 400.01251 125.15092 391.36218 c
+134.62595 382.71182 149.98798 382.71182 159.46301 391.36218 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 76.306969 101.97501 cm
+-14.34375 -3 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-3.3369141 11 m
+(')s
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+206.53464 117.63781 m
+216.00972 108.98748 216.00972 94.962547 206.53464 86.312218 c
+197.05962 77.66185 181.69759 77.66185 172.22256 86.312218 c
+162.74748 94.962547 162.74748 108.98748 172.22256 117.63781 c
+181.69759 126.28818 197.05962 126.28818 206.53464 117.63781 c
+f
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+272.53464 391.36218 m
+282.0097 400.01251 282.0097 414.03745 272.53464 422.68777 c
+263.05963 431.33813 247.69759 431.33813 238.22256 422.68777 c
+228.74748 414.03745 228.74748 400.01251 238.22256 391.36218 c
+247.69759 382.71182 263.05963 382.71182 272.53464 391.36218 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 189.3786 101.97501 cm
+-14.34375 -3 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-3.3369141 11 m
+(\()s
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+53.178375 49.580502 m
+62.65345 40.930176 62.65345 26.905237 53.178375 18.254911 c
+43.70335 9.6045418 28.341314 9.6045418 18.866291 18.254911 c
+9.3912182 26.905237 9.3912182 40.930176 18.866291 49.580502 c
+28.341314 58.230869 43.70335 58.230869 53.178375 49.580502 c
+f
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+119.17838 459.41949 m
+128.65344 468.06982 128.65344 482.09476 119.17838 490.74509 c
+109.70335 499.39545 94.341316 499.39545 84.866287 490.74509 c
+75.39122 482.09476 75.39122 468.06982 84.866287 459.41949 c
+94.341316 450.76913 109.70335 450.76913 119.17838 459.41949 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 36.022335 33.917706 cm
+-14.34375 -3 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-3.3369141 11 m
+(\))s
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+123.67648 49.580502 m
+133.15155 40.930176 133.15155 26.905237 123.67648 18.254911 c
+114.20145 9.6045418 98.839417 9.6045418 89.364395 18.254911 c
+79.88932 26.905237 79.88932 40.930176 89.364395 49.580502 c
+98.839417 58.230869 114.20145 58.230869 123.67648 49.580502 c
+f
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+189.67648 459.41949 m
+199.15155 468.06982 199.15155 482.09476 189.67648 490.74509 c
+180.20146 499.39545 164.83942 499.39545 155.3644 490.74509 c
+145.88933 482.09476 145.88933 468.06982 155.3644 459.41949 c
+164.83942 450.76913 180.20146 450.76913 189.67648 459.41949 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 106.52044 33.917706 cm
+-14.34375 -3 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-3.3369141 11 m
+(*)s
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+182.27231 49.580502 m
+191.74738 40.930176 191.74738 26.905237 182.27231 18.254911 c
+172.79729 9.6045418 157.43524 9.6045418 147.96022 18.254911 c
+138.48515 26.905237 138.48515 40.930176 147.96022 49.580502 c
+157.43524 58.230869 172.79729 58.230869 182.27231 49.580502 c
+f
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+248.27231 459.41949 m
+257.74738 468.06982 257.74738 482.09476 248.27231 490.74509 c
+238.79729 499.39545 223.43524 499.39545 213.96022 490.74509 c
+204.48515 482.09476 204.48515 468.06982 213.96022 459.41949 c
+223.43524 450.76913 238.79729 450.76913 248.27231 459.41949 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 165.11627 33.917706 cm
+-14.34375 -3 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-3.3369141 11 m
+(+)s
+0.60000002 i
+/Cs1 SC
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+184.14122 356.11441 m
+156.86865 389.30399 l
+S
+213.31065 356.0827 m
+240.77086 389.33569 l
+S
+130.76907 426.51721 m
+113.56022 455.59006 l
+S
+151.42279 427.55884 m
+163.40462 454.54846 l
+S
+247.86806 428.0925 m
+238.62682 454.01477 l
+S
+1 1 1 sc
+CM
+386.53116 185.98225 m
+396.00623 177.33192 396.00623 163.30699 386.53116 154.65666 c
+377.05615 146.00629 361.69409 146.00629 352.21909 154.65666 c
+342.74402 163.30699 342.74402 177.33192 352.21909 185.98225 c
+361.69409 194.63261 377.05615 194.63261 386.53116 185.98225 c
+f
+[
+4
+4
+] 0 d
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+452.53116 323.01776 m
+462.00623 331.66806 462.00623 345.69302 452.53116 354.34332 c
+443.05615 362.99371 427.69409 362.99371 418.21909 354.34332 c
+408.74402 345.69302 408.74402 331.66806 418.21909 323.01776 c
+427.69409 314.36737 443.05615 314.36737 452.53116 323.01776 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 369.37512 170.31946 cm
+-12.673828 -3 m
+(!""#)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-14.34375 11 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+330.13522 117.35067 m
+339.61029 108.70035 339.61029 94.675407 330.13522 86.025085 c
+320.66019 77.374718 305.29816 77.374718 295.82312 86.025085 c
+286.34805 94.675407 286.34805 108.70035 295.82312 117.35067 c
+305.29816 126.00105 320.66019 126.00105 330.13522 117.35067 c
+f
+[] 0 d
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+396.13522 391.64932 m
+405.61029 400.29965 405.61029 414.32458 396.13522 422.97491 c
+386.66019 431.62527 371.29816 431.62527 361.82312 422.97491 c
+352.34805 414.32458 352.34805 400.29965 361.82312 391.64932 c
+371.29816 382.99896 386.66019 382.99896 396.13522 391.64932 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 312.97919 101.68788 cm
+-14.34375 -3 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-3.3369141 11 m
+(')s
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+443.20685 117.35067 m
+452.68192 108.70035 452.68192 94.675407 443.20685 86.025085 c
+433.73184 77.374718 418.36978 77.374718 408.89478 86.025085 c
+399.41971 94.675407 399.41971 108.70035 408.89478 117.35067 c
+418.36978 126.00105 433.73184 126.00105 443.20685 117.35067 c
+f
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+509.20685 391.64932 m
+518.68195 400.29965 518.68195 414.32458 509.20685 422.97491 c
+499.73184 431.62527 484.36978 431.62527 474.89478 422.97491 c
+465.41971 414.32458 465.41971 400.29965 474.89478 391.64932 c
+484.36978 382.99896 499.73184 382.99896 509.20685 391.64932 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 426.05081 101.68788 cm
+-14.34375 -3 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-3.3369141 11 m
+(\()s
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+289.85059 49.293365 m
+299.32565 40.64304 299.32565 26.618103 289.85059 17.967777 c
+280.37555 9.3174076 265.01352 9.3174076 255.5385 17.967777 c
+246.06343 26.618103 246.06343 40.64304 255.5385 49.293365 c
+265.01352 57.943733 280.37555 57.943733 289.85059 49.293365 c
+f
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+355.85059 459.70663 m
+365.32565 468.35696 365.32565 482.3819 355.85059 491.03223 c
+346.37555 499.68259 331.01352 499.68259 321.53851 491.03223 c
+312.06342 482.3819 312.06342 468.35696 321.53851 459.70663 c
+331.01352 451.05627 346.37555 451.05627 355.85059 459.70663 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 272.69455 33.630569 cm
+-14.34375 -3 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-3.3369141 11 m
+(\))s
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+360.34869 49.293365 m
+369.82376 40.64304 369.82376 26.618103 360.34869 17.967777 c
+350.87366 9.3174076 335.51163 9.3174076 326.03662 17.967777 c
+316.56152 26.618103 316.56152 40.64304 326.03662 49.293365 c
+335.51163 57.943733 350.87366 57.943733 360.34869 49.293365 c
+f
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+426.34869 459.70663 m
+435.82376 468.35696 435.82376 482.3819 426.34869 491.03223 c
+416.87366 499.68259 401.51163 499.68259 392.03662 491.03223 c
+382.56152 482.3819 382.56152 468.35696 392.03662 459.70663 c
+401.51163 451.05627 416.87366 451.05627 426.34869 459.70663 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 343.19266 33.630569 cm
+-14.34375 -3 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-3.3369141 11 m
+(*)s
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+418.94452 49.293365 m
+428.41959 40.64304 428.41959 26.618103 418.94452 17.967777 c
+409.46948 9.3174076 394.10745 9.3174076 384.63245 17.967777 c
+375.15735 26.618103 375.15735 40.64304 384.63245 49.293365 c
+394.10745 57.943733 409.46948 57.943733 418.94452 49.293365 c
+f
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+484.94452 459.70663 m
+494.41959 468.35696 494.41959 482.3819 484.94452 491.03223 c
+475.46948 499.68259 460.10745 499.68259 450.63245 491.03223 c
+441.15735 482.3819 441.15735 468.35696 450.63245 459.70663 c
+460.10745 451.05627 475.46948 451.05627 484.94452 459.70663 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 401.78848 33.630569 cm
+-14.34375 -3 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-3.3369141 11 m
+(+)s
+0.60000002 i
+/Cs1 SC
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+420.81342 356.40152 m
+393.54086 389.59113 l
+S
+449.98288 356.36984 m
+477.44305 389.62283 l
+S
+367.44128 426.80435 m
+350.23242 455.8772 l
+S
+388.095 427.84598 m
+400.07681 454.83557 l
+S
+484.54028 428.37964 m
+475.29901 454.30191 l
+S
+1 1 1 sc
+CM
+257.43723 283.63223 m
+266.91229 274.9819 266.91229 260.95697 257.43723 252.30666 c
+247.9622 243.65628 232.60017 243.65628 223.12515 252.30666 c
+213.65007 260.95697 213.65007 274.9819 223.12515 283.63223 c
+232.60017 292.28262 247.9622 292.28262 257.43723 283.63223 c
+f
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+323.43723 225.36777 m
+332.91229 234.01808 332.91229 248.04303 323.43723 256.69336 c
+313.96222 265.34372 298.60016 265.34372 289.12515 256.69336 c
+279.65009 248.04303 279.65009 234.01808 289.12515 225.36777 c
+298.60016 216.71739 313.96222 216.71739 323.43723 225.36777 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 240.28119 267.96945 cm
+-12.673828 -3 m
+(!""#)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-14.34375 11 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+301.30576 262.71295 m
+296.04895 285.62155 l
+138.01462 285.10449 l
+S
+198.29494 316.24594 m
+197.7249 285.29987 l
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 406.70502 238.48795 cm
+/F2.1[ 16 0 0 -16 0 0]sf
+-12.822031 6 m
+(!"#)[ 8.592000 8.896000 0.000000 ] xS
+1 0 0 -1 91.269608 238.67245 cm
+-12.822031 6 m
+(!"$)[ 8.592000 8.896000 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+0 0 0 sc
+1 0 0 -1 -66 509 cm
+311.09512 262.74319 m
+316.15176 285.5 l
+479.63351 285.5 l
+S
+435.74466 316.53253 m
+436.26157 285.55066 l
+S
+ep
+end
+%%Trailer
+%%EOF
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pic/TreeVNC.eps	Wed Oct 29 11:12:27 2014 +0900
@@ -0,0 +1,956 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%HiResBoundingBox: 0.000000 0.000000 303.000000 257.000000
+%APL_DSC_Encoding: UTF8
+%APLProducer: (Version 10.10 (Build 14A389) Quartz PS Context)
+%%Title: (Unknown)
+%%Creator: (Unknown)
+%%CreationDate: (Unknown)
+%%For: (Unknown)
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 2
+%%Pages: 1
+%%BoundingBox: 0 0 303 257
+%%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
+/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
+{ld}repeat pop
+/SC{	
+    /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		
+/cm {cmmtx astore CM concat}bd	
+/W{clip newpath}bd
+/W*{eoclip newpath}bd
+statusdict begin product end dup (HP) anchorsearch{
+    pop pop pop	
+    true
+}{
+    pop	
+   (hp) anchorsearch{
+	pop pop true
+    }{
+	pop false
+    }ifelse
+}ifelse
+{	
+    { 
+	{ 
+	    pop pop 
+	    (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		
+/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	
+}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	
+dict begin
+{def} repeat
+pop		
+/ImageType 1 def
+/ImageMatrix[Width 0 0 Height neg 0 Height]def
+currentdict dup/ImageMask known{ImageMask}{F}ifelse exch
+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	
+}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{ 
+    exch t_array t_i get add exch moveto
+    /t_i t_i 1 add store
+}bd
+/y_proc{ 
+    t_array t_i get add moveto
+    /t_i t_i 1 add store
+}bd
+/xy_proc{
+        
+	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		
+/cp_proc/x_proc ld 	
+/base_charpath		
+{
+    /t_array xs
+    /t_i 0 def
+    { 
+	t_c 0 3 -1 roll put
+        currentpoint
+	t_c cply sop
+        cp_proc
+    }forall
+    /t_array 0 def
+}bd
+/sop/stroke ld		
+/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{ 
+findfont dup length dict copy dup
+/Encoding 4 -1 roll put 
+definefont pop
+}bd
+/renmfont{ 
+findfont dup length dict copy definefont pop
+}bd
+L3? dup dup{save exch}if
+/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 
+{
+    begin
+	/nRange Range length 2 idiv store
+	/mulRange   
+		    
+	[ 
+	    0 1 nRange 1 sub
+	    { 
+		    2 mul/nDim2 xd		
+		    Range nDim2 get		
+		    Range nDim2 1 add get	
+		    1 index sub			
+						
+		    255 div			
+		    exch			
+	    }for
+	]store
+    end
+}bd
+/FunEval 
+{
+    begin
+	
+	nRange mul /val xd	
+				
+	0 1 nRange 1 sub
+	{
+	    dup 2 mul/nDim2 xd 
+	    val	
+	    add DataSource exch get 
+	    mulRange nDim2 get mul 	
+	    mulRange nDim2 1 add get 
+	    add 
+	}for	
+    end
+}bd
+/max 
+{
+	2 copy lt
+	{exch pop}{pop}ifelse
+}bd
+/sh2
+{	
+	/Coords load aload pop 	
+	3 index 3 index translate	
+					
+	3 -1 roll sub	
+	3 1 roll exch 	
+	sub				
+	2 copy
+	dup mul exch dup mul add sqrt	
+	dup
+	scale  
+	atan	
+	
+	rotate		
+	
+	/Function load setupFunEval	
+	
+	
+	clippath {pathbbox}stopped {0 0 0 0}if newpath 	
+	/ymax xs
+	/xmax xs
+	/ymin xs
+	/xmin xs
+	currentdict/Extend known
+	{
+		/Extend load 0 get
+		{	
+			0/Function load FunEval sc	
+			xmin ymin xmin abs ymax ymin sub rectfill
+		}if
+	}if
+	
+	/Nsteps/Function load/Size get 0 get 1 sub store
+	/dx 1 Nsteps div store
+	gsave
+		/di ymax ymin sub store
+		/Function load
+		
+		0 1 Nsteps
+		{
+			1 index FunEval sc
+			0 ymin dx di rectfill
+			dx 0 translate
+		}for
+		pop	
+	grestore	
+	currentdict/Extend known
+	{
+		/Extend load 1 get
+		{	
+			Nsteps/Function load FunEval sc	
+			1 ymin xmax 1 sub abs ymax ymin sub rectfill
+		}if
+	}if
+}bd
+/shp	
+{	
+	4 copy
+	
+	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
+	
+	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
+{	
+	
+	xmin dup mul ymin dup mul add sqrt		
+	xmax dup mul ymin dup mul add sqrt		
+	xmin dup mul ymax dup mul add sqrt		
+	xmax dup mul ymax dup mul add sqrt		
+	max max max								
+}bd
+/sh3
+{	
+	/Coords load aload pop 	
+	5 index 5 index translate	
+	3 -1 roll 6 -1 roll sub		
+	3 -1 roll 5 -1 roll sub		
+	2 copy dup mul exch dup mul add sqrt
+	/dx xs						
+	2 copy 0 ne exch 0 ne or
+	{
+		
+		exch atan rotate	
+	}{
+		pop pop
+	}ifelse
+	
+	/r2 xs
+	/r1 xs
+	/Function load 
+	dup/Size get 0 get 1 sub	
+	/Nsteps xs		
+	setupFunEval		
+	
+	
+	
+	
+	
+	dx r2 add r1 lt{
+		
+		0 
+	}{
+		dx r1 add r2 le
+		{ 
+			1
+		}{ 
+			r1 r2 eq
+			{	
+				2
+			}{ 
+				3
+			}ifelse		
+		}ifelse
+	}ifelse
+	/sh3tp xs		
+	clippath {pathbbox}stopped {0 0 0 0}if 
+	newpath 	
+	/ymax xs
+	/xmax xs
+	/ymin xs
+	/xmin xs
+	
+	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	
+		{	
+			0/Function load FunEval sc	
+			
+			
+			
+			
+			{ 
+				{	
+					dx 0 r1 360 0 arcn
+					xmin ymin moveto
+					xmax ymin lineto
+					xmax ymax lineto
+					xmin ymax lineto
+					xmin ymin lineto
+					eofill		
+				}
+				{	
+					r1 0 gt{0 0 r1 0 360 arc fill}if
+				}
+				{	
+					
+					
+				
+					
+					0 r1 xmin abs r1 add neg r1 shp
+				}
+				{	
+					
+				
+					r2 r1 gt{	
+						
+						0 r1
+						r1 neg r2 r1 sub div dx mul	
+						0	
+						shp	
+					}{	
+						
+						
+						
+						0 r1 calcmaxs	
+						dup
+						
+						r2 add dx mul dx r1 r2 sub sub div
+						neg				
+						exch 1 index	
+						abs exch sub
+						shp
+					}ifelse
+				} 
+			}sh3tp get exec	
+		}if
+	}if
+	
+	/d0 0 store
+	/r0 r1 store
+	/di dx Nsteps div store
+	/ri r2 r1 sub Nsteps div store 
+	/Function load 
+	0 1 Nsteps
+	{	
+		1 index FunEval sc
+		d0 di add r0 ri add d0 r0 shp
+		{
+		
+		d0 0 r0 a1 a0 arc
+		d0 di add 0 r0 ri add a0 a1 arcn
+		fill
+		
+		
+		d0 0 r0 a0 a1 arc
+		d0 di add 0 r0 ri add a1 a0 arcn
+		fill
+		}pop
+		
+		
+		/d0 d0 di add store
+		/r0 r0 ri add store
+	}for
+	pop	
+	
+	currentdict/Extend known
+	{
+		/Extend load 1 get r2 0 gt and	
+		{	
+			Nsteps/Function load FunEval sc	
+			
+			
+			
+			
+			{ 
+				{
+					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		
+				} 
+				{	
+					
+					
+					xmax abs r1 add r1 dx r1 shp
+				}	
+				{	
+			
+					r2 r1 gt{
+						
+						
+						
+						calcmaxs dup	
+						
+						r1 add dx mul dx r2 r1 sub sub div	
+						exch 1 index	
+						exch sub
+						dx r2
+						shp
+					}{	
+						
+						r1 neg r2 r1 sub div dx mul	
+						0		
+						dx 		
+						r2		
+						shp
+					}ifelse
+				}
+			}			
+			sh3tp get exec	
+		}if
+	}if
+}bd
+/sh		
+{	
+	begin
+		/ShadingType load dup dup 2 eq exch 3 eq or
+		{	
+			gsave
+				newpath
+				/ColorSpace load scs
+				currentdict/BBox known
+				{
+					/BBox load aload pop	
+					2 index sub				
+					3 index					
+					3 -1 roll exch sub 
+					exch rectclip
+				}if
+				2 eq
+				{sh2}{sh3}ifelse
+			grestore
+		}{
+			
+			pop 
+			(DEBUG: shading type unimplemented\n)print flush
+		}ifelse
+	end
+}bd
+{restore}if not dup{save exch}if
+	L3?{	
+		/sh/shfill ld
+		/csq/clipsave ld
+		/csQ/cliprestore ld
+	}if
+{restore}if
+end
+setpacking
+%%EndFile
+%%EndProlog
+%%BeginSetup
+%%EndSetup
+%%Page: 1 1
+%%PageBoundingBox: 0 0 303 257
+%%BeginPageSetup
+cg_md begin
+bp
+sdmtx
+%RBIBeginFontSubset: Helvetica
+%!FontType1-1.0: Helvetica 1.0000.0.0000
+
14 dict begin/FontName /Helvetica def
+
/PaintType 0 def
+
/Encoding 256 array 0 1 255{1 index exch/.notdef put}for
+
dup 33 /R put
+
dup 34 /o put
+
dup 35 /t put
+
dup 36 /N put
+
dup 37 /d put
+
dup 38 /e put
+
dup 39 /one put
+
dup 40 /two put
+
dup 41 /three put
+
dup 42 /four put
+
dup 43 /five put
+
dup 44 /V put
+
dup 45 /C put
+
dup 46 /S put
+
dup 47 /r put
+
dup 48 /v 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 -1947 1 index div -985 2 index div 2961 3 index div 2297 5 -1 roll div]cvx def
+
/sfnts [<
+
74727565000900000000000063767420000000000000009C0000036C6670676D000000000000040800000A1D676C79660000000000000E2800001008686561640000000000001E3000000036686865610000000000001E6800000024686D74780000000000001E8C000000486C6F63610000000000001ED4000000266D6178700000000000001EFC00000020707265700000000000001F1C000003CF05C0001005BD00280580001A042F001F0000FFD90000FFDA0000FFD9FE55FFE605C70010FE6DFFF1033B000000B9000000B902FE3F3C00C0008D009B00AF000600A800C00028005E009800C9016A00B9015C00B400D6011E002E0080000400B8004C00CC01FFFFD1006600A400AF007400C2009500B1000C0028006D0015004C008E0125FF7A000C0040004C00620084FFA200240038008600BD0039005E008E00EDFFA9FFB300400052005500AA00AB00C200CB012302B10413FFAEFFE4000800510074008400AA00D1FF4CFFAF0012002C004200500051008400BE012503DAFF680018003B0098009C009F00A100C100EC018201B4FF68FF76FFD0FFE100020018001C00530053007D01B401E103AF0486FF9CFFEAFFFE001F0028002A00520060009300A300AA00AF00AF00C001000145016B0174019301950240028202B404850517FEFD00060029004700470048006F008800B400B900C400F200F901EF02180310037403C5FF35FFF3000B004B004C0052005500650076007600870087008E00AB00BB0106013001430150017D0194019501D3022A025502580277027802E6034E035C037903D3047304B2058C0598060BFEF5FFBBFFC7FFD50017001D005B0072007E009C00C200D000F400FA01030106011C0125013B0142015E015E0180019B02B901A101B9025001C001D002AA01DF01E301EF01FB0205020C0215022B0274029302AB02C202CE03690395039903DF03F5043E050205A105E5062507DBFE62FE89FECEFF3BFFE1FFF800030008002100390042004E005F0061006F00700034007F008E00AD00AD00AF00BD00C400C500C900C900C900E3011C00ED00F800F901000112011A0132014D014D014E014F01660169019E01BA01BA01BE01E301EF01F602000200020902110217021C02530262026D028002D50280031B032A034A035A03AF03AF03C803D603FB03FB04050413041504470449008C046D049A049A04A604A804B204CF0539053E054E055605800589058C036305D105D6067E068E06B206EF06F00728074C076F078C00B400C900C000C10000000000000000000000000004012400AF0032006E0063014401620096014301A10161008A00740064018801EF01700028FF5D037E0347023000AA00BE007B0062009A007D0089035C00A1FFD803AA00D70093006C0000008000A70442001D0597001D00820030002A
+
002A002A002A002A40292A292827262524232221201F1E1D1C1B1A191817161514131211100D0C0B0A090807060504030201002C4523466020B02660B004262348482D2C452346236120B02661B004262348482D2C45234660B0206120B04660B004262348482D2C4523462361B0206020B02661B02061B004262348482D2C45234660B0406120B06660B004262348482D2C4523462361B0406020B02661B04061B004262348482D2C0110203C003C2D2C20452320B0CD442320B8015A51582320B08D44235920B0ED51582320B04D44235920B09051582320B00D44235921212D2C20204518684420B001602045B04676688A4560442D2C01B9400000000A2D2C00B9000040000B2D2C2045B00043617D6818B0004360442D2C45B01A234445B01923442D2C2045B00325456164B050515845441B2121592D2C20B0032552582359212D2C69B04061B0008B0C6423648BB8400062600C642364615C58B0036159B002602D2C45B0112BB0172344B0177AE5182D2C45B0112BB01723442D2C45B0112BB017458CB0172344B0177AE5182D2CB002254661658A46B040608B482D2CB0022546608A46B040618C482D2C4B53205C58B002855958B00185592D2C20B0032545B019236A4445B01A23444565234520B00325606A20B009234223688A6A606120B0005258B21A401A4523614459B0005058B219401945236144592D2CB9187E3B210B2D2CB92D412D410B2D2CB93B21187E0B2D2CB93B21E7830B2D2CB92D41D2C00B2D2CB9187EC4E00B2D2C4B525845441B2121592D2C0120B003252349B04060B0206320B000525823B002253823B002256538008A63381B212121212159012D2C456920B00943B0022660B00325B005254961B0805358B21940194523616844B21A401A4523606A44B209191A45652345604259B00943608A103A2D2C01B005251023208AF500B0016023EDEC2D2C01B005251023208AF500B0016123EDEC2D2C01B0062510F500EDEC2D2C20B001600110203C003C2D2C20B001610110203C003C2D2C764520B003254523616818236860442D2C7645B00325452361682318456860442D2C7645B0032545616823452361442D2C4569B014B0324B505821B0205961442DB8002B2C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB8002C2C2020456944B001602DB8002D2CB8002C2A212DB8002E2C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB8002F2C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB800302C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800312C2020456944B0016020
+
20457D691844B001602DB800322CB800312A2DB800332C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB800342C4B535845441B2121592DB800352C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB800362C2020456944B001602DB800372CB800362A212DB800382C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800392C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB8003A2C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB8003B2C2020456944B001602020457D691844B001602DB8003C2CB8003B2A2DB8003D2C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB8003E2C4B535845441B2121592DB8003F2C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB800402C2020456944B001602DB800412CB800402A212DB800422C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800432C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB800442C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800452C2020456944B001602020457D691844B001602DB800462CB800452A2DB800472C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB800482C4B535845441B2121592DB800492C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB8004A2C2020456944B001602DB8004B2CB8004A2A212DB8004C2C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB8004D2C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB8004E2C4B20B0032650585158
+
B080441BB04044591B21212045B0C05058B0C0441B2159592DB8004F2C2020456944B001602020457D691844B001602DB800502CB8004F2A2DB800512C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB800522C4B535845441B2121592DB800532C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB800542C2020456944B001602DB800552CB800542A212DB800562C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800572C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB800582C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800592C2020456944B001602020457D691844B001602DB8005A2CB800592A2DB8005B2C4B20B003265358B0401BB000598A8A20B0032653582321B0808A8A1B8A235920B0032653582321B800C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB8005C2C4B535845441B2121592D00000000020042000004D005BD000300070043B800532BB800082FB800042FB8000810B80000D0B800002FB8000410B80003DCB8000010B80007DCB8000310B80009DC00BA0007000000562BBA0002000500562B3031331121112711211142048EB8FCE205BDFA43B8044DFBB30000000100C4000002D5059200080023B10801B80133400C0404070C04079605000A47091076C418C4D5FD39003F3FF4CD313013353E013733112311C4C39A268EC003F68A1359A6FA6E03F60000000100400000041E059D002200A6404E3604460457056B1D6E1E7A1E84018702082A085A196B197C197C1CB519050022010F041C0E1921071C19040100051F0F0F22130A351305201F7521220C217F0738166F220E270F811F38222447231076C418D4EDF4ED10F5EDE4003F3CFD3C3FED1112392F1217390111123912393911391239005D31304379401C04190C2511260B120E2800091407280119040D100A280108150A2801002B2B1010012B2B2B2B81005D36123F01363736353426232207060723363736213212151407060F01060706072115214A85C1C0813452967DB9472604B70342750128F6E37946B5896238641A030EFC29B90112706F4B35536B7D938C4B85BB76D0FEF6A3AC7A47654C3631576AAA000000010031FFD9041A
+
059A003100C4401F490C532D6529632D7529752D069626014B082B0A182B140D03F93114350D20B8012340141135107F0D0D311B3524050735310D1896274411B8014A400F0A382E6F021F2920810327023347321076C418D4EDF4ED10F5EDEDF4ED003FED3FED12392FF4FDE610ED10ED111239011112393130437940362F301926000905261D2522260600032800040308300A28011C231F28001A251828010401072800092F0728001E211B280119261B2801002B2B2B2B012B2B2B103C2B2B2B2B818181005D015D0402353316171633323635342623220607351E013332373635342623220706072334373621321615140706071E01151400230116E5BC0C2846B78EACB5A11225131C26166541729865B4452605B2406E0115DBF0472C46717FFEF2F8270117C88B3F719878947601019F03022038906B7478427AA070C8C3B98452331D1FB180CDFEFE000000000200340000042F059C0002000D005C402209020A080D010202BE12060607020601050708030106070A02750B05EF030C070403B80117B501960D08AC0AB80158B3050F470E1076C418D4F5F43CFDE4003F3FF43CFD3C1139390111123911123939872E2B047D10C50F3130011109011121350133113315231102A5FE3501CEFD8C029098D3D301FB0289FD77FE05015EB0038EFC5F9DFEA200000000010042FFDC041C0580002000BB402B4812881F02390C461357136713043A080C0D07000C0A0F0E0E75121313120E0F201213070013170A17350AB80122401A0D7F0E0E1D123A0F04043520C71D0D1107381A6F0038202247211076C418D4EDF5EDC4003FEDED3FFD12392FE4F4ED1112390111123939123939872E2B7D10C5001239011112393931301843794028181F01090226031E00280001001F20051C0728010918072801011F042800061B04280008190A2801002B2B2B012B2B103C103C2B2B8181005D5D131617163332363534262322060727132115210336373633320415140221222427FD127D4054A09AB7805D852F9C6D02E8FD9F3D322D5069C50112FBFEEDAFFEF310016D9A3B1ECC7C96A44840090303AEFE72261321FEC3CBFECAC5CC00000002005AFFDA057105E5001D001E00B1403B1B0597019605031F011F0482018705891305530803861D111115063A1D030C3A15091E021E1E190331023B1031111A20093119191F20A1216A66182B2B4EF44DED4E10F64DEDF4ED12392F003F3FED3FED12392F10ED31304379403A001C172513260E251B260B160932000D1410320112110F10071C0932000500033201010204030A180C32000F120C3200081A06320104010632012B2B2B2B01103C103C2B2B103C103C2B2B2B2B2B2B815D015D080117232E0123220011101233323736373306070621202726111037362123041E013411C221C5B2D9FEF5
+
F1EFDC733D1EC21A92AFFED7FF00AEE5ACBA01472805E5FEDABB8EA6FECFFEC5FEFEFEBFA95991E89DBD9BCD01AC0145D0E200000002009C0000052A05BD0009000A007640143701380602070117012701470158020507010202B8019B4017120606070207080301020806080A030A0A010608020302B8019BB505041A0C0708B8019B400A0900190B0CA0217670182B2B4EF43C4DFD3C4E10F63C4DFD3C11123939392F003F3F3C3F3C12393904872E2B877DC53130005D015D13330111331123011123019CEB02E6BDDFFD0FBE023A05BDFB5A04A6FA4304A5FB5B05BD0000000200B40000057805BD0009002700944012070D49014805590158056905641478050816BB01300119001B011C40422321202660127112751403121E1F141C1503211E161404261224251E0009091B071E0B02261C1B082025151F251603310F691B1A29082625270A192829D6219566182B2B4EF43C4DFD3C4E10F64DF4EDD4EDD4ED003F3C3C3FFD12392F3CFD3C3911173901111239391239395D1112392B3130015D013236353427262321110321321716151406071E011F011617161715232E012F012627262321112303478CA3723D66FE1AC702A8A86DCF6D6256570507030B122EF40A0C040C0764397AFE3BC7031C70929D391EFE0A02A1315EFD84A833237280C55429461421133C56F590311BFD8A00020060FFD504F605E5002F003000FE405E290F27232626360E3521472662267A0E7724096B08180E172502590E680EAA22030A0E3A2224220A03041C1886142F2F2B1C3A1403043A2B0930020A0E081124221F28303011182517490825281A321F25114900252F193132A0216A89182B2B4EF44DEDF4ED4E10F64DEDF4ED12392F1211393912113939003F3FED3FED12392F10ED111217392EFD335D7131304379404D282E111F0008022602262D2506251A26032C002B002D2E032C002B00052A082B011D131F2B001B15182B011918012D042B0009270B2B01250B012E042B000729042B001E121C2B0119161C2B01002B2B2B2B10102B2B01103C2B2B2B2B103C2B2B2B2B2B2B818181005D0116171633323736353427262F012627263534243332041523262726232206151417161F01161716151404232027263701011E073463FA705CB24B4CA2C7C3518C0112FBE70143BB0F315BDAB09A5A3BD0CE95518CFE9DEBFEEE9B9B03024D01DA7D4E92203EA0783332252D2C355CB7C6FEDFF5763F7394626C3220302F223B67C4F4D28C8BEE040B00000100340000053605BD0006008F40449001A0010240015401021601017805E6010267046805880403192802251203030400251206060501050203060300020504080817171A0402039E0500019E0619078E5E182B194E10F4184DFD3939FD3939194E456544E618003F3C3F173C123901874D2E
+
2B872E182B4B5279400C01020100030401000102060587087D10C487087D10C43130015D005D717172090233012301011001A601A1DFFDE8D3FDE905BDFB1D04E3FA4305BD00000000020038FFDA03ED05C2000B001D00774032370E470E570EA704A91B05250814020F1D1000081D1D07130A021D170B052E132E102911121A1F0B271A191E1F87217242182B2B4EF44DED4E10F63C4DFDE4E4003FED3F3FED3F1139113931304379401A181C090A000101180B2600091C0B260000190226000A1B0826012B2B012B2B818181005D1216333236353426232206150017161711331123350E0123220035341233F692A17DA1A67A88A9018A53303DADA23FAC6FB3FEFAEFDE015FE8D7C9CBC3D0CA0237341E4B021DFA3E956358012DFAEA015700030048FFDA041A0449001C00240025010C40799708991AA71F03050E020F0514150E120F1514400C401408291A014B0BB603C701C603C71BD808D909D61FD823E817E8230BC711C712025C080521240F9A161D243906070716211D1C070A1D160B2507971CA71CB71CD71C0425160F251C05190A0C07110E270F1D27051A27242E072719192627D421A65D182B2B4EF44DFDE44E10F64DEDD4FD391239391112393912392F5D003F3FED3FED12392F3CFD3C10ED1112393130437940460023040503050205010504061F26111012101310141004060C25221B24260020001D26011E1D09170726000B150E26010D0E231A2126011E0521260108180A26000D100A2600002B2B2B2B01103C2B2B103C2B2B2B2A2B2A8101715D00715D5D00161716171615211E013332373637330E01070607062322001110003301262726232206070102B4D638361210FCEF0590978D543014B1074F3152794152C8FEEA0118E2011F0B284AAD7CA805012304476B55516C4AA2A3C55D36473B912E501C100123010601020142FE26754682B38A01DC0000000003003BFFD90421044E000C0018001900904033980896109916A504A808A610A916B808C808D704E50EE9140C3A08061D18070C1D120B190719191502270F1A1B092715191A1BB80109B321725D182B2B4EF44DED4E10F64DED12392F003F3FED3FED31304379402C001704260B1309260000110226010717092600050D0226010A140C260001100C26000816062601030E0626012B2B2B2B012B2B2B2B2B81005D241235342726232206151416331200111002212200351000330702E085304CBAA59696A3D6011EFCFEF7DDFEFC0112E70674010FA6965E94FCB2ABE403DAFEECFEF4FEFDFEAE012BFC010E014005000100890000029204470011004F40262703260D37034704040E0810020E0911090C270805070006110A081A13012E10291100191213B80145B321627E182B2B4EF43C4DFDE44E10E6003F3F4D3FC4FDC41112393901111239313000
+
5D1333153E0133321617152E0123220615112389AB15A46B05181D101B108892B4042FB9369B0203BE0302AF72FD980000010017FFEF0209055A00180052B50D2E0AC00E01B8013F40250416391703060E0A111A17171A0301062900150E150F031F030203FC1619191AFC21677D182B2B4EF44DFD5D39C42F3CFD3C104E456544E6002F3F3F3C4DFD3CED10FDE431301333113315231114171633323637150E012322263511233533A8B6ABAB2615310D1E141F43277E5A9191055AFED593FD4538130B01028E0908816702C59300000001000B000003EA042F00060102402E4201C5010200670068026803670687048805A700A802084700480245044A0586048905C704C80508492873280708B80109B321677E182B2B4B5279B8FF70B40105042004B80183B703036D1202010205B80183401E06066D120000010506040301010502030603000605040A0817171A03AF02BA018400000184B301AF0619194EF4184DFDE0E0FD194E456544E618003F3C3F173C1239011112391239074D2E2B104EE44D072E2B104EE44D2B4B51794025022912030304002912060605010502030603000605040A0817171A020403AF050001AF0619194EF4184DFD3939FD3939194E456544E618003F3C3F173C12390507102B07102B313001715D005D7113090133012301DC011E012BC5FE6CC0FE75042FFC980368FBD1042F0002002F0000044205930007000B00001335211521112311013521152F0413FE4FB2FE50041303A6A8A8FC5A03A60146A7A70000000100000000000037422DFA5F0F3CF500110800000000005F4D8F0000000000CFF2EEF7F865FC270B9108F9000000090001000000000000000100000629FE2900000C01F865FCED0B9100010000000000000000000000000000001205120042047300C40473004004730031047300340473004205C7005A05C7009C05C700B4055600600556003404730038047300480473003B02AA0089023900170400000B0473002F00000036005C00E8019401E202760306035C03E604B20510057C064606BE0704075407EA0804000000010000001200920009006B0007000200100010005D000007E80A1D00040001B800532BB800492BB8003F2BB800352BB8002B2B4118008001A6009001A600A001A600030069018B0079018B0089018B0099018B00040089018B0099018B00A9018B00B9018BB2040840BA0179001A014A400B041F5414191F180A0B1FD2B80106B49E1FD918E3BB0119000D00E10119B20D0009410A01A0019F0064001F01A50025017A00480028019AB3296C1F60410A01A9007001A9008001A90003008001A9000101A9B21E321FBE012C00250401001F0126001E0401B61FE7312D1FE531B80201B21FC227B80401B21FC11EB80201400F1FC01D9E1FBF1D671FBE1D671FAB27B804
+
01B21FAA29B80401B61FA91D6C1F931EB8019AB21F921DB80101B21F911DB80101B21F751DB80201B61F6D29961F6431B8019AB21F4C96B802ABB21F391DB80156400B1F3638211F351DE41F2F27B80801400B1F2D1D4C1F2A31CD1F241DB802ABB21F201EB8012540111F1C1D931F3A1D4C1F1E1D45273A1D4527BB01AA019B002A019BB2254A1FBA019B0025017AB349293896B8017BB348283125B8017A403648289629482725294C1F252946272729482756C80784075B07410732072B072807260721071B071408120810080E080C080A08080807B801ACB23F1F06BB01AB003F001F01ABB308060805B801AEB23F1F04BB01AD003F001F01ADB70804080208000814B8FFE0B40000010014B801ABB41000000100B801ABB606100000010006B801ADB300000100B801AD401F04000001000410000001001002000001000200000001000002010802004A00B0018DB806008516763F183F123E113946443E113946443E113946443E113946443E113946443E11394660443E11394660443E11394660442B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B18011DB0964B5358B0AA1D59B0324B5358B0FF1D592B2B2B2B2B2B2B2B182B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B74752B2B2B65422B2B4B5279B376706A66456523456023456560234560B08B766818B080622020B16A704565234520B003266062636820B003266165B070236544B06A234420B176664565234520B003266062636820B003266165B066236544B0762344B10066455458B166406544B27640764523614459B36242725D456523456023456560234560B089766818B080622020B172424565234520B003266062636820B003266165B042236544B072234420B1625D4565234520B003266062636820B003266165B05D236544B0622344B1005D455458B15D406544B262406245236144592B2B2B2B456953427374B8019A2045694B20B02853B049515A58B020615944B801A6204569447500
+
00>] def
+
/CharStrings 18 dict dup begin
+
/.notdef 0 def
+/one 1 def
+/two 2 def
+/three 3 def
+/four 4 def
+/five 5 def
+/C 6 def
+/N 7 def
+/R 8 def
+/S 9 def
+/V 10 def
+/d 11 def
+/e 12 def
+/o 13 def
+/r 14 def
+/t 15 def
+/v 16 def
+/u20B8 17 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
+
/FontType 1 def
+
/FontMatrix [ 0.00048828125 0 0 0.00048828125 0 0 ] def
+
/FontBBox{-1947 -985 2961 2297}def
+
/UniqueID 4142842 def
+
currentdict currentfile eexec
+
54544758EC884CF30C3CD503CEDBFF3839C47C3C3333173232E3FDBFF439491DB843E1924E63AA7726BBB0485AB56D93D8C0906F647A47162891E73FFC2A9873C4B1EAC5EEBDFFC4D06084FBD84139DF4583C6E259D10699944D1068C9C45667DCCCFB9B7EA01B606435EDCBD273ABAC093D14085CCBAC149BD7382E842CFE0D7FE4FD2EF589A2471F6074A80A8B675C2F7A50D63AC1EF90D787BADD11633CB01CF6EE3B37AAF9078A69AC4740E9B6525D78BBD839551A1CB80DB8682FA5E87591BBD6EE8B946063A2A58D9CA3685AB305495DC5FB5747EB8A9A059C4976C0FE4EEAB1D56FF47F1E9664ED9F4A7DAB763AF92B2F6CF2FA7DEC24710E0B9096E30F772BA7FEA9BDBE496C42ED2CEB58F54E80BDF57CE7B4DB6CCFE7182F43BF93CCA0767AF95D62C5D2C3DC6AE1E6D139F51A2C63432117F1714C5566572EE9967A715420ABDCD1D7BD74F8450B89965FCC81C6ACA565C5F3CCF91D430D1F953E4F1A645300A98DD8C47CD64555F08F422340A85404EAE0D3229C4F9336B9470CACBD6BBF3395104750A915CC6EAAC197668267B8C62D2764C8CD69FD937CA3C924D997A0EDE7964BEB9EA2F92EF70C5E5DA0AA5567765E71F2B911B3C5586B741EEB93F3C73016EC16BFF283758900903D203992EFC8BAFAF13579C602F38C91BC64A62485D7C863002D39D4194FF17CC8AA420E752C449BD1094F4D1EC7207B0530DDF71009828522A260EFA1903C8C21148B5AEA74F5F54E03FE286DAB2E21B3D5193F167FB7002A92B0E61DF27B872185B9CE455AEE3573114DE0A7F842BD15C35538CEEEA0A91D15A573B454D7002BBAC2DFC0EC90ECED2EAC22E56D65CE7507C2C5D798E304B92A85B562FDB26BFF0692D4224B9E412001E0CC02AFBFA037FDCAC19B7646FA85FC1966F4EA7FDB6F253E44A8E94089891FBDC422798C7B2154CEBD790E4CA7B22EAE960C3C89C436CBB03009017C4578F13A20CA00F3338A01823BF50C6865CA4DBC68EBAB6E8BC24CD23445322640799558CBB5E28C7B278D2B1C578D4BBB1E546AD41F477E55844D66A304B6DD5C91F5BDFE59A7318FD8F8CB2D85C3041E23ED9B79A09F81C081E3A65294681A8AA68EDFF36C3EE913955919279607003612DB3D5D3EFD3D307B9A2C188818937949112026FC3875C99E849CCE98A9CA85E529BA05DB277252D87AEE94B613809D807644C6C400AAB5E9D049471F78819F2605D79F6BAD25078913D4B68C74648B2C34D17F75D31B9128928A8457A6B6D25E89CF447CAC4F0154AE85D49D87471D86F43C4D2227D4C68ED6C7937A0785B56746CD9C49F6114D941971FCF38DD332D24652761CB82F8B96A834A9AC80CA8FE9FFFEDB9D8A5BAF6BD728E13DC809CD5E1DE02FF5761E911FB79D5F2F8D113324A865295A97830242E00A93ED8B863712BE1AA7618DDAEC
+
3C14308E2F93DE88C02E5DD565F3699B0E916CC237E3FD94AE20722046FAF3CA522D24BB1D5B532B3D514C1D52198ECFE61F4D58F31968BEFF553A53F75ED3DC508DB908D0BC9B9A7CA49A527D3F1799F9EDE1ABCBC4215DFFE46A5A47485A139FD6327CC654E8475A72E1E80060601B0A18E9B10F25217A941832F2CAA7971C95F95A1D457639ACD73ED1E992C25C5E2D574FBF81F8A9AF12F338E3B1F5A11082F1E02433A03E49CD890BF1B8B0C0A7DC7F38CBF1F1ADA40A5AE2E320B6C4351F9FAD13EC15630FF63BA6EB6CFB50FC44A974849E71C076353F11D6B004B9085B38A5A1DD9A86A3AABC7697952DB9B8F0E3B260E68604F9F5B922AAE63C0C84C22783B4AE7A12AED0EE07AB6412CF8A5CABC49713EF171E19EA5D0AE98C3C18722D36A5A7D63D11834FED9667F42EC9AEBCF853A5E0DC5AECED9B06395327C9D13A1C49B2E9EB429E8D0DC011E0FB0CE4011F61A2677446ABF75F0108371B2E3411BF0CE7D0747834E2CD66B41A4B696D36C768FA32EC95EA9A525BCE7DBD0964E29AB167BCFBE052EA176F3C61936F92EEE7EA7EBAD6B25AE42F700430CFA7BAEE8FBDD30E82D1056A4FA3A7DE945570A0D5C88DA73A906656862016AC7C33BFABB92CEDB851747894F9F5C701B99B9EAE99A2949AF5B20F1817919935FA08E633B02B1DEB97A57F623D9C9C34673BA6C8EF5E7B3774F70BCFF28B76A7FE4BDBEF36FDB431FFA11EFF8465216B5C0A5BEB15E49BA4821408CD804688DE2E257F7349E501A6ED7B499C201D8C8CF13A8559417C5202D672E817C46D7163725657FD6D3F05CA65D8B93872D7E2C635D7469A18E2386067BAB82F0483032090BC05D461C39DF79AC3C8673249A58CB8EAD19DBF8B74455875A422A5E00DB6764818E9315F739AF79C540475BA1234898E137287260DDA2DC1E229A4F22A55DDB3A528C6D4158FC1DDE35F0819249B683CCD562F16840B28B9171C983F117FEA965E980C955F6C0B94CEC84C8CC606757C193C1F65A684EDA5D34210240B0A755604C827B1084FD1C3847970C62C4ED4092B577838DD5F17C47C4316562CBB324C9048EB1577F483214DBF779A712915CB7ED79C8204388F4FBA31AA36911191BD2992DB0D0FF7A7BF2C4922DA3CB06FDB8D8F340A3D74C41E13D004BD8FCC754C19208519E5314C2FA5356B0D457F647D6B68B20A7ADD2454C6ACAEEB584C680C782AF300A30A8E095A4D0F048A6083D82B71E42C4F8C000584F53B9018469DF23738326FD68496BAE9A0DA33D9150C2C7B4D52EAA772CB07D9D60628F0F3BC91F416C5FB1BCE33D81012C8D7378F0D12242002C3B64B55819F0169871336AEF43F2B3F50CC07C0413987AA4EF2CBC8F503389F92E3CF4129AEF9F6A70BA9CF0B0ADFF04817B4BBD081B0D40E3AF7B6112FC4F1D2B3EC203799604F456569CF63
+
6A3ED9BF0170B03700BA23182D17B8C00D3EAC2015899B60DEF00BE8E5857C3FAA441FC1543C9D8282DF0B9E5968B6CDC0C87784E9FB3C5142CB677BE5446C6AE4E273D209D33546CDF3940543EF624E195BD1E8FF4C31E8FCD2A7346F02F5CF405A9D8F44B16FE5B81939F146DA0F085CCEB8D54D34FE8F304A2E533E50CEF6A9EB383210B5A791A184C418179184E520A4FA5BFFFCFDEC432A4A62ED9EBE038F2F23583E561BBE4D08251E46CB68AABFE6196EFC2AC8604397E4E2BC29B52BE8EC109AE4446D41921A92B3596BA025BF1D0F4D0D827A39E50A570FDF17E98DFDEDA22A80AEC76A6302FEFAF85FFF667DD3F1129AEC4E88949902F990BC8C9006542830605ADAC34C4B288F756BA4227C3BEE3475455797B09468BFD938A9ADDD8B44094B9F6D6E2ADC7E546FE04913EA535C20343067510EA5869AABE1615A13C67A9373EEBEFBCF1A018F195EBAED5A11188EC7515858B99D365F3ACE59D2435F7DD4A084BF3925DDB4472F207DA0D12BF96A5EB95F197E03D02A05204BE0E080B9899B24718AAECD642E911CAE13D8168211D9F94E52A46241B01309BEF39A330DADA4CE6BE7DA3C5C170F15EE847C074480D50FDE7AE3FB339B45A5AA163621E24DCD7241CFBC420A8C2DBD74DBDB0314A740981D2A9FA3993CCBFC20D5DCE5BF8F36495BD4544064E99E6CE1867D2FE73E388E7FDFF4166AE2C19DB785ED976744745A85AB3F11320481CDE88EC31A9BB188079763B8D2E1BA5FB6ED30C2CC42E38455BA2B715E6855D982B2A25AB29891B679E06C8ECE29D6ED436BD36EA013EBA05139E4B72412BFFECD5E34D8F0756C2944E290F372440E821F57C2E99C273D66A8AD17CFACA051E58EBA8DF150A93F3EA125D61B52A029477EDE5A21FA4106FEC0F8D5DBC3AEDA51C6E69D6047FFB617554BB6216ACDEBB306E0F96430587BFF65F0B2D574F0344D89A78C84287FB8937350489E390AE66FC60F0C941AE47BE3AA93325CA85BEF5AFC85D282AFAE5C86A73050CD4026008365B52F1A06E9B1E27029B48BE9E59BDD69D74BB8EBB8A50637EE19CFE6E5153B9631CA6E6EF41F608E320A56B667F4E563D8BB2601652D60D56E765C09403C38882074FD50E3955A55D0957AC79B2116C1F641A180EE6D8A7E4680A84A3AF71605AF304FD2AEB21CAC57E60BBCE9AE30A99393C01CC82F318A0086952CF0DCBC1C3FC9762CC5B0B8385224C3A74075A7B452F88F8B5BF8A8378979EAFC5D924B2F6BB503ECEDE843CC5D351778A80EEEBBDFB576141C3DC30423304C14AE538FC67659D5D6165894C8C5CDA4E40B660D3DD9FC1616C2093775CF77BC9C160DC4F0976C2DC345E95A76F54577CF24E3E58377274A169F56EAA2D6796B5613D76DA257F92762882CA03A3B226DC1BCE706EF94FC811CC5B4F082CF495B75D0D5D3B18251
+
86BCCE11C3D5
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
0000000000000000000000000000000000000000000000000000000000000000
+
cleartomark end
+
%APLT1End
+
%RBIEndFontSubset
+/Helvetica cguidfix
+/F1.1/Helvetica 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
+[ /CIEBasedA 5 dict dup begin /WhitePoint [ 0.9505 1.0000 1.0891 ] def 
+/DecodeA { { 1.8008  exp } bind  exec} bind 
+def 
+/MatrixA [ 0.9642 1.0000 0.8249 ] def 
+/RangeLMN [ 0.0 2.0000 0.0 2.0000 0.0 2.0000 ] def 
+/DecodeLMN [ { 0.9857  mul} bind { 1.0000  mul} bind { 1.3202  mul} bind ] def 
+end ] /Cs2 exch/ColorSpace dr pop
+%%EndPageSetup
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+q
+0 0 303 257 rc
+-170 366 m
+388.99997 366 l
+388.99997 -417 l
+-170 -417 l
+h
+-170 366 m
+f
+174.86752 237.1534 m
+186.08041 225.94464 186.08041 207.77165 174.86752 196.5629 c
+163.65469 185.35406 145.47513 185.35406 134.2623 196.5629 c
+123.04942 207.77165 123.04942 225.94464 134.2623 237.1534 c
+145.47513 248.36223 163.65469 248.36223 174.86752 237.1534 c
+f
+1 J
+1 j
+0 0 0 sc
+1 0 0 -1 -170 366 cm
+344.86752 128.8466 m
+356.08041 140.05536 356.08041 158.22835 344.86752 169.4371 c
+333.65469 180.64594 315.47513 180.64594 304.2623 169.4371 c
+293.04941 158.22835 293.04941 140.05536 304.2623 128.8466 c
+315.47513 117.63778 333.65469 117.63778 344.86752 128.8466 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 154.56491 216.85814 cm
+/F1.1[ 12 0 0 -12 0 0]sf
+-12.673828 -3 m
+(!""#)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+-14.34375 11 m
+($"%&)[ 8.666016 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+108.12806 148.22321 m
+119.34095 137.01443 119.34095 118.84145 108.12806 107.63269 c
+96.915237 96.423874 78.735664 96.423874 67.522835 107.63269 c
+56.309952 118.84145 56.309952 137.01443 67.522835 148.22321 c
+78.735664 159.43202 96.915237 159.43202 108.12806 148.22321 c
+f
+0 0 0 sc
+1 0 0 -1 -170 366 cm
+278.12805 217.77679 m
+289.34094 228.98557 289.34094 247.15854 278.12805 258.36731 c
+266.91522 269.57614 248.73566 269.57614 237.52284 258.36731 c
+226.30995 247.15854 226.30995 228.98557 237.52284 217.77679 c
+248.73566 206.56798 266.91522 206.56798 278.12805 217.77679 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 87.825447 127.92795 cm
+-17.680664 4 m
+($"%&')[ 8.666016 6.673828 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+241.93803 148.22321 m
+253.15092 137.01443 253.15092 118.84145 241.93803 107.63269 c
+230.7252 96.423874 212.54564 96.423874 201.33281 107.63269 c
+190.11993 118.84145 190.11993 137.01443 201.33281 148.22321 c
+212.54564 159.43202 230.7252 159.43202 241.93803 148.22321 c
+f
+0 0 0 sc
+1 0 0 -1 -170 366 cm
+411.93805 217.77679 m
+423.15091 228.98557 423.15091 247.15854 411.93805 258.36731 c
+400.72522 269.57614 382.54565 269.57614 371.33282 258.36731 c
+360.11993 247.15854 360.11993 228.98557 371.33282 217.77679 c
+382.54565 206.56798 400.72522 206.56798 411.93805 217.77679 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 221.63542 127.92795 cm
+-17.680664 4 m
+($"%&\()[ 8.666016 6.673828 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+60.454872 60.037121 m
+71.667755 48.828358 71.667755 30.655375 60.454872 19.446609 c
+49.242043 8.2377882 31.062473 8.2377882 19.849646 19.446609 c
+8.6367607 30.655375 8.6367607 48.828358 19.849646 60.037121 c
+31.062473 71.245941 49.242043 71.245941 60.454872 60.037121 c
+f
+0 0 0 sc
+1 0 0 -1 -170 366 cm
+230.45486 305.96289 m
+241.66776 317.17163 241.66776 335.34464 230.45486 346.55338 c
+219.24205 357.76221 201.06247 357.76221 189.84964 346.55338 c
+178.63676 335.34464 178.63676 317.17163 189.84964 305.96289 c
+201.06247 294.75406 219.24205 294.75406 230.45486 305.96289 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 40.15226 39.741863 cm
+-17.680664 4 m
+($"%&\))[ 8.666016 6.673828 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+143.88295 60.037121 m
+155.09584 48.828358 155.09584 30.655375 143.88295 19.446609 c
+132.67012 8.2377882 114.49055 8.2377882 103.27773 19.446609 c
+92.064842 30.655375 92.064842 48.828358 103.27773 60.037121 c
+114.49055 71.245941 132.67012 71.245941 143.88295 60.037121 c
+f
+0 0 0 sc
+1 0 0 -1 -170 366 cm
+313.88297 305.96289 m
+325.09583 317.17163 325.09583 335.34464 313.88297 346.55338 c
+302.67014 357.76221 284.49057 357.76221 273.27774 346.55338 c
+262.06485 335.34464 262.06485 317.17163 273.27774 305.96289 c
+284.49057 294.75406 302.67014 294.75406 313.88297 305.96289 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 123.58035 39.741863 cm
+-17.680664 4 m
+($"%&*)[ 8.666016 6.673828 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+213.22578 60.037121 m
+224.43866 48.828358 224.43866 30.655375 213.22578 19.446609 c
+202.01295 8.2377882 183.83337 8.2377882 172.62054 19.446609 c
+161.40767 30.655375 161.40767 48.828358 172.62054 60.037121 c
+183.83337 71.245941 202.01295 71.245941 213.22578 60.037121 c
+f
+0 0 0 sc
+1 0 0 -1 -170 366 cm
+383.22577 305.96289 m
+394.43866 317.17163 394.43866 335.34464 383.22577 346.55338 c
+372.01294 357.76221 353.83337 357.76221 342.62054 346.55338 c
+331.40765 335.34464 331.40765 317.17163 342.62054 305.96289 c
+353.83337 294.75406 372.01294 294.75406 383.22577 305.96289 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 192.92316 39.741863 cm
+-17.680664 4 m
+($"%&+)[ 8.666016 6.673828 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+283.11035 237.1534 m
+294.32321 225.94464 294.32321 207.77165 283.11035 196.5629 c
+271.89752 185.35406 253.71794 185.35406 242.50511 196.5629 c
+231.29224 207.77165 231.29224 225.94464 242.50511 237.1534 c
+253.71794 248.36223 271.89752 248.36223 283.11035 237.1534 c
+f
+0 0 0 sc
+1 0 0 -1 -170 366 cm
+453.11035 128.8466 m
+464.32321 140.05536 464.32321 158.22835 453.11035 169.4371 c
+441.89752 180.64594 423.71796 180.64594 412.50513 169.4371 c
+401.29224 158.22835 401.29224 140.05536 412.50513 128.8466 c
+423.71796 117.63778 441.89752 117.63778 453.11035 128.8466 c
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 262.80774 216.85814 cm
+-12.667969 -3 m
+(,$-)[ 8.003906 8.666016 0.000000 ] xS
+-17.671875 11 m
+(.&/0&/)[ 8.003906 6.673828 3.996094 6.000000 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+0 0 0 sc
+1 0 0 -1 -170 366 cm
+307.33249 172.10403 m
+275.05789 215.10986 l
+S
+341.85184 172.06296 m
+374.34848 215.15094 l
+S
+244.17142 263.32935 m
+223.80629 301.00082 l
+S
+268.61319 264.67902 m
+282.7926 299.65115 l
+S
+382.74738 265.37054 m
+371.81122 298.95963 l
+S
+353.27719 149.5 m
+404.09546 149.5 l
+S
+ep
+end
+%%Trailer
+%%EOF
--- a/report.aux	Tue Oct 28 17:59:44 2014 +0900
+++ b/report.aux	Wed Oct 29 11:12:27 2014 +0900
@@ -1,22 +1,20 @@
 \relax 
 \@writefile{toc}{\contentsline {section}{\numberline {1}はじめに}{1}}
-\@writefile{toc}{\contentsline {section}{\numberline {2}VNCとは}{1}}
-\@writefile{toc}{\contentsline {section}{\numberline {3}TreeVNCとは}{1}}
-\newlabel{fig:figure1}{{3}{1}}
+\newlabel{fig:figure1}{{1}{1}}
 \@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces TreeVNCの図}}{1}}
-\@writefile{toc}{\contentsline {section}{\numberline {4}TreeVNCのデバッグ}{1}}
+\@writefile{toc}{\contentsline {section}{\numberline {2}VNC}{1}}
+\@writefile{toc}{\contentsline {section}{\numberline {3}TreeVNC}{1}}
+\@writefile{toc}{\contentsline {section}{\numberline {4}TreeVNCのリファクタリング}{1}}
 \@writefile{toc}{\contentsline {subsection}{\numberline {4.1}port番号の変更}{1}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}Treeの構成の変更}{1}}
 \bibcite{1}{1}
+\bibcite{2}{2}
+\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}Treeの構成の変更}{2}}
 \@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces マルチネットワークに対応したTreeVNCの図}}{2}}
 \newlabel{fig:figure2}{{2}{2}}
 \@writefile{toc}{\contentsline {subsection}{\numberline {4.3}ホスト切り替え時の挙動の修正}{2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {4.4}子nodeの再接続時の挙動の修正}{2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {4.5}CheckDelayの再実装}{2}}
 \@writefile{toc}{\contentsline {section}{\numberline {5}まとめ}{2}}
 \@writefile{toc}{\contentsline {section}{\numberline {6}今後の課題}{2}}
 \@writefile{toc}{\contentsline {subsection}{\numberline {6.1}画像データの遅延}{2}}
 \@writefile{toc}{\contentsline {subsection}{\numberline {6.2}エラーハンドリング}{2}}
 \@writefile{toc}{\contentsline {subsection}{\numberline {6.3}音声データの共有}{2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {6.4}解像度の変更}{2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {6.5}画面の大きさを共有する側で変更できる}{2}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {6.4}画面の大きさをホスト側で変更できる}{2}}
Binary file report.dvi has changed
--- a/report.log	Tue Oct 28 17:59:44 2014 +0900
+++ b/report.log	Wed Oct 29 11:12:27 2014 +0900
@@ -1,4 +1,4 @@
-This is e-pTeX, Version 3.14159265-p3.5-130605-2.6 (utf8.euc) (TeX Live 2014) (preloaded format=platex 2014.10.23)  28 OCT 2014 17:58
+This is e-pTeX, Version 3.14159265-p3.5-130605-2.6 (utf8.euc) (TeX Live 2014) (preloaded format=platex 2014.10.23)  29 OCT 2014 11:11
 entering extended mode
  restricted \write18 enabled.
  %&-line parsing enabled.
@@ -143,19 +143,67 @@
 (Font)              Font shape `JT1/gt/m/n' tried instead on input line 27.
 LaTeX Font Info:    Font shape `JY1/mc/bx/n' in size <14.4> not available
 (Font)              Font shape `JY1/gt/m/n' tried instead on input line 27.
-File: pic/TreeVNC.pdf Graphic file (type eps)
- <pic/TreeVNC.pdf>
-
-LaTeX Warning: `!h' float specifier changed to `!ht'.
+File: pic/TreeVNC.eps Graphic file (type eps)
+ <pic/TreeVNC.eps>
+Overfull \hbox (3.57736pt too wide) in paragraph at lines 53--54
+ [] 
+ []
 
 LaTeX Font Info:    Font shape `JT1/mc/bx/n' in size <12> not available
-(Font)              Font shape `JT1/gt/m/n' tried instead on input line 75.
+(Font)              Font shape `JT1/gt/m/n' tried instead on input line 77.
 LaTeX Font Info:    Font shape `JY1/mc/bx/n' in size <12> not available
-(Font)              Font shape `JY1/gt/m/n' tried instead on input line 75.
-File: pic/MultiNetworkTree.pdf Graphic file (type eps)
-<pic/MultiNetworkTree.pdf>
+(Font)              Font shape `JY1/gt/m/n' tried instead on input line 77.
+
+Underfull \hbox (badness 10000) in paragraph at lines 92--106
+[]\JY1/mc/m/n/10 子 \OT1/cmr/m/n/10 node \JY1/mc/m/n/10 が最初に \OT1/cmr/m/n/1
+0 root \JY1/mc/m/n/10 へと通信を行う \OT1/cmr/m/n/10 mes-sage
+ []
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 92--106
+\OT1/cmr/m/n/10 (FIND[]ROOT\JY1/mc/m/n/10 、 \OT1/cmr/m/n/10 FIND[]ROOT[]REPLY)
+\JY1/mc/m/n/10 、 \OT1/cmr/m/n/10 node \JY1/mc/m/n/10 間の
+ []
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 92--106
+\JY1/mc/m/n/10 接続を行う \OT1/cmr/m/n/10 mes-sage (CON-NECT[]TO[]AS[]LEADER\JY
+1/mc/m/n/10 、
+ []
+
+
+Underfull \hbox (badness 2376) in paragraph at lines 92--106
+\OT1/cmr/m/n/10 CON-NECT[]TO)\JY1/mc/m/n/10 、 どの \OT1/cmr/m/n/10 node \JY1/m
+c/m/n/10 と接続するかを知らせる
+ []
+
 
-LaTeX Warning: `!h' float specifier changed to `!ht'.
+Underfull \hbox (badness 1057) in paragraph at lines 92--106
+\OT1/cmr/m/n/10 mes-sage (WHERE[]TO[]CONNECT)\JY1/mc/m/n/10 、 親 \OT1/cmr/m/n/
+10 node \JY1/mc/m/n/10 との接続
+ []
+
+
+Underfull \hbox (badness 1418) in paragraph at lines 92--106
+\JY1/mc/m/n/10 しい \OT1/cmr/m/n/10 node \JY1/mc/m/n/10 が接続した場合の \OT1/c
+mr/m/n/10 mes-sage (NEW[]NODE)\JY1/mc/m/n/10 、
+ []
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 92--106
+\JY1/mc/m/n/10 クライアントが画面共有ボタンを押した際の \OT1/cmr/m/n/10 mes-
+ []
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 92--106
+\OT1/cmr/m/n/10 sage (SERVER[]CHANGE[]REQUEST)\JY1/mc/m/n/10 、 \OT1/cmr/m/n/10
+ root \JY1/mc/m/n/10 と \OT1/cmr/m/n/10 node
+ []
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 92--106
+\JY1/mc/m/n/10 間の通信における遅延を計測するための \OT1/cmr/m/n/10 mes-sage
+ []
 
 File: pic/emblem-bitmap.pdf Graphic file (type eps)
 <pic/emblem-bitmap.pdf>
@@ -168,14 +216,21 @@
 [1
 
 
-] [2] (./report.aux) ) 
+]
+File: pic/MultiNetworkTree.eps Graphic file (type eps)
+ <pic/MultiNetworkTree.eps>
+Overfull \hbox (3.57736pt too wide) in paragraph at lines 127--128
+ [] 
+ []
+
+[2] (./report.aux) ) 
 Here is how much of TeX's memory you used:
- 844 strings out of 493807
- 9494 string characters out of 6151950
+ 849 strings out of 493807
+ 9540 string characters out of 6151950
  73447 words of memory out of 5000000
- 4352 multiletter control sequences out of 15000+600000
- 13408 words of font info for 52 fonts, out of 8000000 for 9000
+ 4355 multiletter control sequences out of 15000+600000
+ 13576 words of font info for 53 fonts, out of 8000000 for 9000
  929 hyphenation exceptions out of 8191
- 25i,15n,43p,317b,366s stack positions out of 5000i,500n,10000p,200000b,80000s
+ 25i,16n,43p,250b,366s stack positions out of 5000i,500n,10000p,200000b,80000s
 
-Output written on report.dvi (2 pages, 12660 bytes).
+Output written on report.dvi (2 pages, 12668 bytes).
Binary file report.pdf has changed
--- a/report.tex	Tue Oct 28 17:59:44 2014 +0900
+++ b/report.tex	Wed Oct 29 11:12:27 2014 +0900
@@ -18,7 +18,7 @@
 \pagestyle{empty}
 
 \begin{document}
-\title{授業やゼミ向けの画面共有システムTreeVNCの設計と実装}
+\title{授業やゼミ向けの画面共有システムTreeVNCの機能拡張}
 \author{115747H 大城美和 {}{} 指導教員 : 河野真治}
 \date{}
 \maketitle
@@ -26,83 +26,105 @@
 
 \section{はじめに}
 
-% TreeVNCが作られた理由
-普段授業を行う際、プロジェクタを使用し授業を進めることが多い。この場合、後ろの席から見えにくく、不便に感じる。そこで、VNCを使用し手元のパソコンに画面を出力することによって、この問題は解消される。
-従来の画面共有システムVNCでは、多人数で接続すると画像データ提供側にアクセスが集中し、処理性能が低下してしまい授業の進行についていかなくなってしまう。画面表示の切り替えの際も、VNCを一度切断し、発表者の画面に接続をし直す必要が出てくる。
-
-% 先行研究
-本研究室では、授業やゼミ向けの画面共有システムであるTreeVNCの開発を行っている。TreeVNCは、クライアントをツリー状に接続させ、その上から順番にデータを流していくという方法を取り、アクセスを分散させ処理性能の低下を防いでいる。画面を切り替える際もボタンひとつで済む様に設計されていて、再接続をする必要がない。
-
-% 現在のTreeVNCの問題
-% 新たに実装を行うとかいうことを書いていく
-本研究では、プレゼンテーションを快適に聴講できること、参加者同士が充分なコミュニケーションを取れることを目的として、TreeVNCに新たな機能の実装を行う。
-
-
-
-\section{VNCとは}
-VNC(Virtual Network Computing)は、RFBプロトコルを使用し遠隔操作を行うリモートデスクトップソフトである。VNCはサーバ側とクライアント(ビューア)側に分かれていて、サーバを起動し、クライアントがサーバに接続を行い遠隔操作を可能にする。
-
+% 目的を先に書く
+本研究では、
+ゼミや講義の質を高め、快適にプレゼンテーションを聴講でき、
+参加者同士が充分なコミュニケーションを取れることを目的としている。
+%TreeVNCに新たな機能の実装を行う。
+本研究室では、TreeVNCという画面共有システムを開発している。
+TreeVNCに新たな機能の実装を行っていく。
 
-\section{TreeVNCとは}
-TreeVNCは、TightVNCのjava版のビューアを元に
-作成された画面共有システムである。
-従来のVNCとは違って、接続に来たクライアント
-をツリー状に接続させ、上からデータを流していく。
-この方法を使用しアクセスを分散させ、
-多人数でも性能を低下せずに、画面共有を行うことができる。
-接続しているクライアントがボタンひとつで
-ホストになることができ、画面切り替えのために
-再接続する必要がない。
+% TreeVNCの負荷分散の話
+TreeVNCは、接続しに来たクライアントをバイナリツリー状に接続する。
+多人数で使用する場合でも、各nodeに最大2台分のクライアントしか接続されない。
+従来のVNCの場合、rootに多人数分のクライアントが接続される。
+TreeVNCとVNCとでは、配信する画像データをコピーする回数が違う。
+TreeVNCは、rootへの負担を各nodeに分散するため、
+処理性能の低下を防いでいる。
 
-\begin{figure}[!h]
+% 画面共有ボタンの話
+ゼミで画面共有を行う場合、発表者が頻繁に入れ替わる。
+プロジェクタを使用している場合、
+入れ替えの度にケーブルを挿し直す必要がある。
+TreeVNCには、画面共有ボタンが付いており、
+発表者はそれを押すことによって、画面を切り替えをスムーズに行える。
+\begin{figure}[htpb]
   \begin{center}
-    \includegraphics[width=3cm, bb=0 0 172 156]{pic/TreeVNC.pdf}
-%    \includegraphics[width=3cm]{pic/TreeVNC.pdf}
-%    \includegraphics[width=3cm, bb=0 0 251 246]{pic/emblem-bitmap.pdf}
+    \includegraphics[width=90mm]{pic/TreeVNC.eps}
   \end{center}
   \label{fig:figure1}
   \caption{TreeVNCの図}
 \end{figure}
 
+\newpage
 
-% TreeVNCの接続方法の図を入れる
+\section{VNC}
+VNC(Virtual Network Computing)は、
+RFBプロトコルを使用し遠隔操作を行うリモートデスクトップソフトである。
+VNCはサーバ側とクライアント(ビューア)側に分かれていて、
+サーバを起動し、クライアントがサーバに接続を行い遠隔操作を可能にする。
 
 
-\section{TreeVNCのデバッグ}
-機能向上のためTreeVNCをデバッグし、大幅な変更を加えた。
+\section{TreeVNC}
+TreeVNCは、TightVNCのjava版のビューアを元に
+作成された画面共有システムである。
+
+
+\section{TreeVNCのリファクタリング}
+TreeVNCをリファクタリングを行い、大幅な変更を加えた。
 
 
   \subsection{port番号の変更}
-  TreeVNCに接続しているnodeすべてがport番号を保持するように設計し直した。
-  nodeがTreeVNCに接続する際に使用されていないport番号を探し、そのport番号を保持する。
-  TreeVNCには、子nodeからrootへと送信するmessageがある(Screen Change Request, lost Parent等)。
-  今まではこれらmessageを、nodeからrootへ直接messageを送信していた。
-  その際、node側では送信専用・root側では受信専用のportを固定の番号で開き、使用していた。
+  TreeVNCは複雑の分散アルゴリズムを用いたシステムであり、
+  デバッグを行う環境を整える必要がある。
+
+  従来のTreeVNCでは、固定長ポートを複数利用していた。
+  そのせいで通信プロトコルが複雑になり、
+  1台で複数のTreeVNCを立ち上げることができなかった。
+
+  ダイナミックにportを変更することによって、
+  1つのnodeに対して複数のTreeVNCを起動することを可能にした。
+  最低限のソケットポートを開けることによって、
+  メモリの使用を抑えた。
+
+  rootと子node間の通信を行うmessageは以下である。
 
-  今回設計し直したことによって、
-  messageのやり取りの際の、余計な通信経路を削除した。
-  そして、port番号が重複することなく、
-  パソコン1台でTreeVNCを複数立ち上げることができるようになった。
+  子nodeが最初にrootへと通信を行うmessage
+  (FIND\_ROOT、FIND\_ROOT\_REPLY)、
+  node間の接続を行うmessage
+  (CONNECT\_TO\_AS\_LEADER、CONNECT\_TO)、
+  どのnodeと接続するかを知らせるmessage
+  (WHERE\_TO\_CONNECT)、
+  親nodeとの接続が切れてしまった場合のmessage
+  (LOST\_PARENT)、
+  新しいnodeが接続した場合のmessage
+  (NEW\_NODE)、
+  クライアントが画面共有ボタンを押した際のmessage
+  (SERVER\_CHANGE\_REQUEST)、
+  rootとnode間の通信における遅延を計測するためのmessage
+  (CHECK\_DELAY\_REPLY)
 
 
   \subsection{Treeの構成の変更}
 
-  有線と無線で別の木構造を形成するように設計し直した。
+  TreeVNCを、複数のネットワークインターフェイスで
+  使用できるようにリファクタリングを行った。
 
-  無線での接続の場合、有線と比べてデータの受け渡しの速度が低下する。
-  有線nodeと無線nodeを同じ木構造に接続すると、
-  無線のnodeがデータ送受信のボトルネックになってしまう可能性がある。
+  従来のTreeVNCは、単一のネットワークでしか使用出来なかった。
+  複数のネットワークインターフェースで、
+  別の木構造を形成するように設計し直した。
 
   TreeVNCは、rootがnodeListというリストを持って木構造を管理している。
-  有線と無線で違う木構造を形成する場合、
+  複数のネットワークインターフェースで木構造を形成する場合、
   このnodeListをネットワークインターフェース毎に作成しておく。
-  新しいnodeを接続する場合、nodeのネットワークインターフェースを取得し、
-  どのnodeListに登録されるかを決める。
-  こうすることによって、有線と無線で別の木構造を形成することができる。
+  新しいnodeを接続する際、nodeのネットワークインターフェースを取得し、
+  どのnodeListに登録されるかが決まる。
+  こうすることによって、TreeVNCを複数のネットワークインターフェイスで
+  使用することができる。
 
-\begin{figure}[!h]
+\begin{figure}[htpd]
   \begin{center}
-    \includegraphics[clip, width=5cm, bb=0 0 353 142]{pic/MultiNetworkTree.pdf}
+    \includegraphics[width=90mm]{pic/MultiNetworkTree.eps}
   \end{center}
   \caption{マルチネットワークに対応したTreeVNCの図}
   \label{fig:figure2}
@@ -111,45 +133,48 @@
 
 
   \subsection{ホスト切り替え時の挙動の修正}
+  画面の切り替えを行う際、ホスト側の画面の
+  ビデオフィードバックが生じてしまい、
+  その結果が他のユーザに共有されてしまう問題を解決した。
+
   ホストを切り替える際にviewerを閉じる様、設計した。
   また、元のホストでは、viewerが立ち上がる様にした。
-  viewerを閉じていないと、ビデオフィードバックが起こり、
-  その結果が他のユーザに共有されてしまう。今までだと手動でviewerを最小化する必要があった。
 
-
-
-  \subsection{子nodeの再接続時の挙動の修正}
-  親nodeとの接続が切れた場合、接続していたnodeは再接続が必要となる。
-  その際、画像データを受け取るスレッドが動作したままであった。
-  そのため、再接続時に画像データの整合性が取れなくなり、エラーが生じる。
-  この問題を解決するために、再接続をする際に一度スレッドを停止し、
-  親nodeとの通信が確立した際に立ち上げる処理を追加した。
-
-
-  \subsection{CheckDelayの再実装}
-  CheckDelayを使用し、データの受け渡しの速度を計測を行う。
-  rootがCheckDelayを、画像データと共にnodeに送信し、
-  受信したnodeは、CheckDelayReplyをrootへ返信するよう実装した。
-  CheckDelayを送信した時間と、CheckDelayReplyを受信した時間から、
-  root - node間のデータ通信の速度を判定することができる。
-
-
+  ビデオフィードバックが共有されないよう、
+  手動でviewerを最小化する必要がなくなった。
 
 
 \section{まとめ}
+TreeVNCに上記の様なリファクタリングを行うことによって、
+今後の開発環境を整い、
+通信できるネットワークインターフェースの幅が広がり、
+TreeVNCの利便性が向上した。
 
 
 
 
 \section{今後の課題}
   \subsection{画像データの遅延}
-  全画像データの書き換えが立て続けに起こってしまった場合、データの受け渡し処理で遅延が発生する。
-  解決策として、クライアント側で最新のデータのみを出力するといった実装を行う。
+  現在のTreeVNCでは、
+  全画像データの書き換えが立て続けに起こってしまった場合、
+  データの受け渡し処理で遅延が発生する。
+
+  VNCServerから立て続けに大きい画像データが送信されたことを検知し、
+  送られてきた全てのデータを画面に出力するのではなく、
+  最新のデータのみを取得し出力するといった実装を行う。
 
 
   \subsection{エラーハンドリング}
-  clientで起こったエラーメッセージがroot側に表示されてしまうという問題がある。
-  どのclientのエラーかを検出した後、そのclientのIDを取得し、木構造を下に辿ってエラーメッセージを含むデータをclientに送信する。下へと降る際、各nodeでIDの確認をし、一致した箇所でエラーメッセージを出力するような実装を行う。
+%  SeverChange時の子nodeのエラーメッセージがrootに出力される。
+  クライアントが画面の切替を行った際に生じた
+  クライアントのエラーが、rootに出力されるという問題がある。
+
+  クライアントのエラーを検出した際にそのクライアントのIDを取得する。
+  木構造を下に辿って、
+  エラーメッセージを含むデータを
+  クライアントに送信する。
+  下へと降る際、各nodeでIDの確認をし、
+  一致した箇所でエラーメッセージを出力するような実装を行う。
 
 
 %\section{新機能の実装}
@@ -158,26 +183,37 @@
 
 
   \subsection{音声データの共有}
-  TreeVNCに、画像データと共に音声データを追加する。この機能を追加することによって、遠隔からでもプレゼンテーションや授業に参加できる。
-
+  現在TreeVNCが共有しているのは画面のデータのみである。
+  遠隔からプレゼンテーションや授業を聴講したい場合、
+  画面のデータに加えて音声データが欲しい。
 
-  \subsection{解像度の変更}
-  現在のTreeVNCは、画像データ全体を送信している。これでは共有する画面によってサイズが違い、発表者毎に表示する大きさを手元で変更しなければならない。
-  画面サイズをHDサイズ(1920x1080)に固定すれば、この手間を省くことができる。
-
-
-  \subsection{画面の大きさを共有する側で変更できる}
-  どの画面を共有するのかを、ホスト側で指定できるようにする。マルチディスプレイを共有する場合、2つの画面が共有されてしまい、本来共有する必要のないデータまで送信することになる。
-  ホストが枠を指定し、枠の大きさの画像データを共有する機能を追加する。
+  TreeVNCに、画像データと共に音声データを追加する。
 
 
 
+  \subsection{画面の大きさをホスト側で変更できる}
+  現在のTreeVNCは、ホスト側の画面全体を送信している。
+  マルチディスプレイを持っているホストだと、
+  2つの画面が共有されてしまう。
+  これでは発表者が切り替わる毎に、
+  クライアント側で画面の大きさを手動で変更しなければならない。
+  そこで、画面の大きさをホスト側で変更したい。
+
+  ホスト側にviewerの代わりに枠を用意し、
+  その枠内のデータのみを共有するといった機能を追加する。
+  この機能を追加することによって、
+  本来共有する必要のないデータを共有することがなくなる。
 
 
 
 \begin{thebibliography}{9}
 
 \bibitem{1}
+  TightVNC: VNC-Compatible Free Remote Control / Remote Desktop Software\\
+  \verb|http://www.tightvnc.com/|
+\bibitem{2}
+  谷成雄, 河野真治, 授業やゼミ向けの画面共有システムTreeVNCの設計と実装 A Screen Sharing System using Tree Structure for Seminar and Classwork 平成25年度 学位論文(修士)
+
 
 \end{thebibliography}
 \end{document}