From 8b8eed5c5709af3553daf9b41db5ec53518585da Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Fri, 25 Jul 2008 14:55:44 +0000 Subject: one phase commit --- LaTeX/chapters/simulator.tex | 41 +- LaTeX/diplomarbeit.pdf | 3296 +++++++++++--------- .../implementations/VSBerkelyTimeProtocol.java | 2 +- .../implementations/VSOnePhaseCommitProtocol.java | 9 +- 4 files changed, 1795 insertions(+), 1553 deletions(-) diff --git a/LaTeX/chapters/simulator.tex b/LaTeX/chapters/simulator.tex index 456160d..6da20b0 100644 --- a/LaTeX/chapters/simulator.tex +++ b/LaTeX/chapters/simulator.tex @@ -540,11 +540,50 @@ In den Beispiel in Abbildung \ref{fig:BerkeleyProto} gibt es 2 Clientprozesse P1 Dieses Protokoll verwendet folgende serverseitige Variable, die in den Prozesseinstellungen unter dem Punkt ``Berkeley Server'' konfiguriert werden kann. Clientseitig gibt es hier keine Variablen. \begin{itemize} - \item \textbf{PIDs beteiliger Prozesse} \textit{(Integer[], [1,2])}: Dieser Vektor aus Integerwerten beinhaltet alle PIDs der Berkeley Clientprozesse, mit denen der Berkeley Server synchronisieren soll. Wenn hier eine PID angegeben wird, die gar nicht existiert oder nicht das Berkeley Protokoll clientseitig unterst\"{u}tz, funktioniert das Protokoll nicht. Dann wird ewig auf eine fehlende Clientantwort gewartet. + \item \textbf{PIDs beteiliger Prozesse} \textit{(Integer[], [1,3])}: Dieser Vektor aus Integerwerten beinhaltet alle PIDs der Berkeley Clientprozesse, mit denen der Berkeley Server synchronisieren soll. Wenn hier eine PID angegeben wird, die gar nicht existiert oder nicht das Berkeley Protokoll clientseitig unterst\"{u}tz, funktioniert das Protokoll nicht. Dann wird ewig auf eine fehlende Clientantwort gewartet. \end{itemize} \subsection{Das Ein-Phasen Commit Protokoll} +\begin{figure}[htbp] + \centering + \fbox{\includegraphics[width=10cm]{images/ss-protokoll-one-phase-commit}} + \caption{Das Ein-Phasen Commit Protokoll} + \label{fig:OnePhaseCommitProto} +\end{figure} + +Das Ein-Phasen Commit Protokoll ist daf\"{u}r da, beliebig vielen Clients zu einer Festschreibung zu bewegen. Im realen Leben k\"{o}nnte dies beispielsweise das Erstellen oder L\"{o}schen einer Datei sein, von der auf jedem Client eine lokale Kopie existiert. Der Server ist der Koordinator und auch derjenige, der einen Festschreibewunsch initiiert. Hierbei verschickt der Server periodisch so oft den Festschreibewunsch, bis er von jedem Client eine Best\"{a}tigung erhalten hat. Der Server muss dabei die PIDs aller beteiligten Clientprozesse sowie einen Wecker f\"{u}r erneuertes Versenden des Festschreibewunsches eingestellt bekommen. + +Die programmierten Ereignisse des Beispiels in Abbildung \ref{fig:OnePhaseCommitProto} sind in Tabelle \ref{tb:OnePhaseCommitTasks} aufgelistet. P1 und P3 simulieren jeweils einen Client und P2 den Server. Damit die Simulation mehrere Festschreibew\"{u}nsche verschickt, st\"{u}rzt in der Simulation P1 nach 1000ms ab und nach 5000ms steht er wieder zur Verf\"{u}gung. Die ersten beide Festschreibew\"{u}nsche erreichen dadurch P1 nicht und erst der dritte Versuch verl\"{a}uft erfolgreich. Bevor die Best\"{a}tigung von P1 bei P2 eintrifft, l\"{a}uft jedoch der Wecker erneuert ab, so dass ein weiterer Festschreibewunsch versendet wird. Da P1 und P3 jeweils schon eine Best\"{a}tigung verschickt haben, wird dieser Wunsch ignoriert. + +\begin{table} + \centering + \fbox{ + \begin{tabular}{c|c|l} + \textbf{Zeit (ms)} & \textbf{PID} & \textbf{Ereignis} \\ + \hline + 0000 & 1 & 1-Phasen Commit Client aktivieren\\ + 0000 & 2 & 1-Phasen Commit Server aktivieren\\ + 0000 & 3 & 1-Phasen Commit Client aktivieren\\ + 0000 & 2 & 1-Phasen Commit Serveranfrage starten\\ + 1000 & 1 & Prozessabsturz\\ + 5000 & 1 & Prozessweiderbelebung + \end{tabular} + } + \caption{Programmierte Ein-Phasen Commit Ereignisse} + \label{tb:OnePhaseCommitTasks} +\end{table} + +\subsubsection{Protokollvariablen} + +Dieses Protokoll verwendet folgende serverseitige Variablen, die in den Prozesseinstellungen unter dem Punkt ``1-Phasen Commit Server'' konfiguriert werden kann. Clientseitig gibt es hier keine Variablen. + +\begin{itemize} + \item \textbf{Zeit bis erneuerter Anfrage} \textit{(Long, 2500)}: Gibt die Anzahl von Millisekunden an, die gewartet werden sollen, bis der Festschreibewunsch erneuert verschickt wird. + \item \textbf{PIDs beteiliger Prozesse} \textit{(Integer[], [1,3])}: Dieser Vektor aus Integerwerten beinhaltet alle PIDs der Clientprozesse, die festschreiben sollen. +\end{itemize} + + \subsection{Das Zwei-Phasen Commit Protokoll} \subsection{Der ungen\"{u}gende (Basic) Multicast} diff --git a/LaTeX/diplomarbeit.pdf b/LaTeX/diplomarbeit.pdf index 1eea1a8..3d06099 100644 --- a/LaTeX/diplomarbeit.pdf +++ b/LaTeX/diplomarbeit.pdf @@ -443,7 +443,7 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 180 0 obj << -/Length 2167 +/Length 2171 /Filter /FlateDecode >> stream @@ -452,9 +452,11 @@ x C/c0<\yk JMa}m J/먔ʲj'XXNOR,U)W|{ >p8q\}y.1J0TJ6 Gf]]XCqXZgoJ9aeڱs/YʰىKQ]HE2IyxOӱ[qCwo5_Jk ?殔YNJy-`+L>vo),)<丹B.d ¤I3%zjeO\ƉPfn,yU[  }!yy\=HafUi´ftH'hQ(^=HbTY`bbЋ ГoX/hyK\6 JPM_e,*|8 #q9n"2]y C|c0R]a]̝5^ eFx$r7&e݄X&OuA绉weݔ۪?م(79d8<>ڏہ4<|~w!km -qXI= db{Wu3 ӨAqs-Az 4;rkU*6oP6Oa\,ebSW\z#ĆEpG7r5jv!Wfkߠ\ku{(`B&NzUo0r>!T!ͥ. -jr 1py=~x/_)m]_vޜM閶1W0S\瞫ϕ+4 W\fre(YaB tnV<0u ؗ۟x/DZ~>N։R8ߍYPXRafq1e2:sAS[QB=,RF6 ƛ^3Nr.z3Og\ -HOXwF{[?-@Ks<]ñ?n)ݭL`fz WmB!T!͹5*ɉb7 Aʯ0|vnuyٝ{s7[\ ´ +LMsիR{F?WА/\%BKp]ȕd>膭^ +b2ӹYA_TT.@b_nvվximD8Z'JE"DN$@~7fB cK]tŔ!YOnE %p?pwKR,4ozU/8ɹr|5 $H[b0-^ e뗱f @ @\ +1w +HttC3%tw ,e"ekendstream endobj 179 0 obj << /Type /Page @@ -650,18 +652,17 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 210 0 obj << -/Length 1281 +/Length 1282 /Filter /FlateDecode >> stream -xYMs6WHLӌ;=xߚd9D'"AB 8UrDY;HPDE -0#2^P6wwc on.~MRD 6F+tb0Ǫ7Wên_LoCSn~x{34`-%{+`%Zr%&D(*1>X+0N&qy&Nj*Ktq\irԬOKҀDaG8 B2mG -sNTWْ - c˄(G(b$CՃ:٨]]naNb`(tT *OI9`w\$-C{N8 tt@g|qnS dR˘ކ&vPa|e`A -h*}gR -qla%7vӴe[M,9t6v{2M` HX/\` -4Tmad5!2bXP4W"+C2ߚ?ij&sgϓk$yRdhU!_rUPܖM[fszDk$4/w') eG1\UYA84q )>TIE]lhr2Us1? +p~\QmyzVr$9Fr=RfMX?:,tz ,G7hѝu$._kH8 e7ZN&{ i&^Cw׫SlI0?@/Kc3x8\X6d/>APq, L*Hb|j'etXRp$'1> B(Pl +'ut8ki_ -#K#FGes7h5;1‘]B/و^"pzѲgE!1"@mѩ:];wu=)>5݇vEpTjׄwB^f +XjU*|3LTO'.`]1 Cs.#pg׏ P8o]c~6ݖu7K]ʯT)fЉa).]Y}kԪpuЉqYlo_ۭi}}#{h목f5 3{U@qx pd1`8\hXT+ :Ţu,JiV]{xn[qf{2#e~BJ97И㉵"}<Ʌå苕'ߞqtbjϢ߳\1Ⱥ'4faeB&etb-UYѽ*T{J)2dNfBq~?.i6$`id~u/J9,iHeRx XSf0$H99j}37ο]d{PTV2q&I旝]U)wC{"2,.M]`]w B)idGg,u+endstream endobj 209 0 obj << /Type /Page @@ -777,16 +778,16 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 231 0 obj << -/Length 2157 +/Length 2234 /Filter /FlateDecode >> stream -xݛˎ6y --Y/Zh3hmb &O_R"%J AZ\J2LP@bPD_ lJ9 fMF/&*gh#RfT/n}=@Bݾ(wwEVqApkrzO^v%ɐvYI#@P([XvgW/g>!DtD 'x,5fPEy%?w>ծ}Z m_^^'pm3?LJF8 )4L(i_xg^Fq1DHDLP"0!MPLjF - JXu+lzYyuư@`./qHXGTo8SAZz 4v4&,f(giHDPq$S4:YK#ߜOӻ5SYƄ|B**'@l}TpT̅5?1g1fg Rb!R)8 8Zn/'Q?W;g-usB0ՁޅS Fm: \,p 5ybfmtTs8vnK^I{26;U$8/Oq]g,T5|y>cf2Kd-@r[k:. -I7eJ:}M',z(.נHQ]"T05 wEJeaF(EE>ݮOޚǘꁟ+H3ߩSJumE\ʡ9Ld'\.`YS%c%Y+,tk}K<.*r}ww:JޗɖщqI3ؗsHH08`~9BC)ȭ>7Ge4=%]F. DT,R7Q}A;v:\%Jwfbs:poѴx.7ĢfA(tNfq $%(ݘ8f1͎G]<;r͏橋]Fћe8E]+s-" {om>xu`'0ⲼVN[zf'8"I0,S =A5?[2vdSd)2{RI?9QFL]| *Jw\;F#G.*Sf2| 4rR7;ŇJқoެ\)!%!Q2CJVr{Hi~H)9xLH']"KE+z2P \sG3 jb3G<DHK\|w5?N$<՝u2˟|e) 1gL`U)o` g'\nIeQRSYՍU x?O}0hۂpb,D(@Њ,ր5LG2J&?S-Y?zĘi?yyh)Kj`p᷵sy_an:禳cU_6I c5)Np2%  Nӻpt$‚>QCr\Yl^arTD)~_k!\!k&B99WRHe{3'3.γ-6!endstream +xݛK6:|?ͣE]+Y,mKJDtw pQ? +(T, _ +C)qLt7ZdOJ9C$`2#7aa $/0"(wj_?7~_UQśT+ in1] PPlq 3o*)LN3 z ^) k*?7.yQ^q.ׇڵoW+CۗW(Ѻq"f9CqtR!% (.(P*@ J&1sII@aSPPN +[^E^]1,e(r֑`.UBRaLbנ 54Cc4,L,QcɃh +0dF'H>Ʒ~Ty@%A1!3߁J'S 6T>*P@ 8auR̅ꚯγ3۳RN88Zn/'Q?W;g%usB0ՁޅJAJ5q: \,p 5|y>cf2KZ>I?<)uU7.N*埞5C(O`AΣ3E;P`jZ+VOkŢZm~tFs:49&qdA31f<^* 1sR)d@OrcMSAOKn~8jvthiF'B{v5r}p>Mu6m"7J]<[Ad2;ђYTXD0A\.p4 x@(5OT""zxKe\%WO)`yU'9z&*Tz=RzssTFSj.Ae2*ui JڸNR,giwU|g&W+[\N?5xZBuw9@,jvt*0MA,tB79;<7.elV*m6poEQN2]#M:/pY^DQ += bS Ea_YbAzLŃ 5_[2vdS,SeB9,sD81XT(v _'IV̨e@hwb6*IojyfpurSJ!%!Q2!%+r;4yRfC1Pd1P}Ihź?? 7k{ߡp&Bz3b` iK%T7ߝE.S OugO{y>mwwcb&R)o`ӟ g'TP7R.jvuT,sr\ҪyC7|S5|hڶ8< P"Bxt[k@=tl. +Kd;ՒMաSԗb[`p׵sy_an:禳c6D&S2I17=pntgDv&;1'fOіK J{DַdYډv3zQI%MZ],x3QB:NՉYh{STmxu:v4]ߍgarR)!L:9ҢIK#Tא65,AvRH;ce ΜqqzƖXendstream endobj 230 0 obj << /Type /Page @@ -794,7 +795,7 @@ endobj /Resources 229 0 R /MediaBox [0 0 595.2757 841.8898] /Parent 170 0 R -/Annots [ 234 0 R 235 0 R 236 0 R 237 0 R 238 0 R 239 0 R 240 0 R 241 0 R 242 0 R 243 0 R 244 0 R 245 0 R 246 0 R 247 0 R 248 0 R 249 0 R 250 0 R 251 0 R 252 0 R 253 0 R 254 0 R 255 0 R 256 0 R ] +/Annots [ 234 0 R 235 0 R 236 0 R 237 0 R 238 0 R 239 0 R 240 0 R 241 0 R 242 0 R 243 0 R 244 0 R 245 0 R 246 0 R 247 0 R 248 0 R 249 0 R 250 0 R 251 0 R 252 0 R 253 0 R 254 0 R 255 0 R 256 0 R 257 0 R ] >> endobj 234 0 obj << /Type /Annot @@ -957,6 +958,13 @@ endobj /Subtype /Link /A << /S /GoTo /D (figure.2.20) >> >> endobj +257 0 obj << +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [89.9113 191.9056 283.2249 202.2131] +/Subtype /Link +/A << /S /GoTo /D (figure.2.21) >> +>> endobj 232 0 obj << /D [230 0 R /XYZ 74.4095 793.4011 null] >> endobj @@ -967,98 +975,98 @@ endobj /Font << /F26 166 0 R /F28 169 0 R >> /ProcSet [ /PDF /Text ] >> endobj -282 0 obj << -/Length 985 +284 0 obj << +/Length 1051 /Filter /FlateDecode >> stream -x͘Ko8 -n'dܐl~kWd]d\pYU.6xu3ql4璢5 |Du dX- -J,GQF{]ou0Lq^(β\>g$[ MgsUt5SlzLf۪iznڟ|j{ -kK(Xo*JZv*J5]ͽJSeX<`[ie(i5QYCj -PxF8&S[RbJ>gNb1:G;b;b4E*RQb3kX-P.k*}[jYy`]m]2s^$Q s -RsÞ[2;I[l "tiba/|B*BhOJ$`@S&ט[ s *% ~z9 ,.2tw N {acMH֙5v]on_!J5r% S R -8, -~YU*uU\k*yI I:+Beܔ5U -[?ǔyYV)yD[/ KA {Yq"̦ !(5?wԮ^a -'ߓ;~q@Pc8zQj$t(ҳY,x5 LT%:Locwi'5O-ˏzmOwp-0e~*|)o#Y %YgѰ8A(6;j̦D(6շ~ COqqMendstream +x͘Ko6:Jql`E5zi{:-ԖYt;D-27h`C Ëd#ȔapAHl cn`ùD\H7FqgZHy*Hp.槏Tf"yxpAV|Qh/Vmߪ( ΫzUǦ_7c# RR75Yo Jf$q"I g7YTc!@Q8֫MUT}P0VS] RͺVP?0Zcs_\m߂# O$EOlJi") = JgnI3h=tgs'*K1RxXN 2BD!C} Q(ĵ! F(:!)@M)f+9bJD lӏzsw:htXLLg{fh)E,*$:Ţ3YdPֶ.mu q(swu.,{W>U2~fH,E2R3&Ü&-6mى`xX*$ +)ڜYO!ubwK&SKJIb\#͹7Tb"="CwadX )x0g&Im_ޯcy(UaO-Y0f- +6ULU\ks {:IR'{6gs%մL=upE5_77?Ciy_h?ڍ4wxD'`LM +"gC^@wvЛ~{"k$57fk+ϧ"b{ă:`<0Q=?F0YUgXn=]fg?'2LqD(~aqV)Ls$L,ysdEJ( ud͟AD^qElZ>i42%nʻr> endobj -285 0 obj << +287 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [89.9113 611.9728 397.7864 624.5021] /Subtype /Link /A << /S /GoTo /D (table.2.1) >> >> endobj -286 0 obj << +288 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [89.9113 594.0456 204.0679 606.3218] /Subtype /Link /A << /S /GoTo /D (table.2.2) >> >> endobj -287 0 obj << +289 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [89.9113 576.1184 298.4028 588.3946] /Subtype /Link /A << /S /GoTo /D (table.2.3) >> >> endobj -288 0 obj << +290 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [89.9113 558.1911 338.3936 570.7204] /Subtype /Link /A << /S /GoTo /D (table.2.4) >> >> endobj -289 0 obj << +291 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [89.9113 540.2639 330.3868 552.7932] /Subtype /Link /A << /S /GoTo /D (table.2.5) >> >> endobj -290 0 obj << +292 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [89.9113 522.3367 394.1345 534.8659] /Subtype /Link /A << /S /GoTo /D (table.2.6) >> >> endobj -291 0 obj << +293 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [89.9113 504.4094 481.6833 516.9387] /Subtype /Link /A << /S /GoTo /D (table.2.7) >> >> endobj -292 0 obj << +294 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [89.9113 486.4822 375.1181 498.7584] /Subtype /Link /A << /S /GoTo /D (table.2.8) >> >> endobj -283 0 obj << -/D [281 0 R /XYZ 74.4095 793.4011 null] +295 0 obj << +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [89.9113 468.555 345.3889 481.0842] +/Subtype /Link +/A << /S /GoTo /D (table.2.9) >> >> endobj -284 0 obj << -/D [281 0 R /XYZ 74.4095 643.0213 null] +285 0 obj << +/D [283 0 R /XYZ 74.4095 793.4011 null] >> endobj -280 0 obj << +286 0 obj << +/D [283 0 R /XYZ 74.4095 643.0213 null] +>> endobj +282 0 obj << /Font << /F26 166 0 R /F28 169 0 R >> /ProcSet [ /PDF /Text ] >> endobj -304 0 obj << +308 0 obj << /Length 1086 /Filter /FlateDecode >> @@ -1066,84 +1074,84 @@ stream xڭVKo8W(7ޚY9lc%A[,`;CJ"͡d8/~YD"#L*`,4ڂtD*m0#MqάzV(1%BsbVS*ξ+ 76fdNm{EU=V[.>{*5JΡg.5v%1cL+,W˹ĉ49%q,N0\űV@b#FIZ3F"-mB?Vqj KxuSʫܵ:+]0Tf+\*;oY``3rEռY&"[W77Kb8Mu_afHMp^`:D|gXA)6@y!*^"5 ϳ k:fq㽐,N^`SsAO>E8B@@& %nUl]8A3-$tU^;쨧p^-dw&E TA˒uֹI‡hSC&!q U5P|/]/A> endobj -301 0 obj << +305 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (/usr/home/buetow/svn/vs/trunk/LaTeX/images/verteiltes-system.pdf) /PTEX.PageNumber 1 -/PTEX.InfoDict 308 0 R +/PTEX.InfoDict 312 0 R /Matrix [1.00000000 0.00000000 0.00000000 1.00000000 0.00000000 0.00000000] /BBox [0.00000000 0.00000000 366.00000000 180.00000000] /Resources << /ProcSet [ /PDF /Text ] /ExtGState << -/R7 309 0 R ->>/Font << /R8 310 0 R >> +/R7 313 0 R +>>/Font << /R8 314 0 R >> >> -/Length 311 0 R +/Length 315 0 R /Filter /FlateDecode >> stream xVMo1 W8N+qҲZ$誴vdHEj]ǟo^s~O=K:u۲) rٗX85&G:ۛdKɡ޲::>k%]p#0i$51%, JP[H{6 $K H4OF@|j./R~'Pʎõӓ t{󇛫{O]HfOv*ǴaJ!XlyK-e*E,K4ҵz/>D4 \^B~L"I/) .Q Ûex㿕PxmC$ [?g~/ Ue`v4A$2Tn^Y␩8FMlT!Yr )tA,((Py'C,U/8UD [Iߖ3Ocz\Da4M&Ri֡d*ԒeP^EXf 7MdIɏ F'C9w: Κ#n;?q7/u~W> endobj -309 0 obj +313 0 obj << /Type /ExtGState /OPM 1 >> endobj -310 0 obj +314 0 obj << /BaseFont /Helvetica /Type /Font /Subtype /Type1 >> endobj -311 0 obj +315 0 obj 714 endobj -306 0 obj << +310 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 0] /Rect [76.4707 384.3703 108.3246 394.4247] /Subtype /Link /A << /S /GoTo /D (cite.Tanenbaum) >> >> endobj -305 0 obj << -/D [303 0 R /XYZ 74.4095 793.4011 null] +309 0 obj << +/D [307 0 R /XYZ 74.4095 793.4011 null] >> endobj 6 0 obj << -/D [303 0 R /XYZ 74.4095 771.7323 null] +/D [307 0 R /XYZ 74.4095 771.7323 null] >> endobj 10 0 obj << -/D [303 0 R /XYZ 74.4095 564.7986 null] +/D [307 0 R /XYZ 74.4095 564.7986 null] >> endobj -257 0 obj << -/D [303 0 R /XYZ 213.3171 155.4996 null] +258 0 obj << +/D [307 0 R /XYZ 213.3171 155.4996 null] >> endobj -302 0 obj << +306 0 obj << /Font << /F26 166 0 R /F28 169 0 R /F61 214 0 R >> -/XObject << /Im2 301 0 R >> +/XObject << /Im2 305 0 R >> /ProcSet [ /PDF /Text ] >> endobj -316 0 obj << +320 0 obj << /Length 1579 /Filter /FlateDecode >> @@ -1157,30 +1165,30 @@ xڭXmo J7gd><;֬)2\o ]F _b"pMh%A?[˾?PY zQCLNLAwMmNe!e/o7C[Auz2&JdΔ*A'rK~}ģ@ϼ ;a& 8J=SZʃ~o'0q-`%/)4%+va#N .Ut+ȐN[ݠT<=U@R0.>6 V$ ,Kt7dH:c<2rJ&JqQ;r>߆)IZ'2c$‡^Ɠo \)Osj,\F $&vkfendstream endobj -315 0 obj << +319 0 obj << /Type /Page -/Contents 316 0 R -/Resources 314 0 R +/Contents 320 0 R +/Resources 318 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 307 0 R -/Annots [ 318 0 R ] +/Parent 311 0 R +/Annots [ 322 0 R ] >> endobj -313 0 obj << +317 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (/usr/home/buetow/svn/vs/trunk/LaTeX/images/client-server.pdf) /PTEX.PageNumber 1 -/PTEX.InfoDict 320 0 R +/PTEX.InfoDict 324 0 R /Matrix [1.00000000 0.00000000 0.00000000 1.00000000 0.00000000 0.00000000] /BBox [0.00000000 0.00000000 382.00000000 112.00000000] /Resources << /ProcSet [ /PDF /Text ] /ExtGState << -/R7 321 0 R ->>/Font << /R8 322 0 R >> +/R7 325 0 R +>>/Font << /R8 326 0 R >> >> -/Length 323 0 R +/Length 327 0 R /Filter /FlateDecode >> stream @@ -1188,54 +1196,54 @@ x (C!R;}tI6?΃ߏbw'> endobj -321 0 obj +325 0 obj << /Type /ExtGState /OPM 1 >> endobj -322 0 obj +326 0 obj << /BaseFont /Helvetica /Type /Font /Subtype /Type1 >> endobj -323 0 obj +327 0 obj 452 endobj -318 0 obj << +322 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [73.4132 702.552 90.6937 715.0813] /Subtype /Link /A << /S /GoTo /D (figure.1.1) >> >> endobj -317 0 obj << -/D [315 0 R /XYZ 74.4095 793.4011 null] +321 0 obj << +/D [319 0 R /XYZ 74.4095 793.4011 null] >> endobj 14 0 obj << -/D [315 0 R /XYZ 74.4095 466.9572 null] +/D [319 0 R /XYZ 74.4095 466.9572 null] >> endobj -319 0 obj << -/D [315 0 R /XYZ 74.4095 298.4934 null] +323 0 obj << +/D [319 0 R /XYZ 74.4095 298.4934 null] >> endobj -258 0 obj << -/D [315 0 R /XYZ 286.2652 155.4996 null] +259 0 obj << +/D [319 0 R /XYZ 286.2652 155.4996 null] >> endobj -314 0 obj << +318 0 obj << /Font << /F61 214 0 R /F28 169 0 R /F26 166 0 R >> -/XObject << /Im3 313 0 R >> +/XObject << /Im3 317 0 R >> /ProcSet [ /PDF /Text ] >> endobj -326 0 obj << +330 0 obj << /Length 2032 /Filter /FlateDecode >> @@ -1247,38 +1255,38 @@ O R> P^3qd]Bo@QF,PTW~|pEP_Ծ9B$HyM2i!`#Sr~g;=+endstream endobj -325 0 obj << +329 0 obj << /Type /Page -/Contents 326 0 R -/Resources 324 0 R +/Contents 330 0 R +/Resources 328 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 307 0 R -/Annots [ 328 0 R ] +/Parent 311 0 R +/Annots [ 332 0 R ] >> endobj -328 0 obj << +332 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [169.1687 720.4793 186.4492 733.0085] /Subtype /Link /A << /S /GoTo /D (figure.1.2) >> >> endobj -327 0 obj << -/D [325 0 R /XYZ 74.4095 793.4011 null] +331 0 obj << +/D [329 0 R /XYZ 74.4095 793.4011 null] >> endobj -329 0 obj << -/D [325 0 R /XYZ 74.4095 634.5446 null] +333 0 obj << +/D [329 0 R /XYZ 74.4095 634.5446 null] >> endobj -330 0 obj << -/D [325 0 R /XYZ 74.4095 447.9781 null] +334 0 obj << +/D [329 0 R /XYZ 74.4095 447.9781 null] >> endobj -331 0 obj << -/D [325 0 R /XYZ 74.4095 294.9565 null] +335 0 obj << +/D [329 0 R /XYZ 74.4095 294.9565 null] >> endobj -324 0 obj << +328 0 obj << /Font << /F61 214 0 R /F28 169 0 R /F26 166 0 R >> /ProcSet [ /PDF /Text ] >> endobj -335 0 obj << +339 0 obj << /Length 1213 /Filter /FlateDecode >> @@ -1293,29 +1301,29 @@ xڍWKo ȸx0(tD@ {U/ = ex_ 0C R`E1/~3-kendstream endobj -334 0 obj << +338 0 obj << /Type /Page -/Contents 335 0 R -/Resources 333 0 R +/Contents 339 0 R +/Resources 337 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 307 0 R +/Parent 311 0 R >> endobj -332 0 obj << +336 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (/usr/home/buetow/svn/vs/trunk/LaTeX/images/client-server-protokolle.pdf) /PTEX.PageNumber 1 -/PTEX.InfoDict 338 0 R +/PTEX.InfoDict 342 0 R /Matrix [1.00000000 0.00000000 0.00000000 1.00000000 0.00000000 0.00000000] /BBox [0.00000000 0.00000000 376.00000000 320.00000000] /Resources << /ProcSet [ /PDF /Text ] /ExtGState << -/R7 339 0 R ->>/Font << /R8 340 0 R >> +/R7 343 0 R +>>/Font << /R8 344 0 R >> >> -/Length 341 0 R +/Length 345 0 R /Filter /FlateDecode >> stream @@ -1325,44 +1333,44 @@ x Y La- 7pD7[:pHp {-q*YA^6@K  B|jZ%Tp'endstream endobj -338 0 obj +342 0 obj << /Producer (GPL Ghostscript 8.61) /CreationDate (D:20080725141000Z00'00') /ModDate (D:20080725141000Z00'00') >> endobj -339 0 obj +343 0 obj << /Type /ExtGState /OPM 1 >> endobj -340 0 obj +344 0 obj << /BaseFont /Helvetica /Type /Font /Subtype /Type1 >> endobj -341 0 obj +345 0 obj 499 endobj -336 0 obj << -/D [334 0 R /XYZ 74.4095 793.4011 null] +340 0 obj << +/D [338 0 R /XYZ 74.4095 793.4011 null] >> endobj -259 0 obj << -/D [334 0 R /XYZ 278.1207 316.0336 null] +260 0 obj << +/D [338 0 R /XYZ 278.1207 316.0336 null] >> endobj -337 0 obj << -/D [334 0 R /XYZ 74.4095 234.8543 null] +341 0 obj << +/D [338 0 R /XYZ 74.4095 234.8543 null] >> endobj -333 0 obj << +337 0 obj << /Font << /F61 214 0 R /F28 169 0 R /F26 166 0 R >> -/XObject << /Im4 332 0 R >> +/XObject << /Im4 336 0 R >> /ProcSet [ /PDF /Text ] >> endobj -344 0 obj << +348 0 obj << /Length 1570 /Filter /FlateDecode >> @@ -1376,32 +1384,32 @@ KF ,'EJu?ᨭ`Køz.N=Ja˅7w nj&3sfrLq ܊H)Se_Mc>xpTOhy=ӳtԩ@`B)Ww*Q- oŜWJ ߸}uU"_8^x>My8Ǎ"[驸qWN4lX} L/> endobj -347 0 obj << +351 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [137.0253 510.142 154.3058 522.4182] /Subtype /Link /A << /S /GoTo /D (figure.1.3) >> >> endobj -345 0 obj << -/D [343 0 R /XYZ 74.4095 793.4011 null] +349 0 obj << +/D [347 0 R /XYZ 74.4095 793.4011 null] >> endobj -346 0 obj << -/D [343 0 R /XYZ 74.4095 671.3117 null] +350 0 obj << +/D [347 0 R /XYZ 74.4095 671.3117 null] >> endobj -342 0 obj << +346 0 obj << /Font << /F61 214 0 R /F28 169 0 R /F26 166 0 R >> /ProcSet [ /PDF /Text ] >> endobj -351 0 obj << +355 0 obj << /Length 906 /Filter /FlateDecode >> @@ -1412,15 +1420,15 @@ xڭVK :VmWW 8}DE$HkD;"sCDO>CZrsb6o`M1wYJs-e(jw+*_X{H|2YKCm\)6 z8և̕xWtUM ~E.5 5jDmC, yrO?#xA0E"(Wlcxmٴ878-6o6iۦVjˠP@mZS ܟA0Y, f lfG˽҈u%^k5Qv1@B6f]ΐ;UP endstream endobj -350 0 obj << +354 0 obj << /Type /Page -/Contents 351 0 R -/Resources 349 0 R +/Contents 355 0 R +/Resources 353 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 307 0 R -/Annots [ 353 0 R 354 0 R ] +/Parent 311 0 R +/Annots [ 357 0 R 358 0 R ] >> endobj -348 0 obj << +352 0 obj << /Type /XObject /Subtype /Image /Width 380 @@ -1447,38 +1455,38 @@ CK |깗D"=))s}SIꌎ$'ƆYkp$ kK"*%9uv>r.vL,ֵ*pRcuK\K;D"=IHm˅[6m<1%HG≱d7kv;7ܾy Dz/ܺ~ډ3[4mq5okS.ck|V>:>u .8<$89spe9sp98p8s9sp8p89s98p8pss9sp8p89s98p8ps9sp98p8Õ89s98p8ps9sp98p8s9sp98p8+8ps9sp98p8s9sp98p89s9sp8pWp8s9sp98p89s9sp8ps9s98p 98p89s9sp8ps1猌ќscsδM\}놴C"H<ݺucrr眺'[''H$ңOƏrBǁ͇NH$ҏ*5՟5'{׮]۷dgH$ҏ*dYkːendstream endobj -353 0 obj << +357 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [429.2362 171.0176 446.5167 183.5468] /Subtype /Link /A << /S /GoTo /D (figure.2.1) >> >> endobj -354 0 obj << +358 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [372.259 153.0904 389.5395 165.6196] /Subtype /Link /A << /S /GoTo /D (figure.2.2) >> >> endobj -352 0 obj << -/D [350 0 R /XYZ 74.4095 793.4011 null] +356 0 obj << +/D [354 0 R /XYZ 74.4095 793.4011 null] >> endobj 18 0 obj << -/D [350 0 R /XYZ 74.4095 771.7323 null] +/D [354 0 R /XYZ 74.4095 771.7323 null] >> endobj 22 0 obj << -/D [350 0 R /XYZ 74.4095 580.9861 null] +/D [354 0 R /XYZ 74.4095 580.9861 null] >> endobj -260 0 obj << -/D [350 0 R /XYZ 240.2747 218.7511 null] +261 0 obj << +/D [354 0 R /XYZ 240.2747 218.7511 null] >> endobj -349 0 obj << +353 0 obj << /Font << /F26 166 0 R /F28 169 0 R >> -/XObject << /Im5 348 0 R >> +/XObject << /Im5 352 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -359 0 obj << +363 0 obj << /Length 1582 /Filter /FlateDecode >> @@ -1491,15 +1499,15 @@ G sӖ]4VPB8E)2Fwv pp}͆sYpk q^[`:^F.@ Uv˺H a-j~!ܹ"S3< _ƎzHH4բ!;"^- 2;ŢB;¡>0Rw+~}a 8`PtF"QO97C˞Wp[J٠!h5B 8_8֏W'C&B.\PnHWӧ"}Qv%X|g*X&:Gs3(tGtj.>ųxl3DFMrhǥG҃+1:Y ڃ${BXZʐf9PmPer(e ,pBXZLHsShí%8co:z|sfLG^ݜpZ"WL.BOa-̞N;G6g'n؊lztzM0tx4ҍv¯!l 0:B7֩klM[r|#Lh"7MgCcsJ R"+:?dłsl&%3`0#}?L6Mh܃L4Ig:yArtlendstream endobj -358 0 obj << +362 0 obj << /Type /Page -/Contents 359 0 R -/Resources 357 0 R +/Contents 363 0 R +/Resources 361 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 364 0 R -/Annots [ 361 0 R 363 0 R ] +/Parent 368 0 R +/Annots [ 365 0 R 367 0 R ] >> endobj -355 0 obj << +359 0 obj << /Type /XObject /Subtype /Image /Width 500 @@ -1522,35 +1530,35 @@ K *o{ců Su:~dhRmmvmmm mX/~`vC dmGmGA۵mmmmGہ sv@۽Fh;mO[pe]/k;04,uڮ@vX>?vk;W&rdfUFہEAAv@v@v@vvvvvvvv=,o V _rBvgñ {1z=|cyh;'ʣl r Aہm·vm1vmo{ZM4bϜh;h;h;h;h;h;h;ckG@vm@m@v@vm@]m@v@vm@m@vmvm@vm@vmvh;h;h;h;hh;h;h;h;2kendstream endobj -361 0 obj << +365 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [125.2715 720.4793 142.552 732.7555] /Subtype /Link /A << /S /GoTo /D (figure.2.3) >> >> endobj -363 0 obj << +367 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [205.1356 357.5128 222.4161 370.0421] /Subtype /Link /A << /S /GoTo /D (figure.2.2) >> >> endobj -360 0 obj << -/D [358 0 R /XYZ 74.4095 793.4011 null] +364 0 obj << +/D [362 0 R /XYZ 74.4095 793.4011 null] >> endobj -261 0 obj << -/D [358 0 R /XYZ 307.3769 457.6694 null] +262 0 obj << +/D [362 0 R /XYZ 307.3769 457.6694 null] >> endobj -362 0 obj << -/D [358 0 R /XYZ 74.4095 385.969 null] +366 0 obj << +/D [362 0 R /XYZ 74.4095 385.969 null] >> endobj -357 0 obj << +361 0 obj << /Font << /F61 214 0 R /F28 169 0 R /F26 166 0 R >> -/XObject << /Im6 355 0 R >> +/XObject << /Im6 359 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -368 0 obj << +372 0 obj << /Length 1167 /Filter /FlateDecode >> @@ -1564,15 +1572,15 @@ M CO9ngU6*CCeۣve]5:X6oOsDbK8RŤSN,P*Wf {MBcŗm8v{:}o3|NM , + 6mP~֫ {?nΚb` s;Tl=Z*J_=Nk ?@xP$Pendstream endobj -367 0 obj << +371 0 obj << /Type /Page -/Contents 368 0 R -/Resources 366 0 R +/Contents 372 0 R +/Resources 370 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 364 0 R -/Annots [ 371 0 R ] +/Parent 368 0 R +/Annots [ 375 0 R ] >> endobj -356 0 obj << +360 0 obj << /Type /XObject /Subtype /Image /Width 380 @@ -1711,7 +1719,7 @@ HI M] 0H88' u W#xLDhz2QE"I=oh,G5qHLIJL7EJ'1+8DήT$=-  x|{kc~)ڢ8g1:fMA%4`*M*A/l\i6G,,,GZG}:WSqNNkj,jJ~=ӸjtBʡUjgS)rSkv&ldR]r`LT6̚myc'fofHh4KKf'fMK] 4`Z2.o1.mr޴<#bǸeP1C?IWtrkpF`D /CiiiZ4il/iactvkUh4>ik *Pn/|zzt~w={)W5(60.O [O>˸3h ^k_S + !۝+KJum0䫷Ns~sFZ^9se^JU_J%VMJ}z~3ǝ1GOլ޲:`0B7[#Zs7D?O'Y>s/537<95 Y%ȇ_>$iJzNi]Gҕ)9(+; +(7/,؋~'.Ȝ`oy`KPqzu>>T׍zaݖʾۥ=E,mMɭy0SBNfq;lg6/-fP10p m=p`0գȁ@sjB=-j^דGe7Ď|Z|%Ttj0F`L,ȩx*:len)i6Z#Rq`C(N[#x^ܮ]'Ixv]If׏K6[Nnq,q8EEE7oLK =ދȞ Քqendstream endobj -365 0 obj << +369 0 obj << /Type /XObject /Subtype /Image /Width 180 @@ -1739,31 +1747,31 @@ SȈoD\ ٘Zl7Z%lL-6Z!7,7>L")dcjb,>߰ߞ{و|t9T,t)T(«8 {endstream endobj -371 0 obj << +375 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [380.5758 322.4414 397.8563 334.9707] /Subtype /Link /A << /S /GoTo /D (figure.2.4) >> >> endobj -369 0 obj << -/D [367 0 R /XYZ 74.4095 793.4011 null] +373 0 obj << +/D [371 0 R /XYZ 74.4095 793.4011 null] >> endobj -262 0 obj << -/D [367 0 R /XYZ 283.8895 473.3831 null] +263 0 obj << +/D [371 0 R /XYZ 283.8895 473.3831 null] >> endobj -370 0 obj << -/D [367 0 R /XYZ 74.4095 351.8797 null] +374 0 obj << +/D [371 0 R /XYZ 74.4095 351.8797 null] >> endobj -263 0 obj << -/D [367 0 R /XYZ 259.0544 232.7884 null] +264 0 obj << +/D [371 0 R /XYZ 259.0544 232.7884 null] >> endobj -366 0 obj << +370 0 obj << /Font << /F61 214 0 R /F28 169 0 R /F26 166 0 R /F33 177 0 R >> -/XObject << /Im7 356 0 R /Im8 365 0 R >> +/XObject << /Im7 360 0 R /Im8 369 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -375 0 obj << +379 0 obj << /Length 1459 /Filter /FlateDecode >> @@ -1778,15 +1786,15 @@ u [wov5/H# TDCZceq`Z89X|swAKz83v Ei5*m[w0vpں; ̌lV&cpF'xRM61J\!>.endstream endobj -374 0 obj << +378 0 obj << /Type /Page -/Contents 375 0 R -/Resources 373 0 R +/Contents 379 0 R +/Resources 377 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 364 0 R -/Annots [ 378 0 R 379 0 R ] +/Parent 368 0 R +/Annots [ 382 0 R 383 0 R ] >> endobj -372 0 obj << +376 0 obj << /Type /XObject /Subtype /Image /Width 586 @@ -1801,35 +1809,35 @@ x 7-XW [r7g7U~Zz?ކ[1g bǗsI9ۮ㥧 '&7Wjo_E3/jcOL˺=.cuQ݌1]uUKc-usg1uzJݦY,Ց;[aaX,uV7bX,usX,n,R7ucX,bMX,nVbXfX,bMX,nbX,u,R7;bMX,nbX,uS7bdX,YMbbXn,RFu[c5Y,5Mݾ8;b-n"n`{M[bX6Jݎ_гsX,KݞvVyn,Śn{QRv"aX,u˯kbXm= vb[BQDnbX]Vyn,Śnů\X,kvcX,(uܼqncLsncM݌1ƨ1ӷnߞ{&1Ƙ.uLX,kXNX,nVbXfX,KX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXf5Y,n,R7ucX,bMX,nVbXfX,bMX,nbX,u,R7;bMX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXfX,KX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXf5Y,n,R7ucX,bMX,nVbXfX,bMX,nbX,u,R7;bMX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXfX,KX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXf5Y,n,R7ucX,bMX,nVbXfX,bMX,nbX,u,R7;bMX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXfX,KX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXf5Y,n,R7ucX,ݯbXiյ9,nu[vqkwRQv҅bXkcucX,|u[݋bX,U3qvb[~>^S7b=ngnsX,KJZ)~fݬ&b2V|\X,k](X,˵dX,VӺU~vncLs,mf1u1Ƙm#3u3m{&1Ƙ.uLX,kXNX,nVbXfX,KX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXf5Y,n,R7ucX,bMX,nVbXfX,bMX,nbX,u,R7;bMX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXfX,KX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXf5Y,n,R7ucX,bMX,nVbXfX,bMX,nbX,u,R7;bMX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXfX,KX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXf5Y,n,R7ucX,bMX,nVbXfX,bMX,nbX,u,R7;bMX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXfX,KX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KR7ucX,bMX,nVbXf5Y,n,R7ucX,ݯbXiյ9,nu[vqkwRQv҅bXkcucX,|u[݋bX,U3qvb[~>^S7b=ngnsX,KJZ)~fݬ&b2V|\X,k](X,u$b[Glww݌1Ƙ&sU7c1#mwW1ncLhݾҩ1Ƙ~uk6LX,k|NX,nVbXfX,KX,nbX,uS7bdX,YMbbXn,R7ucX,bjX,KRc5Y,5ᵛ1c1c1c1c1yg&뵙onqZL }I^9g/b[RgzK.in=3"Ǹwiøik_tZzk9{ř;[=ҧ|C;q(Uoq'GkrdBu{\d1޻NV3Xfpw#uBImOu蓄4J1tqUI\=0got9MO&#GĞx\瓫&}M;1?&(X}a___ˡ{֊;\݊X\ӌeB~|*y컑J{ӫnF:v[-rtU ߞ 3> >> endobj -379 0 obj << +383 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [192.1475 153.0904 209.428 165.6196] /Subtype /Link /A << /S /GoTo /D (figure.2.5) >> >> endobj -376 0 obj << -/D [374 0 R /XYZ 74.4095 793.4011 null] +380 0 obj << +/D [378 0 R /XYZ 74.4095 793.4011 null] >> endobj -377 0 obj << -/D [374 0 R /XYZ 74.4095 552.8584 null] +381 0 obj << +/D [378 0 R /XYZ 74.4095 552.8584 null] >> endobj -264 0 obj << -/D [374 0 R /XYZ 204.7328 238.9042 null] +265 0 obj << +/D [378 0 R /XYZ 204.7328 238.9042 null] >> endobj -373 0 obj << +377 0 obj << /Font << /F61 214 0 R /F33 177 0 R /F28 169 0 R /F26 166 0 R >> -/XObject << /Im9 372 0 R >> +/XObject << /Im9 376 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -383 0 obj << +387 0 obj << /Length 1813 /Filter /FlateDecode >> @@ -1843,15 +1851,15 @@ yK KPAu4é46cw M?`"K; B%4WJt\޸$> endobj -380 0 obj << +384 0 obj << /Type /XObject /Subtype /Image /Width 310 @@ -1871,35 +1879,35 @@ B{o M>7pm -!tۖQr06RUpuMΉ!r:9s"oh'tZ0P""Bvjx:KP^xi^ʋ/KP^xi^*P^xi^ʋ/PW/KP^x!/ x/@ oendstream endobj -385 0 obj << +389 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [177.2529 577.212 194.5334 589.7413] /Subtype /Link /A << /S /GoTo /D (figure.2.6) >> >> endobj -387 0 obj << +391 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [449.723 171.0176 467.0035 183.5468] /Subtype /Link /A << /S /GoTo /D (table.2.1) >> >> endobj -384 0 obj << -/D [382 0 R /XYZ 74.4095 793.4011 null] +388 0 obj << +/D [386 0 R /XYZ 74.4095 793.4011 null] >> endobj -265 0 obj << -/D [382 0 R /XYZ 246.5489 376.775 null] +266 0 obj << +/D [386 0 R /XYZ 246.5489 376.775 null] >> endobj -386 0 obj << -/D [382 0 R /XYZ 74.4095 216.7567 null] +390 0 obj << +/D [386 0 R /XYZ 74.4095 216.7567 null] >> endobj -381 0 obj << +385 0 obj << /Font << /F61 214 0 R /F28 169 0 R /F26 166 0 R >> -/XObject << /Im10 380 0 R >> +/XObject << /Im10 384 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -391 0 obj << +395 0 obj << /Length 2007 /Filter /FlateDecode >> @@ -1914,15 +1922,15 @@ xڭY[s۶~ ;.N RgmM8(ڦ*zijjp3sDJMj.R3|p 1_a'MZ0((FvEXqʋ%nrx YC™>>s#7lO]C`~֥ gn4tP^9h<ਚ PP`fSvrE}(KQ4[ V[?޲z|]UhdrOvP =k;HٟųWAn DlX3";x rFBC'~d]qy )VY9m}zNaRo9n |!FpCXzG [7endstream endobj -390 0 obj << +394 0 obj << /Type /Page -/Contents 391 0 R -/Resources 389 0 R +/Contents 395 0 R +/Resources 393 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 364 0 R -/Annots [ 394 0 R ] +/Parent 368 0 R +/Annots [ 398 0 R ] >> endobj -388 0 obj << +392 0 obj << /Type /XObject /Subtype /Image /Width 318 @@ -1942,31 +1950,31 @@ x sq2s2Ud0'3_y%S8|Rʱ lL2U*v-o޲l+b~qendstream endobj -394 0 obj << +398 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [73.4132 490.9023 90.6937 503.2995] /Subtype /Link /A << /S /GoTo /D (figure.2.7) >> >> endobj -392 0 obj << -/D [390 0 R /XYZ 74.4095 793.4011 null] +396 0 obj << +/D [394 0 R /XYZ 74.4095 793.4011 null] >> endobj -293 0 obj << -/D [390 0 R /XYZ 188.4765 600.6542 null] +296 0 obj << +/D [394 0 R /XYZ 188.4765 600.6542 null] >> endobj -393 0 obj << -/D [390 0 R /XYZ 74.4095 541.3074 null] +397 0 obj << +/D [394 0 R /XYZ 74.4095 541.3074 null] >> endobj -266 0 obj << -/D [390 0 R /XYZ 244.729 187.2191 null] +267 0 obj << +/D [394 0 R /XYZ 244.729 187.2191 null] >> endobj -389 0 obj << +393 0 obj << /Font << /F61 214 0 R /F26 166 0 R /F28 169 0 R >> -/XObject << /Im11 388 0 R >> +/XObject << /Im11 392 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -399 0 obj << +403 0 obj << /Length 1474 /Filter /FlateDecode >> @@ -1979,15 +1987,15 @@ g R޻P`su nvqT؍j.3^mkDe)~{:ڻZ>v奔RrU!;),e~_l36%wF+Pe62 *,S9T2Y 3 ,S,Z1-c+baz^3ű!m6Rf|C>Sc߃jKj7`|E? m+tD+)v1)^TcĵsZ^TX;Pa"Qv;LhyV0Ij$ۜ) $~}Q W{Qń12ڭd؂_<]L)07O+yr:Xb vp>hw vBFg{P}:t<7P&qIM?b)R&t3.<5J,Mh@N̨; Nr# ,g)eRTƜaFB҇IQnwSUR7'M]*e "LO !tHxflP LO.qS--ګ8< OMP,`GOٖP:,lxPnf*J^t^FFG$}EZf2jg{haadRpup=Yt6v3e;,v5R g}j9NTUފ$3 h} den}T~fu- }B(5t@~Ai|Da䧆gIȂq4gO\4a jvs=ݢ}iX&}!?Yx)OŔi(`#;Q͐pHуގћ sQ?0hhlH跆J<7'P `VMS01ļĥf<_H9}Pr,&Y^gS7y}:'q0Y<=~| 7"ٕK5}MpC]¢[ v|r&\&|2!?_endstream endobj -398 0 obj << +402 0 obj << /Type /Page -/Contents 399 0 R -/Resources 397 0 R +/Contents 403 0 R +/Resources 401 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 364 0 R -/Annots [ 401 0 R 402 0 R 403 0 R ] +/Parent 368 0 R +/Annots [ 405 0 R 406 0 R 407 0 R ] >> endobj -395 0 obj << +399 0 obj << /Type /XObject /Subtype /Image /Width 318 @@ -2015,39 +2023,39 @@ O g}(mvy^[/F !Օ\ VZ?endstream endobj -401 0 obj << +405 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [254.2338 756.3337 271.5143 768.863] /Subtype /Link /A << /S /GoTo /D (figure.2.6) >> >> endobj -402 0 obj << +406 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [217.1735 738.4065 234.454 750.9357] /Subtype /Link /A << /S /GoTo /D (figure.2.8) >> >> endobj -403 0 obj << +407 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [367.5403 720.4793 384.8208 734.9167] /Subtype /Link /A << /S /GoTo /D (figure.2.9) >> >> endobj -400 0 obj << -/D [398 0 R /XYZ 74.4095 793.4011 null] +404 0 obj << +/D [402 0 R /XYZ 74.4095 793.4011 null] >> endobj -267 0 obj << -/D [398 0 R /XYZ 257.1957 349.3808 null] +268 0 obj << +/D [402 0 R /XYZ 257.1957 349.3808 null] >> endobj -397 0 obj << +401 0 obj << /Font << /F61 214 0 R /F28 169 0 R >> -/XObject << /Im12 395 0 R >> +/XObject << /Im12 399 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -407 0 obj << +411 0 obj << /Length 1656 /Filter /FlateDecode >> @@ -2061,15 +2069,15 @@ iX M>dK]SdG(#v(jp%vr>h[J&RW.9ti@v1½q>c'"HMŭ~K,].>$rVv=hꆍrR)an sϷ:p3fs2/yZfU.[9yǭ ',KѾץMBپWc׃ .L?y=%5ϒ@Lv27"{GT䟞endstream endobj -406 0 obj << +410 0 obj << /Type /Page -/Contents 407 0 R -/Resources 405 0 R +/Contents 411 0 R +/Resources 409 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 412 0 R -/Annots [ 410 0 R 411 0 R ] +/Parent 416 0 R +/Annots [ 414 0 R 415 0 R ] >> endobj -396 0 obj << +400 0 obj << /Type /XObject /Subtype /Image /Width 318 @@ -2092,7 +2100,7 @@ A aT7*r~ȍNKv-\U4^mdwEkQ+^Jrز~hZnoƖ>yk0sKgo \P_r~`E/_~`E/?zi0"ԗd00Aw 5Zյ%uZ;kkK,󖩺\ זX+-Su!w%rm22UrW"זX+-Su!w%rm 2UrW"ז䫫_HՅܕܶϒZGluCz썚\˿ܬD^ZϛQ~K\+XFsv)SՌ-{y/a.0AqMYa}ێ-ATylsTn"pqMYy}[ύvN!w򘻔6D*/۰ov9AMYfs3 -{ e/Yq~e[ .Լ"3ڒZiK,|U_r~ojaee\-Z1kpf{/k R.L 0䶽Vf#ڌO^V\_neEſnq+C.ڌ%neECrIW"oV=gD|c[endstream endobj -404 0 obj << +408 0 obj << /Type /XObject /Subtype /Image /Width 576 @@ -2114,38 +2122,38 @@ I 6޲?%O~/ @_/~@ ~ 8~].I$I<׿E] @_/+xӟ$v/ 1{5ַt-U6Ao]*ߣ`)Qnݾۍw2dU29g'5|b+NP} /wQqVCe&Fߞ9W_*~sumw(x~}9VEGqZۛiPK_կk^~XXh?bE+f5xPj uMЯO+kem~}|G08~-*_*l.'R!Z)툫y&5}/k] !v'(/S7?O-o`40~ }#pemGeu-/ /6֯Jendstream endobj -410 0 obj << +414 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [212.2172 474.7794 229.4977 487.3087] /Subtype /Link /A << /S /GoTo /D (figure.2.3) >> >> endobj -411 0 obj << +415 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [261.2349 456.8522 284.6306 469.3815] /Subtype /Link /A << /S /GoTo /D (figure.2.10) >> >> endobj -408 0 obj << -/D [406 0 R /XYZ 74.4095 793.4011 null] +412 0 obj << +/D [410 0 R /XYZ 74.4095 793.4011 null] >> endobj -268 0 obj << -/D [406 0 R /XYZ 207.6418 561.8289 null] +269 0 obj << +/D [410 0 R /XYZ 207.6418 561.8289 null] >> endobj -409 0 obj << -/D [406 0 R /XYZ 74.4095 501.6603 null] +413 0 obj << +/D [410 0 R /XYZ 74.4095 501.6603 null] >> endobj -269 0 obj << -/D [406 0 R /XYZ 298.6715 274.9687 null] +270 0 obj << +/D [410 0 R /XYZ 298.6715 274.9687 null] >> endobj -405 0 obj << +409 0 obj << /Font << /F61 214 0 R /F28 169 0 R /F26 166 0 R >> -/XObject << /Im13 396 0 R /Im14 404 0 R >> +/XObject << /Im13 400 0 R /Im14 408 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -417 0 obj << +421 0 obj << /Length 1236 /Filter /FlateDecode >> @@ -2155,15 +2163,15 @@ S  a{7K R{{C5'Y}0PRq.tpTFIyPo[ֻķRAǭ]~h!:)dmE[o!}>P Ü4*v}Sau-Xv.fVY9޹4خ$TU{V" R&sRM`V)g5|]|£T ^8ɨZ(B甋O?*5;or0֑Òcc) [$֢k∓eyx`cy_ALv`*Yh8@8oV eg0I %B5I 2r3McP.x8EA2!د&a㎌L ZC4gj`g|4G#>ʹԳP'E1K#|-_2Mwfs1)8Y]]"yxms_N./Zz{׽,sleCMn$W8ЊV!9 9Aijڬ_:yuf)6$ ܾ $/lkIA4n-Q4`[gC4A%*ړ%a7veRC cWge"Az~C6= !*+ fPDdsňA5o+QY4-i*Җ5\ֺo绐9ɡbC~*{S5|&h(d@A|{ o@‹C`CA:Wqﱌz!Vt*rT@vr\\M/fĦmU?qw%Y̢6& w% HJv%̂p@zulDq|0(iNI'IʴU&p1Oy;D~_دY ĉq 1z Wcz1 z WctbF(L'BOY>-i㿩*HMZƓ'?FsA$\{y~tk&endstream endobj -416 0 obj << +420 0 obj << /Type /Page -/Contents 417 0 R -/Resources 415 0 R +/Contents 421 0 R +/Resources 419 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 412 0 R -/Annots [ 419 0 R ] +/Parent 416 0 R +/Annots [ 423 0 R ] >> endobj -413 0 obj << +417 0 obj << /Type /XObject /Subtype /Image /Width 380 @@ -2324,28 +2332,28 @@ d };1:3#5c]s&ZsC/[`0eRt'w'M |5s!1W2IOkxbhG&Dy$YPZUoS6GOyՐ_ 8 hϧs]@@Й'!s΍[oFL{<.ӌ?0qygUzѩ2]cr֚\jz`M=:xˆL.1DX/f+s9xXkX_iki(hsv "6nN(mI(|3k@,(I2Skb5g"D|wMp4.?w#!{RM$VkHZ[mc}]__t{\:tO&!-Xu-Mskcߜxρ>Gq-w|WG̹N\ P=d+QHa9o찇;rZc&sqPI0(\oݭ(ﰑwJnEYh^u9K[s6tO̓3\WUkruMĵq#znmnHWYlZ|ecT~xYti.ns2UeWQVgE-9e38 ǃ r*}-SW?^`(RUp8tjk M95> >> endobj -418 0 obj << -/D [416 0 R /XYZ 74.4095 793.4011 null] +422 0 obj << +/D [420 0 R /XYZ 74.4095 793.4011 null] >> endobj 26 0 obj << -/D [416 0 R /XYZ 74.4095 685.9289 null] +/D [420 0 R /XYZ 74.4095 685.9289 null] >> endobj -270 0 obj << -/D [416 0 R /XYZ 257.7073 312.8151 null] +271 0 obj << +/D [420 0 R /XYZ 257.7073 312.8151 null] >> endobj -415 0 obj << +419 0 obj << /Font << /F61 214 0 R /F28 169 0 R /F26 166 0 R >> -/XObject << /Im15 413 0 R >> +/XObject << /Im15 417 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -422 0 obj << +426 0 obj << /Length 1560 /Filter /FlateDecode >> @@ -2358,15 +2366,15 @@ G_$S ˖Ur[kǁnkFw.aN@q"a:a;ݛ^Z)VKW {BqÝcg3ֵ-`4XA^Mňv&6+./8qщett8T1gc%NPMҩA3SvD@)!g'icZ%~K;8C%ۘa,acǧaRxu~X!os1 g|!`u^y+$Q;㧆 CSY߁W sx`aD*, ̓)&JcAN*ZQH{t@vz8v*Vd4<em=i75jzS>q~ jeWo($nahp][s3HyW;rO4NQ993Hwzf~E=/,VZG@i֢s[U![1 _q _ B5 /X;'eE3#BW5'=uԎZ9T!1s/y^7( ~{](jP~#.M'njy=ɴo1._bzendstream endobj -421 0 obj << +425 0 obj << /Type /Page -/Contents 422 0 R -/Resources 420 0 R +/Contents 426 0 R +/Resources 424 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 412 0 R -/Annots [ 424 0 R 425 0 R ] +/Parent 416 0 R +/Annots [ 428 0 R 429 0 R ] >> endobj -414 0 obj << +418 0 obj << /Type /XObject /Subtype /Image /Width 318 @@ -2394,32 +2402,32 @@ r 3S.JܿxkgqV s5TO-JKcU 'ޣׂű*\<(--U)BRԢ8V ~rű*\O-JKcU#H%Qp_=> >> endobj -425 0 obj << +429 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [371.1636 381.8904 394.5594 394.4196] /Subtype /Link /A << /S /GoTo /D (figure.2.12) >> >> endobj -423 0 obj << -/D [421 0 R /XYZ 74.4095 793.4011 null] +427 0 obj << +/D [425 0 R /XYZ 74.4095 793.4011 null] >> endobj -271 0 obj << -/D [421 0 R /XYZ 262.5357 436.0328 null] +272 0 obj << +/D [425 0 R /XYZ 262.5357 436.0328 null] >> endobj -420 0 obj << +424 0 obj << /Font << /F61 214 0 R /F28 169 0 R >> -/XObject << /Im16 414 0 R >> +/XObject << /Im16 418 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -428 0 obj << +432 0 obj << /Length 2103 /Filter /FlateDecode >> @@ -2433,24 +2441,24 @@ B 3)o FE!3OƷq(sSWrvX;_N{VZ~5=<Ì#.4\%{dط AG"/y[W&6 &9DCpS \cn <(͑Vv]HL G% t{< frflᤌidAS{%f?OG+Mԧ3KJ^LGT쉣ữ/Sc[VKIq4o,>7ĦhZc). ߓTйi1˭I|'"9 8!ד`[ ;Е+qSIxrOS,3NjOMʨwi?k%QOli*0'2Ņ=\ %%:Y VIp^T^F1GfcA|%И{iu^%d:kP-G@#|a Ҹqwmw(1lu=Ü֊gr?0&4NZ^=M6kYŅ^gFP޶8O2ʗ  ϳ'kxdznk5)RQ4}`&*ȗF,4W!`Hu6nhew%ԶG(`xc5_$t HPTwh]E2 D=1>Yr@@v_]+}H&.obѕKw}AJt_ n{~./O;kh ];tiuW.xˉt KҵDxngܺ_9Fם3ZOK\P@CG'NO/]8^#w)X9GۄpFAQhڶ=,d]C-_3Fӯ{cYIɽ`4ŋ{RM/! B ӂS,kuW`yF)zz9"d i2ŽiD[1vi_jYx0ߑ҇{GEz |vKT<|{9pi/maCb~F oQtIR$C=x»`ȱx\`lCk96hӐ}?:wZQ7^LǗOmb.H먣rۡt?ux8^9^#in.ca =I1tr znĦvkH{G&D.sڙmĶMROO[VQQo{_({Z+1hfN4.v4endstream endobj -427 0 obj << +431 0 obj << /Type /Page -/Contents 428 0 R -/Resources 426 0 R +/Contents 432 0 R +/Resources 430 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 412 0 R +/Parent 416 0 R >> endobj -429 0 obj << -/D [427 0 R /XYZ 74.4095 793.4011 null] +433 0 obj << +/D [431 0 R /XYZ 74.4095 793.4011 null] >> endobj 30 0 obj << -/D [427 0 R /XYZ 74.4095 311.5628 null] +/D [431 0 R /XYZ 74.4095 311.5628 null] >> endobj -426 0 obj << -/Font << /F61 214 0 R /F28 169 0 R /F63 432 0 R /F26 166 0 R >> +430 0 obj << +/Font << /F61 214 0 R /F28 169 0 R /F63 436 0 R /F26 166 0 R >> /ProcSet [ /PDF /Text ] >> endobj -435 0 obj << +439 0 obj << /Length 1868 /Filter /FlateDecode >> @@ -2465,30 +2473,30 @@ F$( kIzj'!DKS.BE4Lu-Nuh 9,v<2ǔQO  R[fre< oE O{(ġIo@}3DbH|<\hs;tpmnw!xIqٟT_y>C¡=;pXC:4p\ϹWm7}C?]B a{ǖK)8_y"!OLF2W,k5BZOqwnU,NN$. w93(sC @RK-i=B7z +Mg {-c8Zp30