diff options
| author | Paul Buetow <paul@buetow.org> | 2008-07-23 16:10:06 +0000 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2008-07-23 16:10:06 +0000 |
| commit | 808f3ae2ecc8f95ceba5eb4f92edee6bc02c1211 (patch) | |
| tree | 4da3d8ad5f7a5d8e973559a3d0aa573923037da4 | |
| parent | c4adfad20909fdd766f3a2114de505394486a21d (diff) | |
foo
| -rw-r--r-- | LaTeX/chapters/introduction.tex | 9 | ||||
| -rw-r--r-- | LaTeX/chapters/simulator.tex | 33 | ||||
| -rw-r--r-- | LaTeX/chapters/titlepage.tex | 4 | ||||
| -rw-r--r-- | LaTeX/diplomarbeit.pdf | 3360 | ||||
| -rw-r--r-- | LaTeX/revision.tex | 2 | ||||
| -rw-r--r-- | ROADMAP | 2 |
6 files changed, 1603 insertions, 1807 deletions
diff --git a/LaTeX/chapters/introduction.tex b/LaTeX/chapters/introduction.tex index 5676943..ab223b6 100644 --- a/LaTeX/chapters/introduction.tex +++ b/LaTeX/chapters/introduction.tex @@ -48,9 +48,9 @@ In einer Simulation gibt es \textbf{genau eine} globale Uhr. Sie stellt die aktu Zudem besitzt jeder beteiligter Prozess eine eigene lokale Uhr. Sie stellt die aktuelle, jedoch nicht zwangsm\"{a}ig global-korrekte, Zeit des jeweiligen Prozesses dar. Wenn die Prozesszeit nicht global-korrekt ist (nicht der globalen Zeit gleicht), dann wurde die Prozessuhr entweder im Laufe einer Simulation neugesetzt, oder sie geht wegen einer Uhrabweichung falsch. Die Uhrabweichung gibt an, um welchen Faktor die Uhr falsch geht. Wenn eine lokale Uhr nicht neugesetzt wird und auch keine Uhrabweichung hat, dann gleicht ihre Zeit die der globalen Uhr. -\subsubsection{Ereignisse} +Neben diesen ``normalen'' Uhren sind auch die \textbf{Vektor-Zeitstempel} sowie die \textbf{logische Uhr von Lamport} von Interesse. Jeder Prozess besitzt zus\"{a}tzlich einen Vektor-Zeitstempel f\"{u}r die Vektorzeit, sowie einen Lamportzeitstempel f\"{u}r die Lamportzeit. F\"{u}r die Vektor- und Lamportzeiten gibt es hier, im Gegensatz zu der normalen Zeit, keine globalen \"{A}quivalente. -Eine Simulation besteht aus der Hintereinanderausf\"{u}hrung von endlich vielen Ereignissen. Beispielsweise kann es ein Ereignis geben, welches einen Prozess eine Nachricht verschicken- oder den Prozess selbst abst\"{u}rzen l\"{a}t. Jedes Ereignis tritt zu einem bestimmten Zeitpunkt ein. Wenn es zeitgleiche Ereignisse gibt, so werden sie in Wirklichkeit ebenso hintereinander ausgef\"{u}hrt, erscheinen aber in der Simulation als ob sie parallel ausgef\"{u}hrt w\"{u}rden. Dieser Umstand ist auf die Implementierung des Simulators zur\"{u}ckzuf\"{u}hren, worauf sp\"{a}ter noch genauer eingegangen wird. Dem Benutzer des Simulators st\"{o}rt dies jedoch nicht, da Ereignisse aus seiner Sicht parallel ausgef\"{u}hrt werden k\"{o}nnen. +Konkrete Beispiele zu den Lamport- und Vektorzeiten werden sp\"{a}ter anhand einer Simulation behandelt. \begin{figure}[htbp] \centering @@ -59,6 +59,10 @@ Eine Simulation besteht aus der Hintereinanderausf\"{u}hrung von endlich vielen \label{fig:ClientServerProtokolle} \end{figure} +\subsubsection{Ereignisse} + +Eine Simulation besteht aus der Hintereinanderausf\"{u}hrung von endlich vielen Ereignissen. Beispielsweise kann es ein Ereignis geben, welches einen Prozess eine Nachricht verschicken- oder den Prozess selbst abst\"{u}rzen l\"{a}t. Jedes Ereignis tritt zu einem bestimmten Zeitpunkt ein. Wenn es zeitgleiche Ereignisse gibt, so werden sie in Wirklichkeit ebenso hintereinander ausgef\"{u}hrt, erscheinen aber in der Simulation als ob sie parallel ausgef\"{u}hrt w\"{u}rden. Dieser Umstand ist auf die Implementierung des Simulators zur\"{u}ckzuf\"{u}hren, worauf sp\"{a}ter noch genauer eingegangen wird. Dem Benutzer des Simulators st\"{o}rt dies jedoch nicht, da Ereignisse aus seiner Sicht parallel ausgef\"{u}hrt werden k\"{o}nnen. + \subsubsection{Protokolle} @@ -67,3 +71,4 @@ Eine Simulation besteht auch aus der Anwendung von Protokollen. Es wurde bereits In Abbildung \ref{fig:ClientServerProtokolle} sind 3 Prozesse dargestellt. Prozess 1 unterst\"{u}tzt serverseitig das Protokoll ``A'' und clientseitig das Protokoll ``B''. Prozess 2 unterst\"{u}tzt clientseitig das Protokoll ``A'' und Prozess 3 serverseitig das Protokoll ``B''. D.h., Prozess 1 kann mit Prozess 2 via Protokoll ``A'' und mit Prozess 3 via Protokoll ``B'' kommunizieren. Die Prozesse 2 und 3 sind zueinander inkompatibel und k\"{o}nnen voneinander erhaltene Nachrichten nicht verarbeiten. In der Regel k\"{o}nnen Clients nicht mit Clients und Server nicht mit Server kommunizieren. Je nach verwendetem Protokoll kann dies jedoch variieren. Alle vom Simulator verf\"{u}gbaren Protokolle werden sp\"{a}ter genauer behandelt. + diff --git a/LaTeX/chapters/simulator.tex b/LaTeX/chapters/simulator.tex index 024db72..1b4cb44 100644 --- a/LaTeX/chapters/simulator.tex +++ b/LaTeX/chapters/simulator.tex @@ -153,12 +153,8 @@ Mit dem Deaktivieren der Checkbox ``Logging'' l\"{a}t sich das direkte Loggen v \"{U}ber die Checkbox ``Expertenmodus'' wird der Expertenmodus aktiviert beziehungsweise deaktiviert.
-\subsection{Eine Beispielsimulation}
-
\section{Der Expertenmodus}
-Der Simulator kann in zwei verschiedenen Modi betrieben werden. Es gibt einen einfachen- und einen Expertenmodus. Der Simulator started standardm\"{a}ig im einfachen Modus, so dass sich der Benutzer nicht mit der vollen Funktionalit\"{a}t des Simulators auf einmal auseinandersetzen mu. Der einfache Modus ist \"{u}bersichtlicher, bietet jedoch weniger Funktionen an. Der Expertenmodus eigent sich f\"{u}r mehr erfahrene Anwender und bietet dementsprechend auch mehr Flexibilit\"{a}t. Der Expertenmodus kann \"{u}ber die gleichnamige Checkbox unterhalb des Loggfensters oder \"{u}ber die Simulationseinstellungen aktiviert oder deaktiviert werden. Auf Abbildung \ref{fig:SimulationExpertenmodus} ist der Simulator im Expertenmodus zu sehen.
-
\begin{figure}[htbp]
\centering
\fbox{\includegraphics{images/ss-simulation-expertenmodus-klein}}
@@ -166,13 +162,7 @@ Der Simulator kann in zwei verschiedenen Modi betrieben werden. Es gibt einen ei \label{fig:SimulationExpertenmodus}
\end{figure}
-Wenn man den Simulator im Expertenmodus mit Abbildung \ref{fig:NeuErstellteSimulation} vergleicht, dann fallen einige Unterschiede auf, die nun behandelt werden.
-
-\subsubsection{Globale Ereignisse und weitere Sidebar-Funktionalit\"{a}ten}
-
-Der erste Unterschied ist in der Sidebar erkennbar (Abbildung \ref{fig:SidebarExpertenmodus}). Dort sind nun, zus\"{a}tzlich den lokalen Ereignissen, auch globale Ereignisse editierbar. Wie bereits erw\"{a}hnt, sind unter lokale Ereignisse diejenigen Ereignisse zu verstehen, die auftreten, wenn eine bestimmte lokale Zeit des dazugeh\"{o}rigen Prozesses eingetreten ist. Globale Ereignisse hingegen sind die Ereignisse, die auftreten, wenn eine bestimmte globale Zeit eingetreten ist. Ein globales Ereignis nimmt die globale Zeit- und ein lokales Ereignis die lokale Prozesszeit als Eintrittskriterium. Globale Ereignisse machen somit nur einen Unterschied, wenn sich die lokalen Prozesszeiten von der globalen Zeit unterscheiden.\\
-\\
-Eine weitere Sidebar-Funktionalit\"{a}t, die im einfachen Modus noch nicht verf\"{u}gbar war, ist die M\"{o}glichkeit einem neuzuerstellenen Ereignis direkt die PID zuzuweisen. Im einfachen Modus wurde, wenn man ein neues Ereignis erstellte, standardm\"{a}ig immer die PID des aktuell ausgew\"{a}hlten Prozesses (in der obersten Combo-Box) verwendet. In der Combo-Box sollte man bestenfalls ``Alle Prozesse'' selektieren, damit im Ereigniseditor stets die Ereignisse aller Prozesse angezeigt werden.
+Der Simulator kann in zwei verschiedenen Modi betrieben werden. Es gibt einen einfachen- und einen Expertenmodus. Der Simulator started standardm\"{a}ig im einfachen Modus, so dass sich der Benutzer nicht mit der vollen Funktionalit\"{a}t des Simulators auf einmal auseinandersetzen mu. Der einfache Modus ist \"{u}bersichtlicher, bietet jedoch weniger Funktionen an. Der Expertenmodus eigent sich f\"{u}r mehr erfahrene Anwender und bietet dementsprechend auch mehr Flexibilit\"{a}t. Der Expertenmodus kann \"{u}ber die gleichnamige Checkbox unterhalb des Loggfensters oder \"{u}ber die Simulationseinstellungen aktiviert oder deaktiviert werden. Auf Abbildung \ref{fig:SimulationExpertenmodus} ist der Simulator im Expertenmodus zu sehen. Wenn man den Simulator im Expertenmodus mit Abbildung \ref{fig:NeuErstellteSimulation} vergleicht, dann fallen einige Unterschiede auf, die nun aufs Weitere behandelt werden.
\begin{figure}[htbp]
\centering
@@ -181,18 +171,17 @@ Eine weitere Sidebar-Funktionalit\"{a}t, die im einfachen Modus noch nicht verf\ \label{fig:SidebarExpertenmodus}
\end{figure}
+Der erste Unterschied ist in der Sidebar erkennbar (Abbildung \ref{fig:SidebarExpertenmodus}). Dort sind nun, zus\"{a}tzlich den lokalen Ereignissen, auch globale Ereignisse editierbar. Wie bereits erw\"{a}hnt, sind unter lokale Ereignisse diejenigen Ereignisse zu verstehen, die auftreten, wenn eine bestimmte lokale Zeit des dazugeh\"{o}rigen Prozesses eingetreten ist. Globale Ereignisse hingegen sind diejenigen Ereignisse, die auftreten, wenn eine bestimmte globale Zeit eingetreten ist. Ein globales Ereignis nimmt die globale Zeit- und ein lokales Ereignis die lokale Prozesszeit als Eintrittskriterium. Globale Ereignisse machen somit nur einen Unterschied, wenn sich die lokalen Prozesszeiten von der globalen Zeit unterscheiden.
-\subsubsection{Lamport- und Vektorzeit}
+Eine weitere neue Funktionalit\"{a}t ist die M\"{o}glichkeit einem neuzuerstellenen Ereignis direkt die PID zuzuweisen. Im einfachen Modus wurde, wenn man ein neues Ereignis erstellte, standardm\"{a}ig immer die PID des aktuell ausgew\"{a}hlten Prozesses (in der obersten Combo-Box) verwendet. In dieser Combo-Box sollte man gegebenenfalls ``Alle Prozesse'' selektieren, damit im Ereigniseditor stets die Ereignisse aller Prozesse aufgelistet werden.
-Weitere Unterschiede machen sich unterhalb des Loggfensters bemerkbar. Dort gibt es unter Anderem zwei neue Checkboxen ``Lamportzeit'' und ``Vektorzeit''. Aktiviert man eine dieser beiden Checkboxen, dann wird die Lamport- bzw. Vektorzeit in die Visualisierung mitangegeben. \"{U}bersichtshalber kann man nur jeweils eine dieser beiden Checkboxen aktivieren. Wenn die Lamportzeit-Checkbox bereits aktiviert ist und der Benutzer versucht die Vektorzeit-Checkbox zus\"{a}tzlich zu aktivieren, so wird die Lamportzeit-Checkbox automatisch deaktiviert und virce versa.
+Weitere Unterschiede machen sich unterhalb des Loggfensters bemerkbar. Dort gibt es unter Anderem zwei neue Checkboxen ``Lamportzeit'' und ``Vektorzeit''. Aktiviert man eine dieser beiden Checkboxen, dann wird die Lamport- beziehungsweise Vektorzeit in die Visualisierung dargestellt. \"{U}bersichtshalber kann man nur jeweils eine dieser beiden Checkboxen aktivieren. Wenn die Lamportzeit-Checkbox bereits aktiviert ist und der Benutzer versucht die Vektorzeit-Checkbox zus\"{a}tzlich zu aktivieren, so wird die Lamportzeit-Checkbox automatisch deaktiviert und virce versa.
-\subsubsection{Anti-Aliasing}
+%TODO: Lamport und Vektorzeit definieren!
Die Anti-Aliasing-Checkbox erm\"{o}glicht dem Benutzer Anti-Aliasing zu aktivieren und deaktivieren. Mit aktiviertem Anti-Aliasing werden alle Grafiken der Visualisierung gerundet dargestellt. Aus Performancegr\"{u}nden ist Anti-Aliasing standardm\"{a}ig deaktiviert.
-\subsubsection{Loggfilter}
-
-Je komplexer eine Simulation wird, desto un\"{u}bersichtlicher werden die Eintr\"{a}ge im Loggfenster. Hier f\"{a}llt es zunehmend schwerer die \"{U}bersicht aller Ereignisse zu behalten. Um dem entgegenzuwirken gibt es im Expertenmodus einen Loggfilter, welcher es erm\"{o}glicht nur die wesentlichen Daten aus den Loggs zu filtern. Der Loggfilter wird anhand der dazugeh\"{o}rigen Checkbox ``Filter'' aktiviert bzw. deaktiviert. In der dahinterliegenden Eingabezeile kann ein regul\"{a}rer Ausdruck in Java-Syntax angegeben werden. Beispielsweise werden mit ``\texttt{PID: (1|2)}'' nur Loggzeilen angezeigt, die entweder ``\texttt{PID: 1}'' oder ``\texttt{PID: 2}'' beinhalten. Alle anderen Zeilen, beispielsweise mit ``\texttt{PID: 3}'', werden nicht angezeigt. Mit aktiviertem Loggfilter werden nur die Loggzeilen angezeigt, auf die der regul\"{a}re Ausdruck passt. Der Loggfilter kann auch nachtr\"{a}glich aktiviert werden. Bereits protokollierte Ereignisse werden jedes Mal erneuert gefiltert. Der Loggfilter kann auch w\"{a}hrend einer laufenden Simulation verwendet werden. Wenn der Loggfilter deaktiviert wird, dann werden wieder alle Nachrichten (auch nachtr\"{a}glich) im Loggfenster angezeigt.
+Je komplexer eine Simulation wird, desto un\"{u}bersichtlicher werden die Eintr\"{a}ge im Loggfenster. Hier f\"{a}llt es zunehmend schwerer die \"{U}bersicht aller Ereignisse zu behalten. Um dem entgegenzuwirken gibt es im Expertenmodus einen Loggfilter, welcher es erm\"{o}glicht nur die wesentlichen Daten aus den Loggs zu filtern. Der Loggfilter wird anhand der dazugeh\"{o}rigen Checkbox ``Filter'' aktiviert beziehungsweise deaktiviert. In der dahinterliegenden Eingabezeile kann ein regul\"{a}rer Ausdruck in Java-Syntax angegeben werden. Beispielsweise werden mit ``\texttt{PID: (1|2)}'' nur Loggzeilen angezeigt, die entweder ``\texttt{PID: 1}'' oder ``\texttt{PID: 2}'' beinhalten. Alle anderen Zeilen, beispielsweise mit ``\texttt{PID: 3}'', werden nicht angezeigt. Mit aktiviertem Loggfilter werden nur die Loggzeilen angezeigt, auf die der regul\"{a}re Ausdruck passt. Der Loggfilter kann auch nachtr\"{a}glich aktiviert werden. Bereits protokollierte Ereignisse werden jedes Mal erneuert gefiltert. Der Loggfilter kann auch w\"{a}hrend einer laufenden Simulation verwendet werden. Wenn der Loggfilter deaktiviert wird, dann werden wieder alle Nachrichten (auch nachtr\"{a}glich) im Loggfenster angezeigt.
\section{Ereignisse}
@@ -200,7 +189,7 @@ Des Weiteren wird hier auf alle Ereignisse eingegangen, die man, wie wir schon g \subsubsection{Prozessabsturz- und Wiederbelebung}
-Die beiden grundliegensten Ereignisse sind ``Prozessabsturz'' sowie ``Prozesswiederbelebung''. Wenn ein Prozess abgest\"{u}rzt ist, so wird sein Prozessbalken in rot dargestellt. Ein abgest\"{u}rzter Prozess kann keine weiteren Ereignisse mehr verarbeiten und, wenn er eine Nachricht empfangen sollte, geht sie verloren. Die einzige Ausnahme bildet ein Wiederbelebungsereignis. Ein abgest\"{u}rzter Prozess kann nichts, ausser wiederbelebt werden. W\"{a}hrend eines Prozessabsturzes l\"{a}uft die lokale Prozessuhr wie gewohnt weiter. D.h. es k\"{o}nnte sein, dass ein Prozess einige seiner lokalen Ereignisse gar nicht ausf\"{u}hrt, da er zu den Ereigniseintrittszeiten abgest\"{u}rzt ist. Selbiges trifft nat\"{u}rlich auch auf globale Ereignisse zu. Wenn im echten Leben ein Computer abst\"{u}rzt oder abgeschaltet wird, dann l\"{a}uft dort die Hardwareuhr, unabh\"{a}ngig vom Betriebssystem, auch weiter.
+Die beiden grundliegensten Ereignisse sind ``Prozessabsturz'' sowie ``Prozesswiederbelebung''. Wenn ein Prozess abgest\"{u}rzt ist, so wird sein Prozessbalken in rot dargestellt. Ein abgest\"{u}rzter Prozess kann keine weiteren Ereignisse mehr verarbeiten und, wenn er eine Nachricht empfangen sollte, geht diese verloren. Die einzige Ausnahme bildet ein Wiederbelebungsereignis. Ein abgest\"{u}rzter Prozess kann nichts, ausser wiederbelebt werden. W\"{a}hrend eines Prozessabsturzes l\"{a}uft die lokale Prozessuhr, abgesehen der Lamport- und Vektor-Uhren, wie gewohnt weiter. D.h. es k\"{o}nnte sein, dass ein Prozess einige seiner lokalen Ereignisse gar nicht ausf\"{u}hrt, da er zu den Ereigniseintrittszeiten abgest\"{u}rzt ist. Selbiges trifft nat\"{u}rlich auch auf globale Ereignisse zu. Wenn im echten Leben ein Computer abst\"{u}rzt oder abgeschaltet wird, dann l\"{a}uft dort die Hardwareuhr, unabh\"{a}ngig vom Betriebssystem, auch weiter.
\subsubsection{Aktivierung und Deaktivierung von Protokollen}
@@ -398,14 +387,6 @@ Wir wissen bereits, dass ein Prozess mehrere Protokolle, sowohl Client- als auch \subsection{Der zuverl\"{a}ssige (Reliable) Multicast}
-\section{Zeitformate}
-
-\subsection{``Normale Zeit''}
-
-\subsection{Die Logische Uhr von Lamport}
-
-\subsection{Die Vektor-Zeitstempel}
-
\section{Einstellungen}
\subsection{Simulationseinstellungen}
diff --git a/LaTeX/chapters/titlepage.tex b/LaTeX/chapters/titlepage.tex index 310d3f8..b546aec 100644 --- a/LaTeX/chapters/titlepage.tex +++ b/LaTeX/chapters/titlepage.tex @@ -35,9 +35,9 @@ {\Huge\bf DIPLOMARBEIT \\[1cm]} {\Large\bf {\maintitle} \\} - {~\\Subversion Revision \input{revision}} + %{~\\Subversion Revision \input{revision}} - {Durchgefhrt an der} + {~\\Durchgefhrt an der} {\large Fachhochschule Aachen\\} {\large Fachbereich Elektrotechnik und Informationstechnik} diff --git a/LaTeX/diplomarbeit.pdf b/LaTeX/diplomarbeit.pdf index a4f2341..32163e4 100644 --- a/LaTeX/diplomarbeit.pdf +++ b/LaTeX/diplomarbeit.pdf @@ -30,247 +30,217 @@ endobj (\376\377\0002\000.\0001\000\040\000D\000i\000e\000\040\000g\000r\000a\000f\000i\000s\000c\000h\000e\000\040\000B\000e\000n\000u\000t\000z\000e\000r\000s\000c\000h\000n\000i\000t\000t\000s\000t\000e\000l\000l\000e) endobj 25 0 obj -<< /S /GoTo /D (subsection.2.1.1) >> +<< /S /GoTo /D (section.2.2) >> endobj 28 0 obj -(\376\377\0002\000.\0001\000.\0001\000\040\000E\000i\000n\000e\000\040\000B\000e\000i\000s\000p\000i\000e\000l\000s\000i\000m\000u\000l\000a\000t\000i\000o\000n) +(\376\377\0002\000.\0002\000\040\000D\000e\000r\000\040\000E\000x\000p\000e\000r\000t\000e\000n\000m\000o\000d\000u\000s) endobj 29 0 obj -<< /S /GoTo /D (section.2.2) >> +<< /S /GoTo /D (section.2.3) >> endobj 32 0 obj -(\376\377\0002\000.\0002\000\040\000D\000e\000r\000\040\000E\000x\000p\000e\000r\000t\000e\000n\000m\000o\000d\000u\000s) +(\376\377\0002\000.\0003\000\040\000E\000r\000e\000i\000g\000n\000i\000s\000s\000e) endobj 33 0 obj -<< /S /GoTo /D (section.2.3) >> +<< /S /GoTo /D (section.2.4) >> endobj 36 0 obj -(\376\377\0002\000.\0003\000\040\000E\000r\000e\000i\000g\000n\000i\000s\000s\000e) +(\376\377\0002\000.\0004\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l\000e) endobj 37 0 obj -<< /S /GoTo /D (section.2.4) >> +<< /S /GoTo /D (subsection.2.4.1) >> endobj 40 0 obj -(\376\377\0002\000.\0004\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l\000e) +(\376\377\0002\000.\0004\000.\0001\000\040\000B\000e\000i\000s\000p\000i\000e\000l\000\040\000\050\000D\000u\000m\000m\000y\000\051\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l) endobj 41 0 obj -<< /S /GoTo /D (subsection.2.4.1) >> +<< /S /GoTo /D (subsection.2.4.2) >> endobj 44 0 obj -(\376\377\0002\000.\0004\000.\0001\000\040\000B\000e\000i\000s\000p\000i\000e\000l\000\040\000\050\000D\000u\000m\000m\000y\000\051\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l) +(\376\377\0002\000.\0004\000.\0002\000\040\000D\000a\000s\000\040\000P\000i\000n\000g\000-\000P\000o\000n\000g\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l) endobj 45 0 obj -<< /S /GoTo /D (subsection.2.4.2) >> +<< /S /GoTo /D (subsection.2.4.3) >> endobj 48 0 obj -(\376\377\0002\000.\0004\000.\0002\000\040\000D\000a\000s\000\040\000P\000i\000n\000g\000-\000P\000o\000n\000g\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l) +(\376\377\0002\000.\0004\000.\0003\000\040\000D\000a\000s\000\040\000B\000r\000o\000a\000d\000c\000a\000s\000t\000-\000S\000t\000u\000r\000m\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l) endobj 49 0 obj -<< /S /GoTo /D (subsection.2.4.3) >> +<< /S /GoTo /D (subsection.2.4.4) >> endobj 52 0 obj -(\376\377\0002\000.\0004\000.\0003\000\040\000D\000a\000s\000\040\000B\000r\000o\000a\000d\000c\000a\000s\000t\000-\000S\000t\000u\000r\000m\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l) +(\376\377\0002\000.\0004\000.\0004\000\040\000D\000a\000s\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l\000\040\000z\000u\000r\000\040\000i\000n\000t\000e\000r\000n\000e\000n\000\040\000S\000y\000n\000c\000h\000r\000o\000n\000i\000s\000i\000e\000r\000u\000n\000g\000\040\000i\000n\000\040\000e\000i\000n\000e\000m\000\040\000s\000y\000n\000c\000h\000r\000o\000n\000e\000n\000\040\000S\000y\000s\000t\000e\000m) endobj 53 0 obj -<< /S /GoTo /D (subsection.2.4.4) >> +<< /S /GoTo /D (subsection.2.4.5) >> endobj 56 0 obj -(\376\377\0002\000.\0004\000.\0004\000\040\000D\000a\000s\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l\000\040\000z\000u\000r\000\040\000i\000n\000t\000e\000r\000n\000e\000n\000\040\000S\000y\000n\000c\000h\000r\000o\000n\000i\000s\000i\000e\000r\000u\000n\000g\000\040\000i\000n\000\040\000e\000i\000n\000e\000m\000\040\000s\000y\000n\000c\000h\000r\000o\000n\000e\000n\000\040\000S\000y\000s\000t\000e\000m) +(\376\377\0002\000.\0004\000.\0005\000\040\000C\000h\000r\000i\000s\000t\000i\000a\000n\000s\000\040\000M\000e\000t\000h\000o\000d\000e\000\040\000z\000u\000r\000\040\000e\000x\000t\000e\000r\000n\000e\000n\000\040\000S\000y\000n\000c\000h\000r\000o\000n\000i\000s\000i\000e\000r\000u\000n\000g) endobj 57 0 obj -<< /S /GoTo /D (subsection.2.4.5) >> +<< /S /GoTo /D (subsection.2.4.6) >> endobj 60 0 obj -(\376\377\0002\000.\0004\000.\0005\000\040\000C\000h\000r\000i\000s\000t\000i\000a\000n\000s\000\040\000M\000e\000t\000h\000o\000d\000e\000\040\000z\000u\000r\000\040\000e\000x\000t\000e\000r\000n\000e\000n\000\040\000S\000y\000n\000c\000h\000r\000o\000n\000i\000s\000i\000e\000r\000u\000n\000g) +(\376\377\0002\000.\0004\000.\0006\000\040\000B\000e\000r\000k\000e\000l\000e\000y\000\040\000A\000l\000g\000o\000r\000i\000t\000h\000m\000u\000s\000\040\000z\000u\000r\000\040\000i\000n\000t\000e\000r\000n\000e\000n\000\040\000S\000y\000n\000c\000h\000r\000o\000n\000i\000s\000a\000t\000i\000o\000n) endobj 61 0 obj -<< /S /GoTo /D (subsection.2.4.6) >> +<< /S /GoTo /D (subsection.2.4.7) >> endobj 64 0 obj -(\376\377\0002\000.\0004\000.\0006\000\040\000B\000e\000r\000k\000e\000l\000e\000y\000\040\000A\000l\000g\000o\000r\000i\000t\000h\000m\000u\000s\000\040\000z\000u\000r\000\040\000i\000n\000t\000e\000r\000n\000e\000n\000\040\000S\000y\000n\000c\000h\000r\000o\000n\000i\000s\000a\000t\000i\000o\000n) +(\376\377\0002\000.\0004\000.\0007\000\040\000D\000a\000s\000\040\000E\000i\000n\000-\000P\000h\000a\000s\000e\000n\000\040\000C\000o\000m\000m\000i\000t\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l) endobj 65 0 obj -<< /S /GoTo /D (subsection.2.4.7) >> +<< /S /GoTo /D (subsection.2.4.8) >> endobj 68 0 obj -(\376\377\0002\000.\0004\000.\0007\000\040\000D\000a\000s\000\040\000E\000i\000n\000-\000P\000h\000a\000s\000e\000n\000\040\000C\000o\000m\000m\000i\000t\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l) +(\376\377\0002\000.\0004\000.\0008\000\040\000D\000a\000s\000\040\000Z\000w\000e\000i\000-\000P\000h\000a\000s\000e\000n\000\040\000C\000o\000m\000m\000i\000t\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l) endobj 69 0 obj -<< /S /GoTo /D (subsection.2.4.8) >> +<< /S /GoTo /D (subsection.2.4.9) >> endobj 72 0 obj -(\376\377\0002\000.\0004\000.\0008\000\040\000D\000a\000s\000\040\000Z\000w\000e\000i\000-\000P\000h\000a\000s\000e\000n\000\040\000C\000o\000m\000m\000i\000t\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l) +(\376\377\0002\000.\0004\000.\0009\000\040\000D\000e\000r\000\040\000u\000n\000g\000e\000n\000\374\000g\000e\000n\000d\000e\000\040\000\050\000B\000a\000s\000i\000c\000\051\000\040\000M\000u\000l\000t\000i\000c\000a\000s\000t) endobj 73 0 obj -<< /S /GoTo /D (subsection.2.4.9) >> +<< /S /GoTo /D (subsection.2.4.10) >> endobj 76 0 obj -(\376\377\0002\000.\0004\000.\0009\000\040\000D\000e\000r\000\040\000u\000n\000g\000e\000n\000\374\000g\000e\000n\000d\000e\000\040\000\050\000B\000a\000s\000i\000c\000\051\000\040\000M\000u\000l\000t\000i\000c\000a\000s\000t) +(\376\377\0002\000.\0004\000.\0001\0000\000\040\000D\000e\000r\000\040\000z\000u\000v\000e\000r\000l\000\344\000s\000s\000i\000g\000e\000\040\000\050\000R\000e\000l\000i\000a\000b\000l\000e\000\051\000\040\000M\000u\000l\000t\000i\000c\000a\000s\000t) endobj 77 0 obj -<< /S /GoTo /D (subsection.2.4.10) >> +<< /S /GoTo /D (section.2.5) >> endobj 80 0 obj -(\376\377\0002\000.\0004\000.\0001\0000\000\040\000D\000e\000r\000\040\000z\000u\000v\000e\000r\000l\000\344\000s\000s\000i\000g\000e\000\040\000\050\000R\000e\000l\000i\000a\000b\000l\000e\000\051\000\040\000M\000u\000l\000t\000i\000c\000a\000s\000t) +(\376\377\0002\000.\0005\000\040\000E\000i\000n\000s\000t\000e\000l\000l\000u\000n\000g\000e\000n) endobj 81 0 obj -<< /S /GoTo /D (section.2.5) >> +<< /S /GoTo /D (subsection.2.5.1) >> endobj 84 0 obj -(\376\377\0002\000.\0005\000\040\000Z\000e\000i\000t\000f\000o\000r\000m\000a\000t\000e) +(\376\377\0002\000.\0005\000.\0001\000\040\000S\000i\000m\000u\000l\000a\000t\000i\000o\000n\000s\000e\000i\000n\000s\000t\000e\000l\000l\000u\000n\000g\000e\000n) endobj 85 0 obj -<< /S /GoTo /D (subsection.2.5.1) >> +<< /S /GoTo /D (subsection.2.5.2) >> endobj 88 0 obj -(\376\377\0002\000.\0005\000.\0001\000\040\000`\000`\000N\000o\000r\000m\000a\000l\000e\000\040\000Z\000e\000i\000t\000'\000') +(\376\377\0002\000.\0005\000.\0002\000\040\000P\000r\000o\000z\000e\000s\000s\000e\000i\000n\000s\000t\000e\000l\000l\000u\000n\000g\000e\000n) endobj 89 0 obj -<< /S /GoTo /D (subsection.2.5.2) >> +<< /S /GoTo /D (subsection.2.5.3) >> endobj 92 0 obj -(\376\377\0002\000.\0005\000.\0002\000\040\000D\000i\000e\000\040\000L\000o\000g\000i\000s\000c\000h\000e\000\040\000U\000h\000r\000\040\000v\000o\000n\000\040\000L\000a\000m\000p\000o\000r\000t) +(\376\377\0002\000.\0005\000.\0003\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l\000e\000i\000n\000s\000t\000e\000l\000l\000u\000n\000g\000e\000n) endobj 93 0 obj -<< /S /GoTo /D (subsection.2.5.3) >> -endobj -96 0 obj -(\376\377\0002\000.\0005\000.\0003\000\040\000D\000i\000e\000\040\000V\000e\000k\000t\000o\000r\000-\000Z\000e\000i\000t\000s\000t\000e\000m\000p\000e\000l) -endobj -97 0 obj -<< /S /GoTo /D (section.2.6) >> -endobj -100 0 obj -(\376\377\0002\000.\0006\000\040\000E\000i\000n\000s\000t\000e\000l\000l\000u\000n\000g\000e\000n) -endobj -101 0 obj -<< /S /GoTo /D (subsection.2.6.1) >> -endobj -104 0 obj -(\376\377\0002\000.\0006\000.\0001\000\040\000S\000i\000m\000u\000l\000a\000t\000i\000o\000n\000s\000e\000i\000n\000s\000t\000e\000l\000l\000u\000n\000g\000e\000n) -endobj -105 0 obj -<< /S /GoTo /D (subsection.2.6.2) >> -endobj -108 0 obj -(\376\377\0002\000.\0006\000.\0002\000\040\000P\000r\000o\000z\000e\000s\000s\000e\000i\000n\000s\000t\000e\000l\000l\000u\000n\000g\000e\000n) -endobj -109 0 obj -<< /S /GoTo /D (subsection.2.6.3) >> -endobj -112 0 obj -(\376\377\0002\000.\0006\000.\0003\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l\000e\000i\000n\000s\000t\000e\000l\000l\000u\000n\000g\000e\000n) -endobj -113 0 obj << /S /GoTo /D (chapter.3) >> endobj -116 0 obj +96 0 obj (\376\377\0003\000\040\000D\000i\000e\000\040\000I\000m\000p\000l\000e\000m\000e\000n\000t\000i\000e\000r\000u\000n\000g) endobj -117 0 obj +97 0 obj << /S /GoTo /D (section.3.1) >> endobj -120 0 obj +100 0 obj (\376\377\0003\000.\0001\000\040\000G\000l\000i\000e\000d\000e\000r\000u\000n\000g\000\040\000d\000e\000r\000\040\000P\000a\000k\000e\000t\000e) endobj -121 0 obj +101 0 obj << /S /GoTo /D (section.3.2) >> endobj -124 0 obj +104 0 obj (\376\377\0003\000.\0002\000\040\000E\000d\000i\000t\000o\000r\000e\000n) endobj -125 0 obj +105 0 obj << /S /GoTo /D (section.3.3) >> endobj -128 0 obj +108 0 obj (\376\377\0003\000.\0003\000\040\000E\000r\000e\000i\000g\000n\000i\000s\000s\000e) endobj -129 0 obj +109 0 obj << /S /GoTo /D (subsection.3.3.1) >> endobj -132 0 obj +112 0 obj (\376\377\0003\000.\0003\000.\0001\000\040\000I\000n\000t\000e\000r\000n\000e\000\040\000E\000r\000e\000i\000g\000n\000i\000s\000s\000e) endobj -133 0 obj +113 0 obj << /S /GoTo /D (section.3.4) >> endobj -136 0 obj +116 0 obj (\376\377\0003\000.\0004\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l\000e) endobj -137 0 obj +117 0 obj << /S /GoTo /D (subsection.3.4.1) >> endobj -140 0 obj +120 0 obj (\376\377\0003\000.\0004\000.\0001\000\040\000P\000r\000o\000t\000o\000k\000o\000l\000l\000-\000A\000P\000I) endobj -141 0 obj +121 0 obj << /S /GoTo /D (section.3.5) >> endobj -144 0 obj +124 0 obj (\376\377\0003\000.\0005\000\040\000S\000e\000r\000i\000a\000l\000i\000s\000i\000e\000r\000u\000n\000g\000\040\000v\000o\000n\000\040\000S\000i\000m\000u\000l\000a\000t\000i\000o\000n\000e\000n) endobj -145 0 obj +125 0 obj << /S /GoTo /D (subsection.3.5.1) >> endobj -148 0 obj +128 0 obj (\376\377\0003\000.\0005\000.\0001\000\040\000R\000\374\000c\000k\000w\000\344\000r\000t\000s\000k\000o\000m\000p\000a\000t\000i\000b\000e\000l) endobj -149 0 obj +129 0 obj << /S /GoTo /D (section.3.6) >> endobj -152 0 obj +132 0 obj (\376\377\0003\000.\0006\000\040\000P\000r\000o\000g\000r\000a\000m\000m\000i\000e\000r\000r\000i\000c\000h\000t\000l\000i\000n\000i\000e\000n) endobj -153 0 obj +133 0 obj << /S /GoTo /D (section.3.7) >> endobj -156 0 obj +136 0 obj (\376\377\0003\000.\0007\000\040\000E\000n\000t\000w\000i\000c\000k\000l\000u\000n\000g\000s\000u\000m\000g\000e\000b\000u\000n\000g) endobj -157 0 obj +137 0 obj << /S /GoTo /D (chapter.4) >> endobj -160 0 obj +140 0 obj (\376\377\0004\000\040\000A\000u\000s\000b\000l\000i\000c\000k) endobj -161 0 obj +141 0 obj << /S /GoTo /D (appendix.A) >> endobj -164 0 obj +144 0 obj (\376\377\000A\000\040\000S\000c\000h\000e\000m\000a\000t\000a) endobj -165 0 obj +145 0 obj << /S /GoTo /D (appendix.B) >> endobj -168 0 obj +148 0 obj (\376\377\000B\000\040\000A\000k\000r\000o\000n\000y\000m\000s) endobj -169 0 obj +149 0 obj << /S /GoTo /D (appendix.C) >> endobj -172 0 obj +152 0 obj (\376\377\000C\000\040\000L\000i\000t\000e\000r\000a\000t\000u\000r\000v\000e\000r\000z\000e\000i\000c\000h\000n\000i\000s) endobj -173 0 obj -<< /S /GoTo /D [174 0 R /Fit ] >> +153 0 obj +<< /S /GoTo /D [154 0 R /Fit ] >> endobj -177 0 obj << -/Length 828 +157 0 obj << +/Length 795 /Filter /FlateDecode >> stream -xڍUr6+gJGvqԵ4]P,Ȅx @t4.s@(b%bcAӂ}X#B*
TQ(7pBxNbed71߬O]O\qy"'XZQ&ZN?gDbBA\{c6QMn_7>_֛!JhS& L@Rb)nǮn:P,;,WUwX}uF+?haUo2Cu}ld061Ur-ܽ?Z|RCYc2d%5:0@
}[s~ȘjT8"0 -Lb* ͮ<Ê*\9eTbuLe+zW?&ށ
h0rm15<Pc4ns2
3n?F[_b]=N@\UU&qI1aA.~n1a|"uմݷ&=OM]qe)7X0mօwM=Hh#|]Hi_9ק.ѓS.0LȾ<e -
wux.^tȩn$?ۘ);J_eΔI 6)dߣ(LRfzRNfsЏ_-ߑ$C <.>g'3!%)+WX+[<Өendstream +xڍUR0+Lfj;h
S +t҅I%v{eNE8#"?Xk|3 hg}PXHas4y*%FcaNu$=(#ƻ|2P4.t<^,(s#}ހgDbBA"+%w?
NΙBaC-
f鷳t65l>
Q et/%B6{l*wEj(?my#<*]^:,/Oޅ>2,uq =ZT{rwڮ&/c*W|UA7xnE53@\.=2ʵ2H" aHFݧNDZXX,|$,+Y=϶)O5܋Gc4;|-ϳ85*7ϊ1ض",rāh߹nZX +MrSn`u9oюdZ*$9כ(ѓP endobj -174 0 obj << +154 0 obj << /Type /Page -/Contents 177 0 R -/Resources 176 0 R +/Contents 157 0 R +/Resources 156 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 186 0 R +/Parent 166 0 R >> endobj -175 0 obj << +155 0 obj << /Type /XObject /Subtype /Image /Width 500 @@ -431,18 +401,18 @@ j'F{E, 5M%jKqizlO<ԕ#C~%(4p<]gʟ~c]'?Ӹ)E- sOyGKrm{ endobj -178 0 obj << -/D [174 0 R /XYZ 74.4095 769.8898 null] +158 0 obj << +/D [154 0 R /XYZ 74.4095 769.8898 null] >> endobj -179 0 obj << -/D [174 0 R /XYZ 74.4095 769.8898 null] +159 0 obj << +/D [154 0 R /XYZ 74.4095 769.8898 null] >> endobj -176 0 obj << -/Font << /F26 182 0 R /F28 185 0 R >> -/XObject << /Im1 175 0 R >> +156 0 obj << +/Font << /F26 162 0 R /F28 165 0 R >> +/XObject << /Im1 155 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -189 0 obj << +169 0 obj << /Length 1027 /Filter /FlateDecode >> @@ -454,511 +424,474 @@ xڍVێ8}H04QFRmtpkD&\ȨN\UGI@<h_B YRWO Xb5'ӈ (>}wVM;#˂{u>7 QN$xx endstream endobj -188 0 obj << +168 0 obj << /Type /Page -/Contents 189 0 R -/Resources 187 0 R +/Contents 169 0 R +/Resources 167 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 186 0 R +/Parent 166 0 R >> endobj -190 0 obj << -/D [188 0 R /XYZ 74.4095 793.4011 null] +170 0 obj << +/D [168 0 R /XYZ 74.4095 793.4011 null] >> endobj -187 0 obj << -/Font << /F26 182 0 R /F28 185 0 R /F33 193 0 R >> +167 0 obj << +/Font << /F26 162 0 R /F28 165 0 R /F33 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -196 0 obj << -/Length 2286 +176 0 obj << +/Length 2178 /Filter /FlateDecode >> stream -x]s6+x)]7MNiܽz/6+s*Qn -䁳lvK^8z0(,DBey! cvwHT:?&oo1T@TV7:*{?pA?}Z>7v
uլ{WW}R)/<)1ECTveS}L QR&ulYo֫ޗUP.Ĥ$4&
{Uʅb䊍]䳉dpHhI|\CF Mz]/RuNǶujV:Jք**07T)/,Pc3DI=/lzIT{L{Q*Qcd*N.S -ԛI#'.{}:nnMy>eZAК-B'Q'{Uʰ`PR;e @\.,2`!,Rt9Pɐ.A/}'UݖpuYw/XޟbJ#jhVeUƩOol2+T1kZX`R:9tљ[^ eضB{VFs<\&%.4D !Dime{sw)}R]>`ΛX][cYh8*/ Vm{=n.v!>0N:9\K+?%ccnp7D]c&oy\4FhP}q0EEX` -N^)/+6oC>%*`xUʲ)ǎ< -y\+,2xa<U\K~m}>š0d.J_
Uh]KP]Hrud*<U~k
Ꜳ_-ٻtMu;ܡ{o+iʩ6*4dºpw9n.v!WZZZ{)d`705MWj_>4X%s'@DQ#ga]
-Y KDQ|K0.ΣCwp{7-'[=|=|8UYZؙpsAdcOYڰDቈKц]6aLrǵy%m^XO;]eϪ
] Ou?s0cn
M["Iqs а?fk_/h^UWQk"1ϫRV--(G +xˎ8y +-9Zv:5AtI/Uj0XrCI(S:LST:<?>^E?I$Ufreg4g/^#&Ri|>@aVi=6YTNݳsb>F,wի~oz(or_wzvn3~5煁܂'M cL/su*9(sk&2W9FꦬEٜeiذW\(&Ql,&)G4S9ؠFg #ѣ
=z 2JcS~\s6届5,2s{U3(M̀%E"G,@,TfT1%I,
?N*:8ytRju] =gaNJaVM|=FKXb)3lbX%zcTbd{^,7v<9]xU7L+f#E-B٩%ƗF"'J2|(2_jVH*D{Y8?(.u;7%9)}ssy
BqOireFf(ǃ*eCɅͧY
`T|37f, cD0SyYd{w))M9_RBWF1Ι:C(byPa"Wu ěSQ`!Vpa`E?3Za1pysTX{G,uLE6uTʞ7csgY%V,2fJys +'N<qq}|ba%Dkx> endobj -195 0 obj << +175 0 obj << /Type /Page -/Contents 196 0 R -/Resources 194 0 R +/Contents 176 0 R +/Resources 174 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 186 0 R -/Annots [ 199 0 R 200 0 R 201 0 R 202 0 R 203 0 R 204 0 R 205 0 R 206 0 R 207 0 R 208 0 R 209 0 R 210 0 R 211 0 R 212 0 R 213 0 R 214 0 R 215 0 R 216 0 R 217 0 R 218 0 R 219 0 R 220 0 R 221 0 R 222 0 R 223 0 R 224 0 R 225 0 R ] +/Parent 166 0 R +/Annots [ 179 0 R 180 0 R 181 0 R 182 0 R 183 0 R 184 0 R 185 0 R 186 0 R 187 0 R 188 0 R 189 0 R 190 0 R 191 0 R 192 0 R 193 0 R 194 0 R 195 0 R 196 0 R 197 0 R 198 0 R 199 0 R 200 0 R 201 0 R 202 0 R 203 0 R 204 0 R ] >> endobj -199 0 obj << +179 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [73.4132 612.27 145.0711 624.7332] +/Rect [73.4132 609.4187 145.0711 621.8819] /Subtype /Link /A << /S /GoTo /D (chapter.1) >> >> endobj -200 0 obj << +180 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [89.9113 596.6635 167.0466 606.6189] +/Rect [89.9113 593.6512 167.0466 603.6067] /Subtype /Link /A << /S /GoTo /D (section.1.1) >> >> endobj -201 0 obj << +181 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [89.9113 576.4155 174.8335 588.9447] +/Rect [89.9113 573.2423 174.8335 585.7715] /Subtype /Link /A << /S /GoTo /D (section.1.2) >> >> endobj -202 0 obj << +182 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [73.4132 549.7993 163.8015 559.9528] +/Rect [73.4132 546.3578 163.8015 556.5113] /Subtype /Link /A << /S /GoTo /D (chapter.2) >> >> endobj -203 0 obj << +183 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [89.9113 529.5623 285.4137 542.0915] +/Rect [89.9113 525.9599 285.4137 538.4891] /Subtype /Link /A << /S /GoTo /D (section.2.1) >> >> endobj -204 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [115.2084 511.7671 265.3635 523.9113] -/Subtype /Link -/A << /S /GoTo /D (subsection.2.1.1) >> ->> endobj -205 0 obj << +184 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [89.9113 493.8398 215.4404 505.984] +/Rect [89.9113 508.0038 215.4404 520.1479] /Subtype /Link /A << /S /GoTo /D (section.2.2) >> >> endobj -206 0 obj << +185 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [89.9113 475.7806 168.5425 488.0568] +/Rect [89.9113 489.7835 168.5425 502.0598] /Subtype /Link /A << /S /GoTo /D (section.2.3) >> >> endobj -207 0 obj << +186 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [89.9113 460.1741 165.8808 470.1296] +/Rect [89.9113 473.9171 165.8808 483.9716] /Subtype /Link /A << /S /GoTo /D (section.2.4) >> >> endobj -208 0 obj << +187 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [115.2084 440.0581 284.6223 452.4553] +/Rect [115.2084 453.7392 284.6223 466.1364] /Subtype /Link /A << /S /GoTo /D (subsection.2.4.1) >> >> endobj -209 0 obj << +188 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [115.2084 421.9989 271.4346 434.2751] +/Rect [115.2084 435.519 271.4346 447.7952] /Subtype /Link /A << /S /GoTo /D (subsection.2.4.2) >> >> endobj -210 0 obj << +189 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [115.2084 406.2934 303.4186 416.6009] +/Rect [115.2084 419.6526 303.4186 429.9601] /Subtype /Link /A << /S /GoTo /D (subsection.2.4.3) >> >> endobj -211 0 obj << +190 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [115.2084 386.1444 521.8625 398.6736] +/Rect [115.2084 399.3427 521.8625 411.8719] /Subtype /Link /A << /S /GoTo /D (subsection.2.4.4) >> >> endobj -212 0 obj << +191 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [73.4132 370.4389 176.2309 380.4934] +/Rect [73.4132 383.6372 176.2309 393.6917] /Subtype /Link /A << /S /GoTo /D (subsection.2.4.4) >> >> endobj -213 0 obj << +192 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [115.2084 350.2899 399.6232 362.8192] +/Rect [115.2084 363.3273 399.6232 375.8565] /Subtype /Link /A << /S /GoTo /D (subsection.2.4.5) >> >> endobj -214 0 obj << +193 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [115.2084 332.3627 398.7873 344.8919] +/Rect [115.2084 345.2391 398.7873 357.7683] /Subtype /Link /A << /S /GoTo /D (subsection.2.4.6) >> >> endobj -215 0 obj << +194 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [115.2084 316.6572 318.4208 326.9647] +/Rect [115.2084 329.3727 318.4208 339.6801] /Subtype /Link /A << /S /GoTo /D (subsection.2.4.7) >> >> endobj -216 0 obj << +195 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [115.2084 298.73 325.636 309.0375] +/Rect [115.2084 311.2845 325.636 321.592] /Subtype /Link /A << /S /GoTo /D (subsection.2.4.8) >> >> endobj -217 0 obj << +196 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [115.2084 278.581 324.162 291.1102] +/Rect [115.2084 290.9745 324.162 303.5038] /Subtype /Link /A << /S /GoTo /D (subsection.2.4.9) >> >> endobj -218 0 obj << +197 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [115.2084 260.6538 330.5192 273.183] +/Rect [115.2084 272.8864 330.5192 285.4156] /Subtype /Link |
