changeset 26:4bbd34ef6223

add description of daemon
author kazz <kazz@cr.ie.u-ryukyu.ac.jp>
date Thu, 09 Feb 2012 21:49:20 +0900
parents efb17e20ca5e
children 98ac49dcd4bb
files paper/appendix.tex paper/chapter3.tex paper/images/networkpipeline.bb paper/images/networkpipeline.eps paper/images/networkpipeline.graffle paper/images/networkpipeline.pdf
diffstat 6 files changed, 1841 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/paper/appendix.tex	Thu Feb 09 15:20:07 2012 +0900
+++ b/paper/appendix.tex	Thu Feb 09 21:49:20 2012 +0900
@@ -2,5 +2,10 @@
 \addcontentsline{toc}{chapter}{発表文献}
 
 \begin{itemize}
-\item 河野研ゼミ
+\item Meta Engine を用いた Federated Linda の実験,\\
+赤嶺 一樹, 河野 真治(琉球大学),\\
+日本ソフトウェア科学会第 27 回大会 (2010 年度)講演論文集, Sep, 2010
+\item Data Segment API を用いた分散フレームワークの設計,\\
+赤嶺 一樹, 河野 真治(琉球大学),\\
+日本ソフトウェア科学会第 28 回大会 (2011 年度)講演論文集, Sep, 2011
 \end{itemize}
--- a/paper/chapter3.tex	Thu Feb 09 15:20:07 2012 +0900
+++ b/paper/chapter3.tex	Thu Feb 09 21:49:20 2012 +0900
@@ -283,6 +283,23 @@
   \label{fig:datasegmentInheritance}
 \end{figure}
 
+\subsection{ネットワーク周りの実装}
+Alice において、処理のボトルネックになる部分はネットワーク通信周りである。
+そのため、ネットワーク周りの処理をスレッド分けし、パイプライン処理を施している。
+これは、 SEDA アーキテクチャのステージ処理と似ている。
+
+さらに通信に関する部分を、送信と受信の二つのスレッドに分割している。(図 \ref{fig:networkpipeline})
+
+\begin{figure}[htbp]
+  \begin{center}
+    \includegraphics[width=90mm]{./images/networkpipeline.pdf}
+  \end{center}
+  \caption{Data Segment の処理と TCP の送受信処理をスレッド分割してパイプライン化}
+  \label{fig:networkpipeline}
+\end{figure}
+
+互いのスレッド間の通信には、他のパターンと同じく、 LinkedBlockingQueue を用いてコマンドを投げている。
+
 \section{Code Segment}
 前節では、 Data Segment の詳細な設計と実装を示した。
 本節では、 それら Data Segment API を用いて記述する Code Segment の使い方やそれらの実装方法について示す。 
@@ -430,6 +447,42 @@
 
 ThreadPoolExecutor は、 Runnable がキューへ投入される度、必要に応じてスレッドの最大保持数まで上げて処理を行う。
 
+Code Segment Manager はシングルトンパターンで作成されている。
+
+Code Segment Manager は個別スレッドを持っており、 Executor に投入する部分もパイプライン化を行なっている。(ソースコード \ref{src:threadpool1})
+
+\begin{lstlisting}[label=src:threadpool1, caption=ジョブ投入関連処理]
+private CodeSegmentManager() {
+	Runnable prepareThread = new Runnable() {
+
+		@Override
+		public void run() {
+			while (true) {
+				try {
+					CodeSegment cs = readyQueue.take();
+					codeSegmentExecutor.execute(cs);
+				} catch (InterruptedException e) {
+					// 例外処理
+				}
+			}
+		}
+		
+	};
+	new Thread(prepareThread, "CodeSegmentManager").start();
+}
+
+public static void submit(CodeSegment cs) {
+	try {
+		CodeSegmentManager.get().readyQueue.put(cs);
+	} catch (InterruptedException e) {
+		// 例外処理
+	}
+}
+\end{lstlisting}
+
+
+
+
 \section{Topology Manager}
 前節では、 Code Segment の利用方法とその実装を示した。
 本節では、 Alice 同士の接続トポロジーを管理する、 Topology Manager について示す。
@@ -440,7 +493,7 @@
 
 \begin{figure}[htbp]
   \begin{center}
-    \includegraphics[width=60mm]{./images/topologymanager.pdf}
+    \includegraphics[width=70mm]{./images/topologymanager.pdf}
   \end{center}
   \caption{Topology Manager はトポロジーファイルの通りに Topology Node を接続させる}
   \label{fig:topologymanager}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/paper/images/networkpipeline.bb	Thu Feb 09 21:49:20 2012 +0900
@@ -0,0 +1,5 @@
+%%Title: ./networkpipeline.pdf
+%%Creator: extractbb 20110311
+%%BoundingBox: 0 0 310 165
+%%CreationDate: Thu Feb  9 15:42:30 2012
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/paper/images/networkpipeline.eps	Thu Feb 09 21:49:20 2012 +0900
@@ -0,0 +1,980 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%HiResBoundingBox: 0.000000 0.000000 310.000000 165.000000
+%APL_DSC_Encoding: UTF8
+%%Title: (Unknown)
+%%Creator: (Unknown)
+%%CreationDate: (Unknown)
+%%For: (Unknown)
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 2
+%%Pages: 1
+%%BoundingBox: 0 0 310 165
+%%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 310 165
+%%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 /O put
+
dup 34 /u put
+
dup 35 /t put
+
dup 36 /b put
+
dup 37 /o put
+
dup 38 /n put
+
dup 39 /d put
+
dup 40 /T put
+
dup 41 /C put
+
dup 42 /P put
+
dup 43 /e put
+
dup 44 /c put
+
dup 45 /i put
+
dup 46 /h put
+
dup 47 /r put
+
dup 48 /a put
+
dup 49 /D put
+
dup 50 /S put
+
dup 51 /g put
+
dup 52 /m put
+
dup 53 /I 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 [<
+
74727565000900000000000063767420000000000000009C0000036C6670676D000000000000040800000A1D676C79660000000000000E28000012BC6865616400000000000020E40000003668686561000000000000211C00000024686D74780000000000002140000000586C6F636100000000000021980000002E6D61787000000000000021C8000000207072657000000000000021E8000003CF05C0001005BD00280580001A042F001F0000FFD90000FFDA0000FFD9FE55FFE605C70010FE6DFFF1033B000000B9000000B902FE3F3C00C0008D009B00AF000600A800C00028005E009800C9016A00B9015C00B400D6011E002E0080000400B8004C00CC01FFFFD1006600A400AF007400C2009500B1000C0028006D0015004C008E0125FF7A000C0040004C00620084FFA200240038008600BD0039005E008E00EDFFA9FFB300400052005500AA00AB00C200CB012302B10413FFAEFFE4000800510074008400AA00D1FF4CFFAF0012002C004200500051008400BE012503DAFF680018003B0098009C009F00A100C100EC018201B4FF68FF76FFD0FFE100020018001C00530053007D01B401E103AF0486FF9CFFEAFFFE001F0028002A00520060009300A300AA00AF00AF00C001000145016B0174019301950240028202B404850517FEFD00060029004700470048006F008800B400B900C400F200F901EF02180310037403C5FF35FFF3000B004B004C0052005500650076007600870087008E00AB00BB0106013001430150017D0194019501D3022A025502580277027802E6034E035C037903D3047304B2058C0598060BFEF5FFBBFFC7FFD50017001D005B0072007E009C00C200D000F400FA01030106011C0125013B0142015E015E0180019B02B901A101B9025001C001D002AA01DF01E301EF01FB0205020C0215022B0274029302AB02C202CE03690395039903DF03F5043E050205A105E5062507DBFE62FE89FECEFF3BFFE1FFF800030008002100390042004E005F0061006F00700034007F008E00AD00AD00AF00BD00C400C500C900C900C900E3011C00ED00F800F901000112011A0132014D014D014E014F01660169019E01BA01BA01BE01E301EF01F602000200020902110217021C02530262026D028002D50280031B032A034A035A03AF03AF03C803D603FB03FB04050413041504470449008C046D049A049A04A604A804B204CF0539053E054E055605800589058C036305D105D6067E068E06B206EF06F00728074C076F078C00B400C900C000C10000000000000000000000000004012400AF0032006E0063014401620096014301A10161008A00740064018801EF01700028FF5D037E0347023000AA00BE007B0062009A007D0089035C00A1FFD803AA00D70093006C0000008000A70442001D0597001D00820030002A
+
002A002A002A002A40292A292827262524232221201F1E1D1C1B1A191817161514131211100D0C0B0A090807060504030201002C4523466020B02660B004262348482D2C452346236120B02661B004262348482D2C45234660B0206120B04660B004262348482D2C4523462361B0206020B02661B02061B004262348482D2C45234660B0406120B06660B004262348482D2C4523462361B0406020B02661B04061B004262348482D2C0110203C003C2D2C20452320B0CD442320B8015A51582320B08D44235920B0ED51582320B04D44235920B09051582320B00D44235921212D2C20204518684420B001602045B04676688A4560442D2C01B9400000000A2D2C00B9000040000B2D2C2045B00043617D6818B0004360442D2C45B01A234445B01923442D2C2045B00325456164B050515845441B2121592D2C20B0032552582359212D2C69B04061B0008B0C6423648BB8400062600C642364615C58B0036159B002602D2C45B0112BB0172344B0177AE5182D2C45B0112BB01723442D2C45B0112BB017458CB0172344B0177AE5182D2CB002254661658A46B040608B482D2CB0022546608A46B040618C482D2C4B53205C58B002855958B00185592D2C20B0032545B019236A4445B01A23444565234520B00325606A20B009234223688A6A606120B0005258B21A401A4523614459B0005058B219401945236144592D2CB9187E3B210B2D2CB92D412D410B2D2CB93B21187E0B2D2CB93B21E7830B2D2CB92D41D2C00B2D2CB9187EC4E00B2D2C4B525845441B2121592D2C0120B003252349B04060B0206320B000525823B002253823B002256538008A63381B212121212159012D2C456920B00943B0022660B00325B005254961B0805358B21940194523616844B21A401A4523606A44B209191A45652345604259B00943608A103A2D2C01B005251023208AF500B0016023EDEC2D2C01B005251023208AF500B0016123EDEC2D2C01B0062510F500EDEC2D2C20B001600110203C003C2D2C20B001610110203C003C2D2C764520B003254523616818236860442D2C7645B00325452361682318456860442D2C7645B0032545616823452361442D2C4569B014B0324B505821B0205961442DB8002B2C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB8002C2C2020456944B001602DB8002D2CB8002C2A212DB8002E2C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB8002F2C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB800302C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800312C2020456944B0016020
+
20457D691844B001602DB800322CB800312A2DB800332C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB800342C4B535845441B2121592DB800352C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB800362C2020456944B001602DB800372CB800362A212DB800382C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800392C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB8003A2C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB8003B2C2020456944B001602020457D691844B001602DB8003C2CB8003B2A2DB8003D2C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB8003E2C4B535845441B2121592DB8003F2C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB800402C2020456944B001602DB800412CB800402A212DB800422C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800432C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB800442C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800452C2020456944B001602020457D691844B001602DB800462CB800452A2DB800472C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB800482C4B535845441B2121592DB800492C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB8004A2C2020456944B001602DB8004B2CB8004A2A212DB8004C2C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB8004D2C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB8004E2C4B20B0032650585158
+
B080441BB04044591B21212045B0C05058B0C0441B2159592DB8004F2C2020456944B001602020457D691844B001602DB800502CB8004F2A2DB800512C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB800522C4B535845441B2121592DB800532C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB800542C2020456944B001602DB800552CB800542A212DB800562C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800572C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB800582C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800592C2020456944B001602020457D691844B001602DB8005A2CB800592A2DB8005B2C4B20B003265358B0401BB000598A8A20B0032653582321B0808A8A1B8A235920B0032653582321B800C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB8005C2C4B535845441B2121592D00000000020042000004D005BD00030007003FB800532BB800082FB800092FB8000810B80000D0B800002FB8000910B80003DCB80004DCB8000010B80007DC00BA0007000000562BBA0002000500562B3031331121112711211142048EB8FCE205BDFA43B8044DFBB300000002005AFFDA057105E5001D001E00B1403B1B0597019605031F011F0482018705891305530803861D111115063A1D030C3A15091E021E1E190331023B1031111A20093119191F20A1216A66182B2B4EF44DED4E10F64DEDF4ED12392F003F3FED3FED12392F10ED31304379403A001C172513260E251B260B160932000D1410320112110F10071C0932000500033201010204030A180C32000F120C3200081A06320104010632012B2B2B2B01103C103C2B2B103C103C2B2B2B2B2B2B815D015D080117232E0123220011101233323736373306070621202726111037362123041E013411C221C5B2D9FEF5F1EFDC733D1EC21A92AFFED7FF00AEE5ACBA01472805E5FEDABB8EA6FECFFEC5FEFEFEBFA95991E89DBD9BCD01AC0145D0E20000000200A50000056305BD000D00180067401F871196120232080B1E0F02001E17080831131A1A0D250E19191AD6217689182B2B4EF44DFD4E10F64DED003FFD3FFD313043794026011611251526060705
+
0704070307020705060A10083201011608320109120B320107140032002B2B012B2B2A2B2B815D2532373637363736351002232111032120171611140702290102D06541744A3B1A0FD9F1FE9FC80253012FA795589BFE86FDAFAA15276F598B53470111012EFB980513D7C2FED1EABDFEB20000000100C90000019205BD00030017B8002B2BBA00010000002E2B00B800002FB800022F303113331123C9C9C905BDFA4300030050FFD505E805E5000F001B001C008A402C8705C700C701C302C808C90A064308153A0F031B3A07091C021C1C0B1231031A1E18310B191D1ED8216A66182B2B4EF44DED4E10F64DED12392F003F3FED3FED313043794032001A0D26012509250526160E18320014001232011A081832001006123201170C1532011302153201190A1B320011041B32002B2B2B2B012B2B2B2B2B2B2B2B81005D0017161110070221202726111037122100123510002322001114122103049BBB92A7C4FE95FEADC2AD94BE0174011BEBFEF1EBE4FEE0F701150E05E5FAC3FED0FEB7DAFF00E0D8014A012AD40110FAA20179F50103013CFEC7FECFF4FEB1055E000200AF000004F805BD000A001400614035690C6912790C7A12044814581468147A140407081E1110100A010E0F1E0100020A080206120C0409141431041A160F092500191516B8010BB3219589182B2B4EF44DFD3C4E10F64DFD11121739003F3F3CFD3C1012392F3CFD3C015D31305D132132161514062321112300272623211121323635AF0295C4F0D6DEFE32C70380784273FE74018C86A705BDDDC8ACFFFD9304B93A1FFE0372900000020060FFD504F605E5002F003000FE405E290F27232626360E3521472662267A0E7724096B08180E172502590E680EAA22030A0E3A2224220A03041C1886142F2F2B1C3A1403043A2B0930020A0E081124221F28303011182517490825281A321F25114900252F193132A0216A89182B2B4EF44DEDF4ED4E10F64DEDF4ED12392F1211393912113939003F3FED3FED12392F10ED111217392EFD335D7131304379404D282E111F0008022602262D2506251A26032C002B002D2E032C002B00052A082B011D131F2B001B15182B011918012D042B0009270B2B01250B012E042B000729042B001E121C2B0119161C2B01002B2B2B2B10102B2B01103C2B2B2B2B103C2B2B2B2B2B2B818181005D0116171633323736353427262F012627263534243332041523262726232206151417161F01161716151404232027263701011E073463FA705CB24B4CA2C7C3518C0112FBE70143BB0F315BDAB09A5A3BD0CE95518CFE9DEBFEEE9B9B03024D01DA7D4E92203EA0783332252D2C355CB7C6FEDFF5763F7394626C3220302F223B67C4F4D28C8BEE040B0000010021000004C905BD00070034401A01061E00070204080917171A
+
00FB0203250504FB0619088C5E182B4E10F44DF43CFD3CF44E456544E6003F3F3C4DFD3C3130011521112311213504C9FE11CAFE1105BDAFFAF2050EAF00000000030052FFDC04470449000F003B003C00DD40382A30010A100B1B0C1C2733481069096A10073908120C09031B320724091D100C1D3B2B022E293BB73B023B322A2512100705081C2722171CB8018A4023171D1F07271D2E0B021D350B3C073C3C1C1407292AA8241A3E1B291C4A0F2738193D3EBC0197002100B9019600182B2B4EF44DEDF4ED4E10F64DE4FDC412392F003F3FED3FED3FEDED1239111217395D1112392EED2EED01111239111739313043794028363715220001192501360F2100181E1B21001620142101212200370221001A1D1721011521172101002B2B2B01103C2B2B2B2B818181005D015D2416333237363D010E010F0106070615013637363534262322070607233E01333217161511141633323637150E0123222726270E012322263534363713010E724E5F59962168326D62315301B43E150C837A8D3B210AA805F7A3BD767517250C1E112A2C265D2A160937CE7C95BDBA978ACF5A2C49A691151C060E0D1C2F67016C082C182D5C534C2A53C69B484898FD971C220303850C06422340486AB58895A41301E40000020076FFDE042505C20011001E0070402EA607A71CD71C0322080F1E02050000171D0507110A1E1D0B0B1427081A201A2E102E01290011191F208721BD5D182B2B4EF43C4DFDE4E44E10F64DED003FED3F3FED3F113911393130437940181216060A1606142601120A142601150717260113091E26002B2B012B2B8181005D1333113E01333212111402232227262715232436353426232206151417163376AF3BA460C8F9F6DA7A543239A6026691918D7BB92647C205C2FDEB4D51FEEDFEF4FEFEB03B234D897DE8BEA9DEB6D1975EB100000002003BFFE103D0044E001A001B00A7402FA719019818A808AA18034A08119B14030314061D1A070D1D140B1B071B1B1710271201032702111A1D0A2717191C1DB80107B321727D182B2B4EF44DED4E10F63C4DED3939ED12392F003F3FED3FED12392F10ED313043794034001908250C150A26000E1310260112110F1007190A26000500032101010204030B160D26000F120D2600091806260104010621012B2B2B2B01103C103C2B2B103C103C2B2B2B81005D015D001617232E012322070615141633323637330E01232202351000330702D6E317AF10727EAC4A308892708319AF1EF0BBD2FA0112D41C044EB0D76383A86DA0A1DC8977D5C50133E6011A013A0500020038FFDA03ED05C2000B001D00774032370E470E570EA704A91B05250814020F1D1000081D1D07130A021D170B052E132E102911121A1F0B271A191E1F87217242182B2B4EF44DED4E10F63C4DFDE4E4003F
+
ED3F3FED3F1139113931304379401A181C090A000101180B2600091C0B260000190226000A1B0826012B2B012B2B818181005D1216333236353426232206150017161711331123350E0123220035341233F692A17DA1A67A88A9018A53303DADA23FAC6FB3FEFAEFDE015FE8D7C9CBC3D0CA0237341E4B021DFA3E956358012DFAEA015700030048FFDA041A0449001C00240025010C40799708991AA71F03050E020F0514150E120F1514400C401408291A014B0BB603C701C603C71BD808D909D61FD823E817E8230BC711C712025C080521240F9A161D243906070716211D1C070A1D160B2507971CA71CB71CD71C0425160F251C05190A0C07110E270F1D27051A27242E072719192627D421A65D182B2B4EF44DFDE44E10F64DEDD4FD391239391112393912392F5D003F3FED3FED12392F3CFD3C10ED1112393130437940460023040503050205010504061F26111012101310141004060C25221B24260020001D26011E1D09170726000B150E26010D0E231A2126011E0521260108180A26000D100A2600002B2B2B2B01103C2B2B103C2B2B2B2A2B2A8101715D00715D5D00161716171615211E013332373637330E01070607062322001110003301262726232206070102B4D638361210FCEF0590978D543014B1074F3152794152C8FEEA0118E2011F0B284AAD7CA805012304476B55516C4AA2A3C55D36473B912E501C100123010601020142FE26754682B38A01DC0000000003003DFE3B03E80449001F002D002E00B7404D36144908490958085909880CA91BA81DA927A62BB91B0B4008031622290EC40A221D1F070406291D190A121D0A0F2E072E2E051C032E162E2D29051A300C0E270D3E26271C192F3087217242182B2B4EF44DEDF4ED394E10F64DFDE4F51112392F003F3FED3FED3F3FED10ED1112393931304379402C23281A1E0B1124251026231E262600281A262600110B0E21000F0E0C0D251D222601271B2926000F0C122100002B2B2B01103C103C2B2B2B2B2B818181005D00171617353311140706212226273316171633323736270E0123222411100033002623220706151416333237363501027C5E3335A63C70FEC9ADEC0EB70D273D83CF40260336987DAEFEFB0107BA0144A47FBE4625937CC24F2CFED104423E234387FC32CC76DA9BA548273C9256DD5250F7011D010D012EFEA1C0B25F9AB5BDAF6384022D000000010084000003ED05C200160053402C0607070817071708270427137507750808130D0213150000111D0607150C0A0D290A1A180115290016191718B80106B3216242182B2B4EF43C4DFD3C4E10F64DED003F3C3FED3F1139390112393130005D133311363736333217161511231134272623220615112384B440335782E9532DB91E318770B6B405C2FDDC512139A3599EFD5102A37637
+
589AD6FDC8000000000200840000013B05BD000300070036401C07E50400010006030A0917171A06010229070300190809AA216242182B2B4EF43C4DC4FD3CC44E456544E6003F3F3C3F4DED3130133311231133152384B7B7B7B7042AFBD605BDCC00000001008400000625044700260085403B0708070E060F1708170E170F2708270E270F4819560B670B0C23250A1A1D23190A02041725211D171D0D060700061B1C2503130A2817171A112914B80101B21A291DB80101400A00012E25292600192728B8010DB3216242182B2B4EF43C4DFDE410F4EDF4FD4E456544E6003F173C3F3F3C4DEDED111217390111123912393130005D13331536373633321716173E01333217161511231134262322061511231134272623220615112384B240345971804E2C243CA265D84E2ABB6B4D6A99B71A297066A7B4042F984F243D3F244656539C548EFD3702E86B508EA6FD9102BB6D324B9ECFFDC80000020084000003ED04490019001A005E4031B706C706020406140627147606740705140C021418101D05070006180B0A1A071A1A000C29091A1C012E18291900191B1CB80106B3216242182B2B4EF43C4DFDE44E10F64DED12392F003F3F3C3F3FED1139390112393130005D015D1333153E01333217161511231134272623220706070E011511230184AB4CAA68E4502CB71D307E40294A382D1BB401A7042F985E529F57A2FD5102A3623C640D1642357169FDCF0449000003003BFFD90421044E000C0018001900904033980896109916A504A808A610A916B808C808D704E50EE9140C3A08061D18070C1D120B190719191502270F1A1B092715191A1BB80109B321725D182B2B4EF44DED4E10F64DED12392F003F3FED3FED31304379402C001704260B1309260000110226010717092600050D0226010A140C260001100C26000816062601030E0626012B2B2B2B012B2B2B2B2B81005D241235342726232206151416331200111002212200351000330702E085304CBAA59696A3D6011EFCFEF7DDFEFC0112E70674010FA6965E94FCB2ABE403DAFEECFEF4FEFDFEAE012BFC010E014005000100890000029204470011004F40262703260D37034704040E0810020E0911090C270805070006110A081A13012E10291100191213B80145B321627E182B2B4EF43C4DFDE44E10E6003F3F4D3FC4FDC411123939011112393130005D1333153E0133321617152E0123220615112389AB15A46B05181D101B108892B4042FB9369B0203BE0302AF72FD980000010017FFEF0209055A00180052B50D2E0AC00E01B8013F40250416391703060E0A111A17171A0301062900150E150F031F030203FC1619191AFC21677D182B2B4EF44DFD5D39C42F3CFD3C104E456544E6002F3F3F3C4DFD3CED10FDE431301333113315231114171633323637150E
+
012322263511233533A8B6ABAB2615310D1E141F43277E5A9191055AFED593FD4538130B01028E0908816702C593000000020080FFE303DE044900170018005E403AB814C81402091308141913191428067703D707070800050E0A00060D0A051D120B180718180B160D2E0A290C0B1A1A01291619191AD2216242182B2B4EF44DED4E10F63C4DFDE41112392F003F3FED3F3F3C391112393130005D015D0111141716333237363511331123370607062322272635112501381A3083BC4425B4AA0223346793E5532D01AF042FFD39523460A85A9D020EFBD19E3D2A5499528902D81A000001000000000000642C0B935F0F3CF500110800000000005F4D8F0000000000C621BCD6F865FC270B9108F9000000090001000000000000000100000629FE2900000C01F865FCED0B910001000000000000000000000000000000160512004205C7005A05C700A5023900C906390050055600AF0556006004E3002104730052047300760400003B04730038047300480473003D0473008401C7008406AA0084047300840473003B02AA008902390017047300800000003400C40126013E01BC021202DE030C03D6044004C2052E05F806A006F0071E079A07F6086E08B40904095E0000000100000016006F0009006B0007000200100010005D000007E80A1D00040001B800532BB800492BB8003F2BB800352BB8002B2B4118008001A6009001A600A001A600030069018B0079018B0089018B0099018B00040089018B0099018B00A9018B00B9018BB2040840BA0179001A014A400B041F5414191F180A0B1FD2B80106B49E1FD918E3BB0119000D00E10119B20D0009410A01A0019F0064001F01A50025017A00480028019AB3296C1F60410A01A9007001A9008001A90003008001A9000101A9B21E321FBE012C00250401001F0126001E0401B61FE7312D1FE531B80201B21FC227B80401B21FC11EB80201400F1FC01D9E1FBF1D671FBE1D671FAB27B80401B21FAA29B80401B61FA91D6C1F931EB8019AB21F921DB80101B21F911DB80101B21F751DB80201B61F6D29961F6431B8019AB21F4C96B802ABB21F391DB80156400B1F3638211F351DE41F2F27B80801400B1F2D1D4C1F2A31CD1F241DB802ABB21F201EB8012540111F1C1D931F3A1D4C1F1E1D45273A1D4527BB01AA019B002A019BB2254A1FBA019B0025017AB349293896B8017BB348283125B8017A403648289629482725294C1F252946272729482756C80784075B07410732072B072807260721071B071408120810080E080C080A08080807B801ACB23F1F06BB01AB003F001F01ABB308060805B801AEB23F1F04BB01AD003F001F01ADB70804080208000814B8FFE0B40000010014B801ABB41000000100B801ABB606100000010006B801ADB300000100B801AD401F0400000100
+
0410000001001002000001000200000001000002010802004A00B0018DB806008516763F183F123E113946443E113946443E113946443E113946443E113946443E11394660443E11394660443E11394660442B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B18011DB0964B5358B0AA1D59B0324B5358B0FF1D592B2B2B2B2B2B2B2B182B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B74752B2B2B65422B2B4B5279B376706A66456523456023456560234560B08B766818B080622020B16A704565234520B003266062636820B003266165B070236544B06A234420B176664565234520B003266062636820B003266165B066236544B0762344B10066455458B166406544B27640764523614459B36242725D456523456023456560234560B089766818B080622020B172424565234520B003266062636820B003266165B042236544B072234420B1625D4565234520B003266062636820B003266165B05D236544B0622344B1005D455458B15D406544B262406245236144592B2B2B2B456953427374B8019A2045694B20B02853B049515A58B020615944B801A6204569447500
+
00>] def
+
/CharStrings 22 dict dup begin
+
/.notdef 0 def
+/C 1 def
+/D 2 def
+/I 3 def
+/O 4 def
+/P 5 def
+/S 6 def
+/T 7 def
+/a 8 def
+/b 9 def
+/c 10 def
+/d 11 def
+/e 12 def
+/g 13 def
+/h 14 def
+/i 15 def
+/m 16 def
+/n 17 def
+/o 18 def
+/r 19 def
+/t 20 def
+/u 21 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 4265107 def
+
currentdict currentfile eexec
+
54544758EC884CF30C3CD503CEDBFF3839C47C3C3333173232E3FDBFF439491DB843E1924E63AA7726BBB0485AB56D93D8C0906F647A47162891E73FFC2A9873C4B1EAC5EEBDFFC4D06084FBD84139DF4583C6E259D10699944D1068C9C45667DCCCFB9B7EA01B606435EDCBD273ABAC093D14085CCBAC149BD7382E842CFE0D7FE4FD2EF589A2471F6074A80A8B675C2F7A50D63AC1EF90D787BADD11633CB01CF6EE3B37AAF9078A69AC4740E9B6525D78BBD839551A1CB80DB8682FA5E87591BBD6EE8B946063A2A58D9CA3685AB305495DC5FB5747EB8A9A059C4976C0FE4EEAB1D56FF47F1E9664ED9F4A7DAB763AF92B2F6CF2FA7DEC24710E0B9096E30F772BA7FEA9BDBE496C42ED2CEB58F54E80BDF57CE7B4DB6CCFE7182F43BF93CCA0767AF95D62C5D2C3DC6AE1E6D139F51A2C63432117F1714C5566572EE9967A715420ABDCD1D7BD74F8450B89965FCC81C6ACA565C5F3CCF91D430D1F953E4F1A645300A98DD8C47CD64555F08F422340A85404EAE0D3229C4F9336B9470CACBD6BBF3395104750A915CC6EAAC197668267B8C62D2764C8CD69FD937CA3C924D997A0EDE7964BEB9EA2F92EF70C5E5DA0AA5567765E71F2B911B3C5586B741EEB93F3C73016EC16BFF283758900903D203992EFC8BAFAF13579C602F38C92608F4984E4A5769B1336AE461E05CD208550769783E471D7C20DE95AF8A53A6D2A584B1F0B488F7E27815CA8410608855FB53345E9B4D296935EEB7A3352BCEAA1B3D4486C7D645731276E59982CC37D7F2FA7EF6EDCE706CBDAC24CBD09D4223744B2147A13A5864B723D0C9BFBB1CFF16663789AD85784A74AA2E8F7A3A4132A97AA0041CB0F94DCAFF2A0629497B76C26247643067E6EF7B6CE3D9E79E0CCB7B10EC4113941CD1D0AFA8DEA66367DA5640250EAC8B4831042FE8A918FF976F10E2289402960ED6A58D5A0CFE676ED6B502DC7939A56A1FDC194BCC0F46D095622D144BCEFA66ADE4B31C869FEB6922E85DFED35DA56C44758E1AE2FEE7F35D3FA72C29FB59A0520A364AE5DE21C69D07EA5893C5CA6CADB020295880EF9AD85DA9D04B79813E5B1E00CA57532888DEBB1461DE68C9A19E3D21AF20B986B42E90626CACF90FF58F6C0305C7D857B6211F367C02FEC0B610EF46893C986A67063B56FDAEE5A834407B1BB756DFE56D2E2F86C4586EE4626F1BC9D2C4C4E7D263A5A54DAECF343A48DFD45349A911DE897E8700AA3CFAE34663406F0918BC41B1AFC683E3CEBEF13A7BCF422C9CCB2703E5F16201FE58C6B041DEABFF373F0AD42E1B378F78052616232CA57B09DE38896D76BEED130CD158C86C6C297BAB222C4D5A075F7DF864582A4BD6F47AEC67BFFC70E37937D679BD35C192406196584E8FC21531F94AFB1694BAF033D23EF0A6BBC113727A3D88989988DC7F9F71E8B
+
4B79DB5ADBE0B649E5D5472CC4BE5D653BA3B8E060FB0A6AAAE23053D2DB8E7AAA8CD3AC97F0619B246427DA868B47D1C47249CC0CE7E3E07553F889F696B92FCC82F1FE4A665AC43D343614F814555A27B8A0B6B2BCD155CF616F04ED7FF298EB5978A735B20169C09D1DBB991D50F75C2FB0101C81435CEF745F3A1751B6B6AED4B67A3CA8DFFF942103AF3D4BFECAF00231645AD7D809161A475527EE3CBDC8B7633816E45298567665B8BD4E00E00CDFE61F90B845261211286B872EF74CCC4F61A4A6597404E09B2A4EC63833BBDD8087B83B50D84051AE65B610202BF5740796245E53F8714619C532E04CFD81DB9AB18DEA17088CED2D2C05691427530C237B83A34053F2D3D2F2F49B681CF8325096EC5CF462406AD942F4883CFA5799337C8D661C3D5BCF2F388D4479835016B5F5EEAE1D3A90823B21FEF2ED96A69C64C009C07B076504A39EDE21F62796A19DEBCCBFBB4EC43A88B65A812F8A35641685CE85832722D01C5CDF88E52AB617FFF86253617817E3416A2749D911EBFF04DBFB0F6EB4C964620D9CA0E87D0B4CC7C5C7FB5DF1F7C7502A3DCECEC54EA693B0B03F83891B37DDA4586B783D2400F219A71C73E1FFCF01AC9444A1CF524BA5C06859BEB8E0E24972363E6B9DCDD534B0BB4696ED9DCCD2E61D2A1D57BDFD0E0D5D4E9D8B0159B4974F775C53D8765C3D2FE9648CD3948F7412EFDB2CEE5DBEDB3D9EEDA668CD580F0FD3DFD0435138FA9DC0654FF21CE96209934589A375757F643F07CA556BD1EAD84DE848C27E4B24501D150FAAA9FD6FD4703C4282B2E885F85B3220B8FB30B380ABF739C52CA5168B150F914C7C8D6418E3FAE86BB83DB24AE570AED210609F66A6931101A6B5BE954A315B1AAE49FF0CE262F7D13FDE35484328FA3F760EE7B96622E189C5FD8BD64EF8453E08AD93F739A3D1A5E41B76D41A454091BDFB1ED7A6D3572C74D94DD253B1E3460E7D001B020C77BDABC27AFF8E7D63A177047413511B6C0A586B858C3D5D8B4388E72638DB2E271421137BA4BD96936F514C2E898661342FA6674FE2B4682DFC4F71040D7A119986507079C2569C2AB57BECC4267574D894CFB1BD549ED9CC4ECDB8BAF3C8D67C79E7B9A48D425F080A4702D8D8CD1781E42F9B0F2F16CC7DFEFC80D699308A0FB00AEDF77A08A5B73529569E5519A7BE033E958F7849892CA841FE7B1AB758E2D39ADDF46BB9141C351FCC5962B50BBBF27AB204F52A4B1359B680951E683CB88B5ED4F599CED618892B2BF64EF42B91064EA7D4BD8284B9B9E947F37235F6651DF1F265681ED66134782F4D0472B26BF2AA9E8D7CDEC92B5D49D77245EFF9EE25391ED14CE40013D9CADFC38AD0D48303528648676EC341CF437CC81F10F518D726C1D0AE026106C70583C714BFB1D4E7A4BF7E5D6C7A3E88362EAFB45B8BFE67
+
84B3AC9C956271180296035ED2140B1E3D3CA66412A32F0EB9C06AE8531183F265A882C70604020F8ADB726F4E49591477119E0B46BE3AF7A056BB7CF0AE7F6EA61E8B2F7502303E3AD6C0CDB4976E69694CA107FF5EB7E0413DABEEA1CD136E72EFCE16D433F67501E466493BCB10960D694CCEEB574B1BD92E680F4D9F3548194B0D49FE74838F6E1E694406BFCDD976EE5F416951373F4B483F54A46B2640E4079C49AA3D849959DB18CEB3C8040CDCCC2A2A89030B89FFF0DE19D118048072D24A4FB2D022CC88B5C884DE72CF4883248B36302435B5588508FC4399F607912D3FCE809B0EFE7044CE72342EA109ECD1D6FCCFA2BC749DA1759934A8F7FE261F160DAA769BE51EBB479007948975D4DED4407A94114EF7BD220C5B6E020C515D6C8025E5508F0AE1DD9F187919B25DCD5F0BB9B1CA9760DDB1278AAB604ABB5F58EA8B5B5D5CAE298BDBD90C44706F20375DD5C032FD0881933221A9799B1C2D942793E164E335C193F1A413E0C03877E8F556C2D25EB49E75A7C19A2C9D229FAA519108CC9745BD741B843977914772899D303A8BBB1FCEA3F367432396CB18FEDE3E0635258008A9D3B34FA131EC9339A8BBEEE15BFCFACB543D0DF4160613951DBAC32B7977F6A60F8ED960CBE9259E40FD8628E9D9F9E838177927CEBE22EF860277604EE5F225ADCFEE6F9547BF0297E1263CE787CAD7D1AEE6A324764AD9FD2FC194B88B34E41B42FF0EE115D36816460ACCAF4B7964EEAE3ECCF942ED7161EF2CA7405A070884704A84CC785BF3296F65AE3E0255FA0315DCB2BDBFB165A85D41E29969A7CF360EAC4A2F32628F421BB85F76FDFCD70FF9E14CB0B3BF4C1E65C09E878C861A4B2DABAA3CB47464DC6D580A0F49B987EACB98B1B95462122DFB879C85A494E8EB5CF077EEE0472B3C57FCF8C6215D68533ECFABB698B022636C7CB3C20257916F28F69E192E1B2FA16FCB0D67190474E2F6C20B736AF58CD36150221A555D22BCD0698BD2BA5577948E4BFBDF58D13E2BDD4076C06E7E3DF665932B7F756FE34823217BF2AF8C7716C523D50C02F7B86C6B372E07B421E9370B9D3082824623707666FC94571F684F170469C1BA6222941CE17A6B076ABA8D510B5C7276E5E34A792C4F67F6F7C1A7DFC2011D04FB7C44828F7676250259EDFA161DF9297DF61868231DB11F4029A80ED3E093DB8A21172424855F4B3BB3D64C97F444232034488D7F0FAA9B416D03D4A36F1D1BE9D7CC59E143AE7C040A6B30E8A3E9FC9B579ADEB354CBBFEB1D553E3DE33A7CC67DF0C292E81FA320493AE9D0D64CBC44BFC85E460B6ACC75B47514FEB78192B194A7BD559EB75077BFEE3F55DB41825AE5D35101ECB955C0F2A87E0C85E5F5B8EDC06AFC58741CF0CEB3E4F5846F6EBD1FC0C2244DAB5AD23E38F48AC291705252F91DCAC7F3
+
B26D94FC4F540D66FF616BE7FDD9958B77FBFF0BC04E4B135C8032E2392F655E7ABF90743D979D11E83F1D80117792A3B1836720E07EAF9D97CA7EAE552944628FF2D0A03B924A8446243020FB7CC5AA2F0CB9EEE5EAF58E3FADAD9521A06493FD8C4FF8C58BDD29F50E0E1C155B29A698E09C72243689DBA1D4DDD03D6F490017037059869CC734D064F0C8D71AC4E42C9E4F0CF7D02E7585FD6C0BCDE2AF59E11FDE338DC2D6E10D930E02B0C3D10C4BD32CEDDE7887A6B9956E5BF0B16F2FDA784925650CB8DB267C3C92447A238451B96971003D260BF81413813CBEED2EC8AAA5EEFF3C66CF90E31FF1359D93E86362B0DAE78231938717E3975936CA65DBA1CE9AFFA84BAFB0A8F3831A0677BC854F2A06ACE8A28D0A8E2651007A0A17099D7EE773D80E9F48CC6EC53117F5FEC7426A909C8C3D1CA1121581846E0CBE7BED84CB8E6CD1B8363F91A74C88FE07D5273D8E00361F11A971CCB5730CF02A160161B813BDEB1719ACDE2B8AAC93E4D7045316D0E07C72128E0D60F997DD729F4E19E09A24E4D6716988F6DC6530B3558FDF7B7E53C5BD4CA15094AD820795714AF9708D63AD81829CA93E14FC7F8354627C571240010D4D613B24A99AEC4BD122E44764C8DBA6D4F443AAE0CB7E90A934AFB55E10C5E45887D582B65299404092C3561AAB19080F5776B70EE63C5D365855CCD547594F6CE7839A121652C04B4C5F3C72D9C7899E438A338F5B8BD66AA22239D3AF739F50D69D79EBF57FD0396617C409D28A26E4A94E45249FE3CDE52D0E145B2B93F37E8E4A5A1D101068044EC93CCCF8AB2D49010035C79131288E4765DECBD94CFEDE489C38866C9F1653D711CC7BCC10E2FC01612598E73A5CAF6557CA4DAECBA4F553FFB9D3414E2E5ABC99F6DEF1F285739929807F2FAC4F03742853807536C68979DD3466BC51C428EF544CD968E060415BDEB22544C8E22166805850C62879BAEDA8F2E45F2FC254D73D84164B0CF56DD84F84B413BF9EFABB350CF2710DDD194B6F5726249E61EB5089077209FFAE84CF5D15F0414F1714DE0A4F7802EDD70204F5239C82A3BF366B06DE35A31DD596F3
+
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 310 165 rc
+11 154 m
+125 154 l
+125 103 l
+11 103 l
+h
+11 154 m
+f
+1 J
+1 j
+0 0 0 sc
+1 0 0 -1 -54 251 cm
+65 97 m
+179 97 l
+179 148 l
+65 148 l
+h
+65 97 m
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 68 128.5 cm
+/F1.1[ 12 0 0 -12 0 0]sf
+-26.355469 -10 m
+(!"#$%"&')[ 9.333984 6.673828 3.333984 6.673828 6.673828 6.673828 6.673828 0.000000 ] xS
+-42.354492 4 m
+(\(\)*\)%&&+,#-%&)[ 7.330078 8.666016 8.003906 8.666016 6.673828 6.673828 6.673828 6.673828 6.000000 3.333984 2.666016 6.673828 0.000000 ] xS
+-19.010742 18 m
+(\(./+0')[ 7.330078 6.673828 3.996094 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+11 62 m
+125 62 l
+125 11 l
+11 11 l
+h
+11 62 m
+f
+0 0 0 sc
+1 0 0 -1 -54 251 cm
+65 189 m
+179 189 l
+179 240 l
+65 240 l
+h
+65 189 m
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 68 36.5 cm
+-36.688477 -3 m
+(10#02+34+&#)[ 8.666016 6.673828 3.333984 6.673828 8.003906 6.673828 6.673828 9.996094 6.673828 6.673828 0.000000 ] xS
+-19.010742 11 m
+(\(./+0')[ 7.330078 6.673828 3.996094 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+0 0 0 sc
+1 0 0 -1 -54 251 cm
+122 188.5 m
+122 161.82857 l
+S
+CM
+68 100.60001 m
+63.714287 89.171432 l
+72.285713 89.171432 l
+h
+68 100.60001 m
+f
+0 J
+0 j
+1 0 0 -1 -54 251 cm
+122 150.39999 m
+117.71429 161.82857 l
+126.28571 161.82857 l
+h
+122 150.39999 m
+S
+1 1 1 sc
+CM
+183 154 m
+297 154 l
+297 103 l
+183 103 l
+h
+183 154 m
+f
+1 J
+1 j
+0 0 0 sc
+1 0 0 -1 -54 251 cm
+237 97 m
+351 97 l
+351 148 l
+237 148 l
+h
+237 97 m
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 240 128.5 cm
+-24.345703 -10 m
+(5&,%4-&3)[ 3.333984 6.673828 6.000000 6.673828 9.996094 2.666016 6.673828 0.000000 ] xS
+-42.354492 4 m
+(\(\)*\)%&&+,#-%&)[ 7.330078 8.666016 8.003906 8.666016 6.673828 6.673828 6.673828 6.673828 6.000000 3.333984 2.666016 6.673828 0.000000 ] xS
+-19.010742 18 m
+(\(./+0')[ 7.330078 6.673828 3.996094 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+183 62 m
+297 62 l
+297 11 l
+183 11 l
+h
+183 62 m
+f
+0 0 0 sc
+1 0 0 -1 -54 251 cm
+237 189 m
+351 189 l
+351 240 l
+237 240 l
+h
+237 189 m
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 240 36.5 cm
+-36.688477 -3 m
+(10#02+34+&#)[ 8.666016 6.673828 3.333984 6.673828 8.003906 6.673828 6.673828 9.996094 6.673828 6.673828 0.000000 ] xS
+-19.010742 11 m
+(\(./+0')[ 7.330078 6.673828 3.996094 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+0 0 0 sc
+1 0 0 -1 -54 251 cm
+294 148.5 m
+294 175.17143 l
+S
+CM
+240 64.399994 m
+244.28571 75.828568 l
+235.71429 75.828568 l
+h
+240 64.399994 m
+f
+0 J
+0 j
+1 0 0 -1 -54 251 cm
+294 186.60001 m
+298.28571 175.17143 l
+289.71429 175.17143 l
+h
+294 186.60001 m
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 98.5 73.5 cm
+-26.34375 4 m
+(,%440&')[ 6.000000 6.673828 9.996094 9.996094 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+92 98.5 m
+105 98.5 l
+105 80.5 l
+92 80.5 l
+h
+92 98.5 m
+f
+1 J
+1 j
+0 0 0 sc
+1 0 0 -1 -54 251 cm
+146 152.5 m
+159 152.5 l
+159 170.5 l
+146 170.5 l
+h
+146 152.5 m
+S
+/Cs2 SC
+0 sc
+0 i
+1 0 0 -1 274.5 73.5 cm
+-26.34375 4 m
+(,%440&')[ 6.000000 6.673828 9.996094 9.996094 6.673828 6.673828 0.000000 ] xS
+0.60000002 i
+/Cs1 SC
+1 1 1 sc
+CM
+268 98.5 m
+281 98.5 l
+281 80.5 l
+268 80.5 l
+h
+268 98.5 m
+f
+0 0 0 sc
+1 0 0 -1 -54 251 cm
+322 152.5 m
+335 152.5 l
+335 170.5 l
+322 170.5 l
+h
+322 152.5 m
+S
+ep
+end
+%%Trailer
+%%EOF
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/paper/images/networkpipeline.graffle	Thu Feb 09 21:49:20 2012 +0900
@@ -0,0 +1,796 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>ActiveLayerIndex</key>
+	<integer>0</integer>
+	<key>ApplicationVersion</key>
+	<array>
+		<string>com.omnigroup.OmniGraffle</string>
+		<string>138.17.0.133677</string>
+	</array>
+	<key>AutoAdjust</key>
+	<true/>
+	<key>BackgroundGraphic</key>
+	<dict>
+		<key>Bounds</key>
+		<string>{{0, 0}, {559, 783}}</string>
+		<key>Class</key>
+		<string>SolidGraphic</string>
+		<key>ID</key>
+		<integer>2</integer>
+		<key>Style</key>
+		<dict>
+			<key>shadow</key>
+			<dict>
+				<key>Draws</key>
+				<string>NO</string>
+			</dict>
+			<key>stroke</key>
+			<dict>
+				<key>Draws</key>
+				<string>NO</string>
+			</dict>
+		</dict>
+	</dict>
+	<key>CanvasOrigin</key>
+	<string>{0, 0}</string>
+	<key>ColumnAlign</key>
+	<integer>1</integer>
+	<key>ColumnSpacing</key>
+	<real>36</real>
+	<key>CreationDate</key>
+	<string>2012-02-09 15:32:54 +0900</string>
+	<key>Creator</key>
+	<string>Kazuki AKAMINE</string>
+	<key>DisplayScale</key>
+	<string>1 0/72 in = 1 0/72 in</string>
+	<key>GraphDocumentVersion</key>
+	<integer>6</integer>
+	<key>GraphicsList</key>
+	<array>
+		<dict>
+			<key>Bounds</key>
+			<string>{{322, 152.5}, {13, 18}}</string>
+			<key>Class</key>
+			<string>ShapedGraphic</string>
+			<key>ID</key>
+			<integer>14</integer>
+			<key>Shape</key>
+			<string>Rectangle</string>
+			<key>Style</key>
+			<dict>
+				<key>shadow</key>
+				<dict>
+					<key>Draws</key>
+					<string>NO</string>
+				</dict>
+			</dict>
+		</dict>
+		<dict>
+			<key>Bounds</key>
+			<string>{{302, 170.5}, {53, 14}}</string>
+			<key>Class</key>
+			<string>ShapedGraphic</string>
+			<key>FitText</key>
+			<string>YES</string>
+			<key>Flow</key>
+			<string>Resize</string>
+			<key>ID</key>
+			<integer>13</integer>
+			<key>Shape</key>
+			<string>Rectangle</string>
+			<key>Style</key>
+			<dict>
+				<key>fill</key>
+				<dict>
+					<key>Draws</key>
+					<string>NO</string>
+				</dict>
+				<key>shadow</key>
+				<dict>
+					<key>Draws</key>
+					<string>NO</string>
+				</dict>
+				<key>stroke</key>
+				<dict>
+					<key>Draws</key>
+					<string>NO</string>
+				</dict>
+			</dict>
+			<key>Text</key>
+			<dict>
+				<key>Pad</key>
+				<integer>0</integer>
+				<key>Text</key>
+				<string>{\rtf1\ansi\ansicpg932\cocoartf1038\cocoasubrtf360
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc\pardirnatural
+
+\f0\fs24 \cf0 command}</string>
+				<key>VerticalPad</key>
+				<integer>0</integer>
+			</dict>
+			<key>Wrap</key>
+			<string>NO</string>
+		</dict>
+		<dict>
+			<key>Bounds</key>
+			<string>{{146, 152.5}, {13, 18}}</string>
+			<key>Class</key>
+			<string>ShapedGraphic</string>
+			<key>ID</key>
+			<integer>11</integer>
+			<key>Shape</key>
+			<string>Rectangle</string>
+			<key>Style</key>
+			<dict>
+				<key>shadow</key>
+				<dict>
+					<key>Draws</key>
+					<string>NO</string>
+				</dict>
+			</dict>
+		</dict>
+		<dict>
+			<key>Bounds</key>
+			<string>{{126, 170.5}, {53, 14}}</string>
+			<key>Class</key>
+			<string>ShapedGraphic</string>
+			<key>FitText</key>
+			<string>YES</string>
+			<key>Flow</key>
+			<string>Resize</string>
+			<key>ID</key>
+			<integer>10</integer>
+			<key>Shape</key>
+			<string>Rectangle</string>
+			<key>Style</key>
+			<dict>
+				<key>fill</key>
+				<dict>
+					<key>Draws</key>
+					<string>NO</string>
+				</dict>
+				<key>shadow</key>
+				<dict>
+					<key>Draws</key>
+					<string>NO</string>
+				</dict>
+				<key>stroke</key>
+				<dict>
+					<key>Draws</key>
+					<string>NO</string>
+				</dict>
+			</dict>
+			<key>Text</key>
+			<dict>
+				<key>Pad</key>
+				<integer>0</integer>
+				<key>Text</key>
+				<string>{\rtf1\ansi\ansicpg932\cocoartf1038\cocoasubrtf360
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc\pardirnatural
+
+\f0\fs24 \cf0 command}</string>
+				<key>VerticalPad</key>
+				<integer>0</integer>
+			</dict>
+			<key>Wrap</key>
+			<string>NO</string>
+		</dict>
+		<dict>
+			<key>AllowLabelDrop</key>
+			<false/>
+			<key>Class</key>
+			<string>LineGraphic</string>
+			<key>Head</key>
+			<dict>
+				<key>ID</key>
+				<integer>7</integer>
+			</dict>
+			<key>ID</key>
+			<integer>9</integer>
+			<key>Points</key>
+			<array>
+				<string>{294, 148.5}</string>
+				<string>{294, 188.5}</string>
+			</array>
+			<key>Style</key>
+			<dict>
+				<key>stroke</key>
+				<dict>
+					<key>HeadArrow</key>
+					<string>FilledArrow</string>
+					<key>HeadScale</key>
+					<real>1.4285709857940674</real>
+					<key>TailArrow</key>
+					<string>0</string>
+					<key>TailScale</key>
+					<real>0.5</real>
+				</dict>
+			</dict>
+			<key>Tail</key>
+			<dict>
+				<key>ID</key>
+				<integer>6</integer>
+			</dict>
+		</dict>
+		<dict>
+			<key>Bounds</key>
+			<string>{{237, 189}, {114, 51}}</string>
+			<key>Class</key>
+			<string>ShapedGraphic</string>
+			<key>ID</key>
+			<integer>7</integer>
+			<key>Shape</key>
+			<string>Rectangle</string>
+			<key>Style</key>
+			<dict>
+				<key>shadow</key>
+				<dict>
+					<key>Draws</key>
+					<string>NO</string>
+				</dict>
+			</dict>
+			<key>Text</key>
+			<dict>
+				<key>Text</key>
+				<string>{\rtf1\ansi\ansicpg932\cocoartf1038\cocoasubrtf360
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc\pardirnatural
+
+\f0\fs24 \cf0 DataSegment\
+Thread}</string>
+			</dict>
+		</dict>
+		<dict>
+			<key>Bounds</key>
+			<string>{{237, 97}, {114, 51}}</string>
+			<key>Class</key>
+			<string>ShapedGraphic</string>
+			<key>ID</key>
+			<integer>6</integer>
+			<key>Shape</key>
+			<string>Rectangle</string>
+			<key>Style</key>
+			<dict>
+				<key>shadow</key>
+				<dict>
+					<key>Draws</key>
+					<string>NO</string>
+				</dict>
+			</dict>
+			<key>Text</key>
+			<dict>
+				<key>Text</key>
+				<string>{\rtf1\ansi\ansicpg932\cocoartf1038\cocoasubrtf360
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc\pardirnatural
+
+\f0\fs24 \cf0 Incoming\
+TCPConnection\
+Thread}</string>
+			</dict>
+		</dict>
+		<dict>
+			<key>AllowLabelDrop</key>
+			<false/>
+			<key>Class</key>
+			<string>LineGraphic</string>
+			<key>Head</key>
+			<dict>
+				<key>ID</key>
+				<integer>1</integer>
+			</dict>
+			<key>ID</key>
+			<integer>5</integer>
+			<key>Points</key>
+			<array>
+				<string>{122, 188.5}</string>
+				<string>{122, 148.5}</string>
+			</array>
+			<key>Style</key>
+			<dict>
+				<key>stroke</key>
+				<dict>
+					<key>HeadArrow</key>
+					<string>FilledArrow</string>
+					<key>HeadScale</key>
+					<real>1.4285709857940674</real>
+					<key>TailArrow</key>
+					<string>0</string>
+					<key>TailScale</key>
+					<real>0.5</real>
+				</dict>
+			</dict>
+			<key>Tail</key>
+			<dict>
+				<key>ID</key>
+				<integer>4</integer>
+			</dict>
+		</dict>
+		<dict>
+			<key>Bounds</key>
+			<string>{{65, 189}, {114, 51}}</string>
+			<key>Class</key>
+			<string>ShapedGraphic</string>
+			<key>ID</key>
+			<integer>4</integer>
+			<key>Shape</key>
+			<string>Rectangle</string>
+			<key>Style</key>
+			<dict>
+				<key>shadow</key>
+				<dict>
+					<key>Draws</key>
+					<string>NO</string>
+				</dict>
+			</dict>
+			<key>Text</key>
+			<dict>
+				<key>Text</key>
+				<string>{\rtf1\ansi\ansicpg932\cocoartf1038\cocoasubrtf360
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc\pardirnatural
+
+\f0\fs24 \cf0 DataSegment\
+Thread}</string>
+			</dict>
+		</dict>
+		<dict>
+			<key>Bounds</key>
+			<string>{{65, 97}, {114, 51}}</string>
+			<key>Class</key>
+			<string>ShapedGraphic</string>
+			<key>ID</key>
+			<integer>1</integer>
+			<key>Shape</key>
+			<string>Rectangle</string>
+			<key>Style</key>
+			<dict>
+				<key>shadow</key>
+				<dict>
+					<key>Draws</key>
+					<string>NO</string>
+				</dict>
+			</dict>
+			<key>Text</key>
+			<dict>
+				<key>Text</key>
+				<string>{\rtf1\ansi\ansicpg932\cocoartf1038\cocoasubrtf360
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc\pardirnatural
+
+\f0\fs24 \cf0 Outbound\
+TCPConnection\
+Thread}</string>
+			</dict>
+		</dict>
+	</array>
+	<key>GridInfo</key>
+	<dict/>
+	<key>GuidesLocked</key>
+	<string>NO</string>
+	<key>GuidesVisible</key>
+	<string>YES</string>
+	<key>HPages</key>
+	<integer>1</integer>
+	<key>ImageCounter</key>
+	<integer>1</integer>
+	<key>KeepToScale</key>
+	<false/>
+	<key>Layers</key>
+	<array>
+		<dict>
+			<key>Lock</key>
+			<string>NO</string>
+			<key>Name</key>
+			<string>レイヤー 1</string>
+			<key>Print</key>
+			<string>YES</string>
+			<key>View</key>
+			<string>YES</string>
+		</dict>
+	</array>
+	<key>LayoutInfo</key>
+	<dict>
+		<key>Animate</key>
+		<string>NO</string>
+		<key>circoMinDist</key>
+		<real>18</real>
+		<key>circoSeparation</key>
+		<real>0.0</real>
+		<key>layoutEngine</key>
+		<string>dot</string>
+		<key>neatoSeparation</key>
+		<real>0.0</real>
+		<key>twopiSeparation</key>
+		<real>0.0</real>
+	</dict>
+	<key>LinksVisible</key>
+	<string>NO</string>
+	<key>MagnetsVisible</key>
+	<string>NO</string>
+	<key>MasterSheets</key>
+	<array/>
+	<key>ModificationDate</key>
+	<string>2012-02-09 15:40:44 +0900</string>
+	<key>Modifier</key>
+	<string>Kazuki AKAMINE</string>
+	<key>NotesVisible</key>
+	<string>NO</string>
+	<key>Orientation</key>
+	<integer>2</integer>
+	<key>OriginVisible</key>
+	<string>NO</string>
+	<key>PageBreaks</key>
+	<string>YES</string>
+	<key>PrintInfo</key>
+	<dict>
+		<key>NSBottomMargin</key>
+		<array>
+			<string>float</string>
+			<string>41</string>
+		</array>
+		<key>NSLeftMargin</key>
+		<array>
+			<string>float</string>
+			<string>18</string>
+		</array>
+		<key>NSPaperSize</key>
+		<array>
+			<string>size</string>
+			<string>{595, 842}</string>
+		</array>
+		<key>NSRightMargin</key>
+		<array>
+			<string>float</string>
+			<string>18</string>
+		</array>
+		<key>NSTopMargin</key>
+		<array>
+			<string>float</string>
+			<string>18</string>
+		</array>
+	</dict>
+	<key>PrintOnePage</key>
+	<false/>
+	<key>QuickLookPreview</key>
+	<data>
+	JVBERi0xLjMKJcTl8uXrp/Og0MTGCjUgMCBvYmoKPDwgL0xlbmd0aCA2IDAgUiAvRmls
+	dGVyIC9GbGF0ZURlY29kZSA+PgpzdHJlYW0KeAHNVktv00AQvu+vmKNzyHZnX15fCSCR
+	C1SxxAFxAJOQRnWqNun/Z2Ztr7fBCeFQgaKom+08vnl9O49wC4+g6ONcBWUw8LSGz7CH
+	m8UBoTkAxs+hgbmSDvibCW7AO/DGAaIFh4J0NyS/pO+us7BYReMKVgvyg/HHnP+wq6Zl
+	/ars1dn1ivCQay3ItQJymymh1uA9QyDFNzUjUkppqBtA3VvWMNdeGudsCXNUULfi5j1K
+	Ra7rDRQfn4/fH573P2ZQ7+BdHYNPoE7t50atJqPWVmBF3UJm8gsU9YzyoqFYzBgSHT6l
+	08Nwtf/tsJ6JTro59vp3g0yu9RXq5V8hxUoqVKUFDOehbgdXT+vh9G04UHJGp30biNQG
+	VDBnTVaxTV6ivK4YqkzsT4V1PqTC5ok3XvoQbIC5oWK+yLwo3g6YE/ghl+lilQL8OQi3
+	6SpV5TgTY8wnLXcO2Zho6q0cmch64upEZ05TEqkhBQbOS0sdrgE9yqCDh/thTuKI8vTG
+	WYkNbLT0LI+lLJEq5TVKpJO4Jxte6uDKdEeGttGy77U2ZGhJ391kUSMGp6QVmf0MVLKf
+	3XX2kbUIFXdBaiVtCMkZ8phKB8tPkgXz1ClZ6Mp2ZCE6ssh7SltpLKWhI4gXPQXFh34a
+	U280aRzbu2Fm0z+pqSYbJ7nvuSp3/39xySWkY4u/CpdwQa8hE5a7nk04oHMz+2/Z5BKy
+	MdWvxSbkXaDt2ISRYOkiMZxjk4i28nFudRV65lBlpCBiEx2qnmH6u8gmudZlNokYAtE7
+	sUmyn4FK9rO7LUnyy0ZaPZvwsjDOP71TzIW0YaDTxJteuclXhXcEa0oH9iV1A1H3MO+i
+	aNv0jKSBn3odR0pD68Eje0Z6IwNvNLQQiW4hmuI0VuigJoXhpRyjGvcmo7l+MaopXrsi
+	KpiIShSXozK8eJ1GNRUNC2bR8D7I0dz+AmvyJLoKZW5kc3RyZWFtCmVuZG9iago2IDAg
+	b2JqCjcxNgplbmRvYmoKMyAwIG9iago8PCAvVHlwZSAvUGFnZSAvUGFyZW50IDQgMCBS
+	IC9SZXNvdXJjZXMgNyAwIFIgL0NvbnRlbnRzIDUgMCBSIC9NZWRpYUJveCBbMCAwIDU1
+	OSA3ODNdCj4+CmVuZG9iago3IDAgb2JqCjw8IC9Qcm9jU2V0IFsgL1BERiAvVGV4dCBd
+	IC9Db2xvclNwYWNlIDw8IC9DczEgOCAwIFIgL0NzMiA5IDAgUiA+PiAvRm9udCA8PAov
+	RjEuMCAxMCAwIFIgPj4gPj4KZW5kb2JqCjExIDAgb2JqCjw8IC9MZW5ndGggMTIgMCBS
+	IC9OIDMgL0FsdGVybmF0ZSAvRGV2aWNlUkdCIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlID4+
+	CnN0cmVhbQp4AYVUz2sTQRT+Nm6p0CIIWmsOsniQIklZq2hF1Db9EWJrDNsftkWQZDNJ
+	1m426+4mtaWI5OLRKt5F7aEH/4AeevBkL0qFWkUo3qsoYqEXLfHNbky2perAzn7z3jfv
+	fW923wANctI09YAE5A3HUqIRaWx8Qmr8iACOoglBNCVV2+xOJAZBg3P5e+fYeg+BW1bD
+	e/t3snetmtK2mgeE/UDgR5rZKrDvF3EKWRICiDzfoSnHdAjf49jy7I85Tnl4wbUPKz3E
+	WSJ8QDUtzn9NuFPNJdNAg0g4lPVxUj6c14uU1x0HaW5mxsgQvU+QprvM7qtioZxO9g6Q
+	vZ30fk6z3j7CIcILGa0/RriNnvWM1T/iYeGk5sSGPRwYNfT4YBW3Gqn4NcIUXxBNJ6JU
+	cdkuDfGYrv1W8kqCcJA4ymRhgHNaSE/XTG74uocFfSbXE6/id1ZR4XmPE2fe1N3vRdoC
+	rzAOHQwaDJoNSFAQRQRhmLBQQIY8GjE0snI/I6sGG5N7MnUkart0YkSxQXs23D23UaTd
+	PP4oInGUQ7UIkvxB/iqvyU/lefnLXLDYVveUrZuauvLgO8XlmbkaHtfTyONzTV58ldR2
+	k1dHlqx5erya7Bo/7FeXMeaCNY/Ec7D78S1flcyXKYwUxeNV8+pLhHVaMTffn2x/Oz3i
+	Ls8utdZzrYmLN1abl2f9akj77qq8k+ZV+U9e9fH8Z83EY+IpMSZ2iuchiZfFLvGS2Eur
+	C+JgbccInZWGKdJtkfok1WBgmrz1L10/W3i9Rn8M9VGUGczSVIn3f8IqZDSduQ5v+o/b
+	x/wX5PeK558oAi9s4MiZum1Tce8QoWWlbnOuAhe/0X3wtm5ro344/ARYPKsWrVI1nyC8
+	ARx2h3oe6CmY05aWzTlShyyfk7rpymJSzFDbQ1JS1yXXZUsWs5lVYul22JnTHW4coTlC
+	98SnSmWT+q/xEbD9sFL5+axS2X5OGtaBl/pvwLz9RQplbmRzdHJlYW0KZW5kb2JqCjEy
+	IDAgb2JqCjczNwplbmRvYmoKOCAwIG9iagpbIC9JQ0NCYXNlZCAxMSAwIFIgXQplbmRv
+	YmoKMTMgMCBvYmoKPDwgL0xlbmd0aCAxNCAwIFIgL04gMSAvQWx0ZXJuYXRlIC9EZXZp
+	Y2VHcmF5IC9GaWx0ZXIgL0ZsYXRlRGVjb2RlID4+CnN0cmVhbQp4AYVST0gUURz+zTYS
+	hIhBhXiIdwoJlSmsrKDadnVZlW1bldKiGGffuqOzM9Ob2TXFkwRdojx1D6JjdOzQoZuX
+	osCsS9cgqSAIPHXo+83s6iiEb3k73/v9/X7fe0RtnabvOylBVHNDlSulp25OTYuDHylF
+	HdROWKYV+OlicYyx67mSv7vX1mfS2LLex7V2+/Y9tZVlYCHqLba3EPohkWYAH5mfKGWA
+	s8Adlq/YPgE8WA6sGvAjogMPmrkw09GcdKWyLZFT5qIoKq9iO0mu+/m5xr6LtYmD/lyP
+	ZtaOvbPqqtFM1LT3RKG8D65EGc9fVPZsNRSnDeOcSEMaKfKu1d8rTMcRkSsQSgZSNWS5
+	n2pOnXXgdRi7XbqT4/j2EKU+yWCoibXpspkdhX0AdirL7BDwBejxsmIP54F7Yf9bUcOT
+	wCdhP2SHedatH/YXrlPge4Q9NeDOFK7F8dqKH14tAUP3VCNojHNNxNPXOXOkiO8x1BmY
+	90Y5pgsxd5aqEzeAO2EfWapmCrFd+67qJe57AnfT4zvRmzkLXKAcSXKxFdkU0DwJWBR9
+	i7BJDjw+zh5V4HeomMAcuYnczSj3HtURG2ejUoFWeo1Xxk/jufHF+GVsGM+Afqx213t8
+	/+njFXXXtj48+Y163DmuvZ0bVWFWcWUL3f/HMoSP2Sc5psHToVlYa9h25A+azEywDCjE
+	fwU+l/qSE1Xc1e7tuEUSzFA+LGwluktUbinU6j2DSqwcK9gAdnCSxCxaHLhTa7o5eHfY
+	Inpt+U1XsuuG/vr2evva8h5tyqgpKBPNs0RmlLFbo+TdeNv9ZpERnzg6vue9ilrJ/klF
+	ED+FOVoq8hRV9FZQ1sRvZw5+G7Z+XD+l5/VB/TwJPa2f0a/ooxG+DHRJz8JzUR+jSfCw
+	aSHiEqCKgzPUTlRjjQPiKfHytFtkkf0PQBn9ZgplbmRzdHJlYW0KZW5kb2JqCjE0IDAg
+	b2JqCjcwNAplbmRvYmoKOSAwIG9iagpbIC9JQ0NCYXNlZCAxMyAwIFIgXQplbmRvYmoK
+	NCAwIG9iago8PCAvVHlwZSAvUGFnZXMgL01lZGlhQm94IFswIDAgNjEyIDc5Ml0gL0Nv
+	dW50IDEgL0tpZHMgWyAzIDAgUiBdID4+CmVuZG9iagoxNSAwIG9iago8PCAvVHlwZSAv
+	Q2F0YWxvZyAvT3V0bGluZXMgMiAwIFIgL1BhZ2VzIDQgMCBSID4+CmVuZG9iagoyIDAg
+	b2JqCjw8IC9MYXN0IDE2IDAgUiAvRmlyc3QgMTcgMCBSID4+CmVuZG9iagoxNyAwIG9i
+	ago8PCAvUGFyZW50IDE4IDAgUiAvQ291bnQgMCAvRGVzdCBbIDMgMCBSIC9YWVogMCA3
+	ODMgMCBdIC9UaXRsZSAo/v8wrTDjMPMw0DC5XDAwMCBcMDAwMSkKPj4KZW5kb2JqCjE4
+	IDAgb2JqCjw8ID4+CmVuZG9iagoxNiAwIG9iago8PCAvUGFyZW50IDE4IDAgUiAvQ291
+	bnQgMCAvRGVzdCBbIDMgMCBSIC9YWVogMCA3ODMgMCBdIC9UaXRsZSAo/v8wrTDjMPMw
+	0DC5XDAwMCBcMDAwMSkKPj4KZW5kb2JqCjE5IDAgb2JqCjw8IC9MZW5ndGggMjAgMCBS
+	IC9MZW5ndGgxIDEwNDA4IC9GaWx0ZXIgL0ZsYXRlRGVjb2RlID4+CnN0cmVhbQp4Ab06
+	a3hU1bVrn/c8MpmZzPs9mcxMJu9MSCAkkDEkEB7BQBATSjAJBAJCjQhRqHCj4oOIXAF5
+	CNaKD55ihkBlAOFSigXubSt6KyrXWluh5bamtr1gLZCZu/aZECFf288ffj3nW3vvtfc+
+	+6y91tprrb3PWbJ4aRukQBewUDejpWMuyFfgcwDy1uxFLR1JPE2N+crZnUs8SZzPBGAX
+	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
+	bGmE+lSw6tNipBqVbuVgtDRZS+Pl2opT/aeox6C6llyXslhMZmMeuki6JFfvNb56L29x
+	au3ap9ajGh0u2cawx1mmZ3H/FmonzIkvGAU/Azk/9YcpecoTGhIjFRE/Zyo1s4JGqbPh
+	UsAvyiEwaoyprJtl2Bsm3O3f8M4biG76m0pP0f2cNrkE8pNRfJ+2/6K8QnF96nDzMRij
+	BorRfxftenPv3oCxMMVlcI8Jrpyxbh0/I/7+hv7qEWkqwqxVSI/MY97eINuJrsRn7Ceo
+	JmakcFZkZMxwxsAo0iSDNc1qyBQeZD9A0wa8RglCipJHvbCIFguGTHnKkFpls5EQJfa9
+	m1ZEPp6hweag/a8opx6Xso40kSShaJhpkDFc9nu4kdL5yQhbwWNvVfkP7mF8w+ZtuFSf
+	S3q4/P7SqcOad834PqO5/u6Lo7KmPT91NfOhja5D+Uq04Tf+v3eZsDIAQfxPIYwOoQSG
+	QxVUw1j534EJ8v8B9O8F+o/A3dAgD0DwRI0eWeDPWfifF0waU1Nbe1d2TdvCzrYl82e3
+	YH2ylfZoRqDfoB9GWIPwAsLrCG8hUOtI3e3nCDfwITWCAyEHoRxhEsJMhIUIDyOsQXgB
+	4fXEwIXPwWCZ4Bni7XjVEBwX92397xyC1w3B64fg04bgdKa3vr91CD57CD5nCC7L4xb6
+	5w1pbx+Czx+Cy/8E3vL8d4e03zcEXzwEl//pu+X5pbT9/wGnKsL/CmVuZHN0cmVhbQpl
+	bmRvYmoKMjAgMCBvYmoKNjc3NQplbmRvYmoKMjEgMCBvYmoKPDwgL1R5cGUgL0ZvbnRE
+	ZXNjcmlwdG9yIC9Bc2NlbnQgNzcwIC9DYXBIZWlnaHQgNzM3IC9EZXNjZW50IC0yMzAg
+	L0ZsYWdzIDMyCi9Gb250QkJveCBbLTk1MSAtNDgxIDE0NDUgMTEyMl0gL0ZvbnROYW1l
+	IC9MQ0hNTVUrSGVsdmV0aWNhIC9JdGFsaWNBbmdsZSAwCi9TdGVtViAwIC9NYXhXaWR0
+	aCAxNTAwIC9YSGVpZ2h0IDYzNyAvRm9udEZpbGUyIDE5IDAgUiA+PgplbmRvYmoKMjIg
+	MCBvYmoKWyA3MjIgNzIyIDAgMCAwIDAgMjc4IDAgMCAwIDAgMCA3NzggNjY3IDAgMCA2
+	NjcgNjExIDAgMCAwIDAgMCAwIDAgMCAwIDAgMAowIDU1NiA1NTYgNTAwIDU1NiA1NTYg
+	MCA1NTYgNTU2IDIyMiAwIDAgMCA4MzMgNTU2IDU1NiAwIDAgMzMzIDAgMjc4IDU1NiBd
+	CmVuZG9iagoxMCAwIG9iago8PCAvVHlwZSAvRm9udCAvU3VidHlwZSAvVHJ1ZVR5cGUg
+	L0Jhc2VGb250IC9MQ0hNTVUrSGVsdmV0aWNhIC9Gb250RGVzY3JpcHRvcgoyMSAwIFIg
+	L1dpZHRocyAyMiAwIFIgL0ZpcnN0Q2hhciA2NyAvTGFzdENoYXIgMTE3IC9FbmNvZGlu
+	ZyAvTWFjUm9tYW5FbmNvZGluZwo+PgplbmRvYmoKMjMgMCBvYmoKKE1hYyBPUyBYIDEw
+	LjYuOCBRdWFydHogUERGQ29udGV4dCkKZW5kb2JqCjI0IDAgb2JqCihEOjIwMTIwMjA5
+	MDY0MTE4WjAwJzAwJykKZW5kb2JqCjEgMCBvYmoKPDwgL1Byb2R1Y2VyIDIzIDAgUiAv
+	Q3JlYXRpb25EYXRlIDI0IDAgUiAvTW9kRGF0ZSAyNCAwIFIgPj4KZW5kb2JqCnhyZWYK
+	MCAyNQowMDAwMDAwMDAwIDY1NTM1IGYgCjAwMDAwMTA3ODMgMDAwMDAgbiAKMDAwMDAw
+	Mjk1NCAwMDAwMCBuIAowMDAwMDAwODMxIDAwMDAwIG4gCjAwMDAwMDI4MDUgMDAwMDAg
+	biAKMDAwMDAwMDAyMiAwMDAwMCBuIAowMDAwMDAwODEyIDAwMDAwIG4gCjAwMDAwMDA5
+	MzUgMDAwMDAgbiAKMDAwMDAwMTkwNSAwMDAwMCBuIAowMDAwMDAyNzY5IDAwMDAwIG4g
+	CjAwMDAwMTA1MTQgMDAwMDAgbiAKMDAwMDAwMTA0NSAwMDAwMCBuIAowMDAwMDAxODg1
+	IDAwMDAwIG4gCjAwMDAwMDE5NDEgMDAwMDAgbiAKMDAwMDAwMjc0OSAwMDAwMCBuIAow
+	MDAwMDAyODg4IDAwMDAwIG4gCjAwMDAwMDMxMzEgMDAwMDAgbiAKMDAwMDAwMzAwMiAw
+	MDAwMCBuIAowMDAwMDAzMTA5IDAwMDAwIG4gCjAwMDAwMDMyMzggMDAwMDAgbiAKMDAw
+	MDAxMDEwNCAwMDAwMCBuIAowMDAwMDEwMTI1IDAwMDAwIG4gCjAwMDAwMTAzNTAgMDAw
+	MDAgbiAKMDAwMDAxMDY4OSAwMDAwMCBuIAowMDAwMDEwNzQxIDAwMDAwIG4gCnRyYWls
+	ZXIKPDwgL1NpemUgMjUgL1Jvb3QgMTUgMCBSIC9JbmZvIDEgMCBSIC9JRCBbIDwxYzg1
+	ZWVkM2VkY2E4ODllN2U3ODY0ZjcyMGEyMDdkYT4KPDFjODVlZWQzZWRjYTg4OWU3ZTc4
+	NjRmNzIwYTIwN2RhPiBdID4+CnN0YXJ0eHJlZgoxMDg1OAolJUVPRgoxIDAgb2JqCjw8
+	L0F1dGhvciAoS2F6dWtpIEFLQU1JTkUpL0NyZWF0aW9uRGF0ZSAoRDoyMDEyMDIwOTA2
+	MzIwMFopL0NyZWF0b3IgKE9tbmlHcmFmZmxlIDUuMi4zKS9Nb2REYXRlIChEOjIwMTIw
+	MjA5MDY0MDAwWikvUHJvZHVjZXIgMjMgMCBSID4+CmVuZG9iagp4cmVmCjEgMQowMDAw
+	MDExNTE2IDAwMDAwIG4gCnRyYWlsZXIKPDwvSUQgWzwxYzg1ZWVkM2VkY2E4ODllN2U3
+	ODY0ZjcyMGEyMDdkYT4gPDFjODVlZWQzZWRjYTg4OWU3ZTc4NjRmNzIwYTIwN2RhPl0g
+	L0luZm8gMSAwIFIgL1ByZXYgMTA4NTggL1Jvb3QgMTUgMCBSIC9TaXplIDI1Pj4Kc3Rh
+	cnR4cmVmCjExNjY2CiUlRU9GCg==
+	</data>
+	<key>QuickLookThumbnail</key>
+	<data>
+	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
+	</data>
+	<key>ReadOnly</key>
+	<string>NO</string>
+	<key>RowAlign</key>
+	<integer>1</integer>
+	<key>RowSpacing</key>
+	<real>36</real>
+	<key>SheetTitle</key>
+	<string>キャンバス 1</string>
+	<key>SmartAlignmentGuidesActive</key>
+	<string>YES</string>
+	<key>SmartDistanceGuidesActive</key>
+	<string>YES</string>
+	<key>UniqueID</key>
+	<integer>1</integer>
+	<key>UseEntirePage</key>
+	<false/>
+	<key>VPages</key>
+	<integer>1</integer>
+	<key>WindowInfo</key>
+	<dict>
+		<key>CurrentSheet</key>
+		<integer>0</integer>
+		<key>ExpandedCanvases</key>
+		<array/>
+		<key>Frame</key>
+		<string>{{268, 161}, {693, 937}}</string>
+		<key>ListView</key>
+		<true/>
+		<key>OutlineWidth</key>
+		<integer>142</integer>
+		<key>RightSidebar</key>
+		<false/>
+		<key>ShowRuler</key>
+		<true/>
+		<key>Sidebar</key>
+		<true/>
+		<key>SidebarWidth</key>
+		<integer>120</integer>
+		<key>VisibleRegion</key>
+		<string>{{0, 0}, {558, 783}}</string>
+		<key>Zoom</key>
+		<real>1</real>
+		<key>ZoomValues</key>
+		<array>
+			<array>
+				<string>キャンバス 1</string>
+				<real>1</real>
+				<real>1</real>
+			</array>
+		</array>
+	</dict>
+	<key>saveQuickLookFiles</key>
+	<string>YES</string>
+</dict>
+</plist>
Binary file paper/images/networkpipeline.pdf has changed